@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}}:root{--blue:#2866f0;--blue-dark:#194fc8;--blue-soft:#e9f0ff;--page:#edf1f5;--surface:#fff;--warm:#fffdf9;--paper:#fffdf9;--soft:#f5efe6;--ink:#121827;--muted:#5f6675;--border:#e0e6ef;--beige:#f5efe6;--green:#6ea47f;--gold:#d79d46;--rose:#e87475;--shadow:0 18px 44px #1f2d441c}*{box-sizing:border-box}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}html{background:var(--page)}body{background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.prototype-page{min-height:100vh}.demo-toolbar{border-bottom:1px solid var(--border);z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.toolbar-brand{align-items:center;gap:12px;display:flex}.toolbar-brand>span:last-child{flex-direction:column;gap:3px;display:flex}.toolbar-brand strong{font-size:16px}.toolbar-brand small{color:var(--muted);letter-spacing:.04em;font-size:11px}.brand-mark,.mini-logo{color:#fff;background:var(--blue);border-radius:11px;place-items:center;font-weight:900;display:inline-grid}.brand-mark{width:40px;height:40px;font-size:25px}.mini-logo{border-radius:7px;width:23px;height:23px;margin-right:6px;font-size:15px}.role-switch{background:#f2f5f9;border-radius:14px;padding:4px;display:flex}.role-switch button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:11px;padding:0 18px;font-weight:700}.role-switch button.active{color:var(--blue);background:#fff;box-shadow:0 2px 9px #12182714}.linked-mode{color:#34734a;align-items:center;min-height:40px;padding:0 16px;font-size:12px;font-weight:800;display:flex}.toolbar-modes{align-items:center;gap:10px;display:flex}.family-switches{align-items:center;gap:7px;display:flex}.product-switch{background:#f8faff;border:1px solid #dbe4f2;border-radius:14px;gap:3px;padding:4px;display:flex}.product-switch--family{opacity:.68;padding-left:55px;transition:opacity .2s,border-color .2s;position:relative}.product-switch--family.is-current{opacity:1;border-color:#b9cdf8}.product-switch--family>span{color:var(--muted);letter-spacing:.1em;font-size:8px;font-weight:900;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.product-switch--family.is-current>span{color:var(--blue)}.product-switch button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;padding:0 13px;font-size:11px;font-weight:800}.product-switch button.active{color:#fff;background:var(--blue);box-shadow:0 5px 13px #2866f033}.delivery-switch{background:#f2f5f9;border-radius:12px;gap:2px;padding:3px;display:flex}.delivery-switch button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:9px;padding:0 10px;font-size:10px;font-weight:800}.delivery-switch button.active{color:#34734a;background:#fff;box-shadow:0 2px 9px #12182714}.membership-button{color:#795d34;white-space:nowrap;background:#fffaf1;border:1px solid #dfd2bd;border-radius:11px;min-height:40px;padding:0 12px;font-size:9px;font-weight:900}.media-error{color:#9b3f42;background:#fff5f5;border:1px solid #f2caca;border-radius:12px;align-items:center;gap:12px;max-width:760px;margin:12px auto -2px;padding:11px 14px;font-size:12px;font-weight:700;display:flex}.media-error button{color:inherit;background:0 0;border:0;margin-left:auto;font-weight:800}.membership-overlay{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#141c2bad;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.membership-dialog{background:#fffdf9;border:1px solid #ffffffb3;border-radius:26px;width:min(980px,100%);overflow:hidden;box-shadow:0 36px 100px #12182752}.membership-header{border-bottom:1px solid var(--border);background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:15px 22px;display:flex}.membership-header>div{align-items:center;gap:11px;display:flex}.membership-header>div>span:last-child{flex-direction:column;gap:2px;display:flex}.membership-header strong{font-size:15px}.membership-header small{color:var(--muted);font-size:9px}.membership-close{border:1px solid var(--border);width:36px;height:36px;color:var(--muted);background:#fff;border-radius:50%;font-size:22px;line-height:1}.membership-progress{grid-template-columns:repeat(3,1fr);max-width:580px;margin:19px auto 0;padding:0 24px;display:grid}.membership-progress>span{color:#9aa1ad;flex-direction:column;align-items:center;gap:5px;font-size:8px;font-weight:900;display:flex;position:relative}.membership-progress>span:not(:last-child):after{content:"";background:#e3e7ed;height:2px;position:absolute;top:13px;left:calc(50% + 16px);right:calc(16px - 50%)}.membership-progress>span.active:not(:last-child):after{background:#a9c2fa}.membership-progress i{z-index:1;color:#8b94a3;background:#edf0f4;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid;position:relative}.membership-progress span.active{color:var(--blue)}.membership-progress span.active i{color:#fff;background:var(--blue)}.membership-step{min-height:430px;padding:24px 34px 27px}.setup-kicker{color:var(--blue);letter-spacing:.08em;font-size:10px;font-weight:900}.membership-step h1{letter-spacing:-.04em;margin:6px 0 4px;font-size:28px}.membership-step>p{color:var(--muted);margin:0;font-size:12px}.plan-choice-grid{grid-template-columns:repeat(3,1fr);gap:11px;margin-top:24px;display:grid}.plan-choice-grid>button{border:1px solid var(--border);min-height:245px;color:var(--ink);text-align:left;background:#fff;border-radius:19px;flex-direction:column;align-items:flex-start;padding:20px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.plan-choice-grid>button:hover{transform:translateY(-2px)}.plan-choice-grid>button.active{border-color:var(--blue);box-shadow:0 13px 30px #2866f021, inset 0 0 0 1px var(--blue)}.plan-choice-grid button>span{color:var(--blue);background:var(--blue-soft);letter-spacing:.1em;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:900}.plan-choice-grid button>strong{margin-top:16px;font-size:16px;line-height:1.35}.plan-choice-grid button>p{min-height:42px;color:var(--muted);margin:8px 0 17px;font-size:10px;line-height:1.5}.plan-choice-grid button>b{letter-spacing:-.04em;margin-top:auto;font-size:23px}.plan-choice-grid button>b small{color:var(--muted);font-size:9px}.plan-choice-grid button>em{color:var(--muted);margin-top:3px;font-size:9px;font-style:normal}.plan-choice-grid.is-single{grid-template-columns:minmax(280px,380px);justify-content:center}.access-family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px;display:grid}.access-family-grid>section{background:#fff;border:1px solid #d8e2f0;border-radius:18px;overflow:hidden}.access-family-grid header{background:#f5f8ff;justify-content:space-between;align-items:center;gap:8px;padding:15px 17px;display:flex}.access-family-grid header span{color:var(--blue);letter-spacing:.1em;font-size:9px;font-weight:900}.access-family-grid header strong{font-size:12px}.access-family-grid section>div{border-top:1px solid #edf0f4;grid-template-columns:70px 1fr auto;align-items:center;gap:8px;padding:16px 17px;display:grid}.access-family-grid section>div b{font-size:15px}.access-family-grid section>div p{color:var(--muted);margin:0;font-size:10px}.access-family-grid section>div small{color:#34734a;text-align:right;font-size:8px;font-weight:800}.access-family-grid footer{color:#795d34;background:#fffaf1;padding:12px 17px;font-size:9px;font-weight:800}.cost-structure-grid{grid-template-columns:minmax(240px,.72fr) minmax(430px,1.4fr);gap:12px;margin-top:22px;display:grid}.fixed-cost-card,.usage-ledger-card{border:1px solid var(--border);background:#fff;border-radius:18px}.fixed-cost-card{padding:19px}.fixed-cost-card>span{color:var(--blue);font-size:9px;font-weight:900}.fixed-cost-card>strong{letter-spacing:-.04em;margin-top:9px;font-size:26px;display:block}.fixed-cost-card>strong small{color:var(--muted);font-size:9px}.fixed-cost-card>p{color:var(--muted);margin:2px 0 13px;font-size:9px}.fixed-cost-card ul{border-top:1px solid var(--border);margin:0;padding:12px 0 0 18px}.fixed-cost-card li{margin:6px 0;font-size:10px}.usage-ledger-card{overflow:hidden}.usage-ledger-card header{background:#f6f8fb;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.usage-ledger-card header>div{flex-direction:column;display:flex}.usage-ledger-card header span{color:var(--muted);font-size:8px}.usage-ledger-card header strong{font-size:11px}.usage-ledger-card header em{color:#34734a;background:#eaf6ee;border-radius:999px;padding:4px 7px;font-size:8px;font-style:normal;font-weight:900}.usage-ledger-card>div{border-top:1px solid #edf0f4;grid-template-columns:1fr 70px 90px;gap:8px;padding:10px 15px;font-size:9px;display:grid}.usage-ledger-card>div b{font-weight:800}.usage-ledger-card>div strong{color:var(--blue);text-align:right}.usage-ledger-card footer{color:var(--blue);background:#f5f8ff;border-top:1px solid #dbe5f5;justify-content:space-between;gap:10px;padding:11px 15px;font-size:9px;font-weight:900;display:flex}.credit-flow{color:#795d34;background:#fff7e9;border-radius:13px;justify-content:center;align-items:center;gap:9px;margin-top:12px;padding:12px 14px;font-size:9px;font-weight:900;display:flex}.credit-flow i{color:#ba9255;font-style:normal}.prototype-notice{border-left:3px solid #dfc18f;padding-left:11px;line-height:1.5;margin-top:10px!important;font-size:9px!important}.membership-actions{border-top:1px solid var(--border);background:#fff;justify-content:flex-end;align-items:center;gap:8px;min-height:74px;padding:13px 22px;display:flex}.membership-actions button{min-width:130px}.teacher-console{grid-template-columns:260px minmax(640px,1fr) 360px;gap:0;min-height:calc(100vh - 76px);display:grid}.teacher-sidebar{background:var(--paper);border-right:1px solid var(--border);padding:23px 17px}.session-heading{margin-bottom:18px}.session-heading h1{letter-spacing:-.03em;margin:12px 0 5px;font-size:22px}.session-heading p{color:var(--muted);margin:0;font-size:14px}.status-pill{color:#34734a;background:#edf7f0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.video-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.video-tile{aspect-ratio:4/3;background:linear-gradient(155deg,#dce8ff 0%,#f4f8ff 65%,#c8dbff 100%);border:1px solid #cbd8e9;border-radius:15px;position:relative;overflow:hidden}.live-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.live-video.is-mirrored{transform:scaleX(-1)}.student-video{background:linear-gradient(155deg,#fbe9d5 0%,#fff9f2 65%,#f6d8bd 100%)}.video-placeholder{background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.teacher-placeholder{background-image:url(/duo-teacher-placeholder.webp)}.student-placeholder{background-image:url(/duo-students-placeholder.webp)}.class40-professor-placeholder{background-image:url(/class40-professor-placeholder.webp)}.class40-students-placeholder{background-image:url(/class40-students-placeholder.webp)}.video-name{color:#fff;background:#121827ba;border-radius:8px;padding:3px 7px;font-size:10px;font-weight:700;position:absolute;bottom:7px;left:8px}.mic-status{width:20px;height:20px;color:var(--green);background:#ffffffd9;border-radius:50%;place-items:center;font-size:8px;display:grid;position:absolute;top:7px;right:7px}.mic-status.is-off{color:var(--rose)}.live-dot{background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.waiting-dot{background:var(--gold);border-radius:50%;width:8px;height:8px;display:inline-block}.desktop-media-controls{grid-template-columns:1fr 1fr;gap:7px;margin-top:8px;display:grid}.desktop-media-controls button{border:1px solid var(--border);min-height:37px;color:var(--muted);background:#f8fafc;border-radius:10px;font-size:10px;font-weight:800}.desktop-media-controls.is-active button:first-child{color:var(--blue);background:var(--blue-soft);border-color:#c9d9fb}.call-status{border:1px solid var(--border);color:var(--muted);background:#f8fafc;border-radius:10px;margin-top:8px;padding:8px 10px;font-size:10px;font-weight:800}.call-status--connected{color:#34734a;background:#edf8f1;border-color:#bfe1ca}.call-status--failed{color:#9b3f42;background:#fff5f5;border-color:#f2caca}.sync-status{background:#f6fbf8;border:1px solid #d9eddf;border-radius:12px;align-items:center;gap:10px;margin:12px 0 22px;padding:10px 12px;display:flex}.sync-status>span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.sync-status div{flex-direction:column;gap:2px;display:flex}.sync-status strong{font-size:12px}.sync-status small{color:var(--muted);font-size:10px}.sync-status.peer-online{background:#edf8f1;border-color:#bfe1ca}.nav-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px 5px;font-size:11px;font-weight:800;display:block}.stage-navigation{flex-direction:column;gap:5px;display:flex}.stage-navigation button{min-height:47px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:6px 10px;display:flex}.stage-navigation button>span{border:1px solid var(--border);background:#fff;border-radius:9px;place-items:center;width:29px;height:29px;font-size:12px;display:grid}.stage-navigation button strong{flex:1;font-size:13px}.stage-navigation button i{color:var(--green);font-style:normal}.stage-navigation button.active{color:var(--blue);background:var(--blue-soft)}.stage-navigation button.active>span{border-color:var(--blue);color:#fff;background:var(--blue)}.teacher-tip{background:var(--beige);border-radius:13px;margin-top:22px;padding:14px}.teacher-tip span{color:#9b6a2c;letter-spacing:.08em;font-size:10px;font-weight:900}.teacher-tip p{color:#675847;margin:6px 0 0;font-size:12px;line-height:1.5}.teacher-mobile-mode{background:radial-gradient(circle at 50% 0,#f8fbff 0%,#e8edf4 52%,#dde4ed 100%);place-items:start center;min-height:100vh;padding:28px 12px 48px;display:grid}.teacher-mobile-phone{background:var(--paper);border:1px solid #bac3d0;border-radius:34px;width:min(430px,100%);overflow:hidden;box-shadow:0 28px 70px #222d3f3d}.teacher-mobile-header{border-bottom:1px solid var(--border);background:#fffffff5;justify-content:space-between;align-items:center;gap:10px;min-height:62px;padding:10px 14px;display:flex}.teacher-mobile-header>div{align-items:center;min-width:0;display:flex}.teacher-mobile-header>div>span:last-child{flex-direction:column;min-width:0;display:flex}.teacher-mobile-header strong{font-size:13px}.teacher-mobile-header small{color:var(--muted);font-size:9px}.teacher-mobile-header>button{border:1px solid var(--border);min-height:32px;color:var(--muted);background:#f7f9fc;border-radius:9px;padding:0 10px;font-size:9px;font-weight:900}.teacher-mobile-session{background:#f5f8ff;align-items:center;gap:9px;padding:11px 14px;display:flex}.teacher-mobile-session>div{flex-direction:column;gap:2px;min-width:0;margin-right:auto;display:flex}.teacher-mobile-session span{color:#34734a;font-size:9px;font-weight:900}.teacher-mobile-session strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.teacher-mobile-session small{color:var(--muted);font-size:9px}.teacher-mobile-session>button{min-height:34px;color:var(--blue);white-space:nowrap;background:#fff;border:1px solid #cbdafb;border-radius:10px;padding:0 10px;font-size:9px;font-weight:900}.teacher-mobile-video-dock{z-index:18;border-bottom:1px solid var(--border);background:#fff;position:sticky;top:0;box-shadow:0 8px 18px #1f2d4412}.teacher-mobile-video-dock .video-grid--compact{padding:9px 13px}.teacher-mobile-video-dock .video-tile{aspect-ratio:4/3}.teacher-mobile-media-controls{z-index:5;gap:5px;display:flex;position:absolute;bottom:16px;right:20px}.teacher-mobile-media-controls button{color:#fff;background:#121827c2;border:1px solid #ffffffc7;border-radius:50%;width:31px;height:31px;padding:0;box-shadow:0 4px 12px #12182733}.teacher-mobile-media-controls button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px;margin:auto;display:block}.teacher-mobile-media-controls .control-icon-slash{stroke:#ffb2b3;stroke-width:2.2px}.teacher-mobile-caption{background:#f8faff;padding:10px 13px 4px}.teacher-mobile-caption>header{justify-content:space-between;align-items:center;gap:8px;padding:0 3px 6px;display:flex}.teacher-mobile-caption>header span{color:var(--blue);font-size:9px;font-weight:900}.teacher-mobile-caption select{border:1px solid var(--border);min-height:28px;color:var(--muted);background:#fff;border-radius:8px;padding:0 8px;font-size:9px;font-weight:800}.teacher-mobile-caption .caption-card{margin:0;padding:9px 11px}.teacher-mobile-caption .caption-korean{font-size:14px}.teacher-mobile-caption .caption-translation{font-size:12px}.teacher-mobile-stages{border-top:1px solid #edf0f4;border-bottom:1px solid var(--border);background:#fff;grid-template-columns:repeat(5,1fr);gap:4px;padding:9px 10px;display:grid}.teacher-mobile-stages button{min-width:0;color:var(--muted);background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:4px 2px;display:flex}.teacher-mobile-stages button>span{border:1px solid var(--border);background:#f8fafc;border-radius:8px;place-items:center;width:24px;height:24px;font-size:9px;font-weight:900;display:grid}.teacher-mobile-stages button strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:8px;overflow:hidden}.teacher-mobile-stages button.active{color:var(--blue);background:var(--blue-soft)}.teacher-mobile-stages button.active>span{color:#fff;border-color:var(--blue);background:var(--blue)}.teacher-mobile-stages button.done>span{color:#34734a;background:#edf8f1;border-color:#bfe1ca}.teacher-mobile-current{background:#f3f6fa;padding:12px 13px 82px}.teacher-mobile-current>header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.teacher-mobile-current>header>div{flex-direction:column;display:flex}.teacher-mobile-current>header span{color:var(--muted);font-size:9px}.teacher-mobile-current>header strong{font-size:15px}.teacher-mobile-current>header button{border:1px solid var(--border);min-height:31px;color:var(--blue);background:#fff;border-radius:9px;padding:0 9px;font-size:9px;font-weight:900}.teacher-mobile-learning .learning-card{border-radius:17px;padding:15px}.teacher-mobile-learning .learning-card h2{margin:4px 0 9px;font-size:21px}.teacher-mobile-learning .eyebrow{font-size:10px}.teacher-mobile-learning .situation-scene{min-height:145px}.teacher-mobile-learning .situation-scene--compact,.teacher-mobile-learning .situation-media--compact{min-height:118px}.teacher-mobile-learning .expression-box{margin-top:9px;padding:10px 12px}.teacher-mobile-learning .expression-box strong{font-size:25px}.teacher-mobile-learning .waiting-guide{margin-top:8px;font-size:10px}.teacher-mobile-learning .primary-button,.teacher-mobile-learning .secondary-button{min-height:44px;font-size:12px}.teacher-mobile-actions{z-index:20;width:min(430px,100%);padding:10px 13px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;grid-template-columns:1fr 1fr;gap:7px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 22px #1f2d4414}.teacher-mobile-actions button{border-radius:13px;min-height:48px;font-size:11px;font-weight:900}.teacher-mobile-caption-button{color:var(--blue);background:#f5f8ff;border:1px solid #cbdafb}.teacher-mobile-next-button{border:1px solid var(--blue);color:#fff;background:var(--blue);box-shadow:0 8px 18px #2866f033}.mini-mobile-session{background:#f5f8ff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:10px 13px;display:grid}.mini-mobile-session>div{flex-direction:column;gap:2px;min-width:0;display:flex}.mini-mobile-session span{color:#34734a;font-size:9px;font-weight:900}.mini-mobile-session strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.mini-mobile-session select{border:1px solid var(--border);max-width:82px;min-height:32px;color:var(--muted);background:#fff;border-radius:9px;padding:0 6px;font-size:8px;font-weight:900}.mini-mobile-session>button{min-height:32px;color:var(--blue);background:#fff;border:1px solid #cbdafb;border-radius:9px;padding:0 8px;font-size:8px;font-weight:900}.mini-mobile-video-dock{z-index:18;border-bottom:1px solid var(--border);background:#fff;padding:9px 13px;position:sticky;top:0;box-shadow:0 8px 18px #1f2d4412}.mini-mobile-video-stage{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mini-focus-video{aspect-ratio:4/3;background:#e8f0fd;border:1px solid #cbd8e9;border-radius:14px;position:relative;overflow:hidden}.mini-focus-video--student{background:linear-gradient(150deg,#eef3fb,#dde9fa)}.mini-student-avatar{background:radial-gradient(circle at 50% 32%,#f8fbff,#dce8fb);place-content:center;justify-items:center;gap:2px;display:grid;position:absolute;inset:0}.mini-student-avatar>span{color:#fff;background:var(--blue);border-radius:50%;place-items:center;width:46px;height:46px;font-size:14px;font-weight:900;display:grid;box-shadow:0 7px 16px #2866f033}.mini-student-avatar strong{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:10px;overflow:hidden}.mini-student-avatar small{color:#34734a;font-size:8px;font-weight:900}.mini-mobile-video-dock .teacher-mobile-media-controls{bottom:16px;right:20px}.mini-mobile-participants{border-bottom:1px solid var(--border);background:#fff;padding:9px 12px 8px}.mini-mobile-participants>header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.mini-mobile-participants>header span{color:var(--muted);font-size:9px;font-weight:900}.mini-mobile-participants>header strong{color:#34734a;font-size:9px}.mini-mobile-participants>div{scrollbar-width:none;grid-template-columns:repeat(8,minmax(38px,1fr));gap:3px;display:grid;overflow-x:auto}.mini-mobile-participants>div::-webkit-scrollbar{display:none}.mini-mobile-participants button{min-width:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:3px 1px;display:flex;position:relative}.mini-mobile-participants button i{background:#f5f7fa;border:1px solid #d5deea;border-radius:50%;place-items:center;width:28px;height:28px;font-size:8px;font-style:normal;font-weight:900;display:grid}.mini-mobile-participants button span{text-overflow:ellipsis;white-space:nowrap;max-width:38px;font-size:7px;overflow:hidden}.mini-mobile-participants button.active{color:var(--blue);background:var(--blue-soft)}.mini-mobile-participants button.active i{color:#fff;border-color:var(--blue);background:var(--blue)}.mini-mobile-participants button b{color:#fff;background:var(--rose);border-radius:50%;place-items:center;width:14px;height:14px;font-size:8px;display:grid;position:absolute;top:1px;right:1px}.mini-mobile-pulse{background:#f5f8ff;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px 12px;display:grid}.mini-mobile-pulse>div{background:#fff;border:1px solid #dce5f3;border-radius:11px;justify-content:space-between;align-items:center;gap:4px;padding:8px 9px;display:flex}.mini-mobile-pulse span{color:var(--muted);font-size:8px;font-weight:800}.mini-mobile-pulse strong{color:var(--blue);font-size:12px}.mini-mobile-caption{padding-top:7px}.teacher-workspace{flex-direction:column;min-width:0;padding:26px 24px;display:flex}.workspace-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px;display:flex}.workspace-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.caption-language{border:1px solid var(--border);min-height:42px;color:var(--muted);background:#fff;border-radius:12px;padding:0 9px;font-size:12px;font-weight:700}.caption-send-button{color:var(--blue);background:var(--blue-soft);border-color:#c9d9fb}.workspace-header span{color:var(--muted);font-size:12px}.workspace-header h2{letter-spacing:-.035em;margin:4px 0 0;font-size:23px}.outline-button{border:1px solid var(--border);min-height:42px;color:var(--muted);background:#fff;border-radius:12px;padding:0 15px;font-size:12px;font-weight:700}.desktop-learning-preview{flex:1;min-height:570px;display:flex}.desktop-learning-preview .learning-card{width:100%}.teacher-media-picker{background:#f7f9fc;border:1px solid #d9e3f1;border-radius:14px;align-items:center;gap:8px;margin:-5px 0 14px;padding:10px 12px;display:flex}.teacher-media-picker>div{flex-direction:column;gap:2px;min-width:0;margin-right:auto;display:flex}.teacher-media-picker>div span{color:var(--muted);font-size:10px;font-weight:800}.teacher-media-picker>div strong{text-overflow:ellipsis;white-space:nowrap;max-width:320px;font-size:12px;overflow:hidden}.teacher-media-picker .outline-button{min-height:36px;color:var(--blue);background:var(--blue-soft);border-color:#c9d9fb}.teacher-media-picker .text-button{white-space:nowrap;margin:0}.teacher-media-picker>p{color:var(--rose);flex-basis:100%;margin:0;font-size:11px}.teacher-controls{justify-content:flex-end;gap:10px;padding-top:18px;display:flex}.student-preview-panel{background:#e8edf3;border-left:1px solid #d9e0ea;padding:20px 18px 34px;overflow:hidden}.preview-label{max-width:356px;color:var(--muted);align-items:center;margin:0 auto 12px;font-size:11px;display:flex}.preview-label>span{color:var(--ink);margin-right:auto;font-size:12px;font-weight:800}.phone-shell{background:#1f2734;border:1px solid #bac3d0;border-radius:34px;width:100%;max-width:356px;margin:0 auto;padding:10px;position:relative;box-shadow:0 24px 55px #222d3f38}.phone-shell--full{background:var(--paper);max-width:none;box-shadow:none;border:0;border-radius:0;margin:0;padding:0}.phone-speaker{z-index:4;background:#1f2734;border-radius:0 0 13px 13px;width:86px;height:19px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.student-app{--connection-header-height:56px;overscroll-behavior:contain;background:var(--paper);scrollbar-width:none;border-radius:25px;min-height:710px;max-height:calc(100vh - 140px);overflow-y:auto}.student-app.is-connection-header-collapsed{--connection-header-height:0px}.phone-shell--full .student-app{border-radius:0;min-height:100dvh;max-height:none;overflow:visible}.student-app::-webkit-scrollbar{display:none}.student-header{border-bottom:1px solid var(--border);opacity:1;background:#fffffff5;justify-content:space-between;align-items:center;min-height:56px;max-height:56px;padding:10px 16px;transition:min-height .28s,max-height .28s,padding .28s,opacity .2s,transform .28s,border-color .2s;display:flex;overflow:hidden;transform:translateY(0)}.student-header.is-collapsed{opacity:0;pointer-events:none;border-bottom-color:#0000;min-height:0;max-height:0;padding-top:0;padding-bottom:0;transform:translateY(-10px)}.phone-shell--full .student-header{top:env(safe-area-inset-top,0px);z-index:12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky}.student-header>div{align-items:center;display:flex}.student-header .mini-logo{width:21px;height:21px;font-size:13px}.student-header strong{letter-spacing:-.025em;font-size:14px}.connected-badge{color:#34734a;font-size:12px;font-weight:800}.connected-badge--connecting,.connected-badge--reconnecting{color:#966529}.connected-badge--configuration,.connected-badge--error{color:#9b3f42}.student-video-dock{background:#fff;position:relative}.session-context-chip{z-index:7;color:#fff;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#121827b3;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;position:absolute;top:16px;left:22px}.in-person-companion-note{background:#f5f8ff;border:1px solid #d6e3fb;border-radius:14px;flex-direction:column;gap:3px;margin:10px 16px 7px;padding:12px 14px;display:flex}.in-person-companion-note span{color:var(--blue);font-size:10px;font-weight:900}.in-person-companion-note strong{font-size:12px;line-height:1.45}.phone-shell--full .student-video-dock{top:calc(var(--connection-header-height) + env(safe-area-inset-top,0px));z-index:11;transition:top .28s;position:sticky;box-shadow:0 8px 18px #1f2d4414}.video-grid--compact{background:#fff;gap:8px;padding:10px 16px 8px}.video-grid--compact .video-tile{aspect-ratio:4/3;border-radius:14px}.video-grid--compact .live-video{object-position:center 18%}.video-grid--compact .video-placeholder{background-position:50% 28%}.video-grid--compact .video-name{padding:4px 8px;font-size:11px;bottom:8px;left:8px}.video-grid--compact .mic-status{width:22px;height:22px;font-size:9px;top:8px;right:8px}.mobile-media-controls{z-index:6;gap:5px;display:flex;position:absolute;bottom:14px;right:22px}.mobile-media-controls button{color:#fff;background:#121827bd;border:1px solid #fffc;border-radius:50%;width:32px;height:32px;padding:0;font-size:10px;font-weight:900;box-shadow:0 4px 12px #12182733}.mobile-media-controls button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;margin:auto;display:block}.mobile-media-controls button .control-icon-slash{stroke:#ffb2b3;stroke-width:2.2px}.caption-card{background:#fff;border:1px solid #dbe4f2;border-radius:13px;margin:0 16px 6px;padding:9px 11px;box-shadow:0 7px 18px #1f2d440d}.caption-korean{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 2px;font-size:16px;font-weight:800;line-height:1.35;display:-webkit-box;overflow:hidden}.caption-translation{color:var(--blue);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.35;display:-webkit-box;overflow:hidden}.lesson-meta{justify-content:space-between;align-items:center;min-height:38px;padding:5px 18px 6px;display:flex}.lesson-meta>div:first-child{flex-direction:column;gap:2px;display:flex}.lesson-meta span{color:var(--muted);font-size:10px}.lesson-meta strong{font-size:14px}.lesson-progress{gap:5px;display:flex}.lesson-progress span{color:#0000;background:#dfe4eb;border-radius:999px;width:24px;height:4px;font-size:0;display:block;overflow:hidden}.lesson-progress span.is-done{color:#fff;background:var(--blue)}.student-content{padding:0 16px 20px}.student-content .learning-card{border-radius:18px;padding:16px}.student-content .learning-card h2{margin:4px 0 10px;font-size:22px;line-height:1.25}.student-content .eyebrow{font-size:12px}.student-content .situation-scene{min-height:145px}.student-content .situation-scene--compact,.student-content .situation-media--compact{min-height:120px}.student-content .expression-box{margin-top:10px;padding:11px 13px}.student-content .expression-box strong{font-size:26px}.student-content .expression-box p{margin-top:3px;font-size:13px;line-height:1.45}.student-content .waiting-guide{display:none}.student-content .primary-button,.student-content .secondary-button{min-height:50px;font-size:14px}.student-content .voice-orb{width:104px;height:104px;margin:15px auto 8px}.student-content .target-sentence{font-size:22px}.student-content .sentence-translation{font-size:14px;line-height:1.55}.student-content .pronunciation-line{gap:5px}.student-content .pronunciation-line span{padding:8px 9px;font-size:13px}.student-content .correction-card{padding:14px}.student-content .correction-card strong{font-size:13px}.student-content .correction-card p{font-size:13px;line-height:1.55}.student-content .score-ring{width:79px;height:79px}.student-content .score-ring strong{font-size:28px}.student-content .score-header h2{font-size:17px}.student-content .report-score-row strong{font-size:22px}.learning-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:20px;padding:28px}.learning-card h2{letter-spacing:-.04em;margin:7px 0 18px;font-size:29px}.eyebrow{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.situation-scene{background:linear-gradient(#d9edff 0 69%,#b8d999 69%);border-radius:18px;min-height:345px;position:relative;overflow:hidden}.situation-scene--compact{min-height:210px}.situation-media{aspect-ratio:16/9;background:#172033;border-radius:18px;position:relative;overflow:hidden}.situation-media--compact{min-height:210px}.situation-media video{object-fit:cover;width:100%;height:100%;display:block}.situation-media>span{color:#fff;pointer-events:none;background:#121827ad;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;position:absolute;top:10px;left:10px}.scene-sun{background:#ffd869;border-radius:50%;width:56px;height:56px;position:absolute;top:9%;right:7%;box-shadow:0 0 0 10px #ffd86938}.scene-cloud,.scene-cloud:before,.scene-cloud:after{background:#fffc;border-radius:999px;position:absolute}.scene-cloud{width:70px;height:19px;top:14%;left:9%}.scene-cloud:before{content:"";width:30px;height:30px;bottom:0;left:10px}.scene-cloud:after{content:"";width:35px;height:35px;bottom:0;right:8px}.cloud-two{opacity:.8;top:24%;left:52%;transform:scale(.65)}.station-sign{color:#fff;background:#2f5796;border:4px solid #fff;border-radius:7px;padding:7px 13px;font-size:13px;font-weight:900;position:absolute;bottom:30%;left:6%;box-shadow:0 4px #224473}.station-sign:after{content:"";background:#5f6d74;width:5px;height:68px;position:absolute;top:100%;left:50%}.scene-person{z-index:3;width:92px;height:140px;position:absolute;bottom:9%;left:18%}.person-head{color:#503d35;background:#f3c9a5;border-top:14px solid #273249;border-radius:48% 48% 44% 44%;place-items:center;width:57px;height:62px;font-size:22px;font-weight:900;display:grid;position:absolute;top:0;left:19px}.person-body{background:var(--blue);border-radius:43px 43px 12px 12px;width:87px;height:86px;position:absolute;bottom:0;left:3px}.phone{color:#fff;background:#172033;border:4px solid #fff;border-radius:50%;place-items:center;width:37px;height:37px;font-size:18px;animation:2.4s ease-in-out infinite phone-ring;display:grid;position:absolute;top:40px;right:3px}.speech-bubble{color:#31445d;z-index:4;background:#fff;border:3px solid #8db6dc;border-radius:18px 18px 18px 4px;padding:13px 17px;font-size:13px;line-height:1.4;position:absolute;top:17%;left:36%;box-shadow:0 5px #4b739a21}.speech-bubble strong{color:var(--blue);font-size:1.18em}.train{background:#f8fbff;border:5px solid #31547f;border-radius:40px 10px 9px 9px;width:45%;height:28%;animation:5s ease-in-out infinite train-arrive;position:absolute;bottom:10%;right:-8%}.train:after{content:"";background:var(--blue);height:13px;position:absolute;bottom:18%;left:0;right:0}.train-window{background:#9bc9e9;border:3px solid #31547f;border-radius:5px;width:18%;height:30%;position:absolute;top:16%;left:18%}.train-window.second{left:43%}.train-door{z-index:2;background:#dbefff;border:3px solid #31547f;width:17%;height:66%;position:absolute;top:15%;right:14%}.train-wheel{z-index:4;background:#a7b3c4;border:5px solid #29364a;border-radius:50%;width:18px;height:18px;position:absolute;bottom:-12px}.wheel-one{left:24%}.wheel-two{right:18%}.rail{background:#596471;height:5px;position:absolute;bottom:7%;left:0;right:0;box-shadow:0 14px #596471}.ticket-stamp{color:#39704e;text-align:center;background:#ffffffe6;border:3px dashed #5d9a73;border-radius:10px;padding:9px 11px;font-size:9px;animation:5s infinite stamp-pop;position:absolute;top:8%;right:5%;transform:rotate(7deg)}.ticket-stamp strong{font-size:12px}@keyframes phone-ring{0%,8%,16%,to{transform:rotate(0)}4%,12%{transform:rotate(-13deg)}6%,14%{transform:rotate(13deg)}}@keyframes train-arrive{0%,12%{transform:translate(30%)}35%,82%{transform:translate(0)}to{transform:translate(30%)}}@keyframes stamp-pop{0%,30%{opacity:0;transform:scale(.4)rotate(7deg)}38%,85%{opacity:1;transform:scale(1)rotate(7deg)}to{opacity:0}}.expression-box{background:var(--blue-soft);border:1px solid #d6e3fb;border-radius:16px;margin-top:15px;padding:18px 20px}.expression-box>span{color:var(--blue);font-size:10px;font-weight:900;display:block}.expression-box strong{letter-spacing:-.04em;margin-top:3px;font-size:34px;display:block}.expression-box p{color:var(--muted);margin:5px 0 0;font-size:13px}.waiting-guide{color:var(--muted);background:#f5f7fa;border-radius:12px;margin-top:13px;padding:10px 13px;font-size:12px}.waiting-guide span{color:var(--blue);margin-right:6px;font-weight:900}.target-sentence{max-width:690px;line-height:1.25;font-size:clamp(26px,3vw,42px)!important}.sentence-translation{color:var(--muted);margin:-8px 0 18px;font-size:15px}.voice-orb{color:#fff;background:linear-gradient(145deg,#2d6cf3,#1752d4);border-radius:50%;justify-content:center;align-items:center;gap:4px;width:132px;height:132px;margin:22px auto 8px;display:flex;box-shadow:0 18px 35px #2866f040}.voice-orb span{opacity:.82;font-size:11px;font-weight:900;position:absolute;transform:translateY(-32px)}.voice-orb i{opacity:.75;background:#fff;border-radius:5px;width:5px;height:25px}.voice-orb i:nth-of-type(2),.voice-orb i:nth-of-type(4){height:42px}.voice-orb i:nth-of-type(3){height:60px}.voice-orb.is-speaking i{animation:.7s ease-in-out infinite alternate voice-wave}.voice-orb.is-speaking i:nth-of-type(2){animation-delay:-.2s}.voice-orb.is-speaking i:nth-of-type(4){animation-delay:-.4s}@keyframes voice-wave{to{opacity:.45;transform:scaleY(.35)}}.voice-label{color:var(--muted);text-align:center;margin:0 0 16px;font-size:11px}.button-row{gap:9px;margin-top:15px;display:flex}.primary-button,.secondary-button{border-radius:14px;min-height:49px;padding:0 18px;font-size:14px;font-weight:800}.primary-button{border:1px solid var(--blue);color:#fff;background:var(--blue);box-shadow:0 7px 16px #2866f02e}.primary-button:hover{background:var(--blue-dark)}.secondary-button{border:1px solid var(--border);color:var(--ink);background:#fff}.learning-card .button-row>button{flex:1}.text-button{color:var(--blue);background:0 0;border:0;margin:12px auto 0;font-size:12px;font-weight:800;display:block}.repeat-help{color:var(--muted);font-size:14px}.recording-visual{background:#f7faff;border:1px solid #d9e3f3;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;min-height:245px;margin:22px 0 15px;padding:30px;display:flex}.recording-ring{background:#fff;border:2px solid #ffd4d5;border-radius:50%;place-items:center;width:78px;height:78px;display:grid;box-shadow:0 0 0 10px #fff0f0}.recording-ring span{color:var(--rose);font-size:28px}.wave-bars{align-items:center;gap:5px;height:46px;margin:22px 0 14px;display:flex}.wave-bars i{background:#afc4ec;border-radius:4px;width:4px;height:10px}.wave-bars i:nth-child(3n){height:28px}.wave-bars i:nth-child(4n){height:38px}.is-recording .wave-bars i{background:var(--blue);animation:.55s ease-in-out infinite alternate recording-wave}.is-recording .wave-bars i:nth-child(2n){animation-delay:-.3s}@keyframes recording-wave{to{opacity:.45;height:8px}}.recording-visual strong{font-size:13px}.record-button{width:100%}.record-button.stop{border-color:var(--rose);background:var(--rose)}.analyzing-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:430px;display:flex}.analysis-loader{gap:8px;display:flex}.analysis-loader i{background:var(--blue);border-radius:50%;width:12px;height:12px;animation:.8s ease-in-out infinite alternate analyzing}.analysis-loader i:nth-child(2){animation-delay:.2s}.analysis-loader i:nth-child(3){animation-delay:.4s}@keyframes analyzing{to{opacity:.4;transform:translateY(-13px)}}.analyzing-card h2{margin:25px 0 5px}.analyzing-card p{color:var(--muted)}.score-header{align-items:center;gap:18px;margin:18px 0;display:flex}.score-ring{border:9px solid #d8f0df;border-top-color:var(--green);text-align:center;border-radius:50%;flex:none;place-content:center;width:105px;height:105px;display:grid}.score-ring strong{font-size:38px;line-height:.9}.score-ring span{color:var(--muted);font-size:10px}.score-header h2{margin:0 0 5px;font-size:25px}.score-header p{color:var(--muted);margin:0;font-size:13px}.pronunciation-line{flex-wrap:wrap;gap:8px;margin:15px 0;display:flex}.pronunciation-line span{border-radius:10px;padding:8px 11px;font-size:13px;font-weight:800}.pronunciation-line .excellent{color:#39704e;background:#eaf6ee}.pronunciation-line .practice{color:#9b6a2c;background:#fff2d9;box-shadow:inset 0 0 0 1px #f0ce8e}.correction-card{background:#fffaf0;border:1px solid #f1d8a4;border-radius:13px;gap:12px;margin-top:9px;padding:14px;display:flex}.correction-icon{color:#966529;background:#f9e5b8;border-radius:10px;flex:none;place-items:center;width:33px;height:33px;font-size:11px;font-weight:900;display:grid}.correction-card strong{font-size:13px}.correction-card p{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.rhythm-card{background:#f5f9ff;border-color:#d6e4fb}.rhythm-card .correction-icon{color:var(--blue);background:#dfeaff}.recognized-text{color:var(--muted);background:#f5f7fa;border-radius:11px;margin:12px 0 0;padding:10px 12px;font-size:12px}.recorded-audio{width:100%;height:36px;margin-top:12px}.student-feedback-heading{align-items:center;gap:14px;margin:18px 0;display:flex}.student-feedback-heading>span{color:#fff;background:var(--green);border-radius:50%;flex:none;place-items:center;width:54px;height:54px;font-size:24px;font-weight:900;display:grid;box-shadow:0 8px 18px #6ea47f38}.student-feedback-heading h2{margin:0 0 4px;font-size:24px}.student-feedback-heading p{color:var(--muted);margin:0;font-size:12px}.student-overall-score{background:#f2faf5;border:1px solid #cfe2d5;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin:-4px 0 12px;padding:13px 15px;display:grid}.student-overall-score>span{color:#34734a;font-size:10px;font-weight:900}.student-overall-score>strong{color:#34734a;letter-spacing:-.04em;grid-area:1/2/3;font-size:28px}.student-overall-score small{color:var(--muted);letter-spacing:0;margin-left:3px;font-size:10px}.student-overall-score p{color:var(--muted);margin:0;font-size:10px;line-height:1.4}.student-drill{background:#f5f9ff;border:1px solid #d6e4fb;border-radius:13px;margin-top:10px;padding:13px 15px}.student-drill span{color:var(--blue);font-size:10px;font-weight:900}.student-drill p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.5}.student-recommendations{background:#f6f8fb;border-radius:13px;margin-top:9px;padding:13px 15px}.student-recommendations span{color:var(--blue);font-size:10px;font-weight:900}.student-recommendations p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.45}.teacher-assessment-card{min-height:570px}.assessment-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.assessment-title-row h2{margin-bottom:10px}.review-badge{color:#966529;white-space:nowrap;background:#fffaf0;border:1px solid #f1d8a4;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:900}.review-badge.is-reviewed{color:#34734a;background:#edf8f1;border-color:#c5e5cf}.teacher-score-summary{background:#f7faff;border:1px solid #d6e3fb;border-radius:16px;grid-template-columns:auto 1fr minmax(150px,auto);align-items:center;gap:15px;padding:16px;display:grid}.teacher-score-number{align-items:baseline;gap:3px;min-width:105px;display:flex}.teacher-score-number strong{color:var(--blue);letter-spacing:-.06em;font-size:42px;line-height:1}.teacher-score-number span{color:var(--muted);font-size:12px;font-weight:800}.teacher-score-summary>div:nth-child(2) strong{font-size:13px}.teacher-score-summary>div:nth-child(2) p{color:var(--muted);margin:4px 0 0;font-size:10px}.confidence-chip{border-left:1px solid #d6e3fb;flex-direction:column;gap:2px;padding-left:15px;display:flex}.confidence-chip span{color:var(--muted);font-size:9px}.confidence-chip strong{font-size:13px}.confidence-chip small{max-width:170px;color:var(--muted);font-size:9px}.rubric-grid{grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;display:grid}.rubric-row{border:1px solid var(--border);background:#fff;border-radius:12px;grid-template-columns:minmax(90px,1fr) auto 20px;align-items:center;gap:9px;min-width:0;padding:10px 11px;display:grid}.rubric-row>div:first-child{flex-direction:column;gap:2px;display:flex}.rubric-row strong{font-size:11px}.rubric-row small{color:var(--muted);font-size:8px}.rubric-row>b{font-size:13px}.score-dots{gap:4px;display:flex}.score-dots i{background:#e1e6ee;border-radius:50%;width:9px;height:9px}.score-dots i.is-filled{background:var(--blue)}.teacher-score-panel{background:#f2faf5;border:1px solid #cfe2d5;border-radius:15px;grid-template-columns:minmax(190px,1fr) 112px auto minmax(185px,1fr);align-items:center;gap:10px;margin:14px 0;padding:14px;display:grid}.teacher-score-panel>div:first-child{flex-direction:column;gap:3px;display:flex}.teacher-score-panel>div:first-child span{color:#34734a;font-size:10px;font-weight:900}.teacher-score-panel>div:first-child strong{font-size:11px}.teacher-score-panel label{flex-direction:column;gap:4px;display:flex}.teacher-score-panel label span{color:var(--muted);font-size:9px;font-weight:800}.teacher-score-panel input{width:100%;min-height:39px;color:var(--ink);font:inherit;background:#fff;border:1px solid #bfd9c7;border-radius:10px;padding:0 10px;font-size:13px;font-weight:800}.teacher-score-panel .primary-button{white-space:nowrap;min-height:39px;padding:0 14px}.combined-score-preview{border-left:1px solid #cfe2d5;padding-left:12px}.combined-score-preview span{color:#34734a;font-size:9px;font-weight:900;display:block}.combined-score-preview strong{margin-top:2px;font-size:25px;display:block}.combined-score-preview strong small{color:var(--muted);margin-left:3px;font-size:9px}.combined-score-preview p{color:var(--muted);margin:2px 0 0;font-size:8px;line-height:1.35}.assessment-evidence{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.assessment-evidence>div{background:#f6f8fb;border-radius:12px;padding:11px}.assessment-evidence span{color:var(--blue);font-size:9px;font-weight:900}.assessment-evidence p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.45}.error-tag-row{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.error-tag-row>span{color:#785a2e;background:#fff3dc;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:9px;display:flex}.error-tag-row b{color:#966529}.teacher-assessment-card .recognized-text strong{color:var(--ink);font-size:10px}.measurement-note{color:var(--muted);margin:8px 0 0;font-size:9px}.empty-assessment{text-align:center;place-content:center;min-height:380px;display:grid}.empty-assessment strong{font-size:18px}.empty-assessment p{max-width:390px;color:var(--muted);font-size:12px;line-height:1.5}.teacher-report-detail{background:#f5f9ff}.teacher-report-detail p{margin-top:5px}.report-brand{align-items:center;margin-bottom:22px;font-size:12px;font-weight:900;display:flex}.report-date{color:var(--muted);margin:-10px 0 23px;font-size:12px}.report-score-row{border:1px solid var(--border);border-radius:15px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.report-score-row>div{border-right:1px solid var(--border);text-align:center;min-width:0;padding:16px 12px}.report-score-row>div:last-child{border:0}.report-score-row span{color:var(--muted);font-size:10px;display:block}.report-score-row strong{margin-top:5px;font-size:30px;display:block}.report-score-row small{font-size:11px}.report-score-note{color:var(--muted);text-align:left;margin:7px 2px 0;font-size:9px}.report-section{background:var(--blue-soft);border-radius:14px;margin-top:14px;padding:15px}.report-section span{color:var(--blue);font-size:9px;font-weight:900}.report-section strong{margin:4px 0;font-size:22px;display:block}.report-section p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.45}.report-note{background:var(--beige)}.report-note span{color:#966529}.report-note p{color:#675847}.report-strength{background:#f2faf5}.report-strength span{color:#34734a}.report-actions{gap:9px;margin-top:15px;display:flex}.report-actions>button{flex:1}.student-mode{max-width:450px;margin:0 auto;padding:28px 20px 45px}.student-mode--dedicated{background:var(--paper);width:100%;max-width:520px;min-height:100dvh;box-shadow:0 0 0 1px #1f2d440a, var(--shadow);padding:0}.student-mode--dedicated .live-student-footer{max-width:none;margin:0 16px 18px}.student-demo-guide{text-align:center;flex-direction:column;gap:4px;margin-bottom:13px;display:flex}.student-demo-guide span{color:var(--blue);font-size:11px;font-weight:900}.student-demo-guide strong{font-size:13px}.mobile-demo-controls{grid-template-columns:1fr 2fr;gap:8px;max-width:356px;margin:18px auto 0;display:grid}.live-student-footer{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:auto 1fr;gap:3px 8px;max-width:356px;margin:16px auto 0;padding:13px 15px;display:grid}.live-student-footer i{grid-row:1/3;align-self:center}.live-student-footer strong{font-size:12px}.live-student-footer span{color:var(--muted);font-size:10px}.class-dashboard{background:#eef2f7;min-height:calc(100vh - 76px);padding:28px 32px 42px}.class-dashboard-header{justify-content:space-between;align-items:center;gap:24px;max-width:1500px;margin:0 auto 18px;display:flex}.class-kicker{color:var(--blue);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.class-dashboard-header h1{letter-spacing:-.045em;margin:6px 0 5px;font-size:29px}.class-dashboard-header p{color:var(--muted);margin:0;font-size:13px}.class-dashboard-header p strong{color:var(--ink);margin-left:5px}.privacy-callout{background:#f2faf5;border:1px solid #cfe2d5;border-radius:14px;align-items:center;gap:10px;min-width:235px;padding:12px 15px;display:flex}.privacy-callout>span{font-size:20px}.privacy-callout div{flex-direction:column;gap:2px;display:flex}.privacy-callout strong{font-size:11px}.privacy-callout small{color:var(--muted);font-size:9px}.class-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;max-width:1500px;margin:0 auto;display:grid}.class-summary-grid>div{border:1px solid var(--border);background:#fff;border-radius:16px;min-height:112px;padding:16px;position:relative;overflow:hidden;box-shadow:0 8px 22px #1f2d440b}.class-summary-grid span{color:var(--muted);font-size:10px;font-weight:800;display:block}.class-summary-grid strong{letter-spacing:-.04em;margin-top:8px;font-size:27px;display:block}.class-summary-grid strong small{color:var(--muted);font-size:11px}.class-summary-grid p{color:var(--muted);margin:4px 0 0;font-size:9px}.class-summary-grid>div>i{background:var(--blue);height:4px;position:absolute;bottom:0;left:0}.class-summary-grid .summary-target{color:var(--blue);font-size:22px}.mini-pc-participant-panel{grid-template-columns:minmax(330px,.72fr) minmax(620px,1.55fr);align-items:stretch;gap:10px;max-width:1500px;margin:13px auto 0;display:grid}.mini-pc-speaker-stage,.mini-pc-face-roster{border:1px solid var(--border);background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 8px 22px #1f2d440b}.mini-pc-speaker-stage>header,.mini-pc-face-roster>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:55px;padding:11px 14px;display:flex}.mini-pc-speaker-stage>header>div,.mini-pc-face-roster>header>div{flex-direction:column;gap:2px;display:flex}.mini-pc-speaker-stage header span,.mini-pc-face-roster header span{color:var(--muted);font-size:9px;font-weight:800}.mini-pc-speaker-stage header strong,.mini-pc-face-roster header strong{font-size:12px}.mini-pc-speaker-stage header button{color:#966529;white-space:nowrap;background:#fff8eb;border:1px solid #f0cc91;border-radius:9px;min-height:31px;padding:0 9px;font-size:8px;font-weight:900}.mini-pc-speaker-view{background:#f7f9fc;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;min-height:159px;padding:13px;display:grid}.mini-pc-speaker-view>.video-placeholder,.mini-pc-speaker-view>.mini-pc-snapshot{background-color:#e7eef9;border:1px solid #cbd8e9;border-radius:15px;width:132px;height:132px;position:relative;inset:auto;box-shadow:0 8px 20px #1f2d4417}.mini-pc-speaker-view>div:last-child{min-width:0}.mini-pc-speaker-view span{color:var(--blue);font-size:9px;font-weight:900}.mini-pc-speaker-view h2{text-overflow:ellipsis;white-space:nowrap;margin:5px 0 4px;font-size:19px;overflow:hidden}.mini-pc-speaker-view p{color:var(--muted);margin:0;font-size:9px;line-height:1.5}.mini-pc-speaker-view.is-student-active{box-shadow:inset 4px 0 0 var(--blue);background:#f3f7ff}.mini-pc-snapshot{background-image:url(/class40-students-placeholder.webp);background-repeat:no-repeat;background-size:205%;display:block}.mini-pc-snapshot.portrait-0{background-position:12% 38%}.mini-pc-snapshot.portrait-1{background-position:88% 38%}.mini-pc-face-roster>header small{color:#34734a;align-items:center;gap:5px;font-size:8px;font-weight:900;display:flex}.mini-pc-face-roster>header small i{background:var(--green);border-radius:50%;width:6px;height:6px}.mini-pc-face-roster>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:10px 11px;display:grid}.mini-pc-face-roster>div>button{min-width:0;min-height:70px;color:var(--ink);text-align:left;background:#fafbfd;border:1px solid #e1e7ef;border-radius:12px;grid-template-columns:49px minmax(0,1fr);align-items:center;gap:7px;padding:6px;display:grid;position:relative}.mini-pc-face-roster>div>button:hover{background:#f5f8ff;border-color:#b9cdf8}.mini-pc-face-roster>div>button.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px var(--blue)}.mini-pc-face-roster>div>button.has-question:not(.active){background:#fffaf1;border-color:#efcf9b}.mini-pc-face-roster button>.mini-pc-snapshot{background-color:#e7eef9;border-radius:10px;width:49px;height:55px}.mini-pc-face-roster button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.mini-pc-face-roster button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.mini-pc-face-roster button small{color:var(--muted);font-size:7px}.mini-pc-face-roster button b{color:#fff;background:var(--rose);border-radius:50%;place-items:center;width:17px;height:17px;font-size:9px;display:grid;position:absolute;top:4px;right:4px}.mini-pc-face-roster>footer{border-top:1px solid var(--border);color:var(--muted);background:#f8fafc;padding:8px 13px;font-size:8px;line-height:1.45}.class-tabs{gap:4px;max-width:1500px;margin:17px auto 10px;display:flex}.class-tabs button{min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:11px;padding:0 16px;font-size:11px;font-weight:800}.class-tabs button.active{color:var(--blue);background:#fff;box-shadow:0 4px 14px #1f2d4412}.class-dashboard-main{grid-template-columns:minmax(600px,1.6fr) minmax(350px,.9fr);align-items:start;gap:12px;max-width:1500px;margin:0 auto;display:grid}.class-roster-card,.class-student-inspector{border:1px solid var(--border);background:#fff;border-radius:18px;box-shadow:0 10px 28px #1f2d440e}.class-roster-card{overflow:hidden}.class-roster-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:72px;padding:15px 18px;display:flex}.class-roster-heading>div{flex-direction:column;gap:3px;display:flex}.class-roster-heading span{color:var(--muted);font-size:9px}.class-roster-heading strong{font-size:15px}.teacher-only-chip{background:#edf8f1;border-radius:999px;padding:7px 10px;font-weight:900;color:#34734a!important}.class-table-head,.class-table-body>button{grid-template-columns:minmax(150px,1.2fr) 95px 95px minmax(110px,.8fr);align-items:center;gap:8px;display:grid}.class-table-head{min-height:38px;color:var(--muted);background:#f7f9fc;padding:0 17px;font-size:9px;font-weight:900}.class-table-body{max-height:590px;overflow-y:auto}.class-table-body.is-forty{max-height:640px}.class-table-body>button{width:100%;min-height:54px;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f4;padding:6px 17px}.class-table-body>button:hover{background:#f8faff}.class-table-body>button.active{box-shadow:inset 4px 0 0 var(--blue);background:var(--blue-soft)}.student-name-cell{align-items:center;gap:9px;display:flex}.student-name-cell i{width:29px;height:29px;color:var(--blue);background:#dfe9ff;border-radius:9px;flex:none;place-items:center;font-size:9px;font-style:normal;font-weight:900;display:grid}.student-name-cell b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.class-status{color:var(--muted);background:#f0f2f5;border-radius:999px;padding:5px 7px;font-size:8px;font-style:normal;font-weight:900;display:inline-flex}.status-ready{color:#34734a;background:#eaf6ee}.status-review{color:#966529;background:#fff2d9}.status-recording{color:#a24144;background:#fff0f0}.status-analyzing{color:var(--blue);background:var(--blue-soft)}.table-score{color:var(--blue);font-size:15px;font-weight:900}.target-cell{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.mini-trend{align-items:flex-end;gap:3px;height:28px;display:flex}.mini-trend i{background:#91adee;border-radius:3px 3px 1px 1px;width:6px;min-height:5px}.class-student-inspector{padding:19px;position:sticky;top:92px}.inspector-heading>span{color:var(--blue);font-size:9px;font-weight:900}.inspector-heading h2{margin:4px 0 2px;font-size:22px}.inspector-heading p{color:var(--muted);margin:0;font-size:9px}.inspector-score{background:#f5f8ff;border-radius:14px;align-items:baseline;gap:4px;margin:17px 0 12px;padding:13px 15px;display:flex}.inspector-score strong{color:var(--blue);letter-spacing:-.05em;font-size:35px}.inspector-score span{color:var(--muted);font-size:10px}.inspector-score em{color:#34734a;background:#eaf6ee;border-radius:999px;margin-left:auto;padding:5px 7px;font-size:8px;font-style:normal;font-weight:900}.compact-rubric-list{flex-direction:column;gap:7px;display:flex}.compact-rubric-list>div{grid-template-columns:82px 1fr 16px;align-items:center;gap:7px;display:grid}.compact-rubric-list span{color:var(--muted);font-size:9px}.compact-rubric-list>div>i{background:#e5e9ef;border-radius:999px;height:6px;overflow:hidden}.compact-rubric-list>div>i b{border-radius:inherit;background:var(--blue);height:100%;display:block}.compact-rubric-list strong{font-size:10px}.inspector-coaching{background:#fff8ea;border-radius:12px;margin-top:14px;padding:12px}.inspector-coaching span{color:#966529;font-size:9px;font-weight:900}.inspector-coaching p{margin:5px 0 3px;font-size:10px;font-weight:800;line-height:1.45}.inspector-coaching small{color:var(--muted);font-size:8px;line-height:1.4}.temporary-audio-note{color:var(--muted);background:#fafbfc;border:1px dashed #ccd5e2;border-radius:11px;gap:8px;margin-top:9px;padding:10px 11px;display:flex}.temporary-audio-note>span{font-size:17px}.temporary-audio-note p{margin:0;font-size:8px;line-height:1.45}.temporary-audio-note strong{color:var(--ink);font-size:9px;display:block}.practice-plan-card{background:#f7faff;border:1px solid #d6e3fb;border-radius:14px;margin-top:12px;padding:13px}.practice-plan-card>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.practice-plan-card>div span{color:var(--blue);font-size:9px;font-weight:900}.practice-plan-card button{min-height:27px;color:var(--blue);background:#fff;border:1px solid #c9d9fb;border-radius:8px;padding:0 9px;font-size:8px;font-weight:900}.practice-plan-card h3{margin:9px 0 3px;font-size:14px}.practice-plan-card p{color:var(--muted);margin:0;font-size:9px}.practice-plan-card ol{margin:9px 0;padding-left:19px}.practice-plan-card li{margin:5px 0;font-size:10px;font-weight:800}.practice-plan-card>small{color:var(--muted);border-top:1px solid #dce5f5;padding-top:8px;font-size:8px;line-height:1.4;display:block}.weekly-trend-card{background:#f6f8fc;border-radius:13px;margin-top:14px;padding:13px}.weekly-trend-card>span,.weekly-targets>span,.class-pattern-summary>span{color:var(--muted);font-size:8px;font-weight:900}.weekly-trend-card>div{justify-content:space-around;align-items:flex-end;gap:9px;height:100px;margin-top:12px;display:flex}.weekly-trend-card>div>div{flex-direction:column;justify-content:flex-end;align-items:center;gap:3px;width:42px;height:100%;display:flex}.weekly-trend-card i{background:linear-gradient(#5d86ed,#2866f0);border-radius:5px 5px 2px 2px;width:20px;min-height:8px}.weekly-trend-card strong{font-size:9px}.weekly-trend-card small{color:var(--muted);font-size:7px}.weekly-targets{background:#f3faf5;border:1px solid #d9e8dd;border-radius:12px;margin-top:9px;padding:11px}.weekly-targets strong{margin-top:5px;font-size:10px;display:block}.weekly-targets p{color:var(--muted);margin:4px 0 0;font-size:9px}.class-pattern-summary{border:1px solid var(--border);border-radius:12px;margin-top:10px;padding:11px}.class-pattern-summary>div{grid-template-columns:88px 1fr 24px;align-items:center;gap:6px;margin-top:8px;display:grid}.class-pattern-summary b,.class-pattern-summary strong{font-size:8px}.class-pattern-summary>div>i{background:#e5e9ef;border-radius:999px;height:5px;overflow:hidden}.class-pattern-summary em{background:var(--gold);height:100%;display:block}.empty-inspector{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:510px;display:flex}.empty-inspector>span{color:var(--gold);font-size:24px}.empty-inspector strong{margin-top:10px;font-size:15px}.empty-inspector p{max-width:260px;color:var(--muted);font-size:10px;line-height:1.45}.audience-dashboard{background:#eef2f7;min-height:calc(100vh - 76px);padding:28px 32px 46px}.audience-dashboard-header{justify-content:space-between;align-items:center;gap:24px;max-width:1500px;margin:0 auto 18px;display:flex}.audience-dashboard-header h1{letter-spacing:-.045em;margin:6px 0 4px;font-size:30px}.audience-dashboard-header p{color:var(--muted);margin:0;font-size:12px}.audience-live-pill{background:#f2faf5;border:1px solid #cfe2d5;border-radius:14px;grid-template-columns:auto auto 1fr;align-items:center;gap:5px;min-width:188px;padding:13px 16px;display:grid}.audience-live-pill strong{color:#34734a;font-size:12px}.audience-live-pill span{color:var(--muted);justify-self:end;font-size:10px}.audience-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;max-width:1500px;margin:0 auto 12px;display:grid}.audience-summary-grid>div{border:1px solid var(--border);background:#fff;border-radius:16px;padding:16px;box-shadow:0 8px 22px #1f2d440b}.audience-summary-grid span{color:var(--muted);font-size:10px;font-weight:800;display:block}.audience-summary-grid strong{letter-spacing:-.04em;margin-top:7px;font-size:25px;display:block}.audience-summary-grid p{color:var(--muted);margin:3px 0 0;font-size:9px}.audience-dashboard-main{grid-template-columns:minmax(620px,1.55fr) minmax(330px,.72fr);align-items:start;gap:12px;max-width:1500px;margin:0 auto;display:grid}.audience-stage-card,.audience-question-card{border:1px solid var(--border);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px #1f2d440e}.audience-stage-card{padding-bottom:16px}.audience-question-card{padding-bottom:16px;position:sticky;top:92px}.audience-card-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:70px;padding:14px 18px;display:flex}.audience-card-heading>div{flex-direction:column;gap:3px;display:flex}.audience-card-heading span{color:var(--muted);font-size:9px}.audience-card-heading strong{font-size:15px}.delivery-chip{background:var(--blue-soft);border-radius:999px;padding:6px 9px;font-weight:900;color:var(--blue)!important}.audience-stage-preview{color:#fff;background:linear-gradient(135deg,#1d2d4d,#264f9e);border-radius:17px;grid-template-columns:190px 1fr;align-items:center;gap:22px;min-height:238px;margin:16px;padding:20px;display:grid;overflow:hidden}.audience-speaker-art{background-position:50% 22%;background-size:cover;border-radius:15px;height:198px}.audience-stage-preview span{color:#b9ccfa;font-size:10px;font-weight:900}.audience-stage-preview h2{letter-spacing:-.04em;max-width:580px;margin:8px 0 9px;font-size:clamp(22px,2.2vw,35px);line-height:1.25}.audience-stage-preview p{color:#d9e4ff;margin:0;font-size:13px;line-height:1.55}.engagement-timeline{border:1px solid var(--border);border-radius:14px;margin:0 16px 14px;padding:14px}.engagement-timeline>span{color:var(--muted);font-size:9px;font-weight:900}.engagement-timeline>div{align-items:flex-end;gap:5px;height:56px;margin:9px 0 5px;display:flex}.engagement-timeline i{background:linear-gradient(#7ca2fa,var(--blue));border-radius:4px 4px 1px 1px;flex:1;min-height:7px}.engagement-timeline small{color:var(--muted);font-size:8px}.audience-face-control{background:#f5f7fa;border-radius:14px;align-items:center;gap:15px;margin:0 16px;padding:12px 14px;display:flex}.audience-face-control>div{flex-direction:column;gap:2px;margin-right:auto;display:flex}.audience-face-control strong{font-size:11px}.audience-face-control span{color:var(--muted);font-size:9px}.audience-face-control button{min-height:36px;color:var(--blue);background:#fff;border:1px solid #c9d9fb;border-radius:10px;padding:0 13px;font-size:9px;font-weight:900}.audience-face-control button.is-open{color:#9b3f42;border-color:#f2caca}.audience-face-grid{grid-template-columns:repeat(8,1fr);gap:6px;margin:12px 16px 0;display:grid}.audience-face-grid>div{border:1px solid var(--border);background:#fafbfc;border-radius:10px;flex-direction:column;align-items:center;min-width:0;padding:8px 4px;display:flex}.audience-face-grid i{width:34px;height:34px;color:var(--blue);background:#dfe9ff;border-radius:10px;place-items:center;font-size:8px;font-style:normal;font-weight:900;display:grid}.audience-face-grid span{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:5px;font-size:7px;font-weight:800;overflow:hidden}.audience-face-grid small{color:var(--muted);font-size:6px}.audience-question-list{padding:8px 14px}.audience-question-list>div{border-bottom:1px solid #edf0f4;grid-template-columns:22px 1fr auto;align-items:start;gap:8px;padding:12px 2px;display:grid}.audience-question-list>div>span{width:22px;height:22px;color:var(--blue);background:var(--blue-soft);border-radius:7px;place-items:center;font-size:9px;font-weight:900;display:grid}.audience-question-list>div>div{flex-direction:column;gap:4px;display:flex}.audience-question-list strong{font-size:10px;line-height:1.4}.audience-question-list small{color:var(--muted);font-size:8px}.audience-question-list b{color:var(--blue);white-space:nowrap;font-size:8px}.audience-question-card>.primary-button{width:calc(100% - 28px);margin:6px 14px 14px}.language-status{background:#f6f8fb;border-radius:13px;margin:0 14px;padding:12px}.language-status>span{color:var(--muted);font-size:8px;font-weight:900}.language-status p{align-items:center;gap:7px;margin:7px 0 0;font-size:9px;display:flex}.language-status i{background:var(--green);border-radius:50%;width:6px;height:6px}.audience-student-mode{max-width:480px}.audience-phone-wrap{background:#1f2734;border:1px solid #bac3d0;border-radius:34px;width:100%;max-width:390px;margin:0 auto;padding:10px;box-shadow:0 24px 55px #222d3f38}.audience-phone-wrap--full{background:var(--paper);max-width:none;box-shadow:none;border:0;border-radius:0;padding:0}.audience-mobile{background:var(--paper);border-radius:25px;min-height:720px;overflow:hidden}.audience-phone-wrap--full .audience-mobile{border-radius:0;min-height:100dvh}.audience-mobile>header{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;min-height:56px;padding:10px 15px;display:flex}.audience-mobile>header>div{align-items:center;display:flex}.audience-mobile>header strong{font-size:13px}.audience-mobile>header>span{color:#34734a;font-size:10px;font-weight:900}.audience-mobile-context{background:#f4f7fc;flex-direction:column;gap:2px;padding:10px 15px;display:flex}.audience-mobile-context span{color:var(--blue);font-size:9px;font-weight:900}.audience-mobile-context strong{font-size:11px}.audience-mobile-stage{background:#1d2d4d;height:155px;position:relative;overflow:hidden}.audience-mobile-stage>div{opacity:.86;background-position:50% 18%;background-size:cover;position:absolute;inset:0}.audience-mobile-stage>span{color:#fff;background:#121827b8;border-radius:8px;padding:5px 8px;font-size:9px;font-weight:800;position:absolute;bottom:10px;left:12px}.audience-caption-live{background:#fff;border:1px solid #d6e3fb;border-radius:14px;margin:10px 13px 8px;padding:13px;box-shadow:0 7px 18px #1f2d440d}.audience-caption-live>span{color:var(--blue);font-size:9px;font-weight:900}.audience-caption-live strong{margin-top:5px;font-size:16px;line-height:1.35;display:block}.audience-caption-live p{color:var(--blue);margin:3px 0 0;font-size:14px;line-height:1.4}.audience-now{background:#f5efe6;border-radius:13px;align-items:center;gap:8px;margin:0 13px 8px;padding:11px 12px;display:flex}.audience-now>div{flex-direction:column;gap:2px;margin-right:auto;display:flex}.audience-now span{color:#966529;font-size:8px;font-weight:900}.audience-now strong{font-size:11px}.audience-now button{color:#785a2e;background:#fff;border:1px solid #e2c99e;border-radius:9px;min-height:31px;padding:0 9px;font-size:8px;font-weight:900}.audience-pulse{margin:0 13px 8px}.audience-pulse>span,.audience-ask>span{color:var(--muted);margin-bottom:6px;font-size:9px;font-weight:900;display:block}.audience-pulse>div{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.audience-pulse button{border:1px solid var(--border);min-height:38px;color:var(--muted);background:#fff;border-radius:10px;padding:0 4px;font-size:9px;font-weight:800}.audience-pulse button.active{color:#fff;border-color:var(--blue);background:var(--blue)}.audience-ask{margin:12px 13px 18px}.audience-ask textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:68px;color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:10px;font-size:10px}.audience-ask>div{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.audience-ask label{color:var(--muted);font-size:8px}.audience-ask button{color:#fff;background:var(--blue);border:0;border-radius:9px;min-height:34px;padding:0 12px;font-size:9px;font-weight:900}.print-report-only{display:none}.activity-switch{background:#f4f7fb;border:1px solid #d6deea;border-radius:11px;gap:2px;padding:3px;display:flex}.activity-switch button{min-height:31px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:0 10px;font-size:8px;font-weight:900}.activity-switch button.active{color:#fff;background:#315b9d;box-shadow:0 3px 8px #315b9d33}.pronunciation-lab{min-height:calc(100vh - 76px);color:var(--ink);background:#eef2f7}.lab-topbar{background:#fffffff5;border-bottom:1px solid #dce3ed;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:10px 24px;display:flex}.lab-brand{align-items:center;gap:10px;display:flex}.lab-brand>span{color:#fff;background:#315b9d;border-radius:11px;place-items:center;width:36px;height:36px;font-size:21px;font-weight:900;display:grid}.lab-brand>div{flex-direction:column;gap:2px;display:flex}.lab-brand strong{letter-spacing:-.02em;font-size:14px}.lab-brand small{color:var(--muted);font-size:8px}.lab-session-actions{align-items:center;gap:7px;display:flex}.lab-session-actions>span,.lab-student-connection{color:var(--muted);align-items:center;gap:5px;font-size:8px;font-weight:900;display:inline-flex}.lab-session-actions>span i,.lab-student-connection i{background:#aeb7c3;border-radius:50%;width:6px;height:6px}.lab-session-actions>span.is-connected,.lab-student-connection.is-connected{color:#34734a}.lab-session-actions>span.is-connected i,.lab-student-connection.is-connected i{background:var(--green);box-shadow:0 0 0 3px #def1e4}.lab-session-actions button{color:#315b9d;background:#fff;border:1px solid #c9d5e6;border-radius:9px;min-height:34px;padding:0 11px;font-size:8px;font-weight:900}.lab-session-actions button:last-child{color:var(--muted)}.lab-teacher-layout{grid-template-columns:minmax(310px,350px) minmax(760px,1fr);height:calc(100vh - 144px);min-height:720px;display:grid}.lab-article-panel{background:#f8fafc;border-right:1px solid #d9e1ec;flex-direction:column;min-height:0;display:flex}.lab-content-meta{border-bottom:1px solid #e2e7ee;padding:20px 18px 16px}.lab-content-meta>span{color:#315b9d;font-size:8px;font-weight:900}.lab-content-meta h1{letter-spacing:-.03em;margin:5px 0 4px;font-size:17px;line-height:1.3}.lab-content-meta p{color:var(--muted);margin:0;font-size:8px}.lab-segment-list{flex-direction:column;gap:4px;min-height:0;padding:8px;display:flex;overflow-y:auto}.lab-segment-list button{width:100%;min-height:66px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:24px minmax(0,1fr);gap:2px 7px;padding:9px 10px;display:grid}.lab-segment-list button:hover{background:#fff;border-color:#d7e1f2}.lab-segment-list button.active{background:#edf3ff;border-color:#b8caf0;box-shadow:inset 3px 0 #315b9d}.lab-segment-list b{color:#315b9d;grid-row:1/3;font-size:9px}.lab-segment-list span{font-size:10px;font-weight:750;line-height:1.45}.lab-segment-list em{color:var(--muted);font-size:7px;font-style:normal}.lab-live-panel{grid-template-columns:minmax(0,1fr);align-content:start;gap:10px;min-width:0;min-height:0;padding:15px;display:grid;overflow-y:auto}.lab-media-picker{background:#f8fafc;border:1px dashed #aebed5;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;min-height:70px;padding:11px 13px;display:grid}.lab-media-picker.is-ready{background:#f2faf4;border-style:solid;border-color:#b9ddc5}.lab-media-picker>div{flex-direction:column;gap:2px;display:flex}.lab-media-picker span{color:#315b9d;font-size:8px;font-weight:900}.lab-media-picker.is-ready span{color:#34734a}.lab-media-picker strong{font-size:12px}.lab-media-picker small{color:var(--muted);font-size:8px;line-height:1.4}.lab-media-picker button{color:#315b9d;background:#fff;border:1px solid #b9caed;border-radius:10px;min-height:38px;padding:0 13px;font-size:9px;font-weight:900}.lab-media-picker p{color:#aa3f45;grid-column:1/-1;margin:3px 0 0;font-size:8px;font-weight:800}.lab-current-card,.lab-participant-strip,.lab-group-summary,.lab-individual-detail{background:#fff;border:1px solid #dce3ed;border-radius:17px;box-shadow:0 7px 20px #1f2d440b}.lab-current-card{overflow:hidden}.lab-current-card>header{border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;min-height:51px;padding:9px 14px;display:flex}.lab-current-card>header>div:first-child{flex-direction:column;gap:2px;display:flex}.lab-current-card>header span,.lab-participant-strip header span,.lab-teacher-summary header span{color:var(--muted);font-size:8px;font-weight:900}.lab-current-card>header strong{font-size:12px}.lab-line-nav{gap:4px;display:flex}.lab-line-nav button{min-height:31px;color:var(--muted);background:#fff;border:1px solid #d6deea;border-radius:8px;padding:0 10px;font-size:8px;font-weight:900}.lab-segment-media{background:#15223a;place-items:center;display:grid;position:relative;overflow:hidden}.lab-segment-media--teacher{min-height:118px}.lab-segment-media--student{min-height:150px}.lab-segment-media audio{display:none}.lab-segment-media>b{color:#fff;letter-spacing:.08em;background:#0c1628bd;border-radius:7px;padding:5px 7px;font-size:7px;position:absolute;top:10px;right:10px}.lab-segment-audio-visual{width:100%;min-height:inherit;color:#dce6f7;text-align:center;background:radial-gradient(circle at 50% 32%,#354f7a 0,#1e3151 38%,#14223a 100%);flex-direction:column;justify-content:center;align-items:center;padding:22px;display:flex}.lab-segment-audio-visual>span{align-items:center;gap:5px;height:34px;display:flex}.lab-segment-audio-visual>span i{background:#91b3ec;border-radius:999px;width:4px}.lab-segment-audio-visual>span i:first-child,.lab-segment-audio-visual>span i:nth-child(7){height:10px}.lab-segment-audio-visual>span i:nth-child(2),.lab-segment-audio-visual>span i:nth-child(6){height:19px}.lab-segment-audio-visual>span i:nth-child(3),.lab-segment-audio-visual>span i:nth-child(5){height:28px}.lab-segment-audio-visual>span i:nth-child(4){background:#fff;height:34px}.lab-segment-audio-visual strong{color:#fff;margin-top:7px;font-size:11px}.lab-segment-audio-visual small{color:#becce1;max-width:430px;margin-top:4px;font-size:8px;line-height:1.45}.lab-playback-unlock{z-index:3;color:#fff;background:#182740eb;border:1px solid #ffffffa6;border-radius:11px;min-height:42px;padding:0 16px;font-size:9px;font-weight:900;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 8px 24px #00000040}.lab-current-sentence{text-align:center;background:linear-gradient(145deg,#f8faff,#eef4ff);flex-direction:column;justify-content:center;min-height:172px;padding:24px clamp(20px,4vw,58px);display:flex}.lab-current-sentence>span{color:#315b9d;font-size:9px;font-weight:900}.lab-current-sentence h2{letter-spacing:-.04em;max-width:880px;margin:9px auto 8px;font-size:clamp(22px,2.2vw,33px);line-height:1.35}.lab-current-sentence p{color:#54709f;margin:0;font-size:11px;line-height:1.5}.lab-current-controls{grid-template-columns:1fr 1fr;gap:8px;padding:12px 14px;display:grid}.lab-current-controls button{border-radius:11px;min-height:45px;font-size:10px;font-weight:900}.lab-listen-button{color:#315b9d;background:#f4f7ff;border:1px solid #b9caed}.lab-record-button{color:#fff;background:#315b9d;border:0}.lab-playback-note{color:var(--muted);text-align:center;padding:0 14px 12px;font-size:7px;display:block}.lab-participant-strip{overflow:hidden}.lab-participant-strip>header{border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;min-height:50px;padding:9px 14px;display:flex}.lab-participant-strip header>div{flex-direction:column;gap:2px;display:flex}.lab-participant-strip header strong{font-size:12px}.lab-participant-strip header small{color:#34734a;font-size:7px;font-weight:800}.lab-participant-strip>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:9px;display:grid}.lab-participant-strip>div>button{min-width:0;min-height:62px;color:var(--ink);text-align:left;background:#fafbfd;border:1px solid #e0e6ee;border-radius:11px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px;display:grid}.lab-participant-strip>div>button.active{background:#edf3ff;border-color:#315b9d;box-shadow:inset 0 0 0 1px #315b9d}.lab-participant-strip>div>button.ready{border-color:#cce3d3}.lab-avatar{background-color:#e7eef9;background-image:url(/class40-students-placeholder.webp);background-repeat:no-repeat;background-size:205%;border-radius:9px;width:44px;height:48px;display:block}.lab-avatar.portrait-0{background-position:12% 38%}.lab-avatar.portrait-1{background-position:88% 38%}.lab-participant-strip button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.lab-participant-strip button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.lab-participant-strip button small{color:var(--muted);font-size:7px}.lab-participant-strip button>b{color:#315b9d;font-size:13px}.lab-teacher-summary{grid-template-columns:minmax(0,1.3fr) minmax(300px,.8fr);gap:10px;display:grid}.lab-group-summary,.lab-individual-detail{padding:15px}.lab-group-summary>header,.lab-individual-detail>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.lab-group-summary>header strong,.lab-individual-detail>header strong{font-size:12px}.lab-common-errors{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px;display:grid}.lab-common-errors>div{background:#fff6e6;border-radius:11px;flex-direction:column;gap:3px;padding:10px;display:flex}.lab-common-errors b{color:#8a6127;font-size:11px}.lab-common-errors span{color:var(--muted);font-size:7px}.lab-empty-summary{min-height:82px;color:var(--muted);border:1px dashed #ccd5e2;border-radius:11px;align-items:center;gap:10px;margin-top:10px;padding:12px;display:flex}.lab-empty-summary>span{color:#315b9d;font-size:20px}.lab-empty-summary p{margin:0;font-size:8px;line-height:1.45}.lab-attention{background:#f2f6ff;border-radius:12px;margin-top:9px;padding:11px 120px 11px 12px;position:relative}.lab-attention>span{color:#315b9d;font-size:8px;font-weight:900}.lab-attention strong{margin-top:3px;font-size:12px;display:block}.lab-attention p{color:var(--muted);margin:3px 0 0;font-size:8px}.lab-attention button{color:#315b9d;background:#fff;border:1px solid #b9caed;border-radius:8px;min-height:31px;padding:0 9px;font-size:7px;font-weight:900;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.lab-detail-score{align-items:baseline;gap:3px;margin:11px 0 9px;display:flex}.lab-detail-score strong{color:#315b9d;font-size:30px}.lab-detail-score span{color:var(--muted);font-size:8px}.lab-rubric-mini{flex-direction:column;gap:5px;display:flex}.lab-rubric-mini>div{grid-template-columns:70px 1fr 14px;align-items:center;gap:6px;display:grid}.lab-rubric-mini span{color:var(--muted);font-size:7px}.lab-rubric-mini i{background:#e6eaf0;border-radius:999px;height:5px;overflow:hidden}.lab-rubric-mini i b{background:#315b9d;height:100%;display:block}.lab-rubric-mini strong{font-size:8px}.lab-individual-detail>p{color:var(--muted);background:#fff7e8;border-radius:9px;margin:10px 0 0;padding:9px;font-size:8px;line-height:1.45}.lab-individual-detail>p b{color:#8a6127;display:block}.lab-empty-detail{min-height:134px;color:var(--muted);text-align:center;place-items:center;font-size:8px;line-height:1.45;display:grid}.pronunciation-lab--student{min-height:100vh}.pronunciation-lab--student .lab-topbar{z-index:8;position:sticky;top:0}.lab-student-layout{grid-template-columns:minmax(250px,300px) minmax(600px,1fr);align-items:start;gap:14px;width:min(1280px,100% - 40px);margin:0 auto;padding:22px 0 36px;display:grid}.lab-student-classroom,.lab-student-sentence,.lab-student-feedback{background:#fff;border:1px solid #dce3ed;border-radius:17px;box-shadow:0 8px 24px #1f2d440d}.lab-student-classroom{position:sticky;top:90px;overflow:hidden}.lab-student-video{background:#dfe8f6;height:210px;position:relative;overflow:hidden}.lab-student-video>.video-placeholder{background-position:50% 24%;background-size:cover;border:0;border-radius:0;width:auto;height:auto;position:absolute;inset:0}.lab-student-video>span{color:#fff;background:#141f32bf;border-radius:9px;flex-direction:column;padding:6px 8px;display:flex;position:absolute;bottom:11px;left:12px}.lab-student-video strong{font-size:9px}.lab-student-video small{color:#d9e4f4;font-size:7px}.lab-student-profile{border-bottom:1px solid #e5e9ef;padding:13px}.lab-student-profile>span,.lab-lesson-progress>span{color:var(--muted);font-size:8px;font-weight:900}.lab-student-profile>div{grid-template-columns:1fr auto;gap:5px;margin-top:6px;display:grid}.lab-student-profile input{min-width:0;height:36px;font:inherit;border:1px solid #ccd6e5;border-radius:9px;padding:0 9px;font-size:9px;font-weight:800}.lab-student-profile button{color:#fff;background:#315b9d;border:0;border-radius:9px;padding:0 11px;font-size:8px;font-weight:900}.lab-student-profile small{color:var(--muted);margin-top:5px;font-size:7px;display:block}.lab-lesson-progress{grid-template-columns:1fr auto;align-items:center;gap:6px;padding:13px;display:grid}.lab-lesson-progress strong{font-size:10px}.lab-lesson-progress i{background:#e3e8ef;border-radius:999px;grid-column:1/3;height:6px;overflow:hidden}.lab-lesson-progress i b{border-radius:inherit;background:#315b9d;height:100%;display:block}.lab-student-practice{gap:12px;display:grid}.lab-student-sentence{overflow:hidden}.lab-student-sentence>header,.lab-student-feedback>header{border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;min-height:53px;padding:10px 15px;display:flex}.lab-student-sentence header span,.lab-student-feedback header span{color:#315b9d;font-size:8px;font-weight:900}.lab-student-sentence header strong,.lab-student-feedback header strong{font-size:10px}.lab-student-sentence>h1{letter-spacing:-.045em;text-align:center;max-width:850px;margin:0 auto;padding:30px 38px 12px;font-size:clamp(25px,3vw,39px);line-height:1.4}.lab-student-sentence>p{color:#54709f;text-align:center;margin:0 auto;padding:0 24px;font-size:12px;line-height:1.5}.lab-student-sentence>.lab-student-actions{grid-template-columns:1fr 1fr;gap:8px;padding:25px 18px 18px;display:grid}.lab-student-sentence>.lab-student-actions>button{color:#315b9d;background:#f4f7ff;border:1px solid #b9caed;border-radius:12px;min-height:51px;font-size:11px;font-weight:900}.lab-student-sentence>.lab-student-actions>button:last-child{color:#fff;background:#315b9d;border:0}.lab-student-sentence>.lab-student-actions>button.is-recording{background:#c34f53}.lab-analyzing{background:#eef4ff;border-radius:11px;grid-template-columns:auto 1fr;gap:2px 8px;margin:0 18px 18px;padding:12px;display:grid}.lab-analyzing i{border:2px solid #b5c9ed;border-top-color:#315b9d;border-radius:50%;grid-row:1/3;align-self:center;width:13px;height:13px;animation:.8s linear infinite lab-spin}.lab-analyzing strong{font-size:9px}.lab-analyzing span{color:var(--muted);font-size:7px}@keyframes lab-spin{to{transform:rotate(360deg)}}.lab-student-feedback{min-height:250px;overflow:hidden}.lab-student-result{grid-template-columns:180px 1fr;gap:16px;padding:16px;display:grid}.lab-student-score{background:#edf3ff;border-radius:14px;flex-wrap:wrap;place-content:center;display:flex}.lab-student-score strong{color:#315b9d;letter-spacing:-.06em;font-size:47px}.lab-student-score span{color:var(--muted);align-self:center;font-size:10px}.lab-student-score small{color:var(--muted);text-align:center;flex-basis:100%;font-size:8px}.lab-student-coaching{gap:7px;display:grid}.lab-student-coaching>div{border:1px solid #e1e6ed;border-radius:10px;padding:10px 11px}.lab-student-coaching span{color:#315b9d;font-size:8px;font-weight:900}.lab-student-coaching p{margin:4px 0 0;font-size:9px;line-height:1.45}.lab-student-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;padding:20px;display:flex}.lab-student-empty>span{font-size:29px}.lab-student-empty strong{margin-top:8px;font-size:13px}.lab-student-empty p{max-width:420px;color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.5}.lab-student-feedback>.recorded-audio{width:calc(100% - 32px);margin:0 16px 16px}@media (max-width:1280px){.teacher-console{grid-template-columns:265px 1fr}.student-preview-panel{display:none}}@media (max-width:1180px){.class-dashboard-main{grid-template-columns:minmax(540px,1.35fr) minmax(320px,.8fr)}.class-summary-grid{grid-template-columns:1fr 1fr}.audience-dashboard-main{grid-template-columns:minmax(520px,1.2fr) minmax(300px,.8fr)}.audience-summary-grid{grid-template-columns:1fr 1fr}.audience-face-grid{grid-template-columns:repeat(4,1fr)}.lab-teacher-layout{grid-template-columns:290px minmax(650px,1fr)}.lab-participant-strip>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.teacher-mobile-mode{background:var(--paper);min-height:100dvh;padding:0;display:block}.teacher-mobile-phone{width:100%;min-height:100dvh;box-shadow:none;border:0;border-radius:0}.teacher-mobile-header{padding-top:calc(10px + env(safe-area-inset-top,0px))}.demo-toolbar{gap:8px;height:auto;min-height:69px;padding:9px 13px}.brand-mark{border-radius:9px;width:34px;height:34px;font-size:20px}.toolbar-brand strong{font-size:12px}.toolbar-brand small{font-size:8px}.toolbar-modes{flex-direction:column-reverse;align-items:flex-end;gap:5px}.family-switches{justify-content:flex-end;max-width:66vw;overflow-x:auto}.product-switch--family{flex:none;padding-left:43px}.product-switch--family>span{font-size:7px;left:8px}.product-switch button{min-height:30px;padding:0 7px;font-size:8px}.delivery-switch button{min-height:28px;padding:0 6px;font-size:7px}.membership-button{min-height:28px;padding:0 8px;font-size:7px}.role-switch button{min-height:36px;padding:0 9px;font-size:10px}.membership-overlay{align-items:end;padding:0}.membership-dialog{border-radius:22px 22px 0 0;max-height:96dvh;overflow-y:auto}.membership-header{min-height:64px;padding:11px 14px}.membership-header .brand-mark{width:34px;height:34px}.membership-header strong{font-size:12px}.membership-header small{max-width:230px;font-size:7px}.membership-progress{margin-top:14px}.membership-step{min-height:0;padding:20px 14px 24px}.membership-step h1{font-size:23px}.membership-step>p{font-size:10px}.plan-choice-grid{grid-template-columns:1fr;margin-top:17px}.plan-choice-grid>button{min-height:0;padding:15px}.plan-choice-grid button>strong{margin-top:11px;font-size:14px}.plan-choice-grid button>p{min-height:0;margin:5px 0 11px}.plan-choice-grid button>b{font-size:20px}.access-family-grid,.cost-structure-grid{grid-template-columns:1fr}.access-family-grid section>div{grid-template-columns:58px 1fr}.access-family-grid section>div small{text-align:left;grid-column:2}.cost-structure-grid{margin-top:16px}.credit-flow{text-align:center;flex-direction:column;align-items:stretch}.credit-flow i{transform:rotate(90deg)}.membership-actions{min-height:66px;padding:10px 14px;position:sticky;bottom:0}.membership-actions button{flex:1;min-width:0}.teacher-console{display:block}.teacher-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:13px}.teacher-sidebar>.video-grid{width:100%;max-width:430px;margin:0 auto}.teacher-sidebar>.video-grid .video-tile{border-radius:12px}.teacher-sidebar>.desktop-media-controls,.teacher-sidebar>.call-status{width:100%;max-width:430px;margin-left:auto;margin-right:auto}.teacher-sidebar>.desktop-media-controls button{min-height:34px;font-size:9px}.sync-status,.teacher-tip{display:none}.session-heading{max-width:430px;margin:0 auto 10px}.session-heading h1{margin:8px 0 3px;font-size:17px}.session-heading p{font-size:11px}.status-pill{padding:5px 8px;font-size:9px}.stage-navigation{grid-template-columns:repeat(5,1fr);gap:4px;max-width:430px;margin:10px auto 0;display:grid}.stage-navigation button{text-align:center;flex-direction:column;gap:2px;min-height:50px;padding:5px}.stage-navigation button>span{border-radius:7px;width:23px;height:23px}.stage-navigation button strong{font-size:8px}.stage-navigation button i,.nav-label{display:none}.teacher-workspace{padding:18px 13px 28px}.workspace-header{align-items:flex-end}.workspace-header h2{font-size:20px}.workspace-header .outline-button{padding:0 10px;font-size:9px}.workspace-actions{gap:4px}.teacher-media-picker{flex-wrap:wrap}.teacher-media-picker>div{flex-basis:100%}.teacher-media-picker .outline-button{flex:1}.desktop-learning-preview{min-height:0}.learning-card{padding:18px}.teacher-controls{grid-template-columns:1fr 2fr;display:grid}.teacher-controls button:nth-child(2){display:none}.student-mode{padding:16px 8px 35px}.student-mode .phone-shell{max-width:390px}.student-mode--dedicated{max-width:none;box-shadow:none;padding:0}.student-mode--dedicated .phone-shell--full{max-width:none}.student-app{min-height:700px;max-height:none}.rubric-grid,.assessment-evidence{grid-template-columns:1fr}.teacher-score-summary{grid-template-columns:auto 1fr}.confidence-chip{border-top:1px solid #d6e3fb;border-left:0;grid-column:1/-1;padding:9px 0 0}.teacher-score-panel{grid-template-columns:1fr 95px}.teacher-score-panel .primary-button{align-self:end}.combined-score-preview{border-top:1px solid #cfe2d5;border-left:0;grid-column:1/-1;padding:10px 0 0}.class-dashboard{padding:18px 10px 30px}.class-dashboard-header{flex-direction:column;align-items:flex-start}.privacy-callout{width:100%}.class-dashboard-header h1{font-size:24px}.class-dashboard-header p strong{margin:5px 0 0;display:block}.class-summary-grid{grid-template-columns:1fr 1fr;gap:7px}.class-summary-grid>div{min-height:98px;padding:12px}.class-summary-grid strong{font-size:22px}.class-summary-grid .summary-target{font-size:17px}.class-dashboard-main{display:block}.class-student-inspector{margin-top:10px;position:static}.class-table-head,.class-table-body>button{grid-template-columns:minmax(130px,1.2fr) 76px 62px 85px}.class-roster-card{overflow-x:auto}.class-table{min-width:520px}.audience-dashboard{padding:18px 10px 30px}.audience-dashboard-header{flex-direction:column;align-items:flex-start}.audience-live-pill{width:100%}.audience-summary-grid{grid-template-columns:1fr 1fr;gap:7px}.audience-dashboard-main{display:block}.audience-question-card{margin-top:10px;position:static}.audience-stage-preview{grid-template-columns:95px 1fr;gap:12px;min-height:0;padding:13px}.audience-speaker-art{height:120px}.audience-stage-preview h2{font-size:18px}.audience-stage-preview p{font-size:10px}.audience-face-grid{grid-template-columns:repeat(4,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{@page{margin:16mm;size:A4}body{background:#fff}.no-print,.teacher-console,.student-mode{display:none!important}.print-report-only{display:block}.print-report-only .learning-card{max-width:760px;box-shadow:none;border:0;margin:0 auto}.report-actions{display:none}}
.teacher-console--duo-lesson{background:#eef2f7;grid-template-columns:300px minmax(0,1fr)}.teacher-console--duo-lesson .teacher-workspace{min-height:calc(100vh - 76px);overflow-y:auto}.call-status{align-items:center;gap:5px;display:flex}.call-status button{color:#913c40;background:#fff;border:1px solid #e0aeb0;border-radius:7px;margin-left:auto;padding:4px 7px;font-size:8px;font-weight:900}.turn-notice{color:#82652f;margin:6px 0 0;font-size:8px;line-height:1.4}.duo-lesson-teacher-workspace{gap:12px;display:grid}.duo-lesson-session-actions{background:#fff;border:1px solid #d7e1ef;border-radius:14px;align-items:center;gap:8px;min-height:62px;padding:10px 12px;display:flex}.duo-lesson-session-actions>div{flex-direction:column;gap:2px;min-width:0;margin-right:auto;display:flex}.duo-lesson-session-actions span{color:#315b9d;font-size:9px;font-weight:900}.duo-lesson-session-actions strong{font-size:11px}.duo-lesson-panel{min-width:0;color:var(--ink)}.duo-lesson-heading{background:#fff;border:1px solid #dce3ed;border-radius:18px;align-items:center;gap:18px;min-height:106px;padding:17px 18px;display:flex;position:relative;box-shadow:0 8px 24px #1f2d440b}.duo-lesson-heading>div:first-child{min-width:0;margin-right:auto}.duo-lesson-heading>div:first-child>span{color:#315b9d;font-size:9px;font-weight:900}.duo-lesson-heading h1{letter-spacing:-.04em;margin:5px 0 3px;font-size:25px}.duo-lesson-heading p{color:var(--muted);margin:0;font-size:10px}.duo-package-status{background:#f8fafc;border:1px dashed #aebed5;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 9px;min-width:280px;padding:11px 12px;display:grid;position:relative}.duo-package-status.is-ready{background:#f2faf4;border-style:solid;border-color:#b9ddc5}.duo-package-status.needs-attention{background:#fffaf0;border-color:#e5b95f;animation:1.7s ease-out infinite duo-prepare-pulse;box-shadow:0 0 #e2a4373d}.duo-package-status span{color:#315b9d;font-size:8px;font-weight:900}.duo-package-status.is-ready span{color:#34734a}.duo-package-status strong{font-size:10px}.duo-package-status small{color:#65748a;grid-column:1;font-size:7px;font-weight:800}.duo-package-status button{color:#315b9d;background:#fff;border:1px solid #b9caed;border-radius:9px;grid-area:1/2/4;min-height:36px;padding:0 11px;font-size:8px;font-weight:900}.duo-package-status.needs-attention button{color:#6d480b;background:#fff3ce;border-color:#d89c2f;min-height:42px;font-size:10px}.duo-package-status button:disabled{opacity:.62;cursor:wait}.duo-package-progress{background:#dde5f0;border-radius:999px;height:3px;position:absolute;bottom:5px;left:12px;right:12px;overflow:hidden}.duo-package-progress:after{content:"";width:var(--duo-progress);border-radius:inherit;background:#315b9d;height:100%;transition:width .18s;display:block}@keyframes duo-prepare-pulse{70%,to{box-shadow:0 0 0 9px #e2a43700}}.duo-package-error{z-index:3;background:#fff5f5;border:1px solid #efc6c8;border-radius:9px;padding:7px 10px;font-weight:800;position:absolute;bottom:-31px;left:18px;right:18px;color:#9c3e43!important;font-size:8px!important}.duo-lesson-body{grid-template-columns:minmax(230px,.86fr) minmax(260px,.95fr) minmax(340px,1.3fr);align-items:start;gap:10px;margin-top:11px;display:grid}.duo-lesson-video-card,.duo-dialogue-card,.duo-current-line-card,.duo-lesson-feedback{background:#fff;border:1px solid #dce3ed;border-radius:17px;overflow:hidden;box-shadow:0 7px 20px #1f2d440b}.duo-lesson-video-card>header,.duo-dialogue-card>header,.duo-current-line-card>header,.duo-lesson-feedback>header{border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;gap:8px;min-height:47px;padding:9px 12px;display:flex}.duo-lesson-video-card header span,.duo-dialogue-card header span,.duo-current-line-card header span,.duo-lesson-feedback header span{color:#315b9d;font-size:8px;font-weight:900}.duo-lesson-video-card header strong,.duo-dialogue-card header strong,.duo-current-line-card header strong,.duo-lesson-feedback header strong{color:var(--muted);font-size:8px}.duo-lesson-video-card video{aspect-ratio:16/9;object-fit:contain;background:#111c2e;width:100%;display:block}.duo-video-empty{text-align:center;background:radial-gradient(circle at 50% 30%,#3b5278,#172741 72%);flex-direction:column;justify-content:center;align-items:center;min-height:165px;padding:18px;display:flex}.duo-video-empty>span{color:#21395e;background:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:14px;display:grid}.duo-video-empty strong{color:#fff;margin-top:9px;font-size:11px}.duo-video-empty p{color:#bdcce1;max-width:220px;margin:4px 0 0;font-size:8px;line-height:1.45}.duo-dialogue-lines{gap:3px;padding:6px;display:grid}.duo-dialogue-lines button{width:100%;min-height:43px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 8px;display:grid}.duo-dialogue-lines button:not(:disabled):hover{background:#f8faff;border-color:#d5e0f2}.duo-dialogue-lines button.active{background:#edf3ff;border-color:#b8caf0;box-shadow:inset 3px 0 #315b9d}.duo-dialogue-lines button:disabled{opacity:1}.duo-dialogue-lines b{color:#315b9d;background:#e6eefc;border-radius:8px;place-items:center;width:25px;height:25px;font-size:9px;display:grid}.duo-dialogue-lines span{font-size:11px;font-weight:800;line-height:1.35}.duo-dialogue-lines small{color:var(--muted);font-size:7px}.duo-current-script{text-align:center;background:linear-gradient(145deg,#f8faff,#edf3ff);flex-direction:column;justify-content:center;align-items:center;min-height:140px;padding:23px 18px;display:flex}.duo-current-script b{color:#fff;background:#315b9d;border-radius:10px;place-items:center;width:31px;height:31px;font-size:10px;display:grid}.duo-current-script h2{letter-spacing:-.04em;margin:11px 0 0;font-size:clamp(21px,2vw,29px);line-height:1.35}.duo-original-tts{background:#f8fafc;border:1px solid #d8e1ee;border-radius:12px;grid-template-columns:61px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:65px;margin:11px 12px 0;padding:10px 11px;display:grid}.duo-original-tts.is-ready{background:#f3faf5;border-color:#c7ddcf}.duo-original-tts audio{display:none}.duo-original-tts>div{flex-direction:column;gap:2px;min-width:0;display:flex}.duo-original-tts strong{font-size:9px}.duo-original-tts small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.duo-original-tts>button{color:#315b9d;background:#fff;border:1px solid #b9caed;border-radius:8px;min-height:33px;padding:0 8px;font-size:7px;font-weight:900}.duo-tts-wave{justify-content:center;align-items:center;gap:3px;height:30px;display:flex}.duo-tts-wave i{background:#7e9bcb;border-radius:999px;width:3px}.duo-tts-wave i:first-child,.duo-tts-wave i:nth-child(7){height:8px}.duo-tts-wave i:nth-child(2),.duo-tts-wave i:nth-child(6){height:15px}.duo-tts-wave i:nth-child(3),.duo-tts-wave i:nth-child(5){height:23px}.duo-tts-wave i:nth-child(4){background:#315b9d;height:29px}.duo-line-actions{grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px 5px;display:grid}.duo-line-actions button{color:#315b9d;background:#f4f7ff;border:1px solid #b9caed;border-radius:10px;min-height:43px;font-size:9px;font-weight:900}.duo-line-actions button:only-child{grid-column:1/-1}.duo-line-actions button:last-child:not(:only-child){color:#fff;background:#315b9d;border-color:#315b9d}.duo-line-actions button.is-recording{background:#bd4c51;border-color:#bd4c51}.duo-line-actions button:disabled{opacity:.45}.duo-no-fallback{color:#85662f;text-align:center;margin:2px 12px 11px;font-size:7px;line-height:1.4}.duo-lesson-feedback{margin-top:10px}.duo-lesson-feedback>div{grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.duo-lesson-feedback>div p{background:#f4f7fb;border-radius:10px;margin:0;padding:10px;font-size:9px;line-height:1.45}.duo-lesson-feedback>div b{color:#315b9d;margin-bottom:3px;font-size:8px;display:block}.duo-lesson-feedback>p{color:var(--muted);text-align:center;margin:0;padding:18px;font-size:9px}.duo-lesson-feedback>audio{width:calc(100% - 24px);margin:0 12px 12px}.duo-lesson-student-page{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:12px;width:min(1480px,100% - 36px);margin:0 auto;padding:18px 0 38px;display:grid}.duo-lesson-student-header{background:#fff;border:1px solid #dce3ed;border-radius:16px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 15px;display:flex}.duo-lesson-student-header>div:first-child{flex-direction:column;gap:2px;display:flex}.duo-lesson-student-header span{color:#315b9d;font-size:9px;font-weight:900}.duo-lesson-student-header strong{font-size:16px}.duo-live-status{color:#82652f;background:#fff7e9;border-radius:999px;align-items:center;padding:7px 10px;font-size:9px;font-weight:900;display:flex}.duo-live-status.is-live{color:#34734a;background:#edf8f1}.duo-lesson-live-card{background:#fff;border:1px solid #dce3ed;border-radius:17px;position:sticky;top:14px;overflow:hidden;box-shadow:0 8px 24px #1f2d440d}.duo-lesson-live-card .video-grid--compact{padding:10px}.duo-lesson-live-card .video-tile{border-radius:12px}.duo-live-controls{grid-template-columns:1fr 1fr;gap:6px;padding:9px 10px 10px;display:grid}.duo-live-controls button{min-height:42px;color:var(--muted);background:#f8fafc;border:1px solid #d4dde9;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:8px;font-weight:900;display:flex}.duo-live-controls button.is-active{color:#315b9d;background:#edf3ff;border-color:#b9caed}.duo-live-controls button:disabled{opacity:.45}.duo-live-controls svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.duo-lesson-student-page>.duo-lesson-panel .duo-lesson-heading{min-height:92px}.duo-lesson-student-page>.duo-lesson-panel .duo-lesson-body{grid-template-columns:minmax(220px,.8fr) minmax(270px,.95fr)}.duo-lesson-student-page>.duo-lesson-panel .duo-current-line-card{grid-column:1/-1}.duo-lesson-student-page>.duo-lesson-panel .duo-current-script{min-height:125px}@media (max-width:1180px){.duo-lesson-body{grid-template-columns:minmax(220px,.8fr) minmax(270px,1fr)}.duo-current-line-card{grid-column:1/-1}.duo-lesson-student-page{grid-template-columns:250px minmax(0,1fr)}.duo-lesson-student-page>.duo-lesson-panel .duo-lesson-heading{flex-direction:column;align-items:stretch}.duo-lesson-student-page .duo-package-status{width:100%;min-width:0}}@media (max-width:760px){.teacher-console--duo-lesson{display:block}.duo-lesson-session-actions{flex-wrap:wrap;align-items:stretch}.duo-lesson-session-actions>div{flex-basis:100%}.duo-lesson-session-actions button{flex:1}.duo-lesson-heading{flex-direction:column;align-items:stretch}.duo-package-status{width:100%;min-width:0}.duo-lesson-body,.duo-lesson-student-page>.duo-lesson-panel .duo-lesson-body{grid-template-columns:1fr}.duo-current-line-card,.duo-lesson-student-page>.duo-lesson-panel .duo-current-line-card{grid-column:auto}.duo-lesson-student-page{width:100%;padding:0 10px 26px;display:block}.duo-lesson-student-header{border-width:0 0 1px;border-radius:0;margin:0 -10px 10px}.duo-live-status{border-radius:10px;max-width:150px;line-height:1.3}.duo-lesson-live-card{margin-bottom:10px;position:static}.duo-lesson-feedback>div{grid-template-columns:1fr}}
