:root{--font:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji";--radius:14px;--radius-sm:8px;--radius-msg:18px}
[data-theme="teal"]  {--bg:#09100f;--bg2:#0f1a18;--bg3:#162220;--bg4:#1e2e2c;--border:rgba(80,200,180,0.10);--border2:rgba(80,200,180,0.20);--accent:#0d8a7a;--accent2:#12b8a4;--accent3:#40d4c0;--text:#e4eeec;--text2:#8ab0a8;--text3:#4a7068;--pbg:#1c2e2b;--pbord:rgba(80,200,180,0.30);--glow:rgba(13,138,122,0.12);--glow2:rgba(13,138,122,0.08);--logo1:#0d8a7a;--logo2:#041814;--eye:#0a6a60;--eye2:#80e8e0;--hood:#1e3830;--smile:#8ab8a8;--ubub:rgba(13,138,122,0.10);--ubord:rgba(80,200,180,0.20)}
[data-theme="orange"]{--bg:#0f0a04;--bg2:#1a1005;--bg3:#221608;--bg4:#2e1e0a;--border:rgba(220,140,30,0.12);--border2:rgba(220,140,30,0.25);--accent:#b86010;--accent2:#e07820;--accent3:#f0a840;--text:#f0e8d8;--text2:#b89060;--text3:#786040;--pbg:#1e1408;--pbord:rgba(220,140,30,0.35);--glow:rgba(200,120,20,0.12);--glow2:rgba(200,120,20,0.06);--logo1:#c87020;--logo2:#180a02;--eye:#a06018;--eye2:#f0c060;--hood:#3a2808;--smile:#c89050;--ubub:rgba(184,96,16,0.12);--ubord:rgba(220,140,30,0.22)}
[data-theme="garnet"]{--bg:#0e0508;--bg2:#180a0e;--bg3:#220e14;--bg4:#2e1018;--border:rgba(180,30,60,0.12);--border2:rgba(180,30,60,0.25);--accent:#8a1030;--accent2:#b82040;--accent3:#e04060;--text:#f0e4e8;--text2:#a87080;--text3:#6a3848;--pbg:#1e0c12;--pbord:rgba(180,30,60,0.35);--glow:rgba(160,20,50,0.14);--glow2:rgba(160,20,50,0.07);--logo1:#901828;--logo2:#180408;--eye:#7a1020;--eye2:#f08090;--hood:#2e0810;--smile:#c07080;--ubub:rgba(138,16,48,0.12);--ubord:rgba(180,30,60,0.22)}
[data-theme="viola"] {--bg:#0a0910;--bg2:#110f1e;--bg3:#1a1730;--bg4:#221e3a;--border:rgba(160,130,255,0.12);--border2:rgba(160,130,255,0.22);--accent:#7c4ddb;--accent2:#a87aff;--accent3:#c8a8ff;--text:#e8e4f0;--text2:#a89ec8;--text3:#6a6088;--pbg:#110f1e;--pbord:rgba(160,130,255,0.30);--glow:rgba(100,50,200,0.12);--glow2:rgba(180,150,20,0.06);--logo1:#8858e8;--logo2:#2a1050;--eye:#7030c0;--eye2:#e0c8ff;--hood:#3a4820;--smile:#c8a060;--ubub:rgba(124,77,219,0.12);--ubord:rgba(160,130,255,0.20)}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:background .4s,color .4s}
body::before{content:'';position:fixed;top:-180px;left:50%;transform:translateX(-50%);width:700px;height:500px;background:radial-gradient(ellipse,var(--glow) 0%,transparent 70%);pointer-events:none;z-index:0;transition:background .4s}
body::after{content:'';position:fixed;bottom:-80px;left:50%;transform:translateX(-50%);width:400px;height:280px;background:radial-gradient(ellipse,var(--glow2) 0%,transparent 70%);pointer-events:none;z-index:0;transition:background .4s}

/* ── HEADER ── */
header{display:flex;align-items:center;gap:14px;padding:13px 22px;border-bottom:1px solid var(--border);background:rgba(0,0,0,.52);backdrop-filter:blur(14px);position:relative;z-index:10;flex-shrink:0;transition:border-color .4s}
.logo-mark{width:38px;height:38px;flex-shrink:0;position:relative}
.logo-mark svg{width:100%;height:100%}
.logo-pulse{position:absolute;inset:-4px;border-radius:50%;border:1.5px solid #94a3b8;animation:pulse 3.5s ease-in-out infinite;transition:border-color .4s,box-shadow .4s}
.logo-pulse--realizzato{border-color:#22c55e;box-shadow:0 0 8px #22c55e,0 0 2px #22c55e}
.logo-pulse--sereno{border-color:#34d399;box-shadow:0 0 8px #34d399,0 0 2px #34d399}
.logo-pulse--tranquillo{border-color:#6ee7b7;box-shadow:0 0 8px #6ee7b7,0 0 2px #6ee7b7}
.logo-pulse--neutrale{border-color:#94a3b8;box-shadow:0 0 8px #94a3b8,0 0 2px #94a3b8}
.logo-pulse--irrequieto{border-color:#fbbf24;box-shadow:0 0 8px #fbbf24,0 0 2px #fbbf24}
.logo-pulse--frustrato{border-color:#fb923c;box-shadow:0 0 8px #fb923c,0 0 2px #fb923c}
.logo-pulse--agitato{border-color:#ef4444;box-shadow:0 0 8px #ef4444,0 0 2px #ef4444}
.header-emozione{font-size:10px;letter-spacing:.04em;color:var(--text3);margin-top:2px;transition:color .3s;min-height:14px;opacity:.85}
.header-emozione--realizzato{color:#22c55e}
.header-emozione--sereno{color:#34d399}
.header-emozione--tranquillo{color:#6ee7b7}
.header-emozione--neutrale{color:#94a3b8}
.header-emozione--irrequieto{color:#fbbf24}
.header-emozione--frustrato{color:#fb923c}
.header-emozione--agitato{color:#ef4444}
@keyframes pulse{0%,100%{opacity:.3;transform:scale(1)}50%{opacity:.7;transform:scale(1.09)}}
.header-text{flex:1}
.header-name{font-size:17px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.2}
.header-sub{font-size:11px;color:var(--text3);letter-spacing:.05em;margin-top:2px}
.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.theme-picker{display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--bg3);border:1px solid var(--border2);border-radius:20px;transition:all .2s}
.theme-label{font-size:11px;color:var(--text3);letter-spacing:.05em;white-space:nowrap}
.theme-dots{display:flex;gap:5px;align-items:center}
.theme-dot{width:15px;height:15px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .18s}
.theme-dot:hover{transform:scale(1.2)}
.theme-dot.active{border-color:var(--text);box-shadow:0 0 6px var(--accent2)}
.theme-dot[data-t="teal"]  {background:linear-gradient(135deg,#0d8a7a,#40d4c0)}
.theme-dot[data-t="orange"]{background:linear-gradient(135deg,#b86010,#f0a840)}
.theme-dot[data-t="garnet"]{background:linear-gradient(135deg,#8a1030,#e04060)}
.theme-dot[data-t="viola"] {background:linear-gradient(135deg,#7c4ddb,#d4c018)}
#new-chat-btn,#fav-chat-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--bg3);border:1px solid var(--border2);border-radius:9px;color:var(--text2);cursor:pointer;transition:all .2s;flex-shrink:0}
#new-chat-btn:hover,#fav-chat-btn:hover{border-color:var(--accent2);color:var(--accent3)}
#new-chat-btn svg,#fav-chat-btn svg{width:16px;height:16px}
#fav-chat-btn{display:none !important}
body.ghitax-active #fav-chat-btn{display:flex !important}
#fav-chat-btn.starred{color:#fbbf24;border-color:rgba(251,191,36,.35);background:rgba(251,191,36,.06)}
.status-dot{width:7px;height:7px;border-radius:50%;background:#3dba82;box-shadow:0 0 7px #3dba82;animation:blink 2.5s ease-in-out infinite;flex-shrink:0;transition:background .4s,box-shadow .4s}
.status-dot--realizzato{background:#22c55e;box-shadow:0 0 7px #22c55e}
.status-dot--sereno{background:#34d399;box-shadow:0 0 7px #34d399}
.status-dot--tranquillo{background:#6ee7b7;box-shadow:0 0 7px #6ee7b7}
.status-dot--neutrale{background:#94a3b8;box-shadow:0 0 7px #94a3b8}
.status-dot--irrequieto{background:#fbbf24;box-shadow:0 0 7px #fbbf24}
.status-dot--frustrato{background:#fb923c;box-shadow:0 0 7px #fb923c}
.status-dot--agitato{background:#ef4444;box-shadow:0 0 7px #ef4444}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
.cliente-badge{display:none;align-items:center;gap:6px;padding:4px 10px;background:var(--bg3);border:1px solid var(--border2);border-radius:20px;font-size:11px;color:var(--text2);letter-spacing:.04em;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}
.cliente-badge.visible{display:flex}
.cliente-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--accent2);flex-shrink:0}
.cliente-nome{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ── CHAT ── */
#chat{flex:1;overflow-y:auto;padding:22px 0 8px;display:flex;flex-direction:column;gap:4px;position:relative;z-index:1;scrollbar-width:thin;scrollbar-color:var(--border2) transparent}
#chat::-webkit-scrollbar{width:4px}
#chat::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}

/* ── WELCOME ── */
#welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;text-align:center;gap:20px;animation:fadeUp .6s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

/* Runa ᚢ con gradiente oro — indipendente dal tema, repaint-safe */
.welcome-rune{
  font-size:84px;line-height:1;margin-bottom:4px;
  /* Nessun gradiente diretto sull'elemento genitore: evita conflitti con repaint tema */
  animation:runeShimmer 4s ease-in-out infinite;
}
/* Il gradiente oro sta su uno span interno isolato dal tema */
.welcome-rune-inner{
  background-image:linear-gradient(135deg,#b8860b 0%,#d4af37 25%,#f5d060 50%,#e8c040 70%,#c8960a 100%);
  background-size:100% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  display:inline-block;
}
@keyframes runeShimmer{
  0%,100%{filter:drop-shadow(0 0 28px rgba(212,192,24,.50)) drop-shadow(0 0 10px rgba(240,200,60,.30))}
  50%   {filter:drop-shadow(0 0 42px rgba(240,210,30,.75)) drop-shadow(0 0 18px rgba(255,220,80,.50))}
}

.welcome-title{font-size:26px;font-weight:600;color:var(--text);letter-spacing:-.02em}
.welcome-sub{font-size:15px;color:var(--text2);max-width:400px;line-height:1.7}
.suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:4px;max-width:560px}
.suggestion{padding:8px 16px;border:1px solid var(--border2);border-radius:20px;font-size:13px;color:var(--text2);cursor:pointer;transition:all .18s;background:rgba(255,255,255,.02);font-family:var(--font)}
.suggestion:hover{border-color:var(--accent2);color:var(--accent3);background:rgba(0,0,0,.2)}

/* ── MESSAGGI ── */
.msg-row{display:flex;padding:3px 18px;animation:msgIn .25s ease}
@keyframes msgIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.msg-row.user{justify-content:flex-end}
.msg-row.user .bubble{max-width:72%;background:var(--ubub);border:1px solid var(--ubord);border-radius:var(--radius-msg) var(--radius-msg) 4px var(--radius-msg);padding:10px 15px;font-size:15px;line-height:1.7;color:var(--text);word-break:break-word;white-space:pre-wrap;transition:background .4s,border-color .4s}
.msg-row.ai{justify-content:flex-start;align-items:flex-start;gap:10px}
.ai-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;margin-top:2px;background:radial-gradient(circle at 35% 35%,var(--logo1),var(--logo2));border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;transition:background .4s,border-color .4s}
.ai-content{flex:1;min-width:0;max-width:calc(100% - 44px)}
.ai-name{font-size:12px;font-weight:600;color:var(--accent3);margin-bottom:5px;letter-spacing:.03em;transition:color .4s}
.ai-text{font-size:15px;line-height:1.75;color:var(--text);white-space:pre-wrap;word-break:break-word}
.ai-text code{font-family:ui-monospace,"Cascadia Code",monospace;background:rgba(255,255,255,.06);border:1px solid var(--border2);padding:1px 6px;border-radius:4px;font-size:13px;color:var(--accent3)}
.ai-text pre{background:rgba(0,0,0,.45);border:1px solid var(--border2);border-radius:var(--radius-sm);padding:12px 16px;margin:10px 0;overflow-x:auto;font-family:ui-monospace,monospace;font-size:13px;line-height:1.6;white-space:pre}
.ai-text strong{font-weight:600}

/* ── STATO CONVERSAZIONE ── */
.conv-stato{display:inline-flex;align-items:center;gap:4px;font-size:10px;letter-spacing:.04em;padding:2px 7px;border-radius:10px;border:1px solid;opacity:.65;margin-left:2px;font-weight:500;vertical-align:middle;cursor:default;user-select:none;transition:opacity .2s}
.conv-stato:hover{opacity:1}
.conv-stato[data-s="Noioso"]     {color:#94a3b8;border-color:rgba(148,163,184,.3);background:rgba(148,163,184,.07)}
.conv-stato[data-s="Stimolante"] {color:#34d399;border-color:rgba(52,211,153,.3);background:rgba(52,211,153,.07)}
.conv-stato[data-s="Ridondante"] {color:#fbbf24;border-color:rgba(251,191,36,.3);background:rgba(251,191,36,.07)}
.conv-stato[data-s="Pericoloso"] {color:#f87171;border-color:rgba(248,113,113,.3);background:rgba(248,113,113,.07)}
.conv-stato[data-s="Costruttivo"]{color:#60a5fa;border-color:rgba(96,165,250,.3);background:rgba(96,165,250,.07)}
.conv-stato[data-s="Leziosa"]    {color:#f472b6;border-color:rgba(244,114,182,.3);background:rgba(244,114,182,.07)}
.conv-stato[data-s="Anomala"]    {color:#c084fc;border-color:rgba(192,132,252,.3);background:rgba(192,132,252,.07)}

/* ── FEEDBACK ── */
.feedback-row{display:flex;gap:6px;margin-top:8px;opacity:0;transition:opacity .2s}
.msg-row.ai:hover .feedback-row{opacity:1}
.feedback-row.voted{opacity:1}
.fb-btn{width:28px;height:28px;border-radius:7px;border:1px solid transparent;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .18s;padding:0}
.fb-btn:hover{border-color:var(--border2);color:var(--text2);background:rgba(255,255,255,.04)}
.fb-btn.active-up{color:#4ade80;border-color:rgba(74,222,128,.3);background:rgba(74,222,128,.06)}
.fb-btn.active-down{color:#f87171;border-color:rgba(248,113,113,.3);background:rgba(248,113,113,.06)}
.fb-btn svg{width:15px;height:15px}
.copy-btn{width:28px;height:28px;border-radius:7px;border:1px solid transparent;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .18s;padding:0}
.copy-btn:hover{border-color:var(--border2);color:var(--text2);background:rgba(255,255,255,.04)}
.copy-btn.copied{color:#4ade80;border-color:rgba(74,222,128,.3)}
.copy-btn svg{width:15px;height:15px}
.star-btn{width:28px;height:28px;border-radius:7px;border:1px solid transparent;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);transition:all .18s;padding:0}
.star-btn:hover{border-color:rgba(212,192,24,.4);color:#d4c018;background:rgba(212,192,24,.06)}
.star-btn.starred{color:#d4c018;border-color:rgba(212,192,24,.4);background:rgba(212,192,24,.08)}
.star-btn svg{width:15px;height:15px}

/* ── TOOL / TYPING ── */
.tool-badge{font-size:11px;color:var(--accent2);opacity:.75;margin-bottom:5px;display:flex;align-items:center;gap:5px;transition:color .4s}
.tool-badge::before{content:'⚙';font-size:10px}
.typing-dots{display:flex;gap:5px;align-items:center;padding:5px 0}
.typing-dots span{width:7px;height:7px;border-radius:50%;background:var(--accent2);animation:dot 1.3s ease-in-out infinite;transition:background .4s}
.typing-dots span:nth-child(2){animation-delay:.22s}
.typing-dots span:nth-child(3){animation-delay:.44s}
@keyframes dot{0%,100%{opacity:.25;transform:scale(.75)}50%{opacity:1;transform:scale(1.1)}}

/* ── PASSWORD MODE ── */
.pw-lock-badge{display:none;align-items:center;gap:5px;font-size:11px;color:var(--accent2);padding:3px 8px;background:var(--bg3);border:1px solid var(--border2);border-radius:20px;margin-bottom:6px;letter-spacing:.04em;transition:all .2s}
.pw-lock-badge.active{display:flex}
.pw-lock-badge::before{content:'🔒';font-size:10px}
#prompt.pw-mode{letter-spacing:.04em;color:var(--accent3)}

/* ── TYPING STATUS ── */
.typing-status{font-size:11px;color:var(--text2);opacity:.75;margin-top:5px;font-style:italic;transition:opacity .3s}
@keyframes fadein-status{from{opacity:0;transform:translateY(3px)}to{opacity:.75;transform:translateY(0)}}

/* ── THINK / RAGIONAMENTO ── */
.think-toggle{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:11px;color:var(--text3);cursor:pointer;user-select:none;transition:color .2s,opacity .2s;border:none;background:none;padding:2px 0;font-family:inherit;opacity:.2}
.think-toggle:hover{color:var(--accent2);opacity:1}
.think-arrow{display:inline-block;transition:transform .2s;font-style:normal}
.think-toggle.open .think-arrow{transform:rotate(90deg)}
.think-body{display:none;margin-top:6px;padding:8px 12px;background:var(--bg3);border-radius:8px;border-left:2px solid var(--accent);font-size:11px;color:var(--text3);white-space:pre-wrap;line-height:1.6;max-height:180px;overflow-y:auto;scrollbar-width:thin}
.think-body.open{display:block}

/* ── FOOTER ── */
footer{padding:14px 22px 22px;border-top:1px solid var(--border);background:rgba(0,0,0,.52);backdrop-filter:blur(14px);position:relative;z-index:10;flex-shrink:0;transition:border-color .4s}
.input-outer{max-width:760px;margin:0 auto}
.input-wrap{display:flex;align-items:flex-end;gap:10px;background:var(--pbg);border:1.5px solid var(--pbord);border-radius:var(--radius);padding:12px 14px;transition:border-color .2s,box-shadow .2s,background .4s}
.input-wrap:focus-within{border-color:var(--accent2);box-shadow:0 0 0 3px var(--glow),0 2px 12px var(--glow2)}
#prompt{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--font);font-size:15px;resize:none;line-height:1.6;max-height:200px;overflow-y:auto}
#prompt::placeholder{color:var(--text3)}
#send-btn{width:36px;height:36px;border-radius:9px;background:var(--accent);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .18s;color:#fff8f0}
#send-btn:hover{background:var(--accent2);transform:scale(1.05)}
#send-btn:active{transform:scale(.94)}
#send-btn:disabled{background:var(--bg4);cursor:not-allowed;transform:none;opacity:.45}
#send-btn svg{width:16px;height:16px}
#attach-btn:hover {
  border-color: var(--accent2);
  color: var(--accent3);
  transform: scale(1.05);
}
.footer-note{text-align:center;font-size:11px;color:var(--text3);margin-top:9px;letter-spacing:.03em}

/* ── Modal Feedback ── */
#fb-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:100;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.fb-modal-box{background:var(--bg2,#110f1e);border:1px solid rgba(160,130,255,.25);border-radius:16px;padding:22px 24px;width:min(420px,90vw);display:flex;flex-direction:column;gap:14px}
.fb-modal-title{font-size:15px;font-weight:600;color:var(--text,#e8e4f0)}
.fb-modal-nota{background:rgba(255,255,255,.04);border:1px solid rgba(160,130,255,.2);border-radius:10px;padding:10px 14px;color:var(--text,#e8e4f0);font-family:inherit;font-size:14px;resize:none;outline:none;min-height:80px;transition:border-color .2s}
.fb-modal-nota:focus{border-color:rgba(160,130,255,.5)}
.fb-modal-actions{display:flex;gap:10px;justify-content:flex-end}
.fb-modal-send{background:#7c4ddb;border:none;border-radius:9px;padding:8px 20px;color:white;font-size:14px;cursor:pointer;transition:all .18s}
.fb-modal-send:hover{background:#a87aff}
.fb-modal-skip{background:none;border:1px solid rgba(160,130,255,.2);border-radius:9px;padding:8px 16px;color:#a89ec8;font-size:14px;cursor:pointer;transition:all .18s}
.fb-modal-skip:hover{border-color:rgba(160,130,255,.4);color:#e8e4f0}

/* ═══════════════════════════════════════════════════════════════════
   PANNELLO RAGIONAMENTO IN TEMPO REALE — Reasoning Content Qwen3
   ═══════════════════════════════════════════════════════════════════ */
.reasoning-panel {
  margin: 8px 0 12px 44px;
  background: var(--bg3);
  border: 1px solid var(--border2);
  border-left: 3px solid var(--accent);
  border-radius: var(--radius-sm);
  overflow: hidden;
  animation: reasoningSlideIn 0.3s ease;
  max-width: calc(100% - 44px);
}
@keyframes reasoningSlideIn {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}
.reasoning-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: rgba(0,0,0,0.2);
  border-bottom: 1px solid var(--border);
  font-size: 12px;
  font-weight: 600;
  color: var(--accent3);
}
.reasoning-icon {
  font-size: 14px;
  animation: brainPulse 2s ease-in-out infinite;
}
/* Reasoning visibile SOLO per Ghitax */
.reasoning-panel,
#live-reasoning-panel,
.reasoning-history-toggle {
  display: none !important;
}
body.ghitax-active .reasoning-panel,
body.ghitax-active #live-reasoning-panel {
  display: block !important;
}
body.ghitax-active .reasoning-history-toggle {
  display: inline-flex !important;
}
@keyframes brainPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.1); }
}
.reasoning-title {
  flex: 1;
}
.reasoning-status {
  font-size: 10px;
  color: var(--text3);
  font-weight: 400;
  padding: 2px 8px;
  background: var(--bg4);
  border-radius: 10px;
}
.reasoning-status.complete {
  color: #4ade80;
  background: rgba(74, 222, 128, 0.1);
}
.reasoning-content {
  padding: 12px;
  font-family: ui-monospace, "Cascadia Code", monospace;
  font-size: 12px;
  line-height: 1.6;
  color: var(--text2);
  max-height: 300px;
  overflow-y: auto;
  white-space: pre-wrap;
  word-break: break-word;
  background: rgba(0,0,0,0.15);
}
.reasoning-content::-webkit-scrollbar {
  width: 6px;
}
.reasoning-content::-webkit-scrollbar-thumb {
  background: var(--border2);
  border-radius: 3px;
}
.reasoning-panel.reasoning-complete {
  border-left-color: #4ade80;
  opacity: 0.9;
}
.reasoning-panel.reasoning-complete .reasoning-icon {
  animation: none;
}
/* Collapsible reasoning in message history */
.reasoning-history-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 8px;
  font-size: 11px;
  color: var(--text3);
  cursor: pointer;
  user-select: none;
  transition: color 0.2s, opacity 0.2s;
  border: none;
  background: none;
  padding: 2px 0;
  font-family: inherit;
  opacity: 0.3;
}
.reasoning-history-toggle:hover {
  color: var(--accent2);
  opacity: 1;
}
.reasoning-history-toggle .arrow {
  display: inline-block;
  transition: transform 0.2s;
}
.reasoning-history-toggle.open .arrow {
  transform: rotate(90deg);
}
.reasoning-history-body {
  display: none;
  margin-top: 6px;
  padding: 8px 12px;
  background: var(--bg3);
  border-radius: 8px;
  border-left: 2px solid var(--accent);
  font-size: 12px;
  color: var(--text2);
  white-space: pre-wrap;
  line-height: 1.6;
  max-height: 200px;
  overflow-y: auto;
  font-family: ui-monospace, monospace;
}
.reasoning-history-body.open {
  display: block;
}
/* ── Help desk media ─────────────────────────────────── */
.help-img-thumb{max-width:220px;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s;margin:4px 0}
.help-img-thumb:hover{transform:scale(1.02);box-shadow:0 4px 16px rgba(0,0,0,.25)}
.help-video-thumb{position:relative;display:inline-block;cursor:pointer;max-width:220px;border-radius:8px;overflow:hidden;margin:4px 0;transition:transform .2s,box-shadow .2s}
.help-video-thumb:hover{transform:scale(1.02);box-shadow:0 4px 16px rgba(0,0,0,.25)}
.help-video-thumb img{display:block;width:100%}
.help-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:rgba(0,0,0,.65);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;pointer-events:none}
#help-lightbox,#help-videobox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center}
#help-lightbox.active,#help-videobox.active{display:flex}
.help-lb-back{position:absolute;inset:0;background:rgba(0,0,0,.85);cursor:pointer}
.help-lb-img{position:relative;max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);cursor:pointer}
.help-lb-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:24px;cursor:pointer;backdrop-filter:blur(8px);transition:background .2s;z-index:10}
.help-lb-close:hover{background:rgba(255,255,255,.3)}
.help-vb-wrap{position:relative;width:90vw;max-width:960px;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.help-vb-wrap iframe{width:100%;height:100%}
