:root{
  --blaze-blue:#1ca7dc;
  --blaze-cyan:#55e2f0;
  --blaze-violet:#725cff;
  --blaze-ink:#07141c;
  --blaze-panel:#0b151d;
  --blaze-line:#28404f;
  --blaze-text:#f4fbff;
  --blaze-muted:#9db3bf;
}
.blaze-launcher{
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:900;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid #79eaff66;
  border-radius:999px;
  padding:7px 13px 7px 7px;
  color:#fff;
  background:#07141ce8;
  box-shadow:0 15px 45px #0008,0 0 30px #21bee344;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  cursor:pointer;
  font:800 14px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  -webkit-tap-highlight-color:transparent;
  transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease;
}
.blaze-launcher:hover,.blaze-launcher:focus-visible{
  transform:translateY(-2px);
  border-color:#a6f4ff;
  box-shadow:0 18px 55px #0009,0 0 38px #22cdf070;
  outline:none;
}
.blaze-orb{
  position:relative;
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  overflow:hidden;
  isolation:isolate;
  background:#061019;
  box-shadow:inset 0 0 15px #fff8,0 0 0 1px #fff8,0 0 18px #41d9efb8;
  transform:translateZ(0);
}
.blaze-swirl{
  position:absolute;
  z-index:0;
  inset:-32%;
  border-radius:50%;
  background:conic-gradient(from 20deg,#1ca7dc,#55e2f0,#ff861f,#725cff,#1ca7dc);
  filter:saturate(1.25) blur(.2px);
  animation:blaze-swirl 4.4s linear infinite;
  pointer-events:none;
}
.blaze-orb::before,.blaze-orb::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.blaze-orb::before{
  inset:6px;
  z-index:1;
  background:radial-gradient(circle at 43% 38%,#173e57e8 0,#0b1725e8 48%,#02080df2 100%);
  box-shadow:inset 0 0 14px #45dff099;
}
.blaze-orb::after{
  width:18px;
  height:18px;
  top:7px;
  left:8px;
  background:radial-gradient(circle,#fff 0,#d9fbff 24%,transparent 72%);
  filter:blur(1px);
  z-index:3;
}
.blaze-mascot{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:-38%;
  width:auto;
  max-width:none;
  height:145%;
  transform:translateX(-50%);
  filter:drop-shadow(0 0 7px #66e9ff99);
  pointer-events:none;
}
#blazeAssistant[data-state="idle"] .blaze-orb{animation:blaze-breathe 3.2s ease-in-out infinite}
#blazeAssistant[data-state="listening"] .blaze-orb{animation:blaze-listen .72s ease-in-out infinite}
#blazeAssistant[data-state="listening"] .blaze-swirl{background:conic-gradient(from 20deg,#13b879,#76ffd3,#d7ff67,#16d9d0,#13b879);animation-duration:.78s}
#blazeAssistant[data-state="listening"] .blaze-mascot{filter:drop-shadow(0 0 8px #76ffd3cc)}
#blazeAssistant[data-state="thinking"] .blaze-orb{animation:blaze-think 1.15s ease-in-out infinite}
#blazeAssistant[data-state="thinking"] .blaze-swirl{background:conic-gradient(from 20deg,#725cff,#d85cff,#55c8ff,#8c4dff,#725cff);animation-duration:.68s}
#blazeAssistant[data-state="speaking"] .blaze-orb{animation:blaze-speaking .62s ease-in-out infinite alternate}
#blazeAssistant[data-state="speaking"] .blaze-swirl{background:conic-gradient(from 20deg,#ff861f,#ffd45c,#ff5f6d,#ffad29,#ff861f);animation-duration:1.05s}
#blazeAssistant[data-state="speaking"] .blaze-mascot{filter:drop-shadow(0 0 8px #ffb13bcc)}
#blazeAssistant[data-state="ready"] .blaze-orb{animation:blaze-ready .55s ease-out}
#blazeAssistant[data-state="ready"] .blaze-swirl{background:conic-gradient(from 20deg,#18bc83,#7affe0,#1ca7dc,#54e5b2,#18bc83)}
.blaze-label small{display:block;margin-top:4px;color:#9ed9e5;font-size:10px;font-weight:700;letter-spacing:.03em}
@keyframes blaze-swirl{to{transform:rotate(360deg)}}
@keyframes blaze-breathe{0%,100%{box-shadow:inset 0 0 15px #fff8,0 0 0 1px #fff8,0 0 16px #41d9ef8a}50%{box-shadow:inset 0 0 18px #fffa,0 0 0 3px #55e2f02c,0 0 30px #41d9efc4}}
@keyframes blaze-listen{0%{transform:scale(.96);box-shadow:inset 0 0 18px #fff,0 0 0 0 #76ffd388,0 0 24px #26eba7}100%{transform:scale(1.05);box-shadow:inset 0 0 20px #fff,0 0 0 8px #76ffd300,0 0 42px #26eba7}}
@keyframes blaze-think{0%,100%{transform:scale(.96);box-shadow:inset 0 0 18px #fff8,0 0 0 2px #9a6cff35,0 0 24px #945cffbb}50%{transform:scale(1.06);box-shadow:inset 0 0 20px #fff,0 0 0 5px #d85cff35,0 0 42px #b15cff}}
@keyframes blaze-speaking{from{transform:scale(.97);box-shadow:inset 0 0 18px #fff,0 0 0 2px #ffb43c55,0 0 24px #ff861f}to{transform:scale(1.06);box-shadow:inset 0 0 20px #fff,0 0 0 5px #ffd45c40,0 0 42px #ff861f}}
@keyframes blaze-ready{0%{transform:scale(.84)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
.blaze-panel{
  position:fixed;
  z-index:910;
  right:max(18px,env(safe-area-inset-right));
  bottom:88px;
  width:min(430px,calc(100vw - 28px));
  height:min(680px,calc(100dvh - 116px));
  display:grid;
  grid-template-rows:auto 1fr auto;
  overflow:hidden;
  color:var(--blaze-text);
  background:linear-gradient(160deg,#101f2a 0,#09131b 54%,#071018 100%);
  border:1px solid var(--blaze-line);
  border-radius:24px;
  box-shadow:0 28px 85px #000b,0 0 45px #24bde72e;
  font:15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif;
  transform:translateY(14px) scale(.97);
  transform-origin:bottom right;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,transform .2s ease,visibility .2s;
}
.blaze-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.blaze-head{
  display:flex;
  align-items:center;
  gap:11px;
  padding:15px 16px;
  border-bottom:1px solid var(--blaze-line);
  background:linear-gradient(90deg,#132a38,#0d1b25);
}
.blaze-head .blaze-orb{width:40px;height:40px;flex-basis:40px}
.blaze-head strong{display:block;font-size:17px}
.blaze-head span{display:block;color:var(--blaze-muted);font-size:12px}
.blaze-head-actions{display:flex;gap:5px;margin-left:auto}
.blaze-review-button{
  min-height:38px;border:1px solid #4a6a7c;border-radius:12px;padding:0 10px;color:#dffaff;
  background:#102631;cursor:pointer;font:800 11px/1 inherit
}
.blaze-review-button:hover,.blaze-review-button:focus-visible{border-color:#5ee4f2;background:#173443;outline:none}
.blaze-review-button[hidden]{display:none}
.blaze-icon-button{
  width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:12px;
  color:#dffaff;background:#ffffff0b;cursor:pointer;font-size:18px
}
.blaze-icon-button:hover,.blaze-icon-button:focus-visible{background:#ffffff18;outline:2px solid #57ddee66;outline-offset:1px}
.blaze-transcript{overflow:auto;padding:17px;scroll-behavior:smooth}
.blaze-welcome{padding:14px 15px;border:1px solid #345265;border-radius:17px;background:#132633;color:#eafbff}
.blaze-welcome p{margin:7px 0 0;color:#b9ced8}
.blaze-quick{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.blaze-chip{
  appearance:none;border:1px solid #365565;border-radius:999px;padding:8px 11px;color:#cff7ff;
  background:#10242f;cursor:pointer;font:750 12px/1.15 inherit
}
.blaze-chip:hover,.blaze-chip:focus-visible{border-color:#5ee4f2;background:#173443;outline:none}
.blaze-message{max-width:88%;margin:10px 0;padding:11px 13px;border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere}
.blaze-message.user{margin-left:auto;background:linear-gradient(135deg,#1b8ac6,#675be8);color:#fff;border-bottom-right-radius:5px}
.blaze-message.assistant{background:#142631;border:1px solid #2a4656;color:#eafaff;border-bottom-left-radius:5px}
.blaze-message.error{background:#371b21;border:1px solid #8e3e4e;color:#ffdce3}
.blaze-sources{display:grid;gap:5px;margin-top:9px;color:#a9c4cf;font-size:11px}
.blaze-answer-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:9px;border-top:1px solid #ffffff14}
.blaze-feedback{display:flex;align-items:center;gap:5px;color:#9db6c1;font-size:10px}
.blaze-feedback button,.blaze-remember{border:1px solid #365565;border-radius:999px;padding:6px 8px;color:#cff7ff;background:#10242f;cursor:pointer;font:750 10px/1 inherit}
.blaze-feedback button.selected{border-color:#62e7d0;background:#174036;color:#d9fff7}
.blaze-feedback button:disabled,.blaze-remember:disabled{opacity:.7;cursor:default}
.blaze-review-card{display:grid;gap:10px;margin:12px 0;padding:13px;border:1px solid #3b5666;border-radius:16px;background:#101f29}
.blaze-review-card b{font-size:13px;color:#effcff}
.blaze-review-card label{display:grid;gap:5px;color:#a9c4cf;font-size:10px;font-weight:800}
.blaze-review-card textarea{width:100%;resize:vertical;border:1px solid #31505f;border-radius:10px;padding:9px;color:#f3fbff;background:#09151c;font:12px/1.4 inherit}
.blaze-review-reason{color:#ffcf82;font-size:10px;font-weight:800}
.blaze-review-actions{display:flex;gap:7px}
.blaze-review-actions button{flex:1;border:0;border-radius:10px;padding:9px;color:#fff;background:#283943;cursor:pointer;font:800 11px/1 inherit}
.blaze-review-actions button[data-decision="approve"]{background:linear-gradient(135deg,#188c79,#1d759a)}
.blaze-action{margin:12px 0;padding:13px;border:1px solid #d8a94f88;border-radius:16px;background:#2d2416}
.blaze-action b{display:block;color:#ffe4a6}.blaze-action p{margin:6px 0 10px;color:#dbcaa7;font-size:13px}
.blaze-action.strong{border-color:#ef6a6aaa;background:#35191e}
.blaze-strong-confirm{display:grid;gap:6px;margin:11px 0;color:#ffdce3;font-size:12px;font-weight:800}
.blaze-strong-confirm strong{display:inline;color:#fff}
.blaze-strong-confirm input{width:100%;border:1px solid #9d4b5c;border-radius:10px;padding:9px 10px;color:#fff;background:#190a0e;font:900 14px/1 inherit;letter-spacing:.12em;text-transform:uppercase}
.blaze-strong-confirm input:focus{border-color:#ff879e;outline:2px solid #ff879e33;outline-offset:1px}
.blaze-action-buttons{display:flex;gap:8px}
.blaze-action-buttons button{flex:1;border:0;border-radius:11px;padding:10px;font-weight:850;cursor:pointer}
.blaze-confirm{background:#e9a23b;color:#1c1407}.blaze-cancel{background:#ffffff12;color:#fff}
.blaze-action-buttons button:disabled{opacity:.45;cursor:not-allowed}
.blaze-composer{padding:12px;border-top:1px solid var(--blaze-line);background:#09131b}
.blaze-status{min-height:18px;padding:0 5px 7px;color:#86dce8;font-size:11px;font-weight:750}
#blazeAssistant[data-state="listening"] .blaze-status{color:#76ffd3}
#blazeAssistant[data-state="thinking"] .blaze-status{color:#c79bff}
#blazeAssistant[data-state="speaking"] .blaze-status{color:#ffc86a}
.blaze-form{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:end}
.blaze-form textarea{
  width:100%;min-height:44px;max-height:112px;resize:none;margin:0;padding:11px 12px;border:1px solid #31505f;
  border-radius:14px;color:#f3fbff;background:#101f29;font:15px/1.35 inherit;outline:none
}
.blaze-form textarea:focus{border-color:#50dcea;box-shadow:0 0 0 3px #50dcea22}
.blaze-mic,.blaze-send{
  width:44px;height:44px;display:grid;place-items:center;border:1px solid #31505f;border-radius:14px;
  color:#dcfbff;background:#132732;cursor:pointer;font-size:18px
}
.blaze-mic svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.blaze-mic.active{border-color:#76ffd3;color:#071b15;background:#76ffd3;box-shadow:0 0 0 4px #41f0a42b,0 0 24px #41f0a477}
.blaze-speaker{font-size:16px}
.blaze-send{border:0;background:linear-gradient(135deg,#178fd0,#6c5eea);color:#fff}
.blaze-mic:disabled,.blaze-send:disabled{opacity:.5;cursor:not-allowed}
.blaze-privacy{margin:7px 4px 0;color:#78919d;font-size:10px;text-align:center}
body.blaze-passport .blaze-launcher,body.blaze-field .blaze-launcher{bottom:calc(82px + env(safe-area-inset-bottom))}
body.blaze-passport .blaze-panel,body.blaze-field .blaze-panel{bottom:calc(146px + env(safe-area-inset-bottom))}
@media(max-width:560px){
  .blaze-launcher{right:13px;padding-right:9px}.blaze-launcher .blaze-label{display:none}
  .blaze-panel{inset:calc(10px + env(safe-area-inset-top)) 8px calc(82px + env(safe-area-inset-bottom));width:auto;height:auto;border-radius:22px;transform-origin:bottom center}
  body.blaze-passport .blaze-panel,body.blaze-field .blaze-panel{bottom:calc(82px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){
  .blaze-launcher,.blaze-panel,.blaze-orb,.blaze-swirl{animation:none!important;transition:none!important;scroll-behavior:auto}
}
@media print{.blaze-launcher,.blaze-panel{display:none!important}}
