link[rel=icon]{width:32px;height:32px}#root{width:100%;height:100vh;margin:0;padding:0}.toast-stack{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:3000;pointer-events:none}.toast-item{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;background:var(--glass-bg-strong, rgba(255, 255, 255, .85));border:1px solid var(--glass-border, rgba(255, 255, 255, .4));box-shadow:var(--glass-shadow, 0 8px 32px rgba(0, 0, 0, .12));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:.85rem;color:inherit;animation:toast-in .25s ease}.toast-icon{display:inline-flex;align-items:center}.toast-success .toast-icon{color:var(--brand, #038B8F)}.toast-error .toast-icon{color:#c0392b}.toast-info .toast-icon{color:var(--brand, #038B8F)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.feedback-bar-wrap{display:inline-flex;flex-direction:column;align-items:flex-end;gap:6px;margin-left:auto}.feedback-bar{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px}.feedback-bar .msg-action-btn{opacity:1;margin-right:0;width:30px;height:30px;color:var(--text-secondary);border-color:var(--glass-hairline);background:var(--chip-bg)}.feedback-bar .msg-action-btn:disabled{cursor:progress;opacity:.6}.fb-thumb.fb-up.active{color:var(--brand);background:color-mix(in srgb,var(--brand) 14%,transparent);border-color:color-mix(in srgb,var(--brand) 40%,transparent)}.fb-thumb.fb-down.active{color:#c0392b;background:rgba(192,57,43,.1);border-color:#c0392b59}.dark-mode .fb-thumb.fb-down.active{color:#f87171}.fb-details-link,.fb-staff-btn{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--text-secondary);transition:background-color .15s linear,border-color .15s linear,color .15s linear}.fb-details-link:hover,.fb-staff-btn:hover{background:var(--chip-bg-hover);border-color:color-mix(in srgb,var(--brand) 40%,transparent);color:var(--brand)}.fb-details-link.has-draft{color:#b45309;border-color:#d9770659;background:rgba(217,119,6,.08)}.dark-mode .fb-details-link.has-draft{color:#fcd34d}.fb-staff-btn{margin-left:4px;color:var(--brand);border-color:color-mix(in srgb,var(--brand) 30%,transparent);background:var(--brand-tint)}.fb-code-btn{position:relative;display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;margin-left:4px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid rgba(124,58,237,.28);background:rgba(124,58,237,.07);color:#7c3aed;transition:background-color .15s linear,border-color .15s linear}.fb-code-btn:hover{background:rgba(124,58,237,.14);border-color:#7c3aed73}.dark-mode .fb-code-btn{color:#c4b5fd;border-color:#c4b5fd47;background:rgba(196,181,253,.08)}.fb-code-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.fb-code-btn.state-queued .fb-code-dot,.fb-code-btn.state-running .fb-code-dot{animation:fb-code-pulse 1.4s ease-in-out infinite}.fb-code-btn.state-done .fb-code-dot{background:var(--brand)}.fb-code-btn.state-failed .fb-code-dot,.fb-code-btn.state-cancelled .fb-code-dot{background:#c0392b}@keyframes fb-code-pulse{0%,to{opacity:1}50%{opacity:.3}}.feedback-followup{width:min(460px,calc(100vw - 48px));padding:12px 14px;border-radius:14px;background:var(--glass-bg-strong, rgba(255, 255, 255, .8));border:1px solid var(--glass-hairline);box-shadow:var(--glass-shadow, 0 8px 32px rgba(0, 0, 0, .1));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:10px;animation:fb-in .18s ease-out}@keyframes fb-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.fb-followup-head{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;font-weight:600}.fb-followup-head em{font-weight:400;opacity:.65}.fb-close{background:none;border:none;cursor:pointer;color:inherit;opacity:.6;display:inline-flex;padding:4px;border-radius:6px}.fb-close:hover{opacity:1;background:var(--chip-bg-hover)}.fb-chips{display:flex;flex-wrap:wrap;gap:6px}.fb-chip{display:inline-flex;align-items:center;gap:3px;padding:5px 11px;border-radius:999px;font-size:.76rem;cursor:pointer;background:var(--chip-bg);border:1px solid var(--glass-hairline);color:inherit;transition:background-color .15s linear,border-color .15s linear,color .15s linear}.fb-chip:hover{border-color:var(--brand)}.fb-chip.selected{background:var(--brand);border-color:var(--brand);color:#fff}.fb-textarea{width:100%;resize:vertical;padding:8px 10px;border-radius:10px;border:1px solid var(--glass-hairline);background:var(--glass-bg, rgba(255, 255, 255, .6));font-size:.82rem;line-height:1.45;font-family:inherit;color:inherit;box-sizing:border-box;transition:border-color .15s linear,box-shadow .15s linear}.fb-textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.fb-followup-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.fb-kbd-hint{margin-right:auto;font-size:.7rem;color:var(--text-faint)}.fb-skip{padding:6px 14px;border-radius:999px;border:1px solid var(--glass-hairline);background:transparent;color:var(--text-secondary);font-size:.78rem;transition:background-color .15s linear}.fb-skip:hover{background:var(--chip-bg-hover)}.fb-send{padding:6px 18px;border-radius:999px;border:none;cursor:pointer;background:var(--brand);color:#fff;font-size:.78rem;font-weight:600;transition:filter .15s linear}.fb-send:hover:not(:disabled){filter:brightness(1.1)}.fb-send:disabled{opacity:.6;cursor:default}@media (hover: none){.fb-kbd-hint{display:none}}@media (max-width: 640px){.feedback-bar-wrap{align-items:stretch;margin-left:0}.feedback-followup{width:100%}}.sfp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2100;padding:20px;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));animation:sfp-overlay-in .16s linear}@keyframes sfp-overlay-in{0%{opacity:0}to{opacity:1}}.sfp-content{width:min(1180px,100%);height:min(820px,94vh);height:min(820px,94dvh);max-height:100%;display:flex;flex-direction:column;animation:sfp-content-in .18s ease-out;border-radius:16px;background:var(--glass-bg-strong, rgba(255, 255, 255, .94));border:1px solid var(--glass-border, rgba(255, 255, 255, .4));box-shadow:var(--glass-shadow, 0 16px 48px rgba(0, 0, 0, .25));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden}@keyframes sfp-content-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sfp-header{padding:12px 18px 10px;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));display:flex;flex-direction:column;gap:6px;flex-shrink:0}.sfp-header-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sfp-header h3{margin:0;font-size:.95rem}.sfp-header-top .sfp-meta-badges{margin-left:auto}.sfp-header-top .sfp-close{margin-left:4px}.sfp-badge-existing{color:var(--brand, #038B8F);border-color:color-mix(in srgb,var(--brand, #038B8F) 35%,transparent);background:var(--brand-tint, rgba(3, 139, 143, .08))}.sfp-close{background:none;border:none;cursor:pointer;color:inherit;opacity:.65;display:inline-flex;padding:4px}.sfp-close:hover{opacity:1}.sfp-loading,.sfp-dim{opacity:.65;font-size:.85rem}.sfp-loading{display:inline-flex;align-items:center;gap:8px}.sfp-spinner{width:12px;height:12px;border-radius:50%;border:2px solid var(--glass-hairline, rgba(0, 0, 0, .12));border-top-color:var(--brand, #038B8F);animation:sfp-spin .8s linear infinite}@keyframes sfp-spin{to{transform:rotate(360deg)}}.sfp-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sfp-main>.sfp-form-pane:only-child{grid-column:1 / -1}.sfp-answer-pane{min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));background:var(--glass-bg, rgba(255, 255, 255, .4))}.sfp-form-pane{min-height:0;display:flex;flex-direction:column}.sfp-pane-label{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint, #8ba0a3)}.sfp-question{padding:12px 18px;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .06));display:flex;flex-direction:column;gap:6px;flex-shrink:0;max-height:30%;overflow-y:auto}.sfp-question-text{font-size:.88rem;font-weight:600;line-height:1.45;white-space:pre-wrap;word-break:break-word}.sfp-rewritten{font-size:.74rem;color:var(--text-secondary, #52666a);font-style:italic}.sfp-answer-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 18px 4px;border:none;background:none;color:inherit;cursor:default;flex-shrink:0}.sfp-answer-toggle .sfp-chevron{display:none}.sfp-answer-scroll{flex:1;min-height:0;overflow-y:auto;padding:4px 18px 18px}.sfp-answer-md{font-size:.86rem;line-height:1.6;color:var(--text-primary, #17282a);word-wrap:break-word}.sfp-answer-md h1,.sfp-answer-md h2,.sfp-answer-md h3,.sfp-answer-md h4,.sfp-answer-md h5,.sfp-answer-md h6{font-size:.95rem;margin:14px 0 6px;color:var(--text-primary, #17282a)}.sfp-answer-md ul{margin:6px 0 6px 20px}.sfp-answer-md li{margin:3px 0}.sfp-answer-md code{font-family:var(--font-mono, monospace);font-size:.85em;background:var(--code-bg, rgba(3, 139, 143, .08));color:var(--code-text, #026d71);padding:1px 5px;border-radius:5px}.sfp-answer-md pre{background:var(--code-bg, rgba(3, 139, 143, .08));padding:10px;border-radius:8px;overflow-x:auto}.sfp-answer-md pre code{background:none;padding:0}.sfp-answer-md .table-wrap{overflow-x:auto;margin:10px 0}.sfp-answer-md table{width:100%;border-collapse:collapse;font-size:.92em}.sfp-answer-md th,.sfp-answer-md td{padding:6px 10px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .1));text-align:left;vertical-align:top}.sfp-answer-md th{background:color-mix(in srgb,var(--brand, #038B8F) 12%,transparent);font-weight:600}.sfp-answer-md img{max-width:100%;border-radius:8px}.sfp-answer-md .citation-link{color:var(--brand, #038B8F);font-weight:600;font-size:.85em;text-decoration:none;cursor:pointer}.sfp-answer-md .citation-link:hover{text-decoration:underline}.sfp-warning{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;background:rgba(230,126,34,.12);color:#b9640f;font-size:.82rem}.sfp-tabs{display:flex;gap:4px;padding:8px 18px 0;overflow-x:auto;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));flex-shrink:0}.sfp-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-bottom:2px solid transparent;background:none;color:inherit;opacity:.6;cursor:pointer;font-size:.8rem;font-weight:600;border-radius:8px 8px 0 0;white-space:nowrap;transition:opacity .15s linear,background-color .15s linear,color .15s linear,border-color .15s linear}.sfp-tab:hover{opacity:.9;background:var(--glass-bg, rgba(255, 255, 255, .5))}.sfp-tab.active{opacity:1;color:var(--brand, #038B8F);border-bottom-color:var(--brand, #038B8F)}.sfp-tab-dot{width:6px;height:6px;border-radius:50%;background:var(--brand, #038B8F);display:inline-block}.sfp-body{flex:1;overflow-y:auto;padding:14px 18px}.sfp-tab-panel{display:flex;flex-direction:column;gap:16px;animation:sfp-fade .14s linear}@keyframes sfp-fade{0%{opacity:0}to{opacity:1}}.sfp-field-block{display:flex;flex-direction:column;gap:6px}.sfp-field-row{display:flex;gap:24px;flex-wrap:wrap}.sfp-label{font-size:.78rem;font-weight:700}.sfp-hint{font-size:.72rem;opacity:.65}.sfp-hint-action{opacity:1;color:var(--brand, #038B8F);background:color-mix(in srgb,var(--brand, #038B8F) 8%,transparent);padding:6px 10px;border-radius:8px}.sfp-select{padding:8px 10px;border-radius:8px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .12));background:var(--glass-bg-strong, rgba(255, 255, 255, .9));font-size:.82rem;font-family:inherit;color:inherit;max-width:420px}.sfp-select:focus{outline:none;border-color:var(--brand, #038B8F)}.sfp-inline-chips{display:flex;gap:6px;flex-wrap:wrap}.sfp-chip{padding:4px 12px;border-radius:999px;font-size:.74rem;cursor:pointer;background:var(--glass-bg-strong, rgba(255, 255, 255, .85));border:1px solid var(--glass-hairline, rgba(0, 0, 0, .1));color:inherit;transition:background-color .15s linear,border-color .15s linear,color .15s linear}.sfp-chip:hover{border-color:var(--brand, #038B8F)}.sfp-chip.selected{background:var(--brand, #038B8F);border-color:var(--brand, #038B8F);color:#fff}.sfp-prio-critical.selected{background:#c0392b;border-color:#c0392b}.sfp-prio-high.selected{background:#b9640f;border-color:#b9640f}.sfp-prio-medium.selected{background:#927608;border-color:#927608}.sfp-prio-low.selected{background:var(--brand, #038B8F);border-color:var(--brand, #038B8F)}.sfp-stars{display:flex;gap:4px}.sfp-star{background:none;border:none;cursor:pointer;color:#80808073;padding:2px;display:inline-flex;transition:color .12s linear}.sfp-star:hover{color:color-mix(in srgb,var(--brand, #038B8F) 60%,transparent)}.sfp-star.filled{color:var(--brand, #038B8F)}.sfp-chunks{display:flex;flex-direction:column;gap:8px}.sfp-chunk{padding:10px 12px;border-radius:10px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));background:var(--glass-bg, rgba(255, 255, 255, .55));display:flex;flex-direction:column;gap:8px;transition:border-color .15s linear}.sfp-chunk.judged{border-color:color-mix(in srgb,var(--brand, #038B8F) 45%,transparent)}.sfp-chunk-main{display:flex;flex-direction:column;gap:4px}.sfp-chunk-title{display:flex;align-items:baseline;gap:8px;min-width:0}.sfp-chunk-rank{flex-shrink:0;font-size:.68rem;font-weight:700;color:var(--brand, #038B8F);background:color-mix(in srgb,var(--brand, #038B8F) 12%,transparent);border-radius:6px;padding:1px 6px}.sfp-chunk-doc{font-size:.8rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sfp-chunk-sub{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sfp-chunk-score{font-size:.68rem;opacity:.55}.sfp-chunk-link{display:inline-flex;align-items:center;gap:5px;min-width:0;color:var(--brand, #038B8F);text-decoration:none}.sfp-chunk-link svg{flex-shrink:0;opacity:.7}.sfp-chunk-link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sfp-chunk-link:hover{text-decoration:underline}.sfp-chunk-link:hover svg{opacity:1}.sfp-chunk-snippet{font-size:.74rem;opacity:.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}.sfp-chunk-snippet.expanded{display:block;-webkit-line-clamp:unset;opacity:.85;white-space:pre-wrap}.sfp-chunk-actions{display:flex;gap:0}.sfp-seg{flex:0 0 auto;padding:4px 12px;font-size:.72rem;cursor:pointer;background:var(--glass-bg-strong, rgba(255, 255, 255, .85));border:1px solid var(--glass-hairline, rgba(0, 0, 0, .1));color:inherit;transition:background-color .15s linear,border-color .15s linear,color .15s linear}.sfp-seg:first-child{border-radius:999px 0 0 999px}.sfp-seg:last-child{border-radius:0 999px 999px 0}.sfp-seg+.sfp-seg{border-left:none}.sfp-seg:hover{background:var(--glass-bg, rgba(255, 255, 255, .65))}.sfp-seg-relevant.selected{background:var(--brand, #038B8F);border-color:var(--brand, #038B8F);color:#fff}.sfp-seg-partial.selected{background:#b9640f;border-color:#b9640f;color:#fff}.sfp-seg-irrelevant.selected{background:#c0392b;border-color:#c0392b;color:#fff}.sfp-missing-card{padding:10px 12px;border-radius:10px;border:1px dashed var(--glass-hairline, rgba(0, 0, 0, .15));display:flex;flex-direction:column;gap:8px}.sfp-missing-doc{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;cursor:pointer}.sfp-missing-doc input{accent-color:var(--brand, #038B8F)}.sfp-missing-fields{display:flex;flex-direction:column;gap:6px}.sfp-input{padding:8px 10px;border-radius:8px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .1));background:var(--glass-bg-strong, rgba(255, 255, 255, .85));font-size:.8rem;font-family:inherit;color:inherit}.sfp-input:focus{outline:none;border-color:var(--brand, #038B8F)}.sfp-input-small{max-width:160px}.sfp-modules{display:flex;gap:6px;flex-wrap:wrap}.sfp-required{font-weight:400;font-size:.7rem;color:#b9640f}.sfp-textarea{width:100%;resize:vertical;padding:8px 10px;border-radius:8px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .1));background:var(--glass-bg-strong, rgba(255, 255, 255, .85));font-size:.8rem;font-family:inherit;color:inherit;box-sizing:border-box}.sfp-textarea:focus{outline:none;border-color:var(--brand, #038B8F)}.sfp-textarea-big{min-height:200px;font-family:var(--font-mono, monospace);font-size:.78rem;line-height:1.5}.sfp-link-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:2px 4px;border:none;background:none;color:var(--brand, #038B8F);font-size:.72rem;font-weight:600;cursor:pointer;border-radius:4px}.sfp-link-btn:hover{text-decoration:underline}.sfp-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 18px;border-top:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));flex-shrink:0}.sfp-footer-hint{margin-right:auto;font-size:.7rem;color:#b9640f;max-width:55%}.sfp-footer-muted{margin-right:auto;font-size:.7rem;color:var(--text-faint, #8ba0a3)}.sfp-draft-note{margin-right:auto;display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:#b45309}.dark-mode .sfp-draft-note{color:#fcd34d}.sfp-cancel{padding:7px 16px;border-radius:999px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .12));background:transparent;color:inherit;cursor:pointer;font-size:.8rem}.sfp-submit{padding:7px 20px;border-radius:999px;border:none;background:var(--brand, #038B8F);color:#fff;cursor:pointer;font-size:.8rem;font-weight:600}.sfp-submit:hover:not(:disabled){filter:brightness(1.1)}.sfp-submit:disabled{opacity:.55;cursor:default}@media (max-width: 900px){.sfp-overlay{padding:12px}.sfp-content{width:min(760px,100%);height:100%;max-height:100%}.sfp-main{display:flex;flex-direction:column}.sfp-answer-pane{flex-shrink:0;max-height:42%;border-right:none;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08))}.sfp-answer-pane.collapsed{max-height:none}.sfp-field-row{gap:16px}.sfp-select{max-width:100%}.sfp-answer-pane.collapsed .sfp-answer-scroll{display:none}.sfp-question{max-height:90px;padding:10px 18px}.sfp-answer-toggle{cursor:pointer;padding-bottom:8px}.sfp-answer-toggle .sfp-chevron{display:inline-block;transition:transform .15s linear}.sfp-answer-pane.collapsed .sfp-chevron{transform:rotate(-90deg)}.sfp-form-pane{flex:1}}@media (max-width: 640px){.sfp-overlay{padding:0}.sfp-content{width:100%;height:100%;border-radius:0}.sfp-footer-hint,.sfp-footer-muted{display:none}.sfp-header-top .sfp-meta-badges{margin-left:0;order:3;width:100%}.sfp-header-top .sfp-close{margin-left:auto}.sfp-header,.sfp-question,.sfp-body,.sfp-footer,.sfp-answer-toggle,.sfp-answer-scroll{padding-left:14px;padding-right:14px}.sfp-tabs{padding-left:10px;padding-right:10px}.sfp-tab{padding:8px 10px}.sfp-chunk-actions{flex-wrap:wrap}.sfp-footer{padding-bottom:max(10px,env(safe-area-inset-bottom))}}@media (max-height: 640px) and (min-width: 901px){.sfp-question{max-height:22%}}@media (prefers-reduced-motion: reduce){.sfp-overlay,.sfp-content,.sfp-tab-panel{animation:none}}.trk{margin-top:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--glass-hairline);border-left:3px solid #7c3aed;background:var(--glass-bg);display:flex;flex-direction:column;gap:8px}.trk-waiting{border-left-color:#d97706}.trk-done{border-left-color:var(--brand)}.trk-failed{border-left-color:#c0392b}.trk-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.76rem}.trk-kind{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:#7c3aed}.dark-mode .trk-kind{color:#c4b5fd}.trk-phase{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-weight:700;font-size:.7rem;background:rgba(124,58,237,.09);color:#7c3aed}.trk-phase.waiting{background:rgba(217,119,6,.12);color:#b45309}.trk-phase.done{background:var(--brand-tint);color:var(--brand)}.trk-phase.failed{background:rgba(192,57,43,.1);color:#c0392b}.dark-mode .trk-phase{color:#c4b5fd}.dark-mode .trk-phase.waiting{color:#fcd34d}.trk-time{display:inline-flex;align-items:center;gap:4px;color:var(--text-faint);font-variant-numeric:tabular-nums}.trk-icon{margin-left:auto;display:inline-flex;border:none;background:none;color:var(--text-faint);padding:4px;border-radius:6px}.trk-icon:hover:not(:disabled){color:var(--brand);background:var(--chip-bg-hover)}.trk-label{font-size:.8rem;font-weight:600;color:var(--text-secondary)}.trk-hint{margin:0;font-size:.78rem;color:var(--text-secondary);line-height:1.45}.trk-hint.strong{color:#b45309;font-weight:600}.dark-mode .trk-hint.strong{color:#fcd34d}.trk-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.trk-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--brand);font-size:.78rem;font-weight:600}.trk-btn:hover{background:var(--chip-bg-hover)}.trk-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.trk-cites summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:.74rem;font-weight:600;color:var(--text-secondary);list-style:none}.trk-cites summary::-webkit-details-marker{display:none}.trk-cites ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.trk-cites li{display:flex;flex-direction:column;gap:2px;font-size:.74rem;padding:5px 8px;border-radius:8px;background:var(--chip-bg)}.trk-cites code{font-family:var(--font-mono);font-size:.68rem;color:var(--code-text);word-break:break-all}.trk-spin{animation:trk-spin .9s linear infinite}@keyframes trk-spin{to{transform:rotate(360deg)}}.vfa{display:flex;flex-direction:column;gap:8px}.vfa-esito{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:5px 12px;border-radius:999px;font-size:.78rem;font-weight:700}.vfa-esito.confermata{color:var(--brand);background:var(--brand-tint)}.vfa-esito.parziale{color:#b45309;background:rgba(217,119,6,.12)}.vfa-esito.errata{color:#c0392b;background:rgba(192,57,43,.1)}.dark-mode .vfa-esito.parziale{color:#fcd34d}.vfa-row{display:flex;flex-wrap:wrap;gap:6px}.vfa-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--text-primary);font-size:.78rem;font-weight:600;transition:background-color .15s linear,filter .15s linear}.vfa-btn:hover:not(:disabled){background:var(--chip-bg-hover)}.vfa-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.vfa-btn.primary:hover:not(:disabled){filter:brightness(1.1);background:var(--brand)}.vfa-btn.on{border-color:var(--brand);color:var(--brand)}.vfa-btn:disabled{opacity:.6;cursor:default}.vfa-doc{padding:10px 12px;border-radius:10px;border:1px dashed var(--glass-hairline);display:flex;flex-direction:column;gap:8px}.vfa-doc p{margin:0;font-size:.78rem;line-height:1.45;color:var(--text-secondary)}.vfa-doc-row{display:flex;gap:6px;flex-wrap:wrap}.vfa-doc-row select{flex:1;min-width:0;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--glass-hairline);background:var(--glass-bg-strong);color:var(--text-primary);font:inherit;font-size:.78rem}.dark-mode .vfa-doc-row select{color-scheme:dark}.vfa-doc-target{margin:6px 0 0;font-size:12px}.ccp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2100;padding:20px;animation:ccp-fade .16s linear}@keyframes ccp-fade{0%{opacity:0}to{opacity:1}}.ccp-content{width:min(720px,100%);max-height:min(820px,94vh);max-height:min(820px,94dvh);display:flex;flex-direction:column;border-radius:16px;background:var(--glass-bg-strong, rgba(255, 255, 255, .94));border:1px solid var(--glass-border, rgba(255, 255, 255, .4));box-shadow:var(--glass-shadow, 0 16px 48px rgba(0, 0, 0, .25));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--text-primary);overflow:hidden;animation:ccp-in .18s ease-out}@keyframes ccp-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ccp-header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--glass-hairline);flex-shrink:0}.ccp-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;color:#7c3aed;background:rgba(124,58,237,.1);flex-shrink:0}.dark-mode .ccp-icon{color:#c4b5fd;background:rgba(196,181,253,.12)}.ccp-title{display:flex;flex-direction:column;min-width:0}.ccp-title h3{margin:0;font-size:.95rem}.ccp-title span{font-size:.72rem;color:var(--text-faint)}.ccp-close{margin-left:auto;background:none;border:none;color:inherit;opacity:.65;display:inline-flex;padding:4px;border-radius:6px}.ccp-close:hover{opacity:1;background:var(--chip-bg-hover)}.ccp-body{flex:1;min-height:0;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:12px}.ccp-label{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.ccp-question p{margin:4px 0 0;font-size:.88rem;font-weight:600;line-height:1.45;white-space:pre-wrap}.ccp-dim{font-size:.74rem;color:var(--text-faint);margin:0}.ccp-loading{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;color:var(--text-secondary)}.ccp-spin{animation:ccp-spin .9s linear infinite}@keyframes ccp-spin{to{transform:rotate(360deg)}}.ccp-warning,.ccp-force{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:10px;background:rgba(217,119,6,.09);color:#b45309;font-size:.8rem;line-height:1.45}.ccp-warning svg,.ccp-force svg{flex-shrink:0;margin-top:2px}.ccp-force p{margin:0 0 4px}.dark-mode .ccp-warning,.dark-mode .ccp-force{color:#fcd34d}.ccp-cands{display:flex;flex-direction:column;gap:6px}.ccp-cand{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--glass-hairline);background:var(--glass-bg);cursor:pointer;transition:border-color .15s linear,background-color .15s linear}.ccp-cand:hover{border-color:color-mix(in srgb,var(--brand) 40%,transparent)}.ccp-cand.selected{border-color:var(--brand);background:var(--brand-tint)}.ccp-cand input{accent-color:var(--brand);flex-shrink:0}.ccp-cand-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.ccp-cand-title{font-size:.82rem;font-weight:600;line-height:1.35}.ccp-cand-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ccp-cand-meta code{font-family:var(--font-mono);font-size:.68rem;color:var(--text-faint)}.ccp-chip{font-size:.64rem;padding:1px 7px;border-radius:999px;color:var(--brand);background:var(--brand-tint)}.ccp-speed{display:inline-flex;align-items:center;gap:3px;font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;flex-shrink:0}.ccp-speed.fast{color:var(--brand);background:var(--brand-tint)}.ccp-speed.slow{color:#b45309;background:rgba(217,119,6,.1)}.dark-mode .ccp-speed.slow{color:#fcd34d}.ccp-wait{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:28px 10px}.ccp-wait-icon{color:#7c3aed;margin-bottom:6px}.dark-mode .ccp-wait-icon{color:#c4b5fd}.ccp-wait-title{font-size:.92rem;font-weight:700}.ccp-wait-sub{font-size:.8rem;color:var(--text-secondary)}.ccp-wait-time{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;color:var(--text-faint);font-variant-numeric:tabular-nums;margin-bottom:8px}.ccp-result{display:flex;flex-direction:column;gap:12px}.ccp-result-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ccp-result-func{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-right:auto}.ccp-cert{font-size:.68rem;font-weight:700;padding:2px 9px;border-radius:999px;border:1px solid var(--glass-hairline)}.ccp-cert.alta{color:var(--brand);background:var(--brand-tint);border-color:color-mix(in srgb,var(--brand) 35%,transparent)}.ccp-cert.media{color:#b45309;background:rgba(217,119,6,.1);border-color:#d977064d}.ccp-cert.bassa{color:#c0392b;background:rgba(192,57,43,.08);border-color:#c0392b4d}.ccp-answer{font-size:.88rem;line-height:1.6;padding:12px 14px;border-radius:12px;border:1px solid var(--glass-hairline);background:var(--glass-bg);word-wrap:break-word}.ccp-answer ul{margin:6px 0 6px 20px}.ccp-answer li{margin:3px 0}.ccp-answer .table-wrap{overflow-x:auto;margin:8px 0}.ccp-answer table{border-collapse:collapse;font-size:.92em}.ccp-answer th,.ccp-answer td{border:1px solid var(--glass-hairline);padding:5px 9px;text-align:left}.ccp-unverified{padding:10px 12px;border-radius:10px;border:1px dashed rgba(217,119,6,.45);background:rgba(217,119,6,.05)}.ccp-unverified .ccp-label{color:#b45309}.dark-mode .ccp-unverified .ccp-label{color:#fcd34d}.ccp-unverified ul{margin:6px 0 0 18px;font-size:.8rem;line-height:1.5}.ccp-cites summary{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:.76rem;font-weight:600;color:var(--text-secondary);list-style:none;-webkit-user-select:none;user-select:none}.ccp-cites summary::-webkit-details-marker{display:none}.ccp-cites summary svg{transition:transform .15s linear;transform:rotate(-90deg)}.ccp-cites[open] summary svg{transform:none}.ccp-cites ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.ccp-cites li{display:flex;flex-direction:column;gap:2px;font-size:.76rem;padding:6px 8px;border-radius:8px;background:var(--chip-bg)}.ccp-cites code,.ccp-foot-meta code{font-family:var(--font-mono);font-size:.7rem;color:var(--code-text);word-break:break-all}.ccp-raw{white-space:pre-wrap;font-size:.72rem;max-height:260px;overflow:auto;margin-top:8px}.ccp-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 18px;padding-bottom:max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--glass-hairline);flex-shrink:0}.ccp-footer-note{margin-right:auto}.ccp-ok{display:inline-flex;align-items:center;gap:5px;margin-right:auto;font-size:.78rem;font-weight:600;color:var(--brand)}.ccp-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid var(--glass-hairline);background:transparent;color:inherit;transition:filter .15s linear,background-color .15s linear}.ccp-btn.ghost:hover{background:var(--chip-bg-hover)}.ccp-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.ccp-btn.primary:hover:not(:disabled){filter:brightness(1.1)}.ccp-btn:disabled{opacity:.55;cursor:default}@media (max-width: 640px){.ccp-overlay{padding:0}.ccp-content{width:100%;height:100%;max-height:100%;border-radius:0}.ccp-footer-note{display:none}.ccp-header,.ccp-body,.ccp-footer{padding-left:14px;padding-right:14px}}@media (prefers-reduced-motion: reduce){.ccp-overlay,.ccp-content{animation:none}}.ccp-cand-auto .ccp-cand-title{display:inline-flex;align-items:center;gap:6px;color:#7c3aed}.dark-mode .ccp-cand-auto .ccp-cand-title{color:#c4b5fd}.ccp-cand-auto.selected{border-color:#7c3aed;background:rgba(124,58,237,.07)}.ccp-sep{margin:6px 0 2px;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.ccp-tracked{display:flex;align-items:flex-start;gap:8px;max-width:460px;padding:10px 12px;border-radius:10px;text-align:left;font-size:.8rem;line-height:1.45;color:var(--text-secondary);background:var(--brand-tint);border:1px solid color-mix(in srgb,var(--brand) 30%,transparent)}.ccp-tracked svg{flex-shrink:0;margin-top:2px;color:var(--brand)}.ccp-then-doc{display:flex;gap:8px;align-items:flex-start;margin-top:12px;font-size:13px;line-height:1.4;cursor:pointer}.ccp-then-doc input{margin-top:3px}:root{--viz-main: #00949a;--viz-up: #00949a;--viz-down: #d0573f}body.dark-mode{--viz-main: #00a3a8;--viz-up: #00a3a8;--viz-down: #d9634c}.fbd{flex:1;min-height:0;display:flex;flex-direction:column}.fbd-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));flex-shrink:0}.fbd-presets{display:inline-flex;padding:2px;border-radius:10px;background:var(--chip-bg);border:1px solid var(--glass-hairline)}.fbd-presets button{border:none;background:none;color:var(--text-secondary);font-size:.76rem;font-weight:600;padding:5px 11px;border-radius:8px;transition:background-color .15s linear,color .15s linear}.fbd-presets button:hover{color:var(--text-primary)}.fbd-presets button.active{background:var(--glass-bg-strong);color:var(--brand);box-shadow:0 1px 3px #00000014}.fbd-custom{display:inline-flex;align-items:center;gap:6px;color:var(--text-faint)}.fbd-range{margin-left:auto;font-size:.74rem;color:var(--text-faint)}.fbd-body{flex:1;min-height:0;overflow-y:auto;padding:14px 18px 22px}.fbd-content{display:flex;flex-direction:column;gap:14px;transition:opacity .15s linear}.fbd-content.is-loading{opacity:.55}.fbd-error{padding:10px 12px;border-radius:10px;background:rgba(192,57,43,.08);color:var(--viz-down);font-size:.82rem;margin-bottom:12px}.fbd-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fbd-kpi{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;background:var(--glass-bg, rgba(255, 255, 255, .55));border:1px solid var(--glass-hairline);min-width:0}.fbd-kpi.fbd-skel{height:82px}.fbd-kpi-label{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;color:var(--text-secondary)}.fbd-kpi-label svg{color:var(--text-faint)}.fbd-kpi-value{font-size:1.5rem;font-weight:700;line-height:1.15;color:var(--text-primary);font-variant-numeric:tabular-nums}.fbd-kpi-sub{font-size:.7rem;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fbd-card{padding:12px 14px 14px;border-radius:12px;background:var(--glass-bg, rgba(255, 255, 255, .55));border:1px solid var(--glass-hairline);min-width:0}.fbd-card header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.fbd-card h4{margin:0;font-size:.82rem;font-weight:700;color:var(--text-primary)}.fbd-muted{font-weight:400;color:var(--text-faint)}.fbd-footnote{font-size:.68rem;color:var(--text-faint)}.fbd-card header .fbd-footnote{margin-left:auto}.fbd-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fbd-view-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--text-secondary);font-size:.72rem;padding:3px 9px;border-radius:999px}.fbd-view-toggle:hover{color:var(--brand);background:var(--chip-bg-hover)}.fbd-legend{margin-left:auto;display:flex;gap:12px;font-size:.72rem;color:var(--text-secondary)}.fbd-legend span{display:inline-flex;align-items:center;gap:5px}.fbd-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.fbd-empty-small{font-size:.78rem;color:var(--text-faint);padding:18px 0;text-align:center}.fbd-chart{position:relative;display:flex;gap:6px}.fbd-yaxis{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:.62rem;color:var(--text-faint);font-variant-numeric:tabular-nums;min-width:18px}.fbd-yaxis span{line-height:1;transform:translateY(-50%)}.fbd-yaxis span:last-child{transform:translateY(0)}.fbd-plot{position:relative;flex:1;min-width:0}.fbd-grid{position:absolute;inset:0 0 auto 0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.fbd-grid span{border-top:1px dashed var(--glass-hairline)}.fbd-grid span:last-child{border-top:1px solid color-mix(in srgb,var(--text-faint) 45%,transparent)}.fbd-cols{position:relative;display:flex;align-items:flex-end;gap:2px}.fbd-col{flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;min-width:0;border-radius:4px;cursor:default}.fbd-col:hover{background:color-mix(in srgb,var(--text-faint) 10%,transparent)}.fbd-stack{width:min(100%,18px);display:flex;flex-direction:column-reverse;gap:2px;min-height:0}.fbd-seg{min-height:2px;flex-basis:0}.fbd-stack .fbd-seg:last-child{border-radius:4px 4px 0 0}.fbd-xaxis{display:flex;gap:2px;margin-top:4px}.fbd-xaxis span{flex:1;min-width:0;font-size:.6rem;color:var(--text-faint);text-align:center;white-space:nowrap;overflow:visible}.fbd-when{display:grid;grid-template-columns:7fr 24fr;gap:16px}.fbd-tip{position:absolute;z-index:5;transform:translate(-50%,calc(-100% - 12px));pointer-events:none;min-width:120px;padding:7px 10px;border-radius:8px;background:var(--glass-bg-strong, rgba(255, 255, 255, .96));border:1px solid var(--glass-hairline);box-shadow:0 6px 20px #00000024;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.72rem;white-space:nowrap}.fbd-tip-title{font-weight:700;margin-bottom:3px;text-transform:capitalize}.fbd-tip-row{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.fbd-tip-row strong{margin-left:auto;padding-left:10px;color:var(--text-primary);font-variant-numeric:tabular-nums}.fbd-swatch{width:8px;height:8px;border-radius:2px}.fbd-hbars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.fbd-hbars li{display:grid;grid-template-columns:minmax(90px,40%) 1fr auto;align-items:center;gap:8px;font-size:.76rem}.fbd-hbar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.fbd-hbar-track{height:8px;border-radius:4px;background:color-mix(in srgb,var(--text-faint) 14%,transparent);overflow:hidden}.fbd-hbar-fill{display:block;height:100%;border-radius:0 4px 4px 0}.fbd-hbar-val{font-variant-numeric:tabular-nums;font-weight:600;min-width:24px;text-align:right}.fbd-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.fbd-daily-table{max-height:260px;overflow-y:auto}.fbd-table-wrap table{width:100%;border-collapse:collapse;font-size:.76rem}.fbd-table-wrap th,.fbd-table-wrap td{padding:7px 8px;border-bottom:1px solid var(--glass-hairline);text-align:left;white-space:nowrap}.fbd-table-wrap th{position:sticky;top:0;background:var(--glass-bg-strong, rgba(255, 255, 255, .95));font-size:.68rem;font-weight:700;color:var(--text-secondary)}.fbd-table-wrap .num{text-align:right;font-variant-numeric:tabular-nums}.fbd-table-wrap td.warn{color:var(--viz-down);font-weight:600}.fbd-table-wrap tbody tr:hover td{background:var(--brand-tint)}.fbd-users th button{display:inline-flex;align-items:center;gap:3px;border:none;background:none;padding:0;font:inherit;color:inherit}.fbd-users th.num button{flex-direction:row-reverse}.fbd-users th svg{opacity:.35}.fbd-users th svg.on{opacity:1;color:var(--brand)}.fbd-user-link{border:none;background:none;padding:0;font:inherit;font-weight:600;color:var(--brand);max-width:180px;overflow:hidden;text-overflow:ellipsis}.fbd-user-link:hover{text-decoration:underline}.fbd-inline-bar{display:inline-block;width:40px;height:6px;margin-right:6px;vertical-align:middle;border-radius:3px;background:color-mix(in srgb,var(--text-faint) 14%,transparent);overflow:hidden}.fbd-inline-bar i{display:block;height:100%;background:var(--viz-main);border-radius:0 3px 3px 0}@media (max-width: 1000px){.fbd-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.fbd-grid-2,.fbd-when{grid-template-columns:minmax(0,1fr)}.fbd-range{display:none}}@media (max-width: 640px){.fbd-toolbar,.fbd-body{padding-left:12px;padding-right:12px}.fbd-kpi-value{font-size:1.25rem}.fbd-card header .fbd-footnote{margin-left:0}}.fbh-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fbh-fade .16s linear}@keyframes fbh-fade{0%{opacity:0}to{opacity:1}}.fbh-content{width:min(900px,100%);height:min(860px,94vh);height:min(860px,94dvh);max-height:100%;display:flex;flex-direction:column;border-radius:16px;background:var(--glass-bg-strong, rgba(255, 255, 255, .94));border:1px solid var(--glass-border, rgba(255, 255, 255, .4));box-shadow:var(--glass-shadow, 0 16px 48px rgba(0, 0, 0, .25));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--text-primary, #17282a);overflow:hidden;animation:fbh-in .18s ease-out}.fbh-content.wide{width:min(1240px,100%)}@keyframes fbh-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fbh-header{display:flex;align-items:center;gap:16px;padding:10px 14px 0 18px;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));flex-shrink:0}.fbh-header h3{margin:0 0 8px;font-size:.98rem}.fbh-tabs{display:flex;gap:2px}.fbh-tab{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:none;border-bottom:2px solid transparent;background:none;color:inherit;opacity:.6;font-size:.8rem;font-weight:600;border-radius:8px 8px 0 0;transition:opacity .15s linear,color .15s linear,border-color .15s linear,background-color .15s linear}.fbh-tab:hover{opacity:.9;background:var(--chip-bg-hover, rgba(255, 255, 255, .6))}.fbh-tab.active{opacity:1;color:var(--brand, #038B8F);border-bottom-color:var(--brand, #038B8F)}.fbh-close{margin:0 0 8px auto}.fbh-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-secondary, #52666a);transition:background-color .15s linear,color .15s linear,border-color .15s linear}.fbh-icon-btn:hover:not(:disabled){background:var(--chip-bg-hover);border-color:var(--glass-hairline);color:var(--brand, #038B8F)}.fbh-icon-btn.danger:hover:not(:disabled){color:#c0392b}.fbh-icon-btn:disabled{opacity:.4;cursor:default}.fbh-icon-btn.spinning svg{animation:fbh-spin .9s linear infinite}@keyframes fbh-spin{to{transform:rotate(360deg)}}.fbh-filters{padding:12px 18px 10px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));flex-shrink:0}.fbh-search{display:flex;align-items:center;gap:8px;padding:0 10px;height:36px;border-radius:10px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .12));background:var(--glass-bg, rgba(255, 255, 255, .6));color:var(--text-faint);transition:border-color .15s linear,box-shadow .15s linear}.fbh-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}.fbh-search input{flex:1;min-width:0;border:none;background:transparent;outline:none;font:inherit;font-size:.84rem;color:var(--text-primary)}.fbh-clear{display:inline-flex;border:none;background:var(--chip-bg-hover);color:inherit;border-radius:50%;padding:3px}.fbh-filter-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.fbh-filter-row select,.fbh-filter-row input,.fbd-custom input{height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .12));background:var(--glass-bg-strong, rgba(255, 255, 255, .85));color:var(--text-primary);font:inherit;font-size:.78rem}.fbh-filter-row select:focus,.fbh-filter-row input:focus{outline:none;border-color:var(--brand)}.fbh-user-input{width:130px}.fbh-date{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;color:var(--text-secondary)}.dark-mode .fbh-filter-row input[type=date],.dark-mode .fbd-custom input[type=date]{color-scheme:dark}.fbh-summary{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.76rem}.fbh-count{color:var(--text-secondary);margin-right:4px}.fbh-spacer{flex:1}.fbh-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--text-secondary)}.fbh-pill.up{color:var(--viz-up)}.fbh-pill.down{color:var(--viz-down)}.fbh-link{border:none;background:none;color:var(--brand, #038B8F);font-size:.76rem;font-weight:600;padding:2px 4px}.fbh-link:hover{text-decoration:underline}.fbh-body{flex:1;min-height:0;overflow-y:auto;padding:14px 18px 18px}.fbh-list{display:flex;flex-direction:column;gap:10px}.fbh-card{padding:10px 14px 12px;border-radius:12px;border:1px solid var(--glass-hairline, rgba(0, 0, 0, .08));border-left:3px solid var(--glass-hairline);background:var(--glass-bg, rgba(255, 255, 255, .55));display:flex;flex-direction:column;gap:6px;transition:border-color .15s linear,box-shadow .15s linear}.fbh-card:hover{box-shadow:0 2px 10px #0a282d0f}.fbh-card.verdict-up{border-left-color:var(--viz-up)}.fbh-card.verdict-down{border-left-color:var(--viz-down)}.fbh-card-head{display:flex;align-items:center;gap:8px;font-size:.74rem;min-width:0}.fbh-verdict{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;color:var(--text-faint);background:var(--chip-bg);flex-shrink:0}.fbh-verdict.up{color:var(--viz-up);background:color-mix(in srgb,var(--viz-up) 12%,transparent)}.fbh-verdict.down{color:var(--viz-down);background:color-mix(in srgb,var(--viz-down) 12%,transparent)}.fbh-level{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 7px;border-radius:999px;border:1px solid var(--glass-hairline);color:var(--text-secondary)}.fbh-level.staff{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 35%,transparent);background:var(--brand-tint)}.fbh-user{border:none;background:none;padding:0;font:inherit;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fbh-user:hover{color:var(--brand);text-decoration:underline}.fbh-date-txt{color:var(--text-faint);white-space:nowrap}.fbh-actions{margin-left:auto;display:flex;gap:2px;flex-shrink:0}.fbh-question{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%;border:none;background:none;padding:0;text-align:left;font:inherit;font-size:.86rem;font-weight:600;line-height:1.4;color:var(--text-primary)}.fbh-question span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fbh-card.open .fbh-question span{display:block}.fbh-chevron{flex-shrink:0;margin-top:2px;color:var(--text-faint);transition:transform .15s linear}.fbh-card.open .fbh-chevron{transform:rotate(180deg)}.fbh-tags{display:flex;flex-wrap:wrap;gap:5px}.fbh-tags:empty{display:none}.fbh-tag{font-size:.68rem;padding:2px 8px;border-radius:999px;background:var(--chip-bg);border:1px solid var(--glass-hairline);color:var(--text-secondary);white-space:nowrap}.fbh-tag.stage{color:var(--viz-down);border-color:color-mix(in srgb,var(--viz-down) 35%,transparent)}.fbh-tag.warn{color:#b45309;border-color:#d9770659}.fbh-tag.muted{color:var(--text-faint)}.fbh-tag.prio-critical{color:#fff;background:#c0392b;border-color:#c0392b}.fbh-tag.prio-high{color:#fff;background:#b9640f;border-color:#b9640f}.fbh-tag.prio-medium{color:#fff;background:#927608;border-color:#927608}.fbh-tag.prio-low{color:#fff;background:var(--brand);border-color:var(--brand)}.fbh-snippet{font-size:.78rem;color:var(--text-secondary);font-style:italic;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.fbh-details{display:flex;flex-direction:column;gap:8px;padding-top:6px;border-top:1px dashed var(--glass-hairline);animation:fbh-fade .14s linear}.fbh-block{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border-radius:8px;background:var(--glass-bg-strong, rgba(255, 255, 255, .7));border:1px solid var(--glass-hairline)}.fbh-block.good{border-color:color-mix(in srgb,var(--viz-up) 40%,transparent)}.fbh-block-label{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.fbh-text{font-size:.8rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.fbh-md{font-size:.8rem;line-height:1.55;word-break:break-word}.fbh-md ul{margin:4px 0 4px 18px}.fbh-md h1,.fbh-md h2,.fbh-md h3,.fbh-md h4{font-size:.85rem;margin:8px 0 4px}.fbh-md code{font-family:var(--font-mono);font-size:.85em;background:var(--code-bg);color:var(--code-text);padding:1px 4px;border-radius:4px}.fbh-md .table-wrap{overflow-x:auto;margin:6px 0}.fbh-md table{border-collapse:collapse;font-size:.95em}.fbh-md th,.fbh-md td{border:1px solid var(--glass-hairline);padding:4px 8px;text-align:left}.fbh-md .citation-link{color:var(--brand);font-weight:600;pointer-events:none}.fbh-meta-line{font-size:.68rem;color:var(--text-faint)}.fbh-more{align-self:center;margin-top:4px;padding:7px 20px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--chip-bg);color:var(--brand);font-size:.78rem;font-weight:600}.fbh-more:hover:not(:disabled){background:var(--chip-bg-hover)}.fbh-empty{padding:40px 0;text-align:center;color:var(--text-secondary);font-size:.86rem;display:flex;flex-direction:column;align-items:center;gap:8px}.fbh-skeletons{display:flex;flex-direction:column;gap:10px}.fbh-skeleton,.fbd-skel{height:84px;border-radius:12px;background:linear-gradient(90deg,var(--chip-bg) 0%,var(--chip-bg-hover) 50%,var(--chip-bg) 100%);background-size:200% 100%;animation:fbh-shimmer 1.4s linear infinite}@keyframes fbh-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width: 900px){.fbh-overlay{padding:12px}.fbh-content,.fbh-content.wide{width:100%;height:100%}}@media (max-width: 640px){.fbh-overlay{padding:0}.fbh-content,.fbh-content.wide{border-radius:0}.fbh-header{padding-left:12px;gap:8px}.fbh-header h3{display:none}.fbh-filters,.fbh-body{padding-left:12px;padding-right:12px}.fbh-filter-row select,.fbh-user-input{flex:1 1 calc(50% - 6px);width:auto}.fbh-date{flex:1 1 calc(50% - 6px)}.fbh-date input{flex:1;min-width:0}.fbh-date-txt{display:none}}@media (prefers-reduced-motion: reduce){.fbh-overlay,.fbh-content,.fbh-details,.fbh-skeleton,.fbd-skel{animation:none}}.app-shell{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh;width:100%}.app-shell>.header{flex-shrink:0}.app-body{display:flex;flex-direction:row;flex:1;min-height:0}.app-body>.container{flex:1;min-width:0;height:auto}.sidebar{display:flex;flex-direction:column;width:272px;flex-shrink:0;height:auto;background:var(--glass-bg);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);border-right:1px solid var(--glass-hairline);transition:width .3s var(--ease-out);overflow:hidden;z-index:30}.sidebar.collapsed{width:58px}.sidebar-top{display:flex;align-items:center;gap:8px;padding:14px 12px 10px}.sidebar-new-chat{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:0;padding:10px 14px;border:none;border-radius:var(--radius-sm);background:var(--bubble-user);color:#fff;font-size:.86rem;font-weight:600;white-space:nowrap;box-shadow:0 4px 14px var(--brand-glow);transition:filter .2s ease,transform .15s var(--ease-spring),box-shadow .2s ease}.sidebar-new-chat:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 6px 18px var(--brand-glow)}.sidebar-new-chat:active:not(:disabled){transform:translateY(0)}.sidebar-new-chat:disabled{opacity:.5;cursor:not-allowed}.sidebar-new-chat svg{color:#fff;flex-shrink:0}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;padding:8px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);transition:background .2s ease,color .2s ease;flex-shrink:0}.sidebar-collapse-btn:hover{background:var(--chip-bg-hover);color:var(--text-primary)}.sidebar.collapsed .sidebar-top{flex-direction:column;padding:14px 8px 10px}.sidebar.collapsed .sidebar-new-chat{flex:0 0 auto;padding:9px;justify-content:center}.sidebar.collapsed .sidebar-new-chat-label,.sidebar.collapsed .sidebar-body,.sidebar.collapsed .sidebar-offline span{display:none}.sidebar-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:10px 10px 16px}.sidebar-group{margin-bottom:14px}.sidebar-group-label{padding:4px 10px 6px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.sidebar-item{position:relative;display:flex;align-items:center;gap:6px;padding:8px 10px;margin-bottom:2px;border-radius:var(--radius-sm);color:var(--text-primary);font-size:.84rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.sidebar-item:hover{background:var(--chip-bg-hover)}.sidebar-item.active{background:var(--brand-tint);box-shadow:inset 2px 0 0 var(--brand)}.sidebar-item.disabled{opacity:.55;cursor:default;pointer-events:auto}.sidebar-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-item-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.sidebar-item:hover .sidebar-item-actions,.sidebar-item-actions.visible{opacity:1}.sidebar-icon-btn{display:flex;align-items:center;justify-content:center;padding:5px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);transition:background .15s ease,color .15s ease}.sidebar-icon-btn:hover:not(:disabled){background:var(--chip-bg);color:var(--text-primary)}.sidebar-icon-btn.danger:hover:not(:disabled){color:#d64545}.sidebar-icon-btn:disabled{opacity:.4;cursor:not-allowed}.sidebar-rename-input{flex:1;min-width:0;padding:4px 6px;border:1px solid var(--brand-glow);border-radius:6px;background:var(--glass-bg-strong);color:var(--text-primary);font-family:var(--font-ui);font-size:.84rem;outline:none}.sidebar-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 12px;color:var(--text-faint);font-size:.8rem}.sidebar-footer{display:flex;align-items:center;gap:6px;padding:10px;border-top:1px solid var(--glass-hairline)}.sidebar.collapsed .sidebar-footer{display:none}.sidebar-footer-btn{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-width:0;padding:7px 8px;border:1px solid var(--glass-hairline);border-radius:var(--radius-sm);background:var(--chip-bg);color:var(--text-secondary);font-size:.74rem;font-weight:600;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}.sidebar-footer-btn:hover:not(:disabled){background:var(--chip-bg-hover);color:var(--text-primary)}.sidebar-footer-btn.danger:hover:not(:disabled){color:#d64545;border-color:#d6454559}.sidebar-footer-btn:disabled{opacity:.5;cursor:not-allowed}.sidebar-footer-confirm{display:flex;align-items:center;justify-content:space-between;gap:6px;flex:1;min-width:0;font-size:.74rem;color:var(--text-primary)}.sidebar-footer-confirm-actions{display:flex;gap:2px;flex-shrink:0}.ai-disclaimer{text-align:center;font-size:.68rem;color:var(--text-faint);padding:6px 16px 8px;-webkit-user-select:none;user-select:none}.sidebar-offline{display:flex;align-items:center;gap:7px;margin:10px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--chip-bg);border:1px dashed var(--glass-hairline);color:var(--text-faint);font-size:.74rem;white-space:nowrap;overflow:hidden}.sidebar-backdrop{display:none}@media (max-width: 768px){.sidebar{position:fixed;inset:0 auto 0 0;width:290px;transform:translate(-100%);transition:transform .3s var(--ease-out);z-index:60}.sidebar.open{transform:translate(0)}.sidebar.collapsed{width:290px}.sidebar.collapsed .sidebar-new-chat-label,.sidebar.collapsed .sidebar-body,.sidebar.collapsed .sidebar-offline span{display:initial}.sidebar.collapsed .sidebar-body{display:block}.sidebar.collapsed .sidebar-top{flex-direction:row;padding:12px 10px}.sidebar-collapse-btn{display:none}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(8,25,27,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:55}.sidebar-backdrop.open{opacity:1;pointer-events:auto}}.sidebar-hamburger{display:none;align-items:center;justify-content:center;padding:8px;margin-right:10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);transition:background .2s ease,color .2s ease}.sidebar-hamburger:hover{background:var(--chip-bg-hover);color:var(--text-primary)}@media (max-width: 768px){.sidebar-hamburger{display:flex}}:root{--brand: #038B8F;--brand-strong: #027073;--brand-deep: #025a5d;--brand-bright: #0cb4ba;--brand-ice: #4dd0e1;--brand-glow: rgba(3, 139, 143, .35);--brand-tint: rgba(3, 139, 143, .08);--bg-base: #eef4f4;--text-primary: #17282a;--text-secondary: #52666a;--text-faint: #8ba0a3;--glass-bg: rgba(255, 255, 255, .55);--glass-bg-strong: rgba(255, 255, 255, .72);--glass-border: rgba(255, 255, 255, .65);--glass-hairline: rgba(23, 40, 42, .08);--glass-shadow: 0 8px 32px rgba(10, 40, 45, .1);--chip-bg: rgba(255, 255, 255, .5);--chip-bg-hover: rgba(255, 255, 255, .85);--code-bg: rgba(3, 139, 143, .08);--code-text: #026d71;--bubble-user: linear-gradient(135deg, #06a5aa 0%, #038B8F 55%, #027073 100%);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, Menlo, monospace;--ease-spring: cubic-bezier(.25, .8, .35, 1);--ease-out: cubic-bezier(.22, 1, .36, 1);--spring: cubic-bezier(.25, .8, .35, 1)}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}body.dark-mode{--bg-base: #08191b;--text-primary: #e6f0f0;--text-secondary: #9db4b6;--text-faint: #5f7a7d;--glass-bg: rgba(16, 34, 36, .55);--glass-bg-strong: rgba(18, 38, 40, .78);--glass-border: rgba(120, 200, 205, .14);--glass-hairline: rgba(180, 230, 233, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .45);--chip-bg: rgba(255, 255, 255, .05);--chip-bg-hover: rgba(255, 255, 255, .12);--code-bg: rgba(77, 208, 225, .1);--code-text: #81e6d9;--brand-glow: rgba(12, 180, 186, .45);--brand-tint: rgba(12, 180, 186, .1)}*{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{font-family:var(--font-ui);background-color:var(--bg-base);color:var(--text-primary);height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .4s ease,color .4s ease}button{font-family:inherit;cursor:pointer}::selection{background:rgba(3,139,143,.25)}.message.user .message-content::selection,.message.user .message-content *::selection{background:rgba(255,255,255,.92);color:#025a5d}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(100,130,133,.28);border-radius:8px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:rgba(3,139,143,.5);background-clip:padding-box}.dark-mode ::-webkit-scrollbar-thumb{background:rgba(150,200,204,.18);background-clip:padding-box}.ambient-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.ambient-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:.035;mix-blend-mode:overlay}.aurora-blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;will-change:transform}.aurora-blob.b1{width:55vw;height:55vw;left:-15vw;top:-25vh;background:radial-gradient(circle at 40% 40%,rgba(3,139,143,.55),transparent 65%);animation:drift-a 26s ease-in-out infinite alternate}.aurora-blob.b2{width:45vw;height:45vw;right:-12vw;top:10vh;background:radial-gradient(circle at 60% 40%,rgba(77,208,225,.4),transparent 65%);animation:drift-b 32s ease-in-out infinite alternate}.aurora-blob.b3{width:50vw;height:50vw;left:20vw;bottom:-30vh;background:radial-gradient(circle at 50% 50%,rgba(2,112,115,.35),transparent 65%);animation:drift-c 38s ease-in-out infinite alternate}.dark-mode .aurora-blob{opacity:.4}@keyframes drift-a{0%{transform:translate(0) scale(1)}to{transform:translate(8vw,6vh) scale(1.15)}}@keyframes drift-b{0%{transform:translate(0) scale(1.1)}to{transform:translate(-6vw,10vh) scale(.95)}}@keyframes drift-c{0%{transform:translate(0) scale(1)}to{transform:translate(-10vw,-8vh) scale(1.2)}}@media (prefers-reduced-motion: reduce){.aurora-blob{animation:none!important}}.container{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh;width:100%;margin:0 auto}.header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--glass-bg);-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);border-bottom:1px solid var(--glass-hairline);box-shadow:0 1px #ffffff40 inset;z-index:20;transition:opacity .5s var(--ease-out)}.dark-mode .header{box-shadow:0 1px #ffffff0a inset}.header-left,.header-center{display:flex;align-items:center}.header-right{display:flex;align-items:center;gap:16px}@property --gx-angle{syntax: "<angle>"; initial-value: 90deg; inherits: false;}.logo-wrap{position:relative;display:inline-flex;margin-right:12px;isolation:isolate}#logo{height:44px;width:auto;aspect-ratio:132.97 / 103.27;display:block;filter:drop-shadow(0 2px 6px rgba(3,139,143,.25));animation:logo-in .7s cubic-bezier(.2,.8,.2,1) both,logo-breathe 6s ease-in-out .9s infinite,logo-float 7s ease-in-out .9s infinite}.logo-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);background-size:250% 100%;background-position:150% 0;opacity:0;mix-blend-mode:screen;animation:logo-sweep 1s ease .7s 1 forwards}@keyframes logo-in{0%{opacity:0;transform:scale(.9) translateY(6px)}to{opacity:1;transform:none}}@keyframes logo-breathe{0%,to{filter:drop-shadow(0 0 6px rgba(3,139,143,.28))}50%{filter:drop-shadow(0 0 16px rgba(12,180,186,.55))}}@keyframes logo-float{0%,to{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-3px) rotate(.4deg)}}@keyframes logo-sweep{0%{background-position:150% 0;opacity:0}15%{opacity:1}85%{opacity:1}to{background-position:-80% 0;opacity:0}}.brand-info-title{position:relative;font-size:22px;font-weight:800;letter-spacing:.02em;margin-bottom:1px}.brand-info-title .ch{display:inline-block;white-space:pre;opacity:0;background:linear-gradient(var(--gx-angle),var(--brand),var(--brand-bright),var(--brand-ice),var(--brand-bright),var(--brand));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:ch-in .52s cubic-bezier(.2,.8,.2,1) both,gx-flow 18s linear 1.8s infinite}@keyframes ch-in{0%{opacity:0;transform:translateY(.35em) rotateX(-55deg)}to{opacity:1;transform:none}}@keyframes gx-flow{to{--gx-angle: 450deg}}.brand-tagline{position:relative;font-size:12.5px;color:var(--text-secondary);font-weight:500;width:fit-content}.brand-tagline .w{display:inline-block;opacity:0;animation:w-in .64s cubic-bezier(.2,.8,.2,1) both}.brand-tagline:after{content:"";position:absolute;left:0;bottom:-3px;height:2px;width:100%;background:linear-gradient(90deg,var(--brand),var(--brand-bright),var(--brand-ice));background-size:0% 100%;background-repeat:no-repeat;animation:tagline-underline .7s ease 1.5s both}@keyframes w-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes tagline-underline{to{background-size:100% 100%}}@media (prefers-reduced-motion: reduce){#logo{animation:none}.logo-wrap:after{display:none}.brand-info-title .ch{opacity:1;animation:none;background:linear-gradient(90deg,var(--brand) 0%,var(--brand-bright) 60%,var(--brand-ice) 100%);background-size:100% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand-tagline .w{opacity:1;animation:none}.brand-tagline:after{animation:none;background-size:100% 100%}}.auth-controls,.user-info{display:flex;align-items:center;gap:12px}.user-details{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.username{font-size:13.5px;color:var(--text-primary);font-weight:600;cursor:pointer;transition:color .2s ease}.username:hover{color:var(--brand)}.user-email{font-size:11.5px;color:var(--text-faint)}.dev-badge{background:var(--brand);color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.auth-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid transparent;border-radius:12px;font-size:13.5px;font-weight:600;transition:all .25s var(--ease-out)}.login-btn{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);color:#fff;box-shadow:0 4px 14px var(--brand-glow)}.login-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--brand-glow)}.logout-btn{background:var(--chip-bg);color:var(--text-secondary);border-color:var(--glass-hairline)}.logout-btn:hover{background:var(--chip-bg-hover);color:var(--text-primary)}.theme-toggle{width:46px;height:26px;background:var(--chip-bg);border:1px solid var(--glass-hairline);border-radius:13px;position:relative;transition:all .3s ease;outline:none;flex-shrink:0}.theme-toggle.dark{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);border-color:transparent}.theme-toggle-slider{width:20px;height:20px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .3s var(--ease-spring);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000040}.theme-toggle.dark .theme-toggle-slider{transform:translate(20px)}.theme-toggle-icon{width:12px;height:12px;fill:#64868a}.theme-toggle.dark .theme-toggle-icon{fill:var(--brand)}.chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.messages-container{flex:1;overflow-y:auto;padding:32px 24px 190px;display:flex;flex-direction:column;gap:4px;max-width:860px;margin:0 auto;width:100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 28px);mask-image:linear-gradient(to bottom,transparent 0,black 28px)}.message{margin-bottom:22px;animation:msg-in .25s ease-out both}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.message.user{align-self:flex-end;margin-left:auto;max-width:72%}.message.user .message-content{background:var(--bubble-user);color:#fff;padding:12px 18px;border-radius:22px 22px 6px;border:1px solid rgba(255,255,255,.22);line-height:1.55;font-size:15px;word-wrap:break-word;white-space:pre-wrap;box-shadow:0 10px 30px -8px var(--brand-glow),0 1px #ffffff40 inset}.message.bot{align-self:stretch;max-width:100%;margin-right:0}.message.bot .message-content{background:transparent;border:none;padding:0;color:var(--text-primary);min-height:20px}.message.bot.error-state .message-content{border-left:3px solid #ef4444;padding-left:14px;border-radius:2px}.bot-role-row{display:flex;align-items:center;gap:8px;margin-bottom:10px;-webkit-user-select:none;user-select:none}.bot-role-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;background:linear-gradient(135deg,var(--brand-bright) 0%,var(--brand) 60%,var(--brand-deep) 100%);box-shadow:0 0 12px var(--brand-glow);flex-shrink:0}.bot-role-name{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(90deg,var(--brand) 0%,var(--brand-bright) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.bot-role-name.streaming{background:linear-gradient(100deg,var(--brand) 35%,var(--brand-ice) 50%,var(--brand) 65%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;animation:shimmer 1.8s linear infinite}.message-time{font-size:11px;color:var(--text-faint);margin-top:6px;text-align:right;opacity:.7}.message.bot .message-time{text-align:left}.loading-message-content{display:flex;align-items:flex-start;gap:12px;color:var(--text-secondary);font-size:14px;padding:4px 0}.loading-text-container{display:flex;flex-direction:column;gap:4px}.loading-text-container>span:first-child{background:linear-gradient(90deg,var(--text-secondary) 30%,var(--brand-bright) 50%,var(--text-secondary) 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 1.8s linear infinite;font-weight:500}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-status-text{font-size:12px;font-weight:600;background:linear-gradient(100deg,var(--brand) 40%,var(--brand-ice) 50%,var(--brand) 60%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 2s linear infinite}@media (prefers-reduced-motion: reduce){.loading-status-text,.loading-text-container>span:first-child{animation:none;-webkit-text-fill-color:currentColor;color:var(--brand)}}.loading-spinner{width:18px;height:18px;border:2px solid var(--brand-tint);border-top:2px solid var(--brand);border-radius:50%;animation:spin .9s linear infinite;flex-shrink:0;margin-top:2px}@keyframes spin{to{transform:rotate(360deg)}}.typing-indicator{display:flex;align-items:center;gap:5px;margin-top:8px;width:fit-content}.typing-dot{width:7px;height:7px;background:var(--brand);border-radius:50%;animation:typing-dot 1.4s infinite ease-in-out both;box-shadow:0 0 8px var(--brand-glow)}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-dot{0%,80%,to{transform:scale(.7);opacity:.4}40%{transform:scale(1);opacity:1}}.streaming-text>*:last-child:after,.streaming-text:after{content:"▋";display:inline-block;vertical-align:baseline;animation:blink 1s step-end infinite;color:var(--brand-bright);margin-left:3px;font-weight:700}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.streaming-text p{display:inline}.streaming-text p:last-child,.streaming-text li:last-child{display:inline}.markdown-body{font-family:var(--font-ui);font-size:15.5px;line-height:1.7;color:var(--text-primary)}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-weight:700;color:var(--brand);margin-top:24px;margin-bottom:12px}.markdown-body h1{font-size:1.35rem}.markdown-body h2{font-size:1.25rem}.markdown-body h3{font-size:1.12rem;padding-bottom:6px;border-bottom:1px solid var(--glass-hairline);display:flex;align-items:center}.markdown-body h4,.markdown-body h5,.markdown-body h6{font-size:1rem;font-weight:700;color:var(--text-primary);margin-top:18px;margin-bottom:8px;letter-spacing:.01em}.markdown-body>h3:first-child,.markdown-body>h2:first-child,.markdown-body>h1:first-child{margin-top:0}.dark-mode .markdown-body h1,.dark-mode .markdown-body h2,.dark-mode .markdown-body h3{color:var(--brand-ice)}.markdown-body p{margin-bottom:12px;text-align:left}.markdown-body p:last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{margin-top:8px;margin-bottom:16px;padding-left:24px}.markdown-body li{margin-bottom:6px;position:relative}.markdown-body li::marker{color:var(--brand)}.markdown-body li>ul,.markdown-body li>ol{margin-top:6px;margin-bottom:0}.markdown-body strong{font-weight:700;color:var(--brand-strong)}.dark-mode .markdown-body strong{color:var(--brand-ice)}.markdown-body em{font-style:italic;color:var(--text-secondary)}.markdown-body code{font-family:var(--font-mono);font-size:.88em;background:var(--code-bg);color:var(--code-text);padding:2px 6px;border-radius:6px}.markdown-body pre{background:rgba(10,30,32,.9);border:1px solid var(--glass-hairline);padding:14px 16px;border-radius:var(--radius-sm);overflow-x:auto;margin:12px 0}.dark-mode .markdown-body pre{background:rgba(0,0,0,.35)}.markdown-body pre code{background:transparent;color:#c9ecee;padding:0}.markdown-body img,.response-image{max-width:100%;height:auto;border-radius:var(--radius-sm);border:1px solid var(--glass-hairline);margin:12px 0;display:block;box-shadow:var(--glass-shadow);transition:transform .25s var(--ease-out)}.markdown-body:not(.streaming-text) img,.markdown-body:not(.streaming-text) .response-image{animation:img-reveal .9s cubic-bezier(.2,.7,.2,1) both}@keyframes img-reveal{0%{filter:blur(20px) saturate(1.3);transform:scale(1.03);opacity:.6}to{filter:blur(0) saturate(1);transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.markdown-body:not(.streaming-text) img,.markdown-body:not(.streaming-text) .response-image{animation:none}}.markdown-body img:hover,.response-image:hover{transform:scale(1.01)}.markdown-body a,.message-content a{color:var(--brand);text-decoration:none;font-weight:500;border-bottom:1px dotted var(--brand);transition:all .15s ease}.markdown-body a:hover,.message-content a:hover{color:var(--brand-bright);border-bottom-style:solid}.dark-mode .markdown-body a,.dark-mode .message-content a{color:var(--brand-ice);border-bottom-color:var(--brand-ice)}.citation-link{display:inline-block;font-size:.78em;font-weight:700;padding:1px 7px;margin:0 2px;border-radius:999px;background:var(--brand-tint);border:1px solid rgba(3,139,143,.25)!important;color:var(--brand)!important;vertical-align:2px;transition:all .2s var(--ease-out)}.citation-link:hover{background:var(--brand);color:#fff!important;box-shadow:0 2px 8px var(--brand-glow)}.dark-mode .citation-link{color:var(--brand-ice)!important;border-color:#4dd0e14d!important}.dark-mode .citation-link:hover{background:var(--brand);color:#fff!important}.markdown-body hr,.message-content hr{border:0;height:1px;background:linear-gradient(to right,transparent,var(--glass-hairline) 20%,var(--glass-hairline) 80%,transparent);margin:24px 0}.message-content .table-wrap{overflow-x:auto;margin:16px 0;border-radius:var(--radius-sm);-webkit-overflow-scrolling:touch}.message-content .table-wrap table{margin:0}.message-content table{width:100%;border-collapse:separate;border-spacing:0;margin:16px 0;font-size:.93em;background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--glass-hairline);box-shadow:var(--glass-shadow)}.message-content th{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);color:#fff;font-weight:600;padding:10px 14px;text-align:left;white-space:nowrap}.message-content td{padding:9px 14px;border-bottom:1px solid var(--glass-hairline);vertical-align:top;color:var(--text-primary);line-height:1.5}.message-content tr:nth-child(2n) td{background:rgba(3,139,143,.035)}.message-content tr:hover td{background:var(--brand-tint);transition:background .2s}.message-content tr:last-child td{border-bottom:none}.reasoning-details,.notes-details{margin:2px 0 16px}.reasoning-details summary,.notes-details summary{display:inline-flex;align-items:center;gap:7px;width:fit-content;cursor:pointer;font-weight:600;font-size:12.5px;padding:6px 14px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--chip-bg);-webkit-user-select:none;user-select:none;outline:none;list-style:none;transition:all .2s var(--ease-out)}.reasoning-details summary::-webkit-details-marker,.notes-details summary::-webkit-details-marker{display:none}.reasoning-details summary{color:#7c3aed}.notes-details summary{color:#b45309}.dark-mode .reasoning-details summary{color:#c4b5fd}.dark-mode .notes-details summary{color:#fcd34d}.reasoning-details summary:hover,.notes-details summary:hover{background:var(--chip-bg-hover)}.reasoning-details[open] summary{border-color:#8b5cf666;background:rgba(139,92,246,.07)}.notes-details[open] summary{border-color:#d9770666;background:rgba(217,119,6,.07)}.reasoning-content,.notes-content{margin:12px 0 4px 12px;padding:2px 0 2px 16px;font-size:.88em;color:var(--text-secondary);line-height:1.65;border-left:2px solid rgba(139,92,246,.3)}.notes-content{border-left-color:#d9770659}.dark-mode .reasoning-content{border-left-color:#c4b5fd4d}.dark-mode .notes-content{border-left-color:#fcd34d4d}.reasoning-content strong,.notes-content strong{color:var(--text-primary);font-weight:600}.reasoning-content a,.notes-content a{color:var(--brand);border-bottom:none}.reasoning-content code,.notes-content code{font-family:var(--font-mono);font-size:.9em;background:var(--code-bg);color:var(--code-text);padding:1px 5px;border-radius:5px}.feedback-section{margin-top:14px;padding-top:10px;border-top:1px solid var(--glass-hairline)}.feedback-row{display:flex;align-items:flex-start;gap:12px}.candidates-details{flex:1;margin-bottom:0}.candidates-summary{cursor:pointer;color:var(--brand);font-weight:600;font-size:13.5px;padding:6px 0;-webkit-user-select:none;user-select:none}.candidates-summary:hover{color:var(--brand-bright)}.candidates-content{margin-top:10px}.source-item{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border:1px solid var(--glass-hairline);border-radius:var(--radius-sm);margin-bottom:8px;background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s var(--ease-out)}.source-item:hover{border-color:var(--brand);box-shadow:0 2px 10px var(--brand-glow)}.source-item input[type=radio]{margin-top:3px;transform:scale(1.15);accent-color:var(--brand)}.candidate-label{flex:1;cursor:pointer}.source-title{font-weight:600;font-size:13.5px;color:var(--text-primary)}.source-title-link{border-bottom:none!important}.candidate-score{color:var(--text-faint);font-size:11.5px;margin-left:10px;font-weight:500;font-family:var(--font-mono)}.btn-golden{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:12.5px;font-weight:600;transition:all .25s var(--ease-out);background:rgba(217,119,6,.1);color:#b45309;border:1px solid rgba(217,119,6,.3)}.btn-golden:hover{background:rgba(217,119,6,.2);box-shadow:0 2px 8px #d9770633}.dark-mode .btn-golden{background:rgba(251,191,36,.1);color:#fcd34d;border-color:#fbbf2447}.message-meta{font-size:12px;color:var(--text-faint);margin-top:12px;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.msg-action-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:6px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-faint);opacity:1;transition:background-color .15s linear,border-color .15s linear,color .15s linear}.msg-action-btn:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.msg-action-btn:hover{background:var(--chip-bg-hover);border-color:var(--glass-hairline);color:var(--brand)}.msg-action-btn.copied{color:#16a34a}.meta-time{margin-left:10px;color:var(--brand);font-weight:600;font-family:var(--font-mono);font-size:11.5px}.welcome-message{text-align:center;padding:20px 20px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;height:300px;width:300px;margin:6vh auto 0;animation:welcome-in .8s var(--ease-out) both}@keyframes welcome-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.welcome-message>div{width:200px!important;height:200px!important;max-width:200px!important;max-height:200px!important}.genix-title{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:24px!important;font-weight:900;color:#fff;text-shadow:0 0 20px rgba(25,139,144,.9),0 0 44px rgba(25,139,144,.6),2px 2px 4px rgba(0,0,0,.5);z-index:10;pointer-events:none;margin:0;white-space:nowrap;letter-spacing:2px}.title-center-ai{position:absolute!important}.coming-soon-message{margin-top:280px;font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:3px;background:linear-gradient(90deg,var(--brand) 0%,var(--brand-ice) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.welcome-hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:20px;animation:welcome-in .8s var(--ease-out) both}.welcome-hero .welcome-message{height:220px;width:220px;padding:0;margin:0 0 8px;animation:none}.hero-greeting{font-size:38px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(90deg,var(--brand) 0%,var(--brand-bright) 45%,var(--brand-ice) 70%,var(--brand) 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 7s ease-in-out infinite alternate;margin:0}.hero-sub{font-size:16.5px;font-weight:500;color:var(--text-secondary);margin:8px 0 30px}.suggestion-grid{display:grid;grid-template-columns:repeat(2,minmax(250px,330px));gap:12px;width:100%;max-width:700px;justify-content:center}.suggestion-chip{display:flex;align-items:center;gap:12px;text-align:left;padding:14px 16px;font-size:13.5px;font-weight:500;font-family:inherit;color:var(--text-primary);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--glass-hairline);border-radius:var(--radius-md);box-shadow:0 2px 10px #0a282d0d;transition:transform .4s var(--spring),border-color .25s ease,box-shadow .25s ease,background .25s ease;animation:welcome-in .7s var(--ease-out) both}.suggestion-chip:nth-child(1){animation-delay:.1s}.suggestion-chip:nth-child(2){animation-delay:.18s}.suggestion-chip:nth-child(3){animation-delay:.26s}.suggestion-chip:nth-child(4){animation-delay:.34s}.suggestion-chip:hover{transform:translateY(-2px);border-color:#038b8f73;background:var(--chip-bg-hover);box-shadow:0 8px 24px -6px var(--brand-glow)}.suggestion-chip:active{transform:scale(.97)}.sugg-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:var(--brand-tint);color:var(--brand);flex-shrink:0}.input-area{padding:0 24px!important;background:transparent;border-top:none;max-width:860px!important;margin:0 auto;width:calc(100% - 48px)!important;position:fixed;bottom:24px!important;left:50%;transform:translate(-50%);z-index:15}.chat-input-area-wide{max-width:860px!important;width:calc(100% - 48px)!important;margin:0 auto!important;bottom:24px!important}@media (min-width: 769px){.app-body:has(.sidebar:not(.collapsed)) .input-area{left:calc(50% + 136px)}.app-body:has(.sidebar.collapsed) .input-area{left:calc(50% + 29px)}}.chat-toolbar{padding:0 10px 8px;display:flex;justify-content:flex-end;align-items:center;position:relative;gap:8px}.toolbar-chip{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary);-webkit-user-select:none;user-select:none;padding:7px 14px;border-radius:999px;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--glass-hairline);transition:all .25s var(--ease-out);box-shadow:0 2px 10px #0a282d0f}.toolbar-chip:hover{background:var(--chip-bg-hover);color:var(--text-primary);transform:translateY(-1px)}.toggle-chip.active{color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);border-color:transparent;box-shadow:0 4px 14px var(--brand-glow)}.toggle-chip.active:hover{color:#fff;background:linear-gradient(135deg,var(--brand-bright) 0%,var(--brand) 100%)}.toolbar-icon-btn{display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);-webkit-user-select:none;user-select:none;width:34px;height:34px;border-radius:50%;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--glass-hairline);transition:all .25s var(--ease-out);box-shadow:0 2px 10px #0a282d0f}.toolbar-icon-btn:hover{background:var(--chip-bg-hover);color:var(--text-primary);transform:translateY(-1px)}.toolbar-icon-btn.danger:hover{background:rgba(239,68,68,.14);color:#ef4444;border-color:#ef44444d}.model-dropdown{position:absolute;bottom:100%;right:10px;margin-bottom:10px;background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:6px;z-index:100;box-shadow:var(--glass-shadow),0 24px 60px -20px #00000059;min-width:210px;overflow:hidden;animation:dropdown-in .25s var(--ease-spring) both;transform-origin:bottom right}@keyframes dropdown-in{0%{opacity:0;transform:scale(.92) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.model-option{padding:10px 12px;cursor:pointer;display:flex;align-items:center;gap:10px;border-radius:10px;color:var(--text-primary);font-size:.9em;transition:background .2s}.model-option+.model-option{margin-top:2px}.model-option:hover{background:var(--chip-bg-hover)}.model-option.active{background:var(--brand-tint);box-shadow:0 0 0 1px #038b8f40 inset}.model-option-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;flex-shrink:0}.model-option-icon.fast{background:rgba(230,126,34,.16)}.model-option-icon.reasoning{background:rgba(168,85,247,.16)}.model-option-text{display:flex;flex-direction:column}.model-option-text .opt-title{font-weight:600}.model-option-text .opt-sub{font-size:.76em;color:var(--text-faint)}.input-container{position:relative;display:flex;gap:12px;align-items:flex-end;max-width:100%;background:linear-gradient(var(--glass-bg-strong),var(--glass-bg-strong)) padding-box;-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);border-radius:28px;padding:10px 10px 10px 22px;border:1.5px solid var(--glass-border);box-shadow:var(--glass-shadow),0 1px #fff6 inset;transition:border-color .3s ease,box-shadow .3s ease;margin:0 auto}.dark-mode .input-container{box-shadow:var(--glass-shadow),0 1px #ffffff0f inset}.input-container:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;z-index:-1;border-radius:inherit;background:conic-gradient(from var(--angle),var(--brand),var(--brand-ice),var(--brand-bright),var(--brand),var(--brand-strong),var(--brand));filter:blur(16px);opacity:0;transition:opacity .45s ease}.input-container:focus-within{border-color:var(--brand);box-shadow:var(--glass-shadow),0 1px #fff6 inset}.dark-mode .input-container:focus-within{box-shadow:var(--glass-shadow),0 1px #ffffff0f inset}.input-container:focus-within:before{opacity:0}@keyframes spin-border{to{--angle: 360deg}}@media (prefers-reduced-motion: reduce){.input-container:focus-within,.input-container:focus-within:before{animation:none}}.input-field{width:100%;min-height:40px;max-height:140px;padding:9px 0;border:none;font-size:15.5px;font-family:inherit;color:var(--text-primary);resize:none;outline:none;background:transparent;line-height:1.45}.input-field::placeholder{color:var(--text-faint)}.send-btn{width:42px;height:42px;border:none;background:linear-gradient(135deg,var(--brand-bright) 0%,var(--brand) 55%,var(--brand-strong) 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .5s var(--spring),box-shadow .3s ease,background .25s ease,color .25s ease;box-shadow:0 6px 18px -4px var(--brand-glow)}.send-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.06);box-shadow:0 10px 26px -4px var(--brand-glow)}.send-btn:active:not(:disabled){transform:translateY(0) scale(.92)}.send-btn:disabled{background:var(--chip-bg);color:var(--text-faint);cursor:not-allowed;box-shadow:none}@media (max-width: 768px){.header{padding:10px 16px}.user-details{display:none!important}.brand-info-title{font-size:18px}.brand-tagline{display:none}.messages-container{padding:20px 16px 240px}.hero-greeting{font-size:28px}.suggestion-grid{grid-template-columns:1fr;max-width:100%}.message.user{max-width:85%}.welcome-message{padding:10px;height:180px!important;width:180px!important;max-height:180px;overflow:visible;margin:40px auto 0}.welcome-message>div{width:140px!important;height:140px!important;max-width:140px!important;max-height:140px!important}.genix-title{font-size:16px!important;letter-spacing:1px}.input-area,.chat-input-area-wide{padding:0!important;position:fixed!important;bottom:12px!important;left:12px!important;right:12px!important;transform:none!important;width:auto!important;max-width:none!important;margin:0!important;z-index:1000!important}.input-container{width:100%!important;max-width:100%!important}}.w-full{width:100%}.h-full{height:100%}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.mx-auto{margin-left:auto;margin-right:auto}.aspect-square{aspect-ratio:1 / 1}.relative{position:relative}.absolute{position:absolute}.inset-0{top:0;right:0;bottom:0;left:0}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.z-10{z-index:10}.pointer-events-none{pointer-events:none}.text-center{text-align:center}.font-bold{font-weight:700}.tracking-wider{letter-spacing:.05em}.orb-container{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.scroll-down-btn{position:fixed;bottom:158px;left:50%;transform:translate(-50%);width:38px;height:38px;border-radius:50%;border:1px solid var(--glass-hairline);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;z-index:14;box-shadow:var(--glass-shadow);animation:pill-in .35s var(--ease-spring) both;transition:color .2s ease,border-color .2s ease,transform .3s var(--spring)}.scroll-down-btn:hover{color:var(--brand);border-color:#038b8f66;transform:translate(-50%) translateY(-2px)}@keyframes pill-in{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.8)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@media (max-width: 768px){.scroll-down-btn{bottom:190px}}.question-nav{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:6px;z-index:14;animation:question-nav-in .2s ease-out both}@keyframes question-nav-in{0%{opacity:0}to{opacity:1}}.question-nav-btn{width:30px;height:30px;border-radius:50%;border:1px solid var(--glass-hairline);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;box-shadow:var(--glass-shadow);transition:color .15s linear,border-color .15s linear,opacity .15s linear}.question-nav-btn:hover:not(:disabled){color:var(--brand);border-color:#038b8f66}.question-nav-btn:disabled{opacity:.35;cursor:default;box-shadow:none}@media (max-width: 768px){.question-nav{right:8px}.question-nav-btn{width:28px;height:28px}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){animation:theme-wipe .55s var(--ease-out)}@keyframes theme-wipe{0%{clip-path:circle(0% at calc(100% - 48px) 32px)}to{clip-path:circle(150% at calc(100% - 48px) 32px)}}@media (prefers-reduced-motion: reduce){::view-transition-new(root){animation:none}}@keyframes enter-rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.app-enter .welcome-hero{animation:none}.app-enter .welcome-message{animation:enter-rise .6s var(--ease-out) 0ms both}.app-enter .hero-greeting{animation:enter-rise .6s var(--ease-out) .3s both,shimmer 7s ease-in-out 1.3s infinite alternate}.app-enter .hero-sub{animation:enter-rise .6s var(--ease-out) .44s both}.app-enter .suggestion-chip{animation:enter-rise .55s var(--ease-out) both}.app-enter .suggestion-chip:nth-child(1){animation-delay:.64s}.app-enter .suggestion-chip:nth-child(2){animation-delay:.76s}.app-enter .suggestion-chip:nth-child(3){animation-delay:.88s}.app-enter .suggestion-chip:nth-child(4){animation-delay:1s}.app-enter .chat-toolbar{animation:enter-rise .55s var(--ease-out) 1.18s both}.app-enter .input-container{animation:enter-rise .55s var(--ease-out) 1.3s both}.header-hold .header{opacity:0}.header-hold #logo,.header-hold .brand-info-title .ch,.header-hold .brand-tagline .w,.header-hold .brand-tagline:after,.header-hold .logo-wrap:after{animation-play-state:paused}.intro-gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;overflow:hidden;background:radial-gradient(60vmax 60vmax at 50% 46%,rgba(3,139,143,.14),transparent 70%),var(--bg-base);will-change:opacity;animation:intro-gate-in .6s var(--ease-out) both}@keyframes intro-gate-in{0%{opacity:0}to{opacity:1}}.intro-particles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.intro-particles canvas{position:absolute;top:0;left:0}.intro-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer}.intro-orb{width:clamp(280px,60vmin,460px);height:clamp(280px,60vmin,460px);position:relative;transform-origin:center;will-change:transform,filter;filter:drop-shadow(0 0 40px rgba(3,139,143,.35));transition:filter .4s ease}.intro-orb.charging{filter:drop-shadow(0 0 70px rgba(12,180,186,.7))}.intro-orb canvas{-webkit-mask:radial-gradient(circle at center,#000 54%,transparent 70%);mask:radial-gradient(circle at center,#000 54%,transparent 70%)}.intro-orb.charging .genix-title{opacity:0;transition:opacity .35s ease}.intro-hint{position:absolute;bottom:clamp(80px,16vh,150px);display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:600;letter-spacing:.01em;color:var(--text-secondary);-webkit-user-select:none;user-select:none;animation:hint-breathe 2.4s ease-in-out infinite}.intro-hint-dot{width:8px;height:8px;border-radius:50%;background:var(--brand-bright);box-shadow:0 0 12px var(--brand-glow)}@keyframes hint-breathe{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.intro-skip{position:fixed;top:20px;right:22px;z-index:6;padding:8px 18px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid var(--glass-hairline);transition:all .25s var(--ease-out)}.intro-skip:hover{color:var(--text-primary);background:var(--chip-bg-hover);transform:translateY(-1px)}.intro-shockwave{position:fixed;left:var(--cx, 50%);top:var(--cy, 50%);width:12px;height:12px;z-index:4;pointer-events:none;border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(1);mix-blend-mode:screen;background:radial-gradient(circle,transparent 56%,rgba(3,139,143,.55) 64%,rgba(180,255,250,.95) 69%,transparent 74%)}.intro-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(circle at var(--cx, 50%) var(--cy, 50%),rgba(255,255,255,.95),rgba(12,180,186,.6) 30%,transparent 62%)}@media (prefers-reduced-motion: reduce){.intro-gate{display:none}}.mic-btn,.speech-mode-btn{width:42px;height:42px;border:1px solid transparent;background:transparent;color:var(--text-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:transform .5s var(--spring),box-shadow .3s ease,background .25s ease,color .25s ease}.mic-btn:hover:not(:disabled),.speech-mode-btn:hover:not(:disabled){background:var(--chip-bg-hover);color:var(--brand);transform:translateY(-2px)}.mic-btn:active:not(:disabled),.speech-mode-btn:active:not(:disabled){transform:translateY(0) scale(.92)}.mic-btn:disabled,.speech-mode-btn:disabled{color:var(--text-faint);cursor:not-allowed;opacity:.55}.mic-btn.listening{color:#fff;background:linear-gradient(135deg,var(--brand-bright) 0%,var(--brand) 55%,var(--brand-strong) 100%);box-shadow:0 6px 18px -4px var(--brand-glow);animation:mic-pulse 1.6s ease-out infinite}@keyframes mic-pulse{0%{box-shadow:0 0 0 0 var(--brand-glow)}70%{box-shadow:0 0 0 12px #038b8f00}to{box-shadow:0 0 #038b8f00}}.speech-mode-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px;background:radial-gradient(circle at 50% 38%,var(--brand-tint),transparent 62%),var(--bg-base);animation:speech-overlay-in .4s var(--ease-out) both}@keyframes speech-overlay-in{0%{opacity:0}to{opacity:1}}.speech-close-btn{position:absolute;top:20px;right:20px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--glass-hairline);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--text-secondary);cursor:pointer;transition:transform .4s var(--spring),background .25s ease,color .25s ease}.speech-close-btn:hover{background:var(--chip-bg-hover);color:var(--text-primary);transform:rotate(90deg)}.speech-orb-wrap{position:relative;width:min(70vw,340px);aspect-ratio:1;cursor:pointer;border-radius:50%;transition:transform .6s var(--spring)}.speech-orb-wrap:active{transform:scale(.96)}.speech-orb-wrap.listening:after{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;border:2px solid var(--brand-bright);opacity:0;animation:speech-ring 1.8s ease-out infinite;pointer-events:none}@keyframes speech-ring{0%{transform:scale(.9);opacity:.7}to{transform:scale(1.15);opacity:0}}.speech-orb-wrap.thinking{animation:speech-breathe 2.4s ease-in-out infinite}@keyframes speech-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.speech-status{display:flex;align-items:center;gap:8px;min-height:26px;font-size:17px;font-weight:500;color:var(--text-secondary);text-align:center}.speech-status.listening{color:var(--brand)}.speech-status-icon{animation:mic-pulse-icon 1.6s ease-in-out infinite}@keyframes mic-pulse-icon{0%,to{opacity:1}50%{opacity:.4}}.speech-subtitles{max-width:680px;width:min(90%,680px);background:var(--glass-bg);border:1px solid var(--glass-hairline);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);box-shadow:var(--glass-shadow);padding:14px 18px;font-size:15px;line-height:1.55;color:var(--text-primary);text-align:center;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.speech-footer{position:absolute;bottom:20px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:8px}.speech-exit-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);box-shadow:var(--glass-shadow);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:transform .4s var(--spring),background .25s ease,color .25s ease,box-shadow .3s ease}.speech-exit-btn:hover{background:var(--chip-bg-hover);color:var(--brand);transform:translateY(-2px);box-shadow:0 10px 26px -6px var(--brand-glow)}.speech-hint{margin:0;text-align:center;font-size:12.5px;color:var(--text-faint)}.speech-voice-picker{position:absolute;top:20px;left:20px}.speech-voice-chip{display:flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;border:1px solid var(--glass-hairline);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .25s ease,color .25s ease}.speech-voice-chip:hover{background:var(--chip-bg-hover);color:var(--brand)}.speech-voice-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:230px;max-height:50vh;overflow-y:auto;padding:6px;border-radius:var(--radius-md);border:1px solid var(--glass-hairline);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:2px}.speech-voice-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:13.5px;text-align:left;cursor:pointer;transition:background .2s ease,color .2s ease}.speech-voice-option:hover{background:var(--chip-bg-hover)}.speech-deep-chip{margin-top:8px}.speech-deep-chip.active{color:#fff;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-strong) 100%);border-color:transparent;box-shadow:0 4px 14px var(--brand-glow)}.speech-deep-chip.active:hover{color:#fff;background:linear-gradient(135deg,var(--brand-bright) 0%,var(--brand) 100%)}.speech-voice-option.active{color:var(--brand);font-weight:600}@media (max-width: 768px){.speech-orb-wrap{width:min(80vw,260px)}.speech-subtitles{width:94%}}@media (prefers-reduced-motion: reduce){.mic-btn.listening,.speech-orb-wrap.listening:after,.speech-orb-wrap.thinking,.speech-status-icon{animation:none}}
