@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-ibm-plex-thai);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.hidden{display:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--bg:#f8faff;--bg-soft:#eef3fc;--surface:#fff;--sidebar:#0b1220;--sidebar-text:#e8eef8;--sidebar-muted:#93a4c3;--sidebar-hover:#ffffff0f;--sidebar-active:#3b82f62e;--border:#dde5f2;--text:#0f172a;--muted:#64748b;--user-bg:#eef4ff;--user-text:#0f172a;--accent:#2563eb;--accent-strong:#1d4ed8;--accent-soft:#e0eaff;--accent-contrast:#fff;--accent-cyan:#0ea5e9;--accent-violet:#7c3aed;--danger-bg:#fef2f2;--danger-text:#b91c1c;--danger-border:#fecaca;--chat-width:780px;--radius-msg:18px;--header-bg:#f8faffe0;--sidebar-width:292px;--shadow-soft:0 10px 30px #2563eb0d;--shadow-lift:0 18px 50px #2563eb14;--ring:0 0 0 3px #2563eb29}html[data-theme=dark]{--bg:#070b14;--bg-soft:#0d1424;--surface:#121a2b;--sidebar:#050814;--sidebar-text:#e8eef8;--sidebar-muted:#8b9bb8;--sidebar-hover:#ffffff0d;--sidebar-active:#60a5fa29;--border:#243044;--text:#e8eef8;--muted:#94a3b8;--user-bg:#1a2740;--user-text:#e8eef8;--accent:#60a5fa;--accent-strong:#93c5fd;--accent-soft:#1e3a5f;--accent-contrast:#0b1220;--accent-cyan:#38bdf8;--accent-violet:#a78bfa;--danger-bg:#3b1616;--danger-text:#fecaca;--danger-border:#7f1d1d;--header-bg:#070b14e0;--shadow-soft:0 10px 30px #00000047;--shadow-lift:0 18px 50px #0006;--ring:0 0 0 3px #60a5fa38}*{box-sizing:border-box}html,body{overscroll-behavior:none;touch-action:pan-x pan-y;-ms-touch-action:pan-x pan-y;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100dvh;overflow:hidden}body{font-family:var(--font-ibm-plex-thai), "IBM Plex Sans Thai", sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.65;position:relative}button,input,textarea,select{font:inherit;touch-action:manipulation}@media (max-width:900px){input,textarea,select{font-size:16px!important}}.app-shell{background:radial-gradient(900px 420px at 85% -10%, #3b82f61f, transparent 55%), radial-gradient(700px 360px at 10% 0%, #38bdf81a, transparent 50%), var(--bg);width:100%;max-width:100vw;height:100dvh;color:var(--text);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);display:flex;overflow:hidden}html[data-theme=dark] .app-shell{background:radial-gradient(900px 420px at 85% -10%, #60a5fa1a, transparent 55%), radial-gradient(700px 360px at 10% 0%, #7c3aed14, transparent 50%), var(--bg)}.main-pane{flex-direction:column;flex:1;min-width:0;height:100dvh;display:flex}.chat-header{padding:12px 18px;padding-top:max(12px, env(safe-area-inset-top,0px));background:var(--header-bg);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.chat-header{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.chat-header{z-index:10}.chat-tabs{background:var(--bg-soft);flex-shrink:0;align-items:stretch;gap:6px;padding:0 10px 0 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.chat-tabs{background:color-mix(in srgb, var(--bg-soft) 88%, var(--surface))}}.chat-tabs{border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.chat-tabs{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.chat-tabs{min-height:42px}.chat-tabs-scroll{scrollbar-width:thin;flex:1;align-items:stretch;gap:4px;min-width:0;padding:6px 0;display:flex;overflow-x:auto}.chat-tab{min-width:110px;max-width:200px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px 10px 0 0;flex-shrink:0;align-items:center;display:inline-flex}.chat-tab.active{background:var(--surface);color:var(--text);border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.chat-tab.active{border-color:color-mix(in srgb, var(--border) 80%, transparent)}}.chat-tab.active{border-bottom-color:var(--surface);box-shadow:0 -1px 0 var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-tab.active{box-shadow:0 -1px 0 color-mix(in srgb, var(--accent) 35%, transparent)}}.chat-tab-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:8px 4px 8px 10px;font-size:.8rem;font-weight:600}.chat-tab-title{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.chat-tab-close{width:26px;height:26px;color:inherit;cursor:pointer;opacity:.55;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;margin-right:4px;display:inline-flex}.chat-tab-close svg{width:12px;height:12px}.chat-tab-close:hover{opacity:1;background:var(--danger-bg)}@supports (color:color-mix(in lab, red, red)){.chat-tab-close:hover{background:color-mix(in srgb, var(--danger-bg) 70%, transparent)}}.chat-tab-close:hover{color:var(--danger-text)}.chat-tab-add{border:1px dashed var(--border);width:34px;margin:6px 2px 6px 0}@supports (color:color-mix(in lab, red, red)){.chat-tab-add{border:1px dashed color-mix(in srgb, var(--border) 90%, var(--accent))}}.chat-tab-add{color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.chat-tab-add svg{width:14px;height:14px}.chat-tab-add:hover{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-tab-add:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.chat-tab-add:hover{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.chat-tab-add:hover{background:color-mix(in srgb, var(--accent-soft) 55%, transparent)}}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-home-btn{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;margin:0;padding:2px 4px;display:flex}.brand-home-btn:hover{background:var(--border)}@supports (color:color-mix(in lab, red, red)){.brand-home-btn:hover{background:color-mix(in srgb, var(--border) 55%, transparent)}}.brand-home-btn:focus-visible{outline:2px solid var(--accent,#3b82f6)}@supports (color:color-mix(in lab, red, red)){.brand-home-btn:focus-visible{outline:2px solid color-mix(in srgb, var(--accent,#3b82f6) 70%, transparent)}}.brand-home-btn:focus-visible{outline-offset:2px}.brand-home-copy{min-width:0;display:block}.brand-logo{object-fit:contain;width:auto;height:auto;box-shadow:none;image-rendering:auto;-webkit-user-drag:none;background:0 0;border-radius:0;flex-shrink:0;display:block}.brand-logo--header,.brand-logo--sidebar,.brand-logo--login-card{border-radius:0}.brand-logo--empty{box-shadow:none;border-radius:0;max-width:100%;margin:0 auto 18px;width:min(168px,48vw)!important;height:auto!important}.brand-logo--login-hero{box-shadow:none;border-radius:0;margin:0 auto 18px;width:min(240px,72%)!important;height:auto!important}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand h1{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.98rem;font-weight:650;overflow:hidden}.header-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:42vw;margin:0;font-size:.75rem;overflow:hidden}.header-actions{align-items:center;gap:8px;display:flex}.chat-api-key-select{min-width:0;max-width:min(300px,46vw);position:relative}.chat-api-key-select.is-disabled{opacity:.55}.chat-api-key-trigger{border:1px solid var(--border);align-items:stretch;gap:0;width:100%;min-height:40px;padding:0;display:flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger{border:1px solid color-mix(in srgb, var(--border) 90%, transparent)}}.chat-api-key-trigger{background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 100%);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, var(--accent-soft)) 0%, color-mix(in srgb, var(--surface) 88%, var(--bg-soft)) 100%)}}.chat-api-key-trigger{color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}.chat-api-key-trigger:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 32%, var(--border))}}.chat-api-key-trigger:hover:not(:disabled){box-shadow:0 10px 24px var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger:hover:not(:disabled){box-shadow:0 10px 24px color-mix(in srgb, var(--accent) 8%, transparent)}}.chat-api-key-select.is-open .chat-api-key-trigger{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-select.is-open .chat-api-key-trigger{border-color:color-mix(in srgb, var(--accent) 48%, var(--border))}}.chat-api-key-select.is-open .chat-api-key-trigger{background:var(--surface);box-shadow:var(--ring)}.chat-api-key-trigger:disabled{cursor:not-allowed}.chat-api-key-trigger-leading{flex:1;align-items:center;gap:9px;min-width:0;padding:7px 8px 7px 9px;display:flex}.chat-api-key-trigger-icon{width:28px;height:28px;color:var(--accent-strong);background:linear-gradient(145deg, var(--accent-soft) 0%, var(--accent-soft) 100%);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger-icon{background:linear-gradient(145deg, color-mix(in srgb, var(--accent-soft) 92%, white) 0%, color-mix(in srgb, var(--accent-soft) 55%, transparent) 100%)}}.chat-api-key-trigger-icon{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger-icon{border:1px solid color-mix(in srgb, var(--accent) 14%, transparent)}}.chat-api-key-trigger-icon{box-shadow:inset 0 1px #ffffff8c}.chat-api-key-trigger-icon svg{width:15px;height:15px}.chat-api-key-trigger-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.chat-api-key-trigger-label{letter-spacing:-.01em;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:650;line-height:1.2;overflow:hidden}.chat-api-key-trigger-foot{align-items:center;gap:6px;min-width:0;display:flex}.chat-api-key-model-chip{letter-spacing:-.01em;max-width:100%;color:var(--muted);background:var(--bg-soft);border-radius:999px;align-items:center;padding:1px 7px;font-size:10px;font-weight:500;line-height:1.35;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-model-chip{background:color-mix(in srgb, var(--bg-soft) 72%, transparent)}}.chat-api-key-model-chip{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-model-chip{border:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.chat-api-key-model-chip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-api-key-trigger-caret{border-left:1px solid var(--border);flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;width:30px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-trigger-caret{border-left:1px solid color-mix(in srgb, var(--border) 82%, transparent)}}.chat-api-key-trigger-caret{color:var(--muted)}.chat-api-key-trigger-caret svg{width:14px;height:14px;transition:transform .16s}.chat-api-key-trigger-caret svg.is-open{transform:rotate(180deg)}.chat-api-key-default-tag{letter-spacing:.01em;color:var(--accent-strong);flex-shrink:0;align-items:center;gap:4px;font-size:9.5px;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-default-tag{color:color-mix(in srgb, var(--accent-strong) 88%, var(--text))}}.chat-api-key-default-tag:before{content:"";background:currentColor;border-radius:999px;width:5px;height:5px;box-shadow:0 0 0 2px}@supports (color:color-mix(in lab, red, red)){.chat-api-key-default-tag:before{box-shadow:0 0 0 2px color-mix(in srgb, currentColor 18%, transparent)}}.chat-api-key-mask{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px;font-weight:500}.chat-api-key-menu{z-index:50;border:1px solid var(--border);min-width:min(300px,88vw);max-width:min(340px,92vw);position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.chat-api-key-menu{border:1px solid color-mix(in srgb, var(--border) 82%, transparent)}}.chat-api-key-menu{background:var(--surface);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.chat-api-key-menu{background:color-mix(in srgb, var(--surface) 94%, transparent)}}.chat-api-key-menu{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-lift)}.chat-api-key-menu-head{letter-spacing:.02em;color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:11px 12px 7px;font-size:11px;font-weight:650;display:flex}.chat-api-key-menu-count{min-width:20px;height:20px;color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-menu-count{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.chat-api-key-menu-list{max-height:min(300px,42vh);margin:0;padding:4px 6px 8px;list-style:none;overflow-y:auto}.chat-api-key-option{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;transition:background .14s,border-color .14s,transform .14s;display:flex}.chat-api-key-option:hover{background:var(--bg-soft)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option:hover{background:color-mix(in srgb, var(--bg-soft) 78%, transparent)}}.chat-api-key-option.is-active{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option.is-active{background:color-mix(in srgb, var(--accent-soft) 58%, transparent)}}.chat-api-key-option.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option.is-active{border-color:color-mix(in srgb, var(--accent) 18%, transparent)}}.chat-api-key-option-icon{width:28px;height:28px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option-icon{background:color-mix(in srgb, var(--accent-soft) 65%, transparent)}}.chat-api-key-option-icon svg{width:14px;height:14px}.chat-api-key-option-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.chat-api-key-option-row{align-items:center;gap:6px;min-width:0;display:flex}.chat-api-key-option-label{letter-spacing:-.01em;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;line-height:1.25;overflow:hidden}.chat-api-key-option.is-active .chat-api-key-option-label{color:var(--accent-strong)}.chat-api-key-option-model{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;overflow:hidden}.chat-api-key-option-check{width:22px;height:22px;color:var(--accent-contrast);background:linear-gradient(145deg, var(--accent) 0%, var(--accent-strong) 100%);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option-check{background:linear-gradient(145deg, var(--accent) 0%, color-mix(in srgb, var(--accent-strong) 88%, var(--accent)) 100%)}}.chat-api-key-option-check{box-shadow:0 4px 10px var(--accent)}@supports (color:color-mix(in lab, red, red)){.chat-api-key-option-check{box-shadow:0 4px 10px color-mix(in srgb, var(--accent) 24%, transparent)}}.chat-api-key-option-check svg{width:12px;height:12px}.icon-btn{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--bg-soft);transform:translateY(-1px)}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn svg{width:16px;height:16px}.brand-mark{width:36px;height:36px;color:var(--accent-contrast);letter-spacing:.02em;background:0 0;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex;overflow:hidden}.socket-status{--status-fg:#dc2626;--status-bg:#fef2f2;--status-border:#fecaca;border:1px solid var(--status-border);background:var(--status-bg);width:36px;height:36px;color:var(--status-fg);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.socket-status svg{width:16px;height:16px;display:none}.socket-status .icon-offline{display:block}.socket-status.online{--status-fg:#2563eb;--status-bg:#eff6ff;--status-border:#93c5fd;box-shadow:0 0 0 3px #2563eb14}html[data-theme=dark] .socket-status.online{--status-fg:#60a5fa;--status-bg:#172554;--status-border:#1e40af;box-shadow:0 0 0 3px #60a5fa1f}.socket-status.online .icon-offline,.socket-status.online .icon-connecting{display:none}.socket-status.online .icon-online{display:block}.socket-status.connecting{--status-fg:#b45309;--status-bg:#fffbeb;--status-border:#fde68a;box-shadow:0 0 0 3px #d9770614}.socket-status.connecting .icon-offline,.socket-status.connecting .icon-online{display:none}.socket-status.connecting .icon-connecting{animation:.9s linear infinite spin;display:block}.socket-status:after{content:"";background:var(--status-fg);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}@keyframes spin{to{transform:rotate(360deg)}}.chat-scroll{min-height:0;max-width:var(--chat-width);-webkit-overflow-scrolling:touch;scroll-behavior:smooth;flex-direction:column;flex:1;gap:20px;width:100%;margin:0 auto;padding:18px 18px 28px;display:flex;overflow-y:auto}.msg-row{align-items:flex-start;gap:12px;width:100%;animation:.28s both msg-in;display:flex}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.msg-row.user{justify-content:flex-end}.msg-row.error{justify-content:center}.avatar.ai{width:30px;height:30px;color:var(--accent-contrast);background:0 0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-top:4px;padding:0;font-size:.65rem;font-weight:700;display:inline-flex;overflow:hidden}.brand-logo--avatar{border-radius:inherit;width:100%!important;height:100%!important}.msg{border-radius:var(--radius-msg);white-space:pre-wrap;word-break:break-word;max-width:min(100%,640px);padding:12px 16px}.msg.user{background:var(--user-bg);color:var(--user-text);border:1px solid var(--accent);border-bottom-right-radius:8px}@supports (color:color-mix(in lab, red, red)){.msg.user{border:1px solid color-mix(in srgb, var(--accent) 12%, var(--border))}}.msg.ai{background:0 0;flex:1;max-width:100%;padding-left:0;padding-right:0}.msg.error{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border);border-radius:14px;font-size:.9rem}.msg-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.msg-head .label{color:var(--muted);font-size:.75rem;font-weight:650}.msg-head-actions{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.msg-latency{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:.72rem;font-weight:600;display:inline-flex}.msg-latency.is-live{opacity:1;color:var(--accent-strong);font-variant-numeric:tabular-nums}.loading-elapsed{color:var(--accent-strong);font-variant-numeric:tabular-nums;margin-top:4px;font-size:.78rem;font-weight:650}.copy-btn{color:var(--muted);font:inherit;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-size:.72rem;transition:opacity .15s,background .15s;display:inline-flex}.msg:hover .copy-btn,.copy-btn:focus-visible,.copy-btn.copied{opacity:1}.copy-btn:hover{background:var(--bg-soft)}.copy-btn svg{width:14px;height:14px}.body-image{object-fit:cover;border:1px solid var(--border);border-radius:12px;max-width:min(280px,70vw);max-height:220px;margin:6px 0 10px;display:block}.msg.ai .body{white-space:pre-wrap;word-break:break-word;display:block}.msg.ai .body strong.stock-low{color:#dc2626;font-weight:700}.msg.ai.streaming .body:after{content:"▋";color:var(--accent);margin-left:2px;animation:1s step-end infinite blink}.answer-feedback{--af-ok:#059669;--af-ok-soft:#10b981}@supports (color:color-mix(in lab, red, red)){.answer-feedback{--af-ok-soft:color-mix(in srgb, #10b981 14%, var(--surface))}}.answer-feedback{--af-ok-border:#10b981}@supports (color:color-mix(in lab, red, red)){.answer-feedback{--af-ok-border:color-mix(in srgb, #10b981 34%, var(--border))}}.answer-feedback{--af-bad:#dc2626;--af-bad-soft:#ef4444}@supports (color:color-mix(in lab, red, red)){.answer-feedback{--af-bad-soft:color-mix(in srgb, #ef4444 12%, var(--surface))}}.answer-feedback{--af-bad-border:#ef4444}@supports (color:color-mix(in lab, red, red)){.answer-feedback{--af-bad-border:color-mix(in srgb, #ef4444 32%, var(--border))}}.answer-feedback{border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;margin-top:14px;padding:12px 14px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.answer-feedback{border:1px solid color-mix(in srgb, var(--border) 88%, var(--accent))}}.answer-feedback{background:linear-gradient(160deg, var(--accent-soft) 0%, var(--surface) 100%)}@supports (color:color-mix(in lab, red, red)){.answer-feedback{background:linear-gradient(160deg, color-mix(in srgb, var(--accent-soft) 55%, var(--surface)) 0%, color-mix(in srgb, var(--surface) 94%, var(--bg-soft)) 100%)}}.answer-feedback{box-shadow:var(--shadow-soft);animation:.28s both answer-feedback-in}html[data-theme=dark] .answer-feedback{--af-ok:#34d399;--af-ok-soft:#34d399}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .answer-feedback{--af-ok-soft:color-mix(in srgb, #34d399 12%, var(--surface))}}html[data-theme=dark] .answer-feedback{--af-ok-border:#34d399}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .answer-feedback{--af-ok-border:color-mix(in srgb, #34d399 28%, var(--border))}}html[data-theme=dark] .answer-feedback{--af-bad:#f87171;--af-bad-soft:#f87171}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .answer-feedback{--af-bad-soft:color-mix(in srgb, #f87171 12%, var(--surface))}}html[data-theme=dark] .answer-feedback{--af-bad-border:#f87171}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .answer-feedback{--af-bad-border:color-mix(in srgb, #f87171 28%, var(--border))}}.answer-feedback.is-submitting{opacity:.88}.answer-feedback-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.answer-feedback-head-text{flex-direction:column;gap:2px;min-width:0;display:flex}.answer-feedback-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:.68rem;font-weight:700}@supports (color:color-mix(in lab, red, red)){.answer-feedback-kicker{color:color-mix(in srgb, var(--accent) 78%, var(--muted))}}.answer-feedback-title{color:var(--text);font-size:.86rem;font-weight:650;line-height:1.35}.answer-feedback-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.answer-feedback-btn{appearance:none;border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:.82rem;font-weight:650;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s,color .15s;display:inline-flex}.answer-feedback-btn-icon{flex:none;width:18px;height:18px;display:inline-flex}.answer-feedback-btn-icon svg{width:18px;height:18px}.answer-feedback-btn:hover:not(:disabled){box-shadow:0 8px 18px var(--accent);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-btn:hover:not(:disabled){box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 10%, transparent)}}.answer-feedback-btn:active:not(:disabled){transform:translateY(0)}.answer-feedback-btn:focus-visible{box-shadow:var(--ring);outline:none}.answer-feedback-btn:disabled{opacity:.55;cursor:default;box-shadow:none;transform:none}.answer-feedback-btn.is-match{border-color:var(--af-ok-border);background:var(--af-ok-soft);color:var(--af-ok)}.answer-feedback-btn.is-match:hover:not(:disabled){border-color:var(--af-ok);box-shadow:0 8px 18px #10b98124}.answer-feedback-btn.is-miss{border-color:var(--af-bad-border);background:var(--af-bad-soft);color:var(--af-bad)}.answer-feedback-btn.is-miss:hover:not(:disabled){border-color:var(--af-bad);box-shadow:0 8px 18px #ef44441f}.answer-feedback-btn.is-advice{border-color:var(--accent);width:100%;margin-top:2px}@supports (color:color-mix(in lab, red, red)){.answer-feedback-btn.is-advice{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}}.answer-feedback-btn.is-advice{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-btn.is-advice{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}}.answer-feedback-btn.is-advice{color:var(--accent-strong)}.answer-feedback-btn.is-advice:hover:not(:disabled){border-color:var(--accent);box-shadow:0 8px 18px var(--accent)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-btn.is-advice:hover:not(:disabled){box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 12%, transparent)}}.answer-feedback.is-advice-only .answer-feedback-note-wrap{gap:8px}.answer-feedback-alts{flex-direction:column;gap:7px;padding-top:2px;display:flex}.answer-feedback-matched{flex-direction:column;gap:7px;display:flex}.answer-feedback-item-list{gap:.4rem;display:grid}.answer-feedback-item-row{border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:.65rem;padding:.55rem .65rem;display:flex}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.answer-feedback-item-row{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.answer-feedback-item-row.is-matched{border-color:#16a34a}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row.is-matched{border-color:color-mix(in srgb, #16a34a 35%, var(--border))}}.answer-feedback-item-row.is-matched{background:#16a34a}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row.is-matched{background:color-mix(in srgb, #16a34a 8%, var(--surface))}}.answer-feedback-item-row.is-not_matched{border-color:#dc2626}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row.is-not_matched{border-color:color-mix(in srgb, #dc2626 35%, var(--border))}}.answer-feedback-item-row.is-not_matched{background:#dc2626}@supports (color:color-mix(in lab, red, red)){.answer-feedback-item-row.is-not_matched{background:color-mix(in srgb, #dc2626 8%, var(--surface))}}.answer-feedback-item-row.is-submitting{opacity:.72}.answer-feedback-item-main{flex:1;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.answer-feedback-item-index{color:var(--muted);flex:none;font-size:.8rem;font-weight:650;line-height:1.35}.answer-feedback-item-copy{gap:.1rem;min-width:0;display:grid}.answer-feedback-item-code{word-break:break-word;font-size:.84rem;font-weight:650;line-height:1.35}.answer-feedback-item-name,.answer-feedback-item-miss{color:var(--muted);font-size:.75rem;line-height:1.3}.answer-feedback-item-miss{color:#dc2626}.answer-feedback-item-actions{flex:none;gap:.35rem;display:inline-flex}.answer-feedback-item-btn{appearance:none;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;line-height:1;display:inline-flex}.answer-feedback-item-btn-icon{width:16px;height:16px;display:block}.answer-feedback-item-btn:disabled{opacity:.55;cursor:not-allowed}.answer-feedback-item-btn.is-match{color:#166534;background:#def2e6;border-color:#16a34a47}.answer-feedback-item-btn.is-match:hover:not(:disabled){background:#ccebd7}.answer-feedback-item-btn.is-miss{color:#991b1b;background:#fbe5e5;border-color:#dc262647}.answer-feedback-item-btn.is-miss:hover:not(:disabled){background:#f8d4d4}.answer-feedback-item-badge{border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.answer-feedback-item-badge-icon{width:14px;height:14px;display:block}.answer-feedback-item-badge.is-matched{color:#166534;background:#daf0e2}.answer-feedback-item-badge.is-not_matched{color:#991b1b;background:#fae1e1}html[data-theme=dark] .answer-feedback-item-btn.is-match,html[data-theme=dark] .answer-feedback-item-badge.is-matched{color:#86efac;background:#16a34a38}html[data-theme=dark] .answer-feedback-item-btn.is-miss,html[data-theme=dark] .answer-feedback-item-badge.is-not_matched{color:#fca5a5;background:#dc262633}.answer-feedback-alts-head{align-items:center;gap:8px;display:flex}.answer-feedback-alts-label{color:var(--muted);font-size:.74rem;font-weight:600}.answer-feedback-alts-count{min-width:18px;height:18px;color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.68rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.answer-feedback-alts-count{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.answer-feedback-chips{flex-direction:column;gap:6px;display:flex}.answer-feedback-chips.is-matched-list{max-height:min(220px,36vh);padding-right:2px;overflow-y:auto}.answer-feedback-chip{appearance:none;text-align:left;border:1px solid var(--border);border-radius:11px;flex-direction:column;align-items:stretch;gap:3px;width:100%;min-width:0;padding:9px 11px;display:flex}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip{border:1px solid color-mix(in srgb, var(--border) 90%, var(--accent))}}.answer-feedback-chip{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.answer-feedback-chip{color:var(--text);font:inherit;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.answer-feedback-chip.is-interactive{cursor:pointer}.answer-feedback-chip.is-static{cursor:default;background:var(--bg-soft)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip.is-static{background:color-mix(in srgb, var(--bg-soft) 55%, var(--surface))}}.answer-feedback-chip.is-static{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip.is-static{border-color:color-mix(in srgb, var(--border) 92%, transparent)}}.answer-feedback-chip.is-interactive:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip.is-interactive:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.answer-feedback-chip.is-interactive:hover:not(:disabled){background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip.is-interactive:hover:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 45%, var(--surface))}}.answer-feedback-chip.is-interactive:hover:not(:disabled){box-shadow:0 8px 16px var(--accent);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip.is-interactive:hover:not(:disabled){box-shadow:0 8px 16px color-mix(in srgb, var(--accent) 8%, transparent)}}.answer-feedback-chip:focus-visible{box-shadow:var(--ring);outline:none}.answer-feedback-chip:disabled{opacity:.55;cursor:default;box-shadow:none;transform:none}.answer-feedback-chip-code{color:var(--accent-strong);font-size:.8rem;font-weight:700;line-height:1.35}@supports (color:color-mix(in lab, red, red)){.answer-feedback-chip-code{color:color-mix(in srgb, var(--accent-strong) 85%, var(--text))}}.answer-feedback-chip-code{overflow-wrap:anywhere;word-break:break-word;white-space:normal}.answer-feedback-chip-name{color:var(--muted);overflow-wrap:anywhere;word-break:break-word;white-space:normal;font-size:.72rem;line-height:1.4}.answer-feedback-note-wrap{flex-direction:column;gap:6px;display:flex}.answer-feedback-note-toggle{appearance:none;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;align-self:flex-start;align-items:center;gap:6px;padding:2px 0;font-size:.76rem;font-weight:600;display:inline-flex}.answer-feedback-note-toggle:hover:not(:disabled){color:var(--accent-strong)}.answer-feedback-note-toggle:disabled{opacity:.55;cursor:default}.answer-feedback-note-toggle-icon{width:14px;height:14px}.answer-feedback-note{flex-direction:column;gap:5px;min-width:0;display:flex}.answer-feedback-note-label{color:var(--muted);font-size:.72rem;font-weight:600}.answer-feedback-note input,.answer-feedback-note textarea{border:1px solid var(--border);width:100%;min-width:0}@supports (color:color-mix(in lab, red, red)){.answer-feedback-note input,.answer-feedback-note textarea{border:1px solid color-mix(in srgb, var(--border) 92%, var(--accent))}}.answer-feedback-note input,.answer-feedback-note textarea{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.answer-feedback-note input,.answer-feedback-note textarea{background:color-mix(in srgb, var(--surface) 92%, transparent)}}.answer-feedback-note input,.answer-feedback-note textarea{color:var(--text);font:inherit;resize:vertical;border-radius:10px;padding:9px 11px;font-size:.8rem;line-height:1.45;transition:border-color .15s,box-shadow .15s}.answer-feedback-note textarea{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;min-height:72px;max-height:220px}.answer-feedback-note input:focus,.answer-feedback-note textarea:focus{border-color:var(--accent);outline:none}@supports (color:color-mix(in lab, red, red)){.answer-feedback-note input:focus,.answer-feedback-note textarea:focus{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.answer-feedback-note input:focus,.answer-feedback-note textarea:focus{box-shadow:var(--ring)}.answer-feedback-note input:disabled,.answer-feedback-note textarea:disabled{opacity:.6}.answer-feedback-error{color:var(--af-bad);margin:0;font-size:.76rem;font-weight:600}.answer-feedback-pending{color:var(--accent-strong);align-items:center;gap:8px;margin:0;font-size:.76rem;font-weight:650;display:inline-flex}.answer-feedback-spinner{border:2px solid var(--accent);border-radius:999px;width:12px;height:12px}@supports (color:color-mix(in lab, red, red)){.answer-feedback-spinner{border:2px solid color-mix(in srgb, var(--accent) 28%, transparent)}}.answer-feedback-spinner{border-top-color:var(--accent);animation:.7s linear infinite answer-feedback-spin}.answer-feedback.is-saved{border-color:var(--af-ok-border);background:var(--af-ok-soft);box-shadow:none}.answer-feedback.is-saved.is-not_matched{border-color:var(--af-bad-border);background:var(--af-bad-soft)}.answer-feedback.is-saved.is-not_matched .answer-feedback-saved-icon,.answer-feedback.is-saved.is-not_matched .answer-feedback-saved-title{color:var(--af-bad)}.answer-feedback-saved-row{align-items:center;gap:10px;display:flex}.answer-feedback-saved-icon{width:28px;height:28px;color:var(--af-ok);background:currentColor;border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.answer-feedback-saved-icon{background:color-mix(in srgb, currentColor 14%, transparent)}}.answer-feedback-saved-icon svg{width:16px;height:16px}.answer-feedback-saved-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.answer-feedback-saved-title{color:var(--af-ok);font-size:.82rem;font-weight:700}.answer-feedback-saved-detail{color:var(--muted);font-size:.76rem;line-height:1.35}.answer-feedback-code{color:var(--text);word-break:break-word;font-weight:700}@keyframes answer-feedback-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes answer-feedback-spin{to{transform:rotate(360deg)}}@media (max-width:560px){.answer-feedback{padding:11px 12px 12px}.answer-feedback-actions{grid-template-columns:1fr}}@keyframes blink{50%{opacity:0}}.empty{text-align:center;width:100%;max-width:560px;margin:auto;padding:28px 8px 12px;animation:.35s both msg-in}.empty-mark{width:96px;height:96px;box-shadow:none;background:0 0;border-radius:18px;place-items:center;margin:0 auto 16px;display:grid;overflow:hidden}.empty strong{letter-spacing:-.03em;margin-bottom:8px;font-size:clamp(1.35rem,2.4vw,1.7rem);font-weight:700;display:block}.empty .desc{color:var(--muted);margin-bottom:22px;font-size:.95rem}.hints{text-align:left;gap:10px;display:grid}.hint-card{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);cursor:pointer;box-shadow:var(--shadow-soft);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;transition:transform .15s,border-color .15s,box-shadow .15s;animation:.35s both msg-in;display:grid}.hint-card:hover:not(:disabled){border-color:var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.hint-card:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}}.hint-card:hover:not(:disabled){box-shadow:var(--shadow-lift)}.hint-card:disabled{opacity:.5;cursor:not-allowed}.hint-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-strong);border-radius:12px;place-items:center;display:grid}.hint-icon svg{width:18px;height:18px}.hint-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.hint-title{font-size:.92rem;font-weight:650}.hint-desc{color:var(--muted);font-size:.78rem}.hint-arrow{color:var(--muted);font-size:1rem;transition:transform .15s,color .15s}.hint-card:hover:not(:disabled) .hint-arrow{color:var(--accent);transform:translate(2px)}.loading-panel{max-width:var(--chat-width);align-items:flex-start;gap:12px;width:100%;padding:4px 0;display:flex}.loading-panel.thinking-only{padding-left:42px}.loading-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-top:4px;animation:.8s linear infinite spin}.loading-copy{flex:1;min-width:0}.loading-copy .title{font-size:.92rem;font-weight:650}.loading-copy .detail{color:var(--muted);margin-top:2px;font-size:.82rem}.loading-dots:after{content:"";animation:1.2s steps(4,end) infinite dots}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.thinking-collapse{margin-top:8px;display:none}.thinking-collapse.visible{display:block}.thinking-collapse summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:.8rem;font-weight:650;list-style:none;display:inline-flex}.thinking-collapse summary::-webkit-details-marker{display:none}.thinking-collapse .chevron{width:14px;height:14px;transition:transform .15s}.thinking-collapse[open] .chevron{transform:rotate(180deg)}.thinking-steps{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.thinking-steps li{color:var(--muted);gap:8px;font-size:.82rem;display:flex}.thinking-steps .mark{text-align:center;flex-shrink:0;width:16px}.thinking-steps .step-title{color:var(--text);font-weight:500}.thinking-steps .step-detail{color:var(--muted);display:block}.composer{width:100%;max-width:var(--chat-width);padding:8px 16px 18px;padding-bottom:max(18px, calc(10px + env(safe-area-inset-bottom,0px)));flex-shrink:0;margin:0 auto}.composer.dragover .composer-row{border-color:var(--accent);box-shadow:var(--ring)}.attach-preview{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:14px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:none}.attach-preview.visible{display:flex}.attach-thumb{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:44px;height:44px}.attach-meta{flex:1;min-width:0}.attach-name{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:650;overflow:hidden}.attach-info{color:var(--muted);font-size:.75rem}.composer-row{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:20px;align-items:flex-end;gap:8px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;display:flex}.composer-row:focus-within{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.composer-row:focus-within{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.composer-row:focus-within{box-shadow:var(--ring)}.composer-row textarea{resize:none;color:var(--text);font:inherit;background:0 0;border:none;outline:none;flex:1;max-height:140px;padding:6px 0;line-height:1.5}.composer-row textarea::placeholder{color:var(--muted)}.send-btn{background:var(--accent);width:38px;height:38px;color:var(--accent-contrast);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .15s,filter .15s,background .15s;display:inline-flex}.send-btn:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px)}.send-btn:disabled{opacity:.35;cursor:not-allowed}.send-btn.stop{color:#fff;background:#dc2626}.send-btn svg{width:16px;height:16px}.composer-hint{text-align:center;color:var(--muted);margin-top:8px;font-size:.72rem}.sidebar-backdrop{display:none}.sidebar{width:var(--sidebar-width);background:var(--sidebar);color:var(--sidebar-text);border-right:1px solid #0000;flex-direction:column;flex-shrink:0;height:100dvh;padding:16px 12px;display:flex}.sidebar .icon-btn{color:var(--sidebar-text);background:0 0;border-color:#ffffff1f}.sidebar .icon-btn:hover:not(:disabled){background:var(--sidebar-hover)}.sidebar-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;padding:0 4px;display:flex}.sidebar-brand{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;margin:0;padding:4px 6px;display:flex}.sidebar-brand:hover{background:#ffffff0f}.sidebar-brand:focus-visible{outline-offset:2px;outline:2px solid #ffffff59}.sidebar-title{letter-spacing:-.02em;font-size:.92rem;font-weight:700;line-height:1.2}.sidebar-sub{color:var(--sidebar-muted);font-size:.72rem}.sidebar-close{display:none}.new-chat-btn{width:100%;color:var(--sidebar-text);font:inherit;box-sizing:border-box;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-bottom:16px;padding:11px 12px;font-size:.9rem;font-weight:650;text-decoration:none;transition:background .15s,border-color .15s,transform .15s;display:flex}.new-chat-btn svg{width:16px;height:16px}.new-chat-btn:hover{background:var(--sidebar-hover);border-color:#60a5fa66;transform:translateY(-1px)}.sidebar-section-head{justify-content:space-between;align-items:center;gap:8px;margin:0 4px 8px;display:flex}.sidebar-section-label{color:var(--sidebar-muted);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:.7rem;font-weight:650}.sidebar-clear-all{color:var(--sidebar-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:4px 6px;font-size:.72rem;font-weight:650;display:inline-flex}.sidebar-clear-all svg{width:13px;height:13px}.sidebar-clear-all:hover{color:#fecaca;background:#dc26261f}.conversation-list{flex-direction:column;flex:1;gap:14px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.conversation-group{flex-direction:column;gap:4px;display:flex}.conversation-group-label{color:var(--sidebar-muted);letter-spacing:.01em;padding:4px 10px 2px;font-size:.72rem;font-weight:650}.conversation-group-items{flex-direction:column;gap:2px;display:flex}.sidebar-empty{color:var(--sidebar-muted);text-align:center;padding:18px 8px;font-size:.85rem}.conversation-item{border-radius:12px;align-items:stretch;display:flex;overflow:hidden}.conversation-item.active{background:var(--sidebar-active)}.conversation-item:hover{background:var(--sidebar-hover)}.conversation-item.active:hover{background:var(--sidebar-active)}.conversation-main{text-align:left;min-width:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;flex:1;padding:10px}.conversation-title{-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;white-space:normal;word-break:break-word;-webkit-box-orient:vertical;font-size:.86rem;font-weight:550;line-height:1.35;display:-webkit-box;overflow:hidden}.conversation-delete{width:34px;color:var(--sidebar-muted);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.conversation-item:hover .conversation-delete,.conversation-item:focus-within .conversation-delete,.conversation-delete:focus-visible{opacity:1}@media (hover:none),(pointer:coarse){.conversation-delete{opacity:.7}.conversation-item.active .conversation-delete,.conversation-delete:active{opacity:1}}.conversation-delete svg{width:14px;height:14px}.conversation-delete:hover{color:#fca5a5}.sidebar-footer{border-top:1px solid #ffffff14;flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;display:flex}.sidebar-user{align-items:center;gap:10px;min-width:0;padding:8px;display:flex}.sidebar-user-avatar{color:#93c5fd;background:#3b82f62e;border:1px solid #60a5fa52;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:inline-flex}.sidebar-user-avatar-img{object-fit:cover;background:#ffffff14;padding:0}.sidebar-user-meta{flex-direction:column;min-width:0;display:flex}.sidebar-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.sidebar-user-role{color:var(--sidebar-muted);font-size:.72rem}.sidebar-action-btn{width:100%;color:var(--sidebar-text);font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:.86rem;font-weight:650;transition:background .15s,border-color .15s,color .15s;display:flex}.sidebar-action-btn svg{width:16px;height:16px}.sidebar-action-btn:hover{background:var(--sidebar-hover);border-color:#60a5fa66}.logout-btn:hover{color:#fecaca;background:#dc26261f;border-color:#f8717159}.cg-settings{z-index:80;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.cg-settings-backdrop{cursor:pointer;background:#0000008c;border:0;position:absolute;inset:0}.cg-settings-dialog{z-index:1;background:var(--surface);width:75vw;max-width:calc(100vw - 32px);height:min(860px,100dvh - 32px);max-height:calc(100dvh - 32px);color:var(--text);border:1px solid var(--border);grid-template-columns:200px minmax(0,1fr);display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.cg-settings-dialog{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-settings-dialog{border-radius:16px;overflow:hidden;box-shadow:0 24px 80px #00000047}.cg-settings-nav{background:var(--bg-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-nav{background:color-mix(in srgb, var(--bg-soft) 80%, var(--surface))}}.cg-settings-nav{border-right:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-nav{border-right:1px solid color-mix(in srgb, var(--border) 75%, transparent)}}.cg-settings-nav{flex-direction:column;gap:10px;padding:16px 10px;display:flex}.cg-settings-nav-title{padding:8px 12px 12px;font-size:.95rem;font-weight:700}.cg-settings-nav-list{flex-direction:column;gap:2px;display:flex}.cg-settings-nav-item{color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;font-weight:550;text-decoration:none;display:flex}.cg-settings-nav-item:hover{background:var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-nav-item:hover{background:color-mix(in srgb, var(--border) 35%, transparent)}}.cg-settings-nav-item.active{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-nav-item.active{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.cg-settings-nav-item.active{color:var(--accent-strong);font-weight:650}.cg-settings-nav-icon{flex-shrink:0;width:18px;height:18px;display:inline-flex}.cg-settings-nav-icon svg{width:18px;height:18px}.cg-settings-panel{background:var(--surface);flex-direction:column;min-width:0;display:flex}.cg-settings-panel-head{justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 10px;display:flex}.cg-settings-panel-head h1{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:700}.cg-settings-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.cg-settings-close:hover{background:var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-close:hover{background:color-mix(in srgb, var(--border) 40%, transparent)}}.cg-settings-close:hover{color:var(--text)}.cg-settings-close svg{width:16px;height:16px}.cg-settings-panel-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:8px 16px 18px;display:flex;overflow:auto}:is(.cg-settings-panel-body:has(.cg-test-datasets),.cg-settings-panel-body:has(.cg-test-feedback)){overflow:hidden}.cg-settings-group{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-group{border:1px solid color-mix(in srgb, var(--border) 75%, transparent)}}.cg-settings-group{background:var(--bg);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.cg-settings-group{background:color-mix(in srgb, var(--bg) 35%, var(--surface))}}.cg-settings-group{min-width:0;padding:4px 12px}.cg-settings-group.cg-settings-group-fill{flex-direction:column;flex:auto;height:100%;min-height:280px;max-height:none;padding-bottom:10px;display:flex;overflow:hidden}.cg-settings-group.cg-settings-group-fill.cg-test-datasets,.cg-settings-group.cg-settings-group-fill.cg-test-feedback{flex:1 1 0;height:auto;min-height:0}.cg-settings-section-label{color:var(--muted);padding:12px 2px 4px;font-size:.78rem;font-weight:700}.cg-settings-row{justify-content:space-between;align-items:center;gap:16px;padding:14px 2px;display:flex}.cg-settings-row+.cg-settings-row{border-top:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-row+.cg-settings-row{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.cg-settings-row-title{font-size:.92rem;font-weight:600}.cg-settings-row-desc{color:var(--muted);margin-top:3px;font-size:.8rem}.cg-settings-row-desc.is-ok{color:var(--accent-strong)}.cg-settings-row-desc.is-error{color:var(--danger-text)}.cg-settings-mono{word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.74rem}.cg-settings-action-btn{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-action-btn{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border))}}.cg-settings-action-btn{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-action-btn{background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface))}}.cg-settings-action-btn{color:var(--accent-strong);font:inherit;cursor:pointer;border-radius:10px;flex-shrink:0;padding:8px 14px;font-size:.82rem;font-weight:700}.cg-settings-action-btn:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-action-btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}}.cg-settings-action-btn:disabled{opacity:.55;cursor:not-allowed}.cg-settings-footnote{color:var(--muted);margin:14px 2px 0;font-size:.78rem;line-height:1.5}.cg-test-tabs{margin:0 0 14px}.cg-test-datasets{flex-direction:column;gap:10px;min-height:0;display:flex}.cg-test-datasets-top{flex-direction:column;flex-shrink:0;gap:10px;padding-top:6px;display:flex}.cg-test-datasets-intro .cg-settings-row-title{margin-bottom:4px}.cg-test-datasets-toolbar{border:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-toolbar{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-test-datasets-toolbar{background:var(--bg);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-toolbar{background:color-mix(in srgb, var(--bg) 55%, var(--surface))}}.cg-test-datasets-field{color:var(--muted);flex-direction:column;gap:6px;font-size:.78rem;font-weight:650;display:flex}.cg-test-datasets-field select{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-field select{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-test-datasets-field select{background:var(--surface);color:var(--text);font:inherit;border-radius:10px;min-width:120px;padding:9px 12px;font-weight:550}.cg-test-datasets-count-select{min-width:148px}.cg-test-datasets-count-select .cg-theme-select-trigger{min-height:40px;padding:8px 12px}.cg-test-datasets-count-select .cg-theme-select-panel{min-width:100%}.cg-test-datasets-check{color:var(--text);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding-bottom:8px;font-size:.84rem;font-weight:550;display:inline-flex}.cg-test-datasets-check input{width:15px;height:15px;accent-color:var(--accent)}.cg-test-datasets-shuffle{margin-left:auto}.cg-test-datasets-meta{color:var(--muted);font-size:.8rem}.cg-test-datasets-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;flex:1;min-height:0;margin:0 -4px;padding:2px 4px 8px;overflow:hidden auto}.cg-test-datasets-empty{border:1px dashed var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-empty{border:1px dashed color-mix(in srgb, var(--border) 85%, transparent)}}.cg-test-datasets-empty{text-align:center;color:var(--muted);background:var(--bg);border-radius:14px;padding:36px 16px;font-size:.9rem}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-empty{background:color-mix(in srgb, var(--bg) 55%, transparent)}}.cg-test-datasets-empty{flex-direction:column;align-items:center;gap:6px;display:flex}.cg-test-datasets-empty strong{color:var(--text);font-size:.95rem}.cg-test-datasets-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cg-test-datasets-item{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-item{border:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.cg-test-datasets-item{background:var(--surface);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-item{background:color-mix(in srgb, var(--surface) 96%, var(--bg))}}.cg-test-datasets-item{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px;transition:border-color .15s,box-shadow .15s;display:grid}.cg-test-datasets-item:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-item:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}}.cg-test-datasets-item:hover{box-shadow:0 6px 18px var(--text)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-item:hover{box-shadow:0 6px 18px color-mix(in srgb, var(--text) 5%, transparent)}}.cg-test-datasets-item-main{flex-direction:column;gap:8px;min-width:0;display:flex}.cg-test-datasets-item-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cg-test-datasets-index{width:22px;height:22px;color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-index{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.cg-test-datasets-badge{color:var(--text);background:var(--bg);border-radius:999px;align-items:center;padding:4px 9px;font-size:.72rem;font-weight:650;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-badge{background:color-mix(in srgb, var(--bg) 70%, transparent)}}.cg-test-datasets-badge{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-badge{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-test-datasets-field-tag{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:650}.cg-test-datasets-actions{flex-direction:column;align-items:stretch;gap:6px;min-width:92px;display:inline-flex}.cg-test-datasets-copy,.cg-test-datasets-run{white-space:nowrap;padding:8px 12px;font-size:.8rem}.cg-test-datasets-question{white-space:pre-wrap;word-break:break-word;font:inherit;color:var(--text);background:var(--bg);margin:0;font-size:.9rem;line-height:1.45}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-question{background:color-mix(in srgb, var(--bg) 65%, transparent)}}.cg-test-datasets-question{border-radius:10px;max-height:160px;padding:10px 12px;overflow-y:auto}.cg-test-datasets-footer{border-top:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 2px 2px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-test-datasets-footer{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.cg-test-datasets-footer-count{color:var(--muted);font-size:.82rem;font-weight:600}.cg-test-datasets-footer-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:inline-flex}.cg-test-feedback{flex-direction:column;gap:10px;min-height:0;display:flex}.cg-test-feedback-top{flex-direction:column;flex-shrink:0;gap:10px;padding-top:6px;display:flex}.cg-test-feedback-intro .cg-settings-row-title{margin-bottom:4px}.cg-test-feedback-toolbar{border:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-toolbar{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-test-feedback-toolbar{background:var(--bg);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-toolbar{background:color-mix(in srgb, var(--bg) 55%, var(--surface))}}.cg-test-feedback-filter-select{min-width:168px}.cg-test-feedback-filter-select .cg-theme-select-trigger{min-height:40px;padding:8px 12px}.cg-test-feedback-refresh{margin-left:auto}.cg-test-feedback-stats{flex-wrap:wrap;gap:8px;display:flex}.cg-test-feedback-stat{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.74rem;font-weight:700;display:inline-flex}.cg-test-feedback-stat.is-match{color:#059669;border-color:#10b981}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-match{border-color:color-mix(in srgb, #10b981 32%, var(--border))}}.cg-test-feedback-stat.is-match{background:#10b981}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-match{background:color-mix(in srgb, #10b981 10%, var(--surface))}}.cg-test-feedback-stat.is-miss{color:#dc2626;border-color:#ef4444}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-miss{border-color:color-mix(in srgb, #ef4444 30%, var(--border))}}.cg-test-feedback-stat.is-miss{background:#ef4444}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-miss{background:color-mix(in srgb, #ef4444 10%, var(--surface))}}.cg-test-feedback-stat.is-alt{color:var(--accent-strong);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-alt{border-color:color-mix(in srgb, var(--accent) 30%, var(--border))}}.cg-test-feedback-stat.is-alt{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-stat.is-alt{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}}.cg-test-feedback-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.cg-test-feedback-item{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:12px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-item{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-test-feedback-item{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-item{background:color-mix(in srgb, var(--surface) 92%, transparent)}}.cg-test-feedback-item:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-item:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}}.cg-test-feedback-item-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.cg-test-feedback-badge{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;padding:4px 9px;font-size:.72rem;font-weight:750;display:inline-flex}.cg-test-feedback-badge.is-matched{color:#059669;border-color:#10b981}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-matched{border-color:color-mix(in srgb, #10b981 34%, var(--border))}}.cg-test-feedback-badge.is-matched{background:#10b981}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-matched{background:color-mix(in srgb, #10b981 12%, var(--surface))}}.cg-test-feedback-badge.is-not_matched{color:#dc2626;border-color:#ef4444}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-not_matched{border-color:color-mix(in srgb, #ef4444 32%, var(--border))}}.cg-test-feedback-badge.is-not_matched{background:#ef4444}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-not_matched{background:color-mix(in srgb, #ef4444 12%, var(--surface))}}.cg-test-feedback-badge.is-selected{color:var(--accent-strong);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-selected{border-color:color-mix(in srgb, var(--accent) 34%, var(--border))}}.cg-test-feedback-badge.is-selected{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-badge.is-selected{background:color-mix(in srgb, var(--accent-soft) 60%, var(--surface))}}.cg-test-feedback-time{color:var(--muted);font-size:.74rem;font-weight:600}.cg-test-feedback-query{white-space:pre-wrap;word-break:break-word;font:inherit;color:var(--text);margin:0;font-size:.86rem;font-weight:650;line-height:1.45}.cg-test-feedback-meta-row{color:var(--muted);flex-wrap:wrap;gap:10px 16px;font-size:.78rem;display:flex}.cg-test-feedback-meta-row strong{color:var(--text);font-weight:700}.cg-test-feedback-note{color:var(--muted);background:var(--bg-soft);border-radius:10px;padding:8px 10px;font-size:.78rem;line-height:1.4}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-note{background:color-mix(in srgb, var(--bg-soft) 70%, transparent)}}.cg-test-feedback-note{border:1px dashed var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-test-feedback-note{border:1px dashed color-mix(in srgb, var(--border) 85%, transparent)}}.cg-test-feedback-foot{flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:2px;display:flex}.cg-test-feedback-id,.cg-test-feedback-confidence{color:var(--muted);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem}@media (max-width:640px){.cg-test-datasets-shuffle,.cg-test-feedback-refresh{width:100%;margin-left:0}.cg-test-datasets-item{grid-template-columns:1fr}.cg-test-datasets-actions{flex-direction:row;width:100%;min-width:0}.cg-test-datasets-actions .cg-settings-secondary,.cg-test-datasets-actions .cg-settings-primary{flex:1}.cg-test-datasets-footer{flex-direction:column;align-items:stretch}.cg-test-datasets-footer-actions{width:100%;margin-left:0}.cg-test-datasets-footer-actions .cg-settings-secondary,.cg-test-datasets-footer-actions .cg-settings-primary{flex:1}}.cg-settings-segment{border:1px solid var(--border);display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-settings-segment{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-settings-segment{background:var(--bg);border-radius:10px;overflow:hidden}.cg-settings-segment-stretch{width:100%;display:flex}.cg-settings-segment-stretch button{flex:1;min-width:0}.cg-settings-segment button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 14px;font-size:.82rem;font-weight:650}.cg-settings-segment button:disabled{opacity:.55;cursor:not-allowed}.cg-settings-segment button.active{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-segment button.active{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent)}}.cg-settings-segment button.active:not(:disabled){color:var(--accent-strong);background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-segment button.active:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface))}}.cg-settings-account-card{border:1px solid var(--border);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-card{border:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.cg-settings-account-card{background:radial-gradient(120% 80% at 0% 0%, var(--accent-soft), transparent 55%), linear-gradient(180deg, var(--surface), var(--surface));border-radius:18px}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-card{background:radial-gradient(120% 80% at 0% 0%, color-mix(in srgb, var(--accent-soft) 55%, transparent), transparent 55%), linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, var(--bg)), var(--surface))}}.cg-settings-account-card{flex-direction:column;gap:16px;padding:18px;display:flex;box-shadow:inset 0 1px #fff6}.cg-settings-account-card.is-editing{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-card.is-editing{border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}}.cg-settings-account-card.is-editing{box-shadow:0 0 0 1px var(--accent), 0 10px 28px var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-card.is-editing{box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 10%, transparent), 0 10px 28px color-mix(in srgb, var(--accent) 8%, transparent)}}.cg-settings-account-hero{align-items:center;gap:16px;display:flex}.cg-settings-account-meta{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cg-settings-account-edit{border:1px solid var(--accent);flex-shrink:0;align-items:center;gap:7px;margin-left:auto;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-edit{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border))}}.cg-settings-account-edit{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-edit{background:color-mix(in srgb, var(--accent-soft) 45%, var(--surface))}}.cg-settings-account-edit{color:var(--accent-strong);font:inherit;cursor:pointer;border-radius:999px;padding:9px 14px;font-size:.84rem;font-weight:650;transition:background .15s,border-color .15s,transform .15s}.cg-settings-account-edit:hover:not(:disabled){background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-edit:hover:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 75%, var(--surface))}}.cg-settings-account-edit:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-edit:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.cg-settings-account-edit:active:not(:disabled){transform:translateY(1px)}.cg-settings-account-edit:disabled{opacity:.55;cursor:not-allowed}.cg-settings-avatar-wrap,.cg-settings-avatar-btn{flex-shrink:0;position:relative}.cg-settings-avatar{object-fit:cover;border:3px solid var(--surface);border-radius:999px;flex-shrink:0;width:72px;height:72px;display:block}@supports (color:color-mix(in lab, red, red)){.cg-settings-avatar{border:3px solid color-mix(in srgb, var(--surface) 80%, #fff)}}.cg-settings-avatar{box-shadow:0 0 0 1px var(--border), 0 8px 18px var(--text)}@supports (color:color-mix(in lab, red, red)){.cg-settings-avatar{box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent), 0 8px 18px color-mix(in srgb, var(--text) 8%, transparent)}}.cg-settings-avatar.fallback{background:linear-gradient(145deg, var(--accent), var(--accent-strong));color:var(--accent-contrast);justify-content:center;align-items:center;font-size:1.35rem;font-weight:700;display:inline-flex}.cg-settings-avatar-btn{cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0;display:inline-flex;overflow:visible}.cg-settings-avatar-btn:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-avatar-btn:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 70%, transparent)}}.cg-settings-avatar-btn:focus-visible{outline-offset:3px}.cg-settings-avatar-btn:disabled{cursor:wait}.cg-settings-avatar-btn .cg-settings-avatar{transition:filter .15s,transform .15s}.cg-settings-avatar-btn:hover:not(:disabled) .cg-settings-avatar,.cg-settings-avatar-btn:focus-visible .cg-settings-avatar{filter:brightness(.92);transform:scale(1.02)}.cg-settings-avatar-overlay{color:#fff;opacity:0;pointer-events:none;background:#0b122085;border-radius:999px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:3px}.cg-settings-avatar-btn:hover .cg-settings-avatar-overlay,.cg-settings-avatar-btn:focus-visible .cg-settings-avatar-overlay,.cg-settings-avatar-btn.is-uploading .cg-settings-avatar-overlay{opacity:1}.cg-settings-avatar-badge{background:linear-gradient(145deg, var(--accent), var(--accent-strong));width:26px;height:26px;color:var(--accent-contrast);border:2px solid var(--surface);box-shadow:0 4px 10px var(--accent);border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:0;right:0}@supports (color:color-mix(in lab, red, red)){.cg-settings-avatar-badge{box-shadow:0 4px 10px color-mix(in srgb, var(--accent) 28%, transparent)}}.cg-settings-avatar-badge{pointer-events:none}.cg-settings-avatar-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:999px;width:18px;height:18px;animation:.7s linear infinite cg-spin}@keyframes cg-spin{to{transform:rotate(360deg)}}.cg-settings-account-name{letter-spacing:-.01em;font-size:1.12rem;font-weight:750;line-height:1.25}.cg-settings-account-email{color:var(--muted);word-break:break-all;font-size:.86rem}.cg-settings-account-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.cg-settings-account-chip{color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:650;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-chip{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.cg-settings-account-chip{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-chip{border:1px solid color-mix(in srgb, var(--accent) 18%, transparent)}}.cg-settings-account-hint{color:var(--muted);font-size:.78rem}.cg-settings-alert{border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger-text);border-radius:12px;padding:10px 12px;font-size:.86rem}.cg-settings-alert.success{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-alert.success{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}}.cg-settings-alert.success{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-alert.success{background:color-mix(in srgb, var(--accent) 12%, var(--bg))}}.cg-settings-alert.success{color:var(--text)}.cg-settings-account-form{border-top:1px solid var(--border);flex-direction:column;gap:14px;padding-top:4px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-form{border-top:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-settings-account-field{max-width:420px;color:var(--muted);flex-direction:column;gap:7px;font-size:.78rem;font-weight:650;display:flex}.cg-settings-account-field input{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-field input{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-settings-account-field input{background:var(--bg)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-field input{background:color-mix(in srgb, var(--bg) 70%, var(--surface))}}.cg-settings-account-field input{color:var(--text);font:inherit;border-radius:12px;padding:11px 13px;font-size:.95rem;font-weight:550;transition:border-color .15s,box-shadow .15s,background .15s}.cg-settings-account-field input:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-field input:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 30%, var(--border))}}.cg-settings-account-field input:focus{border-color:var(--accent);outline:none}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-field input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}}.cg-settings-account-field input:focus{box-shadow:0 0 0 3px var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-account-field input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}}.cg-settings-account-field input:focus{background:var(--surface)}.cg-settings-account-field input:disabled{opacity:.65}.cg-settings-account-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:640px){.cg-settings-account-hero{flex-wrap:wrap}.cg-settings-account-edit{justify-content:center;width:100%;margin-left:0}.cg-settings-account-field{max-width:none}.cg-settings-account-actions{width:100%}.cg-settings-account-actions .cg-settings-secondary,.cg-settings-account-actions .cg-settings-primary{flex:1}}.cg-settings-muted{color:var(--muted);margin:0;padding:10px 2px 14px;font-size:.86rem}.cg-settings-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px 0 4px;display:grid}.cg-settings-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:.78rem;font-weight:650;display:flex}.cg-settings-form label.full{grid-column:1/-1}.cg-settings-form input,.cg-settings-form select{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-form input,.cg-settings-form select{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-settings-form input,.cg-settings-form select{background:var(--bg);color:var(--text);font:inherit;border-radius:10px;padding:10px 12px;font-weight:500}.cg-settings-form select{width:100%}.cg-theme-select{width:100%;position:relative}.cg-theme-select.is-disabled{opacity:.55}.cg-theme-select-trigger{border:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-trigger{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-theme-select-trigger{background:var(--bg);color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;padding:10px 12px;font-weight:500}.cg-theme-select-trigger:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.cg-theme-select.is-open .cg-theme-select-trigger{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-theme-select.is-open .cg-theme-select-trigger{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}}.cg-theme-select.is-open .cg-theme-select-trigger{box-shadow:var(--ring)}.cg-theme-select-trigger:disabled{cursor:not-allowed}.cg-theme-select-trigger-text{flex-direction:column;gap:2px;min-width:0;display:flex}.cg-theme-select-trigger-text strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700;overflow:hidden}.cg-theme-select-trigger-text span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.cg-theme-select-trigger-text em{color:var(--muted);font-style:normal}.cg-theme-select-trigger svg{width:16px;height:16px;color:var(--muted);flex-shrink:0;transition:transform .16s}.cg-theme-select-trigger svg.is-open{transform:rotate(180deg)}.cg-theme-select-panel{z-index:30;border:1px solid var(--border);flex-direction:column;max-height:min(320px,46vh);display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-panel{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-theme-select-panel{background:var(--surface);box-shadow:var(--shadow-lift);border-radius:12px}.cg-theme-select-search{border-bottom:1px solid var(--border);padding:10px 10px 8px}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-search{border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.cg-theme-select-search{background:var(--bg-soft)}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-search{background:color-mix(in srgb, var(--bg-soft) 65%, var(--surface))}}.cg-theme-select-search input{border:1px solid var(--border);width:100%}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-search input{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-theme-select-search input{background:var(--bg);color:var(--text);font:inherit;border-radius:8px;padding:8px 10px;font-size:.84rem}.cg-theme-select-search input:focus{border-color:var(--accent);outline:none}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-search input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}}.cg-theme-select-search input:focus{box-shadow:var(--ring)}.cg-theme-select-list{margin:0;padding:6px;list-style:none;overflow:auto}.cg-theme-select-empty{color:var(--muted);text-align:center;padding:14px 10px;font-size:.82rem}.cg-theme-select-option{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 10px;display:flex}.cg-theme-select-option:hover:not(:disabled){background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-option:hover:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 55%, transparent)}}.cg-theme-select-option.is-active{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-option.is-active{background:color-mix(in srgb, var(--accent-soft) 80%, var(--surface))}}.cg-theme-select-option.is-active{color:var(--accent-strong)}.cg-theme-select-option:disabled{opacity:.45;cursor:not-allowed}.cg-theme-select-option-title{align-items:center;gap:8px;font-size:.86rem;font-weight:700;display:inline-flex}.cg-theme-select-option-hint{color:var(--muted);background:var(--border);border-radius:999px;align-items:center;padding:1px 7px;font-size:.68rem;font-weight:650;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-theme-select-option-hint{background:color-mix(in srgb, var(--border) 40%, transparent)}}.cg-theme-select-option-sub{color:var(--muted);font-size:.74rem}.cg-model-pick-hint{margin:0;line-height:1.45}.cg-settings-actions{padding:6px 0 14px}.cg-settings-primary{background:var(--accent);color:var(--accent-contrast);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-size:.86rem;font-weight:700}.cg-settings-primary:hover{background:var(--accent-strong)}.cg-settings-primary:disabled{opacity:.55;cursor:not-allowed}.cg-settings-secondary{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-secondary{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-settings-secondary{color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:10px 14px;font-size:.86rem;font-weight:650}.cg-settings-secondary:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-secondary:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.cg-settings-secondary:disabled{opacity:.55;cursor:not-allowed}.cg-settings-danger{color:#fff;font:inherit;cursor:pointer;background:#b91c1c;border:0;border-radius:10px;padding:10px 14px;font-size:.86rem;font-weight:700}.cg-settings-danger:hover:not(:disabled){background:#991b1b}.cg-settings-danger:disabled{opacity:.55;cursor:not-allowed}.cg-nested-dialog-panel-sm{width:min(420px,100%)}.cg-confirm-copy{padding:6px 2px 10px}.cg-confirm-copy p{color:var(--text);margin:0;font-size:.92rem;line-height:1.5}.cg-confirm-copy strong{font-weight:700}.cg-confirm-hint{color:var(--muted)!important;margin-top:8px!important;font-size:.82rem!important}.cg-users-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 8px;display:flex}.cg-users-toolbar-left{flex-wrap:wrap;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.cg-users-toolbar .cg-settings-section-label{flex-shrink:0;padding:0}.cg-users-search{flex:1;align-items:center;min-width:min(260px,100%);max-width:320px;display:flex;position:relative}.cg-users-search svg{width:15px;height:15px;color:var(--muted);pointer-events:none;position:absolute;left:10px}.cg-users-search input{border:1px solid var(--border);width:100%}@supports (color:color-mix(in lab, red, red)){.cg-users-search input{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-users-search input{background:var(--bg);color:var(--text);font:inherit;border-radius:10px;padding:8px 12px 8px 34px;font-size:.84rem;font-weight:500}.cg-users-search input:focus{border-color:var(--accent);outline:none}@supports (color:color-mix(in lab, red, red)){.cg-users-search input:focus{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cg-users-add-btn{align-items:center;gap:8px;display:inline-flex}.cg-users-add-btn svg{width:16px;height:16px}.cg-role-badge{letter-spacing:.02em;background:var(--border);border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-role-badge{background:color-mix(in srgb, var(--border) 35%, transparent)}}.cg-role-badge{color:var(--muted)}.cg-role-badge.admin{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-role-badge.admin{background:color-mix(in srgb, var(--accent) 16%, transparent)}}.cg-role-badge.admin{color:var(--accent-strong)}.cg-status-badge{letter-spacing:.02em;background:var(--border);border-radius:999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-status-badge{background:color-mix(in srgb, var(--border) 35%, transparent)}}.cg-status-badge{color:var(--muted)}.cg-status-badge.pending{color:#b45309;background:#f59e0b2e}.cg-status-badge.active{color:#15803d;background:#16a34a29}.cg-status-badge.cancelled{color:#b91c1c;background:#dc262624}.cg-icon-action{box-sizing:border-box;background:var(--border);border:1px solid #0000;width:34px;height:34px}@supports (color:color-mix(in lab, red, red)){.cg-icon-action{background:color-mix(in srgb, var(--border) 28%, transparent)}}.cg-icon-action{color:var(--muted);cursor:pointer;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,border-color .15s,transform .15s;display:inline-flex}.cg-icon-action svg{width:16px;height:16px}.cg-icon-action:hover:not(:disabled){color:var(--text);background:var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-icon-action:hover:not(:disabled){background:color-mix(in srgb, var(--border) 48%, transparent)}}.cg-icon-action:hover:not(:disabled){transform:translateY(-1px)}.cg-icon-action.edit:hover:not(:disabled){color:var(--accent-strong);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-icon-action.edit:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 12%, transparent)}}.cg-icon-action.edit:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-icon-action.edit:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 28%, transparent)}}.cg-icon-action.danger:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-bg)}.cg-icon-action.toggle.is-on{color:#15803d;background:#16a34a24;border-color:#16a34a59}.cg-icon-action.toggle:hover:not(:disabled){color:#15803d;background:#16a34a1f;border-color:#16a34a66}.cg-icon-action.toggle.is-on:hover:not(:disabled){color:#b91c1c;background:#dc26261f;border-color:#dc262659}.cg-icon-action:disabled{opacity:.45;cursor:not-allowed;transform:none}.cg-nested-dialog{z-index:90;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.cg-nested-dialog-backdrop{cursor:pointer;background:#00000073;border:0;position:absolute;inset:0}.cg-nested-dialog-panel{z-index:1;background:var(--surface);border:1px solid var(--border);width:min(520px,100%);max-height:min(640px,100% - 24px);position:relative;overflow:auto}@supports (color:color-mix(in lab, red, red)){.cg-nested-dialog-panel{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-nested-dialog-panel{border-radius:14px;flex-direction:column;display:flex;box-shadow:0 18px 48px #00000047}.cg-nested-dialog-panel:has(.cg-theme-select.is-open){overflow:visible}.cg-nested-dialog-head{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 8px;display:flex}.cg-nested-dialog-head h2{margin:0;font-size:1.02rem;font-weight:700}.cg-nested-dialog-body{flex-direction:column;gap:10px;padding:4px 16px 8px;display:flex}.cg-nested-dialog-foot{justify-content:flex-end;gap:8px;padding:10px 16px 16px;display:flex}.cg-settings-table-wrap{flex:1;min-height:0;margin:0 -4px;padding:0 4px 8px;overflow:auto}.cg-settings-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:720px;font-size:.84rem}.cg-settings-table th,.cg-settings-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 8px}@supports (color:color-mix(in lab, red, red)){.cg-settings-table th,.cg-settings-table td{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent)}}.cg-settings-table th,.cg-settings-table td{vertical-align:middle}.cg-settings-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:var(--bg);font-size:.72rem;font-weight:700;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.cg-settings-table th{background:color-mix(in srgb, var(--bg) 55%, var(--surface))}}.cg-settings-table th{z-index:1}.cg-settings-table .col-user{width:42%}.cg-settings-table .col-role{width:88px}.cg-settings-table .col-status{width:110px}.cg-settings-table .col-actions{text-align:right;width:128px}.cg-settings-table .cell-ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cg-settings-cell-title{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.cg-settings-cell-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.76rem;overflow:hidden}.cg-quota-cell{flex-direction:column;gap:3px;min-width:0;display:flex}.cg-quota-cell-compact{flex-direction:row;align-items:center;gap:8px}.cg-quota-cell-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cg-quota-cell-meta{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.cg-quota-meter{background:var(--border);border-radius:999px;height:7px}@supports (color:color-mix(in lab, red, red)){.cg-quota-meter{background:color-mix(in srgb, var(--border) 70%, transparent)}}.cg-quota-meter{overflow:hidden}.cg-quota-meter.lg{height:12px}.cg-quota-meter>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .18s;display:block}.cg-quota-meter.plain>span{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-quota-meter.plain>span{background:color-mix(in srgb, var(--accent) 45%, var(--border))}}.cg-quota-meter.plain:not(.has-usage)>span{width:0%!important}.cg-quota-meter.warm>span{background:#d97706}.cg-quota-meter.hot>span{background:#dc2626}.cg-icon-action.quota{color:var(--accent-strong)}.cg-quota-status{letter-spacing:.01em;border-radius:999px;align-items:center;width:fit-content;margin-top:2px;padding:1px 7px;font-size:.68rem;font-weight:650;display:inline-flex}.cg-quota-status.ok{color:#1d4ed8;background:#dbeafecc}.cg-quota-status.warn{color:#b45309;background:#ffedd5d9}.cg-quota-status.bad{color:#b91c1c;background:#fee2e2d9}.cg-quota-status.muted{color:var(--muted);background:var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-quota-status.muted{background:color-mix(in srgb, var(--border) 45%, transparent)}}html[data-theme=dark] .cg-quota-status.ok{color:#93c5fd;background:#1e3a5fb3}html[data-theme=dark] .cg-quota-status.warn{color:#fbbf24;background:#78350f8c}html[data-theme=dark] .cg-quota-status.bad{color:#fca5a5;background:#7f1d1d8c}.cg-quota-detail{flex-direction:column;gap:16px;display:flex}.cg-quota-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cg-quota-detail-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.cg-quota-key-settings{padding:0}.cg-switch-field{gap:8px}.cg-switch{border:1px solid var(--border);align-items:center;gap:10px;width:fit-content;max-width:100%;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cg-switch{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-switch{background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:6px 12px 6px 6px}.cg-switch-thumb{background:var(--border);border-radius:999px;flex-shrink:0;width:38px;height:22px;position:relative}@supports (color:color-mix(in lab, red, red)){.cg-switch-thumb{background:color-mix(in srgb, var(--border) 80%, transparent)}}.cg-switch-thumb{transition:background .16s}.cg-switch-thumb:after{content:"";background:var(--surface);border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.cg-switch.is-on{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-switch.is-on{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.cg-switch.is-on{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-switch.is-on{background:color-mix(in srgb, var(--accent-soft) 55%, var(--surface))}}.cg-switch.is-on .cg-switch-thumb{background:var(--accent)}.cg-switch.is-on .cg-switch-thumb:after{transform:translate(16px)}.cg-switch-label{color:var(--text);font-size:.82rem;font-weight:650}.cg-switch:disabled{opacity:.55;cursor:not-allowed}.cg-quota-detail-meter{border:1px solid var(--border);flex-direction:column;gap:8px;padding:14px;display:flex}@supports (color:color-mix(in lab, red, red)){.cg-quota-detail-meter{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.cg-quota-detail-meter{background:var(--bg-soft);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.cg-quota-detail-meter{background:color-mix(in srgb, var(--bg-soft) 70%, var(--surface))}}.cg-quota-detail-meter-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.cg-quota-detail-meter-top strong{font-size:1.05rem}.cg-quota-detail-meter-top span{color:var(--muted);font-size:.82rem;font-weight:650}.cg-quota-detail-grid{grid-template-columns:1fr 1fr;gap:10px 12px;margin:0;display:grid}.cg-quota-detail-grid>div{background:var(--bg);border-radius:10px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.cg-quota-detail-grid>div{background:color-mix(in srgb, var(--bg) 55%, var(--surface))}}.cg-quota-detail-grid>div{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-quota-detail-grid>div{border:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.cg-quota-detail-grid dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px;font-size:.72rem;font-weight:700}.cg-quota-detail-grid dd{margin:0;font-size:.92rem;font-weight:650}.cg-quota-detail-note{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.cg-settings-inline-actions{white-space:nowrap;vertical-align:middle;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.cg-settings-inline-actions button{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-inline-actions button{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-settings-inline-actions button{color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:5px 9px;font-size:.76rem;font-weight:650}.cg-settings-inline-actions button:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-inline-actions button:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.cg-settings-inline-actions button.danger:hover{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger-text)}.cg-role-select{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-role-select{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-role-select{background:var(--surface);color:var(--text);font:inherit;border-radius:8px;width:100%;max-width:108px;padding:6px 8px;font-size:.78rem;font-weight:650}.cg-role-select.admin{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-role-select.admin{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}}.cg-role-select.admin{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-role-select.admin{background:color-mix(in srgb, var(--accent) 10%, var(--surface))}}.cg-settings-pagination{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:8px;display:flex}.cg-settings-pagination .cg-settings-muted{padding:0}.cg-settings-pagination-actions{align-items:center;gap:8px;display:inline-flex}.cg-settings-pagination-actions button{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-pagination-actions button{border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}}.cg-settings-pagination-actions button{color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px;font-size:.78rem;font-weight:650}.cg-settings-pagination-actions button:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cg-settings-pagination-actions button:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}}.cg-settings-pagination-actions button:disabled{opacity:.45;cursor:not-allowed}.cg-settings-page-indicator{color:var(--muted);text-align:center;min-width:72px;font-size:.78rem;font-weight:650}.cg-badge{border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.cg-badge.on{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.cg-badge.on{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}}.cg-badge.on{color:var(--accent-strong)}.cg-badge.off{background:var(--muted)}@supports (color:color-mix(in lab, red, red)){.cg-badge.off{background:color-mix(in srgb, var(--muted) 18%, transparent)}}.cg-badge.off{color:var(--muted)}.cg-settings-user{align-items:center;gap:10px;min-width:0;display:flex}.cg-settings-user>div{min-width:0}.cg-user-provider{color:var(--muted);text-transform:lowercase;font-weight:550}.cg-settings-user img,.cg-settings-user>span{object-fit:cover;border-radius:999px;flex-shrink:0;width:28px;height:28px}.cg-settings-user>span{background:linear-gradient(145deg, var(--accent), var(--accent-strong));color:var(--accent-contrast);justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:inline-flex}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem}@media (max-width:820px){.cg-settings{padding:0}.cg-settings-dialog{width:100%;height:100dvh;max-height:100dvh;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);border-radius:0;grid-template-rows:auto 1fr;grid-template-columns:1fr}.cg-settings-nav{border-right:0;border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.cg-settings-nav{border-bottom:1px solid color-mix(in srgb, var(--border) 75%, transparent)}}.cg-settings-nav{padding:10px}.cg-settings-nav-title{display:none}.cg-settings-nav-list{flex-direction:row;gap:4px;overflow-x:auto}.cg-settings-nav-item{white-space:nowrap;padding:8px 10px;font-size:.8rem}.cg-settings-nav-icon{display:none}.cg-settings-form{grid-template-columns:1fr}.cg-settings-table{min-width:520px}.cg-settings-table .col-actions{width:132px}}@media (max-width:900px){.sidebar{z-index:40;width:min(var(--sidebar-width), calc(100vw - 56px));max-width:100%;height:100dvh;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:12px 0 40px #00000047}.sidebar.open{transform:translate(0)}.sidebar-close{display:inline-flex}.sidebar-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:30;opacity:0;pointer-events:none;background:#080e0d73;transition:opacity .2s;display:block;position:fixed;inset:0}.sidebar-backdrop.visible{opacity:1;pointer-events:auto}.chat-header{padding:10px 12px;padding-top:max(10px, env(safe-area-inset-top,0px));gap:8px}.brand{flex:1;gap:8px;min-width:0}.brand h1{font-size:.9rem}.header-sub{max-width:min(48vw,180px);font-size:.7rem}.header-actions{flex-shrink:0;gap:6px}.chat-api-key-select{max-width:min(220px,44vw)}.chat-tabs{min-height:40px;padding:0 8px 0 10px}.chat-tab{min-width:96px;max-width:150px}.chat-scroll{gap:16px;padding:14px 12px 20px}.composer{padding:6px 12px 14px;padding-bottom:max(14px, calc(8px + env(safe-area-inset-bottom,0px)))}.composer-row{border-radius:18px;gap:6px;padding:8px 10px}.composer-hint{display:none}.msg{max-width:100%;padding:10px 12px}.msg.ai{padding-left:0;padding-right:0}.avatar.ai{width:26px;height:26px;font-size:.58rem}.empty{padding:24px 8px}.hint-card{grid-template-columns:auto 1fr;padding:12px}.hint-arrow{display:none}.copy-btn{opacity:1}.login-page{padding:18px 14px;padding-top:max(18px, env(safe-area-inset-top,0px));padding-bottom:max(18px, env(safe-area-inset-bottom,0px));align-items:flex-start}}@media (max-width:640px){.chat-api-key-select{max-width:min(188px,48vw)}.chat-api-key-trigger-foot{display:none}.chat-api-key-menu{min-width:min(260px,100vw - 24px)}.chat-tab-main{padding:7px 2px 7px 8px;font-size:.75rem}.send-btn{border-radius:11px;width:36px;height:36px}.body-image{max-width:min(100%,78vw)}.hints{gap:8px}.hint-icon{border-radius:10px;width:34px;height:34px}}@media (min-width:901px){.sidebar-backdrop{display:none!important}.chat-header .brand>.icon-btn{display:none}}.auth-loading{min-height:100dvh;color:var(--muted);background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:28px 18px;display:flex;position:relative;overflow:auto}.login-ambient{pointer-events:none;background:radial-gradient(1000px 520px at 12% 10%,#3b82f62e,#0000 55%),radial-gradient(820px 460px at 90% 0,#a78bfa24,#0000 50%),radial-gradient(700px 400px at 70% 80%,#38bdf81f,#0000 55%),linear-gradient(#fff 0%,#f3f7ff 48%,#eaf1ff 100%);position:absolute;inset:0}html[data-theme=dark] .login-ambient{background:radial-gradient(1000px 520px at 12% 10%,#60a5fa29,#0000 55%),radial-gradient(820px 460px at 90% 0,#a78bfa24,#0000 50%),radial-gradient(700px 400px at 70% 80%,#38bdf81a,#0000 55%),linear-gradient(#0b1220 0%,#121a2b 100%)}.login-shell{z-index:1;grid-template-columns:1.05fr .95fr;align-items:stretch;gap:22px;width:min(960px,100%);animation:.4s both msg-in;display:grid;position:relative}.login-hero{color:#0f172a;box-shadow:var(--shadow-lift);text-align:center;background:radial-gradient(520px 280px at 78% 12%,#38bdf847,#0000 55%),radial-gradient(420px 260px at 12% 88%,#a78bfa38,#0000 52%),linear-gradient(155deg,#fff 0%,#f3f7ff 42%,#e8efff 100%);border:1px solid #2563eb1f;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;min-height:520px;padding:36px 28px;display:flex}html[data-theme=dark] .login-hero{color:#e8eef8;background:radial-gradient(520px 280px at 70% 18%,#38bdf833,#0000 55%),radial-gradient(420px 260px at 20% 80%,#7c3aed2e,#0000 50%),linear-gradient(155deg,#15233f 0%,#121a2b 48%,#1a1633 100%);border-color:#60a5fa2e}.login-hero-badge{color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;background:#2563eb14;border:1px solid #2563eb29;border-radius:999px;align-self:flex-start;margin-bottom:18px;padding:6px 10px;font-size:.75rem;font-weight:650;display:inline-flex}html[data-theme=dark] .login-hero-badge{color:#e8eef8;background:#ffffff14;border-color:#ffffff24}.login-hero-title{letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(2rem,3.2vw,2.6rem);font-weight:750;line-height:1.15}.login-hero-copy{color:#475569;max-width:34ch;margin:0;font-size:1rem}html[data-theme=dark] .login-hero-copy{color:#e8eef8d6}.login-hero-points{gap:10px;margin:0;padding:0;list-style:none;display:grid}.login-hero-points li{color:#334155;padding-left:22px;font-size:.92rem;position:relative}html[data-theme=dark] .login-hero-points li{color:#e8eef8e6}.login-hero-points li:before{content:"";background:linear-gradient(135deg,#38bdf8,#7c3aed);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0;box-shadow:0 0 0 4px #38bdf829}.login-card{background:var(--surface);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-lift);border-radius:28px;flex-direction:column;justify-content:center;padding:28px 24px 24px;display:flex}.login-brand{align-items:center;gap:12px;margin-bottom:22px;display:flex}.login-brand h2{letter-spacing:-.02em;margin:0;font-size:1.2rem;font-weight:700}.login-brand p{color:var(--muted);margin:2px 0 0;font-size:.86rem}.login-form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:6px;font-size:.86rem;font-weight:650;display:flex}.field input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:14px;outline:none;padding:12px 14px;font-weight:400;transition:border-color .15s,box-shadow .15s}.field input:focus{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.field input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}}.field input:focus{box-shadow:var(--ring)}.password-row{align-items:center;gap:8px;display:flex}.password-row input{flex:1}.login-error{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border);border-radius:12px;padding:10px 12px;font-size:.86rem;font-weight:500}.login-alert-dialog{z-index:120;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.login-alert-backdrop{cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 50% 40%,#2563eb24,#0000 55%),#080c188c;border:0;position:absolute;inset:0}.login-alert-panel{z-index:1;text-align:center;background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 100%);border-radius:22px;width:min(400px,100%);padding:28px 24px 22px;position:relative}@supports (color:color-mix(in lab, red, red)){.login-alert-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, #fff) 0%, var(--surface) 100%)}}.login-alert-panel{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.login-alert-panel{border:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.login-alert-panel{animation:.28s cubic-bezier(.22,1,.36,1) both login-alert-in;box-shadow:inset 0 1px #ffffff8c,0 24px 60px #00000047}html[data-theme=dark] .login-alert-panel{background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 100%)}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .login-alert-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 88%, #1f2a28) 0%, var(--surface) 100%)}}html[data-theme=dark] .login-alert-panel{box-shadow:inset 0 1px #ffffff0f,0 24px 60px #00000080}@keyframes login-alert-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.login-alert-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;transition:background .15s,color .15s;display:grid;position:absolute;top:12px;right:12px}.login-alert-close svg{width:16px;height:16px}.login-alert-close:hover{color:var(--text);background:var(--border)}@supports (color:color-mix(in lab, red, red)){.login-alert-close:hover{background:color-mix(in srgb, var(--border) 45%, transparent)}}.login-alert-visual{place-items:center;width:78px;height:78px;margin:4px auto 18px;display:grid;position:relative}.login-alert-ring{background:radial-gradient(circle,#ef44442e 0%,#ef44440f 55%,#0000 70%);border-radius:999px;animation:2.2s ease-in-out infinite login-alert-pulse;position:absolute;inset:0}@keyframes login-alert-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.login-alert-icon{z-index:1;color:#b91c1c;background:linear-gradient(#fff5f5 0%,#fee2e2 100%);border:1px solid #fecaca;border-radius:999px;place-items:center;width:56px;height:56px;display:grid;position:relative;box-shadow:0 10px 22px #b91c1c29}html[data-theme=dark] .login-alert-icon{color:#fecaca;background:linear-gradient(#4a1d1d 0%,#3b1616 100%);border-color:#7f1d1d;box-shadow:0 10px 22px #00000059}.login-alert-icon svg{width:26px;height:26px}.login-alert-panel h2{letter-spacing:-.02em;color:var(--text);margin:0 0 8px;font-size:1.15rem;font-weight:750}.login-alert-panel>p{max-width:30ch;color:var(--muted);margin:0 auto 22px;font-size:.94rem;font-weight:500;line-height:1.55}.login-alert-action{width:100%;font:inherit;cursor:pointer;color:var(--accent-contrast);background:linear-gradient(145deg, var(--accent), var(--accent-strong));border:0;border-radius:14px;padding:12px 16px;font-size:.95rem;font-weight:700;transition:transform .15s,filter .15s;box-shadow:0 10px 22px #2563eb47}.login-alert-action:hover{filter:brightness(1.04);transform:translateY(-1px)}.login-alert-action:active{transform:translateY(0)}.app-confirm-dialog{z-index:130;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-confirm-backdrop{cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 50% 40%,#2563eb1f,#0000 55%),#080c188c;border:0;position:absolute;inset:0}.app-confirm-panel{z-index:1;text-align:center;background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 100%);border-radius:22px;width:min(400px,100%);padding:28px 24px 22px;position:relative}@supports (color:color-mix(in lab, red, red)){.app-confirm-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, #fff) 0%, var(--surface) 100%)}}.app-confirm-panel{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.app-confirm-panel{border:1px solid color-mix(in srgb, var(--border) 70%, transparent)}}.app-confirm-panel{animation:.28s cubic-bezier(.22,1,.36,1) both app-confirm-in;box-shadow:inset 0 1px #ffffff8c,0 24px 60px #00000047}html[data-theme=dark] .app-confirm-panel{background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 100%)}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .app-confirm-panel{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 88%, #1f2a28) 0%, var(--surface) 100%)}}html[data-theme=dark] .app-confirm-panel{box-shadow:inset 0 1px #ffffff0f,0 24px 60px #00000080}@keyframes app-confirm-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.app-confirm-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;transition:background .15s,color .15s;display:grid;position:absolute;top:12px;right:12px}.app-confirm-close svg{width:16px;height:16px}.app-confirm-close:hover{color:var(--text);background:var(--border)}@supports (color:color-mix(in lab, red, red)){.app-confirm-close:hover{background:color-mix(in srgb, var(--border) 45%, transparent)}}.app-confirm-visual{place-items:center;width:78px;height:78px;margin:4px auto 18px;display:grid;position:relative}.app-confirm-ring{background:radial-gradient(circle,#ef44442e 0%,#ef44440f 55%,#0000 70%);border-radius:999px;position:absolute;inset:0}.app-confirm-icon{z-index:1;color:#b91c1c;background:linear-gradient(#fff5f5 0%,#fee2e2 100%);border:1px solid #fecaca;border-radius:999px;place-items:center;width:56px;height:56px;display:grid;position:relative;box-shadow:0 10px 22px #b91c1c29}html[data-theme=dark] .app-confirm-icon{color:#fecaca;background:linear-gradient(#4a1d1d 0%,#3b1616 100%);border-color:#7f1d1d;box-shadow:0 10px 22px #00000059}.app-confirm-icon svg{width:24px;height:24px}.app-confirm-panel h2{letter-spacing:-.02em;color:var(--text);margin:0 0 8px;font-size:1.12rem;font-weight:750}.app-confirm-panel>p{max-width:32ch;color:var(--muted);margin:0 auto;font-size:.94rem;font-weight:500;line-height:1.55}.app-confirm-hint{color:var(--muted)!important;margin:8px auto 0!important;font-size:.82rem!important}@supports (color:color-mix(in lab, red, red)){.app-confirm-hint{color:color-mix(in srgb, var(--muted) 88%, var(--danger-text))!important}}.app-confirm-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;display:grid}.app-confirm-cancel,.app-confirm-danger{font:inherit;cursor:pointer;border:0;border-radius:14px;padding:12px 14px;font-size:.92rem;font-weight:700;transition:transform .15s,filter .15s,background .15s}.app-confirm-cancel{color:var(--text);background:var(--border)}@supports (color:color-mix(in lab, red, red)){.app-confirm-cancel{background:color-mix(in srgb, var(--border) 42%, transparent)}}.app-confirm-cancel:hover{background:var(--border)}@supports (color:color-mix(in lab, red, red)){.app-confirm-cancel:hover{background:color-mix(in srgb, var(--border) 68%, transparent)}}.app-confirm-danger{color:#fff;background:linear-gradient(145deg,#dc2626,#b91c1c);box-shadow:0 10px 22px #b91c1c38}.app-confirm-danger:hover{filter:brightness(1.05);transform:translateY(-1px)}.app-confirm-danger:active,.app-confirm-cancel:active{transform:translateY(0)}.login-submit{background:linear-gradient(145deg, var(--accent), var(--accent-strong));width:100%;color:var(--accent-contrast);font:inherit;cursor:pointer;border:none;border-radius:14px;margin-top:4px;padding:13px 16px;font-size:.95rem;font-weight:700;transition:transform .15s,filter .15s;box-shadow:0 10px 22px #2563eb47}.login-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.login-submit:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px)}.login-divider{color:var(--muted);align-items:center;gap:12px;margin:18px 0 14px;font-size:.8rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-login-wrap{justify-content:center;min-height:44px;display:flex}.google-login-wrap>div{width:100%!important}.google-login-loading{text-align:center;border:1px solid var(--border);width:100%;color:var(--muted);background:var(--bg-soft);border-radius:12px;padding:12px;font-size:.9rem}.google-sso{flex-direction:column;gap:8px;margin-top:2px;display:flex}.google-sso-btn{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;cursor:pointer;box-shadow:var(--shadow-soft);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:.95rem;font-weight:700;transition:transform .15s,border-color .15s,box-shadow .15s;display:inline-flex}.google-sso-icon{flex-shrink:0;display:block}.google-sso-btn:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.google-sso-btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 30%, var(--border))}}.google-sso-btn:hover:not(:disabled){box-shadow:var(--shadow-lift)}.google-sso-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.google-sso-hint{text-align:center;color:var(--muted);margin:0;font-size:.75rem;line-height:1.4}.google-sso-hint code{background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;padding:1px 5px;font-size:.72rem}@media (max-width:860px){.login-shell{grid-template-columns:1fr;max-width:460px}.login-hero{min-height:auto;padding:24px 22px}.login-hero-title{font-size:1.8rem}.login-hero-points{display:none}.login-card{padding:22px 18px}.login-alert-panel{width:min(100%,100vw - 28px);margin:0 14px}}
