:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--surface:#f1f7ff;--sidebar:#e8f2ff;--ink:#1c2633;--secondary:#4a5a6e;--muted:#627287;--line:#d5e5f7;--line-strong:#b3cdea;--hover:#dcebfd;--active:#cfe3fc;--accent:#1570e0;--accent-hover:#0f5fc2;--accent-bright:#1a8cff;--accent-soft:#e3f0ff;--chat-width:896px;--rail-width:52px;--sidebar-width:360px}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0}body{-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h2{font-size:16px;font-weight:600}h3{font-size:14px;font-weight:600}svg{flex-shrink:0}[hidden]{display:none!important}::selection{color:#0f1b2a;background:#cfe3fc}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,textarea,select{accent-color:var(--accent)}dialog{color:var(--ink)}dialog::backdrop{background:#0000004d}.muted{color:var(--secondary)}.eyebrow{color:var(--muted);font-size:12px;font-weight:500}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.full-width{width:100%}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.35}}.warning-text{color:var(--ink)}.status-dot{background:var(--secondary);border-radius:50%;width:5px;height:5px;display:inline-block}.app-frame{--banner-height:0px;min-height:100dvh}.app-frame:has(.demo-banner){--banner-height:28px}.demo-banner{background:var(--accent-soft);height:28px;color:var(--secondary);border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:11px;display:flex}.demo-dot{background:var(--accent);border-radius:50%;width:5px;height:5px}.demo-detail{margin-left:8px}.brand{white-space:nowrap;align-items:center;gap:10px;font-size:16px;font-weight:600;display:flex}.brand-mark{color:var(--ink);display:inline-flex}.icon-button{width:36px;height:36px;color:var(--secondary);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--hover);color:var(--ink)}.button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:13px;font-weight:500;transition:background .15s;display:inline-flex}.button.primary{background:var(--accent);color:#fff}.button.primary:hover:not(:disabled){background:var(--accent-hover)}.button.secondary{border:1px solid var(--line);background:#fff}.button.secondary:hover:not(:disabled){background:var(--surface)}.button.small{min-height:34px;padding:0 12px;font-size:12px}.button.text{background:0 0}.button.text:hover:not(:disabled){background:var(--hover)}.chat-layout{height:calc(100dvh - var(--banner-height));min-height:360px;display:flex;overflow:hidden}.participant-sidebar{width:var(--sidebar-width);background:var(--sidebar);flex-shrink:0;height:100%;transition:width .2s;display:flex}.sidebar-collapsed .participant-sidebar{width:var(--rail-width)}.sidebar-rail{width:var(--rail-width);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;align-items:center;gap:12px;padding:8px;display:flex}.sidebar-rail .icon-button{color:var(--ink)}.rail-chat.active{background:var(--active)}.rail-bottom{flex-direction:column;align-items:center;gap:12px;margin-top:auto;padding:8px 0 4px;display:flex}.participant-avatar{border:1px solid var(--line-strong);width:30px;height:30px;color:var(--accent);background:#fff;border-radius:50%;place-items:center;font-size:12px;display:grid}.sidebar-panel{flex-direction:column;flex:1;min-width:0;padding:0 10px;display:flex}.sidebar-panel-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:52px;padding:0 10px;font-size:14px;font-weight:600;display:flex}.sidebar-section-label{color:var(--secondary);padding:20px 10px 9px;font-size:12px}.conversation-history{grid-template-columns:minmax(0,1fr);gap:4px;display:grid}.current-chat{text-align:left;width:100%;min-height:40px;color:var(--secondary);background:0 0;border-radius:8px;align-items:center;gap:10px;padding:10px;font-size:13px;display:flex}.current-chat.active{background:var(--active);color:var(--ink)}.current-chat:hover{background:var(--hover);color:var(--ink)}.current-chat.active:hover{background:#c3dcfa}.current-chat[aria-disabled=true]{opacity:.45;cursor:wait}.current-chat>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.new-conversation-button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:42px;margin-top:8px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.new-conversation-button:hover:not(:disabled){background:var(--hover)}.sidebar-bottom{color:var(--muted);margin-top:auto;padding:20px 10px 16px;font-size:12px;line-height:1.7}.sidebar-bottom>p{color:var(--secondary);align-items:center;gap:7px;margin-bottom:5px;display:flex}.sidebar-bottom>span{font-size:11px}.participant-id{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding-top:14px;font-size:11px;display:flex}.participant-id strong{color:var(--secondary);overflow-wrap:anywhere;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:400}.chat-main{background:#fff;flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.chat-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:52px;padding:8px 16px 8px 20px;display:none}.chat-header-title{align-items:center;gap:8px;min-width:0;display:flex}.chat-title{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:600;overflow:hidden}.mobile-sidebar-toggle{display:none}.chat-stage{flex-direction:column;flex:1;min-height:0;display:flex}.chat-scroll{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;min-height:0;overflow-y:auto}.is-empty{justify-content:center;padding-bottom:clamp(30px,10vh,112px);overflow-y:auto}.is-empty .chat-scroll{flex:none;overflow:visible}.welcome{text-align:center;width:min(600px,100%);margin:0 auto;padding:24px 28px 30px}.welcome-heading{justify-content:center;align-items:center;gap:12px;display:flex}.welcome-mark{width:42px;height:42px;color:var(--ink);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.welcome h1{letter-spacing:-.7px;overflow-wrap:anywhere;font-size:32px;font-weight:500;line-height:1.4}.welcome-copy{color:var(--secondary);white-space:pre-line;overflow-wrap:anywhere;max-width:440px;margin:18px auto 0;font-size:14px;line-height:1.8}.composer-region{width:min(var(--chat-width), calc(100% - 64px));flex-shrink:0;margin:0 auto;padding-top:12px}.is-empty .composer-region{padding-top:0}.composer{border:1px solid var(--line-strong);background:#fff;border-radius:24px;transition:border-color .15s,box-shadow .15s;overflow:hidden;box-shadow:0 2px 10px #1a8cff14}.composer:focus-within{border-color:var(--accent-bright);box-shadow:0 2px 12px #1a8cff29}.composer textarea{resize:none;background:0 0;border:0;outline:none;width:100%;min-height:60px;max-height:170px;padding:17px 20px 10px;font-size:16px;line-height:1.5;display:block}.composer textarea:focus-visible{outline:none}.composer textarea::placeholder{color:var(--muted);opacity:1}.composer textarea:disabled{opacity:.7}.composer-toolbar{justify-content:space-between;align-items:center;gap:8px;min-height:46px;padding:2px 9px 9px 19px;display:flex}.chat-feedback{color:var(--muted);align-items:center;gap:6px;font-size:11px;line-height:1.5;display:flex}.composer-actions{align-items:center;gap:14px;margin-left:auto;display:flex}.input-hint{color:var(--muted);white-space:nowrap;font-size:11px}.send-button{background:var(--accent-bright);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.send-button:hover:not(:disabled){background:var(--accent)}.send-button:disabled{background:var(--hover);color:#7f9bbd;opacity:1}.chat-error{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:8px 10px 12px;font-size:12px;line-height:1.7;display:flex}.retry-button{border:1px solid var(--line);background:var(--surface);border-radius:7px;align-items:center;gap:5px;padding:6px 9px;font-size:12px;display:inline-flex}.retry-button:hover{background:var(--hover)}.disclosure{width:min(var(--chat-width), calc(100% - 48px));text-align:center;color:var(--muted);overflow-wrap:anywhere;flex-shrink:0;max-height:100px;margin:12px auto 14px;font-size:11px;line-height:1.7;overflow-y:auto}.message-list{width:min(var(--chat-width), calc(100% - 64px));margin:0 auto;padding:32px 6px 12px}.message{align-items:flex-start;gap:12px;margin-bottom:32px;display:flex}.message-content{flex:1;min-width:0}.message.user{justify-content:flex-end}.message.user .message-content{flex:0 auto;max-width:80%}.message.user .message-body{background:var(--accent-soft);border-radius:22px;padding:11px 18px}.user-message-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.75}.assistant-avatar{border:1px solid var(--line);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.message-author{margin:4px 0 10px;font-size:14px;font-weight:600}.message-status{color:var(--secondary);margin-top:8px;font-size:12px;display:block}.markdown{overflow-wrap:anywhere;font-size:16px;line-height:1.85}.markdown p{margin:0 0 16px}.markdown p:last-child{margin-bottom:0}.markdown ul,.markdown ol{margin:12px 0;padding-left:24px}.markdown li+li{margin-top:6px}.markdown pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--line);border-radius:12px;max-width:100%;margin:16px 0;padding:16px;overflow:auto}.markdown code{font-family:SFMono-Regular,Consolas,monospace;font-size:.875em}.markdown :not(pre)>code{background:var(--accent-soft);border-radius:4px;padding:2px 4px}.markdown a{text-underline-offset:3px;text-decoration:underline}.markdown blockquote{border-left:3px solid var(--line-strong);color:var(--secondary);margin:16px 0;padding-left:16px}.markdown table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.markdown th,.markdown td{border:1px solid var(--line);padding:8px 12px}.markdown th{background:var(--surface)}.markdown h1,.markdown h2,.markdown h3{margin:20px 0 12px;font-size:18px}.markdown hr{border:0;border-top:1px solid var(--line);margin:24px 0}.typing{align-items:center;gap:5px;padding:10px 0;display:inline-flex}.typing i{background:var(--secondary);border-radius:50%;width:5px;height:5px;animation:1.1s infinite pulse}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}.chat-stage.requires-entry{justify-content:flex-start;padding:clamp(12px,4vh,48px) 0}.requires-entry .chat-scroll{flex:1 0 auto;display:flex}.entry-card{text-align:center;width:min(clamp(380px,26vw + 80px,520px),100% - 32px);margin:auto;padding:clamp(16px,3vh,28px) 0}.entry-card h1{margin:clamp(8px,2vh,18px) 0 clamp(6px,1.2vh,12px);font-size:clamp(22px,1vw + 14px,30px);font-weight:500}.entry-card form{text-align:left;margin-top:clamp(16px,3.5vh,32px)}.entry-card .field{margin-bottom:clamp(14px,2.6vh,24px)}.captcha-container{filter:grayscale();margin:16px 0}.new-conversation-dialog{border:1px solid var(--line);border-radius:16px;width:min(480px,100% - 32px);max-height:calc(100dvh - 48px);padding:0;box-shadow:0 16px 48px #0000001f}.new-conversation-picker{padding:20px}.new-conversation-picker header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.new-conversation-picker h2{font-size:20px}.new-conversation-picker>p{color:var(--secondary);line-height:1.7}.conversation-type-options{gap:12px;margin-top:20px;display:grid}.conversation-type-option{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:14px;min-height:82px;padding:16px;display:flex}.conversation-type-option:hover{background:var(--surface);border-color:var(--line-strong)}.conversation-type-option.active{border-color:var(--line-strong)}.conversation-type-option[aria-disabled=true]{opacity:.45;cursor:wait}.conversation-type-icon{background:var(--surface);border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.conversation-type-copy{flex:1;gap:5px;min-width:0;display:grid}.conversation-type-copy strong{font-size:15px;font-weight:600}.conversation-type-copy>span{color:var(--secondary);font-size:12px;line-height:1.6}.conversation-type-option>svg{color:var(--secondary)}.help-dialog{border:1px solid var(--line);border-radius:16px;width:min(480px,100% - 32px);max-height:calc(100dvh - 48px);padding:0;box-shadow:0 16px 48px #0000001f}.participant-help{padding:20px 24px 24px}.participant-help header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.participant-help p{color:var(--secondary);overflow-wrap:anywhere;margin-top:14px;font-size:14px;line-height:1.9}.english-help-dialog{width:min(680px,100% - 32px);overflow-y:auto}.english-learning-guide h3{margin:24px 0 14px;font-size:16px}.participant-help .english-guide-intro{color:var(--ink)}.english-guide-stages{gap:14px;margin:0;padding-left:22px;font-size:14px;line-height:1.7;display:grid}.english-guide-stages li{padding-left:4px}.english-guide-stages strong{font-weight:600;display:block}.english-guide-stages small{color:var(--secondary);margin-left:8px;font-weight:400}.english-guide-stages li>span{color:var(--secondary)}.english-entry-guide{color:var(--secondary);font-size:14px;line-height:1.8}.english-entry-guide button{background:0 0;margin:8px auto 0;font-size:14px;display:block}.english-inline-question{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin:8px 0;padding:12px 14px;font-size:13px}.english-inline-question p{white-space:pre-line;margin:10px 0;line-height:1.6}.english-inline-question>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;list-style:none;display:flex}.english-collapse-hint{color:var(--muted);margin-left:auto;font-size:11px}.english-collapse-hint:before{content:"收起"}.english-inline-question:not([open]) .english-collapse-hint:before{content:"展开"}.english-inline-question>summary:hover .english-collapse-hint{color:var(--accent)}.english-answer-panel{margin:0 0 10px}.english-inline-question>summary::-webkit-details-marker{display:none}.english-inline-question>summary:after{content:"";border-right:1.5px solid var(--secondary);border-bottom:1.5px solid var(--secondary);width:7px;height:7px;margin-right:3px;transition:transform .15s;transform:rotate(45deg)translateY(-2px)}.english-inline-question:not([open])>summary:after{transform:rotate(-45deg)}.english-inline-question>summary:focus-visible{outline:2px solid var(--line-strong);outline-offset:4px;border-radius:4px}.english-inline-question .english-subquestion-progress{margin:0}.english-inline-options{flex-wrap:wrap;gap:8px;display:flex}.english-inline-options .button{padding:8px 12px;font-size:12px}.english-choice-select,.english-answer-select select{border:1px solid var(--line-strong);width:100%;min-height:40px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.english-answer-form{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:10px;margin-bottom:10px;padding:12px 14px;font-size:12px;display:grid}.english-answer-form.is-grouped{grid-template-columns:repeat(2,minmax(0,1fr))}.english-answer-form.is-grouped>.english-answer-hint,.english-answer-form.is-grouped>.english-answer-context{grid-column:1/-1}.english-answer-context{background:var(--surface);color:var(--ink);border-radius:8px;margin:0;padding:10px 12px 10px 30px;line-height:1.6;list-style:none}.english-answer-context li{text-indent:-18px}.english-inline-question .english-answer-form{border:0;margin:10px 0 0;padding:0}.english-answer-select{gap:6px;display:grid}.english-answer-checks{border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:8px;margin:0;padding:10px;display:flex}.english-answer-checks legend{color:var(--secondary);padding:0 4px}.english-answer-checks label{align-items:flex-start;gap:5px;padding:4px;line-height:1.6;display:flex}.english-answer-checks input{margin-top:3px}.english-answer-hint{color:var(--secondary);margin:0;line-height:1.6}.english-choice-select:disabled,.english-answer-select select:disabled{opacity:.5;cursor:not-allowed}@media (max-width:767px){.english-answer-form.is-grouped{grid-template-columns:1fr;max-height:32dvh;overflow-y:auto}}.english-subquestion-progress{color:var(--secondary);margin-top:6px;font-size:11px;display:block}.mobile-sidebar-dialog{background:var(--sidebar);border:0;width:min(320px,86vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 auto 0 0;padding:0}.mobile-sidebar-content{flex-direction:column;min-height:100%;padding:8px 10px;display:flex}.mobile-sidebar-content .sidebar-panel-heading{height:52px}.admin-layout{min-height:calc(100dvh - var(--banner-height));grid-template-columns:236px minmax(0,1fr);display:grid}.admin-sidebar{background:var(--sidebar);height:calc(100dvh - var(--banner-height));border-right:1px solid var(--line);flex-direction:column;min-height:470px;padding:0 12px;display:flex;position:sticky;top:0}.admin-sidebar>.brand{flex-shrink:0;height:64px;padding:0 12px}.admin-sidebar .sidebar-section-label{margin-top:16px}.admin-nav{text-align:left;width:100%;min-height:42px;color:var(--secondary);background:0 0;border-radius:8px;align-items:center;gap:11px;margin:3px 0;padding:10px 12px;font-size:14px;display:flex}.admin-nav:hover{background:var(--hover);color:var(--ink)}.admin-nav.active{background:var(--active);color:var(--ink);font-weight:500}.admin-nav svg:last-child:not(:first-child){margin-left:auto}.admin-account{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:auto;padding:16px 8px;display:flex}.account-avatar{background:var(--active);width:32px;height:32px;color:var(--secondary);border-radius:50%;place-items:center;font-size:12px;display:grid}.admin-account>span:nth-child(2){flex:1;font-size:12px}.admin-account small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.admin-main{background:#fff;min-width:0}.admin-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;height:64px;padding:0 36px;display:flex}.breadcrumb{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.breadcrumb strong{color:var(--ink);font-weight:500}.admin-content{width:100%;max-width:1240px;margin:auto;padding:36px 36px 64px}.admin-page-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.admin-page-heading h1{letter-spacing:-.5px;margin-bottom:10px;font-size:26px;font-weight:600}.admin-page-heading>div>p:last-child{color:var(--secondary);font-size:13px;line-height:1.7}.publish-group{flex-shrink:0;align-items:center;gap:14px;display:flex}.saved-label,.unsaved-label{color:var(--muted);white-space:nowrap;font-size:12px}.unsaved-label{color:var(--ink)}.settings-grid{grid-template-columns:minmax(0,1fr) 254px;align-items:start;gap:28px;display:grid}.settings-primary{flex-direction:column;gap:20px;min-width:0;display:flex}.settings-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px 24px 4px}.settings-card.compact{padding:24px}.card-heading{align-items:flex-start;gap:11px;margin-bottom:26px;display:flex}.section-icon{height:24px;color:var(--secondary);align-items:center;display:inline-flex}.card-heading h2{font-size:16px;line-height:24px}.card-heading p{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.7}.field{flex-direction:column;gap:8px;min-width:0;margin-bottom:22px;font-size:13px;display:flex}.field>span{font-weight:500}.field input,.field textarea,.field select{border:1px solid var(--line-strong);background:#fff;border-radius:8px;width:100%;min-width:0;min-height:42px;padding:10px 12px;font-size:14px;line-height:1.6;transition:border-color .15s}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}.field input:hover,.field textarea:hover,.field select:hover{border-color:#7fa9db}.field textarea{resize:vertical;min-height:90px}.field small{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.7}.two-fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}.switch-row{justify-content:space-between;align-items:center;gap:24px;display:flex}.switch-row h2{font-size:15px}.switch-row p{color:var(--secondary);margin-top:8px;font-size:12px;line-height:1.8}.toggle{flex-shrink:0;width:36px;height:22px;display:inline-flex;position:relative}.toggle input{opacity:0;cursor:pointer;z-index:1;width:36px;height:22px;margin:0;position:absolute}.toggle>span{background:var(--line-strong);border-radius:20px;width:36px;height:22px;transition:background .15s}.toggle>span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.toggle input:checked+span{background:var(--ink)}.toggle input:checked+span:after{transform:translate(14px)}.toggle input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.small-note{color:var(--muted);border-top:1px solid var(--line);margin-top:18px;padding-top:16px;font-size:12px;line-height:1.7}.settings-preview{position:sticky;top:24px}.preview-label{color:var(--secondary);align-items:center;gap:7px;margin:3px 0 14px;font-size:12px;display:flex}.preview-label>span{background:var(--surface);border-radius:4px;margin-left:auto;padding:3px 6px;font-size:10px}.mini-chat{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.mini-chat-header{overflow-wrap:anywhere;align-items:center;gap:7px;padding:14px;font-size:11px;display:flex}.mini-chat-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:24px 18px;display:flex}.mini-avatar{margin-bottom:12px;display:inline-flex}.mini-chat-body>strong{font-size:16px;font-weight:500}.mini-chat-body p{color:var(--secondary);white-space:pre-line;overflow-wrap:anywhere;max-width:100%;margin-top:12px;font-size:11px;line-height:1.8}.mini-composer{border:1px solid var(--line);min-height:60px;color:var(--muted);border-radius:18px;justify-content:space-between;align-items:center;gap:8px;margin:0 12px;padding:12px;font-size:11px;display:flex}.mini-composer>span{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:23px;height:23px;font-size:16px;display:grid}.mini-disclosure{text-align:center;color:var(--muted);margin:12px 8px;font-size:10px}.boundary-list{border-bottom:1px solid var(--line);flex-direction:column;gap:12px;padding:24px 2px;display:flex}.boundary-list h3{margin-bottom:3px;font-size:12px;font-weight:500}.boundary-list>span{color:var(--secondary);align-items:center;gap:8px;font-size:12px;display:flex}.version-note{color:var(--muted);align-items:flex-start;gap:10px;padding:22px 2px;display:flex}.version-note strong{color:var(--secondary);font-size:12px;font-weight:500}.version-note p{margin-top:6px;font-size:11px;line-height:1.8}.error-box,.success-box{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);border-radius:8px;align-items:flex-start;gap:9px;margin-bottom:20px;padding:13px 16px;font-size:13px;line-height:1.8;display:flex}.error-box{border-left:3px solid var(--ink)}.error-box>svg,.success-box>svg{margin-top:3px}.field .prompt-editor{min-height:360px;font-family:SFMono-Regular,Consolas,Microsoft YaHei,monospace;font-size:14px;line-height:2}.editor-bottom{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:-8px 0 24px;font-size:11px;display:flex}.info-note{background:var(--surface);color:var(--secondary);border-radius:8px;align-items:flex-start;gap:9px;margin-bottom:20px;padding:13px 14px;font-size:12px;line-height:1.8;display:flex}.info-note>svg{margin-top:2px}.protocol-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.protocol-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;min-width:0;padding:14px 12px 16px;transition:background .15s,border-color .15s}.protocol-card:hover{border-color:#7fa9db}.protocol-card.selected{border-color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--ink)}.protocol-card-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.protocol-symbol{color:var(--ink);font-family:Georgia,serif;font-size:18px}.radio-indicator{border:1px solid var(--line-strong);border-radius:50%;place-items:center;width:15px;height:15px;display:grid}.selected .radio-indicator{border-color:var(--ink)}.radio-indicator>span{background:var(--ink);border-radius:50%;width:7px;height:7px}.protocol-card>strong{font-size:12px;font-weight:600;line-height:1.5;display:block}.protocol-card>small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.protocol-description{color:var(--secondary);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:26px;font-size:11px;line-height:1.7;display:flex}.protocol-description code{background:var(--surface);border:1px solid var(--line);border-radius:4px;margin-left:auto;padding:2px 5px;font-size:11px}.endpoint-url{overflow-wrap:anywhere;font-size:11px;display:block}.secret-input{display:flex;position:relative}.secret-input>input{padding-right:44px}.secret-input>.icon-button{width:32px;height:32px;position:absolute;top:5px;right:4px}.secret-input input:disabled{background:var(--surface);color:var(--muted)}.records-card{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.records-heading{justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.records-heading h2>span{background:var(--surface);color:var(--secondary);border-radius:5px;margin-left:7px;padding:3px 7px;font-size:12px}.records-heading p{color:var(--secondary);margin-top:9px;font-size:12px;line-height:1.8}.record-privacy{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.record-table-wrap{overflow-x:auto}.record-table{border-collapse:collapse;white-space:nowrap;width:100%}.record-table th{background:var(--surface);color:var(--secondary);text-align:left;border-block:1px solid var(--line);padding:12px 24px;font-size:12px;font-weight:500}.record-table td{border-bottom:1px solid var(--line);color:var(--secondary);padding:20px 24px;font-size:12px}.record-table td strong{color:var(--ink);font-size:13px;font-weight:500;display:block}.record-table td>span{text-overflow:ellipsis;max-width:260px;margin-top:7px;font-size:12px;display:block;overflow:hidden}.pagination{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding:14px 24px;font-size:12px;display:flex}.pagination>div{align-items:center;gap:8px;display:flex}.empty-state{text-align:center;min-height:270px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px;display:flex}.empty-state>span{background:var(--surface);border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.empty-state h3{color:var(--secondary);font-size:15px;font-weight:500}.empty-state p{font-size:13px;line-height:1.8}.drawer-dialog{background:#fff;border:0;width:min(680px,100%);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 0 0 auto;padding:0}.record-drawer{background:#fff;flex-direction:column;width:min(680px,100%);height:100%;display:flex;box-shadow:-8px 0 40px #00000014}.record-drawer>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:24px 28px;display:flex}.record-drawer h2{margin-top:6px;font-size:18px}.detail-meta{color:var(--secondary);justify-content:space-between;align-items:center;gap:12px;padding:18px 28px;font-size:12px;display:flex}.record-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.delete-dialog{border:1px solid var(--line);border-radius:14px;width:min(480px,100% - 32px);max-height:calc(100dvh - 48px);padding:0;box-shadow:0 16px 48px #0000001f}.delete-content{padding:24px}.delete-content>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.delete-content h2{font-size:18px}.delete-content .small-note{margin:14px 0}.delete-target{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;padding:14px}.delete-target>strong,.delete-target>span{display:block}.delete-target>span,.delete-target>p{color:var(--secondary);margin-top:8px;font-size:12px;line-height:1.7}.delete-warning{margin-top:18px;font-size:13px;font-weight:600;line-height:1.8}.delete-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.record-messages{flex:1;min-height:0;padding:16px 28px;overflow-y:auto}.record-message{border:1px solid var(--line);border-radius:12px;margin-bottom:18px;padding:16px 18px}.record-message.user{background:var(--surface);border-color:#0000}.record-message>div:first-child{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;font-size:11px;display:flex}.record-message strong{color:var(--ink);font-size:12px;font-weight:600}.record-message .markdown{font-size:14px}.export-note{border-top:1px solid var(--line);color:var(--muted);padding:16px 28px;font-size:12px;line-height:1.7}.config-details{border:1px solid var(--line);max-height:180px;color:var(--secondary);border-radius:8px;margin:0 28px 10px;padding:12px;font-size:12px;overflow:auto}.config-details summary{cursor:pointer}.config-details p{color:var(--ink);margin:12px 0 7px}.config-details pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;line-height:1.8}.experiment-matrix{overflow-x:auto}.experiment-matrix table{border-collapse:collapse;text-align:center;width:100%;font-size:12px}.experiment-matrix caption{text-align:left;color:var(--secondary);margin-bottom:16px;line-height:1.7}.experiment-matrix th,.experiment-matrix td{border:1px solid var(--line);padding:16px 10px}.experiment-matrix th{background:var(--surface);font-weight:500}.experiment-matrix td strong{font-size:25px;font-weight:500;display:block}.experiment-matrix td span{color:var(--muted);margin-top:7px;font-size:11px;display:block}.experiment-matrix>p{color:var(--secondary);margin-top:16px;font-size:12px;line-height:1.9}.model-tabs{grid-template-columns:1fr 1fr;gap:10px;display:grid}.model-tabs button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;padding:16px}.model-tabs button.active{border-color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--ink)}.model-tabs small{color:var(--muted);margin-top:8px;font-size:11px;display:block}.field .experiment-prompt{min-height:190px}.effective-prompt{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border:1px solid var(--line);border-radius:8px;max-height:300px;margin-bottom:24px;padding:16px;font-size:13px;line-height:1.9;overflow-y:auto}.settings-card>.small-note:last-child{margin-bottom:20px}.records-summary{padding:0 24px 24px}.record-filters{flex-wrap:wrap;align-items:flex-end;gap:14px;padding:0 24px 24px;display:flex}.record-filters .field{flex:1;min-width:160px;margin:0}.detail-assignment{flex-wrap:wrap;gap:10px;padding:0 28px 18px;font-size:12px;display:flex}.detail-assignment span{color:var(--muted)}.entry-confirm{text-align:left;color:var(--secondary);align-items:flex-start;gap:9px;margin-bottom:20px;font-size:12px;line-height:1.9;display:flex}.entry-confirm input{accent-color:var(--ink);flex-shrink:0;margin-top:5px}.login-shell,.setup-shell{background:var(--surface);flex-direction:column;align-items:center;min-height:100dvh;padding:32px 40px;display:flex}.login-shell>.brand,.setup-shell>.brand{align-self:flex-start;margin-bottom:32px}.login-card,.setup-card{border:1px solid var(--line);background:#fff;border-radius:16px;width:100%;max-width:440px;margin:auto 0;padding:36px}.login-icon,.setup-icon{margin-bottom:24px;display:inline-flex}.login-card h1,.setup-card h1{margin:0 0 14px;font-size:26px;font-weight:500}.login-card>.muted,.setup-card>p{color:var(--secondary);font-size:13px;line-height:1.8}.login-card form{margin-top:28px}.login-retry{margin-top:12px}.login-footnote{color:var(--muted);justify-content:center;align-items:center;gap:6px;margin-top:22px;font-size:11px;line-height:1.7;display:flex}.login-bottom{color:var(--muted);margin-top:32px;font-size:11px}.setup-card{max-width:540px}.setup-card ol{color:var(--secondary);margin:24px 0;padding-left:20px;font-size:14px;line-height:2}.text-link{text-underline-offset:3px;align-items:center;gap:5px;font-size:13px;text-decoration:underline;display:inline-flex}.initializing{min-height:100dvh;color:var(--secondary);justify-content:center;align-items:center;gap:10px;display:flex}.icp-link:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.disclosure-icp{white-space:nowrap;margin-left:1em;display:inline-block}.setup-icp{color:var(--muted);margin-top:24px;font-size:11px}@media (max-width:1279px){:root{--sidebar-width:300px;--chat-width:768px}.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-preview{display:none}.admin-content{padding:30px 28px 48px}.admin-header{padding:0 28px}}@media (min-width:768px) and (max-width:1023px){:root{--sidebar-width:270px}.composer-region,.message-list{width:calc(100% - 40px)}.input-hint{display:none}.admin-layout{grid-template-columns:210px minmax(0,1fr)}.publish-group{flex-direction:column;align-items:flex-end;gap:6px}}@media (max-width:767px){.demo-banner{gap:6px;font-size:10px}.demo-detail{margin-left:0;font-size:10px}.participant-sidebar{display:none}.chat-header{height:52px;padding:8px;display:flex}.mobile-sidebar-toggle{display:inline-flex}.chat-title{font-size:16px}.is-empty{padding-bottom:clamp(20px,8vh,70px)}.welcome{padding:20px 24px 26px}.welcome-heading{gap:8px}.welcome h1{font-size:27px}.welcome-copy{margin-top:14px;font-size:14px}.welcome-mark{width:36px;height:36px}.composer-region{width:calc(100% - 24px)}.composer textarea{min-height:58px;padding:16px 17px 10px;font-size:16px}.composer-toolbar{padding-left:16px}.input-hint{display:none}.chat-feedback{font-size:10px}.disclosure{width:calc(100% - 36px);margin:10px auto;font-size:10px}.message-list{width:calc(100% - 28px);padding:24px 0 4px}.message{gap:9px;margin-bottom:28px}.message.user .message-content{max-width:88%}.message.user .message-body{padding:10px 15px}.markdown,.user-message-text{font-size:15px}.message-author{font-size:13px}.participant-help{padding:16px 20px 24px}.admin-layout{display:block}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;min-height:0;padding:0 12px 8px;position:static}.admin-sidebar>.brand{height:56px;padding:0 6px}.admin-sidebar .sidebar-section-label,.admin-account{display:none}.admin-sidebar nav{gap:4px;display:flex}.admin-nav{justify-content:center;gap:6px;min-height:38px;margin:0;padding:9px 6px;font-size:12px}.admin-nav svg{width:16px;height:16px}.admin-nav svg:last-child:not(:first-child){display:none}.admin-header{height:56px;padding:0 18px}.breadcrumb{gap:6px;font-size:12px}.button.small{font-size:11px}.admin-content{padding:26px 16px 40px}.admin-page-heading{align-items:flex-start;gap:12px;margin-bottom:24px}.admin-page-heading h1{font-size:24px}.admin-page-heading>div>p:last-child{font-size:12px}.publish-group{flex-direction:column-reverse;align-items:flex-end;gap:8px}.publish-group .button{gap:6px;min-height:36px;padding:0 11px;font-size:12px}.publish-group>span{font-size:10px}.settings-card{padding:20px 16px 2px}.settings-card.compact{padding:20px 16px}.field input,.field textarea,.field select{font-size:16px}.two-fields{grid-template-columns:1fr;gap:0}.protocol-options{gap:7px}.protocol-card{padding:12px 9px 14px}.protocol-card>strong{font-size:11px}.protocol-card>small{font-size:10px}.protocol-description code{margin-left:0}.editor-bottom{font-size:10px}.record-privacy{display:none}.records-heading{padding:20px 16px}.record-table th,.record-table td{padding-inline:16px}.pagination{padding:12px;font-size:10px}.record-drawer>header{padding:20px}.detail-meta{padding:16px 20px;font-size:11px}.record-messages{padding:12px 16px}.record-message>div:first-child{flex-wrap:wrap;font-size:10px}.export-note{padding:14px 20px;font-size:11px}.config-details{margin-inline:20px}.login-shell,.setup-shell{padding:24px 20px}.login-card,.setup-card{padding:28px 24px}}@media (max-width:370px){.demo-detail{font-size:9px}.admin-nav{gap:4px;font-size:11px}}@media (max-height:600px){.is-empty{justify-content:flex-start;padding-bottom:12px}.welcome{padding-top:16px;padding-bottom:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.prompt-presets{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-bottom:22px;padding:16px}.prompt-presets .field{margin-bottom:12px}.preset-preview summary{cursor:pointer;font-size:13px}.preset-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;font:inherit;border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px;font-size:12px;line-height:1.8;overflow-y:auto}.preset-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.question-flow{color:var(--muted);padding-left:22px;font-size:13px;line-height:1.9}.question-flow li{margin-block:6px}.question-progress{border:1px solid var(--line);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:0 0 10px;padding:10px 14px;font-size:12px;line-height:1.5;display:flex}.question-progress span{color:var(--muted)}.english-progress{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-bottom:10px;padding:12px 14px}.english-progress-heading{justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.english-progress-heading>span{color:var(--muted);font-size:11px}.composer-status{align-items:center;gap:10px;min-width:0;display:flex}.english-assistant .english-learning-button{border:1px solid var(--line-strong);color:var(--secondary);background:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:5px 11px;font-size:12px;line-height:1.4;display:inline-flex}.english-assistant .english-learning-button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.english-assistant .english-learning-button.is-paused{border-color:var(--accent);background:var(--accent);color:#fff}.english-assistant .english-learning-button.is-paused:hover:not(:disabled){background:var(--accent-hover);color:#fff}.english-assistant .english-learning-button:disabled{cursor:not-allowed;opacity:.5}.english-stage-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.english-stage-list li{min-width:0;color:var(--muted);align-items:center;gap:5px;font-size:11px;line-height:1.5;display:flex}.english-stage-list li.current{color:var(--ink);font-weight:600}.english-stage-number{border:1px solid var(--line-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;display:inline-flex}.english-stage-list li.current .english-stage-number{background:var(--accent);border-color:var(--accent);color:#fff}.english-stage-list li.done .english-stage-number{color:var(--ink);background:var(--active);border-color:var(--active)}.english-stage-label{overflow-wrap:anywhere}.chat-body{flex:1;min-height:0;display:flex}.chat-body>.chat-stage{min-width:0}.english-progress-rail{flex:0 0 156px;padding:18px 8px 18px 22px;overflow-y:auto}.english-progress.is-compact{background:0 0;border:0;margin:0;padding:0}.english-progress.is-compact .english-progress-heading{font-size:calc(var(--rail-font,11px) + 1px);flex-direction:column;align-items:flex-start;gap:2px}.english-progress.is-compact .english-progress-heading>span{font-size:calc(var(--rail-font,12px) - 1px)}.english-progress.is-compact .english-stage-list{flex-direction:column;gap:0;margin:16px 0 0;display:flex}.english-progress.is-compact .english-stage-list li{gap:calc(var(--rail-dot,22px) * .45);padding-bottom:var(--rail-gap,calc(var(--rail-dot,22px) * 1.1));font-size:var(--rail-font,12px);position:relative}.english-progress.is-compact .english-stage-list li:last-child{padding-bottom:0}.english-progress.is-compact .english-stage-number{width:var(--rail-dot,22px);height:var(--rail-dot,22px);font-size:calc(var(--rail-dot,22px) * .45);background:#fff}.english-progress.is-compact .english-stage-list li:not(:last-child):after{content:"";left:calc(var(--rail-dot,22px) / 2 - 1px);top:calc(var(--rail-dot,22px) + 2px);background:var(--line);border-radius:1px;width:2px;position:absolute;bottom:2px}.english-progress.is-compact .english-stage-list li.done:not(:last-child):after{background:var(--accent)}.english-progress.is-compact .english-stage-list li.done .english-stage-number{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.english-progress.is-compact .english-stage-list li.current .english-stage-number{background:var(--accent)}@media (min-width:768px){.english-progress-rail{--rail-gap:clamp(calc(var(--rail-dot,22px) * 1.1), 8.5vh, 96px)}}@media (min-width:768px) and (max-width:1023px){.english-progress-rail{flex-basis:128px;padding-left:16px}}@media (min-width:1024px){.english-progress-rail{--rail-dot:clamp(22px, 1.5vw, 30px);--rail-font:clamp(12px, .3vw + 8.5px, 15px);flex-basis:clamp(156px,12vw,236px);padding:clamp(18px,1.6vw,28px) 8px 18px clamp(22px,2vw,40px)}}.english-stage-toggle{display:none}.english-continue{justify-content:center;margin-bottom:10px;display:flex}.english-continue .button{justify-content:center;gap:4px;min-width:120px}@media (max-width:767px){.chat-body{flex-direction:column}.chat-body>.chat-stage{flex:1}.english-progress-rail{flex:none;padding:4px 14px 8px;overflow:visible}.english-progress.is-compact .english-progress-heading{flex-direction:row;justify-content:space-between;align-items:center}.english-progress.is-compact .english-stage-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:6px 0 0;display:grid}.english-progress.is-compact .english-stage-list li{padding-bottom:0;font-size:10px}.english-progress.is-compact .english-stage-list li:after,.english-progress-rail:not(.is-open){display:none}.english-progress-rail.is-announcing{background:var(--accent-soft);transition:background .3s}.chat-header{gap:6px}.english-stage-toggle{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;margin-left:auto;padding:5px 10px;font-size:12px;font-weight:500;display:inline-flex}.english-stage-toggle svg{transition:transform .15s}.english-stage-toggle.is-open svg{transform:rotate(180deg)}.composer-region>.english-inline-question{max-height:38dvh;overflow-y:auto}}.english-current-activity{border-top:1px solid var(--line);padding-top:10px;font-size:12px;line-height:1.7}.english-current-activity>strong{align-items:baseline;gap:9px;font-weight:500;display:flex}.english-current-activity>strong>span{color:var(--muted);flex-shrink:0;font-size:11px;font-weight:400}.english-current-activity p{color:var(--secondary);margin-top:4px}.english-admin .english-admin-settings{max-width:960px}.english-admin .english-admin-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.english-admin .english-admin-group{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:18px}.english-admin .english-admin-group>span{font-size:13px;font-weight:500;display:block}.english-admin .english-admin-group>strong{margin:14px 0 6px;font-size:28px;font-weight:500;display:block}.english-admin .english-admin-group>p{color:var(--secondary);font-size:11px;line-height:1.8}.english-admin .english-admin-group-summary>.small-note{margin:14px 0 0}.english-admin .english-admin-connection{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 20px;display:grid}.english-admin .english-admin-connection dt{color:var(--muted);margin-bottom:6px;font-size:11px}.english-admin .english-admin-connection dd{overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.8}.english-admin .english-admin-connection code{font-family:SFMono-Regular,Consolas,monospace;font-size:13px}.english-admin .english-admin-inline-actions{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.english-admin .english-admin-records .records-summary{padding-top:0}.english-admin .record-table th{position:relative}.english-admin .english-admin-record-detail{overflow:hidden}.english-admin .english-admin-detail-body{flex:1;min-height:0;overflow-y:auto}.english-admin .english-admin-detail-body>.english-progress{margin:0 28px 14px}.english-admin .english-admin-detail-body .config-details{max-height:none;overflow:visible}.english-admin .english-admin-detail-body .record-messages{flex:none;overflow:visible}.english-admin .english-admin-detail-body h3{margin:12px 0 6px}.english-admin .english-admin-curriculum-toolbar{color:var(--secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;font-size:12px;display:flex}.english-admin .english-admin-curriculum-presets{flex-wrap:wrap;gap:8px;display:flex}.english-admin .english-admin-stage-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px;display:grid}.english-admin .english-admin-stage-selector>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;padding:14px;font-size:13px}.english-admin .english-admin-stage-selector>button.active{border-color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--ink)}.english-admin .english-admin-stage-selector small{color:var(--muted);margin-top:6px;font-size:11px;display:block}.english-admin .english-admin-activity-editor{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.english-admin .english-admin-activity-editor>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.english-admin .english-admin-word-toggle{color:var(--secondary);align-items:center;gap:8px;margin:0 0 16px;font-size:12px;display:flex}.english-admin .english-admin-curriculum-snapshot>div{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.english-admin .sleep-admin-groups{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.english-admin .sleep-admin-form-editor{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:12px;margin:0 0 16px;padding:14px;display:grid}.english-admin .sleep-admin-field{border:1px solid var(--line);background:var(--bg);border-radius:8px;gap:10px;min-width:0;margin:0;padding:12px;display:grid}.english-admin .sleep-admin-field legend{color:var(--secondary);padding:0 4px;font-size:12px}.english-admin .sleep-admin-field .field{margin:0}.english-admin .sleep-admin-options{gap:6px;display:grid}.english-admin .sleep-admin-option{align-items:center;gap:6px;display:flex}.english-admin .sleep-admin-option input{flex:1;min-width:0}.english-admin .english-admin-delete-dialog .field{margin-top:20px}.english-admin .english-admin-curriculum-reset .delete-warning{margin-top:0}@media (max-width:767px){.english-admin .admin-sidebar nav .admin-nav{flex:none;width:auto}.english-admin .english-admin-connection{gap:14px}.english-admin .english-admin-groups{gap:8px}.english-admin .english-admin-group{padding:12px}.english-admin .english-admin-group>span{font-size:12px}.english-admin .english-admin-group>strong{font-size:24px}.english-admin .english-admin-detail-body>.english-progress{margin:0 20px 14px}.english-admin .english-admin-detail-body .detail-meta{flex-wrap:wrap;padding:16px 20px}.english-admin .english-admin-stage-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.english-admin .english-admin-stage-selector>button{padding:12px;font-size:12px}.english-progress{padding:10px 12px}.english-stage-list{gap:5px;margin:10px 0}.english-stage-list li{flex-direction:column;align-items:flex-start;gap:3px;font-size:10px}.english-current-activity p,.english-current-activity>strong{font-size:11px}}.record-drawer>.question-progress{margin:12px 20px}@media (max-width:767px){.admin-sidebar nav{overflow-x:auto}.admin-nav{white-space:nowrap;flex-shrink:0}}
:root{--surface:#ecf4ffb8;--hover:#2f80ff17;--active:#2f80ff24;--line:#a0bee661;--line-strong:#78a0d780;--accent:#2f6fe8;--accent-hover:#2459c8;--accent-bright:#3a86ff;--accent-soft:#3a86ff1f;--violet:#6d5cf6;--grad-primary:linear-gradient(135deg, #3a86ff 0%, #5b6cf9 55%, #7a5cf6 100%);--grad-primary-hover:linear-gradient(135deg, #2f78f0 0%, #4f5ff0 55%, #6b4ee8 100%);--grad-soft:linear-gradient(135deg, #3a86ff24 0%, #7a5cf61f 100%);--grad-bubble:linear-gradient(135deg, #e4efff 0%, #ebe8ff 100%);--glass-bg:#fff9;--glass-bg-strong:#fffc;--glass-border:#ffffffbf;--glass-blur:blur(20px) saturate(170%);--glass-highlight:inset 0 1px 0 #ffffffd9;--shadow-soft:0 1px 2px #1e3c780a, 0 6px 20px #2850a012;--shadow-float:0 2px 6px #1e3c780d, 0 18px 48px #2846a029;--shadow-glow:0 6px 18px #466efa52;--ease:cubic-bezier(.22, .8, .26, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1)}::selection{background:#5b6cf938}html{scroll-behavior:smooth;background:#f3f7ff}body{background:0 0}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(48% 44% at 4% 2%,#649bff99,#0000 70%),radial-gradient(42% 40% at 98% 6%,#9b7dff7a,#0000 70%),radial-gradient(50% 46% at 90% 98%,#5ac8ff73,#0000 72%),radial-gradient(40% 36% at 16% 94%,#b996ff5c,#0000 70%),linear-gradient(#f3f7ff 0%,#eaf0fc 100%);position:fixed;inset:0}*{scrollbar-width:thin;scrollbar-color:#6e8cc859 transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#6e8cc859 padding-box padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#5073be8c}::-webkit-scrollbar-track{background:0 0}.icon-button,.button,.current-chat,.new-conversation-button,.admin-nav,.conversation-type-option,.protocol-card,.model-tabs button,.retry-button,.send-button,.english-learning-button,.english-admin-stage-selector>button,.field input,.field textarea,.field select{transition:background .25s var(--ease), color .2s var(--ease), border-color .25s var(--ease), box-shadow .3s var(--ease), transform .25s var(--ease), opacity .2s var(--ease)}.button:active:not(:disabled),.icon-button:active:not(:disabled),.send-button:active:not(:disabled),.retry-button:active:not(:disabled){transform:scale(.96)}.button.primary{background:var(--grad-primary);box-shadow:0 4px 14px #466efa42, var(--glass-highlight)}.button.primary:hover:not(:disabled){background:var(--grad-primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.button.secondary{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.button.secondary:hover:not(:disabled){background:var(--glass-bg-strong);transform:translateY(-1px)}.icon-button:hover:not(:disabled){background:var(--hover);color:var(--accent)}.retry-button{background:var(--glass-bg);border-color:var(--glass-border)}.retry-button:hover{background:var(--glass-bg-strong)}.send-button{background:var(--grad-primary);box-shadow:0 4px 12px #466efa4d}.send-button:hover:not(:disabled){background:var(--grad-primary-hover);box-shadow:var(--shadow-glow);transform:translateY(-1px)scale(1.04)}.send-button:disabled{color:#8aa3c4;box-shadow:none;background:#96afd738}.demo-banner{background:var(--grad-soft);border-bottom-color:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.demo-dot{background:var(--grad-primary);box-shadow:0 0 0 3px #3a86ff2e}.participant-sidebar{background:var(--glass-bg);border-right:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:width .32s var(--ease);box-shadow:1px 0 #7896d21f}.sidebar-rail{border-right-color:#7896d229}.participant-avatar{background:var(--grad-primary);color:#fff;border:0;font-weight:600;box-shadow:0 3px 10px #466efa4d}.rail-chat.active,.current-chat.active{background:var(--grad-soft);color:var(--accent);box-shadow:inset 0 0 0 1px #5b6cf924}.current-chat.active:hover{background:var(--grad-soft);filter:brightness(.98)}.current-chat:hover{background:var(--hover)}.new-conversation-button{background:var(--glass-bg-strong);border-color:var(--glass-border);box-shadow:var(--shadow-soft)}.new-conversation-button:hover:not(:disabled){box-shadow:var(--shadow-float);background:#fff;transform:translateY(-1px)}.participant-id{border-top-color:#7896d22e}.participant-round{border-top:0;margin-top:6px;padding-top:0}.participant-round strong{text-overflow:ellipsis;white-space:nowrap;max-width:70%;overflow:hidden}.switch-student{border:1px solid var(--glass-border);background:var(--glass-bg-strong);color:var(--secondary);transition:background .25s var(--ease), color .2s var(--ease);border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:6px 10px;font-size:12px;display:inline-flex}.switch-student:hover:not(:disabled){color:var(--accent);background:#fff}.chat-main{background:0 0}.chat-header{background:var(--glass-bg);border-bottom:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.has-messages .chat-scroll{-webkit-mask-image:linear-gradient(#0000 0,#000 20px calc(100% - 20px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 20px calc(100% - 20px),#0000 100%)}.welcome,.entry-card{animation:rise-in .6s var(--ease) both}.welcome-mark{background:var(--grad-primary);color:#fff;width:48px;height:48px;box-shadow:var(--shadow-glow), var(--glass-highlight);border-radius:16px}.welcome-mark svg{width:58%;height:58%}.welcome h1{background:linear-gradient(100deg,#1c2633 10%,#2f6fe8 60%,#7a5cf6 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}.entry-card{border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--shadow-float), var(--glass-highlight);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:24px;padding:clamp(22px,4vh,40px) clamp(18px,2.4vw,36px)}.composer{background:var(--glass-bg-strong);border-color:var(--glass-border);box-shadow:var(--shadow-float), var(--glass-highlight);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:border-color .25s var(--ease), box-shadow .3s var(--ease)}.composer:focus-within{box-shadow:0 0 0 4px #5b6cf91f, var(--shadow-float), var(--glass-highlight);border-color:#5b6cf973}.message{animation:rise-in .45s var(--ease) both}.message.user .message-body{background:var(--grad-bubble);border:1px solid #fffc;border-bottom-right-radius:8px;box-shadow:0 4px 14px #5064c81a}.assistant-avatar{background:var(--grad-primary);color:#fff;border:0;box-shadow:0 4px 12px #466efa47}.assistant-avatar svg{width:17px;height:17px}.typing i{background:var(--grad-primary);animation:typing-bounce 1.2s var(--ease) infinite}.markdown pre{background:var(--glass-bg-strong);border-color:var(--glass-border);box-shadow:var(--shadow-soft)}.markdown :not(pre)>code{background:var(--grad-soft)}.markdown blockquote{border-left:3px solid;border-image:var(--grad-primary) 1}.markdown th{background:var(--grad-soft)}.typing-markdown.is-typing .markdown>:is(p,h1,h2,h3,h4,blockquote,pre):last-child:after,.typing-markdown.is-typing .markdown>:is(ul,ol):last-child>li:last-child:after{content:"";vertical-align:-.15em;background:var(--grad-primary);border-radius:1px;width:2px;height:1.05em;margin-left:3px;animation:1s steps(2,start) infinite caret-blink;display:inline-block}@keyframes caret-blink{to{visibility:hidden}}.question-progress,.english-progress:not(.is-compact),.english-inline-question,.english-answer-form,.prompt-presets,.info-note,.error-box,.success-box{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--shadow-soft)}.english-choice-select,.english-answer-select select{background:var(--glass-bg-strong)}.english-assistant .english-learning-button{background:var(--glass-bg-strong);border-color:var(--glass-border);box-shadow:var(--shadow-soft)}.english-assistant .english-learning-button.is-paused,.english-assistant .english-learning-button.is-paused:hover:not(:disabled){background:var(--grad-primary);box-shadow:var(--shadow-glow);border-color:#0000}.english-stage-list li.current .english-stage-number,.english-progress.is-compact .english-stage-list li.current .english-stage-number{background:var(--grad-primary);color:#fff;border-color:#0000;box-shadow:0 0 0 4px #5b6cf926,0 4px 10px #466efa4d}.english-progress.is-compact .english-stage-list li.done:not(:last-child):after{background:linear-gradient(180deg, var(--accent), var(--violet))}.english-stage-number{transition:background .3s var(--ease), box-shadow .3s var(--ease)}.english-stage-toggle{background:var(--grad-soft)}dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#14234638}dialog[open]::backdrop{animation:fade-in .3s var(--ease)}.new-conversation-dialog,.help-dialog,.delete-dialog{background:var(--glass-bg-strong);border-color:var(--glass-border);box-shadow:var(--shadow-float), var(--glass-highlight);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:20px}.new-conversation-dialog[open],.help-dialog[open],.delete-dialog[open]{animation:dialog-in .32s var(--ease)}.mobile-sidebar-dialog{background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.mobile-sidebar-dialog[open]{animation:sheet-left .34s var(--ease)}.drawer-dialog{background:0 0}.drawer-dialog[open]{animation:sheet-right .36s var(--ease)}.record-drawer{background:var(--glass-bg-strong);border-left:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:-12px 0 48px #1e3c8c24}.record-drawer>header,.export-note{border-color:#7896d233}.conversation-type-option{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--shadow-soft)}.conversation-type-option:hover{box-shadow:var(--shadow-float);background:#ffffffe6;border-color:#5b6cf94d;transform:translateY(-2px)}.conversation-type-option.active{box-shadow:inset 0 0 0 1px #5b6cf933, var(--shadow-soft);border-color:#5b6cf966}.conversation-type-icon{background:var(--grad-soft);color:var(--accent)}.conversation-type-option>svg{transition:transform .25s var(--ease)}.conversation-type-option:hover>svg{color:var(--accent);transform:translate(3px)}.record-message{border-color:var(--glass-border);background:#ffffff8c}.record-message.user{background:var(--grad-bubble)}.admin-sidebar{background:var(--glass-bg);border-right-color:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.admin-main{background:0 0}.admin-header{z-index:10;background:var(--glass-bg);border-bottom-color:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);position:sticky;top:0}.admin-nav.active{background:var(--grad-soft);color:var(--accent);box-shadow:inset 0 0 0 1px #5b6cf924}.account-avatar{background:var(--grad-primary);color:#fff}.admin-page-heading h1{background:linear-gradient(100deg,#1c2633 20%,#2f6fe8 75%,#7a5cf6 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.settings-card,.records-card,.mini-chat,.login-card,.setup-card,.english-admin .english-admin-group,.english-admin .sleep-admin-form-editor{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--shadow-soft), var(--glass-highlight)}.login-card,.setup-card{box-shadow:var(--shadow-float), var(--glass-highlight);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);animation:rise-in .6s var(--ease) both;border-radius:24px}.login-shell,.setup-shell{background:0 0}.english-admin .english-admin-group>strong{background:var(--grad-primary);color:#0000;-webkit-background-clip:text;background-clip:text}.english-admin .sleep-admin-field{background:#fff9}.field input,.field textarea,.field select{border-color:var(--line-strong);background:#ffffffb8}.field input:hover,.field textarea:hover,.field select:hover{border-color:#5b6cf966}.field input:focus,.field textarea:focus,.field select:focus{background:#fff;border-color:#5b6cf999;outline:none;box-shadow:0 0 0 4px #5b6cf91f}.toggle>span{transition:background .3s var(--ease)}.toggle>span:after{transition:transform .35s var(--ease-spring);box-shadow:0 2px 5px #14285a40}.toggle input:checked+span{background:var(--grad-primary)}.toggle input:focus-visible+span{outline-color:var(--accent)}.protocol-card,.model-tabs button,.english-admin .english-admin-stage-selector>button{border-color:var(--glass-border);background:#fff9}.protocol-card:hover,.model-tabs button:hover,.english-admin .english-admin-stage-selector>button:hover{border-color:#5b6cf959;transform:translateY(-1px)}.protocol-card.selected,.model-tabs button.active,.english-admin .english-admin-stage-selector>button.active{background:var(--grad-soft);border-color:#5b6cf98c;box-shadow:inset 0 0 0 1px #5b6cf966,0 6px 18px #466efa1f}.selected .radio-indicator{border-color:var(--accent)}.radio-indicator>span{background:var(--grad-primary)}.record-table th{background:#ecf4ff99}.record-table td{transition:background .2s var(--ease)}.record-table tr:hover td{background:#3a86ff0d}.empty-state>span{background:var(--grad-soft);color:var(--accent)}.chat-stage.has-messages{position:relative}.chat-stage.has-messages .chat-scroll{padding-bottom:var(--composer-height,150px);scroll-padding-bottom:var(--composer-height,150px)}.chat-stage.has-messages .composer-region{z-index:5;flex-direction:column;gap:8px;padding-bottom:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.chat-stage.has-messages .composer-region>*{margin-block:0}.chat-stage.has-messages:after{content:"";z-index:4;pointer-events:none;height:calc(var(--composer-height,150px) + 28px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);-webkit-mask-composite:source-in;background:#f3f7ff38;position:absolute;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000 44px),linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000);mask-image:linear-gradient(#0000,#000 44px),linear-gradient(90deg,#0000,#000 48px calc(100% - 48px),#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.chat-stage.has-messages .composer-region .question-progress,.chat-stage.has-messages .composer-region>.english-inline-question,.chat-stage.has-messages .composer-region>.english-answer-form{background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-float)}.chat-stage.has-messages .english-continue .button{box-shadow:var(--shadow-glow)}.chat-stage.has-messages .chat-error{border:1px solid var(--glass-border);background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-soft);border-radius:999px;align-self:center;padding:8px 14px}.english-inline-question .english-answer-form{box-shadow:none;background:0 0}.composer:before{content:"";opacity:0;pointer-events:none;height:2px;transition:opacity .3s var(--ease);background:linear-gradient(90deg,#0000,#3a86ff,#7a5cf6,#0000) 0 0/200% 100%;border-radius:2px;position:absolute;top:0;left:18px;right:18px}.composer{position:relative}.composer.is-busy:before{opacity:1;animation:1.6s linear infinite composer-shimmer}.composer.is-paused{box-shadow:var(--shadow-soft);background:#f8f9fddb;border:1px dashed #5b6cf973}.composer.is-paused textarea::placeholder,.composer.is-paused .chat-feedback{color:var(--accent)}.composer.is-done{box-shadow:var(--shadow-soft);background:#f8f9fdcc}@keyframes composer-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:767px){.chat-stage.has-messages .composer-region{gap:6px;padding-bottom:4px}.chat-stage.has-messages .chat-error{border-radius:14px}}.admin-sidebar{scrollbar-width:none;padding:0 14px;overflow-y:auto}.admin-sidebar .sidebar-section-label{color:var(--muted);letter-spacing:.06em;margin-top:0;padding:18px 12px 8px;font-size:11px;font-weight:600}.admin-projects{gap:6px;display:grid}.admin-project{color:var(--secondary);transition:background .25s var(--ease), border-color .25s var(--ease), box-shadow .3s var(--ease), color .2s var(--ease);border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:9px 10px;display:flex}.admin-project:hover{color:var(--ink);background:#ffffffa6}.admin-project.active{color:var(--ink);background:#fff;border-color:#5b6cf938;box-shadow:0 1px 2px #1e3c820d,0 6px 18px #2846a01a}.admin-project-icon{background:var(--grad-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.admin-project.active .admin-project-icon{background:var(--grad-primary);color:#fff;box-shadow:0 4px 10px #466efa47}.admin-project-label{min-width:0}.admin-project-label strong{font-size:13px;font-weight:600;display:block}.admin-project-label small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;display:block;overflow:hidden}.admin-section-nav{gap:2px;display:grid}.admin-section-nav .admin-nav{min-height:40px;margin:0;padding:9px 12px;font-size:13px}.admin-account{margin-top:auto;padding-top:14px}.admin-header{background:#ffffffb8;gap:16px;height:64px;box-shadow:0 1px #6482be1f,0 6px 20px #1e3c820d}.admin-header .publish-group{gap:12px}.admin-header .button:not(.small){min-height:38px}.admin-page-heading{margin-bottom:24px}.admin-page-heading>div>p:last-child{max-width:760px}.english-admin .english-admin-settings{gap:20px;display:grid}.english-admin-curriculum>.settings-card+.settings-card{margin-top:20px}.settings-primary>.info-note{margin-bottom:0}.admin-frame .card-heading+p.muted{color:var(--accent);background:#3a86ff0f;border-radius:10px;margin:-6px 0 22px;padding:10px 14px;font-size:13px;font-weight:500}.admin-frame .admin-main{background:#cddaf361}.admin-frame .settings-card,.admin-frame .records-card,.admin-frame .mini-chat{-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);background:#ffffffe6;border:1px solid #fffffff2;box-shadow:0 0 0 1px #6482be24,0 2px 4px #1e3c820a,0 12px 32px #1e3c8217}.admin-frame .card-heading h2{font-size:16px;font-weight:650}.admin-frame .section-icon{background:var(--grad-soft);width:30px;height:30px;color:var(--accent);border-radius:9px;place-items:center;margin-top:-3px;display:grid}.admin-frame .info-note,.admin-frame .prompt-presets,.admin-frame .effective-prompt,.admin-frame .english-admin-group,.admin-frame .sleep-admin-form-editor,.admin-frame .question-progress,.admin-frame .english-progress{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#3a86ff0f;border:1px solid #3a86ff1f}.admin-frame .error-box{box-shadow:var(--shadow-soft);background:#fff}.admin-frame .success-box{background:#f0fdf6f2;border-color:#22a05a4d}.admin-frame .field input,.admin-frame .field textarea,.admin-frame .field select,.admin-frame .english-choice-select{background:#fff;border-color:#6e8cc861}.admin-frame .secret-input input:disabled{background:#f0f4fc}.admin-frame .protocol-card,.admin-frame .model-tabs button,.admin-frame .english-admin-stage-selector>button{background:#fff;border-color:#6e8cc847;box-shadow:0 1px 2px #1e3c820d}.admin-frame .model-tabs button{box-shadow:0 0 0 1px #6482be0f,0 6px 18px #1e3c8212}.admin-frame .protocol-card.selected,.admin-frame .model-tabs button.active,.admin-frame .english-admin-stage-selector>button.active{background:linear-gradient(135deg,#ebf3ff,#f0ecff);border-color:#5b6cf98c;box-shadow:inset 0 0 0 1px #5b6cf966,0 6px 18px #466efa24}.admin-frame .record-table th,.admin-frame .experiment-matrix th,.admin-frame .markdown th{background:#ecf2fd}.admin-frame .small-note,.admin-frame .boundary-list{border-color:#6482be2e}.admin-frame .preview-label>span{box-shadow:var(--shadow-soft);background:#fff}.access-codes{gap:20px;display:grid}.access-codes .info-note{margin:0}.access-code-form{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:end}.access-code-form .field{margin-bottom:0}.access-code-form .button{min-height:42px}.access-code-edit{gap:8px;display:flex}.access-code-edit input{background:#fff;border:1px solid #6e8cc861;border-radius:8px;flex:1;min-width:0;min-height:36px;padding:6px 10px}.access-code-status{color:var(--secondary);background:#788caa24;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.access-code-status.is-active{color:#1d7a4a;background:#22a05a1f}.interface-switches{gap:12px;display:grid}.interface-switches .switch-row h2{align-items:center;gap:8px;display:flex}.interface-switches .access-code-status{font-weight:500}.interface-switches .text-link{white-space:nowrap;margin-left:8px}.participant-round+.switch-student{margin-top:12px}.sleep-group-form{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:end;margin-bottom:20px}.sleep-group-form .field,.sleep-group-import .field{margin-bottom:0}.sleep-group-form .button{min-height:42px}.sleep-group-import{gap:14px;margin-bottom:20px;display:grid}.sleep-group-import textarea{min-height:150px;font-family:SFMono-Regular,Consolas,Microsoft YaHei,monospace}.sleep-group-errors{color:#9a2b2b;background:#fff4f4e6;border:1px solid #c846464d;border-radius:8px;margin:0;padding:12px 16px 12px 32px;font-size:12px;line-height:1.9}.sleep-group-select{background:#fff;border:1px solid #6e8cc861;border-radius:8px;min-height:34px;padding:4px 8px;font-size:13px}.sleep-groups .records-heading{flex-wrap:wrap}@media (max-width:767px){.sleep-group-form,.access-code-form{grid-template-columns:1fr}.access-code-edit{flex-direction:column}.admin-sidebar{padding-bottom:10px;overflow:visible}.admin-sidebar nav{gap:6px;padding-top:6px}.admin-project{flex:none;gap:7px;padding:6px 10px 6px 6px}.admin-project-icon{border-radius:8px;width:26px;height:26px}.admin-project-icon svg{width:15px;height:15px}.admin-project-label small{display:none}.admin-sidebar nav .admin-nav{flex:none;width:auto;min-height:36px}.admin-header{height:auto;min-height:56px;padding-block:8px}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}}@keyframes sheet-left{0%{transform:translate(-100%)}}@keyframes sheet-right{0%{transform:translate(100%)}}@keyframes typing-bounce{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass-bg:#ffffffe6;--glass-bg-strong:#fffffff5}}@media (max-width:767px){.welcome-mark{border-radius:13px;width:40px;height:40px}.entry-card{border-radius:20px}}
