/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#17233c;--muted:#5b667b;--navy:#17244c;--deep:#101a3a;--accent:#4057d6;--pale:#eef1ff;--canvas:#f5f6fa;--line:#dfe3ec;--good:#168766;--danger:#cf3e4f}*{box-sizing:border-box}html{background:var(--canvas);color:var(--ink)}body{background:radial-gradient(circle at 8% 7%,#4c60cf0f,transparent 25rem),var(--canvas);font-family:var(--font-geist-sans),"Hiragino Sans","Yu Gothic UI","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.app-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border-bottom:1px solid #d9deea;grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:0 34px;display:grid;position:sticky;top:0}.brand{text-align:left;background:0 0;border:0;justify-self:start;align-items:center;gap:11px;padding:0;display:flex}.brand-mark{background:var(--navy);color:#fff;border-radius:13px;place-items:center;width:42px;height:42px;font-family:serif;font-size:21px;font-weight:700;display:grid;box-shadow:0 8px 20px #17244c2e}.brand>span:last-child{flex-direction:column;display:flex}.brand strong{color:var(--navy);letter-spacing:.11em;font-size:17px;line-height:1}.brand small{color:var(--muted);margin-top:2px;font-size:10px}.app-header nav{background:#f1f3f8;border-radius:13px;gap:5px;padding:5px;display:flex}.app-header nav button{color:#6e7789;background:0 0;border:0;border-radius:10px;min-width:94px;padding:9px 14px;font-size:12px;font-weight:750}.app-header nav button.active{color:var(--navy);background:#fff;box-shadow:0 3px 12px #17233c17}.header-status{color:var(--muted);justify-self:end;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.header-status b{background:#f5f6f9;border:1px solid #dce0e9;border-radius:99px;margin-left:7px;padding:5px 9px;font-size:9px}.online-dot{background:var(--good);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #1687661a}.eyebrow{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;font-size:10px;font-weight:850}.eyebrow.light{color:#aebafa}.student-shell{background:#fff;border:1px solid #dce0e9;border-radius:28px;grid-template-columns:minmax(270px,330px) 1fr;width:min(1260px,100% - 48px);min-height:730px;margin:34px auto 50px;display:grid;overflow:hidden;box-shadow:0 16px 50px #1c274a17}.exam-sidebar{background:radial-gradient(circle at 18% 14%,#6f85ff38,transparent 19rem),linear-gradient(155deg,var(--navy),var(--deep));color:#fff;flex-direction:column;padding:42px 36px 30px;display:flex}.exam-sidebar h2{margin:0;font-size:32px;line-height:1.35}.exam-sidebar>div:first-child>p:last-child{color:#c8cee8;max-width:230px;margin:16px 0 0;font-size:12px;line-height:1.8}.exam-sidebar ol{flex-direction:column;flex:1;margin:38px 0 30px;padding:0;list-style:none;display:flex}.exam-sidebar li{color:#7f8aa9;align-items:center;gap:14px;min-height:58px;display:flex;position:relative}.exam-sidebar li:not(:last-child):after{content:"";background:#ffffff21;width:1px;position:absolute;top:39px;bottom:-10px;left:15px}.exam-sidebar li span{z-index:1;background:#1c2851;border:1px solid #ffffff29;border-radius:50%;place-items:center;width:31px;height:31px;font-size:10px;font-weight:800;display:grid}.exam-sidebar li em{font-size:11px;font-style:normal;font-weight:650}.exam-sidebar li.current{color:#fff}.exam-sidebar li.current span{background:#5066e4;border-color:#8294ff;box-shadow:0 0 0 5px #5e73ed26}.sidebar-note{background:#ffffff0e;border:1px solid #ffffff1c;border-radius:14px;padding:15px 17px}.sidebar-note strong{color:#adb8ee;letter-spacing:.12em;font-size:9px}.sidebar-note p{color:#aeb6d2;margin:5px 0 0;font-size:9px;line-height:1.6}.student-main{background:linear-gradient(#ffffffdb,#ffffffeb),radial-gradient(circle at 88% 7%,#e6eaff,#0000 22rem);place-items:center;min-width:0;padding:clamp(38px,6vw,82px);display:grid}.login-card{width:min(100%,580px)}.title-row{align-items:flex-start;gap:18px;margin-bottom:30px;display:flex}.title-row>span,.section-title>span{background:var(--pale);width:38px;height:38px;color:var(--accent);border-radius:12px;flex:none;place-items:center;font-size:10px;font-weight:850;display:grid}.title-row h1{letter-spacing:-.04em;margin:0;font-size:clamp(27px,3.2vw,37px);line-height:1.35}.title-row div>p:last-child{color:var(--muted);margin:8px 0 0;font-size:13px}.login-form{gap:16px;margin-left:56px;display:grid}.login-form label{gap:7px;display:grid}.login-form label span{font-size:11px;font-weight:750}.login-form input,.login-form select{background:#fff;border:1px solid #cbd1de;border-radius:11px;outline:none;width:100%;min-height:47px;padding:0 14px}.login-form input:focus,.login-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4057d617}.login-form>button,.page-heading>button{background:var(--accent);color:#fff;border:0;border-radius:11px;justify-content:center;align-items:center;gap:20px;min-height:47px;font-size:12px;font-weight:800;display:flex;box-shadow:0 8px 20px #4057d633}.teacher-shell,.design-shell{width:min(1420px,100% - 48px);margin:42px auto 70px}.page-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:23px;display:flex}.page-heading h1{letter-spacing:-.04em;margin:0;font-size:40px}.page-heading p:last-child{color:var(--muted);margin:6px 0 0;font-size:12px}.page-heading>button{min-height:40px;padding:0 18px}.prototype-strip{background:var(--pale);color:#505b88;border:1px solid #d5daf8;border-radius:11px;gap:12px;margin-bottom:17px;padding:12px 16px;font-size:10px;display:flex}.prototype-strip strong{color:var(--accent)}.teacher-grid{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:310px 1fr;min-height:620px;display:grid;overflow:hidden;box-shadow:0 16px 50px #1c274a14}.teacher-grid>aside{border-right:1px solid var(--line);background:#fafbfc}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:92px;padding:20px;display:flex}.panel-heading h2{margin:0;font-size:18px}.panel-heading span{color:#667084;border:1px solid #dce0e9;border-radius:99px;padding:5px 9px;font-size:9px}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:25px;display:flex}.empty b{background:var(--pale);width:54px;height:54px;color:var(--accent);border-radius:16px;place-items:center;margin-bottom:15px;font-family:serif;font-size:21px;display:grid}.empty strong{font-size:12px}.empty p{max-width:280px;color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.6}.empty.large{min-height:620px}.design-shell{gap:18px;display:grid}.design-hero{background:radial-gradient(circle at 90% 5%,#697cef38,transparent 24rem),linear-gradient(145deg,var(--navy),var(--deep));color:#fff;border-radius:26px;grid-template-columns:1.5fr .75fr;align-items:center;gap:80px;min-height:410px;padding:70px;display:grid;overflow:hidden;box-shadow:0 16px 50px #1c274a1a}.design-hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(38px,5vw,60px);font-weight:680;line-height:1.25}.design-hero>div:first-child>p:last-child{color:#c5cce6;max-width:650px;margin:20px 0 0;font-size:13px;line-height:1.9}.stack-card{background:#ffffff13;border:1px solid #ffffff26;border-radius:20px;flex-direction:column;gap:8px;padding:23px;display:flex}.stack-card small{color:#aeb9eb;letter-spacing:.13em;margin-bottom:5px;font-size:8px;font-weight:800}.stack-card>strong,.stack-card b{text-align:center;background:#ffffff12;border:1px solid #ffffff21;border-radius:10px;padding:12px;font-size:10px}.stack-card i{color:#8494dc;text-align:center;font-size:10px;font-style:normal}.stack-card>div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.design-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:40px;box-shadow:0 10px 35px #1c274a0e}.section-title{gap:14px;margin-bottom:24px;display:flex}.section-title h2{letter-spacing:-.035em;margin:0;font-size:23px}.flow{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.flow>div{border:1px solid var(--line);background:#fafbfc;border-radius:13px;min-height:100px;padding:15px}.flow span{color:var(--accent);font-size:8px;font-weight:850}.flow strong{margin-top:22px;font-size:10px;display:block}.design-columns{grid-template-columns:1fr 1fr;gap:18px;display:grid}.entities>div{border-bottom:1px solid var(--line);grid-template-columns:150px 1fr;align-items:center;gap:15px;min-height:47px;display:grid}.entities code{color:var(--accent);font-size:9px;font-weight:750}.entities p{color:var(--muted);margin:0;font-size:9px}.storage{gap:9px;margin:0;padding:0;list-style:none;display:grid}.storage li{border:1px solid var(--line);background:#fafbfc;border-radius:11px;align-items:center;gap:12px;padding:11px;display:flex}.storage li>span{background:var(--pale);width:29px;height:29px;color:var(--accent);border-radius:9px;place-items:center;font-size:9px;font-weight:850;display:grid}.storage strong{font-size:10px;display:block}.storage p{color:var(--muted);margin:2px 0 0;font-size:8px}.limit-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.limit-grid article{background:snow;border:1px solid #eadcdf;border-radius:18px;padding:26px}.limit-grid span{color:var(--danger);letter-spacing:.08em;font-size:8px;font-weight:850}.limit-grid h3{margin:16px 0 8px;font-size:13px}.limit-grid p{color:#756269;margin:0;font-size:9px;line-height:1.7}footer{border-top:1px solid var(--line);color:#929aa8;grid-template-columns:1fr auto 1fr;align-items:center;min-height:70px;padding:0 34px;font-size:8px;display:grid}footer p{text-align:center;margin:0}footer span:last-child{justify-self:end}@media (width<=820px){.app-header{grid-template-columns:1fr;min-height:68px;padding:0 17px;position:relative}.app-header nav{z-index:30;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 12px 35px #17233c33}.header-status{display:none}.student-shell{border:0;border-radius:0;width:100%;min-height:0;margin:0 0 80px;display:block}.exam-sidebar{padding:20px 17px;display:block}.exam-sidebar>div:first-child>p,.sidebar-note{display:none}.exam-sidebar h2{font-size:17px}.exam-sidebar h2 br{display:none}.exam-sidebar ol{flex-direction:row;justify-content:space-between;margin:17px 0 0}.exam-sidebar li{min-height:auto;display:block}.exam-sidebar li:not(:last-child):after{width:calc(100% - 4px);height:1px;inset:15px -55% auto calc(50% + 18px)}.exam-sidebar li span{width:28px;height:28px}.exam-sidebar li em{display:none}.student-main{min-height:calc(100vh - 190px);padding:35px 18px 60px}.login-form{margin-left:0}.teacher-shell,.design-shell{width:calc(100% - 28px);margin:28px auto 90px}.teacher-grid{display:block}.teacher-grid>aside{border-right:0;border-bottom:1px solid var(--line)}.design-hero{grid-template-columns:1fr;padding:40px 28px}.design-columns{grid-template-columns:1fr}.flow{grid-template-columns:repeat(4,1fr)}.limit-grid{grid-template-columns:1fr}footer{display:none}}@media (width<=520px){.brand small{display:none}.title-row h1{font-size:25px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading h1{font-size:30px}.design-hero h1{font-size:35px}.stack-card{display:none}.design-card{padding:25px 18px}.flow{grid-template-columns:repeat(2,1fr)}.entities>div{grid-template-columns:1fr;gap:4px;padding:10px 0}.prototype-strip{flex-direction:column;align-items:flex-start}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #4057d640}button:disabled{cursor:not-allowed;opacity:.45}.network{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:10px;font-weight:750;display:inline-flex}.network i{background:var(--good);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #1687661a}.network.offline i{background:var(--danger);box-shadow:0 0 0 4px #cf3e4f1a}.pill{color:#5f687a;background:#f5f6f9;border:1px solid #dce0e9;border-radius:99px;width:max-content;max-width:100%;padding:5px 9px;font-size:9px;font-weight:800;line-height:1.25;display:inline-flex}.pill.good{color:var(--good);background:#e9f7f1;border-color:#c6e8db}.pill.yellow{color:#ae680f;background:#fff4dd;border-color:#f0d7a7}.pill.red{color:var(--danger);background:#fff0f1;border-color:#f1c5ca}.header-status{gap:12px}.header-status>.pill{margin-left:4px}.stage-card{width:min(100%,720px)}.notice-grid{grid-template-columns:repeat(2,1fr);gap:11px;margin:0 0 22px 56px;display:grid}.notice-grid article{border:1px solid var(--line);background:#fafbfc;border-radius:13px;padding:17px}.notice-grid strong{font-size:11px}.notice-grid p{color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.65}.confirm-check{background:var(--pale);color:#46517b;cursor:pointer;border-radius:11px;align-items:center;gap:10px;margin-left:56px;padding:13px 15px;font-size:10px;font-weight:700;display:flex}.confirm-check input,.flags input{width:16px;height:16px;accent-color:var(--accent)}.button-row{justify-content:space-between;gap:10px;margin-top:28px;display:flex}.primary,.secondary,.danger,.danger-outline{border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:0 17px;font-size:10px;font-weight:800;display:inline-flex}.primary{border:1px solid var(--accent);background:var(--accent);color:#fff;box-shadow:0 7px 18px #4057d62e}.secondary{color:#586276;background:#fff;border:1px solid #cbd1de}.danger{border:1px solid var(--danger);background:var(--danger);color:#fff}.danger-outline{color:#a83b48;background:#fff;border:1px solid #e6b9bf}.mic-console{border:1px solid var(--line);background:#fafbfc;border-radius:16px;align-items:center;gap:20px;margin-left:56px;padding:22px;display:flex}.mic-console.active{background:#f8f9ff;border-color:#bec8fc}.mic-console>b{background:var(--pale);width:52px;height:52px;color:var(--accent);border-radius:16px;flex:none;place-items:center;display:grid}.mic-console>div{flex:1;min-width:0}.mic-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.mic-title strong{font-size:11px}.mic-title span{color:var(--accent);font-size:9px;font-weight:800}.wave{justify-content:center;align-items:center;gap:3px;height:62px;display:flex;overflow:hidden}.wave span{background:#bcc4d5;border-radius:99px;width:3px;min-height:3px;transition:height 80ms linear}.wave.live span{background:linear-gradient(#7d91f5,var(--accent))}.level,.timer-track{background:#e2e5ec;border-radius:99px;height:5px;overflow:hidden}.level span,.timer-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.error-banner{color:#a62e3d;background:#fff0f1;border:1px solid #f2c5cb;border-radius:10px;margin:14px 0 0 56px;padding:12px 14px;font-size:10px;line-height:1.6}.center-card{text-align:center;width:min(100%,590px)}.center-card h1{letter-spacing:-.04em;margin:0;font-size:clamp(27px,3.3vw,38px);line-height:1.35}.center-card>p:not(.eyebrow){max-width:530px;color:var(--muted);margin:9px auto 0;font-size:12px;line-height:1.75}.ready-mark,.done-mark,.error-icon{border-radius:50%;place-items:center;width:86px;height:86px;margin:0 auto 24px;font-size:12px;font-weight:850;display:grid}.ready-mark{background:var(--pale);color:var(--accent);border:1px solid #ccd4ff;box-shadow:0 0 0 9px #eef1ffa6}.done-mark{color:var(--good);background:#e9f7f1;font-size:34px;box-shadow:0 0 0 9px #e9f7f1a6}.error-icon{width:70px;height:70px;color:var(--danger);background:#fff0f1;font-size:28px}.center-card>.pill{margin:0 auto 13px}.summary{border:1px solid var(--line);text-align:left;background:#fafbfc;border-radius:13px;grid-template-columns:auto 1fr;gap:10px 24px;width:min(100%,410px);margin:26px auto;padding:19px 23px;display:grid}.summary span{color:var(--muted);font-size:9px}.summary strong{justify-self:end;font-size:10px}.good-text{color:var(--good)}.start-button{background:var(--accent);color:#fff;border:0;border-radius:13px;justify-content:center;align-items:center;min-width:260px;min-height:55px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 13px 28px #4057d63d}.center-card>small{color:#9198a5;margin-top:14px;font-size:8px;display:block}.support{text-align:left;background:#fff0f1;border:1px solid #efc7cc;border-radius:12px;max-width:460px;margin:24px auto 0;padding:17px}.support strong{color:#9d2d3b;font-size:10px}.support p{color:#89535a;margin:5px 0 0;font-size:9px;line-height:1.6}.exam-room{border:1px solid var(--line);background:#fff;border-radius:21px;width:min(100%,780px);min-height:560px;overflow:hidden;box-shadow:0 18px 55px #1c274a1c}.exam-room>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:76px;padding:0 25px;display:flex}.exam-room>header .eyebrow{margin-bottom:2px}.exam-room>header strong{font-size:11px}.phase{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:480px;padding:42px;display:flex}.phase h1{letter-spacing:-.04em;margin:17px 0 7px;font-size:clamp(29px,3.7vw,42px)}.phase>p{max-width:500px;color:var(--muted);margin:0;font-size:11px;line-height:1.7}.phase>small{color:#7d8595;background:#f0f2f6;border-radius:7px;margin-top:24px;padding:6px 10px;font-size:8px}.sound-icon{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:94px;height:94px;margin-bottom:24px;font-size:25px;display:grid;box-shadow:0 0 0 16px #4057d612,0 0 0 32px #4057d609}.record-label{color:var(--danger);letter-spacing:.08em;align-items:center;gap:8px;font-size:10px;font-weight:850;display:flex}.record-label i,.audio-card>div:first-child strong i{background:var(--danger);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #cf3e4f1a}.countdown{color:var(--navy);letter-spacing:-.08em;margin:12px 0 -3px;font-size:clamp(86px,12vw,128px);font-weight:650;line-height:1}.wide-wave{width:min(100%,560px);margin:25px 0 11px}.wide-wave .wave{height:72px}.wide-wave .wave span{width:4px}.timer-track{width:min(100%,560px);height:7px}.timer-track span{background:linear-gradient(90deg,var(--danger),#ef7583)}.timer-meta{color:#8a92a2;justify-content:space-between;width:min(100%,560px);margin-top:8px;font-size:8px;font-weight:700;display:flex}.spinner{border:5px solid #e4e7ee;border-top-color:var(--accent);border-radius:50%;width:60px;height:60px;margin-bottom:25px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.phase>.primary{margin-top:22px}.teacher-actions{gap:8px;display:flex}.teacher-actions .primary,.teacher-actions .secondary{min-width:78px}.answer-list{max-height:670px;padding:8px;overflow:auto}.answer-list>button{text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;width:100%;margin-bottom:4px;padding:11px;display:grid}.answer-list>button:hover{background:#f2f4f8}.answer-list>button.selected{background:var(--pale);border-color:#d2d8fb}.answer-list>button>b{width:38px;height:38px;color:var(--accent);background:#fff;border-radius:11px;place-items:center;font-size:11px;display:grid;box-shadow:0 3px 10px #17233c14}.answer-list>button>span{flex-direction:column;gap:2px;min-width:0;display:flex}.answer-list>button strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.answer-list>button small{color:#7b8495;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.answer-list>button>i{color:#a96510;background:#fff4dd;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;font-style:normal;font-weight:800;display:grid}.review{min-width:0;padding:clamp(23px,4vw,40px)}.review-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:21px;display:flex}.review-heading h2{letter-spacing:-.035em;margin:0;font-size:26px}.review-heading p:last-child{color:var(--muted);margin:3px 0 0;font-size:9px}.warning-row{flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:58%;display:flex}.question-summary{border:1px solid var(--line);background:#fafbfc;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.question-summary span,.question-summary small{color:#7b8494;font-size:8px;font-weight:700}.question-summary strong{font-size:11px}.audio-card{border:1px solid var(--line);border-radius:13px;margin-top:13px;padding:19px}.audio-card>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.audio-card>div:first-child strong{align-items:center;gap:9px;font-size:9px;display:flex}.audio-card>div:first-child small{color:#8b93a2;font-size:8px}.audio-card .wave{height:78px;margin:6px 0}.audio-card .wave span{background:linear-gradient(#8798ee,#5368dc);width:4px}.audio-player,.question-preview-audio{width:100%;height:36px}.metrics{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:13px;display:grid}.metrics article{border:1px solid var(--line);background:#fafbfc;border-radius:11px;flex-direction:column;justify-content:center;min-height:104px;padding:14px;display:flex}.metrics span{color:#747d8f;font-size:8px;font-weight:750}.metrics strong{color:var(--navy);letter-spacing:-.04em;margin:6px 0 3px;font-size:20px}.metrics small{color:#9ba2af;font-size:7px}.events{border:1px solid var(--line);background:#fafbfc;border-radius:11px;margin-top:13px}.events summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:43px;padding:0 14px;font-size:9px;font-weight:750;list-style:none;display:flex}.events summary::-webkit-details-marker{display:none}.events summary span{color:#8a92a1;font-size:8px}.events>div{padding:0 14px 10px}.events p{border-top:1px solid var(--line);color:#596376;grid-template-columns:1fr auto 50px;gap:10px;margin:0;padding:8px 0;font-size:8px;display:grid}.events time,.events em{color:#8b93a2;font-style:normal}.score-card{border:1px solid var(--line);background:#fafbfc;border-radius:13px;margin-top:13px;padding:18px}.score-card>.panel-heading{border:0;min-height:auto;padding:0}.score-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;display:grid}.score-grid label,.comment,.settings-grid label{gap:6px;display:grid}.score-grid label>span,.comment>span,.settings-grid label>span{font-size:9px;font-weight:750}.score-grid label>div{align-items:center;gap:9px;display:flex}.score-grid input{max-width:100px}.score-grid input,.score-grid select,.settings-grid input,.settings-grid select{background:#fff;border:1px solid #cbd1de;border-radius:9px;width:100%;min-height:40px;padding:0 12px}.score-grid b{color:#717a8b;font-size:10px}.comment{margin-top:12px}.comment textarea{resize:vertical;width:100%;font:inherit;border:1px solid #cbd1de;border-radius:9px;padding:11px 12px;font-size:10px;line-height:1.5}.flags{color:#586276;align-items:center;gap:16px;margin-top:11px;font-size:8px;display:flex}.flags label{align-items:center;gap:5px;font-weight:700;display:flex}.flags span{color:#979eab;margin-left:auto}.settings-card{border:1px solid var(--line);background:#fff;border-radius:17px;margin-top:17px;padding:23px;box-shadow:0 12px 38px #1c274a0f}.settings-card>.panel-heading{border:0;min-height:auto;padding:0}.settings-grid{grid-template-columns:2fr repeat(3,1fr);gap:13px;margin-top:18px;display:grid}.settings-grid .wide{grid-column:1/-1}.settings-grid .file{grid-column:span 1}.settings-grid input,.settings-grid select{font-size:9px}.settings-grid input[type=file]{padding:7px;font-size:8px}.settings-grid .file>b{color:#7c8595;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.question-preview-audio{max-width:520px;margin-top:13px}.settings-footer{min-height:44px;color:var(--good);justify-content:space-between;align-items:flex-end;gap:20px;margin-top:12px;font-size:9px;display:flex}.danger-zone{background:snow;border:1px solid #f0d4d7;border-radius:15px;justify-content:space-between;align-items:center;gap:22px;margin-top:17px;padding:18px 22px;display:flex}.danger-zone>div:first-child strong{color:#8c3842;font-size:10px}.danger-zone p{color:#9b7479;margin:3px 0 0;font-size:8px}.danger-zone>div:last-child{gap:8px;display:flex}.roadmap{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:repeat(4,1fr);gap:9px;padding:38px;display:grid}.roadmap article{border:1px solid var(--line);background:#fafbfc;border-radius:13px;padding:19px}.roadmap article.current{background:var(--pale);border-color:#cbd4ff}.roadmap span{color:var(--accent);font-size:8px;font-weight:850}.roadmap h3{margin:15px 0 6px;font-size:12px}.roadmap p{color:var(--muted);margin:0;font-size:9px;line-height:1.65}.loader{min-height:600px;color:var(--muted);align-content:center;place-items:center;gap:15px;font-size:10px;display:grid}.loader i{border:4px solid #e1e4eb;border-top-color:var(--accent);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}@media (width<=1050px){.metrics{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:repeat(3,1fr)}.settings-grid .file{grid-column:1/-1}.roadmap{grid-template-columns:repeat(2,1fr)}}@media (width<=820px){.notice-grid{grid-template-columns:1fr;margin-left:0}.confirm-check,.mic-console,.error-banner{margin-left:0}.teacher-grid{display:block}.answer-list{max-height:none;display:flex;overflow-x:auto}.answer-list>button{min-width:235px}.review{padding:21px 14px}.question-summary{grid-template-columns:1fr;gap:4px}.settings-grid{grid-template-columns:1fr 1fr}.settings-grid .file{grid-column:1/-1}.roadmap{padding:25px}.phase{min-height:460px;padding:30px 18px}.exam-room{border-radius:16px}}@media (width<=520px){.notice-grid article{padding:14px}.mic-console{flex-direction:column;align-items:stretch}.start-button{width:100%;min-width:0}.review-heading{flex-direction:column}.warning-row{justify-content:flex-start;max-width:none}.score-grid{grid-template-columns:1fr}.flags{flex-direction:column;align-items:flex-start;gap:8px}.flags span{margin-left:0}.settings-grid{grid-template-columns:1fr}.settings-grid .file{grid-column:auto}.settings-footer,.danger-zone{flex-direction:column;align-items:stretch}.roadmap{grid-template-columns:1fr}.metrics strong{font-size:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.production-shell{width:min(1240px,100% - 48px);margin:38px auto 70px}.production-shell .page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.production-shell h1{letter-spacing:-.045em;margin:0;font-size:36px}.production-shell .page-heading p:last-child{color:var(--muted);font-size:11px}.type-tabs{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px;display:grid}.type-tabs button{border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;min-height:64px;padding:0 18px;display:flex}.type-tabs button span{color:#778092;background:#f0f2f6;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:800}.type-tabs button.active{background:var(--pale);border-color:#aebafb;box-shadow:0 8px 20px #4057d614}.type-tabs button.active span{background:var(--accent);color:#fff}.question-workspace{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:370px 1fr;min-height:660px;display:grid;overflow:hidden;box-shadow:0 15px 45px #1c274a12}.question-list{border-right:1px solid var(--line);background:#fafbfc;padding:18px}.question-list>div:first-child{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.question-list .primary{padding:0 12px}.question-list article{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-bottom:7px;padding:13px;display:grid}.question-list article.selected{background:var(--pale);border-color:#b8c3fc}.question-list article>span{color:var(--accent);font-size:9px;font-weight:850}.question-list article>div{flex-direction:column;gap:4px;min-width:0;display:flex}.question-list article strong,.question-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.question-list article small{color:var(--muted);font-size:8px}.question-list article>button{color:#a24a55;background:0 0;border:0;font-size:8px}.empty,.editor-empty{color:var(--muted);text-align:center;font-size:10px}.empty{padding:60px 10px}.question-editor{padding:34px 40px}.editor-empty{place-content:center;gap:7px;height:100%;display:grid}.editor-empty b{color:var(--navy);font-size:16px}.question-editor h2{margin:0 0 25px;font-size:25px}.question-editor form{max-width:730px}.field{gap:7px;margin-bottom:15px;display:grid}.field>span,.upload-box>span{font-size:9px;font-weight:800}.field input,.field select,.field textarea{background:#fff;border:1px solid #cbd1de;border-radius:9px;width:100%;min-height:42px;padding:10px 12px}.field textarea{resize:vertical;min-height:90px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.upload-box{background:#fafbfc;border:1px dashed #bbc3d2;border-radius:12px;gap:8px;margin-bottom:15px;padding:16px;display:grid}.upload-box input{font-size:9px}.upload-box small{color:var(--muted);font-size:8px}.upload-box audio{width:100%;height:34px}.upload-box img{object-fit:cover;border-radius:10px;max-width:260px;max-height:190px}.image-upload{background:#f8f9ff;border-color:#aab7ef}.editor-actions{justify-content:space-between;align-items:center;margin-top:22px;display:flex}.editor-actions span{color:var(--good);font-size:9px}.answer-summary{border:1px solid var(--line);background:#fff;border-radius:17px;margin-top:20px;padding:24px}.answer-summary h2{font-size:17px;display:inline}.answer-summary>span{color:var(--muted);margin-left:10px;font-size:9px}.answer-summary article{border-top:1px solid var(--line);grid-template-columns:130px 1fr 280px;align-items:center;gap:12px;padding:11px 0;font-size:9px;display:grid}.answer-summary article:first-of-type{margin-top:16px}.answer-summary audio{width:100%;height:34px}.question-image{object-fit:contain;border-radius:16px;width:min(100%,480px);max-height:245px;margin-bottom:15px;box-shadow:0 8px 24px #17233c1f}.topic{background:var(--pale);color:var(--navy);border-radius:14px;padding:18px 28px;margin-bottom:26px!important}.student-empty{text-align:center;place-content:center;min-height:70vh;display:grid}.student-empty h1{margin:0}.student-empty p{color:var(--muted)}@media (width<=820px){.production-shell{width:calc(100% - 28px);margin-top:24px}.type-tabs,.question-workspace{grid-template-columns:1fr}.question-list{border-right:0;border-bottom:1px solid var(--line)}.question-editor{padding:26px 18px}.answer-summary article{grid-template-columns:1fr}.production-shell .page-heading{flex-direction:column;align-items:flex-start;gap:13px}}@media (width<=520px){.production-shell h1{font-size:28px}.form-grid{grid-template-columns:1fr}.question-list article{grid-template-columns:auto 1fr}.question-list article>button{grid-column:2}.question-image{max-height:210px}}.zh{color:#7b8496;letter-spacing:0;font-size:.78em;font-weight:500}.zh.block{margin-top:5px;display:block}.exam-sidebar .zh{color:#99a5c9;display:block}.login-form label>.zh{margin-left:6px;display:inline}.login-form .primary small{font-size:9px}.start-button{flex-direction:column;gap:2px}.start-button .zh{color:#e5e8ff}.teacher-mode-tabs{background:#e9ecf3;border-radius:12px;gap:5px;width:max-content;margin-bottom:16px;padding:5px;display:flex}.teacher-mode-tabs button{color:#687286;background:0 0;border:0;border-radius:9px;min-width:120px;padding:9px 18px;font-size:10px;font-weight:800}.teacher-mode-tabs button.active{color:var(--navy);background:#fff;box-shadow:0 3px 12px #17233c17}.results-console{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 15px 45px #1c274a12}.result-tools{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 25px;display:flex}.result-tools h2{margin:0;font-size:22px}.result-filters{gap:8px;display:flex}.result-filters input,.result-filters select{background:#fff;border:1px solid #cbd1de;border-radius:9px;min-height:40px;padding:0 12px;font-size:9px}.results-layout{grid-template-columns:285px 1fr;min-height:680px;display:grid}.student-results-list{border-right:1px solid var(--line);background:#fafbfc;padding:10px}.student-results-list>button{text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;flex-direction:column;gap:3px;width:100%;margin-bottom:5px;padding:13px 14px;display:flex}.student-results-list>button:hover{background:#f0f2f6}.student-results-list>button.selected{background:var(--pale);border-color:#c3ccfb}.student-results-list span{color:#626d80;font-size:8px}.student-results-list small{color:#9299a6;font-size:7px}.student-result-detail{min-width:0;padding:27px}.student-result-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;margin-bottom:20px;padding-bottom:19px;display:flex}.student-result-header h2{margin:0;font-size:28px}.student-result-header>div:first-child>span{color:var(--muted);font-size:9px}.student-result-header>div:last-child{text-align:right;flex-direction:column;display:flex}.student-result-header>div:last-child strong{color:var(--accent);font-size:26px}.student-result-header>div:last-child small{color:var(--muted);font-size:8px}.student-answer-cards{gap:14px;display:grid}.grade-card{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden}.grade-card>header{background:#fafbfc;justify-content:space-between;align-items:flex-start;gap:20px;padding:16px 18px;display:flex}.grade-card>header span{color:var(--accent);font-size:8px;font-weight:850}.grade-card h3{margin:5px 0 0;font-size:12px}.grade-card time{color:var(--muted);white-space:nowrap;font-size:8px}.grade-audio{grid-template-columns:270px 1fr;align-items:center;gap:15px;padding:13px 18px;display:grid}.grade-audio audio{width:100%;height:34px}.mini-wave{justify-content:center;align-items:center;gap:2px;height:42px;display:flex;overflow:hidden}.mini-wave i{background:#7387ec;border-radius:99px;width:3px}.metric-row{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.metric-row span{color:var(--muted);background:#fff;padding:10px 14px;font-size:8px}.metric-row b{color:var(--navy);margin-top:3px;font-size:11px;display:block}.grade-form{background:#fafbfc;padding:16px 18px}.score-inputs{grid-template-columns:90px 10px 90px minmax(160px,1fr);align-items:end;gap:9px;display:grid}.score-inputs label,.grade-comment{color:#596376;gap:5px;font-size:8px;font-weight:750;display:grid}.score-inputs input,.score-inputs select,.grade-comment textarea{background:#fff;border:1px solid #cbd1de;border-radius:8px;width:100%}.score-inputs input,.score-inputs select{min-height:38px;padding:0 10px}.grade-comment{margin-top:11px}.grade-comment textarea{resize:vertical;font:inherit;padding:9px 10px}.grade-footer{color:#596376;align-items:center;gap:14px;margin-top:11px;font-size:8px;display:flex}.grade-footer label{align-items:center;gap:5px;display:flex}.grade-footer input{accent-color:var(--accent)}.grade-footer span{margin-left:auto}.grade-footer span.saved{color:var(--good)}.grade-footer span.error{color:var(--danger)}.missing-answer{background:#fafbfc;border:1px dashed #cbd1de;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px;display:grid}.missing-answer span{color:var(--accent);font-size:8px;font-weight:800}.missing-answer em{color:var(--danger);font-size:8px;font-style:normal;font-weight:800}@media (width<=900px){.results-layout{grid-template-columns:1fr}.student-results-list{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.student-results-list>button{min-width:210px}.grade-audio{grid-template-columns:1fr}.result-tools{flex-direction:column;align-items:flex-start}.result-filters{width:100%}.result-filters input{flex:1;min-width:0}}@media (width<=600px){.results-console{border-radius:14px}.result-tools,.student-result-detail{padding:18px 13px}.result-filters{flex-direction:column}.result-filters input,.result-filters select{width:100%}.student-result-header{flex-direction:column;align-items:flex-start;gap:12px}.student-result-header>div:last-child{text-align:left}.score-inputs{grid-template-columns:1fr 10px 1fr}.score-inputs label:last-child{grid-column:1/-1}.grade-footer{flex-wrap:wrap;align-items:flex-start}.grade-footer span{margin-left:0}.grade-footer .primary{margin-left:auto}.metric-row{grid-template-columns:1fr}.teacher-mode-tabs{width:100%}.teacher-mode-tabs button{flex:1}.exam-sidebar>p>.zh{display:none}}.type-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.type-tabs button{text-align:left;gap:8px;padding:0 13px}.field small{color:var(--muted);font-size:8px;line-height:1.5}.settings-console{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 15px 45px #1c274a12}.settings-console>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.settings-console>header h2{margin:2px 0 0;font-size:25px}.settings-section{border-bottom:1px solid var(--line);padding:25px 0}.settings-section h3{margin:0 0 16px;font-size:15px}.settings-form-grid{grid-template-columns:2fr 1fr 1fr;gap:13px;display:grid}.settings-form-grid .wide{grid-column:auto}.settings-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.settings-title-row h3{margin-bottom:4px}.settings-title-row p{color:var(--muted);margin:0;font-size:9px}.settings-title-row>span{color:#667085;background:#eef0f6;border-radius:99px;padding:6px 10px;font-size:8px;font-weight:800}.switch-row{border:1px solid var(--line);background:#fafbfc;border-radius:12px;align-items:flex-start;gap:12px;margin-top:10px;padding:14px 16px;display:flex}.switch-row>input{width:18px;height:18px;accent-color:var(--accent)}.switch-row>span{flex-direction:column;gap:4px;display:flex}.switch-row small{color:var(--muted);font-size:8px;line-height:1.5}.model-field{max-width:420px;margin-top:16px}.ai-connection{border-radius:99px;padding:7px 11px;font-size:8px;font-weight:850}.ai-connection.ready{color:#22724c;background:#e4f6ed}.ai-connection.off{color:#9b640e;background:#fff2d9}.ai-key-panel{background:#f7f8ff;border:1px solid #d7dcf8;border-radius:13px;grid-template-columns:minmax(220px,1fr) minmax(240px,1.3fr) auto;align-items:end;gap:13px;margin:16px 0;padding:16px;display:grid}.ai-key-panel.connected{background:#f1faf6;border-color:#c6e8db;grid-template-columns:1fr auto;align-items:center}.ai-key-copy p,.ai-key-panel.connected p{color:var(--muted);margin:4px 0 0;font-size:8px;line-height:1.55}.ai-key-panel>small{color:var(--muted);grid-column:1/-1;font-size:8px}.ai-key-panel>small a{color:var(--accent);font-weight:800}.connection-error{color:var(--danger);grid-column:1/-1;margin:0;font-size:8px}.settings-save{justify-content:flex-end;align-items:center;gap:18px;padding-top:20px;display:flex}.settings-save span{color:var(--good);font-size:9px;line-height:1.5}.result-tools{flex-wrap:wrap}.result-view-switch{background:#edf0f5;border-radius:10px;padding:4px;display:flex}.result-view-switch button{color:#697386;background:0 0;border:0;border-radius:8px;padding:8px 12px;font-size:8px;font-weight:800}.result-view-switch button.active{color:var(--accent);background:#fff;box-shadow:0 2px 8px #17233c17}.submission-warnings{flex-wrap:wrap;gap:6px;padding:12px 18px 0;display:flex}.submission-warnings span{border-radius:99px;padding:6px 9px;font-size:8px;font-weight:800}.submission-warnings .yellow{color:#8d5b05;background:#fff1c9}.submission-warnings .red{color:#a42e3d;background:#ffe5e8}.metric-row{grid-template-columns:repeat(5,1fr)}.grading-question-image{padding:14px 18px 0}.grading-question-image img{object-fit:contain;border-radius:10px;max-width:220px;max-height:150px}.transcript-panel{border:1px solid var(--line);background:#fafbfc;border-radius:12px;margin:14px 18px;padding:15px}.transcript-panel>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.transcript-panel>header>div{align-items:center;gap:9px;display:flex}.transcript-panel header span{color:#6a7384;background:#e9edf5;border-radius:99px;padding:4px 7px;font-size:7px;font-weight:800}.transcript-panel p{color:#404b5e;white-space:pre-wrap;margin:12px 0 0;font-size:10px;line-height:1.75}.analysis-message{color:var(--accent);margin-top:8px;display:block}.ai-review{background:#f7f8ff;border:1px solid #cad2fa;border-radius:13px;margin:14px 18px;padding:18px}.ai-review>header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.ai-review h4{margin:2px 0 0;font-size:14px}.ai-review>header>span{color:#717b90;font-size:7px}.pronunciation-score{background:#fff;border-radius:11px;grid-template-columns:130px 1fr;align-items:center;gap:15px;margin-top:14px;padding:14px;display:grid}.pronunciation-score>div{align-items:baseline;gap:5px;display:flex}.pronunciation-score strong{color:var(--accent);font-size:32px}.pronunciation-score small{color:var(--muted);font-size:8px}.pronunciation-score p{color:#576276;margin:0;font-size:8px;line-height:1.6}.ai-category-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px;display:grid}.ai-category-grid article{background:#fff;border:1px solid #e0e4f7;border-radius:10px;padding:13px}.ai-category-grid span{color:#6c7588;font-size:8px;font-weight:800}.ai-category-grid strong{margin-top:4px;font-size:15px;display:block}.ai-category-grid strong i{background:var(--pale);color:var(--accent);border-radius:5px;padding:2px 5px;font-size:8px;font-style:normal}.ai-category-grid p,.ai-category-grid small{color:#586376;margin:6px 0 0;font-size:8px;line-height:1.5}.ai-category-grid small{color:#858d9c;display:block}.ai-summary{color:#3f4b60;background:#fff;border-radius:9px;margin:12px 0;padding:12px;font-size:9px;line-height:1.6}.grammar-detection p{background:#fff;border-radius:8px;grid-template-columns:75px 130px 1fr;align-items:start;gap:7px;margin:7px 0 0;padding:9px;font-size:8px;display:grid}.grammar-detection p>span{font-weight:850}.grammar-detection p.used>span{color:var(--good)}.grammar-detection p.missing>span{color:#9a6d18}.grammar-detection p small{color:#7e8797}.ai-caution{color:#7b6581;margin-top:12px;font-size:7px;display:block}.manual-rubric{border-bottom:1px solid var(--line);margin-bottom:15px;padding-bottom:15px}.manual-rubric>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.manual-rubric small{color:var(--muted);font-size:7px}.criteria-grid{grid-template-columns:repeat(5,1fr);gap:7px;margin-top:10px;display:grid}.criteria-grid label{color:#5d6779;gap:5px;font-size:8px;font-weight:750;display:grid}.criteria-grid select{background:#fff;border:1px solid #cbd1de;border-radius:8px;width:100%;min-height:35px;padding:0 7px}.class-dashboard{padding:25px}.class-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.class-summary-grid article{border:1px solid var(--line);background:#fafbfc;border-radius:13px;padding:18px}.class-summary-grid span{font-size:9px;font-weight:800}.class-summary-grid strong{color:var(--accent);margin:10px 0 4px;font-size:27px;display:block}.class-summary-grid p{color:#626d80;margin:0;font-size:8px}.class-summary-grid small{color:#8a93a2;margin-top:8px;font-size:7px;display:block}.class-summary-grid small.has-warning{color:var(--danger);font-weight:800}.student-score-table{border:1px solid var(--line);border-radius:13px;margin-top:17px;overflow:hidden}.student-score-table>header{border-bottom:1px solid var(--line);justify-content:space-between;padding:15px 17px;display:flex}.student-score-table>header span{color:var(--muted);font-size:8px}.score-table-row{border:0;border-bottom:1px solid var(--line);color:#566174;text-align:left;background:#fff;grid-template-columns:1.1fr 1.3fr 1fr .6fr .6fr .8fr .5fr;align-items:center;gap:10px;width:100%;padding:12px 17px;font-size:8px;display:grid}.score-table-row:not(.heading):hover{background:#f7f8fc}.score-table-row.heading{color:#818a9a;background:#fafbfc;font-weight:800}.score-table-row strong{color:var(--accent);font-size:10px}.score-table-row em{color:var(--danger);font-style:normal;font-weight:800}.grade-footer .delete-answer-button{margin-left:auto}.grade-footer .delete-answer-button+span{margin-left:0}.mini-wave i{background:#c9cfdd;transition:background .12s}.mini-wave i.played{background:#4057d6}.signal-review{min-width:0}.signal-review-actions{justify-content:flex-end;align-items:center;gap:9px;margin-top:5px;display:flex}.signal-review-actions small{color:var(--muted);font-size:7px}.signal-review-actions small.saved{color:var(--good)}.signal-review-actions small.error{color:var(--danger)}.transcript-panel textarea{color:#404b5e;resize:vertical;width:100%;font:inherit;background:#fff;border:1px solid #cbd1de;border-radius:9px;margin-top:12px;padding:10px 11px;font-size:10px;line-height:1.75}.transcript-help{color:var(--muted);margin-top:6px;font-size:7px;display:block}.transcription-notice{background:#f7f8ff;border:1px solid #d8def8;border-radius:10px;padding:10px 13px;color:#5d6787!important;max-width:520px!important;margin:-10px auto 20px!important;font-size:9px!important}@media (width<=1080px){.type-tabs{grid-template-columns:repeat(3,1fr)}.class-summary-grid{grid-template-columns:repeat(2,1fr)}.criteria-grid,.metric-row{grid-template-columns:repeat(3,1fr)}}@media (width<=820px){.settings-form-grid,.ai-key-panel,.ai-key-panel.connected{grid-template-columns:1fr}.ai-key-panel{align-items:stretch}.ai-key-panel>.primary,.ai-key-panel>.danger-outline{width:100%}.settings-console form{padding:0 18px 20px}.settings-console>header{padding:20px 18px}.class-dashboard{padding:16px}.score-table-row{grid-template-columns:1fr 1.2fr .8fr .6fr .7fr}.score-table-row>:nth-child(4),.score-table-row>:nth-child(5){display:none}.result-view-switch{order:3}.grammar-detection p{grid-template-columns:75px 1fr}.grammar-detection p small{grid-column:1/-1}}@media (width<=600px){.type-tabs{grid-template-columns:1fr}.settings-title-row,.settings-console>header{flex-direction:column;align-items:flex-start}.criteria-grid,.ai-category-grid,.class-summary-grid,.pronunciation-score,.metric-row{grid-template-columns:1fr}.transcript-panel>header,.manual-rubric>div:first-child{flex-direction:column;align-items:flex-start}.score-table-row{grid-template-columns:1fr 1fr .7fr}.score-table-row>:nth-child(3),.score-table-row>:nth-child(4),.score-table-row>:nth-child(5),.score-table-row>:nth-child(7){display:none}}.warning-settings{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.warning-settings .field{margin-bottom:0}@media (width<=600px){.warning-settings{grid-template-columns:1fr}}.student-shell{grid-template-columns:minmax(330px,370px) 1fr}.exam-sidebar{padding:46px 38px 34px}.exam-sidebar h2{font-size:34px}.exam-sidebar>p{color:#d5dbf2;margin:18px 0 0;font-size:16px;font-weight:650;line-height:1.65}.exam-sidebar>p .zh{color:#acb7da;margin-top:7px;font-size:14px}.exam-sidebar ol{margin-top:42px}.exam-sidebar li{gap:18px;min-height:72px}.exam-sidebar li:not(:last-child):after{top:46px;bottom:-10px;left:19px}.exam-sidebar li span{width:39px;height:39px;font-size:13px}.exam-sidebar li em{font-size:16px;font-weight:730;line-height:1.3}.exam-sidebar li em .zh{margin-top:4px;font-size:13px}.mic-check-card{width:min(100%,650px)}.mic-input-panel{border:1px solid var(--line);text-align:left;background:#fafbfc;border-radius:16px;margin:24px 0 20px;padding:20px;transition:border-color .2s,background .2s}.mic-input-panel.listening{background:#f7f8ff;border-color:#b9c4fb}.mic-input-panel.detected{background:#f2fbf7;border-color:#a8ddca}.mic-input-panel.failed{background:#fff6f7;border-color:#efbcc3}.mic-input-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.mic-input-heading>span{font-size:12px;font-weight:800}.mic-input-heading strong{color:var(--accent);font-size:18px}.mic-level-meter{background:#e1e5ee;border-radius:99px;height:12px;margin-top:12px;overflow:hidden;box-shadow:inset 0 1px 2px #17233c14}.mic-level-meter span{border-radius:inherit;background:linear-gradient(90deg,#6a7de5,#4057d6,#24a677);height:100%;transition:width 80ms linear;display:block}.mic-input-panel.failed .mic-level-meter span{background:var(--danger)}.mic-input-panel .wave{height:70px;margin:10px 0 4px}.mic-detection-state{border-top:1px solid #7782982e;justify-content:space-between;align-items:center;gap:15px;padding-top:12px;display:flex}.mic-detection-state b{font-size:11px}.mic-detection-state small{color:var(--muted);font-size:9px}.mic-input-panel.detected .mic-detection-state b{color:var(--good)}.mic-input-panel.failed .mic-detection-state b{color:var(--danger)}.mic-check-card .error-banner{text-align:left;margin-left:0}.exam-ready-summary{flex-wrap:wrap;justify-content:center;gap:8px;margin:24px 0;display:flex}.exam-ready-summary span{color:#59657a;background:#fafbfc;border:1px solid #d8dded;border-radius:99px;padding:8px 11px;font-size:9px;font-weight:800}.exam-start-button{min-width:310px}.type-tabs{flex-wrap:wrap;grid-template-columns:none;display:flex}.type-tabs button{flex:190px;max-width:260px}.type-tabs .custom-format-tab{border-color:#ccd2ed}.type-tabs .custom-format-tab b:before{color:var(--accent);content:"＋";margin-right:5px}.type-tabs .add-format-tab{color:var(--accent);background:#f8f9ff;border-style:dashed;border-color:#9eaae3}.type-tabs .add-format-tab span{color:var(--accent);background:#e8ecff}.new-format-form{background:#f8f9ff;border:1px solid #c9d1fa;border-radius:14px;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;margin:-2px 0 14px;padding:18px;display:grid}.new-format-form label{gap:7px;display:grid}.new-format-form label span{font-size:9px;font-weight:800}.new-format-form input{background:#fff;border:1px solid #bdc5d7;border-radius:9px;min-height:42px;padding:0 12px}.new-format-form>div{gap:8px;display:flex}.new-format-form>small{color:var(--muted);grid-column:1/-1;font-size:8px}@media (width<=1080px) and (width>=821px){.student-shell{grid-template-columns:310px 1fr}.exam-sidebar{padding-left:28px;padding-right:28px}.exam-sidebar h2{font-size:29px}.exam-sidebar li em{font-size:14px}}@media (width<=820px){.student-shell{grid-template-columns:none}.exam-sidebar{padding:20px 17px}.exam-sidebar h2{font-size:20px}.exam-sidebar>p{display:none}.exam-sidebar ol{margin:17px 0 0}.exam-sidebar li{gap:14px;min-height:auto}.exam-sidebar li:not(:last-child):after{top:15px;left:calc(50% + 18px)}.exam-sidebar li span{width:28px;height:28px;font-size:10px}.type-tabs button{max-width:none}}@media (width<=600px){.new-format-form{grid-template-columns:1fr}.new-format-form>div{justify-content:flex-end}.new-format-form>small{grid-column:auto}.mic-input-panel{padding:16px}.mic-detection-state{flex-direction:column;align-items:flex-start;gap:4px}.exam-start-button{width:100%;min-width:0}}.exam-library{background:linear-gradient(145deg,#fff,#f7f8fd);border:1px solid #d9deeb;border-radius:20px;margin-bottom:28px;padding:22px;box-shadow:0 12px 34px #1c274a0e}.exam-library-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.exam-library-header h2{letter-spacing:-.035em;margin:0;font-size:22px}.exam-library-header p:last-child{color:var(--muted);margin:5px 0 0;font-size:9px}.add-exam-button{white-space:nowrap}.exam-card-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:2px;display:grid;overflow-x:auto}.exam-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;min-height:118px;padding:14px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.exam-card:hover{border-color:#b9c3ed;transform:translateY(-1px)}.exam-card.selected{background:var(--pale);border-color:#8ea0f4;box-shadow:0 8px 20px #4057d61c}.exam-card-number{color:var(--accent);letter-spacing:.08em;font-size:8px;font-weight:850}.exam-card>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.exam-card>small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:7px;display:flex}.exam-card>small i,.exam-card>small b{background:#f0f2f6;border-radius:99px;padding:4px 6px;font-style:normal;font-weight:800}.exam-card>small i.published{color:var(--good);background:#e6f6ef}.exam-card>small i.draft{color:#97610d;background:#fff1d7}.exam-card.selected>small b{color:#53617b;background:#fff}.add-exam-card{color:var(--accent);text-align:center;background:#fafbff;border-style:dashed;border-color:#aab5e8;justify-content:center;align-items:center}.add-exam-card>span{font-size:22px;line-height:1}.add-exam-card>small{color:#7b8496;display:block}.new-exam-form{background:#f6f8ff;border:1px solid #cbd3fa;border-radius:13px;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:12px;margin-top:14px;padding:16px;display:grid}.new-exam-form label{gap:7px;display:grid}.new-exam-form label span{font-size:9px;font-weight:800}.new-exam-form input{background:#fff;border:1px solid #bdc5d7;border-radius:9px;min-height:42px;padding:0 12px}.new-exam-form>div{gap:8px;display:flex}.exam-library-message,.login-error-message{color:#a42e3d;background:#fff3f4;border:1px solid #efc1c7;border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:9px;line-height:1.5}.login-error-message{margin:0}.login-exam-note{color:#825917;background:#fff8e9;border:1px solid #f0d6a5;border-radius:11px;margin:0;padding:12px 14px;font-size:10px;line-height:1.5}.login-exam-note .zh{color:#95754b}@media (width<=1080px){.exam-card-list{grid-template-columns:repeat(3,minmax(190px,1fr))}}@media (width<=820px){.exam-library{padding:17px}.exam-library-header{flex-direction:column;align-items:flex-start}.exam-card-list{display:flex}.exam-card{min-width:210px}.new-exam-form{grid-template-columns:1fr}.new-exam-form>div{justify-content:flex-end}}@media (width<=520px){.exam-library{margin-bottom:22px;padding:14px}.exam-card{min-width:185px}.new-exam-form>div{grid-template-columns:1fr 1fr;display:grid}}.mic-device-picker{text-align:left;background:#fff;border:1px solid #ccd4e6;border-radius:14px;margin:22px 0 12px;padding:15px}.mic-device-picker label{gap:7px;display:grid}.mic-device-picker label>span{font-size:10px;font-weight:800}.mic-device-picker select{background:#fff;border:1px solid #bfc7d8;border-radius:9px;width:100%;min-height:43px;padding:0 11px;font-size:10px}.mic-device-picker>div{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:10px;padding-top:10px;display:grid}.mic-device-picker>div span{color:var(--muted);font-size:8px}.mic-device-picker>div b{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.mic-device-picker>div i{color:var(--danger);background:#fff0f1;border-radius:99px;padding:4px 7px;font-size:7px;font-style:normal;font-weight:800}.mic-device-picker>div i.live{color:var(--good);background:#e7f6ef}.mic-signal-detail{color:#7b8496;font-variant-numeric:tabular-nums;justify-content:flex-end;gap:12px;margin:-4px 0 8px;font-size:7px;display:flex}.mic-check-actions{justify-content:center;align-items:center;gap:10px;display:flex}.mic-check-actions .secondary{min-height:55px}.mic-check-actions .start-button{min-width:260px}@media (width<=600px){.mic-device-picker>div{grid-template-columns:1fr auto}.mic-device-picker>div span{grid-column:1/-1}.mic-check-actions{flex-direction:column;align-items:stretch}.mic-check-actions .start-button,.mic-check-actions .secondary{width:100%;min-width:0}}.student-result-item{border:1px solid #0000;border-radius:12px;grid-template-columns:42px minmax(0,1fr);align-items:stretch;gap:5px;margin-bottom:6px;padding:4px;display:grid}.student-result-item:hover{background:#f0f2f6}.student-result-item.selected{background:var(--pale);border-color:#c3ccfb}.student-select-button{text-align:left;background:0 0;border:0;flex-direction:column;gap:3px;min-width:0;padding:9px 8px;display:flex}.delete-student-button{color:#a42e3d;background:#fff5f6;border:1px solid #efc2c8;border-radius:8px;align-self:stretch;padding:0 4px;font-size:7px;font-weight:850}.delete-student-button:hover{background:#ffe8eb;border-color:#d98691}.delete-student-button:disabled{cursor:wait;opacity:.55}.student-delete-error{color:#a42e3d;background:#fff3f4;border:1px solid #efc1c7;border-radius:10px;margin:10px 18px;padding:10px 12px;font-size:9px}.ai-suggested-grade{background:#fff;border:1px solid #aebbf8;border-radius:12px;grid-template-columns:155px minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:14px;padding:16px;display:grid}.ai-suggested-grade>div:first-child{grid-template-columns:1fr auto;align-items:end;gap:3px;display:grid}.ai-suggested-grade>div:first-child>span{color:#66718a;grid-column:1/-1;font-size:8px;font-weight:850}.ai-suggested-grade>div:first-child strong{color:var(--accent);font-size:34px;line-height:1}.ai-suggested-grade>div:first-child strong small{color:#747d91;font-size:10px}.ai-suggested-grade>div:first-child em{background:var(--pale);color:var(--accent);border-radius:7px;padding:5px 7px;font-size:9px;font-style:normal;font-weight:850}.ai-suggested-grade ul{color:#586376;gap:4px;margin:7px 0 0;padding-left:16px;font-size:8px;line-height:1.5;display:grid}.ai-rubric-section{margin-top:14px}.ai-rubric-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.ai-rubric-heading span{color:#778196;font-size:7px}.ai-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ai-detail-grid.pronunciation{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-detail-card{background:#fff;border:1px solid #e0e4f7;border-radius:10px;padding:13px}.ai-detail-card header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.ai-detail-card header span{color:#59657b;font-size:8px;font-weight:850}.ai-detail-card header strong{white-space:nowrap;font-size:13px}.ai-detail-card header i{background:var(--pale);color:var(--accent);border-radius:5px;padding:2px 5px;font-size:7px;font-style:normal}.ai-detail-card p{color:#4d596d;margin:7px 0 0;font-size:8px;line-height:1.55}.ai-detail-card small{color:#727c8f;border-top:1px solid #eef0f8;margin-top:7px;padding-top:7px;font-size:7px;line-height:1.5;display:block}.ai-detail-card small b{color:#53617b;margin-bottom:2px;font-size:7px;display:block}.ai-detail-card small.issues{color:#a0505b}.ai-detail-card small.improvement{color:#35705b}.ai-partial-errors{color:#9e3442;background:#fff3f4;border-radius:8px;gap:4px;margin-top:10px;padding:10px;font-size:8px;display:grid}.ai-partial-errors b{font-size:8px}.manual-rubric-group{grid-template-columns:70px 1fr;align-items:start;gap:10px;margin-top:11px;display:grid}.manual-rubric-group>span{color:#59657a;padding-top:9px;font-size:8px;font-weight:850}.manual-rubric-group .criteria-grid{margin-top:0}.manual-rubric-group .criteria-grid.pronunciation{grid-template-columns:repeat(3,1fr)}.manual-rubric-group .criteria-grid.language{grid-template-columns:repeat(4,1fr)}.short-form-count-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:11px;display:grid}.short-form-count-grid>label{color:#536078;background:#fff;border:1px solid #dfe3ec;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;padding:12px 13px;font-size:9px;font-weight:850;display:grid}.short-form-count-grid>label>small{color:#858d9d;grid-column:1;font-size:7px;font-weight:500}.short-form-count-grid>label>div{grid-area:1/2/3;align-items:center;gap:5px;display:flex}.short-form-count-grid input{text-align:right;background:#fff;border:1px solid #c5ccda;border-radius:8px;width:70px;min-height:38px;padding:0 9px;font-size:12px;font-weight:800}.short-form-count-grid em{color:#747e90;font-size:8px;font-style:normal}.grade-rationale{color:#596376;gap:5px;margin-bottom:11px;font-size:8px;font-weight:750;display:grid}.grade-rationale textarea{resize:vertical;width:100%;font:inherit;background:#fff;border:1px solid #cbd1de;border-radius:8px;padding:9px 10px;line-height:1.6}@media (width<=1080px){.ai-detail-grid.pronunciation{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-suggested-grade{grid-template-columns:135px 1fr}.ai-suggested-grade>button{grid-column:1/-1;justify-self:end}.manual-rubric-group .criteria-grid.pronunciation,.manual-rubric-group .criteria-grid.language{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.student-result-item{min-width:245px}.student-results-list>button{min-width:0}}@media (width<=600px){.ai-suggested-grade{grid-template-columns:1fr}.ai-suggested-grade>button{grid-column:auto;width:100%}.ai-detail-grid,.ai-detail-grid.pronunciation,.short-form-count-grid,.manual-rubric-group{grid-template-columns:1fr}.manual-rubric-group>span{padding-top:0}.manual-rubric-group .criteria-grid.pronunciation,.manual-rubric-group .criteria-grid.language{grid-template-columns:1fr}}.student-total-actions{grid-template-columns:minmax(170px,1fr) auto;align-items:center;gap:8px 14px;min-width:min(100%,420px);text-align:right!important;display:grid!important}.student-total-actions>div{flex-direction:column;display:flex}.student-total-actions>div strong{color:var(--accent);font-size:28px}.student-total-actions>div small{color:var(--muted);font-size:8px}.bulk-save-button{white-space:nowrap;grid-area:1/2}.student-total-actions>span{color:var(--muted);grid-column:1/-1;font-size:8px}.student-total-actions>span.saved{color:var(--good)}.student-total-actions>span.error{color:var(--danger)}.individual-format-summary{background:#fafbfe;border:1px solid #dde2ef;border-radius:12px;margin:-7px 0 19px;padding:14px 16px}.individual-format-summary>header{justify-content:space-between;gap:10px;margin-bottom:10px;display:flex}.individual-format-summary>header span{color:var(--muted);font-size:7px}.individual-format-summary>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;display:grid}.individual-format-summary article{grid-template-columns:minmax(120px,1fr) minmax(150px,1.2fr);align-items:center;gap:9px;display:grid}.individual-format-summary article>span{color:#596579;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;overflow:hidden}.average-bar{grid-template-columns:minmax(60px,1fr) 42px;align-items:center;gap:8px;display:grid}.average-bar>span{background:#e5e8f0;border-radius:99px;height:9px;overflow:hidden}.average-bar>span>i{border-radius:inherit;background:linear-gradient(90deg,#788cf0,var(--accent));height:100%;transition:width .25s;display:block}.average-bar>b{color:#354464;text-align:right;font-size:10px}.score-analytics-dashboard{background:#f7f8fb;padding:25px}.analytics-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.analytics-summary-grid article{background:#fff;border:1px solid #dde2ed;border-radius:14px;min-height:118px;padding:18px}.analytics-summary-grid span{color:#687489;font-size:8px;font-weight:850}.analytics-summary-grid strong{color:var(--accent);letter-spacing:-.04em;margin-top:10px;font-size:30px;display:block}.analytics-summary-grid strong small{font-size:11px}.analytics-summary-grid small{color:#8a93a3;margin-top:5px;font-size:7px;display:block}.analytics-summary-grid .weakness-summary{background:#fffbf3;border-color:#efd9b6}.analytics-summary-grid .weakness-summary strong{color:#9b6517;font-size:17px;line-height:1.35}.analytics-empty{text-align:center;background:#fff;border:1px dashed #cbd2df;border-radius:16px;place-content:center;min-height:360px;margin-top:14px;display:grid}.analytics-empty b{font-size:14px}.analytics-empty p{max-width:450px;color:var(--muted);font-size:9px;line-height:1.7}.analytics-section{background:#fff;border:1px solid #dce1eb;border-radius:16px;margin-top:14px;padding:20px}.analytics-section>header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:17px;display:flex}.analytics-section>header h3{margin:2px 0 0;font-size:17px}.analytics-section>header>p{max-width:480px;color:var(--muted);text-align:right;margin:0;font-size:8px;line-height:1.6}.format-distribution-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.format-distribution-card{background:#fcfcfd;border:1px solid #e0e4ed;border-radius:13px;padding:16px}.format-distribution-card>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.format-distribution-card>header span{color:#7b8495;font-size:7px;font-weight:800}.format-distribution-card h3{margin:3px 0 0;font-size:11px}.format-distribution-card>header>strong{color:var(--accent);font-size:27px;line-height:1}.format-distribution-card>.average-bar{margin-top:12px}.distribution-bars{grid-template-columns:repeat(5,1fr);gap:7px;height:125px;margin-top:13px;padding-top:4px;display:grid}.distribution-bars>div{text-align:center;grid-template-rows:15px 1fr 17px;align-items:end;display:grid}.distribution-bars b{color:#677286;font-size:8px}.distribution-bars>div>span{border-bottom:1px solid #d7dce7;justify-content:center;align-items:flex-end;height:82px;display:flex}.distribution-bars i{background:linear-gradient(#91a0ec,#5168dc);border-radius:6px 6px 2px 2px;width:min(26px,70%);min-height:2px;transition:height .25s;display:block}.distribution-bars small{color:#838c9d;padding-top:5px;font-size:6px}.format-distribution-card>footer{border-top:1px solid #e6e9ef;gap:5px;margin-top:11px;padding-top:10px;display:grid}.format-distribution-card>footer span{color:#7d8697;font-size:7px}.format-distribution-card>footer b{color:#965f16;font-size:8px;line-height:1.5}.class-comparison-chart{gap:11px;display:grid}.class-comparison-chart article{grid-template-columns:130px 1fr;align-items:center;gap:15px;display:grid}.class-comparison-chart article>div:first-child{flex-direction:column;display:flex}.class-comparison-chart article>div:first-child small{color:#8a93a2;margin-top:2px;font-size:7px}.class-comparison-chart .average-bar>span{height:14px}.class-format-matrix{border-top:1px solid #e2e6ed;margin-top:22px;padding-top:17px}.matrix-heading{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.matrix-heading span{color:#858e9f;font-size:7px}.matrix-scroll{padding-bottom:3px;overflow-x:auto}.matrix-grid{gap:5px;min-width:680px;display:grid}.matrix-grid>b,.matrix-grid>strong,.matrix-grid>span{text-align:center;border-radius:7px;place-items:center;min-height:38px;padding:6px;font-size:7px;display:grid}.matrix-grid>b{color:#657087}.matrix-grid>strong{color:#3f4c63;justify-items:start;font-size:8px}.matrix-grid>span{color:#718096;background:#edf0f5;font-weight:850}.matrix-grid>span.low{color:#a6323c;background:#ffe1e1}.matrix-grid>span.middle{color:#98620e;background:#fff0ca}.matrix-grid>span.high{color:#1d7158;background:#dff3e9}.matrix-grid>span.empty{color:#a0a7b2;background:#f0f2f5}@media (width<=980px){.format-distribution-grid{grid-template-columns:1fr}.analytics-summary-grid{grid-template-columns:1fr 1fr}.analytics-summary-grid .weakness-summary{grid-column:1/-1}.student-total-actions{min-width:0}.individual-format-summary>div{grid-template-columns:1fr}}@media (width<=700px){.score-analytics-dashboard{padding:14px}.analytics-summary-grid{grid-template-columns:1fr}.analytics-summary-grid .weakness-summary{grid-column:auto}.analytics-section{padding:15px}.analytics-section>header{flex-direction:column;align-items:flex-start;gap:7px}.analytics-section>header>p{text-align:left}.student-result-header{align-items:stretch!important}.student-total-actions{text-align:left!important;grid-template-columns:1fr!important}.bulk-save-button{grid-area:auto/1;width:100%}.student-total-actions>span{grid-column:1}.individual-format-summary article{grid-template-columns:1fr}.class-comparison-chart article{grid-template-columns:1fr;gap:6px}.result-view-switch{width:100%;overflow-x:auto}.result-view-switch button{white-space:nowrap;flex:1}}.zh{font-family:Songti SC,STSong,SimSun,宋体,Noto Serif CJK SC,Source Han Serif SC,serif;font-style:normal}.app-header .brand strong{font-size:22px;line-height:1.1}.app-header .brand small{font-size:13px;line-height:1.35}.app-header nav button{min-width:112px;font-size:15px}.app-header .network,.exam-sidebar>.eyebrow{font-size:13px}.exam-sidebar>p{font-size:18px}.exam-sidebar>p .zh{font-size:15px}.exam-sidebar li{color:#aeb8d8}.exam-sidebar li span{font-size:14px}.exam-sidebar li em{font-size:18px}.exam-sidebar li em .zh{font-size:14px}.login-form{gap:20px}.login-form>.eyebrow{font-size:13px}.login-form h1{margin:0 0 4px;font-size:clamp(32px,3.2vw,40px);line-height:1.25}.login-form h1 .zh{font-size:18px}.login-form label{font-size:18px;font-weight:750;line-height:1.4}.login-form label>.zh{font-size:14px}.login-form input,.login-form select{min-height:52px;font-size:17px}.login-form .student-login-submit{min-height:56px;font-size:18px}.login-form .student-login-submit .zh{color:#eef0ff;font-size:14px}.mic-input-heading>span{font-size:18px}.mic-input-heading>span .zh{font-size:15px}.mic-detection-state b{font-size:18px;line-height:1.35}.mic-detection-state small{font-size:15px;line-height:1.45}.mic-check-actions .start-button{min-height:68px;padding:10px 24px;font-size:18px;line-height:1.3}.mic-check-actions .start-button .zh{font-size:14px}.exam-room>header{min-height:94px}.exam-room>header .question-meta .eyebrow{margin-bottom:5px;font-size:15px}.exam-room>header .question-meta>strong{font-size:18px;line-height:1.35}.exam-room>header .question-meta .zh{font-size:14px}.question-instruction{gap:5px;font-size:11px}.question-instruction .zh{font-size:11px}.exam-finished-card{width:min(100%,720px)}.exam-finished-card>p:not(.error-banner){max-width:680px;font-size:18px;line-height:1.75}.exam-finished-card>p .zh{margin-top:9px;font-size:15px}.exam-library-header .eyebrow{font-size:13px}.exam-library-header p:last-child{font-size:14px;line-height:1.6}.exam-card{min-height:134px;padding:17px}.exam-card-number{font-size:12px}.exam-card>strong{font-size:15px}.exam-card>small{font-size:10px}.add-exam-card>strong{font-size:15px}.add-exam-card>small{font-size:11px}.production-shell .page-heading .eyebrow{font-size:13px}.production-shell .page-heading p:last-child{font-size:14px;line-height:1.6}.teacher-mode-tabs button{min-width:145px;min-height:44px;font-size:14px}.type-tabs button b{font-size:14px}.type-tabs button span{font-size:11px}.question-workspace{grid-template-columns:420px 1fr}.question-list{padding:21px}.question-list>div:first-child strong{font-size:15px}.question-list .primary{min-height:46px;font-size:13px}.question-list article{gap:13px;margin-bottom:10px;padding:16px 14px}.question-list article>span{font-size:12px}.question-list article strong{font-size:14px}.question-list article small{font-size:11px;line-height:1.4}.question-list article>button{font-size:11px}@media (width<=1080px) and (width>=821px){.exam-sidebar li em{font-size:16px}.exam-sidebar li em .zh{font-size:13px}.question-workspace{grid-template-columns:390px 1fr}}@media (width<=820px){.app-header .brand strong{font-size:18px}.app-header nav button{font-size:13px}.question-workspace{grid-template-columns:1fr}.exam-room>header{min-height:86px;padding:0 18px}}@media (width<=600px){.login-form h1{font-size:30px}.login-form h1 .zh,.login-form label{font-size:16px}.login-form label>.zh{font-size:13px}.login-form input,.login-form select,.mic-input-heading>span,.mic-detection-state b{font-size:16px}.mic-input-heading>span .zh,.mic-detection-state small{font-size:13px}.mic-check-actions .start-button{font-size:16px}.exam-room>header .question-meta .eyebrow{font-size:13px}.exam-room>header .question-meta>strong{font-size:16px}.exam-room>header .question-meta .zh{font-size:13px}.exam-finished-card>p:not(.error-banner){font-size:16px}.exam-finished-card>p .zh{font-size:14px}.teacher-mode-tabs button{min-width:0;font-size:12px}}.phase>.record-label{letter-spacing:.04em;gap:12px;font-size:clamp(20px,2vw,24px)}.record-label i{width:12px;height:12px}.record-label .zh{font-size:clamp(17px,1.5vw,19px)}.production-shell{width:min(1500px,100% - 48px)}.results-console{font-size:15px}.results-console p{font-size:14px;line-height:1.65}.results-console small{font-size:12px;line-height:1.5}.results-console span,.results-console label,.results-console time{font-size:13px;line-height:1.45}.results-console b{font-size:14px;line-height:1.45}.results-console button,.results-console input,.results-console select,.results-console textarea{font-size:14px}.result-tools{gap:24px;padding:26px 28px}.result-tools .eyebrow{font-size:13px}.result-tools h2{font-size:28px}.result-view-switch button{min-height:44px;padding:10px 16px;font-size:14px}.result-filters input,.result-filters select{min-height:48px;font-size:14px}.result-filters input{width:290px}.results-layout{grid-template-columns:340px 1fr}.student-results-list{padding:14px}.student-result-item{grid-template-columns:50px minmax(0,1fr);gap:8px;margin-bottom:9px}.student-select-button{gap:5px;padding:12px 10px}.student-results-list b{font-size:15px}.student-results-list span{font-size:13px}.student-results-list small{font-size:12px}.delete-student-button{min-width:46px;font-size:11px}.student-delete-error{font-size:13px}.student-result-detail{padding:32px}.student-result-header h2{font-size:32px}.student-result-header>div:first-child>span{font-size:14px}.student-total-actions>div small,.student-total-actions>span{font-size:12px}.bulk-save-button{min-height:46px;font-size:14px}.individual-format-summary{padding:18px 20px}.individual-format-summary>header b{font-size:15px}.individual-format-summary>header span,.individual-format-summary article>span{font-size:13px}.average-bar>b{font-size:14px}.grade-card>header{padding:20px 22px}.grade-card>header span{font-size:13px}.grade-card h3{font-size:17px}.grade-card time{font-size:12px}.grade-audio{padding:17px 22px}.submission-warnings span{font-size:12px}.metric-row span{padding:14px 16px;font-size:13px}.metric-row b{font-size:16px}.transcript-panel{padding:19px}.transcript-panel b{font-size:16px}.transcript-panel header span{font-size:12px}.transcript-panel textarea{padding:13px 14px;font-size:15px}.transcript-help,.signal-review-actions small{font-size:12px}.analysis-message{font-size:13px}.compact{min-height:40px;padding:0 13px;font-size:13px}.ai-review{padding:22px}.ai-review h4{font-size:19px}.ai-review>header>span,.ai-suggested-grade>div:first-child>span{font-size:12px}.ai-suggested-grade>div:nth-child(2)>b{font-size:14px}.ai-suggested-grade ul{font-size:13px;line-height:1.65}.ai-rubric-heading b{font-size:15px}.ai-rubric-heading span{font-size:12px}.ai-detail-card{padding:16px}.ai-detail-card header span{font-size:13px}.ai-detail-card header strong{font-size:16px}.ai-detail-card header i{font-size:11px}.ai-detail-card p{font-size:13px;line-height:1.65}.ai-detail-card small,.ai-detail-card small b,.pronunciation-score small{font-size:12px}.pronunciation-score p{font-size:13px}.ai-summary{font-size:14px}.grammar-detection>b{font-size:15px}.grammar-detection p{grid-template-columns:100px 160px 1fr;font-size:13px}.grammar-detection p small,.ai-caution{font-size:12px}.manual-rubric b{font-size:15px}.manual-rubric small{font-size:12px}.manual-rubric-group{grid-template-columns:100px 1fr;gap:14px}.manual-rubric-group>span{font-size:14px}.criteria-grid label{font-size:13px}.criteria-grid select{min-height:42px;font-size:14px}.short-form-count-grid>label{padding:15px 16px;font-size:14px}.short-form-count-grid>label>small{font-size:12px}.short-form-count-grid input{min-height:42px;font-size:15px}.short-form-count-grid em{font-size:12px}.grade-rationale,.score-inputs label,.grade-comment{font-size:14px}.grade-rationale textarea,.score-inputs input,.score-inputs select,.grade-comment textarea{font-size:15px}.score-inputs input,.score-inputs select{min-height:44px}.grade-form{padding:20px 22px}.grade-footer{gap:16px;font-size:13px}.grade-footer .primary,.grade-footer .danger-outline{min-height:42px;font-size:13px}.missing-answer span,.missing-answer em{font-size:13px}.missing-answer b{font-size:15px}.class-summary-grid span{font-size:14px}.class-summary-grid p{font-size:13px}.class-summary-grid small{font-size:12px}.student-score-table>header b{font-size:15px}.student-score-table>header span{font-size:13px}.score-table-row{min-height:50px;font-size:13px}.score-table-row strong{font-size:15px}.analytics-summary-grid span{font-size:13px}.analytics-summary-grid small,.analytics-summary-grid strong small{font-size:12px}.analytics-empty p{font-size:14px}.analytics-section>header h3{font-size:20px}.analytics-section>header>p{font-size:13px}.format-distribution-card>header span{font-size:12px}.format-distribution-card h3{font-size:15px}.format-distribution-card>header>strong small,.distribution-bars b{font-size:12px}.distribution-bars small{font-size:11px}.format-distribution-card>footer span{font-size:12px}.format-distribution-card>footer b{font-size:13px}.class-comparison-chart article>div:first-child b{font-size:14px}.class-comparison-chart article>div:first-child small{font-size:12px}.matrix-heading b{font-size:14px}.matrix-heading span{font-size:12px}.matrix-grid>b,.matrix-grid>strong,.matrix-grid>span{min-height:44px;font-size:12px}.matrix-grid>strong{font-size:13px}.settings-console{font-size:15px}.settings-console p{font-size:14px;line-height:1.65}.settings-console small{font-size:13px;line-height:1.55}.settings-console button,.settings-console input,.settings-console select{font-size:15px}.settings-console>header{padding:28px 34px}.settings-console>header .eyebrow{font-size:13px}.settings-console>header h2{font-size:30px}.ai-connection{font-size:13px}.settings-console form{padding:0 34px 34px}.settings-section{padding:30px 0}.settings-section h3{font-size:20px}.settings-console .field>span{font-size:15px}.settings-console .field small{font-size:13px}.settings-console .field input,.settings-console .field select{min-height:50px;font-size:15px}.switch-row{gap:15px;padding:18px 20px}.switch-row>input{width:22px;height:22px}.switch-row b{font-size:16px}.switch-row small{font-size:13px;line-height:1.65}.settings-title-row p{font-size:14px}.settings-title-row>span{font-size:12px}.ai-key-panel{gap:16px;padding:20px}.ai-key-copy b,.ai-key-panel.connected b{font-size:15px}.ai-key-copy p,.ai-key-panel.connected p{font-size:13px}.ai-key-panel>small,.connection-error{font-size:12px}.ai-key-input input{min-height:50px}.model-field{max-width:520px}.settings-console .primary,.settings-console .danger-outline{min-height:46px;font-size:14px}.settings-save span{font-size:13px}@media (width<=900px){.results-layout{grid-template-columns:1fr}.student-results-list{display:flex;overflow-x:auto}.student-result-item{min-width:280px}}@media (width<=820px){.production-shell{width:calc(100% - 28px)}.result-tools,.student-result-detail{padding:22px 18px}.settings-console>header{padding:24px 20px}.settings-console form{padding:0 20px 24px}}@media (width<=600px){.phase>.record-label{font-size:18px}.record-label .zh{font-size:15px}.result-tools h2{font-size:24px}.results-console p,.results-console button,.results-console input,.results-console select,.results-console textarea{font-size:13px}.results-console small{font-size:11px}.results-console span,.results-console label,.results-console time{font-size:12px}.result-filters input{width:100%}.student-result-detail{padding:20px 14px}.student-result-header h2{font-size:27px}.settings-console>header h2{font-size:26px}.settings-section h3{font-size:18px}.settings-console p,.settings-console button,.settings-console input,.settings-console select{font-size:13px}.settings-console small{font-size:12px}.settings-console .field>span{font-size:14px}.switch-row b{font-size:15px}.switch-row small{font-size:12px}}.brand{color:inherit;text-decoration:none}.app-header nav a{color:#6e7789;border-radius:10px;justify-content:center;align-items:center;min-width:112px;padding:9px 14px;font-size:15px;font-weight:750;text-decoration:none;display:inline-flex}.app-header nav a.active{color:var(--navy);background:#fff;box-shadow:0 3px 12px #17233c17}.teacher-account{color:#536078;text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:13px;overflow:hidden}.teacher-signout{color:#586276;background:#fff;border:1px solid #ccd2df;border-radius:9px;padding:7px 10px;font-size:13px;text-decoration:none}.teacher-access-page{place-items:center;min-height:100vh;padding:32px;display:grid}.teacher-access-card{text-align:center;background:#fff;border:1px solid #dce1ec;border-radius:22px;width:min(100%,620px);padding:48px;box-shadow:0 18px 55px #1c274a1a}.teacher-lock{width:72px;height:72px;color:var(--danger);background:#fff0f1;border-radius:50%;place-items:center;margin:0 auto 24px;font-size:30px;font-weight:850;display:grid}.teacher-access-card h1{margin:0;font-size:32px}.teacher-access-card>p:not(.eyebrow){color:var(--muted);margin:14px auto 0;font-size:16px;line-height:1.7}.teacher-access-card .teacher-access-account{background:#f3f5fa;border-radius:10px;padding:11px 13px;font-size:14px}.teacher-access-card>div{justify-content:center;gap:10px;margin-top:25px;display:flex}.teacher-login-form{text-align:left;gap:15px;margin-top:25px;display:grid}.teacher-login-form label{color:var(--ink);gap:7px;font-size:14px;font-weight:750;display:grid}.teacher-login-form input{background:#fff;border:1px solid #cbd1de;border-radius:10px;outline:none;min-height:48px;padding:0 13px}.teacher-login-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4057d617}.teacher-login-form button{cursor:pointer;border:0;width:100%;min-height:48px;margin-top:4px;font-size:14px}.teacher-login-error{background:#fff0f1;border:1px solid #f2c5cb;border-radius:10px;padding:11px 13px;color:#a62e3d!important;font-size:14px!important}.teacher-access-card a.primary,.teacher-access-card a.secondary{min-height:46px;font-size:14px;text-decoration:none}.teacher-loader{min-height:60vh}@media (width<=820px){.app-header nav{grid-template-columns:repeat(2,1fr)}.app-header nav a{min-width:0}}@media (width<=600px){.teacher-access-page{padding:18px}.teacher-access-card{padding:34px 20px}.teacher-access-card>div{flex-direction:column;align-items:stretch}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
