:root{--bg:#11111b;--bg-deep:#181825;--panel:#1e1e2e;--panel-2:#181825;--line:#313244;--line-strong:#45475a;--text:#cdd6f4;--text-dim:#a6adc8;--muted:#6c7086;--accent:#a6e3a1;--accent-strong:#94e2d5;--accent-dim:rgba(166,227,161,0.12);--accent-ink:#1e1e2e;--warn:#f9e2af;--warn-ink:#1e1e2e;--error:#f38ba8;--error-dim:rgba(243,139,168,0.1);--mauve:#cba6f7;--mauve-dim:rgba(203,166,247,0.12);--mauve-ink:#1e1e2e;--link:#89b4fa;--link-hover:#74c7ec;--ok:var(--accent);--font-mono:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace;--ease:cubic-bezier(0.22,0.61,0.21,1)}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}::selection{background:rgba(166,227,161,.25);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}:where(button,a,input,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{50%{opacity:0}}@keyframes pulse-live{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}@keyframes dot-bounce{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@keyframes scan-sweep{0%{top:0;opacity:0}12%{opacity:1}88%{opacity:1}to{top:calc(100% - 2px);opacity:0}}.reveal{opacity:0;animation:rise-in .55s var(--ease) both}.landing{position:relative;min-height:100vh;display:grid;place-items:center;padding:2.5rem 1rem;overflow:hidden;background:linear-gradient(rgba(166,227,161,.035) 1px,transparent 1px) 0 0 /100% 32px,linear-gradient(90deg,rgba(166,227,161,.035) 1px,transparent 1px) 0 0 /32px 100%,radial-gradient(ellipse 90% 80% at 50% 30%,#1e1e2e 0,var(--bg) 70%)}.landing:before{background:repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px)}.landing:after,.landing:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none}.landing:after{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E") repeat,radial-gradient(ellipse 85% 70% at 50% 40%,transparent 55%,rgba(17,17,27,.6) 100%)}.card{position:relative;z-index:2;width:100%;max-width:520px;padding:0;background:linear-gradient(180deg,rgba(24,24,37,.92),rgba(17,17,27,.96));border:1px solid var(--line);border-radius:10px;box-shadow:0 30px 70px -24px rgba(0,0,0,.75),0 0 0 1px rgba(166,227,161,.04),0 0 80px -40px rgba(166,227,161,.3);overflow:hidden}.titlebar{display:flex;align-items:center;gap:.7rem;padding:.55rem .95rem;border-bottom:1px solid var(--line);background:rgba(17,17,27,.75);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.tty-dots{display:inline-flex;gap:.35rem}.tty-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.tty-dot--r{background:var(--error)}.tty-dot--y{background:var(--warn)}.tty-dot--g{background:var(--ok)}.titlebar-title{flex:1 1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.titlebar-cursor{width:.5em;height:1em;background:var(--accent);animation:blink 1.1s steps(2,start) infinite}.identity{padding:1.6rem 1.9rem 0}.identity-line{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-dim)}.prompt{color:var(--accent);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.identity-cmd{color:var(--text)}.cursor-blink{display:inline-block;width:.55em;height:1em;margin-left:.2em;vertical-align:-.15em;background:var(--accent);animation:blink 1.1s steps(2,start) infinite}.identity h1{margin:.9rem 0 .55rem;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.2}.card .subtitle{margin:0;color:var(--text-dim);font-size:.82rem;line-height:1.65}.two-roles-note{margin:.7rem 1.9rem 0;padding:.5rem .7rem;border:1px solid rgba(203,166,247,.35);border-radius:6px;background:rgba(203,166,247,.08);color:var(--text-dim);font-size:.76rem;line-height:1.5}.two-roles-note strong{color:var(--mauve)}.card>.field,.card>.hint{margin-left:1.9rem;margin-right:1.9rem}.card>.primary{margin:.4rem 1.9rem 0}.card>.or-separator{margin:1rem 1.9rem 0}.card>.secondary{margin:.45rem 1.9rem 0}.card>.notice{margin:0 1.9rem 1.5rem}.field{display:block;margin-bottom:1.3rem}.field>span:first-child{display:block;margin-bottom:.5rem;font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.field-input-row{display:flex;align-items:center;gap:.55rem;background:var(--bg-deep);border:1px solid var(--line);border-radius:6px;padding:0 .75rem;transition:border-color .15s,box-shadow .15s}.field-input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.field input{width:100%;padding:.62rem 0;background:transparent;border:none;color:var(--text);font-size:.92rem;font-family:inherit;caret-color:var(--accent)}.field input:focus{outline:none}.field input::placeholder{color:var(--muted);opacity:.7}.role-group{display:grid;grid-template-columns:1fr 1fr;grid-gap:.7rem;gap:.7rem}.role-option{border:1px solid var(--line);border-radius:6px;padding:.75rem .85rem;background:var(--bg-deep);color:var(--text);cursor:pointer;font-size:.86rem;font-family:inherit;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}.role-option:hover{border-color:var(--line-strong);background:var(--panel-2);transform:translateY(-1px)}.role-option-top{display:flex;align-items:center;gap:.5rem}.role-option-icon{display:inline-flex;color:var(--muted);transition:color .15s}.role-option-name{font-weight:600}.role-option-check{margin-left:auto;color:var(--accent);font-weight:700;opacity:0;transition:opacity .15s}.role-option small{display:block;margin-top:.35rem;color:var(--muted);font-size:.7rem;line-height:1.4}.role-option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 1px rgba(166,227,161,.3),0 0 22px -8px rgba(166,227,161,.4)}.role-option[aria-pressed=true] .role-option-icon,.role-option[aria-pressed=true] .role-option-name{color:var(--accent)}.role-option[aria-pressed=true] .role-option-check{opacity:1}.role-option[aria-pressed=true] small{color:var(--text-dim)}.primary{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.78rem;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:var(--accent-ink);font-size:.88rem;font-weight:700;font-family:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,box-shadow .15s,transform .15s}.primary:hover:not(:disabled){background:var(--accent-strong);box-shadow:0 0 26px -8px rgba(166,227,161,.65);transform:translateY(-1px)}.primary:active:not(:disabled){transform:translateY(0)}.primary:disabled{opacity:.4;cursor:not-allowed;filter:saturate(.4)}.primary-glyph{font-weight:400}.or-separator{display:flex;align-items:center;gap:.75rem;color:var(--text-dim);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.or-separator:after,.or-separator:before{content:"";flex:1 1;height:1px;background:var(--line)}.secondary{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.78rem;border:1px solid var(--line-strong);border-radius:6px;background:transparent;color:var(--text-dim);font-size:.88rem;font-weight:600;font-family:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.secondary:hover{border-color:var(--accent);color:var(--accent);background:rgba(166,227,161,.06)}.hint{margin-top:1.5rem;padding:.95rem 1.05rem;border:1px dashed var(--line-strong);border-radius:8px;background:rgba(166,227,161,.045);font-size:.76rem;color:var(--text-dim);line-height:1.7}.hint-title{display:flex;align-items:center;gap:.45rem;margin:0 0 .5rem;color:var(--accent);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.hint-steps{margin:0;padding-left:1.15rem}.hint-steps li+li{margin-top:.3rem}.hint code,.hint-channel code{color:var(--accent);background:rgba(166,227,161,.08);padding:.08rem .35rem;border-radius:4px;font-size:.74em}.hint-channel{margin:.6rem 0 0;padding-top:.55rem;border-top:1px solid var(--line);font-size:.72rem}.room{display:flex;flex-direction:column;height:100vh;background:var(--bg)}.room-header{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;padding:.5rem .95rem;min-height:44px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#181825,#11111b);font-size:.74rem}.header-brand{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.header-brand,.header-divider{-webkit-user-select:none;-moz-user-select:none;user-select:none}.header-divider{width:1px;height:16px;background:var(--line-strong)}.room-header h1{margin:0;font-size:.8rem;font-weight:500;color:var(--text-dim)}.header-room-prompt{color:var(--muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-header .spacer{flex:1 1}.badge{display:inline-flex;align-items:center;gap:.45rem;padding:.2rem .55rem;border:1px solid var(--line);border-radius:4px;background:rgba(17,17,27,.6);font-size:.7rem;color:var(--muted);white-space:nowrap}.badge strong{color:var(--text);font-weight:600}.badge-em{font-style:normal;color:var(--text-dim)}.badge-glyph{color:var(--muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}.dot.ready{background:var(--ok);box-shadow:0 0 6px rgba(166,227,161,.7);animation:pulse-live 2.4s ease-in-out infinite}.dot.connecting,.dot.degraded,.dot.degraded-http,.dot.reconnecting{background:var(--warn);animation:pulse-live 1.3s ease-in-out infinite}.dot.blocked{background:var(--error)}.dot.analyzing{background:var(--mauve);box-shadow:0 0 8px rgba(203,166,247,.8);animation:pulse-live 1s ease-in-out infinite}.dot.done{background:var(--ok)}.dot.idle{background:var(--muted)}.dot.error{background:var(--error)}.typing-badge{color:var(--accent);border-color:rgba(166,227,161,.35);background:var(--accent-dim)}.locked-badge{color:var(--error);border-color:rgba(243,139,168,.35);background:var(--error-dim);font-weight:600}.dot-typing{background:var(--accent);box-shadow:0 0 6px rgba(166,227,161,.7);animation:pulse-live 1s ease-in-out infinite}.ellipsis{display:inline-flex;gap:2px;margin-left:1px}.ellipsis i{width:3px;height:3px;border-radius:50%;background:currentColor;font-style:normal;animation:dot-bounce 1.2s infinite}.ellipsis i:nth-child(2){animation-delay:.15s}.ellipsis i:nth-child(3){animation-delay:.3s}.copy-hint{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.42rem .95rem;border-bottom:1px solid var(--line);background:rgba(166,227,161,.04);font-size:.72rem;color:var(--text-dim)}.copy-hint-label{color:var(--accent);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.copy-hint-text,.copy-hint-url{white-space:nowrap}.copy-hint-url{flex:1 1;min-width:0;color:var(--accent);font-size:.7rem;overflow:hidden;text-overflow:ellipsis}.btn-copy{padding:.2rem .6rem;border:1px solid var(--line-strong);border-radius:4px;background:rgba(17,17,27,.6);color:var(--text-dim);font-size:.68rem;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.btn-copy:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.btn-copy:disabled{cursor:not-allowed;opacity:.4}.btn-copy:disabled:hover{border-color:var(--line-strong);color:var(--text-dim);background:rgba(17,17,27,.6)}.copy-hint-fail{color:var(--warn);font-size:.68rem}.editor-wrap{flex:1 1;min-height:0;position:relative}.editor-wrap:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(166,227,161,.35),transparent);z-index:1;pointer-events:none}.readonly-note{font-size:.68rem;color:var(--muted)}.loading-overlay{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:.6rem;background:rgba(17,17,27,.88);color:var(--muted);font-size:.8rem;pointer-events:none}.loading-spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:640px){.readonly-note{display:none}}.notice{max-width:640px;margin:3rem auto;padding:1.25rem 1.5rem;border-left:1px solid var(--error);border:1px solid var(--error);border-left-width:3px;border-radius:8px;background:var(--error-dim);font-family:inherit}.notice h2{margin:0 0 .75rem;font-size:.92rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--error)}.notice pre{margin:0 0 .75rem;white-space:pre-wrap;font-family:inherit;font-size:.78rem;line-height:1.65;color:var(--text)}.room-split{display:grid;grid-template-columns:minmax(0,1fr) 360px;height:100vh;background:var(--bg)}.room-split-main{min-width:0;overflow:hidden}@media (max-width:900px){.room-split{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;height:auto}}.analysis-panel{position:relative;display:flex;flex-direction:column;gap:.75rem;padding:.9rem 1rem 1rem;overflow-y:auto;border-left:1px solid var(--line);background:repeating-linear-gradient(180deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px),linear-gradient(180deg,#181825,#11111b);font-size:.8rem}.analysis-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-bottom:.55rem;border-bottom:1px dashed var(--line)}.analysis-header h2{margin:0;font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--mauve);display:inline-flex;align-items:center;gap:.45rem}.analysis-header h2:before{content:"";width:6px;height:6px;background:var(--mauve);display:inline-block;animation:pulse-live 2s ease-in-out infinite}.analysis-header-title{gap:.4rem}.analysis-header-title,.legend-toggle{display:inline-flex;align-items:center}.legend-toggle{justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);font-family:inherit;font-size:.62rem;font-weight:700;line-height:1;cursor:pointer}.legend-toggle:hover,.legend-toggle[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.analysis-legend{margin:0;padding:.6rem .7rem;border:1px solid var(--line);border-radius:6px;background:rgba(17,17,27,.5);display:flex;flex-direction:column;gap:.4rem}.legend-item{display:flex;align-items:baseline;gap:.5rem}.legend-item dt{flex:none;width:5.2rem}.legend-item dd{margin:0;font-size:.72rem;line-height:1.4;color:var(--text-dim)}.analysis-note{margin:0;font-size:.66rem;color:var(--muted);line-height:1.55}.analysis-empty{position:relative;overflow:hidden;margin:0;padding:.95rem 1rem;border:1px dashed var(--line-strong);border-radius:6px;background:rgba(17,17,27,.55);font-size:.74rem;color:var(--text-dim);line-height:1.6}.analysis-empty-caret{color:var(--accent);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.analysis-empty.is-waiting:after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(166,227,161,.55),transparent);animation:scan-sweep 2.2s var(--ease) infinite}.analysis-block{position:relative;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;padding:.7rem .85rem;background:rgba(17,17,27,.55)}.analysis-block h3{display:flex;gap:.5rem;margin:0 0 .45rem;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.analysis-block h3,.block-tag{align-items:center;font-weight:700}.block-tag{display:inline-flex;padding:.05rem .4rem;border-radius:3px;font-size:.58rem;line-height:1.5;letter-spacing:.1em;background:var(--error);color:#1e1e2e}.block-tag--warn{background:var(--warn);color:var(--warn-ink)}.analysis-block p,.analysis-block ul{margin:0;font-size:.8rem;line-height:1.55;color:var(--text)}.analysis-block ul{padding-left:1.05rem}.analysis-block li+li{margin-top:.35rem}.finding-line{display:inline-flex;align-items:center;margin-right:.4rem;padding:.02rem .32rem;border:1px solid var(--line);border-radius:3px;background:rgba(17,17,27,.6);color:var(--accent);font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.02em;line-height:1.5;cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.finding-line:hover{background:rgba(166,227,161,.14);border-color:var(--accent)}.analysis-block.risk{border-color:rgba(243,139,168,.5);border-left-color:var(--error);background:linear-gradient(180deg,rgba(243,139,168,.09),rgba(243,139,168,.03));box-shadow:0 0 20px -8px rgba(243,139,168,.4),inset 0 0 34px -24px rgba(243,139,168,.6)}.analysis-block.risk h3{color:var(--error)}.analysis-block.warn{border-color:rgba(249,226,175,.35);background:linear-gradient(180deg,rgba(249,226,175,.06),rgba(249,226,175,.02))}.analysis-block.warn h3{color:var(--warn)}.analysis-block.pipeline{border-color:rgba(249,226,175,.35);background:linear-gradient(180deg,rgba(249,226,175,.07),rgba(249,226,175,.02))}.analysis-block.pipeline h3{color:var(--warn)}.analysis-block.complexity{border-left-color:var(--accent)}.analysis-timestamp{margin:auto 0 0;padding-top:.55rem;border-top:1px dashed var(--line);font-size:.64rem;color:var(--muted)}.analysis-header.mention-pulse{animation:mention-pulse .9s var(--ease) 3}@keyframes mention-pulse{0%,to{background:transparent;border-color:var(--line)}50%{background:var(--mauve-dim);border-color:var(--mauve);box-shadow:0 0 24px -8px rgba(203,166,247,.55)}}.mention-alert{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.55rem .7rem;border-left:1px solid var(--mauve);border:1px solid var(--mauve);border-left-width:3px;border-radius:6px;background:linear-gradient(180deg,rgba(203,166,247,.16),rgba(203,166,247,.06));box-shadow:0 0 26px -8px rgba(203,166,247,.5);font-size:.72rem;animation:rise-in .3s var(--ease)}.mention-alert-title{color:var(--mauve);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.mention-alert-detail{color:var(--text);line-height:1.5}.analysis-block.alert-block{border-color:rgba(203,166,247,.45);background:linear-gradient(180deg,rgba(203,166,247,.08),rgba(203,166,247,.03))}.analysis-block.alert-block h3{color:var(--mauve)}.analysis-actions{display:flex;gap:.5rem}.finish-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.42rem .7rem;border:1px solid var(--warn);border-radius:6px;background:rgba(249,226,175,.08);color:var(--warn);font-size:.66rem;font-weight:700;font-family:inherit;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s,background .15s,box-shadow .15s}.finish-btn:hover:not(:disabled){background:rgba(249,226,175,.16);box-shadow:0 0 18px -6px rgba(249,226,175,.5)}.finish-btn:disabled{opacity:.45;cursor:not-allowed}.report-view{border:1px solid var(--line-strong);border-radius:8px;padding:.8rem .9rem;background:linear-gradient(180deg,rgba(166,227,161,.07),rgba(17,17,27,.55));box-shadow:0 0 0 1px rgba(166,227,161,.08),0 0 30px -14px rgba(166,227,161,.4)}.report-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.6rem;padding-bottom:.5rem;border-bottom:1px dashed var(--line)}.report-header h3{margin:0;display:inline-flex;align-items:center;gap:.45rem;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase}.report-header h3,.report-score{font-weight:700;color:var(--accent)}.report-score{font-size:1.5rem;line-height:1;text-shadow:0 0 18px rgba(166,227,161,.5)}.report-list{margin-top:.55rem}.report-list h4{margin:0 0 .3rem;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.report-list ul{margin:0;padding-left:1.05rem;font-size:.76rem;line-height:1.55;color:var(--text)}.report-list li+li{margin-top:.3rem}.report-list--ok h4{color:var(--accent)}.report-list--risk h4{color:var(--error)}.report-list--warn h4{color:var(--warn)}.qa-thread{display:flex;flex-direction:column;gap:.55rem}.qa-thread-title{margin:0;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mauve)}.qa-bubble{border:1px solid var(--line);border-radius:6px;padding:.55rem .7rem;background:rgba(17,17,27,.55)}.qa-q{margin:0 0 .35rem;font-size:.74rem;color:var(--mauve);line-height:1.5}.qa-q-mark{margin-right:.35rem;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qa-answer{margin:0;font-size:.76rem;color:var(--text);line-height:1.55;white-space:pre-wrap}.qa-answer--error{color:var(--warn)}.qa-form{margin-top:.4rem;padding-top:.6rem;border-top:1px dashed var(--line)}.qa-label{display:block;margin:0 0 .35rem;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.qa-input-row{display:flex;align-items:center;gap:.5rem;background:var(--bg-deep);border:1px solid var(--line);border-radius:6px;padding:.35rem .6rem;transition:border-color .15s,box-shadow .15s}.qa-input-row:focus-within{border-color:var(--mauve);box-shadow:0 0 0 3px var(--mauve-dim)}.qa-prompt{color:var(--mauve);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qa-input{flex:1 1;min-width:0;padding:.25rem 0;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:.78rem;caret-color:var(--accent)}.qa-input:focus{outline:none}.qa-input::placeholder{color:var(--muted);opacity:.7}.qa-input:disabled{opacity:.5}.qa-send{flex:none;padding:.2rem .6rem;border:1px solid var(--line-strong);border-radius:4px;background:rgba(17,17,27,.6);color:var(--text-dim);font-size:.66rem;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.qa-send:hover:not(:disabled){border-color:var(--mauve);color:var(--mauve);background:var(--mauve-dim)}.qa-send:disabled{opacity:.4;cursor:not-allowed}.qa-error{margin:.4rem 0 0;font-size:.68rem;color:var(--warn)}.remote-cursor{border-left:2px solid var(--warn);margin-left:-2px;background:rgba(249,226,175,.14)}.remote-cursor-label:before{content:"candidato";margin-left:3px;padding:0 4px;background:var(--warn);color:var(--warn-ink);font-size:9px;line-height:1.6;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:2px;white-space:nowrap}.dwell-low{background:rgba(249,226,175,.07)}.dwell-mid{background:rgba(250,179,135,.14)}.dwell-high{background:rgba(250,179,135,.24)}.radar-chip{position:absolute;top:12px;left:12px;z-index:2;pointer-events:none;padding:.2rem .55rem;border:1px solid var(--line-strong);border-radius:4px;background:rgba(24,24,37,.88);color:var(--text-dim);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.04em;white-space:nowrap;opacity:1;transition:opacity .25s var(--ease)}.radar-chip:empty{opacity:0}.radar-chip--flag{top:40px;border-color:rgba(250,179,135,.6);color:var(--error);background:linear-gradient(180deg,rgba(243,139,168,.16),rgba(250,179,135,.05));font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:0;box-shadow:0 0 18px -8px rgba(243,139,168,.6)}.chat-toggle{display:inline-flex;align-items:center;gap:.45rem;padding:.28rem .6rem;border:1px solid var(--line-strong);border-radius:6px;background:rgba(17,17,27,.88);color:var(--text-dim);font-family:inherit;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s,background .15s,box-shadow .15s}.chat-toggle:hover{border-color:var(--mauve);color:var(--mauve);background:var(--mauve-dim);box-shadow:0 0 18px -6px rgba(203,166,247,.45)}.chat-toggle .dot{width:6px;height:6px;background:var(--mauve)}.chat-toggle-glyph{font-size:.8rem;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-drawer{position:fixed;top:0;right:0;bottom:0;width:340px;max-width:100vw;z-index:50;display:flex;flex-direction:column;border-left:1px solid var(--line-strong);background:linear-gradient(180deg,var(--panel),var(--bg-deep));box-shadow:-24px 0 60px -30px rgba(0,0,0,.75);animation:rise-in .22s var(--ease)}.chat-inline{position:relative;width:100%}.chat-inline,.side-panel{display:flex;flex-direction:column;height:100%;min-height:0}.side-panel{min-width:0;border-left:1px solid var(--line)}.side-panel .analysis-panel{border-left:none;height:100%}.side-panel-tabs{display:flex;flex:none;border-bottom:1px solid var(--line);background:rgba(17,17,27,.6)}.side-tab{flex:1 1;padding:.55rem .4rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-family:inherit;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.side-tab:hover{color:var(--text)}.side-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:rgba(166,227,161,.06)}.side-panel-body{flex:1 1;min-height:0;display:flex;overflow:hidden}.side-panel-body[hidden]{display:none}.notes-panel{display:flex;flex-direction:column;gap:.6rem;padding:.9rem 1rem 1rem;width:100%;min-height:0}.notes-hint{margin:0;font-size:.7rem;line-height:1.5;color:var(--muted)}.notes-textarea{flex:1 1;min-height:160px;resize:none;border:1px solid var(--line);border-radius:6px;background:rgba(17,17,27,.55);color:var(--text);font-family:var(--font-mono);font-size:.78rem;line-height:1.55;padding:.6rem .7rem}.notes-textarea:focus{outline:none;border-color:var(--accent)}.notes-textarea::placeholder{color:var(--muted)}.chat-header{display:flex;align-items:center;gap:.5rem;padding:.55rem .8rem;border-bottom:1px solid var(--line);background:rgba(24,24,37,.85);flex:none}.chat-header h2{margin:0;display:inline-flex;align-items:center;gap:.45rem;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mauve)}.chat-header h2:before{content:"";width:6px;height:6px;background:var(--mauve);display:inline-block}.chat-close{margin-left:auto;padding:.15rem .45rem;border:1px solid var(--line-strong);border-radius:4px;background:transparent;color:var(--muted);font-family:inherit;font-size:.8rem;line-height:1;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.chat-close:hover{border-color:var(--error);color:var(--error);background:var(--error-dim)}.chat-status{padding:.15rem .45rem;font-size:.6rem}.chat-error-line{flex:none;margin:0;padding:.2rem .8rem 0;font-size:.62rem;color:var(--muted)}.chat-list{flex:1 1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;padding:.7rem .8rem}.chat-empty{margin:auto;font-size:.72rem;color:var(--muted);text-align:center;line-height:1.6}.chat-load-more{align-self:center;padding:.2rem .6rem;border:1px dashed var(--line-strong);border-radius:4px;background:transparent;color:var(--muted);font-family:inherit;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.chat-load-more:hover:not(:disabled){border-color:var(--mauve);color:var(--mauve);background:var(--mauve-dim)}.chat-load-more:disabled{opacity:.45;cursor:not-allowed}.chat-msg{max-width:92%;padding:.45rem .6rem;border:1px solid var(--line);border-radius:6px;background:rgba(24,24,37,.7);font-size:.76rem}.chat-msg--candidato{align-self:flex-start;border-left:3px solid var(--accent)}.chat-msg--evaluador{align-self:flex-end;border-left:3px solid var(--mauve)}.chat-msg-meta{display:flex;align-items:baseline;gap:.45rem;margin-bottom:.2rem;font-size:.56rem;letter-spacing:.1em;text-transform:uppercase}.chat-msg--candidato .chat-msg-role{color:var(--accent)}.chat-msg--evaluador .chat-msg-role{color:var(--mauve)}.chat-msg-time{color:var(--muted);letter-spacing:0;text-transform:none}.chat-msg-text{margin:0;color:var(--text);line-height:1.5;white-space:pre-wrap;word-break:break-word}.chat-typing{flex:none;margin:0;padding:.15rem .8rem .3rem;font-size:.64rem;font-style:italic;color:var(--mauve);display:inline-flex;align-items:center;gap:.3rem}.chat-typing .ellipsis{font-style:normal}.chat-input-row{flex:none;display:flex;align-items:center;gap:.5rem;margin:0 .8rem .8rem;padding:.4rem .6rem;background:var(--bg-deep);border:1px solid var(--line);border-radius:6px;transition:border-color .15s,box-shadow .15s}.chat-input-row:focus-within{border-color:var(--mauve);box-shadow:0 0 0 3px var(--mauve-dim)}.chat-prompt{color:var(--mauve);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-input{flex:1 1;min-width:0;padding:.25rem 0;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:.78rem;caret-color:var(--mauve)}.chat-input:focus{outline:none}.chat-input::placeholder{color:var(--muted);opacity:.7}.chat-send{flex:none;padding:.25rem .65rem;border:1px solid var(--mauve);border-radius:4px;background:var(--mauve);color:var(--mauve-ink);font-size:.64rem;font-weight:700;font-family:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:box-shadow .15s,transform .15s,opacity .15s}.chat-send:hover:not(:disabled){box-shadow:0 0 18px -6px rgba(203,166,247,.6);transform:translateY(-1px)}.chat-send:disabled{opacity:.4;cursor:not-allowed}@media (max-width:640px){.chat-drawer{width:100vw}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}