:root{--bg-page: #f5f7fb;--bg-sidebar: #eef2f8;--bg-card: #ffffff;--border: #e2e8f0;--text: #1e293b;--text-muted: #64748b;--accent: #4a90e2;--accent-soft: #bfd0eb;--unity-panel-blue: #bfd0eb;--accent-orange: #f5a623;--conv-drawer-surface: #f2f5fb;--radius: 12px;--radius-sm: 8px;--font: "DM Sans", "Segoe UI", system-ui, sans-serif;--role-enterprise-glyph: #f59e0b;--overlay-scrim: rgba(15, 23, 42, .45);--auth-surface-muted: #d6d8df;--auth-surface-border: #c5c7cf;--conv-panel-top-offset: 6px}:root[data-theme=dark]{--bg-page: #11161d;--bg-sidebar: #161d26;--bg-card: #1d2229;--border: #343b45;--text: #d3d8df;--text-muted: #9aa5b5;--accent: #555f6d;--accent-soft: #353c46;--unity-panel-blue: #3a424d;--role-enterprise-glyph: #fbbf24;--overlay-scrim: rgba(2, 6, 15, .72);--conv-drawer-surface: #1f242b}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);font-weight:700;color:var(--text);background:var(--bg-page);-webkit-font-smoothing:antialiased}*{scrollbar-width:thin;scrollbar-color:var(--unity-panel-blue) #e5e7eb}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:#e5e7eb;border-radius:999px}*::-webkit-scrollbar-thumb{background:var(--unity-panel-blue);border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#a9c0e4}button{font:inherit;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease;transform-origin:center}button:not(:disabled):not(.conv-fab):not(.rail-toggle-wrap):not(.new-chat-btn):not(.take-test-card-main):not(.take-test-progress-seg):not(.take-test-review-seg):not(.subscription-close):not(.image-crop-handle):hover{transform:scale(1.04)}button:not(:disabled):not(.conv-fab):not(.rail-toggle-wrap):not(.new-chat-btn):not(.take-test-card-main):not(.take-test-progress-seg):not(.take-test-review-seg):not(.subscription-close):not(.image-crop-handle):active{transform:scale(.98)}input,textarea{font:inherit}.app-root{display:flex;flex-direction:column;height:100%;min-height:0}.app-shell{display:flex;flex:1;min-height:0}.app-main-column{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.app-main-routes{flex:1;min-height:0;min-width:0;display:flex}.feature-main{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-card);border-left:1px solid var(--border)}.feature-main--hidden{display:none!important}.feature-route-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.feature-route-wrap--hidden{display:none!important}.feature-scroll{flex:1;overflow:auto;padding:0 20px 28px;min-height:0;display:flex;flex-direction:column;min-width:0}.feature-workspace{max-width:1100px;margin:0 auto}.feature-desc{color:var(--text-muted);margin:0 0 16px;line-height:1.5}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 900px){.feature-grid{grid-template-columns:1fr}}.feature-panel{background:#fafbfc;border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px}.feature-panel.output{min-height:320px}.field-label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.field-textarea{width:100%;min-height:200px;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);resize:vertical}.output-pre{flex:1;margin:0;white-space:normal;word-break:break-word;font-size:.88rem;line-height:1.5;overflow:auto;overflow-x:hidden;max-height:70vh}.primary-btn{margin-top:8px;padding:10px 18px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:#fff;font-weight:600;align-self:flex-start}.primary-btn:disabled{opacity:.55;cursor:not-allowed}.ghost-btn{margin-left:8px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#fff}.file-hint{font-size:.8rem;color:var(--text-muted)}.muted{color:var(--text-muted)}.test-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:16px}.form-field{display:flex;flex-direction:column;gap:6px;font-size:.85rem}.form-field.full{grid-column:1 / -1}.form-field input,.form-field textarea{padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border)}.test-ready,.test-active,.test-result{margin-top:12px}.test-timer{font-weight:700;margin-bottom:16px;color:#b45309}.question-block{margin-bottom:20px;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#fafbfc}.q-text{margin:0 0 10px;line-height:1.5}.opt-list{list-style:none;margin:0;padding:0}.opt-list li{margin-bottom:6px}.tabs{display:flex;gap:8px;padding:10px 0 16px;flex-wrap:wrap}.tab{padding:8px 14px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:.85rem}.tab.active{background:var(--accent-soft);border-color:#c7ddf9;color:#1d4ed8;font-weight:600}.history-list{list-style:none;margin:0;padding:0}.history-list li{display:grid;grid-template-columns:120px 1fr 140px 1fr;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);font-size:.85rem;align-items:start}@media (max-width: 800px){.history-list li{grid-template-columns:1fr}}.hist-kind{font-weight:600;color:var(--accent)}.hist-meta{color:var(--text-muted);font-size:.78rem}.hist-detail{color:var(--text-muted);font-size:.8rem}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.stat-card{background:#fafbfc;border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stat-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.stat-value{font-size:1.75rem;font-weight:700;margin:8px 0}.stat-sub{font-size:.8rem;color:var(--text-muted)}.my-progress-dashboard{max-width:1240px;color:var(--text);padding-left:14px;padding-bottom:12px;position:relative;isolation:isolate}.my-progress-head{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-bottom:10px;position:relative;z-index:1}.my-progress-title{margin:0;font-size:1.45rem;font-weight:700}.my-progress-subtitle{margin:0;color:var(--text-muted);font-weight:500;font-size:.9rem}.my-progress-subtitle-row{display:inline-flex;align-items:center;gap:8px}.my-progress-subtitle-icon{display:inline-flex;color:var(--text-muted)}.my-progress-refresh-btn{margin-left:2px;width:24px;height:24px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:.86rem;line-height:1;padding:0}.my-progress-refresh-btn:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft)}.my-progress-refresh-btn:disabled{opacity:.55}.my-progress-layout{display:grid;grid-template-columns:minmax(0,1fr) 138px;gap:12px;position:relative;z-index:1}.my-progress-main{min-width:0;display:flex;flex-direction:column;gap:12px}.my-progress-summary{background:linear-gradient(180deg,#ffffff57,#ffffff2e),color-mix(in srgb,var(--bg-card) 78%,transparent);border:1px solid color-mix(in srgb,var(--border) 72%,#fff 28%);border-radius:var(--radius);padding:8px 10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));box-shadow:inset 0 1px #ffffff80,0 12px 28px #0f172a1f,0 2px 6px #0f172a14;backdrop-filter:blur(8px) saturate(115%);-webkit-backdrop-filter:blur(8px) saturate(115%)}.my-progress-summary-item{padding:4px 10px;border-right:1px solid var(--border)}.my-progress-summary-item:last-child{border-right:none}.my-progress-summary-label{color:var(--text-muted);font-size:.82rem;font-weight:400}.my-progress-summary-value{margin-top:2px;font-size:1.32rem;font-weight:700;line-height:1}.my-progress-summary-sub{margin-top:2px;font-size:.74rem;color:var(--text-muted)}.my-progress-grid-two{display:grid;grid-template-columns:1fr 1.35fr;gap:10px}.my-progress-card{background:linear-gradient(180deg,#ffffff52,#ffffff29),color-mix(in srgb,var(--bg-card) 76%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,#fff 30%);border-radius:var(--radius);padding:12px;box-shadow:inset 0 1px #ffffff85,0 14px 32px #0f172a21,0 2px 8px #0f172a14;backdrop-filter:blur(9px) saturate(118%);-webkit-backdrop-filter:blur(9px) saturate(118%)}.my-progress-card h3{margin:0 0 10px;font-size:.94rem;font-weight:500}.my-progress-footnote{margin-top:8px;text-align:center;color:var(--text);font-weight:400;font-size:.9rem}.my-progress-line svg{width:100%;height:160px;display:block;color:var(--accent)}.my-progress-line-labels{margin-top:2px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));font-size:.78rem;color:var(--text-muted)}.my-progress-line-labels span{text-align:center}.my-progress-split{display:grid;grid-template-columns:1fr .95fr;gap:14px}.my-progress-insights{border-left:1px solid var(--border);padding-left:12px}.my-progress-mastery-list{max-height:190px;overflow:auto;font-size:.86rem;margin-right:-10px;padding-right:0;scrollbar-width:thin;scrollbar-color:rgba(148,174,217,.95) transparent}.my-progress-mastery-list::-webkit-scrollbar{width:2px}.my-progress-mastery-list::-webkit-scrollbar-track{background:transparent}.my-progress-mastery-list::-webkit-scrollbar-thumb{background:#94aed9f2;border-radius:999px}.my-progress-mastery-list::-webkit-scrollbar-thumb:hover{background:#94aed9}.my-progress-mastery-row+.my-progress-mastery-row{margin-top:8px}.my-progress-mastery-name{color:var(--text);font-weight:400;font-size:.86rem;line-height:1.25}.my-progress-mastery-score{margin-top:1px;font-size:.84rem;line-height:1.25}.my-progress-mastery-score--weak{color:#d94678}.my-progress-mastery-score--improving{color:#ca8a04}.my-progress-mastery-score--strong{color:#16a34a}.my-progress-insight-row{display:flex;align-items:flex-start;gap:8px;font-weight:400;color:var(--text);font-size:.82rem;line-height:1.35}.my-progress-insight-row+.my-progress-insight-row{margin-top:12px}.my-progress-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.my-progress-day-btn{border:1px solid var(--border);border-radius:6px;background:var(--bg-page);color:var(--text-muted);padding:3px 0;font-size:.72rem}.my-progress-day-btn.is-active{background:var(--accent-soft);color:var(--text);font-weight:500}.my-progress-activity-list{margin-top:10px}.my-progress-activity-row{display:grid;grid-template-columns:minmax(80px,130px) 1fr auto;gap:8px;align-items:center}.my-progress-activity-row+.my-progress-activity-row{margin-top:8px}.my-progress-activity-subject{text-transform:lowercase;font-size:.92rem}.my-progress-activity-bar{height:8px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 22%,transparent);overflow:hidden}.my-progress-activity-bar span{display:block;height:100%;background:var(--accent)}.my-progress-empty{color:var(--text-muted)}.my-progress-bars{display:flex;align-items:flex-end;justify-content:center;gap:7px;min-height:185px}.my-progress-bar-col{display:flex;flex-direction:column;align-items:center;gap:6px}.my-progress-bar-wrap{width:18px;height:140px;display:flex;align-items:flex-end}.my-progress-bar-wrap span{width:100%;border-radius:3px 3px 0 0;background:var(--accent);min-height:8px}.my-progress-bar-label{font-size:.72rem}.my-progress-achievements{background:linear-gradient(180deg,#ffffff52,#ffffff29),color-mix(in srgb,var(--bg-card) 76%,transparent);border:1px solid color-mix(in srgb,var(--border) 70%,#fff 30%);border-radius:var(--radius);padding:10px 8px;box-shadow:inset 0 1px #ffffff80,0 14px 32px #0f172a21,0 2px 8px #0f172a14;backdrop-filter:blur(9px) saturate(118%);-webkit-backdrop-filter:blur(9px) saturate(118%)}.my-progress-achievements h3{margin:0 0 8px;font-size:.82rem;text-transform:uppercase;text-align:center}.my-progress-achievements-list{display:flex;flex-direction:column;gap:10px}.my-progress-achievement{border-radius:10px;background:linear-gradient(180deg,#ffffff61,#fff3),color-mix(in srgb,var(--bg-page) 70%,transparent);padding:10px 8px;text-align:center;color:var(--text-muted);border:1px solid color-mix(in srgb,var(--border) 72%,#fff 28%)}.my-progress-achievement.is-unlocked{background:linear-gradient(180deg,#ffffff61,#ffffff2e),color-mix(in srgb,var(--accent-soft) 72%,transparent);color:var(--text);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}:root[data-theme=dark] .my-progress-summary,:root[data-theme=dark] .my-progress-card,:root[data-theme=dark] .my-progress-achievements{background:linear-gradient(180deg,#ffffff14,#ffffff08),color-mix(in srgb,var(--bg-card) 68%,transparent);border-color:color-mix(in srgb,var(--border) 78%,#cbd5e1 22%);box-shadow:inset 0 1px #ffffff14,0 12px 28px #0206176b,0 2px 10px #02061752}:root[data-theme=dark] .my-progress-achievement{background:linear-gradient(180deg,#47556957,#33415542),color-mix(in srgb,var(--bg-card) 86%,transparent);border-color:#64748b8c;color:#8fa0b5}:root[data-theme=dark] .my-progress-achievement:not(.is-unlocked){filter:grayscale(.28)}:root[data-theme=dark] .my-progress-achievement.is-unlocked{background:linear-gradient(180deg,#38bdf83d,#2563eb29),color-mix(in srgb,#1e293b 68%,var(--bg-card) 32%);border-color:#38bdf8b8;color:#e6f4ff;box-shadow:inset 0 1px #bae6fd52,0 6px 16px #0e749059}:root[data-theme=dark] .my-progress-achievement:not(.is-unlocked) .my-progress-achievement-icon{filter:grayscale(1) saturate(0) brightness(.74)}:root[data-theme=dark] .my-progress-achievement.is-unlocked .my-progress-achievement-icon{filter:none}.my-progress-achievement-icon{font-size:1.7rem;line-height:1;margin-bottom:6px;display:inline-flex;align-items:center;justify-content:center;min-height:30px}.my-progress-achievement:not(.is-unlocked) .my-progress-achievement-icon{filter:grayscale(1) saturate(0) contrast(1.05)}.my-progress-trophy-sprite{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.my-progress-achievement-label{font-weight:400;line-height:1.15;font-size:.9rem}@media (max-width: 920px){.my-progress-layout{grid-template-columns:1fr}.my-progress-achievements-list{flex-direction:row;flex-wrap:wrap}.my-progress-achievement{flex:1 1 130px}}@media (max-width: 860px){.my-progress-summary{grid-template-columns:1fr 1fr;row-gap:6px}.my-progress-summary-item:nth-child(2n){border-right:none}.my-progress-grid-two,.my-progress-split{grid-template-columns:1fr}.my-progress-insights{border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:10px}}.chat-route{flex:1;min-width:0}.chat-route-wrap{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.chat-route-wrap--hidden{display:none!important}.chat-layout{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.chat-columns{flex:1;min-height:0;display:flex}.conv-fab{position:absolute;left:0;top:50%;transform:translateY(-50%);transform-origin:left center;z-index:6;width:23px;height:140px;border-radius:0 18px 18px 0;border:none;border-left:0;background:var(--unity-panel-blue);color:#0f172a;box-shadow:0 6px 16px #0f172a1f;transition:left .2s ease,transform .14s ease,box-shadow .2s ease,background .15s ease}.conv-fab:hover{transform:translateY(-50%) scale(1.04);transform-origin:left center;background:var(--unity-panel-blue)}.conv-fab-icon{display:inline-flex;transform:rotate(180deg) translate(8px);margin-left:9px}.conv-fab:active{transform:translateY(-50%) scale(.98);transform-origin:left center}.chat-top-actions{display:flex;gap:4px;position:relative;align-items:center;flex-wrap:wrap;justify-content:flex-end}.guest-header-cta-row{display:flex;align-items:center;gap:8px;margin-right:4px}.guest-pill{margin:0;border-radius:999px;padding:8px 16px;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.guest-pill-primary{background:#2563eb;color:#fff;border-color:#2563eb}.guest-pill-primary:hover{background:#1d4ed8;border-color:#1d4ed8}.guest-pill-secondary{background:#fff;color:#0f172a;border-color:#cbd5e1}.guest-pill-secondary:hover{border-color:#94a3b8;background:#f8fafc}.guest-composer-banner-wrap{padding:0 0 12px;flex-shrink:0}.guest-composer-banner{position:relative;display:flex;align-items:stretch;gap:14px;padding:14px 44px 14px 16px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 2px #0f172a0f}.guest-composer-banner-copy{flex:1;min-width:0}.guest-composer-banner-title{margin:0 0 4px;font-size:.92rem;font-weight:700;color:var(--text);line-height:1.25}.guest-composer-banner-sub{margin:0;font-size:.8rem;font-weight:500;color:var(--text-muted);line-height:1.4}.guest-composer-banner-actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0;justify-content:center}.guest-pill-banner{min-width:132px;text-align:center}.guest-composer-banner-close{position:absolute;top:8px;right:10px;width:32px;height:32px;margin:0;padding:0;border:none;background:transparent;font-size:1.35rem;line-height:1;color:var(--text-muted);cursor:pointer;border-radius:8px}.guest-composer-banner-close:hover{background:#0f172a0f;color:var(--text)}@media (max-width: 520px){.guest-header-cta-row{gap:6px}.guest-pill{padding:6px 12px;font-size:.75rem}.guest-composer-banner{flex-direction:column;border-radius:20px;padding:14px 40px 14px 14px}.guest-composer-banner-actions{flex-direction:row;flex-wrap:wrap;width:100%}.guest-pill-banner{flex:1;min-width:0}}:root[data-theme=dark] .guest-pill-secondary{background:#1e293b;color:#e2e8f0;border-color:#475569}:root[data-theme=dark] .guest-pill-secondary:hover{background:#334155;border-color:#64748b}:root[data-theme=dark] .guest-composer-banner{background:#1e293b;border-color:#334155}:root[data-theme=dark] .guest-composer-banner-close:hover{background:#ffffff14}.chat-top-actions--feature-spacer{min-height:32px;align-self:center}.chat-settings-menu{position:fixed;top:56px;right:20px;z-index:73;width:min(420px,calc(100% - 24px));background:linear-gradient(180deg,#ffffffb8,#f6faff94);border:1px solid rgba(255,255,255,.55);backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:12px;box-shadow:inset 0 1px #ffffff80,0 14px 34px #0f172a29}:root[data-theme=dark] .chat-settings-menu{background:linear-gradient(180deg,#1a2330e6,#161e2bd1);border:1px solid rgba(110,138,177,.32);box-shadow:inset 0 1px #ffffff0d,0 14px 34px #02061773}.chat-settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:72;border:none;background:#0f172a33;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);padding:0}:root[data-theme=dark] .chat-settings-backdrop{background:#02060f8c}.chat-settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.95rem;font-weight:600;color:#475569}.chat-settings-select{min-width:180px;border:1px solid #cbd5e1;background-color:#fff;border-radius:8px;padding:8px 32px 8px 10px;font-size:.9rem;min-height:38px;line-height:1.35;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px 12px}:root[data-theme=dark] .chat-settings-select{background-color:#151c27d9;border-color:#33475f;color:var(--text);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.chat-settings-section{display:flex;flex-direction:column;gap:8px}.chat-settings-title{font-size:.95rem;font-weight:700;color:#334155}.chat-settings-check{display:flex;align-items:center;gap:8px;font-size:.95rem;color:#1f2937}:root[data-theme=dark] .chat-settings-row,:root[data-theme=dark] .chat-settings-title,:root[data-theme=dark] .chat-settings-check{color:var(--text)}.thinking{margin:8px 0 0;font-size:.85rem;color:var(--text-muted)}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.role-selector-overlay{z-index:55}.role-selector-modal{width:min(92vw,360px);text-align:center}.role-selector-modal h2{margin-bottom:16px}.role-selector-stack{display:flex;flex-direction:column;gap:10px;margin-top:4px;text-align:center}.role-selector-pill{width:100%;margin:0;padding:12px 18px;font-size:.95rem;font-weight:600;font-family:inherit;border-radius:999px;border:1px solid #94a3b8;background:var(--bg-card);color:var(--text);cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.role-selector-pill:hover:not(:disabled){border-color:#64748b;background:#f8fafc}.role-selector-pill:active:not(:disabled){transform:scale(.99)}.role-selector-pill--disabled,.role-selector-pill:disabled.role-selector-pill--disabled{background:#e5e7eb;border-color:#cbd5e1;color:#94a3b8;cursor:not-allowed;opacity:1}.role-selector-enterprise-top{display:flex;align-items:center;gap:10px;margin:-4px 0 18px;text-align:left}.role-selector-back{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-8px 0 -8px -10px;padding:0;border:none;border-radius:10px;background:transparent;color:var(--text);cursor:pointer}.role-selector-back:hover:not(:disabled){background:#0f172a0f}.role-selector-back:disabled{opacity:.45;cursor:not-allowed}.role-selector-enterprise-icon{flex-shrink:0}.role-selector-enterprise-heading{font-size:1.15rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.role-selector-enterprise-body{text-align:center;padding:4px 4px 2px}.role-selector-enterprise-lead{margin:0 0 10px;font-size:.95rem;font-weight:700;color:var(--text);line-height:1.35}.role-selector-enterprise-line{margin:0 0 6px;font-size:.9rem;font-weight:700;color:var(--text)}.role-selector-enterprise-email-wrap{margin:0}.role-selector-enterprise-email{font-size:1rem;font-weight:700;color:#2563eb;text-decoration:none;word-break:break-all}.role-selector-enterprise-email:hover{text-decoration:underline}.role-selector-busy,.role-selector-error{margin:12px 0 0;font-size:.82rem}.role-selector-error{color:#b91c1c}:root[data-theme=dark] .role-selector-pill{border-color:#5c6570;background:#1e252ef5;color:var(--text)}:root[data-theme=dark] .role-selector-pill:hover:not(:disabled){border-color:#7c8794;background:#28303afa}:root[data-theme=dark] .role-selector-pill--disabled{background:#252b34;border-color:#3d4652;color:#6b7288}:root[data-theme=dark] .role-selector-back:hover:not(:disabled){background:#ffffff14}:root[data-theme=dark] .role-selector-enterprise-email{color:#93c5fd}:root[data-theme=dark] .role-selector-error{color:#fca5a5}:root[data-theme=dark] .user-bootstrap-overlay{background:var(--overlay-scrim)}:root[data-theme=dark] .user-bootstrap-card{background:var(--bg-card);border:1px solid var(--border);color:var(--text);box-shadow:0 20px 50px #00000073}:root[data-theme=dark] .voice-popup-overlay{background:var(--overlay-scrim)}:root[data-theme=dark] .voice-popup-card{background:linear-gradient(180deg,#1c232df0,#161d28e6);border:1px solid rgba(103,120,145,.38);box-shadow:inset 0 1px #ffffff0d,0 24px 48px #00000080}:root[data-theme=dark] .voice-popup-title{color:var(--text)}:root[data-theme=dark] .voice-popup-subtitle{color:var(--text-muted)}.user-bootstrap-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:52;padding:20px}.user-bootstrap-card{width:min(92vw,320px);background:var(--auth-surface-muted);border-radius:14px;border:1px solid var(--auth-surface-border);padding:20px;text-align:center;font-weight:600;font-size:.95rem;color:var(--text)}.user-bootstrap-banner{position:fixed;top:0;left:0;right:0;z-index:60;padding:10px 16px;background:#fef2f2;color:#991b1b;font-size:.85rem;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}:root[data-theme=dark] .user-bootstrap-banner{background:#7f1d1d59;color:#fecaca}:root[data-theme=dark] .activity-sort-menu{background:#1f2937;border-color:#475569}:root[data-theme=dark] .activity-sort-menu-item{color:#e2e8f0}:root[data-theme=dark] .activity-sort-menu-item:hover{background:#334155}:root[data-theme=dark] .activity-sort-menu-item.active{background:#1e40af;color:#dbeafe}.app-session-gate-locked{pointer-events:none;-webkit-user-select:none;user-select:none}.app-session-gate-locked .nav-rail,.app-session-gate-locked .app-chrome-header,.app-session-gate-locked .chat-settings-backdrop,.app-session-gate-locked .chat-settings-menu{pointer-events:auto}.app-chrome-header{position:relative;z-index:8;flex-shrink:0}.login-modal{width:min(92vw,340px);background:var(--auth-surface-muted);border-radius:14px;border:1px solid var(--auth-surface-border);box-shadow:0 20px 50px #02061733;padding:20px 20px 18px;text-align:center;font-weight:500}.login-modal.login-modal-loading{width:min(92vw,320px);padding:18px 18px 20px}.login-brand{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;margin-bottom:8px;justify-content:center}.login-modal h2{margin:0 0 8px;font-size:1.28rem;font-weight:700;line-height:1.15;letter-spacing:-.015em}.login-sub{margin:0 0 16px;color:var(--text-muted);font-size:.8rem;line-height:1.45;font-weight:500}.partner-with-line{margin:0;font-size:.82rem;line-height:1.35;color:#5a6b82}.login-partner-line{margin:-6px 0 12px;text-align:left;font-size:.75rem}.login-modal .partner-with-line--hp{color:#e9eef5}.partner-with-line--hp{font-size:.45rem;line-height:1;-webkit-user-select:none;user-select:none}.nav-partner-line{text-align:center;padding:0 8px 8px;max-width:100%;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-rail .partner-with-line--hp{color:#d0dce8}.nav-rail.nav-slim .nav-partner-line{visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.google-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1px solid #8ea2c2;padding:10px 16px;font-weight:500;font-size:.84rem;line-height:1;background:#fff}.google-mark{width:18px;height:18px;object-fit:contain;display:block}.login-or{margin:12px auto 10px;color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.login-outlined-field{position:relative;margin:10px 0 14px;text-align:left;--login-label-cut-bg: var(--auth-surface-muted)}.login-outlined-label{position:absolute;left:14px;top:0;transform:translateY(-50%);z-index:1;font-size:.7rem;font-weight:600;color:#3b6fd8;background:var(--login-label-cut-bg);padding:0 8px;line-height:1.2;pointer-events:none;border-radius:999px}.login-outlined-input{display:block;width:100%;margin:0;box-sizing:border-box;padding:13px 16px 11px;border:1.5px solid #8eb4eb;border-radius:999px;font-size:.84rem;font-weight:500;font-family:inherit;color:#0f172a;background:transparent;transition:border-color .15s ease,box-shadow .15s ease}.login-outlined-input::placeholder{color:#94a3b8}.login-outlined-input:hover:not(:disabled){border-color:#6b9ae8}.login-outlined-input:focus{outline:none;border-color:#4f83f5;box-shadow:0 0 0 3px #4f83f52e}.login-outlined-input:disabled{background:transparent;color:#64748b;border-color:#c5d4ef;cursor:not-allowed}.continue-btn{width:100%;border-radius:999px;border:none;padding:12px 16px;font-weight:600;font-size:.88rem;background:#000;color:#fff;margin-top:10px}.stay-out-btn{margin-top:14px;border:none;background:transparent;font-weight:500;font-size:.78rem;text-decoration:underline;color:#1f2937}.login-links{margin-top:8px;display:flex;justify-content:center;gap:12px;font-size:.65rem;font-weight:500}.login-links a{color:var(--text-muted)}.link-btn{margin-top:6px;border:none;background:transparent;color:#1d4ed8}.hint-text{margin:0 0 8px;font-size:.8rem;color:var(--text-muted);text-align:left}.login-error{margin:8px 0 0;color:#b91c1c;font-size:.82rem;text-align:left}.login-info{margin:8px 0 0;color:#0369a1;font-size:.82rem;text-align:left}.auth-bootstrap-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#e8f0ff;color:#0c1a2d}.auth-bootstrap-msg{margin:0;font-size:.95rem}.login-loading-wrap{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px 4px 8px}.login-modal .login-loading-title{margin:0;font-size:1.05rem;font-weight:700;line-height:1.25;letter-spacing:-.012em;color:#0f172a}.login-modal .login-loading-sub{margin:0;font-size:.78rem;font-weight:500;line-height:1.45;color:var(--text-muted);max-width:24ch}.loading-spinner{width:36px;height:36px;border:3px solid #d8e1f3;border-top-color:#4f83f5;border-radius:50%;animation:spin .9s linear infinite}.login-loading-spinner{width:28px;height:28px;border-width:2.5px}@keyframes spin{to{transform:rotate(360deg)}}.nav-rail{width:240px;--nav-rail-inner-w: 212px ;--nav-item-label-max: calc(var(--nav-rail-inner-w) - 26px - 20px - 10px - 16px);--nav-rail-stack-gap: 1px;--nav-item-pad-y: 0px;--nav-item-label-lh: 1.45;--nav-item-row-min-height: calc(var(--nav-item-pad-y) * 2 + 2 * 1em * var(--nav-item-label-lh));--nav-section-pad-top: 14px;--nav-section-pad-bottom: 7px;--nav-section-text-line: calc(.65rem * var(--nav-item-label-lh));--nav-section-min-block: calc( var(--nav-section-pad-top) + var(--nav-section-pad-bottom) + var(--nav-section-text-line) );flex-shrink:0;align-self:stretch;background:var(--bg-sidebar);border-right:1px solid #c6d6ee;display:flex;flex-direction:column;padding:8px 14px 20px;gap:var(--nav-rail-stack-gap);min-height:0;height:100%;max-height:100%;overflow:hidden;transition:width .2s ease,padding .2s ease,gap .2s ease}.nav-rail:not(.nav-slim){padding-bottom:0}.nav-rail-scroll{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:var(--nav-rail-stack-gap);overflow-x:hidden;overflow-y:auto;scrollbar-gutter:auto;scrollbar-width:thin;scrollbar-color:rgba(148,174,217,.95) transparent}.nav-rail:not(.nav-slim) .nav-rail-scroll{margin-right:-14px;padding-right:8px}.nav-rail.nav-slim .nav-rail-scroll{margin-right:-6px;padding-right:4px}.nav-rail-scroll::-webkit-scrollbar{width:1.5px}.nav-rail-scroll::-webkit-scrollbar-track{background:transparent;border-radius:999px}.nav-rail-scroll::-webkit-scrollbar-thumb{background:#94aed9fa;border-radius:999px}.nav-rail-scroll::-webkit-scrollbar-thumb:hover{background:#7a9ccd}.brand-row{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-shrink:0;min-height:50px}.brand-row>.logo-word{align-self:center;flex:1 1 auto;min-width:0;margin-right:62px}.brand{font-size:1.55rem;font-weight:700;letter-spacing:-.03em;padding:4px 8px 16px;transition:padding .2s ease}.rail-toggle-wrap{position:absolute;top:-8px;right:-15px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;z-index:2;margin:0;min-height:50px;min-width:50px;padding:10px 12px;background:#d1d9e6;color:#475569;border-radius:0 0 0 12px;border:1px solid #c5cedd;border-top:none;border-right:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:none;transition:right .2s ease,min-width .2s ease,min-height .2s ease,padding .2s ease,background-color .14s ease,filter .14s ease}.rail-toggle-wrap:hover{background:#c5cedd;filter:brightness(1.02)}.rail-toggle-wrap:active{filter:brightness(.96)}.rail-toggle-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rail-toggle-sprite{width:26px;height:26px;object-fit:contain;display:block;pointer-events:none;filter:grayscale(1) brightness(0) contrast(200%);transform:translateY(2px)}.rail-toggle-fallback{font-size:.95rem;line-height:1}.brand-expand-btn{border:none;background:transparent;padding:4px 0 16px;cursor:pointer}.brand-slim-letter{font-size:1.45rem;font-weight:700;color:#2b67b1;line-height:1}.logo-word{display:inline-flex;align-items:baseline;font-weight:700;letter-spacing:-.03em;white-space:nowrap;min-width:0;overflow:hidden}.logo-lex{color:#2b67b1}.logo-illion{color:#f1a126}.nav-rail.nav-slim{width:54px;--nav-item-pad-y: 0px;--nav-item-row-min-height: calc(2 * 1rem * var(--nav-item-label-lh));padding:8px 6px 0;overflow:hidden}.nav-rail.nav-slim .brand-row{justify-content:center}.nav-rail.nav-slim .brand{padding:4px 0 16px;display:flex;align-items:center;justify-content:center;font-size:0}.nav-rail.nav-slim .logo-word,.nav-rail.nav-slim .logo-lex,.nav-rail.nav-slim .logo-illion,.nav-rail.nav-slim .rail-toggle-wrap{display:none}.nav-rail.nav-slim .nav-section-label{display:block;font-size:0;line-height:0;padding:var(--nav-section-pad-top) 0 var(--nav-section-pad-bottom);margin:0 6px}.nav-rail.nav-slim .nav-section-label:before{content:"";display:block;border-top:1.5px solid #cfd8e6}.nav-rail.nav-slim .nav-item{justify-content:center;align-items:center;width:42px;margin:0 auto;padding:var(--nav-item-pad-y) 0;gap:0;font-size:0;min-height:var(--nav-item-row-min-height)}.nav-rail.nav-slim .nav-item svg,.nav-rail.nav-slim .nav-item .nav-sprite-icon{width:20px;height:20px}.nav-rail.nav-slim .nav-profile-wrap{margin:auto -6px 0;width:calc(100% + 12px);align-self:stretch;display:flex;justify-content:center;padding:14px 6px max(14px,env(safe-area-inset-bottom,0px));background:#fff;border-radius:12px 12px 0 0;border-top:1px solid rgba(207,216,230,.9);box-sizing:border-box}.app-root.is-slim .nav-rail{width:54px;padding:8px 6px 0;overflow:hidden}.app-root.is-slim .nav-rail .brand-row{justify-content:center}.app-root.is-slim .nav-rail .logo-word,.app-root.is-slim .nav-rail .logo-lex,.app-root.is-slim .nav-rail .logo-illion,.app-root.is-slim .nav-rail .rail-toggle-wrap{display:none}.app-root.is-slim .nav-rail .nav-section-label{display:block;font-size:0;line-height:0;padding:var(--nav-section-pad-top) 0 var(--nav-section-pad-bottom);margin:0 6px}.app-root.is-slim .nav-rail .nav-section-label:before{content:"";display:block;border-top:1.5px solid #cfd8e6}.app-root.is-slim .nav-rail .nav-item{justify-content:center;align-items:center;width:42px;margin:0 auto;padding:var(--nav-item-pad-y) 0;gap:0;font-size:0;min-height:var(--nav-item-row-min-height)}.app-root.is-slim .nav-rail .nav-item svg,.app-root.is-slim .nav-rail .nav-item .nav-sprite-icon{width:20px;height:20px}.nav-section-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--text-muted);padding:var(--nav-section-pad-top) 10px var(--nav-section-pad-bottom);transition:padding .2s ease,margin .2s ease;line-height:var(--nav-item-label-lh);overflow:visible;white-space:nowrap;min-height:var(--nav-section-min-block);box-sizing:border-box}.nav-item{display:flex;align-items:center;gap:10px;padding:var(--nav-item-pad-y) 12px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text);text-align:left;width:100%;min-width:0;overflow:hidden;transition:background .15s ease,width .2s ease,padding .2s ease,margin .2s ease,gap .2s ease,border-radius .2s ease}.nav-item-label{min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-rail.nav-slim .nav-item-label,.app-root.is-slim .nav-rail .nav-item-label{display:none}.app-root:not(.is-slim) .nav-rail .nav-item{width:calc(100% + 88px);margin-left:0;margin-right:-60px;padding-left:26px;padding-right:32px;border-radius:12px 0 0 12px;align-items:center;min-height:var(--nav-item-row-min-height);overflow:visible}.app-root:not(.is-slim) .nav-rail .nav-item .nav-item-label{white-space:normal;overflow:visible;text-overflow:unset;overflow-wrap:break-word;line-height:var(--nav-item-label-lh);max-width:var(--nav-item-label-max)}.nav-item:hover{background:#4a90e21f}.nav-item.active{background:var(--unity-panel-blue);color:#2563eb;font-weight:600}.nav-item svg,.nav-item .nav-sprite-icon{flex-shrink:0;opacity:.85;transition:width .2s ease,height .2s ease,opacity .15s ease}.nav-rail .nav-item .nav-sprite-icon{filter:brightness(0);opacity:1}.app-root:not(.is-slim) .nav-rail .nav-item svg,.app-root:not(.is-slim) .nav-rail .nav-item .nav-sprite-icon{width:20px;height:20px}.nav-profile-wrap{position:relative;flex-shrink:0;margin-top:0;transition:margin .2s ease,padding .2s ease,background .2s ease}.nav-rail>.nav-profile-wrap{margin-top:auto}.nav-rail:not(.nav-slim)>.nav-profile-wrap{margin-left:-14px;margin-right:-14px;width:calc(100% + 28px);padding:14px 14px max(16px,env(safe-area-inset-bottom,0px));background:#fff;border-radius:16px 16px 0 0;border-top:1px solid rgba(207,216,230,.95);box-sizing:border-box}.nav-profile-chip{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:none;border-radius:12px;background:#eef1f6;cursor:pointer;text-align:left;transition:background .15s ease,width .2s ease,padding .2s ease,margin .2s ease,gap .2s ease}.nav-rail:not(.nav-slim) .nav-profile-chip{background:transparent;padding:2px 0;border-radius:0}.nav-profile-chip:hover{background:#e4e9f2}.nav-rail:not(.nav-slim) .nav-profile-chip:hover{background:#4a90e20f}.nav-profile-text-panel{flex:1 1 auto;min-width:0;min-height:46px;display:flex;align-items:center;background:#fff;border-radius:10px 10px 8px 8px;padding:7px 10px;border:1px solid #e2e8f0;box-shadow:inset 0 1px #ffffffd9}.nav-rail:not(.nav-slim) .nav-profile-text-panel{background:transparent;border:none;box-shadow:none;border-radius:0;min-height:auto;padding:0 0 0 2px}.nav-profile-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-orange, #f97316);color:#fff;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid #fff;box-shadow:0 1px 3px #0f172a2e,0 0 0 1px #e2e8f0e6;text-transform:lowercase}.nav-profile-text{display:flex;flex-direction:column;gap:2px;min-width:0}.nav-profile-text-panel .nav-profile-text{flex:1 1 auto;width:100%;justify-content:center}.nav-profile-name{font-size:.9rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.nav-profile-role{font-size:.72rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-enterprise{color:#c77b14}.role-teacher{color:#0d9488}.role-student{color:#2563eb}.role-signed-out{color:var(--text-muted);font-weight:500}.nav-rail.nav-slim .nav-profile-text,.app-root.is-slim .nav-rail .nav-profile-text,.nav-rail.nav-slim .nav-profile-text-panel,.app-root.is-slim .nav-rail .nav-profile-text-panel{display:none}.nav-rail.nav-slim .nav-profile-chip,.app-root.is-slim .nav-rail .nav-profile-chip{justify-content:center;align-items:center;padding:2px 0;gap:0;width:auto;min-width:0;min-height:0;margin:0;background:transparent;border-radius:0}.nav-rail.nav-slim .nav-profile-chip:hover,.app-root.is-slim .nav-rail .nav-profile-chip:hover{background:#4a90e20f}.nav-rail.nav-slim .nav-profile-avatar,.app-root.is-slim .nav-rail .nav-profile-avatar{width:36px;height:36px;font-size:1rem;border-width:2px}.profile-popover-blocker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:47;background:#0f172a2e;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.profile-popover-card{z-index:48;background:var(--auth-surface-muted);border:1px solid var(--auth-surface-border);border-radius:16px;box-shadow:0 12px 40px #0f172a2e;padding:16px 14px;max-width:min(320px,92vw)}.profile-popover-top{display:flex;align-items:flex-start;justify-content:flex-start;gap:0}button.profile-popover-top.profile-popover-profile-btn{width:100%;margin:0 0 2px;padding:10px 10px 11px;border:none;border-radius:12px;background:#e8e9ef;cursor:pointer;font:inherit;text-align:left;box-sizing:border-box;transition:background .15s ease}button.profile-popover-top.profile-popover-profile-btn:hover{background:#d9dbe3}button.profile-popover-top.profile-popover-profile-btn:active{background:#cdd0d8}button.profile-popover-top.profile-popover-profile-btn:focus-visible{outline:2px solid #4f83f5;outline-offset:2px}.profile-popover-identity{display:flex;align-items:center;gap:10px;min-width:0;width:100%}.profile-popover-avatar{width:40px;height:40px;border-radius:50%;background:#f97316;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-popover-id-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.profile-popover-identity .nav-profile-text{flex:1 1 auto;width:100%;min-width:0}.profile-popover-identity .nav-profile-name{display:block;width:100%;text-align:left}.profile-popover-meta-line{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.profile-popover-divider{height:1px;background:#e5e7eb;margin:12px 0}.profile-popover-subscription{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-popover-sub-label{font-size:.88rem;color:#64748b}.profile-upgrade-btn{border:none;border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:600;background:#5eead4;color:#0f172a;cursor:pointer}.profile-upgrade-btn--muted{opacity:.45;cursor:default}.profile-logout-btn{width:100%;border:none;background:none;font-size:.9rem;color:#334155;cursor:pointer;padding:4px 0;text-align:left}.profile-token-pill{display:inline-flex;align-items:center;gap:6px;background:#94a3b8;color:#fff;border-radius:999px;padding:4px 10px 4px 6px;font-size:.8rem;font-weight:600;flex-shrink:0;margin-left:auto}.profile-token-pill--large{padding:6px 12px 6px 8px}.profile-token-icon{width:20px;height:20px;border-radius:50%;background:linear-gradient(145deg,#fcd34d,#d97706);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800;color:#fff}.profile-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:52;background:var(--overlay-scrim);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.profile-modal{width:100%;max-width:420px;max-height:90vh;overflow-y:auto;background:var(--auth-surface-muted);border:1px solid var(--auth-surface-border);border-radius:16px;padding:16px 20px 24px;box-shadow:0 20px 50px #0003}.profile-modal-header{display:flex;justify-content:flex-end;margin-bottom:8px}.profile-modal-header-actions{display:flex;align-items:center;gap:10px}.profile-modal-preview-pill{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px;background:#fef3c7;color:#92400e;border:1px solid #fcd34d}:root[data-theme=dark] .profile-modal-preview-pill{background:#422006;color:#fcd34d;border-color:#78350f}.dev-cred-debug-window{position:static;width:100%;display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:12px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);box-sizing:border-box}.dev-cred-debug-title{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#f8fafce6}.dev-cred-debug-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dev-cred-debug-field{display:flex;flex-direction:column;gap:4px;min-width:0}.dev-cred-debug-field>span{font-size:.68rem;font-weight:700;color:#e2e8f0eb}.dev-cred-debug-field>input{width:100%;box-sizing:border-box;border:1px solid rgba(203,213,225,.56);background:#ffffff1f;color:#f8fafc;border-radius:8px;padding:8px 9px;font:inherit;font-size:.78rem}.dev-cred-debug-field>input::placeholder{color:#e2e8f0bf}.dev-cred-debug-save{align-self:flex-end;border:1px solid rgba(255,255,255,.34);background:#fff3;color:#f8fafc;border-radius:10px;padding:7px 14px;font-size:.78rem;font-weight:700}.dev-cred-debug-save:disabled{opacity:.55;cursor:not-allowed}:root[data-theme=light] .dev-cred-debug-window{background:#ffffff94;border-color:#94a3b873}:root[data-theme=light] .dev-cred-debug-title{color:#334155db}:root[data-theme=light] .dev-cred-debug-field>span{color:#1e293be0}:root[data-theme=light] .dev-cred-debug-field>input{color:#0f172a;background:#ffffffd9;border-color:#94a3b89e}:root[data-theme=light] .dev-cred-debug-field>input::placeholder{color:#475569b8}:root[data-theme=light] .dev-cred-debug-save{background:#ffffffd1;border-color:#94a3b89e;color:#0f172a}@media (max-width: 760px){.dev-cred-debug-grid{grid-template-columns:1fr}}.dev-tools-dock{position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom,0px));z-index:51;display:flex;flex-direction:column;gap:8px;min-width:156px;max-width:min(220px,46vw);padding:10px 10px 11px;border-radius:16px;background:#0f172a61;border:1px solid rgba(148,163,184,.35);box-shadow:0 12px 40px #0000002e,inset 0 1px #ffffff0f;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);pointer-events:auto}.dev-tools-dock-title{margin:0 0 2px;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:#f8fafce0}.dev-tools-dock-head{display:flex;align-items:center;gap:8px}.dev-tools-dock-head .dev-tools-dock-title{flex:1 1 auto;margin:0;text-align:left}.dev-tools-dock-min-btn{border:1px solid rgba(255,255,255,.28);background:#ffffff24;color:#f8fafcf2;border-radius:8px;padding:4px 8px;font-size:.7rem;font-weight:700}.dev-tools-dock--minimized{width:auto;min-width:0;max-width:none;padding:8px 10px;gap:0}.dev-tools-dock-title--drag{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.dev-tools-dock-title--drag:active{cursor:grabbing}.dev-tools-dock-loading{margin:0;padding:8px 6px;font-size:.72rem;color:#e2e8f0d9;text-align:center}.dev-tools-dock .icon-editor-launch-row{position:static;display:flex;flex-direction:column;align-items:stretch;gap:6px;z-index:auto}.dev-tools-dock .icon-editor-launch{width:100%;justify-content:center;border-radius:10px;background:#ffffff24;border:1px solid rgba(255,255,255,.22);color:#f8fafcf2;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.dev-tools-dock .icon-editor-launch:hover{background:#ffffff38;border-color:#ffffff59}.dev-tools-dock .icon-editor-launch.icon-editor-launch--login-suppress-on{background:#fef3c759;border-color:#f59e0b8c;color:#fef3c7}:root[data-theme=light] .dev-tools-dock{background:#ffffff6b;border-color:#94a3b86b;box-shadow:0 12px 40px #0f172a14,inset 0 1px #ffffffa6}:root[data-theme=light] .dev-tools-dock-title{color:#334155d1}:root[data-theme=light] .dev-tools-dock-min-btn{color:#0f172a;background:#ffffffb8;border-color:#94a3b88f}:root[data-theme=light] .dev-tools-dock-loading{color:#475569e6}:root[data-theme=light] .dev-tools-dock .icon-editor-launch{background:#ffffff85;border-color:#94a3b873;color:#0f172a}:root[data-theme=light] .dev-tools-dock .icon-editor-launch:hover{background:#ffffffb8}:root[data-theme=light] .dev-tools-dock .icon-editor-launch.icon-editor-launch--login-suppress-on{background:#fef3c7b8;border-color:#f59e0ba6;color:#78350f}.profile-modal-close{width:36px;height:36px;border-radius:50%;border:none;background:#e2e8f0;color:#475569;font-size:1.25rem;line-height:1;cursor:pointer}.profile-modal-hero{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}.profile-modal-avatar-lg{width:64px;height:64px;border-radius:50%;background:#f97316;color:#fff;font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-modal-hero-text{flex:1;min-width:0}.profile-modal-email{margin:0 0 4px;font-size:.88rem;color:#64748b}.profile-modal-role-account{margin:0 0 6px;font-size:.95rem;font-weight:600;color:#38bdf8}.profile-modal-subscription-line,.profile-modal-expiry{margin:0 0 4px;font-size:.82rem;color:#64748b}.profile-modal-sub-val{font-weight:600;color:#334155}.profile-modal-warn,.profile-modal-error{font-size:.82rem;margin:0 0 10px}.profile-modal-error{color:#b91c1c}.profile-modal-warn{color:#92400e}.profile-modal-fields{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}.profile-field-outline{position:relative;display:block;--profile-label-cut-bg: var(--auth-surface-muted);margin:2px 0;border:1.5px solid #8eb4eb;border-radius:10px;padding:11px 14px 9px;background:transparent;transition:border-color .15s ease,box-shadow .15s ease}.profile-field-outline:focus-within{border-color:#4f83f5;box-shadow:0 0 0 3px #4f83f52e}.profile-field-outline.profile-field-outline--gray{border-color:#64748b}.profile-field-outline.profile-field-outline--gray:focus-within{border-color:#4b5563;box-shadow:0 0 0 3px #4b556333}.profile-field-outline.profile-field-outline--gray .profile-field-label{color:#475569}.profile-field-outline input{width:100%;border:none;outline:none;font-size:.9rem;padding:0;background:transparent;color:#0f172a}.profile-field-outline input:disabled{color:#64748b}.profile-field-label{position:absolute;left:12px;top:0;transform:translateY(-50%);z-index:1;background:var(--profile-label-cut-bg);padding:0 8px;font-size:.7rem;font-weight:600;color:#3b6fd8;line-height:1.2;pointer-events:none;border-radius:999px}.profile-field-readonly{margin:2px 0;padding:11px 14px 9px;border:1.5px solid #64748b;border-radius:10px;background:#f8fafc59;box-sizing:border-box}.profile-field-readonly .profile-field-label{position:static;display:block;padding:0 0 4px;background:none;font-size:.72rem;color:#475569;font-weight:600}.profile-field-readonly p{margin:0;font-size:.9rem;color:#0f172a}.profile-modal-update-btn{width:100%;border:none;border-radius:999px;padding:12px 20px;font-size:.95rem;font-weight:700;background:#0f172a;color:#fff;cursor:pointer}.profile-modal-update-btn:disabled{opacity:.6;cursor:not-allowed}.profile-modal-update-btn--ghost{background:#f1f5f9;color:#0f172a}.profile-modal-footer-links{margin-top:14px;text-align:center}.profile-modal-link-btn{border:none;background:none;color:#475569;cursor:pointer;font-size:.88rem}.profile-modal-loading{text-align:center;color:#64748b;font-size:.9rem}.conv-panel{width:280px;flex-shrink:0;background:var(--bg-card);border-right:none;display:flex;flex-direction:column;min-height:0;min-width:0;padding-top:6px;position:relative;margin-top:var(--conv-panel-top-offset);overflow-x:hidden;transition:width .2s ease,margin .2s ease,left .2s ease,max-width .2s ease}.conv-panel:before{content:"";position:absolute;top:52px;left:calc(14px + (100% - 28px)/20);right:calc(14px + (100% - 28px)/20);height:19px;background:var(--conv-drawer-surface);z-index:4;pointer-events:none}.conv-panel:after{content:"";position:absolute;top:53px;left:8px;right:8px;height:19px;border-left:1px solid var(--unity-panel-blue);border-right:1px solid var(--unity-panel-blue);z-index:5;pointer-events:none}.conv-panel.collapsed{width:0;overflow:hidden;border-right:none;padding:0;margin:0}.conv-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;min-width:0;padding:7px 16px;margin:0 8px;background:var(--unity-panel-blue);border-radius:16px 16px 0 0;border:1px solid var(--unity-panel-blue);border-bottom:none}.conv-head .icon-btn{flex-shrink:0}.conv-title{font-weight:600;font-size:.95rem;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{border:none;background:transparent;padding:6px;border-radius:8px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--bg-page);color:var(--text)}.icon-btn.conv-fab,.icon-btn.conv-fab:hover,.icon-btn.conv-fab:focus-visible{border-radius:0 18px 18px 0;border-left:0;background:var(--unity-panel-blue);color:#0f172a;transform-origin:left center}.new-chat-btn{position:absolute;top:64px;left:50%;right:auto;width:calc((100% - 28px)*.86);transform:translate(-50%);margin:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:#fff;font-weight:600;font-size:.9rem;outline:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:5;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.new-chat-btn:hover{transform:translate(-50%) scale(1.04)}.new-chat-btn:active{transform:translate(-50%) scale(.98)}.conv-list{flex:1;overflow-x:hidden;overflow-y:auto;padding:64px 12px 16px;margin:0 8px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(148,174,217,.95) transparent;background:var(--conv-drawer-surface);border:1px solid var(--unity-panel-blue);border-top:none;border-radius:0 0 16px 16px;min-height:0;min-width:0;position:relative;z-index:1}.conv-list::-webkit-scrollbar{width:3px}.conv-list::-webkit-scrollbar-track{background:transparent;margin:4px 0 10px;border-radius:999px}.conv-list::-webkit-scrollbar-thumb{background:#94aed9f2;border-radius:999px}.conv-list::-webkit-scrollbar-thumb:hover{background:#7a9ccd}.conv-list:before{content:"";position:sticky;top:0;left:0;right:0;display:block;height:0;background:transparent;z-index:3;pointer-events:none}.conv-item{display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;max-width:100%;text-align:left;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text);margin-bottom:4px;font-size:.88rem;line-height:1.35;overflow:hidden}.conv-item-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-item:hover{background:var(--bg-page)}.conv-item.selected{background:var(--accent-soft);border-color:#c7ddf9}.conv-item .time{font-size:.72rem;color:var(--text-muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg-card);position:relative;border-left:none}.chat-main-thread-wrap{flex:1;display:flex;flex-direction:column;min-height:0}.chat-main-thread-wrap>.chat-body{flex:1 1 auto;min-height:0}.chat-main--empty-state .chat-main-thread-wrap{justify-content:center;align-items:center;padding-top:0;transform:translateY(-10%)}.chat-main--empty-state .chat-main-thread-wrap>.chat-body{flex:0 1 auto;width:100%;max-width:720px;margin-inline:auto;overflow-y:auto;max-height:min(44vh,340px);padding:12px 20px 8px;box-sizing:border-box}.chat-main--empty-state .chat-main-thread-wrap>.chat-input-area{flex-shrink:0;width:min(680px,calc(100% - 24px));max-width:720px;margin-inline:auto;padding:6px 18px 16px;box-sizing:border-box}@media (min-aspect-ratio: 13/10){.chat-main--empty-state.chat-main--conv-collapsed .chat-main-thread-wrap>.chat-input-area{width:min(600px,calc(100% - (2*max(44px,2.75rem))));max-width:none}}.chat-main--empty-state .empty-chat{min-height:0;width:100%;padding:4px 16px 12px}.chat-main-inner-split{flex:1;display:flex;flex-direction:row;align-items:stretch;min-height:0;min-width:0}.chat-main-primary{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.chat-top{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}.chat-top-shared{background:var(--bg-card);border-bottom:none}.app-chrome-header.chat-top{min-height:50px;padding:9px 20px}.chat-top-left{display:flex;align-items:center;gap:10px;font-weight:600}.chat-top-left .chat-top-title-text{line-height:1;white-space:nowrap}.chat-top.chat-top-shared .chat-top-left svg,.chat-top.chat-top-shared .chat-top-left .nav-sprite-icon{display:block;flex-shrink:0}.chat-top.chat-top-shared .chat-top-left .nav-sprite-icon.nav-sprite-icon--tinted{filter:none;opacity:.94}.chat-top.chat-top-shared .chat-top-left .nav-sprite-icon:not(.nav-sprite-icon--tinted){filter:brightness(0);opacity:1}.app-chrome-header.chat-top .chat-top-actions .icon-btn{color:#111827}.app-chrome-header.chat-top .chat-top-actions .icon-btn svg{color:inherit;opacity:.92}.chat-top.chat-top-shared .chat-top-left{transform:translateY(-2px)}.chat-body{flex:1;overflow-x:hidden;overflow-y:auto;padding:24px 20px 16px;min-height:0;scrollbar-gutter:stable;transition:padding-left .2s ease}.chat-main--conv-collapsed .chat-body,.chat-main--conv-collapsed .test-gen-output-scroll{padding-left:max(44px,2.75rem)}.chat-body-bottom-spacer{min-height:clamp(160px,48dvh,520px);flex-shrink:0;pointer-events:none}.empty-chat{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:280px;gap:16px;color:var(--text-muted)}.bot-head,.bot-head-inline{width:42px;height:42px;object-fit:contain}.bot-head{width:64px;height:64px}.empty-chat p{max-width:420px;margin:0;font-size:.95rem;line-height:1.5}.msg{max-width:720px;margin-bottom:16px;display:flex;align-items:flex-start;gap:8px}.msg.user{margin-left:auto;justify-content:flex-end}.msg-bubble{padding:12px 16px;border-radius:var(--radius);font-size:.92rem;font-weight:400;line-height:1.55;white-space:normal;word-break:break-word;overflow-x:hidden;position:relative}.rendered-bot-text{white-space:normal;word-break:break-word}.rendered-bot-text mjx-container{max-width:100%;overflow:visible!important;font-size:1em!important}.rendered-bot-text mjx-container[jax=SVG][display=true]{overflow:visible!important}.mathjax-content{max-width:100%;overflow-x:hidden;line-height:1.55}.mathjax-content p{margin:0 0 10px}.math-content .math-table-wrap{width:100%;overflow-x:auto;margin:10px 0}.math-content .math-table{width:100%;min-width:340px;border-collapse:collapse;border:1px solid rgba(100,116,139,.25);border-radius:8px;overflow:hidden;background:#ffffffd6}.math-content .math-table th,.math-content .math-table td{padding:8px 10px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(100,116,139,.16);border-right:1px solid rgba(100,116,139,.12)}.math-content .math-table th:last-child,.math-content .math-table td:last-child{border-right:none}.math-content .math-table thead th{background:#94a3b82e;color:#0f172a;font-weight:700}.math-content .math-table tbody tr:nth-child(2n) td{background:#f8fafcb8}.math-content .math-table td.tally-cell{white-space:nowrap}.math-content .tally-render{display:inline-flex;align-items:center;gap:8px;min-height:18px}.math-content .tally-group{position:relative;display:inline-flex;align-items:flex-end;gap:3px;height:16px;min-width:18px}.math-content .tally-v{width:2px;height:15px;background:currentColor;border-radius:999px;opacity:.95}.math-content .tally-d{position:absolute;left:-1px;right:-1px;top:6px;height:2px;background:currentColor;transform:rotate(-26deg);transform-origin:center;border-radius:999px}:root[data-theme=dark] .math-content .math-table{border-color:#94a3b852;background:#1e293b85}:root[data-theme=dark] .math-content .math-table th,:root[data-theme=dark] .math-content .math-table td{border-bottom-color:#94a3b83d;border-right-color:#94a3b833}:root[data-theme=dark] .math-content .math-table thead th{background:#475569a6;color:#e2e8f0}:root[data-theme=dark] .math-content .math-table tbody tr:nth-child(2n) td{background:#33415573}.bot-inline-image{margin-top:10px;display:block;max-width:min(340px,100%);max-height:260px;border-radius:10px;border:1px solid #c8d5ea;background:#fff}.bot-inline-image--clickable{cursor:zoom-in}.image-preview-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12020;background:#0206179e;display:grid;place-items:center;padding:20px;box-sizing:border-box}.image-preview-modal-card{width:min(92vw,1080px);max-height:92vh;background:#fff;border-radius:12px;border:1px solid #cbd5e1;box-shadow:0 24px 56px #00000047;padding:12px;display:flex;flex-direction:column;gap:10px}.image-preview-modal-img{width:100%;max-height:min(80vh,760px);object-fit:contain;border-radius:10px;background:#f8fafc}.image-preview-modal-actions{display:flex;justify-content:flex-end;gap:10px}.image-preview-modal-btn{border:1px solid #334155;background:#0f172a;color:#fff;border-radius:8px;padding:8px 14px;font-size:.86rem;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit}.image-preview-modal-btn--ghost{background:#fff;color:#0f172a}:root[data-theme=dark] .image-preview-modal-card{background:#0f172a;border-color:#334155}:root[data-theme=dark] .image-preview-modal-img{background:#020617}.image-crop-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12030;background:#020617ad;display:grid;place-items:center;padding:20px}.image-crop-modal-card{width:min(94vw,940px);max-height:92vh;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 48px #02061759;display:flex;flex-direction:column;gap:12px;padding:14px}.image-crop-modal-head{font-weight:700;color:var(--text)}.image-crop-stage{position:relative;border-radius:10px;overflow:hidden;border:1px solid rgba(148,163,184,.35);background:#0f172a;max-height:70vh}.image-crop-preview{width:100%;height:auto;max-height:70vh;display:block;object-fit:contain}.image-crop-rect{position:absolute;border:2px solid #38bdf8;box-shadow:inset 0 0 0 9999px #02061759}.image-crop-handle{position:absolute;width:14px;height:14px;border-radius:999px;border:2px solid #fff;background:#38bdf8;padding:0;transform:translate(-50%,-50%)!important;transition:none!important}.image-crop-handle.nw{left:0;top:0}.image-crop-handle.ne{left:100%;top:0}.image-crop-handle.sw{left:0;top:100%}.image-crop-handle.se{left:100%;top:100%}.image-crop-handle.n{left:50%;top:0;cursor:ns-resize}.image-crop-handle.e{left:100%;top:50%;cursor:ew-resize}.image-crop-handle.s{left:50%;top:100%;cursor:ns-resize}.image-crop-handle.w{left:0;top:50%;cursor:ew-resize}.image-crop-handle.nw,.image-crop-handle.se{cursor:nwse-resize}.image-crop-handle.ne,.image-crop-handle.sw{cursor:nesw-resize}.image-crop-actions{display:flex;justify-content:flex-end;gap:10px}.mixed-image-loading{margin-top:10px;width:min(340px,100%);height:180px;border-radius:10px;border:1px solid #c8d5ea;background:linear-gradient(180deg,#f7f9fc,#eef2f8);display:grid;place-items:center;position:relative;overflow:hidden}.mixed-image-loading:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.55) 50%,transparent 80%);transform:translate(-100%);animation:mixed-image-shimmer 1.2s ease-in-out infinite}.mixed-image-spinner{width:28px;height:28px;border-radius:999px;border:2px solid rgba(90,108,134,.25);border-top-color:#5b6c87;animation:mixed-image-spin .9s linear infinite;z-index:1}.rendered-plain{white-space:pre-wrap}.rendered-code{display:grid;gap:12px}.html-preview-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;pointer-events:none}.html-preview-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;margin:0;width:100%;height:100%;background:#0f172a7a;cursor:pointer;pointer-events:auto}.html-preview-panel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100vw);max-width:100%;display:flex;flex-direction:column;background:var(--bg-app, #f4f6fa);box-shadow:-10px 0 32px #0000002e;border-left:1px solid var(--unity-panel-blue, #bfd0eb);pointer-events:auto;box-sizing:border-box;padding-left:10px}.html-preview-panel.html-preview-panel--docked{position:relative;top:auto;right:auto;bottom:auto;height:100%;min-height:0;align-self:stretch;flex-shrink:0;box-shadow:-3px 0 12px #0f172a0f}.html-preview-resize-handle{position:absolute;left:0;top:0;bottom:0;width:10px;cursor:ew-resize;z-index:4;touch-action:none;background:transparent}.html-preview-resize-handle:hover{background:#3b82f624}.html-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--unity-panel-blue, #bfd0eb);border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0}.html-preview-title{font-size:.95rem;font-weight:600;color:#1e293b}.html-preview-head-actions{display:inline-flex;align-items:center;gap:8px}.html-preview-share{border:1px solid rgba(51,65,85,.3);background:#ffffff94;color:#1e293b;border-radius:8px;padding:6px 10px;font-size:.8rem;font-weight:600}.html-preview-share-msg{margin:6px 12px 0;padding:6px 8px;border-radius:8px;font-size:.78rem;color:#475569;background:#bfd0eb5c}.html-preview-close{border:none;background:transparent;font-size:1.5rem;line-height:1;padding:4px 10px;cursor:pointer;color:#334155;border-radius:8px}.html-preview-close:hover{background:#ffffff73}.html-preview-frame{flex:1;width:100%;min-height:0;border:0;background:#fff}:root[data-theme=dark] .html-preview-panel{background:#1a2029;border-left-color:#3a424d}:root[data-theme=dark] .html-preview-head{background:#3a424d;border-bottom-color:#ffffff14}:root[data-theme=dark] .html-preview-title{color:#e8ecf3}:root[data-theme=dark] .html-preview-share{border-color:#94a3b866;background:#1e293ba8;color:#e8ecf3}:root[data-theme=dark] .html-preview-share-msg{color:#cbd5e1;background:#3341559e}:root[data-theme=dark] .html-preview-close{color:#cbd5e1}:root[data-theme=dark] .html-preview-close:hover{background:#ffffff14}:root[data-theme=dark] .html-preview-frame{background:#fff}.shared-preview-page{min-height:100vh;background:var(--bg-page);color:var(--text);display:flex;flex-direction:column}.shared-preview-head{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:space-between;gap:14px}.shared-preview-head h1{margin:0;font-size:.98rem}.shared-preview-head-title-wrap{display:flex;flex-direction:column;gap:2px}.shared-preview-brand{display:inline-flex;align-items:baseline;font-size:1.45rem;font-weight:700;letter-spacing:-.03em;line-height:1;white-space:nowrap}.shared-preview-brand-lex{color:#2b67b1}.shared-preview-brand-illion{color:#f1a126}.shared-preview-subtitle{margin:0;font-size:.78rem;color:var(--text-muted)}.shared-preview-head-actions{display:inline-flex;align-items:center;gap:8px}.shared-preview-cta{text-decoration:none;border-radius:8px;padding:7px 10px;font-size:.78rem;font-weight:700;border:1px solid #334155;background:#0f172a;color:#f8fafc}.shared-preview-cta--ghost{border-color:var(--border);background:transparent;color:var(--text)}.shared-preview-status{margin:18px 16px;color:var(--text-muted)}.shared-preview-status--error{color:#dc2626}.shared-preview-frame{flex:1;width:100%;border:0;background:#fff}.rendered-mixed{display:grid;gap:12px}.code-block-card{border:1px solid #d3dae5;border-radius:10px;background:transparent;overflow:hidden}.code-block-explanation{margin:0;padding:8px 2px 10px;border-bottom:none;font-size:.95rem;color:#2b3443}.code-block-editor-wrap{position:relative;overflow-x:auto;border:1px solid #6b7280;border-radius:8px;background:#3e434a;--code-block-pad-x: 16px;--code-block-pad-x-right: 12px}.code-block-toolbar{position:absolute;top:8px;right:8px;z-index:4;display:flex;flex-direction:row;align-items:center;gap:6px}.code-block-copy-btn{position:relative;top:auto;right:auto;z-index:auto;border:1px solid rgba(255,255,255,.45);background:#14181f8c;color:#f5f7fb;border-radius:8px;font-size:.78rem;line-height:1;padding:6px 8px;cursor:pointer}.code-block-copy-btn:hover{background:#14181fbf}.code-block-editor-wrap .monaco-editor,.code-block-editor-wrap .monaco-editor-background,.code-block-editor-wrap .margin{border-radius:0}.code-block-editor-wrap .monaco-editor .overflow-guard{padding-left:var(--code-block-pad-x)!important;padding-right:var(--code-block-pad-x-right)!important;box-sizing:border-box}@keyframes mixed-image-shimmer{to{transform:translate(100%)}}@keyframes mixed-image-spin{to{transform:rotate(360deg)}}.latex-block{margin:8px 0}.latex-fallback{margin:8px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.9em;white-space:pre-wrap}.msg.user .msg-bubble{background:var(--accent-soft);color:#1e3a5f}.msg-user-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.msg-user-attach-thumb{max-width:min(240px,100%);max-height:160px;border-radius:8px;object-fit:cover;border:1px solid rgba(15,40,75,.15);display:block;background:#fff}.msg-user-attach-image-dummy{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#ffffff59;border:1px solid rgba(15,40,75,.12);font-size:.78rem;max-width:min(240px,100%)}.msg-user-attach-image-icon{color:#3b82f6;display:inline-flex;flex-shrink:0}.msg-user-attach-image-name{word-break:break-word;line-height:1.2;color:#1e3a5f}.msg-user-attach-pdf{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#ffffff59;border:1px solid rgba(15,40,75,.12);font-size:.78rem;max-width:100%}.msg-user-attach-pdf-icon{color:#3b82f6;display:inline-flex;flex-shrink:0}.msg-user-attach-pdf-name{word-break:break-word;line-height:1.2;color:#1e3a5f}:root[data-theme=dark] .msg.user .msg-bubble{background:#3a424d;color:#d3d8df}:root[data-theme=dark] .msg-user-attach-thumb{border-color:#c8d2e640}:root[data-theme=dark] .msg-user-attach-image-dummy{background:#0003;border-color:#c8d2e633}:root[data-theme=dark] .msg-user-attach-image-name{color:#d3d8df}:root[data-theme=dark] .msg-user-attach-pdf{background:#0003;border-color:#c8d2e633}:root[data-theme=dark] .msg-user-attach-pdf-name{color:#d3d8df}:root[data-theme=dark] .mixed-image-loading{border-color:#4a5563;background:linear-gradient(180deg,#242b35,#1d242d)}:root[data-theme=dark] .mixed-image-loading:before{background:linear-gradient(100deg,transparent 20%,rgba(180,194,216,.12) 50%,transparent 80%)}:root[data-theme=dark] .mixed-image-spinner{border-color:#a5b2c540;border-top-color:#aebbd0}:root[data-theme=dark] .code-block-card{border-color:#4a5563;background:transparent}:root[data-theme=dark] .code-block-explanation{color:#cfd6df}:root[data-theme=dark] .code-block-editor-wrap{border-color:#586374;background:#2f343c}.msg.assistant .msg-bubble{background:transparent;color:var(--text);padding-left:4px;padding-right:8px}.msg.assistant .msg-actions{right:0}.assistant-thinking{margin-bottom:10px}.assistant-thinking-body{display:flex;flex-direction:column;gap:10px;min-width:min(420px,72vw)}.thinking-inline{margin-top:6px;color:#374151;font-size:1rem;letter-spacing:.01em;display:inline-flex;align-items:baseline;gap:2px}.thinking-dots{display:inline-flex;width:1.2em;justify-content:space-between}.thinking-dot{display:inline-block;min-width:.2em;opacity:.2;animation:thinking-dot-pulse 1.1s ease-in-out infinite}.thinking-dot:nth-child(2){animation-delay:.15s}.thinking-dot:nth-child(3){animation-delay:.3s}.assistant-thinking-skeleton{display:flex;flex-direction:column;gap:8px}.assistant-thinking-line{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#cbd5e173,#f1f5f9f2 45%,#cbd5e173);background-size:220% 100%;animation:assistant-shimmer 1.35s ease-in-out infinite}.assistant-thinking-line--w1{width:min(460px,80vw)}.assistant-thinking-line--w2{width:min(400px,70vw)}.assistant-thinking-line--w3{width:min(340px,60vw)}@keyframes assistant-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes thinking-dot-pulse{0%,80%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-1px)}}:root[data-theme=dark] .thinking-inline{color:#d1d9e4}:root[data-theme=dark] .assistant-thinking-line{background:linear-gradient(90deg,#4755698c,#94a3b8bf 45%,#4755698c)}.msg-actions{position:static;margin-top:10px;display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}.msg-action-btn{border:none;background:transparent;color:#111827;padding:0;border-radius:0;font-size:.94rem;line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;cursor:pointer;transform-origin:center;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,color .14s ease}.msg-action-btn svg{width:30px;height:30px;padding:4px;border-radius:8px;border:1px solid rgba(100,116,139,.55);background:#fffffff2;color:#6b7280}.msg-action-btn:not(:disabled):hover{color:#0f172a;transform:scale(1.04)}.msg-action-btn:not(:disabled):active{transform:scale(.98)}.msg-action-btn:not(:disabled):hover svg{background:#f8fafc}.msg-action-btn:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .msg-action-btn{color:#e5e7eb}:root[data-theme=dark] .msg-action-btn svg{border-color:#94a3b88c;background:#0f172ab8;color:#cbd5e1}:root[data-theme=dark] .msg-action-btn:not(:disabled):hover{color:#f8fafc}:root[data-theme=dark] .msg-action-btn:not(:disabled):hover svg{background:#0f172ae6}.chat-input-area{padding:10px 18px 16px;border-top:none;background:transparent;border-radius:0;display:flex;flex-direction:column;align-items:stretch}.chat-main-primary--file-drag{outline:2px dashed #5a97f6;outline-offset:-2px;border-radius:12px;background:#5a97f60d}:root[data-theme=dark] .chat-main-primary--file-drag{outline-color:#7eb0f8;background:#7eb0f812}.composer-attachments-strip{flex-shrink:0;width:100%;padding:0 2px 10px}.composer-attachments-strip .attachments-row.attachments-row--above-composer{margin-bottom:0;justify-content:flex-start}.composer-shell{border:3px solid #bfd0ea;border-radius:24px;background:#f7f8fb;padding:10px 12px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.composer-textarea{width:100%;min-height:28px;max-height:86px;resize:none;overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;word-break:break-word;padding:6px 4px;border:none;background:transparent;font-size:1.02rem;line-height:1.45}.composer-textarea::placeholder{font-weight:500}.composer-textarea:focus{outline:none}.composer-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.composer-tools-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.composer-tool-cluster{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:nowrap;white-space:nowrap}.composer-info-anchor{position:relative;display:inline-flex;align-items:center;flex-shrink:0}button.composer-info-btn{margin:0;font:inherit;color:inherit;cursor:pointer}.chip.icon-only.composer-info-btn{width:28px;height:28px}.composer-info-letter{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:.76rem;font-weight:800;font-style:normal;line-height:1;-webkit-user-select:none;user-select:none}button.composer-info-btn:focus-visible{outline:2px solid #5a97f6;outline-offset:2px}.composer-info-btn--open{border-color:#6ea1f2;color:#2563eb}.composer-help-bubble{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);z-index:40;white-space:normal;overflow-wrap:break-word;word-wrap:break-word;box-sizing:border-box;min-width:200px;max-width:min(320px,88vw);padding:12px 14px;border-radius:12px;border:1px solid #c7d5e8;background:#fff;box-shadow:0 6px 24px #0f172a24;font-size:.8rem;line-height:1.5;color:#334155;text-align:center;pointer-events:none}.composer-help-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:#fff}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;border:1px solid #b5c5df;background:#fff;font-size:.78rem;color:#63748f}.chip.icon-only{width:24px;height:24px;justify-content:center;padding:0}.toggle-chip{border-color:#6ea1f2;color:#4b83de;font-weight:700;background:#fff}.toggle-chip.active{background:#5a97f6;color:#fff;border-color:#5a97f6}.input-tool-btn{width:34px;height:34px;border:1px solid #bccbe2;background:#fdfefe;color:#5f6d80;border-radius:10px}.tool-sprite-icon{width:20px;height:20px;object-fit:contain;display:block}.chip.primary{border-color:#c7ddf9;background:var(--accent-soft);color:#1d4ed8;font-weight:600}.chip:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .conv-head{background:var(--unity-panel-blue);border-color:var(--unity-panel-blue)}:root[data-theme=dark] .new-chat-btn{background:#5a6574}:root[data-theme=dark] .conv-item:hover{background:#272e37}:root[data-theme=dark] .conv-item.selected{background:#333b45;border-color:#4a5563}:root[data-theme=dark] .chat-input-area{background:transparent}:root[data-theme=dark] .chat-main,:root[data-theme=dark] .chat-top.chat-top-shared,:root[data-theme=dark] .chat-body{background:#1d2229}:root[data-theme=dark] .composer-shell{border-color:#434c58;background:#252c35}:root[data-theme=dark] .composer-textarea{color:var(--text)}:root[data-theme=dark] .composer-textarea::placeholder{color:#9aa5b5}:root[data-theme=dark] .composer-help-bubble{border-color:#434c58;background:#2a313b;color:#e2e8f0;box-shadow:0 8px 28px #00000073}:root[data-theme=dark] .composer-help-bubble:after{border-top-color:#2a313b}:root[data-theme=dark] .composer-info-btn--open{border-color:#6b7a8d;color:#93c5fd}:root[data-theme=dark] .chip{border-color:#4c5663;background:#2a313b;color:#aab5c3}:root[data-theme=dark] .toggle-chip{border-color:#566170;color:#c1cad5;background:#303843}:root[data-theme=dark] .toggle-chip.active{background:#525d6b;border-color:#525d6b;color:#e7eef8}:root[data-theme=dark] .input-tool-btn{border-color:#4c5663;background:#2a313b}:root[data-theme=dark] .rail-toggle-wrap{background:#2a3442;border-color:#3a4758;color:#e2e8f0}:root[data-theme=dark] .rail-toggle-wrap:hover{background:#313d4d}:root[data-theme=dark] .rail-toggle-sprite{filter:brightness(0) saturate(100%) invert(95%) sepia(8%) saturate(269%) hue-rotate(180deg) brightness(95%) contrast(92%)}:root[data-theme=dark] .nav-rail .nav-item,:root[data-theme=dark] .chat-top.chat-top-shared .chat-top-left{color:#c7d0dd}:root[data-theme=dark] .nav-rail .nav-item .nav-sprite-icon,:root[data-theme=dark] .chat-top.chat-top-shared .chat-top-left .nav-sprite-icon:not(.nav-sprite-icon--tinted){filter:brightness(0) saturate(100%) invert(87%) sepia(8%) saturate(441%) hue-rotate(178deg) brightness(92%) contrast(89%);opacity:.96}:root[data-theme=dark] .chat-top.chat-top-shared .chat-top-left .nav-sprite-icon.nav-sprite-icon--tinted{filter:none;opacity:.9}:root[data-theme=dark] .nav-rail .nav-item svg,:root[data-theme=dark] .chat-top.chat-top-shared .chat-top-left svg,:root[data-theme=dark] .icon-btn svg{color:#c7d0dd;opacity:.95}:root[data-theme=dark] .app-chrome-header.chat-top .chat-top-actions .icon-btn,:root[data-theme=dark] .app-chrome-header.chat-top .chat-top-actions .icon-btn svg{color:#cbd5e1;opacity:.98}:root[data-theme=dark] .nav-rail:not(.nav-slim)>.nav-profile-wrap,:root[data-theme=dark] .nav-rail.nav-slim .nav-profile-wrap{background:#182230;border-top-color:#2c3f59}:root[data-theme=dark] .login-modal{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 24px 50px #02061773;color:var(--text)}:root[data-theme=dark] .login-sub,:root[data-theme=dark] .login-links a,:root[data-theme=dark] .hint-text,:root[data-theme=dark] .stay-out-btn{color:var(--text-muted)}:root[data-theme=dark] .login-modal .partner-with-line--hp,:root[data-theme=dark] .login-partner-line{color:#8e9aad}:root[data-theme=dark] .google-btn{background:#222b38e6;border-color:#5d6f8a;color:#d8dde4}:root[data-theme=dark] .continue-btn{background:#4d5764;color:#edf1f5}:root[data-theme=dark] .login-outlined-field{--login-label-cut-bg: #2b3340}:root[data-theme=dark] .login-outlined-label{color:#8fb3f4}:root[data-theme=dark] .login-outlined-input{border-color:#4f6482;color:var(--text)}:root[data-theme=dark] .login-outlined-input::placeholder{color:#8f9bad}:root[data-theme=dark] .login-outlined-input:disabled{color:#8f9bad;border-color:#435468}:root[data-theme=dark] .nav-profile-chip:hover{background:#7f95b12e}:root[data-theme=dark] .profile-popover-card{background:var(--bg-card);border-color:var(--border);color:var(--text)}:root[data-theme=dark] button.profile-popover-top.profile-popover-profile-btn{background:#2a3139}:root[data-theme=dark] button.profile-popover-top.profile-popover-profile-btn:hover{background:#343c47}:root[data-theme=dark] .profile-logout-btn,:root[data-theme=dark] .profile-modal-link-btn,:root[data-theme=dark] .profile-modal-sub-val,:root[data-theme=dark] .nav-profile-name{color:var(--text)}:root[data-theme=dark] .profile-popover-sub-label,:root[data-theme=dark] .profile-modal-email,:root[data-theme=dark] .profile-modal-subscription-line,:root[data-theme=dark] .profile-modal-expiry,:root[data-theme=dark] .nav-profile-role,:root[data-theme=dark] .role-signed-out{color:var(--text-muted)}:root[data-theme=dark] .profile-popover-divider{background:#3a4657}:root[data-theme=dark] .profile-upgrade-btn{background:#5b6674;color:#eef2f6}:root[data-theme=dark] .profile-token-pill{background:#4d5d72}:root[data-theme=dark] .profile-modal{background:var(--bg-card);border-color:var(--border);color:var(--text)}:root[data-theme=dark] .profile-modal-close{background:#334155;color:#d4dbe3}:root[data-theme=dark] .profile-field-outline{--profile-label-cut-bg: #2b3340;border-color:#4f6482;background:#222c398c}:root[data-theme=dark] .profile-field-outline:focus-within{border-color:#6b9ae8;box-shadow:0 0 0 3px #6b9ae833}:root[data-theme=dark] .profile-field-outline.profile-field-outline--gray{border-color:#6b7280;background:#2a2a2e80}:root[data-theme=dark] .profile-field-outline.profile-field-outline--gray:focus-within{border-color:#9ca3af;box-shadow:0 0 0 3px #9ca3af2e}:root[data-theme=dark] .profile-field-outline input{color:var(--text)}:root[data-theme=dark] .profile-field-outline .profile-field-label{color:#8fb3f4}:root[data-theme=dark] .profile-field-outline.profile-field-outline--gray .profile-field-label{color:#9ca3af}:root[data-theme=dark] .profile-field-readonly{border-color:#6b7280;background:#2a2a2e73}:root[data-theme=dark] .profile-field-readonly .profile-field-label{color:#9ca3af}:root[data-theme=dark] .profile-modal-warn,:root[data-theme=dark] .profile-modal-loading{color:var(--text-muted)}:root[data-theme=dark] .profile-field-readonly p,:root[data-theme=dark] .profile-modal-role-account,:root[data-theme=dark] .profile-modal-update-btn--ghost{color:var(--text)}:root[data-theme=dark] .profile-modal-update-btn--ghost{background:#334155;border:1px solid #475569}:root[data-theme=dark] .profile-modal-error{color:#fda4af}.voice-btn{width:74px;height:74px;border-radius:50%;border:none;flex-shrink:0;background:linear-gradient(180deg,#eba948,#d98a1f);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px #d98a1f73;margin-right:-4px;margin-top:-14px}.voice-btn:hover{filter:brightness(1.03)}.voice-btn.listening{animation:pulse 1s infinite}:root[data-theme=dark] .voice-btn{background:linear-gradient(180deg,#4f8ad5,#2f5f9c);box-shadow:0 6px 14px #2f5f9c73}.voice-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px}.voice-popup-card{width:min(560px,92vw);background:linear-gradient(180deg,#fffc,#f7faffa3);border-radius:22px;border:1px solid rgba(255,255,255,.56);backdrop-filter:blur(16px) saturate(1.14);-webkit-backdrop-filter:blur(16px) saturate(1.14);padding:30px 30px 28px;box-shadow:inset 0 1px #ffffff8a,0 24px 48px #0f172a38;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.voice-popup-bot{width:96px;height:auto;object-fit:contain}.voice-popup-title{margin:0;font-size:clamp(1.15rem,2.2vw,1.8rem);font-weight:700;color:#1f2937;letter-spacing:.01em}.voice-popup-subtitle{margin:0 0 4px;max-width:32ch;color:#64748b;font-size:.92rem;line-height:1.45}.voice-stop-btn{width:84px;height:84px;border-radius:999px;border:none;background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 10px 20px #dc262647;display:flex;align-items:center;justify-content:center;color:#fff;transition:transform .15s ease,filter .15s ease}.voice-stop-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.03)}.voice-stop-btn:disabled{filter:grayscale(.12) brightness(.94);cursor:progress}.voice-stop-square{width:28px;height:28px;border-radius:6px;background:#fff}.voice-stop-label{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#334155}@keyframes pulse{50%{transform:scale(1.04)}}.error-banner{margin:0 20px 12px;padding:10px 14px;border-radius:var(--radius-sm);background:#fef2f2;color:#b91c1c;font-size:.88rem;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.error-banner-action-btn{border:1px solid #ef4444;background:#fff;color:#b91c1c;border-radius:999px;padding:5px 12px;font-size:.78rem;font-weight:600;cursor:pointer;font-family:inherit}.error-banner-action-btn:hover{background:#fee2e2}.attachments-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px;align-items:flex-start}.attachment-card{position:relative;border-radius:8px;overflow:visible}.attachment-card.image{width:86px;height:62px}.attachment-thumb{width:100%;height:100%;object-fit:cover;border-radius:6px;border:1px solid #c8d5ea;background:#fff}.attachment-card.pdf{width:90px;min-height:70px}.attachment-pdf{width:100%;min-height:70px;border:1px solid #c8d5ea;border-radius:8px;background:#f9fbff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 6px 6px}.attachment-pdf-icon{color:#3b82f6;display:inline-flex}.attachment-name{max-width:100%;font-size:.66rem;line-height:1.15;color:#475569;text-align:center;word-break:break-word}.attachment-remove{position:absolute;right:-8px;top:-8px;width:24px;height:24px;border-radius:7px;border:none;background:#f87171;color:#fff;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0003}.output-actions{display:flex;justify-content:flex-end;gap:10px;margin:6px 0 10px}.definitions-panel{margin-top:10px;margin-bottom:6px;margin-left:14px;max-width:min(36.4rem,calc(100% - 14px));width:fit-content;opacity:.92}.definitions-title{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px;color:#9a5f0a;font-size:.8rem;font-weight:600;letter-spacing:.01em}.definitions-title-icon{width:22px;height:22px;border-radius:5px;background:#c9780d;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.definitions-title-icon svg{display:block;width:12px!important;height:12px!important}.definitions-grid{background:#d2d8de;border-radius:12px;padding:12px 14px;display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:flex-start;gap:7px 10px;max-height:min(26vh,182px);overflow-y:auto;overflow-x:hidden;border:1px solid rgba(100,120,140,.22);scrollbar-width:thin;scrollbar-color:#9aa8b4 #e2e6ea}.definitions-grid::-webkit-scrollbar{width:5px}.definitions-grid::-webkit-scrollbar-thumb{background:#9aa8b4;border-radius:3px}.definition-chip{flex:0 1 auto;border:1px solid #8fa7b5;background:#e9eef5;color:#3d5699;border-radius:8px;min-height:28px;padding:4px 8px;font-size:.78rem;font-weight:500;justify-content:center;text-align:center;line-height:1.25}.definition-chip:hover{background:#f2f6fb}@media (max-width: 520px){.definitions-panel{width:calc(100% - 14px);max-width:calc(100% - 14px);margin-left:14px;box-sizing:border-box}.definitions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start}.definition-chip{min-width:0;width:100%;max-width:100%}}.definition-bubble{margin-top:8px;position:relative;background:#fafbfc;border:1px solid #c5d0dc;border-radius:8px;padding:8px 28px 8px 10px;color:#374151;font-size:.8rem;line-height:1.42;max-width:min(100%,52ch)}.definition-bubble:before{content:"";position:absolute;top:-5px;left:16px;width:8px;height:8px;background:#fafbfc;border-left:1px solid #c5d0dc;border-top:1px solid #c5d0dc;transform:rotate(45deg)}.definition-bubble-close{position:absolute;top:5px;right:5px;width:18px;height:18px;border-radius:4px;border:1px solid #d1d5db;background:#fff;color:#64748b;padding:0;font-size:.85rem;line-height:1}:root[data-theme=dark] .definitions-title{color:#c9a05a}:root[data-theme=dark] .definitions-title-icon{background:#a86a0a}:root[data-theme=dark] .definitions-grid{background:#2a313b;border-color:#ffffff14;scrollbar-color:#4a5563 #2a313b}:root[data-theme=dark] .definition-chip{border-color:#4a5563;background:#333b45;color:#9db4e8}:root[data-theme=dark] .definition-chip:hover{background:#3d4653}:root[data-theme=dark] .definition-bubble{background:#252c35;border-color:#434c58;color:#e2e8f0}:root[data-theme=dark] .definition-bubble:before{background:#252c35;border-left-color:#434c58;border-top-color:#434c58}.credentials-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 14px;background:#fff8e6;border-bottom:1px solid #fde68a;font-size:.8rem}.credentials-bar input{flex:1;min-width:140px;padding:6px 10px;border-radius:6px;border:1px solid var(--border)}.credentials-bar button{padding:6px 12px;border-radius:6px;border:none;background:var(--accent);color:#fff;font-weight:600}.icon-editor-launch-row{display:flex;flex-direction:column;align-items:stretch;gap:6px}.icon-editor-launch{border:1px solid #c5d4ef;background:#fff;color:#1e3a5f;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700}.icon-editor-launch.icon-editor-launch--login-suppress-on{background:#fef3c7;border-color:#f59e0b;color:#78350f}.chat-bot-sprite-icon{flex-shrink:0;vertical-align:middle}.icon-editor-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12500;background:#0f172a73;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:12px;box-sizing:border-box}.icon-editor-modal{width:min(1680px,calc(100vw - 24px));max-height:min(94vh,1000px);overflow:auto;background:linear-gradient(180deg,#fffc,#f7fbffa8);border:1px solid rgba(255,255,255,.56);backdrop-filter:blur(16px) saturate(1.14);-webkit-backdrop-filter:blur(16px) saturate(1.14);border-radius:14px;border:1px solid #d2dbe9;box-shadow:0 22px 48px #0f172a38;padding:16px 18px;box-sizing:border-box}.icon-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.icon-editor-head h3{margin:0}.icon-editor-close{border:none;background:#e2e8f0;border-radius:8px;width:30px;height:30px}.icon-editor-help{margin:8px 0 12px;color:#64748b;font-size:.82rem}.icon-editor-bg-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}.icon-editor-bg-label{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-right:4px}.icon-editor-bg-btn{border:1px solid #cbd5e1;background:#f8fafc;border-radius:8px;padding:6px 12px;font-size:.76rem;font-weight:600;color:#334155}.icon-editor-bg-btn:hover{background:#f1f5f9}.icon-editor-bg-btn.active{border-color:#3b82f6;background:#dbeafe;color:#1d4ed8}.icon-editor-canvas{box-sizing:border-box}.icon-editor-canvas--white{background:#fff}.icon-editor-canvas--black{background:#0a0a0a}.icon-editor-canvas--checkered{background-color:#e8e8e8;background-image:linear-gradient(45deg,#bdbdbd 25%,transparent 25%),linear-gradient(-45deg,#bdbdbd 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#bdbdbd 75%),linear-gradient(-45deg,transparent 75%,#bdbdbd 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0px}.icon-editor-item-thumb{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid #cbd5e1;overflow:hidden}.icon-editor-grid{display:grid;grid-template-columns:minmax(260px,22vw) minmax(0,1fr);gap:16px;align-items:start}.icon-editor-list{border:1px solid #e2e8f0;border-radius:10px;padding:8px;max-height:min(82vh,780px);overflow:auto}.icon-editor-item{width:100%;display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:8px 10px;border-radius:8px;text-align:left;font-size:.82rem;color:#334155}.icon-editor-item.active{background:#dbeafe;color:#1d4ed8}.icon-editor-controls{display:grid;grid-template-rows:auto auto 1fr;gap:10px;min-height:0;min-width:0}.icon-editor-fields{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:8px}.icon-editor-fields label{display:flex;flex-direction:column;gap:4px;font-size:.72rem;color:#64748b}.icon-editor-fields input{border:1px solid #cbd5e1;border-radius:8px;padding:7px 8px}.icon-editor-current{display:flex;align-items:center;gap:10px}.icon-editor-current-preview{width:48px;height:48px;border:1px solid #cbd5e1;border-radius:8px;display:flex;align-items:center;justify-content:center}.icon-editor-sheet-wrap{min-height:0;min-width:0}.icon-editor-sheet{position:relative;border:1px solid #cbd5e1;border-radius:10px;overflow:hidden;cursor:crosshair}.icon-editor-sheet img{width:100%;display:block}.icon-editor-selection{position:absolute;border:2px solid #ef4444;box-shadow:inset 0 0 0 9999px #ef44441f;pointer-events:none}.icon-editor-sheet-hint{margin-top:6px;font-size:.74rem;color:#64748b}.icon-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.icon-editor-actions button{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:8px 10px;font-size:.78rem}.mode-color-editor-modal{width:min(720px,calc(100vw - 24px))}.mode-color-grid{display:grid;grid-template-columns:1fr;gap:8px;max-height:58vh;overflow:auto;padding-right:2px}.mode-color-row{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(110px,140px);gap:10px;align-items:center}.mode-color-name{font-size:.82rem;color:#334155}.mode-color-row input[type=color]{width:34px;height:28px;border:1px solid #cbd5e1;border-radius:6px;padding:0;background:#fff}.mode-color-hex{border:1px solid #cbd5e1;border-radius:8px;padding:6px 8px;font:inherit;font-size:.78rem;text-transform:uppercase}.theme-color-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.theme-color-section{min-width:0}.theme-color-heading{margin:0 0 8px;font-size:.82rem;color:#334155;text-transform:uppercase;letter-spacing:.05em}[data-theme=dark] .theme-color-heading,[data-theme=dark] .mode-color-name{color:#cbd5e1}@media (max-width: 900px){.theme-color-columns{grid-template-columns:1fr}}@media (max-width: 720px){.icon-editor-modal{width:calc(100vw - 16px);max-height:92vh;padding:12px}.icon-editor-grid{grid-template-columns:1fr}.icon-editor-list{max-height:38vh}}@media (max-width: 960px){.conv-panel{width:240px}}@media (max-aspect-ratio: 13/10){.app-root{--nav-rail-slim-w: 54px}.app-shell{position:relative}.app-root:not(.is-slim) .app-main-column{margin-left:var(--nav-rail-slim-w);transition:margin-left .2s ease}.app-root:not(.is-slim) .nav-rail{position:absolute;left:0;top:0;bottom:0;height:100%;max-height:100%;z-index:40;box-shadow:4px 0 20px #0f172a1f}.app-root.is-slim .nav-rail{position:relative;z-index:1;flex-shrink:0;box-shadow:none}.chat-layout,.feature-main{flex:1 1 auto;width:100%;min-width:0}.feature-main{border-left:none}.chat-columns{position:relative;flex:1;min-height:0}.conv-panel:not(.collapsed){position:absolute;top:var(--conv-panel-top-offset);bottom:0;height:calc(100% - var(--conv-panel-top-offset));left:calc(240px - var(--nav-rail-slim-w));width:min(280px,calc(100vw - 252px));max-width:min(280px,calc(100vw - 252px));z-index:45;margin:0;background:var(--conv-drawer-surface);border:none;border-radius:16px;overflow:hidden;box-shadow:4px 0 20px #0f172a24}.conv-panel:not(.collapsed):before{display:block;top:52px;left:calc(8px + (100% - 16px)*.07);right:calc(8px + (100% - 16px)*.07);height:19px;background:var(--conv-drawer-surface);z-index:6}.conv-panel:not(.collapsed):after{display:none}.conv-panel:not(.collapsed) .conv-head{margin-left:8px;margin-right:8px;border-radius:16px 16px 0 0;border:1px solid var(--unity-panel-blue);border-bottom:none}.conv-panel:not(.collapsed) .conv-list{margin:0 8px;border:none;border-radius:0 0 16px 16px;background:var(--conv-drawer-surface)}.conv-panel:not(.collapsed) .new-chat-btn{z-index:7}.conv-panel:not(.collapsed) .conv-panel--test-gen .conv-list.conv-list--test-gen-form{border-radius:0}.conv-panel:not(.collapsed) .conv-panel--test-gen-foot{margin:0 8px;border:none;border-top:1px solid rgba(148,163,184,.35);border-radius:0 0 16px 16px;background:var(--conv-drawer-surface)}.app-root.is-slim .conv-panel:not(.collapsed){left:0;width:min(280px,calc(100% - 12px));max-width:min(280px,calc(100% - 12px))}@media (max-width: 960px){.conv-panel:not(.collapsed){width:min(240px,calc(100vw - 252px));max-width:min(240px,calc(100vw - 252px))}.app-root.is-slim .conv-panel:not(.collapsed){width:min(240px,calc(100% - 12px));max-width:min(240px,calc(100% - 12px))}}.conv-panel.collapsed{position:absolute;top:var(--conv-panel-top-offset);bottom:0;left:calc(240px - var(--nav-rail-slim-w));width:0;max-width:0;min-width:0;margin:0;padding:0;overflow:hidden;border:none;pointer-events:none;box-shadow:none;z-index:45;background:transparent}.app-root.is-slim .conv-panel.collapsed{left:0}.chat-main{flex:1 1 auto;width:100%;min-width:0}.test-gen-route .chat-main .test-gen-output-scroll{padding-left:max(44px,2.75rem)}.test-gen-empty>.empty-chat{transform:none;max-height:none;min-height:0}.chat-main--empty-state .chat-main-thread-wrap{justify-content:flex-start;align-items:stretch;transform:none;padding-top:0}.chat-main--empty-state .chat-main-thread-wrap>.chat-body{flex:1 1 auto;max-height:none;width:100%;max-width:none;margin-inline:0}.chat-main--empty-state .chat-main-thread-wrap>.chat-input-area{width:100%;max-width:none;margin-inline:0;box-sizing:border-box}.chat-main--empty-state.chat-main--conv-collapsed .chat-main-thread-wrap>.chat-input-area{width:100%;max-width:none;margin-inline:0;align-self:stretch}.chat-main:not(.chat-main--empty-state) .chat-main-thread-wrap>.chat-input-area{width:100%;max-width:none;margin-inline:0}.chat-layout .chat-main .chat-main-thread-wrap>.chat-input-area{padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px))}.chat-layout .chat-main.chat-main--conv-collapsed .chat-main-thread-wrap>.chat-input-area{padding-left:max(44px,2.75rem,env(safe-area-inset-left,0px));padding-right:max(44px,2.75rem,env(safe-area-inset-right,0px))}.app-root:not(.is-slim) .icon-btn.conv-fab{z-index:45;left:calc(240px - var(--nav-rail-slim-w))}:root[data-theme=dark] .conv-panel:not(.collapsed){box-shadow:4px 0 28px #0000008c}}.feature-scroll:has(.test-gen-route),.feature-scroll:has(.activity-workspace){padding:0;display:flex;flex-direction:column;min-height:0}.test-gen-route{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.test-gen-route>.chat-columns{flex:1;min-height:0}.activity-workspace{flex:1;min-height:0;min-width:0}.activity-workspace .activity-side-panel:before,.activity-workspace .activity-side-panel:after{display:none}.activity-panel-head{flex-wrap:nowrap;gap:6px;border-radius:16px 16px 0 0;margin:0 8px;min-height:46px;padding:7px 16px;border:1px solid var(--unity-panel-blue);border-bottom:none;background:var(--unity-panel-blue)}.activity-panel-head .conv-title{font-size:.88rem;font-weight:600;letter-spacing:0;line-height:1.2}.activity-panel-head-actions{display:flex;align-items:center;gap:6px}.activity-sort-wrap{position:relative}.activity-sort-toggle-btn{font-weight:700}.activity-sort-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:162px;border:1px solid #cdd8eb;border-radius:10px;background:#fff;box-shadow:0 10px 24px #0f172a29;padding:6px;z-index:8}.activity-sort-menu-item{display:block;width:100%;border:none;background:transparent;text-align:left;font:inherit;font-size:.76rem;color:#1e293b;border-radius:8px;padding:7px 8px}.activity-sort-menu-item:hover{background:#edf4ff}.activity-sort-menu-item.active{background:#dbeafe;color:#1d4ed8}.activity-panel-error{margin:0 10px 8px}.activity-activity-list{padding-top:8px}.activity-list-empty{padding:16px 12px;margin:0;font-size:.86rem}.activity-row{--activity-mode-color: #7f96b5;display:flex;flex-direction:column;align-items:stretch;gap:4px;width:calc(100% - 10px);margin:0 5px;padding:9px 10px 10px;border:none;border-radius:8px;background:transparent;text-align:left;cursor:pointer;font:inherit;color:var(--text);box-sizing:border-box;transition:background .12s ease}.activity-row+.activity-row{border-top:1px solid #eef3fb}.activity-row:hover{background:#94a3b81f}.activity-row--selected{background:#4f83f51f}.activity-row-top{display:flex;align-items:center;gap:6px;min-width:0}.activity-cat-icon{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;color:var(--activity-mode-color)}.activity-cat-label{font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--activity-mode-color);flex:1 1 auto;min-width:0}.activity-row-time{font-size:.72rem;color:#8b95a8;flex-shrink:0}.activity-row-title{font-size:.9rem;font-weight:600;color:var(--text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.activity-detail{min-width:0}.activity-detail-empty{display:flex;align-items:center;justify-content:center;flex:1;min-height:200px;padding:24px}.activity-detail-inner{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:auto;padding:16px 18px 24px}.activity-chat-replay{flex:1 1 auto;min-height:0}.activity-detail-actions{flex-shrink:0;display:flex;justify-content:flex-end;padding:16px 0 0;gap:10px}.activity-detail-actions .ghost-btn{margin-left:0;border:none;background:var(--accent);color:#fff;font-weight:600}.activity-continue-chat-btn{border-radius:var(--radius-sm);padding:8px 14px;font-weight:600}.activity-generator-detail .activity-generator-meta{margin:0 0 8px;font-size:.82rem}.activity-generator-headline{margin:0 0 16px;font-size:1.15rem;font-weight:700;line-height:1.3}.activity-gen-block{margin-bottom:18px}.activity-gen-label{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.activity-gen-user .msg-bubble,.activity-gen-assistant .msg-bubble{max-width:100%}.activity-test-detail .activity-test-title{margin:0 0 14px;font-size:1.05rem;font-weight:700}.activity-test-pending-meta{margin-bottom:16px}.activity-test-actions{justify-content:flex-start}.activity-test-hint{margin:12px 0 0;font-size:.8rem}.activity-test-detail .take-test-review{flex:1;min-height:0}.conv-panel--test-gen:before,.conv-panel--test-gen:after{display:none}.conv-panel--test-gen-body{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}.conv-panel--test-gen .conv-list.conv-list--test-gen-form{flex:1 1 auto;min-height:0;padding:16px 12px;border-radius:0;border-bottom:none}.conv-panel--test-gen-foot{flex-shrink:0;margin:0 8px;padding:10px 12px 14px;background:var(--conv-drawer-surface);border:1px solid var(--unity-panel-blue);border-top:1px solid var(--border);border-radius:0 0 16px 16px;z-index:1}.conv-panel--test-gen-foot .gen-config-generate-wrap{margin-top:0;padding-top:0;border-top:none}.gen-config-generate-wrap{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.gen-config-generate-btn{width:100%;border:none;border-radius:16px;padding:14px 16px;font-size:1rem;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(180deg,#5a97f6,#3b7ae8)}.gen-config-generate-btn.gen-config-generate-btn--sprite{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0;min-height:0;height:auto;border-radius:0;background:transparent;box-shadow:none}.gen-config-generate-btn-skin{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-color:transparent}.gen-config-generate-btn-label{position:relative;z-index:1;text-shadow:0 1px 3px rgba(15,23,42,.55)}.gen-config-generate-btn.gen-config-generate-btn--sprite:disabled .gen-config-generate-btn-skin{opacity:.55;filter:grayscale(.08)}.gen-config-generate-btn.gen-config-generate-btn--sprite:disabled .gen-config-generate-btn-label{opacity:.92}.gen-config-generate-btn:disabled{opacity:.55;cursor:not-allowed}.gen-config-generate-btn.gen-config-generate-btn--sprite:disabled{opacity:1}.gen-config-question-block{margin-bottom:14px}.gen-config-qtype-row{display:flex;align-items:center;gap:10px;margin-top:6px}.gen-config-qtype-row .config-select{flex:1 1 auto;min-width:0}.gen-config-qtype-row .config-stepper{flex-shrink:0}.config-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.config-field-label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.config-field-control{min-width:0}.config-select,.config-input,.config-textarea{width:100%;padding:10px 12px;border-radius:12px;border:2px solid #bfd0ea;background:#fff;font-size:.92rem;color:var(--text);box-sizing:border-box}.config-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;min-height:42px;padding:10px 38px 10px 12px;line-height:1.35;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px 14px}.config-textarea{resize:vertical;min-height:72px;line-height:1.45}.config-stepper{display:inline-flex;align-items:center;gap:6px}.config-stepper-btn{width:34px;height:34px;border-radius:10px;border:1px solid #bccbe2;background:#fdfefe;font-size:1.1rem;line-height:1;cursor:pointer;color:#334155}.config-stepper-btn:disabled{opacity:.45;cursor:not-allowed}.config-stepper-value{min-width:28px;text-align:center;font-weight:700;font-size:.95rem}.config-link-btn{display:inline-block;margin:0 0 12px;padding:0;border:none;background:none;color:#2563eb;font-weight:600;font-size:.86rem;cursor:pointer}.config-link-btn:disabled{opacity:.5;cursor:not-allowed}.config-divider{border:none;border-top:1px solid var(--border);margin:4px 0 14px}.config-add-prompt-wrap{display:flex;justify-content:center;margin:6px 0 12px}.config-add-prompt-btn{padding:10px 22px;border:none;border-radius:999px;background:linear-gradient(180deg,#8ec0ff,#5a97f6 55%,#4a84e8);color:#fff;font-weight:600;font-size:.88rem;cursor:pointer;box-shadow:0 2px 8px #2563eb47}.config-add-prompt-btn:hover:not(:disabled){filter:brightness(1.03)}.config-add-prompt-btn:disabled{opacity:.5;cursor:not-allowed}.config-section-title{margin:8px 0 10px;font-size:.95rem;font-weight:700;color:var(--text)}.config-mode-segment{display:flex;gap:0;margin-bottom:14px;border-radius:12px;overflow:hidden;border:2px solid #bfd0ea;background:#f0f4fc}.config-mode-segment button{flex:1 1 50%;padding:10px 12px;border:none;background:transparent;font-weight:600;font-size:.9rem;cursor:pointer;color:var(--text)}.config-mode-segment button:disabled{opacity:.55;cursor:not-allowed}.config-mode-segment button.active{background:#5a97f6;color:#fff}.config-mode-segment button:not(.active):hover:not(:disabled){background:#5a97f61f}:root[data-theme=dark] .config-mode-segment{border-color:var(--border);background:var(--conv-drawer-surface)}:root[data-theme=dark] .config-mode-segment button{color:var(--text);background:transparent}:root[data-theme=dark] .config-mode-segment button.active{background:#4f8bf0;color:#f8fafc}:root[data-theme=dark] .config-mode-segment button:not(.active):hover:not(:disabled){background:#4f8bf033}.config-addon-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.config-checkbox-row{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.88rem;color:var(--text)}.conv-panel--test-gen .conv-list--test-gen-form .config-checkbox-row{margin-bottom:12px}.config-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;width:18px;height:18px;flex:0 0 18px;border:1.5px solid #94a3b8;border-radius:4px;background:#fff;display:inline-grid;place-content:center;cursor:pointer}.config-checkbox:before{content:"";width:10px;height:10px;transform:scale(0);transition:transform .12s ease-in-out;clip-path:polygon(14% 44%,0 60%,43% 100%,100% 17%,84% 3%,43% 65%);box-shadow:inset 1em 1em #5a97f6}.config-checkbox:checked{border-color:#5a97f6}.config-checkbox:checked:before{transform:scale(1)}.config-checkbox:disabled{cursor:not-allowed;opacity:.55}:root[data-theme=dark] .config-checkbox{border-color:#64748b;background:#0f172a}.config-upload-row{margin-bottom:14px}.config-reference-upload .config-field-label{display:block;margin-bottom:8px}.config-reference-upload-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.config-upload-btn-icon{display:inline-block;font-weight:700;margin-right:2px}.config-upload-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:8px}.config-upload-clear{flex-shrink:0;padding:5px 12px;border-radius:8px;border:1px solid #bccbe2;background:#f8fafc;color:#334155;font-size:.82rem;font-weight:600;cursor:pointer}.config-upload-clear:hover:not(:disabled){background:#eef2f7}.config-upload-clear:disabled{opacity:.45;cursor:not-allowed}.config-upload-label{display:inline-flex;align-items:center;gap:10px;margin-top:6px}.config-upload-input{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden}.config-upload-btn{display:inline-block;padding:8px 14px;border-radius:10px;background:#5a97f6;color:#fff;font-weight:600;font-size:.85rem;cursor:pointer}.config-upload-hint{margin-left:8px;font-size:.78rem;color:var(--text-muted)}.config-upload-names{display:block;margin-top:6px;font-size:.78rem;color:#64748b;word-break:break-word}.test-gen-output-scroll{flex:1;min-height:0;overflow:auto;padding:14px 10px 22px;scrollbar-gutter:stable;transition:padding-left .2s ease}.test-gen-output-scroll:has(>.test-gen-empty){display:flex;flex-direction:column}.test-gen-empty{flex:1;display:flex;flex-direction:column;align-items:stretch;min-height:0;width:100%}.test-gen-empty>.empty-chat{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:720px;margin-inline:auto;box-sizing:border-box;padding:12px 20px 8px;min-height:280px;max-height:min(44vh,340px);gap:16px;color:var(--text-muted);transform:translateY(-10%)}.test-gen-empty>.empty-chat p{max-width:420px;margin:0;font-size:.95rem;line-height:1.5}.test-gen-empty--with-recents{max-width:720px;margin-left:auto;margin-right:auto;width:100%;justify-content:flex-start;padding-top:22px}.test-gen-empty--with-recents>.empty-chat{flex:0 0 auto;justify-content:flex-start;min-height:0;max-height:none;transform:none;padding-top:8px;padding-bottom:6px}.test-gen-empty--with-recents .gen-recent-panel{flex-shrink:0;margin-top:14px}.test-gen-empty--with-recents .gen-recent-section{margin-top:30px}.gen-recent-panel{margin-top:20px;padding-top:8px;width:100%;max-width:720px;margin-left:auto;margin-right:auto}.gen-recent-section{margin-top:28px;text-align:left;width:100%}.gen-recent-heading{margin:0 0 16px;font-size:.92rem;font-weight:700;color:var(--text-muted);letter-spacing:.02em;text-align:center}.gen-recent-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.gen-recent-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;max-width:320px;padding:12px 14px;border-radius:var(--radius);transform-origin:center;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));background:var(--accent-soft);color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .14s ease;min-height:72px}.gen-recent-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent-soft) 88%,var(--accent) 12%);box-shadow:0 2px 10px #2563eb24;transform:scale(1.04)}.gen-recent-card:active{transform:scale(.98)}:root[data-theme=dark] .gen-recent-card:hover{box-shadow:0 2px 10px #00000059}.gen-recent-card-title{font-size:.95rem;font-weight:600;color:var(--text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gen-recent-card-detail{font-size:.82rem;color:var(--text-muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gen-recent-card-meta{margin-top:auto;padding-top:6px;font-size:.78rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.test-gen-output-row{display:flex;flex-direction:row;align-items:flex-start;gap:4px;width:100%;max-width:none}.test-gen-output-back{flex-shrink:0;margin-top:6px}.test-gen-loading-msg,.test-gen-output-msg{max-width:none;gap:4px;flex-wrap:wrap}.test-gen-output-row .test-gen-output-msg{flex:1;min-width:0;max-width:none}.test-gen-output-bubble{background:transparent;padding-left:0}.test-gen-output-msg-body{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:10px}.test-gen-output-msg-body .msg-bubble.test-gen-output-bubble{width:100%;min-width:0}.test-gen-output-msg-body .generator-output-actions{width:100%;min-width:0;justify-content:flex-start;gap:18px;margin-top:0;padding-left:0;box-sizing:border-box}.test-gen-output-msg-body .generator-output-actions .msg-action-btn{min-width:92px}.gen-history-loading,.gen-history-error{font-size:.88rem;margin:0;max-width:520px}.gen-history-error{color:#b91c1c}:root[data-theme=dark] .config-select,:root[data-theme=dark] .config-input,:root[data-theme=dark] .config-textarea{background-color:#252c35;border-color:#434c58;color:var(--text)}:root[data-theme=dark] .config-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}:root[data-theme=dark] .config-stepper-btn{background:#2a313b;border-color:#4c5663;color:#e2e8f0}:root[data-theme=dark] .gen-config-generate-btn:not(.gen-config-generate-btn--sprite){background:linear-gradient(180deg,#525d6b,#3d4652)}:root[data-theme=dark] .gen-config-generate-btn.gen-config-generate-btn--sprite{background:transparent;box-shadow:none}.take-test-route .take-test-browse{padding:12px clamp(20px,5vw,48px) 28px;width:100%;max-width:none;box-sizing:border-box}.take-test-history{display:flex;flex-direction:column;align-items:stretch}.take-test-history-tabs{display:inline-flex;align-self:flex-start;gap:6px;margin-bottom:18px;padding:5px;width:auto;max-width:100%;box-sizing:border-box;border:1px solid #0f172a;border-radius:999px;overflow:visible;background:#fff}.take-test-tab{flex:0 0 auto;margin:0;padding:10px 22px;border-radius:999px;border:none;cursor:pointer;font-weight:700;font-size:.95rem;letter-spacing:.01em;position:relative;z-index:1;background:transparent;color:#0f172a;box-shadow:none;transition:background .15s ease,color .15s ease,box-shadow .2s ease,transform .15s ease}.take-test-tab:focus-visible{outline:2px solid #2563eb;outline-offset:2px;z-index:3}.take-test-tab:not(.take-test-tab--active):hover{background:#0f172a0f}.take-test-tab--active{z-index:2;background:#2563eb;color:#fff;box-shadow:0 2px 10px #2563eb73,0 1px 3px #0f172a38;transform:translateY(-1px)}.take-test-history-list{display:flex;flex-direction:column;gap:12px}.take-test-history-empty{margin:8px 0 0}.take-test-card--generating{pointer-events:none;opacity:.96}.take-test-generating-inner{display:flex;align-items:flex-start;gap:16px;padding:18px clamp(16px,3.5vw,28px)}.take-test-generating-spinner{flex-shrink:0;width:28px;height:28px;margin-top:4px;border-radius:50%;border:3px solid #cbd5e1;border-top-color:#2563eb;animation:take-test-generating-spin .85s linear infinite}.take-test-generating-copy{min-width:0;flex:1}.take-test-generating-sub{margin:6px 0 0;font-size:.92rem}.take-test-generating-meta{margin:4px 0 0;font-size:.85rem}@keyframes take-test-generating-spin{to{transform:rotate(360deg)}}.take-test-card{border-radius:14px;border:2px solid #7eb0f7;background:#f5f9ff;overflow:hidden;color:#0f172a;transform-origin:center;transition:transform .14s ease,box-shadow .14s ease}.take-test-card:hover{transform:scale(1.012);box-shadow:0 4px 16px #2563eb1f}.take-test-card:active{transform:scale(1.006)}.take-test-card--selected{border-color:#3b7ae8;box-shadow:0 0 0 1px #3b7ae859}.take-test-card--selected:hover{box-shadow:0 0 0 1px #3b7ae859,0 4px 16px #2563eb1f}.take-test-card-main{display:block;width:100%;text-align:left;border:none;background:transparent;cursor:pointer;padding:14px clamp(16px,3.5vw,28px);font:inherit;color:inherit;transform:none}.take-test-card-main--row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.take-test-card-title{font-weight:800;font-size:.95rem}.take-test-card-title--large{font-size:1.1rem;flex:1 1 200px;min-width:0}.take-test-pending-meta{display:flex;gap:16px;flex-wrap:wrap;flex:2 1 280px;justify-content:flex-end}.take-test-pending-col{display:flex;flex-direction:column;gap:4px;min-width:64px}.take-test-pending-label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:capitalize}.take-test-pending-diff{font-weight:600;color:#64748b}.take-test-pending-diff.take-test-pending-diff--placeholder{color:var(--text-muted);font-weight:600}.take-test-pending-diff:not(.take-test-pending-diff--placeholder){color:#0f172a;font-weight:700}.take-test-pending-status{color:#15803d;font-weight:700;text-transform:lowercase}.take-test-pending-duration{color:#6d28d9;font-weight:700}.take-test-pending-time-left{font-weight:700;font-variant-numeric:tabular-nums;color:#0f172a}.take-test-pending-time-left--due{color:#b91c1c}.take-test-card--completed .take-test-card-main{display:flex;flex-direction:row;align-items:stretch;gap:0;padding:0}.take-test-card-left{flex:1 1 45%;padding:14px clamp(14px,3.5vw,28px);background:#f1f5f9a6}.take-test-card-sub{display:flex;align-items:center;gap:6px;margin-top:8px}.take-test-dash{display:inline-block;width:14px;height:3px;border-radius:2px}.take-test-dash--tan{background:#d4a574}.take-test-dash--muted{background:#64748b}.take-test-duration{font-weight:800;color:#6d28d9}.take-test-card-divider{width:1px;background:#cbd5e1;flex-shrink:0}.take-test-card-right{flex:1 1 45%;padding:14px clamp(14px,3.5vw,28px);display:flex;gap:20px;justify-content:space-around}.take-test-metric{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.take-test-metric-label{font-size:.72rem;color:var(--text-muted)}.take-test-metric-value{font-size:1.25rem;font-weight:800}.take-test-metric-score{font-size:1.25rem;font-weight:800;color:#2563eb}.take-test-card-actions{padding:0 clamp(14px,3.5vw,28px) 14px;display:flex;justify-content:flex-end}.take-test-view-btn{border:none;border-radius:10px;padding:10px 20px;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(180deg,#5a97f6,#3b7ae8)}.take-test-view-btn:disabled{opacity:.55;cursor:not-allowed}.take-test-flow{padding:12px clamp(20px,5vw,48px) 32px;width:100%;max-width:none;box-sizing:border-box}.take-test-flow:has(.take-test-review--completed){display:flex;flex-direction:column;min-height:0;padding-right:clamp(10px,2vw,18px);padding-bottom:10px}.take-test-back{margin-bottom:12px}.take-test-active{padding:8px clamp(12px,3vw,28px) 24px;width:100%;max-width:none;margin:0;box-sizing:border-box}.take-test-active-top{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin-bottom:14px}.take-test-active-panel{flex:1 1 200px;min-width:0;border:2px solid #7eb0f7;border-radius:14px;background:#fff;box-sizing:border-box;overflow:hidden}.take-test-active-panel-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;min-height:52px;padding:12px 14px;background:#eef2f6}.take-test-active-panel-title{flex:1 1 140px;min-width:0;font-weight:800;font-size:1.02rem;line-height:1.3;color:#0f172a}.take-test-active-panel-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px}.take-test-active-diff{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-right:2px}.take-test-active-diff-label{font-size:.72rem;font-weight:600;color:#475569;text-transform:none;letter-spacing:0}.take-test-active-diff-value{font-size:.95rem;font-weight:800;color:#ea580c;line-height:1.1}.take-test-active-diff-value--placeholder{color:#94a3b8;font-weight:700}.take-test-exit-btn{border:none;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.9rem;color:#fff;cursor:pointer;background:#e57373;box-shadow:0 1px #0000000f}.take-test-exit-btn:hover:not(:disabled){background:#ef9a9a}.take-test-header-submit{border:none;border-radius:10px;padding:10px 18px;font-weight:700;font-size:.9rem;color:#fff;cursor:pointer;background:linear-gradient(180deg,#5a97f6,#3b7ae8);box-shadow:0 1px #0000000f}.take-test-header-submit:disabled,.take-test-exit-btn:disabled{opacity:.55;cursor:not-allowed}.take-test-active-timer{flex-shrink:0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:76px;padding:10px 12px;border:2px solid #a5b4fc;border-radius:12px;background:#f5f3ff;box-sizing:border-box}.take-test-active .take-test-option-tiles{gap:12px}.take-test-timer-icon{font-size:1.35rem;line-height:1;filter:none;opacity:.92}.take-test-active-timer .take-test-timer-icon{color:#6d28d9}.take-test-timer-digits{font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums;letter-spacing:.03em;color:#5b21b6;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.take-test-progress-row{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.take-test-progress-bars{display:flex;align-items:center;flex:1 1 200px;gap:8px;min-width:0}.take-test-progress-seg{flex:1 1 0;height:8px;min-height:8px;border-radius:4px;border:2px solid #3b7ae8;background:transparent;cursor:pointer;padding:0;min-width:0;transform:none;transition:height .18s ease,flex .18s ease,border-radius .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.take-test-progress-seg--empty{background:transparent;border-color:#93c5fd}.take-test-progress-seg--fill{background:linear-gradient(90deg,#5a97f6,#3b7ae8);border-color:#3b7ae8}.take-test-progress-seg--current{flex:1.22 1 0;height:14px;min-height:14px;border-radius:6px;position:relative;z-index:1}.take-test-progress-seg--current.take-test-progress-seg--empty{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb59,0 2px 8px #2563eb38}.take-test-progress-seg--current.take-test-progress-seg--fill{box-shadow:0 0 0 1px #0f172a1f,0 2px 10px #2563eb47}.take-test-page-label{font-weight:700;font-size:.9rem;color:#334155;white-space:nowrap}.take-test-question-body{border-radius:14px;padding:4px 0 8px}.take-test-question-text{font-size:1.05rem;line-height:1.45;margin:0 0 16px;color:#0f172a}.take-test-q-num{font-weight:800}.take-test-option-tiles{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.take-test-option-tile{text-align:left;width:100%;border:2px solid #cbd5e1;border-radius:14px;padding:14px 16px;font-size:.98rem;cursor:pointer;background:#f1f5f9;color:#0f172a;transition:border-color .12s,background .12s}.take-test-option-tile:hover{border-color:#94a3b8;background:#e8eef5}.take-test-option-tile--selected{border-color:#3b7ae8;background:#e8f0fe;box-shadow:0 0 0 1px #3b7ae840}.take-test-option-tile[role=button]{-webkit-user-select:none;user-select:none}.take-test-option-tile[role=button]:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.take-test-option-key{font-weight:800}.take-test-option-line{display:flex;flex-direction:row;align-items:flex-start;gap:10px;width:100%;text-align:left}.take-test-option-line>.take-test-option-key{flex:0 0 auto;line-height:1.4;padding-top:.12em}.take-test-option-line>.mathjax-content{flex:1 1 auto;min-width:0}.take-test-pager-actions{display:flex;justify-content:space-between;gap:12px;margin-top:8px}.take-test-pager-btn{border-radius:12px;padding:12px 22px;font-weight:700;font-size:.95rem;cursor:pointer;border:2px solid #cbd5e1;background:#fff;color:#334155}.take-test-pager-btn:disabled{opacity:.45;cursor:not-allowed}.take-test-pager-btn--primary{border-color:#3b7ae8;background:linear-gradient(180deg,#5a97f6,#3b7ae8);color:#fff;border:none}.take-test-pager-btn--submit{border:none;background:linear-gradient(180deg,#5a97f6,#3b7ae8);color:#fff}.take-test-pager-btn--secondary{background:#f8fafc}.take-test-review--completed{width:100%;max-width:none;margin:0;padding:4px 0 8px 4px;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.take-test-review-nav-block{flex-shrink:0}.take-test-review-questions-scroll{flex:1 1 auto;min-height:200px;max-height:min(700px,calc(100dvh - 238px));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:6px 6px 14px;margin:8px 0 0;border:1px solid var(--border, #e2e8f0);border-radius:14px;background:#f8fafca6}.take-test-review-q-section{scroll-margin-top:16px;padding:14px 8px 18px;border-bottom:1px solid rgba(148,163,184,.45)}.take-test-review-q-section:last-child{border-bottom:none;padding-bottom:8px}.take-test-review-discuss-row{display:flex;justify-content:center;padding:12px 10px 4px}.take-test-review-discuss-btn{width:min(420px,100%)}.take-test-review-q-section--current{background:#3b82f612;border-radius:12px}.take-test-review-question-block--in-list{margin:0}.take-test-review-head-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px}.take-test-review-close{flex-shrink:0;width:40px;height:40px;border-radius:999px;border:2px solid #cbd5e1;background:#fff;font-size:1.35rem;line-height:1;cursor:pointer;color:#475569;display:flex;align-items:center;justify-content:center;padding:0}.take-test-review-close:hover{border-color:#94a3b8;color:#0f172a}.take-test-review-info-card{flex:1;min-width:0;border:2px solid #7eb0f7;border-radius:14px;padding:12px 14px;background:#f8fbff;text-align:left}.take-test-review-info-title{font-weight:800;font-size:1.05rem;margin-bottom:12px;color:#0f172a;text-align:left}.take-test-review-meta-cols{display:flex;flex-wrap:wrap;gap:16px 24px;justify-content:flex-start}.take-test-review-meta-col{display:flex;flex-direction:column;gap:4px;min-width:72px}.take-test-review-meta-label{font-size:.75rem;font-weight:600;color:var(--text-muted)}.take-test-review-meta-value{font-weight:700;font-size:.95rem}.take-test-review-meta-diff{font-weight:700;font-size:.95rem;color:#0f172a}.take-test-review-meta-diff.take-test-review-meta-diff--placeholder{font-weight:600;color:var(--text-muted)}.take-test-review-meta-status{font-weight:800;font-size:.95rem;color:#0f172a}.take-test-review-meta-duration{font-weight:800;font-size:.95rem;color:#6d28d9}.take-test-review-meta-score{font-weight:800;font-size:.95rem;font-variant-numeric:tabular-nums;color:#15803d}.take-test-review-progress .take-test-review-seg{flex:.9 1 0;height:7px;min-height:7px;border-radius:4px;cursor:pointer;padding:0;min-width:0;transform:none;transition:height .18s ease,flex .18s ease,border-radius .18s ease,box-shadow .18s ease}.take-test-review-seg--correct{border:2px solid #67c69a;background:#9ee3bf}.take-test-review-seg--wrong{border:2px solid #e78aa5;background:#f8b3c7}.take-test-review-seg--unanswered{border:2px solid #e9a0b6;background:transparent}.take-test-review-progress .take-test-review-seg--current{flex:1.45 1 0;height:12px;min-height:12px;border-radius:6px;position:relative;z-index:1;box-shadow:0 0 0 2px #0f172a24,0 2px 10px #0f172a1f}.take-test-review-q-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.take-test-review-q-text{flex:1 1 220px;margin:0}.take-test-review-unanswered-badge{flex-shrink:0;font-weight:700;color:#dc2626;font-size:.95rem;display:inline-flex;align-items:center;gap:4px}.take-test-review-unanswered-x{font-size:1.1rem}.take-test-review-option-tiles{gap:12px;margin-bottom:12px;padding-right:clamp(8px,2.5vw,20px);box-sizing:border-box}.take-test-review-option-item{display:flex;flex-direction:row;align-items:center;gap:clamp(12px,2.5vw,20px);width:100%;box-sizing:border-box}.take-test-review-option-panel{flex:1 1 auto;min-width:0;padding:14px 16px;border-radius:14px;border:2px solid #cbd5e1;background:#f1f5f9;box-sizing:border-box}.take-test-review-option-panel--neutral{border-color:#cbd5e1;background:#f1f5f9}.take-test-review-option-panel--correct{border-color:#7bcfaa;background:#eefbf4}.take-test-review-option-panel--wrong{border-color:#ea9bb3;background:#fff1f6}.take-test-review-option-tiles .take-test-review-option-tile--in-panel{width:100%;max-width:100%;min-width:0;margin-bottom:0;padding:0;border:none;background:transparent!important;box-shadow:none!important;cursor:default}.take-test-review-option-meta{flex:0 0 auto;min-width:10.5rem;max-width:min(14rem,34vw);display:flex;align-items:center;justify-content:flex-end;text-align:right}@media (max-width: 520px){.take-test-review-option-item{flex-wrap:wrap;align-items:flex-start}.take-test-review-option-panel{max-width:100%;flex:1 1 100%}.take-test-review-option-meta{width:100%;justify-content:flex-start;text-align:left;padding-left:2px}}.take-test-review-option-math{min-width:0;text-align:left}.take-test-review-info-title .mathjax-content,.take-test-active-panel-title .mathjax-content{display:inline-block;width:100%;min-width:0}.take-test-flow .test-ready-title{margin:.35em 0 .5em;font-size:1.35rem;font-weight:800;line-height:1.25;color:#0f172a}.take-test-flow .test-result-message{margin:.75em 0 0}.take-test-review-correct-chip{font-size:.82rem;font-weight:700;color:#3f9a71;white-space:nowrap;display:inline-flex;align-items:center;gap:.35em}.take-test-review-wrong-chip{font-size:.82rem;font-weight:700;color:#c75b81;white-space:nowrap;display:inline-flex;align-items:center;gap:.35em}.take-test-review-summary-label{flex:0 0 auto;min-width:7.5rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.take-test-review-explanation{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px solid #e2e8f0}.take-test-review-explanation--standalone{margin-top:16px;padding:14px 16px;border-radius:12px;border:1px solid #cbd5e1;background:#f8fafc;border-top:none}.take-test-review-explanation-body{font-size:.95rem;line-height:1.5;color:#0f172a}.take-test-review-explanation-short{margin-top:14px;padding:12px 16px;border-radius:12px;border:1px solid #bae6fd;background:#f0f9ff;display:flex;flex-direction:column;gap:8px;box-sizing:border-box}.take-test-review-explanation-short--after-long{margin-top:12px}.take-test-review-explanation-short-body{font-size:.92rem;line-height:1.5;color:#0f172a}.question-block--review.is-correct{border-left:4px solid #16a34a;padding-left:10px}.question-block--review.is-wrong{border-left:4px solid #dc2626;padding-left:10px}.review-summary{margin:8px 0 0;padding-left:18px}:root[data-theme=dark] .take-test-history-tabs{border-color:#94a3b8;background:#252c35}:root[data-theme=dark] .take-test-tab{background:transparent;color:#f1f5f9}:root[data-theme=dark] .take-test-tab:not(.take-test-tab--active):hover{background:#ffffff0f}:root[data-theme=dark] .take-test-tab--active{background:#2563eb;color:#fff;box-shadow:0 2px 12px #2563eb80,0 1px 3px #00000059}:root[data-theme=dark] .take-test-generating-spinner{border-color:#475569;border-top-color:#60a5fa}:root[data-theme=dark] .take-test-card{border-color:#4a6fa8;background:#252c35;color:#e8eef7}:root[data-theme=dark] .take-test-card--selected{border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa59}:root[data-theme=dark] .take-test-card:hover{box-shadow:0 4px 18px #00000061}:root[data-theme=dark] .take-test-card--selected:hover{box-shadow:0 0 0 1px #60a5fa59,0 4px 18px #00000061}:root[data-theme=dark] .take-test-card-left{background:#ffffff0f}:root[data-theme=dark] .take-test-card-divider{background:#434c58}:root[data-theme=dark] .take-test-card-title,:root[data-theme=dark] .take-test-card-title--large{color:#e8eef7}:root[data-theme=dark] .take-test-duration{color:#c4b5fd}:root[data-theme=dark] .take-test-metric-value{color:#cbd5e1}:root[data-theme=dark] .take-test-metric-score{color:#7dd3fc}:root[data-theme=dark] .take-test-pending-diff:not(.take-test-pending-diff--placeholder){color:#e8eef7}:root[data-theme=dark] .take-test-pending-status{color:#4ade80}:root[data-theme=dark] .take-test-pending-duration{color:#c4b5fd}:root[data-theme=dark] .take-test-pending-time-left{color:#e8eef7}:root[data-theme=dark] .take-test-pending-time-left--due{color:#fca5a5}:root[data-theme=dark] .take-test-pager-btn:not(.take-test-pager-btn--primary):not(.take-test-pager-btn--submit){background:#2a313b;border-color:#4c5663;color:#e2e8f0}:root[data-theme=dark] .take-test-pager-btn--secondary{background:#2a313b;border-color:#4c5663;color:#e2e8f0}:root[data-theme=dark] .take-test-question-text,:root[data-theme=dark] .take-test-active-panel-title{color:#e8eef7}:root[data-theme=dark] .take-test-page-label{color:#9aa5b5}:root[data-theme=dark] .take-test-progress-seg--current.take-test-progress-seg--empty{box-shadow:0 0 0 1px #60a5fa73,0 2px 10px #2563eb59}:root[data-theme=dark] .take-test-progress-seg--current.take-test-progress-seg--fill{box-shadow:0 0 0 1px #94a3b833,0 2px 12px #2563eb59}:root[data-theme=dark] .take-test-review-seg--current{box-shadow:0 0 0 2px #94a3b859,0 2px 12px #00000073}:root[data-theme=dark] .take-test-option-tile{background:#2a313b;border-color:#4c5663;color:#e8eef7}:root[data-theme=dark] .take-test-option-tile:hover{border-color:#64748b;background:#303843}:root[data-theme=dark] .take-test-option-tile--selected{border-color:#60a5fa;background:#3b82f62e;box-shadow:0 0 0 1px #60a5fa4d}:root[data-theme=dark] .take-test-review-close{background:#252c35;border-color:#4c5663;color:#cbd5e1}:root[data-theme=dark] .take-test-review-close:hover{border-color:#64748b;color:#f8fafc}:root[data-theme=dark] .take-test-review-info-card{background:#252c35;border-color:#4a6fa8}:root[data-theme=dark] .take-test-review-info-title,:root[data-theme=dark] .take-test-review-meta-diff:not(.take-test-review-meta-diff--placeholder),:root[data-theme=dark] .take-test-review-meta-status{color:#e8eef7}:root[data-theme=dark] .take-test-review-meta-duration{color:#c4b5fd}:root[data-theme=dark] .take-test-review-meta-score{color:#4ade80}:root[data-theme=dark] .take-test-review-q-text{color:#e8eef7}:root[data-theme=dark] .take-test-review-questions-scroll{background:#1e293b66;border-color:#434c58}:root[data-theme=dark] .take-test-review-q-section{border-bottom-color:#64748b73}:root[data-theme=dark] .take-test-review-q-section--current{background:#3b82f61f}:root[data-theme=dark] .take-test-review-option-panel--neutral{border-color:#4c5663;background:#2a313b;color:#e2e8f0}:root[data-theme=dark] .take-test-review-option-panel--correct{border-color:#75d1a9;background:#75d1a933;color:#e2e8f0}:root[data-theme=dark] .take-test-review-option-panel--wrong{border-color:#f29aba;background:#f29aba2e;color:#e2e8f0}:root[data-theme=dark] .take-test-review-option-tile--in-panel{background:transparent!important;border:none!important;color:inherit}:root[data-theme=dark] .take-test-review-correct-chip{color:#86ddb3}:root[data-theme=dark] .take-test-review-wrong-chip{color:#f7a7c4}:root[data-theme=dark] .take-test-review-summary-label{color:#9aa5b5}:root[data-theme=dark] .take-test-review-explanation{border-top-color:#434c58}:root[data-theme=dark] .take-test-review-explanation--standalone{background:#252c35;border-color:#434c58}:root[data-theme=dark] .take-test-review-explanation-body{color:#e8eef7}:root[data-theme=dark] .take-test-review-explanation-short{background:#0ea5e91a;border-color:#0369a1}:root[data-theme=dark] .take-test-review-explanation-short-body{color:#e8eef7}:root[data-theme=dark] .take-test-review-unanswered-badge{color:#fca5a5}:root[data-theme=dark] .take-test-active-panel{background:#1e2630;border-color:#4a6fa8}:root[data-theme=dark] .take-test-active-panel-inner{background:#252c35}:root[data-theme=dark] .take-test-active-diff-label{color:#9aa5b5}:root[data-theme=dark] .take-test-active-diff-value--placeholder{color:#64748b}:root[data-theme=dark] .take-test-active-timer{background:#5b21b638;border-color:#6366f1}:root[data-theme=dark] .take-test-active-timer .take-test-timer-icon{color:#c4b5fd}:root[data-theme=dark] .take-test-timer-digits{color:#ddd6fe}:root[data-theme=dark] .take-test-flow .test-ready h2,:root[data-theme=dark] .take-test-flow .test-ready-title,:root[data-theme=dark] .take-test-flow .test-result h2,:root[data-theme=dark] .take-test-flow .test-result p{color:#e8eef7}:root[data-theme=dark] .take-test-flow .test-ready .muted{color:#9aa5b5}:root[data-theme=dark] .take-test-flow .test-result-message,:root[data-theme=dark] .take-test-flow .test-result-message .mathjax-content{color:#e8eef7}@keyframes pdf-download-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pdf-download-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;box-sizing:border-box}.pdf-download-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;margin:0;padding:0;background:#00000080;cursor:pointer}.pdf-download-modal-backdrop:disabled{cursor:default}.pdf-download-modal-card{position:relative;z-index:1;max-width:400px;width:100%;background:#fff;border-radius:8px;padding:20px;box-shadow:0 12px 40px #0f172a33}:root[data-theme=dark] .pdf-download-modal-card{background:#1e293b;color:var(--text);box-shadow:0 12px 40px #00000073}.pdf-download-modal-spinner{width:40px;height:40px;margin:20px auto;border:6px solid #f3f3f3;border-top-color:#007bff;border-radius:50%;animation:pdf-download-spin 1s linear infinite}:root[data-theme=dark] .pdf-download-modal-spinner{border-color:#334155;border-top-color:#60a5fa}.pdf-download-modal-status{font-size:1rem;font-weight:700;margin:10px 0 0;line-height:1.35}.pdf-download-modal-close{margin-top:20px;padding:10px 20px;font-size:1rem;font-weight:600;border:none;border-radius:5px;background:#007bff;color:#fff;cursor:pointer;font-family:inherit}.pdf-download-modal-close:hover{filter:brightness(1.05)}.subscription-workspace{min-height:100%;padding:16px 12px 48px;box-sizing:border-box;background:var(--bg-app, #f1f5f9)}.subscription-shell{max-width:1100px;margin:0 auto;background:var(--bg-card, #fff);border-radius:16px;padding:20px 18px 28px;box-shadow:0 4px 24px #0f172a0f;border:1px solid var(--border, #e2e8f0)}.subscription-header{text-align:center;margin-bottom:20px;position:relative}.subscription-brand-row{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:8px}.subscription-brand.logo-word{font-family:DM Sans,system-ui,sans-serif;font-weight:700;font-size:1.25rem}.subscription-close{position:absolute;right:0;top:50%;transform:translateY(-50%);width:36px;height:36px;border:none;border-radius:10px;background:#e2e8f0;color:#475569;font-size:1.35rem;line-height:1;cursor:pointer;font-family:inherit;transition:transform .14s ease,background-color .14s ease}.subscription-close:hover{transform:translateY(-50%) scale(1.06);background:#cbd5e1}.subscription-title{margin:0;font-size:1.35rem;font-weight:700;color:var(--text, #0f172a)}.subscription-subtitle{margin:6px 0 0;font-size:.9rem;color:var(--text-muted, #64748b)}.subscription-toast{margin:12px 0;padding:10px 14px;border-radius:10px;background:#eff6ff;color:#1e40af;font-size:.9rem}.subscription-error{color:#b91c1c;font-size:.9rem;margin:8px 0}.subscription-loading{color:var(--text-muted, #64748b);font-size:.9rem}.subscription-enterprise-note{padding:10px 14px;border-radius:10px;background:#ecfdf5;color:#166534;font-size:.9rem;margin-bottom:12px}.subscription-signin-hint{text-align:center;font-size:.88rem;color:var(--text-muted, #64748b);margin:0 0 12px}.subscription-credits-block{margin:20px 0 24px;padding:16px;border-radius:12px;background:#fafafa;border:1px solid #e5e5e5}.subscription-section-title{margin:0 0 6px;font-size:1.05rem;font-weight:700;color:var(--text, #0f172a)}.subscription-section-title--center{text-align:center;flex:1}.subscription-credits-desc{margin:0 0 12px;font-size:.85rem;color:var(--text-muted, #64748b)}.subscription-credits-bar-wrap{display:flex;flex-direction:column;gap:8px}.subscription-credits-bar{height:8px;border-radius:999px;background:#fce7f3;overflow:hidden}.subscription-credits-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#f472b6,#ec4899);transition:width .25s ease}.subscription-credits-count{font-size:.9rem;color:var(--text-muted, #64748b);text-align:right}.subscription-credits-used{font-weight:800;font-size:1.05rem;color:#dc2626}.subscription-credits-sep,.subscription-credits-suffix{font-weight:500;color:#64748b}.subscription-credits-about-btn{margin-top:10px;display:inline-flex;align-items:center;gap:6px;border:none;background:none;color:#2563eb;font-size:.85rem;cursor:pointer;padding:0;font-family:inherit}.subscription-credits-about-icon{font-size:.95rem}.subscription-credits-help{margin:8px 0 0;font-size:.82rem;color:var(--text-muted, #64748b);line-height:1.45}.subscription-topups{margin:24px 0}.subscription-topups-heading-row{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;position:relative}.subscription-topups-tag{position:absolute;right:0;font-size:.75rem;color:var(--text-muted, #64748b)}@media (max-width: 640px){.subscription-topups-tag{position:static;width:100%;text-align:center}}.subscription-topup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.subscription-topup-card{border:1px solid #e2e8f0;border-radius:12px;padding:0;overflow:hidden;background:#fff}.subscription-topup-card--selected{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf840}.subscription-topup-select-hit{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:14px;border:none;background:transparent;cursor:pointer;text-align:left;font-family:inherit}.subscription-topup-name{font-weight:700;font-size:1rem;color:var(--text, #0f172a)}.subscription-topup-price{font-size:1.1rem;font-weight:700;color:#0f172a}.subscription-topup-credits{font-size:.85rem;color:#64748b}.subscription-topup-cta{width:100%;padding:12px;border:none;background:#bae6fd;color:#0c4a6e;font-weight:600;font-size:.9rem;cursor:pointer;font-family:inherit}.subscription-topup-cta:hover:not(:disabled){filter:brightness(.97)}.subscription-topup-cta:disabled{opacity:.55;cursor:not-allowed}.subscription-tiers{margin-top:28px}.subscription-tier-grid{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.subscription-tier-card{flex:1 1 160px;min-width:150px;max-width:220px;border:1px solid #e2e8f0;border-radius:12px;padding:14px;display:flex;flex-direction:column;box-sizing:border-box}.subscription-tier-card--current{border-width:2px}.subscription-tier-head{margin-bottom:8px}.subscription-tier-name{margin:0;font-size:1rem;font-weight:700;color:var(--text, #0f172a)}.subscription-tier-price{margin:4px 0 0;font-size:1.05rem;font-weight:700}.subscription-tier-hint{margin:0 0 8px;font-size:.72rem;color:#64748b;font-style:italic}.subscription-tier-features{margin:0 0 12px;padding-left:18px;font-size:.78rem;color:#475569;line-height:1.4;flex:1}.subscription-tier-cta{width:100%;padding:10px;border:none;border-radius:10px;font-weight:600;font-size:.82rem;cursor:pointer;font-family:inherit}.subscription-tier-cta:disabled{opacity:.5;cursor:not-allowed}.subscription-tier-cta-spacer{min-height:40px}:root[data-theme=dark] .subscription-workspace{background:var(--bg-app)}:root[data-theme=dark] .subscription-shell{background:var(--bg-card);border-color:var(--border);box-shadow:0 4px 24px #00000040}:root[data-theme=dark] .subscription-credits-block{background:#ffffff0a;border-color:var(--border)}:root[data-theme=dark] .subscription-topup-card{background:var(--bg-card);border-color:var(--border)}:root[data-theme=dark] .subscription-tier-card{border-color:var(--border)}:root[data-theme=dark] .subscription-tier-features{color:var(--text-muted)}
