@charset "UTF-8";
:root{--paper:#f6f6ef;--ink:#203f35;--green:#245d49;--leaf:#e4edc5;--line:#dce3d9;--muted:#63766d;--white:#fff;--orange:#b15c31;--red:#ad3e35;--radius:20px;font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;border:1px solid var(--line);border-radius:12px;padding:11px 19px;background:#fff;color:var(--ink);min-height:46px;font-weight:700}button:hover{background:#edf2e7}button.primary{background:var(--green);color:white;border-color:var(--green)}button.danger{color:var(--red)}button:disabled{opacity:.45;cursor:default}.small{font-size:14px}.muted{color:var(--muted)}h1,h2,h3,p{margin:0 0 15px}h1{font-size:34px;letter-spacing:-1.5px;line-height:1.4}h2{font-size:23px;letter-spacing:-.7px}h3{font-size:18px}a{color:var(--green)}input,textarea,select{width:100%;padding:12px 14px;border:1px solid #c9d5c9;border-radius:10px;background:white;color:var(--ink);min-height:46px}textarea{min-height:120px;resize:vertical}input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:20px;margin:0;accent-color:var(--green)}label{display:block;font-size:14px;font-weight:700;margin-bottom:14px}label input,label select,label textarea{margin-top:6px}.check{display:flex;align-items:center;gap:10px;font-size:15px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:18px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px}.card.soft{background:#eef2e5}.card.green{background:var(--green);color:#fff}.card.green .muted{color:#dbe8d4}.tag{display:inline-block;font-size:13px;font-weight:700;border-radius:7px;background:#eef3e8;padding:4px 9px;color:#48633e}.tag.warning{background:#fff0dc;color:#946023}.tag.success{background:#e2f0e7;color:#245d49}.tag.gray{background:#eef0ed;color:#69706b}.bar{height:7px;background:#e9ede4;border-radius:8px;overflow:hidden}.bar span{display:block;height:100%;background:#7c9d62}.brand{font-size:25px;font-weight:900;letter-spacing:-1.3px;display:flex;align-items:center;gap:12px}.brand::before{content:"";display:block;background:url('/favicon.svg') center/contain;width:36px;height:36px}.brand span{font-size:13px;font-weight:500;letter-spacing:0;color:var(--muted)}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.sidebar{padding:32px 20px;background:#fbfcf6;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.sidebar .brand{margin:0 10px 42px}.nav{display:grid;gap:8px}.nav button{text-align:left;background:transparent;border:0;border-radius:12px;font-weight:500}.nav button.active{background:#e4eccf;color:#264f36;font-weight:800}.sidebar footer{margin-top:auto;padding:20px 10px 0}.workspace{max-width:1420px;width:100%;padding:30px 48px 70px;margin:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.topbar .crumb{font-size:14px;color:var(--muted)}.avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#e7ecdc;font-weight:800}.eyebrow{font-size:13px;font-weight:800;color:#748060;letter-spacing:1.8px;margin-bottom:10px}.intro{margin-bottom:26px}.intro p{color:var(--muted)}.score{font-size:38px;font-weight:800;letter-spacing:-1px;line-height:1.2}.score small{font-size:17px;font-weight:600}.rank{font-size:28px;font-weight:800;color:#779258;margin-bottom:10px}.rank-card{position:relative;min-height:151px}.rank-card:first-child{background:#eef3dc}.rank-card .points{position:absolute;right:23px;bottom:26px;font-size:22px;font-weight:800}.section-title{display:flex;justify-content:space-between;align-items:center;margin:30px 0 14px}.section-title h2{margin:0}.lesson-card{display:flex;align-items:center;gap:23px}.lesson-icon{width:64px;height:72px;border-radius:15px;background:#e7edda;display:flex;align-items:center;justify-content:center;font-size:27px;font-weight:800;flex-shrink:0}.lesson-card .text{flex:1}.lesson-card h3{font-size:21px;margin:4px 0}.lesson-card button{min-width:155px}.empty{padding:35px;text-align:center;color:var(--muted);border:1px dashed #c8d4c4;border-radius:16px}.notice{padding:15px 18px;border-radius:12px;background:#fff5e2;color:#745729;font-size:14px;margin:12px 0}.error{background:#fff0ee;color:#9e3b32}.successbox{background:#e9f3e6;color:#315a35}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f5f7ef;color:#6f7d68;font-size:13px}pre{white-space:pre-wrap;word-break:break-word;font:inherit}details{border:1px solid var(--line);border-radius:12px;padding:15px;margin:12px 0}summary{cursor:pointer;font-weight:700}.code{font-family:Consolas,monospace;font-size:14px;min-height:240px}.login{max-width:1080px;margin:10vh auto;padding:40px;display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:center}.login h1{font-size:52px;margin-top:60px;margin-bottom:25px}.login .brand{margin-bottom:20px}.login .loginart{border-left:4px solid #bed18b;padding-left:22px;margin:35px 0;font-size:18px}.login form{padding:36px}.login form button{width:100%;margin-top:10px}.login form h2{margin-bottom:25px}.demo-banner{font-size:13px;color:#7c6534;background:#f4ebd7;border-radius:7px;padding:7px 12px;display:inline-block}.study-layout{max-width:900px;margin:auto}.study-top{margin-bottom:23px}.study-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:44px;min-height:420px;box-shadow:0 6px 26px #34432205}.study-card .question{font-size:27px;font-weight:750;line-height:1.7;letter-spacing:-.6px;margin:28px 0}.study-card .answer{font-size:28px;background:#eef3df;border-radius:15px;padding:22px;margin:20px 0}.study-card .passage{padding:20px;background:#f6f7f1;border-left:3px solid #b7c799;border-radius:0 10px 10px 0;white-space:pre-wrap}.modes{display:flex;background:#e9ede2;padding:5px;gap:5px;border-radius:13px;width:fit-content}.modes button{border:0;background:transparent;min-height:40px;padding:6px 15px;font-size:14px}.modes .active{background:white;box-shadow:0 2px 6px #00000009}.choices{display:grid;gap:12px}.choice{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid #cfdbcc;border-radius:12px;padding:17px;margin:0;font-weight:500;font-size:17px}.choice:has(input:checked){border:2px solid var(--green);background:#f0f5e9;padding:16px}.choice input{flex-shrink:0;margin-top:4px}.study-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:24px}.helptext{font-size:14px;color:var(--muted)}.study-card textarea{font-size:19px;min-height:130px}.study-card input[type=text]{font-size:21px}.sidebar .divider{border-top:1px solid var(--line);margin:20px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat .score{font-size:30px;margin-top:8px}.stat{padding:20px}.sourceframe{width:100%;height:550px;border:1px solid var(--line);border-radius:12px}.range{padding:20px;border:1px solid var(--line);border-radius:12px;margin-bottom:15px}.range textarea{min-height:160px}.row>*{min-width:0}.grow{flex:1}.divider{height:1px;background:var(--line);margin:20px 0}dialog{border:1px solid var(--line);border-radius:20px;max-width:900px;width:90vw;padding:28px;color:var(--ink)}dialog::backdrop{background:#10271bb0}#toast{position:fixed;right:28px;bottom:28px;max-width:440px;background:#264e3e;color:#fff;border-radius:13px;padding:16px 22px;z-index:99;box-shadow:0 8px 24px #0002;display:none}.skip{position:fixed;top:-70px;left:10px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.save-state{font-size:13px;color:#62804f}.red{color:var(--red)}.amount{font-size:21px;font-weight:800}video{max-width:100%;border-radius:14px}.modal-close{float:right}select[multiple]{height:160px}.actions{display:flex;gap:8px;flex-wrap:wrap}.pill-number{font-size:12px;border:1px solid var(--line);border-radius:50%;width:27px;height:27px;display:inline-flex;justify-content:center;align-items:center;margin-right:12px}.editor-item{padding:20px;background:#f8f9f4;border:1px solid var(--line);border-radius:14px;margin:16px 0}.editor-item textarea{min-height:90px}
@media(max-width:1100px){.workspace{padding:26px}.shell{grid-template-columns:195px 1fr}.sidebar{padding:26px 12px}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.login{gap:35px}}
@media(max-width:760px){.shell{display:block}.sidebar{height:auto;position:static;padding:14px 18px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{margin:0 0 14px;font-size:21px}.sidebar .brand::before{width:28px;height:28px}.nav{display:flex;overflow-x:auto;gap:5px}.nav button{white-space:nowrap;font-size:14px;padding:8px 13px}.sidebar footer{display:none}.workspace{padding:20px 18px 45px}.topbar{margin-bottom:24px}.topbar .crumb{display:none}h1{font-size:28px}.three{gap:8px}.rank-card{padding:17px 13px;min-height:145px}.rank-card .points{position:static;font-size:19px}.rank{font-size:23px;margin:0}.rank-card h3{font-size:14px;margin:8px 0}.card{padding:20px}.lesson-card{flex-wrap:wrap;gap:15px}.lesson-card button{width:100%}.lesson-icon{width:48px;height:55px;font-size:23px}.lesson-card h3{font-size:19px}.login{display:block;margin:30px auto;padding:22px;max-width:520px}.login h1{font-size:38px;margin-top:30px}.login .loginart{display:none}.login form{margin-top:30px;padding:26px}.study-card{padding:24px 20px;min-height:400px}.study-card .question{font-size:23px}.study-footer{flex-wrap:wrap}.study-footer button{flex:1}.modes{width:100%}.modes button{flex:1;padding:7px}.study-card .answer{font-size:24px}.stats{gap:10px}.stat{padding:15px}.sourceframe{height:350px}.three .empty{padding:17px 10px;font-size:13px}.grid{gap:15px}.score{font-size:33px}}
.question-image{max-width:100%;height:auto;display:block;margin:20px auto;border:1px solid var(--line);border-radius:12px}
.lesson-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 24px}.lesson-steps>button,.lesson-steps>div{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:#f4f6ee;border-radius:12px;padding:14px 8px;font-size:14px;font-weight:700;min-width:0}.lesson-steps>button.active{background:var(--green);color:white}.lesson-steps span{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;width:24px;height:24px;flex-shrink:0}.lesson-reading{display:grid;gap:18px;margin:20px 0}.memory-note{font-size:18px;line-height:1.9}.lesson-reading video{width:100%;background:#202821}.lesson-reading .study-card{min-height:0}@media(max-width:550px){.lesson-steps{gap:5px}.lesson-steps>button,.lesson-steps>div{flex-direction:column;font-size:12px;padding:10px 3px}.memory-note{font-size:16px}}@media print{body:has(.memory-notes) .sidebar,body:has(.memory-notes) .topbar,body:has(.memory-notes) .lesson-steps,body:has(.memory-notes) button,body:has(.memory-notes) .helptext,body:has(.memory-notes) .save-state{display:none!important}body:has(.memory-notes) .shell{display:block}body:has(.memory-notes) .workspace{padding:0}body:has(.memory-notes) .card{break-inside:avoid;border:0}}
.flash-face{min-height:230px;margin:22px 0;padding:24px;background:#f5f7f0;border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;justify-content:center}.flash-face.flash-answer{background:#e9f2dc}.flash-face .tag{align-self:flex-start}.flash-face .question{font-size:28px;line-height:1.65;font-weight:750;margin:22px 0;white-space:pre-wrap}.flash-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.flash-settings label{font-size:13px}.flash-settings input,.flash-settings select{width:100%;min-width:0}.flash-controls [role=status]{font-weight:700;color:var(--green)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.flash-main{position:fixed;inset:0;overflow:auto;background:var(--paper);z-index:10}
.flash-stage{min-height:100%;min-height:100dvh;display:flex;flex-direction:column;gap:18px;padding:24px clamp(18px,4vw,64px)}
.flash-stage-header{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.flash-stage-header p{margin:0}.flash-stage-header .flash-title{flex:1;min-width:0;text-align:center;color:var(--muted);font-size:15px}.flash-title strong,.flash-title span{display:block}.flash-title span{font-size:13px;margin-top:2px}
.flash-stage-body{display:flex;flex:1;min-height:44vh;background:var(--white);border:1px solid var(--line);border-radius:28px;overflow-wrap:anywhere}
.flash-stage-body .flash-face{width:100%;min-height:0;margin:0;border:0;border-radius:27px;padding:clamp(24px,4vw,64px);text-align:center;align-items:center;gap:14px}
.flash-stage-body .flash-face .tag{align-self:center;font-size:15px;padding:7px 14px}
.flash-stage-body .flash-face .question{max-width:1100px;font-size:clamp(28px,4.4vw,68px);line-height:1.5;font-weight:800;letter-spacing:-1px;margin:16px 0;word-break:keep-all;overflow-wrap:anywhere}
.flash-stage-body .flash-face .muted{max-width:1000px;font-size:clamp(17px,1.8vw,26px);line-height:1.7;margin:0}
.flash-stage-footer{width:100%;max-width:1100px;margin:0 auto}.flash-stage-footer .flash-controls>p{margin:0 0 12px;text-align:center}.flash-stage-footer .row{justify-content:center}
.flash-stage-footer details{margin:12px 0 0;background:#fff;padding:10px 16px}.flash-stage-footer summary{font-size:14px}.flash-stage-footer .flash-settings{margin:14px 0 0}.flash-stage-footer .flash-settings label{margin-bottom:0}
.flash-stage-footer .helptext,.flash-stage-footer>.small{margin:10px 0 0;text-align:center}
.flash-finish{flex:1;width:min(900px,100%);margin:auto;display:flex;flex-direction:column;justify-content:center;text-align:center;padding:clamp(22px,4vw,56px) 0;gap:12px}
.flash-finish h1,.flash-finish h2{font-size:clamp(30px,4.3vw,54px);line-height:1.35;margin:0}.flash-finish>p{color:var(--muted);font-size:18px;margin:0}
.flash-finish-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.flash-finish-actions button{min-height:110px;padding:24px;font-size:clamp(19px,2.4vw,26px);border-radius:20px;white-space:normal}
@media(max-width:600px){.flash-stage{padding:16px;gap:12px}.flash-stage-header{gap:8px}.flash-stage-header .flash-title{order:3;flex-basis:100%;text-align:left;font-size:13px}.flash-stage-body{min-height:38vh;border-radius:20px}.flash-stage-body .flash-face{padding:24px 18px;border-radius:19px}.flash-stage-body .flash-face .question{font-size:clamp(26px,6.6vw,38px);letter-spacing:-.5px}.flash-stage-footer .row button{flex:1;padding:10px 12px}.flash-stage-footer .flash-settings{gap:8px}.flash-finish-actions{gap:10px;margin:18px 0}.flash-finish-actions button{min-height:96px;padding:16px 10px;font-size:19px}.flash-finish>p{font-size:16px}}
@media(max-height:560px) and (min-width:601px){.flash-stage{padding-top:14px;padding-bottom:14px;gap:10px}.flash-stage-body{min-height:38vh}.flash-stage-body .flash-face{padding:18px 32px}.flash-stage-body .flash-face .question{font-size:clamp(28px,3.5vw,48px);margin:8px 0}.flash-finish-actions button{min-height:78px;padding:16px}}
.gym-logo{display:block;width:100%;height:auto;max-width:185px}.gym-logo-large{max-width:330px}
.gym-sidebar-brand{margin:0 3px 36px}.gym-sidebar-brand>span{display:block;margin:8px 0 0 12px;font-size:12px;font-weight:700;color:var(--muted)}
.gym-welcome{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:12px;padding:38px 34px 28px;border:1px solid #dce5ce;border-radius:28px;background:#edf3e1;overflow:hidden}
.gym-welcome-copy{position:relative;z-index:1;min-width:0}.gym-welcome h1{font-size:clamp(27px,2.5vw,40px);margin:15px 0 8px;letter-spacing:-1.3px;word-break:keep-all;line-height:1.4}
.gym-subjects{font-size:16px;font-weight:700;color:#60725c;margin:0 0 20px;letter-spacing:2px}
.gym-journey{display:flex;align-items:center;gap:9px;white-space:nowrap;margin:0;font-size:14px;font-weight:800}.gym-journey span{padding:6px 10px;border-radius:9px;background:#fff9ed}.gym-journey span:nth-of-type(2){background:#f8dfd2}.gym-journey span:nth-of-type(3){background:#e5ddf4}.gym-journey b{color:#7c8a70;font-weight:500}
.gym-cta{display:inline-flex;align-items:center;gap:20px;margin-top:24px;padding:11px 18px;background:var(--green);color:white;text-decoration:none;border-radius:12px;font-size:14px;font-weight:800;min-height:46px}.gym-cta:hover{background:#1b493a}.gym-cta span{font-size:20px;line-height:1}
.gym-mascots{margin:0;position:relative;min-width:0;text-align:center;isolation:isolate}.gym-mascots::before{content:"";position:absolute;inset:9% 5% 15%;border-radius:50%;background:#faf7e8;z-index:-1}.gym-mascots img{display:block;width:100%;height:auto}.gym-mascots figcaption{font-size:13px;color:#59715a;letter-spacing:.3px;font-weight:700;margin-top:4px}
.gym-form-kicker{font-size:13px;font-weight:700;letter-spacing:.3px;color:#6c7f62;margin:0 0 6px}.gym-today{scroll-margin-top:22px}.gym-today .section-title{margin-top:28px}.gym-progress{margin-top:24px}
.gym-today .lesson-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px 22px}.gym-today .lesson-card h3{word-break:keep-all}.gym-today .lesson-card .actions{grid-column:2;justify-content:flex-start}
.assignment-flow{grid-column:1/-1;width:100%}.assignment-flow>p{margin:0 0 10px}.assignment-flow .lesson-steps{margin:0}.assignment-flow .lesson-steps>div{font-size:13px;padding:12px 6px}.gym-today .lesson-card:has(.assignment-flow) .actions{grid-column:1/-1}.gym-today .lesson-card:has(.assignment-flow) .actions>button{min-width:0}
.gym-login{width:min(1160px,100%);min-height:100dvh;margin:auto;padding:48px 36px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);align-items:center;gap:48px}
.gym-welcome-login{grid-template-columns:1fr;text-align:center;padding:38px 30px 22px;gap:16px}.gym-welcome-login .gym-logo{margin:auto;max-width:370px}.gym-welcome-login h1{margin-top:12px;font-size:34px}.gym-welcome-login .gym-journey{justify-content:center}.gym-welcome-login .gym-subjects{margin-bottom:18px}.gym-welcome-login .gym-mascots{width:min(440px,100%);margin:auto}
.gym-login-panel{min-width:0}.gym-login-panel form{padding:34px;border-radius:24px;box-shadow:0 12px 36px #203f3507}.gym-login-panel h2{margin-bottom:28px;font-size:27px}.gym-login-panel form>button{width:100%;margin-top:4px}.gym-login-panel #login-error:empty{margin:0}.gym-login-note{font-size:12px;line-height:1.7;text-align:center;color:var(--muted);margin:18px 4px 0}.gym-loading{max-width:600px;margin:12vh auto;padding:28px}.gym-loading .gym-logo{margin-bottom:24px}
@media(min-width:761px) and (max-width:1180px){.gym-welcome{padding:28px 24px;grid-template-columns:1fr 1fr;gap:5px}.gym-welcome .gym-logo-large{max-width:270px}.gym-welcome h1{font-size:27px}.gym-journey{gap:6px;font-size:13px}.gym-journey span{padding:6px 8px}.gym-mascots{margin-right:-12px}.gym-welcome-login{grid-template-columns:1fr}.gym-welcome-login .gym-logo-large{max-width:330px}.gym-login{gap:30px;padding:36px 28px}.gym-login-panel form{padding:28px}}
@media(max-width:760px){.gym-sidebar-brand{display:flex;align-items:center;gap:14px;margin:0 0 12px}.gym-sidebar-brand .gym-logo{max-width:155px}.gym-sidebar-brand>span{margin:0;font-size:11px}.gym-student-shell .topbar{margin-bottom:18px}.gym-welcome{padding:26px 22px 20px;gap:8px;grid-template-columns:1fr 1fr}.gym-welcome h1{font-size:27px}.gym-logo-large{max-width:280px}.gym-journey{gap:6px;font-size:13px}.gym-journey span{padding:6px 8px}.gym-subjects{font-size:14px;letter-spacing:1.4px}.gym-mascots figcaption{font-size:12px}.gym-login{grid-template-columns:1fr;max-width:580px;padding:22px;gap:22px;min-height:0}.gym-welcome-login{grid-template-columns:1fr;padding:28px 24px 18px}.gym-welcome-login .gym-logo{max-width:300px}.gym-welcome-login h1{font-size:29px}.gym-welcome-login .gym-mascots{max-width:320px}.gym-login-panel form{padding:28px}.gym-login-panel h2{font-size:25px}.gym-login-note{margin-bottom:12px}}
@media(max-width:540px){.gym-welcome{grid-template-columns:1fr;gap:16px;padding:25px 22px 20px;text-align:center;border-radius:23px}.gym-welcome .gym-logo{margin:auto;max-width:275px}.gym-welcome h1{font-size:28px;margin:10px 0 6px}.gym-welcome .gym-subjects{margin-bottom:15px}.gym-journey{justify-content:center}.gym-cta{margin-top:18px}.gym-mascots{width:min(310px,100%);margin:auto}.gym-welcome-login .gym-mascots{max-width:280px}.gym-today .section-title{align-items:flex-end;gap:12px}.gym-today .section-title>span{font-size:12px}.gym-today h2{font-size:23px}.gym-progress{margin-top:20px}.gym-login{padding:18px}.gym-login-panel form{padding:25px}.gym-student-shell .topbar .save-state{font-size:12px}.gym-student-shell .topbar>.row{gap:8px}.gym-student-shell .topbar>.row>strong{font-size:14px}}
@media(max-width:760px){.gym-today .lesson-card{grid-template-columns:48px minmax(0,1fr);gap:14px}.gym-today .lesson-card .actions{grid-column:1/-1}.gym-today .lesson-card .actions>button{width:auto;min-width:0;flex:1;font-size:14px;padding:11px 12px}}
@media(max-width:540px){.gym-today .lesson-card:has(.assignment-flow) .actions>button{flex-basis:100%;font-size:15px}.assignment-flow .lesson-steps{gap:5px}.assignment-flow .lesson-steps>div{font-size:12px;padding:10px 3px}}

.content-edit-item textarea{min-height:100px;line-height:1.7}.content-edit-item [name=options]{min-height:170px}.content-answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.content-edit-item>.actions{margin-top:18px}.distribution-students{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:20px 0}.report-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:24px}.report-details pre{max-height:380px;overflow:auto}.report-details form{min-width:0}@media(max-width:760px){.content-answer-grid,.report-details{grid-template-columns:1fr}}
.completed-import [type=file]{max-width:100%}.completed-import a{overflow-wrap:anywhere}.html-lecture{min-width:0;margin:14px 0}.html-lecture h4{margin:0;overflow-wrap:anywhere}.lecture-frame{display:block;width:100%;height:680px;height:min(78dvh,840px);min-height:440px;border:1px solid var(--line);border-radius:12px;margin-top:12px;background:white}.html-lecture:fullscreen{background:var(--paper);padding:16px;margin:0;overflow:auto}.html-lecture:fullscreen .lecture-frame{height:calc(100dvh - 100px);min-height:0}.lecture-script pre{line-height:1.8}@media(max-width:600px){.lecture-frame{min-height:460px}.html-lecture>.row{flex-wrap:wrap;gap:8px}}


/* Paid member classroom: compact status, matching the sales home. */
.member-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px;border-radius:22px;background:linear-gradient(120deg,#1b2c70,#465ce1);color:white;margin-bottom:28px}.member-welcome .eyebrow{color:#d2f782;letter-spacing:2px}.member-welcome h1{font-size:28px;line-height:1.45;margin:8px 0 12px;letter-spacing:-1px}.member-welcome p{color:#e5eaff}.member-welcome .gym-cta{white-space:nowrap;background:#d3fa82;color:#1c2849;padding:15px 21px;border-radius:12px;font-weight:750}.member-passes{display:flex;gap:8px;flex-wrap:wrap}.member-passes span{font-size:12px;padding:8px 12px;background:#ffffff18;border:1px solid #ffffff38;border-radius:9px}.sidebar footer a{display:inline-block;color:inherit;font-size:13px;font-weight:650;padding:4px 0}@media(max-width:700px){.member-welcome{padding:24px;align-items:flex-start;flex-direction:column}.member-welcome h1{font-size:23px}}

/* Seller workspace keeps the existing editors and learning history intact. */
.seller-shell{--paper:#f6f8fc;--ink:#21314c;--green:#2451ef;--line:#e0e6f0;--muted:#7c8ca7;background:#f6f8fc;color:var(--ink)}
.seller-shell .sidebar{background:#fff;border-right-color:#e4e9f3;overflow-y:auto}.seller-sidebar-brand{margin:0 8px 24px}.seller-sidebar-brand .brand{margin:0;color:#263c5b;font-size:23px}.seller-sidebar-brand>span{display:block;margin:8px 0 0 48px;font-size:9px;font-weight:800;letter-spacing:2px;color:#8ea1c2}.seller-shell .nav{gap:3px}.seller-shell .nav button{font-size:13px;padding:10px 15px;min-height:40px}.seller-shell .nav button.active{background:#edf2ff;color:#2451ef}.seller-nav-link{display:flex;justify-content:space-between;align-items:center;text-decoration:none;padding:10px 15px;font-size:12px;color:#6980a5;border-radius:10px;white-space:nowrap}.seller-nav-link:hover{background:#f3f6fc}.seller-nav-link>span{font-size:15px;color:#9aaac4}.seller-shell .sidebar footer{font-size:11px}.seller-shell .sidebar footer .small{font-size:10px}.seller-shell .intro .eyebrow{font-size:10px;color:#6a83bc}.seller-shell .intro p{font-size:13px;line-height:1.9}.seller-shell .intro h1{font-size:31px}.seller-shell .topbar{margin-bottom:29px}.seller-shell .topbar .crumb{font-size:11px}.seller-shell .card{border-color:#e1e7f1}.seller-shell .tag{background:#edf2fc;color:#6d83a9}.seller-shell .tag.warning{background:#fff2de;color:#977448}.seller-shell button.primary{background:#2451ef;border-color:#2451ef}.seller-shell .notice{background:#edf3ff;color:#657da6}.seller-shell .save-state{color:#8193b3;font-size:10px}
.seller-overview{display:flex;justify-content:space-between;gap:28px;align-items:center;padding:32px 34px;border:1px solid #d7e4fc;border-radius:20px;background:linear-gradient(120deg,#234feb,#5274eb);color:#fff}.seller-overview-label{font-size:9px;letter-spacing:1.8px;font-weight:800;color:#b6c9ff}.seller-overview h2{font-size:27px;font-weight:850;letter-spacing:-1px;margin:11px 0}.seller-overview p{font-size:12px;color:#d2dcfb;line-height:1.9;margin:0 0 16px}.seller-primary-link{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;min-height:43px;border-radius:9px;background:#2451ef;color:#fff;text-decoration:none;font-size:12px;font-weight:750;line-height:1.5}.seller-primary-link:hover{background:#1a41d0}.seller-overview .seller-primary-link{background:#daf87f;color:#33562c}.seller-overview-counts{display:flex;gap:35px;padding:15px 0 15px 25px;border-left:1px solid #ffffff30;flex-shrink:0}.seller-overview-counts>div>span{display:block;font-size:10px;color:#bacdfa}.seller-overview-counts strong{display:block;font-size:39px;line-height:1.6;letter-spacing:-1.2px;font-weight:850}.seller-overview-counts small{font-size:12px;font-weight:500;letter-spacing:0;margin-left:4px;color:#baccf9}
.seller-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:23px 0}.seller-shortcut{display:block;background:#fff;border:1px solid #e1e7f2;border-radius:15px;padding:21px 18px;text-decoration:none;color:#354a6b;transition:transform .15s,border-color .15s}.seller-shortcut:hover{transform:translateY(-3px);border-color:#aebffa}.seller-shortcut>span{font-size:10px;color:#9badd1;font-weight:800;letter-spacing:1px}.seller-shortcut h3{font-size:16px;letter-spacing:-.5px;margin:14px 0 9px;display:flex;justify-content:space-between;gap:7px;align-items:center}.seller-shortcut h3 b{font-size:17px;font-weight:400;color:#98a9c7}.seller-shortcut p{font-size:10px;line-height:1.8;color:#8a9ab4;margin:0}.seller-workflow{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:17px 21px;border:1px solid #e0e7f4;border-radius:11px;background:#f0f4fc;font-size:10px;color:#899dbd}.seller-workflow>strong{color:#5d7395;font-size:11px;margin-right:7px}.seller-workflow>b{font-weight:400;color:#b7c4d8}.seller-workflow>a{color:#5279c6;text-decoration:none;font-weight:700}.seller-support{margin-top:27px;border-color:#e1e7f0;background:#fff;padding:20px}.seller-support>summary{font-size:12px;color:#7a8ea9}.seller-support[open]>summary{margin-bottom:25px}.seller-support .intro h1{font-size:22px}.seller-support .intro p{font-size:11px}.seller-support .intro .eyebrow{display:none}.seller-support .stat .score{font-size:25px}.seller-support .small{font-size:11px}.seller-support h2{font-size:19px}.seller-support h3{font-size:15px}
.seller-login{max-width:1000px;margin:10vh auto;display:grid;grid-template-columns:1fr 390px;gap:80px;align-items:center;padding:38px;color:#273d5d}.seller-login-intro>.gym-logo{max-width:230px;margin-bottom:30px}.seller-login-intro .eyebrow{color:#7a95c4;font-size:11px}.seller-login-intro h1{font-size:40px;line-height:1.4;letter-spacing:-1.5px;color:#284268}.seller-login-intro>p:not(.eyebrow){font-size:14px;color:#8699b5;line-height:1.9}.seller-login-intro>a{font-size:12px;color:#5279bd}.seller-login>.card{padding:33px;border-color:#d8e2f1}.seller-login>.card h2{font-size:24px;color:#365474}.seller-login>.card>button{width:100%;margin-top:10px;background:#2451ef;border-color:#2451ef}.seller-login label{color:#8293ac;font-size:12px}.seller-login input{border-color:#d7e0ee;font-size:14px;color:#345578}
@media(max-width:1150px){.seller-overview{padding:27px}.seller-overview-counts{gap:24px;padding-left:23px}.seller-overview h2{font-size:23px}.seller-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.seller-shortcut p{font-size:11px}.seller-shortcut h3{font-size:17px}.seller-login{gap:50px}}
@media(max-width:760px){.seller-shell .sidebar{overflow-y:visible}.seller-sidebar-brand{margin:0 0 14px;display:flex;align-items:center;justify-content:space-between}.seller-sidebar-brand .brand{margin:0;font-size:21px}.seller-sidebar-brand>span{margin:0;font-size:8px}.seller-shell .nav{gap:3px}.seller-shell .nav button{font-size:11px;padding:8px 11px}.seller-nav-link{font-size:11px;padding:8px 11px;gap:12px}.seller-shell .intro h1{font-size:26px}.seller-shell .intro p{font-size:11px}.seller-overview{padding:24px;display:block}.seller-overview h2{font-size:25px}.seller-overview p{font-size:11px}.seller-overview-counts{padding:19px 0 0;margin-top:21px;gap:45px;border-left:0;border-top:1px solid #ffffff25}.seller-overview-counts strong{font-size:32px}.seller-overview-counts>div>span{font-size:9px}.seller-shortcuts{gap:10px;margin:18px 0}.seller-shortcut{padding:19px 16px;border-radius:13px}.seller-shortcut h3{font-size:15px;margin:11px 0 8px}.seller-shortcut p{font-size:10px}.seller-workflow{gap:8px;padding:15px;font-size:9px}.seller-workflow>strong{width:100%;margin-bottom:3px}.seller-support{padding:16px}.seller-login{display:block;margin:5vh auto;max-width:470px;padding:25px}.seller-login-intro>.gym-logo{max-width:190px;margin-bottom:23px}.seller-login-intro h1{font-size:32px}.seller-login-intro>p:not(.eyebrow){font-size:12px}.seller-login>.card{margin-top:30px;padding:25px}.seller-login input{font-size:16px}}

.academy-controls{margin-top:16px}.academy-table table{min-width:860px}.academy-table th,.academy-table td{white-space:nowrap}

.card-prompt-visual{display:block;width:100%;max-width:900px;min-width:0;text-align:center;color:var(--muted);font-size:13px}.card-prompt-image{display:block;max-width:100%;width:100%;height:auto;max-height:50vh;object-fit:contain;margin:12px auto}.flash-stage-body .flash-face:has(.card-prompt-image) .question{font-size:clamp(22px,2.3vw,36px);margin:8px 0}

.summary-reading{font-size:16px;line-height:1.9;overflow-wrap:anywhere}.summary-reading p{white-space:pre-wrap;margin:14px 0}.summary-table{overflow:auto;margin:16px 0}.summary-table table{border-collapse:collapse;min-width:100%}.summary-table th,.summary-table td{border:1px solid #dce4ef;padding:10px;vertical-align:top;text-align:left}.summary-table th{background:#edf3fb}.summary-word{display:inline;padding:0 3px;min-height:0;font:inherit;font-weight:700;color:#244e78;background:#eaf2ff;border:0;border-bottom:1px solid #9bb5d5;border-radius:3px}.summary-word.is-masked span{visibility:hidden}.summary-word.is-masked{min-width:2em;background:#dce5f2}.summary-break{color:#6382a3;font-weight:700}

.question{white-space:pre-wrap}

.study-set-index,.study-stage-menu{width:100%;max-width:920px;margin:18px auto}.study-stage-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:16px 0;border-top:1px solid var(--line)}.study-stage-menu button{white-space:normal;min-height:48px}.study-stage-menu [aria-current=step]{border-color:var(--green);font-weight:800}.study-set-index select{width:100%;max-width:100%}.flash-stage>.study-set-index{padding:0 24px}.flash-stage-footer .study-stage-menu{margin-bottom:0}@media(max-width:550px){.study-stage-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.flash-stage>.study-set-index{padding:0 16px}}@media print{.study-set-index,.study-stage-menu{display:none!important}}

/* Shared reading colors across subjects and grades, including non-lecture stages. */
.html-lecture{padding:16px;border:1px solid #d5e3ec;border-radius:16px;background:#f6f9fc}.html-lecture h4{color:#21485e}.lecture-frame{border-color:#d3e3ec;background:#f3f7fa}
.summary-reading{font-size:18px;line-height:1.85;color:#19384d}.summary-reading h3,.summary-reading h4{color:#246e69}.summary-table th{background:#e8f4f3;color:#285b56}.summary-word{color:#19465f;background:#e7f1f8}.summary-break{color:#be721f}
.summary-reading :is(.summary-core,.summary-hanja,.summary-memo,.summary-trap){padding:16px 18px;border-radius:12px}.summary-reading .summary-core{background:#203f5a;color:#fff}.summary-core .summary-break{color:#ffba63}.summary-reading .summary-hanja{background:#fff7e5;border:1px solid #edd7a3}.summary-reading .summary-memo{background:#edf8ef;border:1px solid #bddfc8}.summary-reading .summary-trap{background:#fffaf5;border:2px solid #d16c40}
.study-stage-menu button{border-radius:10px;min-height:48px}.study-stage-menu button:nth-child(1){background:#eaf2fb;color:#234e70}.study-stage-menu button:nth-child(2){background:#fff6e4;color:#765619}.study-stage-menu button:nth-child(3){background:#edf7ed;color:#2b6747}.study-stage-menu button:nth-child(4){background:#f5effb;color:#684786}.study-stage-menu [aria-current=step]{box-shadow:inset 0 0 0 2px currentColor}
.flash-face .question{color:#203f5a}.flash-face .answer{color:#216d59}.study-set-index select{font-size:17px;min-height:46px}
@media(max-width:600px){.html-lecture{padding:10px}.summary-reading{font-size:17px}.lecture-frame{height:78dvh;min-height:500px}.study-stage-menu button{font-size:16px;line-height:1.5}.summary-table th,.summary-table td{padding:10px}}

.summary-reading :is(.summary-hanja,.summary-memo){background:transparent;border:0;border-top:1px solid #dce4e8;border-radius:0;padding:9px 3px;margin:4px 0;color:#526672;font-size:14px;line-height:1.65}
