:root{--bg:#fff;--bg2:#f7f8fa;--bg3:#f0f1f3;--line:#e5e7eb;--line2:#eff1f3;--ink:#262626;--ink2:#595959;--ink3:#8c8c8c;--easy:#00b8a3;--medium:#ffb800;--hard:#ff375f;--extra:#8a5cf6;--brand:#ffa116;--green:#2cbb5d;--red:#ef4743;--blue:#1865f2;--m5:#7854f7;--m4:#1865f2;--m3:#5fa0ff;--m2:#ffb100;--m1:#d6d8da;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;--mono:ui-monospace,Menlo,Consolas,monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.ico{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.nav{border-bottom:1px solid var(--line);height:50px;top:env(safe-area-inset-top,0px);background:var(--bg);z-index:5;padding:0 20px;padding-top:env(safe-area-inset-top,0px);align-items:center;gap:4px;display:flex;position:sticky}.nav .logo{align-items:center;gap:8px;margin-right:18px;font-size:15px;font-weight:600;display:flex}.logo-img{object-fit:cover;border-radius:50%;flex:none;display:inline-block}.nav a.l{color:var(--ink2);border-radius:6px;padding:6px 10px;font-size:14px}.nav a.l:hover{background:var(--bg3);color:var(--ink)}.nav a.l.on{color:var(--ink);font-weight:500;position:relative}.nav a.l.on:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-11px;left:10px;right:10px}.nav a.l.off{color:var(--ink3);cursor:default;pointer-events:none}.nav .sp{flex:1}.nav .streak{color:var(--brand);border-radius:6px;align-items:center;gap:4px;padding:6px 10px;font-size:13px;font-weight:600;display:flex}.nav .av{white-space:nowrap;color:#1e3a8a;background:#dbeafe;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:6px;font-size:12px;font-weight:600;display:grid}.page{max-width:1200px;margin:0 auto;padding:20px 20px 60px}.hidden{display:none!important}.ps{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.chip{background:var(--bg3);color:var(--ink2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;display:inline-flex}.chip:hover{background:#e6e8eb}.chip.on{background:var(--ink);color:#fff}.chip .n{color:var(--ink3);font-size:12px}.chip.on .n{color:#cfcfcf}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.sel:has(select){position:relative}.sel select{appearance:none;background:var(--bg3);font:inherit;color:var(--ink);cursor:pointer;border:0;border-radius:8px;padding:7px 28px 7px 12px}.sel:has(select):after{content:"";border-right:1.6px solid var(--ink2);border-bottom:1.6px solid var(--ink2);pointer-events:none;width:6px;height:6px;position:absolute;top:13px;right:11px;transform:rotate(45deg)}.search{background:var(--bg3);border-radius:8px;flex:1;align-items:center;gap:8px;min-width:140px;max-width:320px;padding:0 10px;display:flex}.search input{font:inherit;width:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:7px 0}.pick{background:var(--green);color:#fff;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:7px 12px;font-size:13px;font-weight:500;display:inline-flex}table.pt{border-collapse:collapse;width:100%;font-size:14px}table.pt th{text-align:left;white-space:nowrap;color:var(--ink3);border-bottom:1px solid var(--line);padding:8px 10px;font-size:13px;font-weight:500}table.pt td{border-bottom:1px solid var(--line2);vertical-align:middle;padding:10px}table.pt tr.r{cursor:pointer}table.pt tbody tr.r:nth-child(odd) td{background:var(--bg2)}table.pt tr.r:hover td{background:#eef0f3}table.pt td.st{text-align:center;width:40px}.st .ok{color:var(--green)}.st .half{color:var(--medium)}.st .no{color:var(--line)}table.pt td.t a{color:var(--ink);font-weight:400}table.pt td.t a:hover{color:var(--blue)}table.pt td.t .sub{color:var(--ink3);margin-top:1px;font-size:12px}.diff{font-size:13px;font-weight:500}.d-하{color:var(--easy)}.d-중하{color:var(--medium)}.d-상{color:var(--hard)}.d-추가{color:var(--extra)}.tag{background:var(--bg3);color:var(--ink2);white-space:nowrap;border-radius:999px;margin:1px 2px 1px 0;padding:1px 8px;font-size:12px;display:inline-block}.tag.g{color:#9a5b00;background:#fff3e0}.pager{color:var(--ink2);justify-content:flex-end;align-items:center;gap:6px;margin-top:12px;font-size:13px;display:flex}.pager button{background:var(--bg3);border-radius:6px;padding:5px 9px}.pager button.on{background:var(--ink);color:#fff}.pager button[disabled]{opacity:.4;pointer-events:none}.card{border:1px solid var(--line);background:var(--bg);border-radius:12px;margin-bottom:16px;padding:16px}.card h3{margin:0 0 10px;font-size:14px;font-weight:600}.ring{align-items:center;gap:16px;display:flex}.ring svg{width:96px;height:96px}.ring .big{font-size:24px;font-weight:600;line-height:1}.ring .big small{color:var(--ink3);font-size:13px;font-weight:400}.dbars{flex:1;gap:8px;display:grid}.dbar{font-size:12px}.dbar .l{justify-content:space-between;margin-bottom:3px;display:flex}.dbar .b{background:var(--bg3);border-radius:3px;height:6px;overflow:hidden}.dbar .b i{background:var(--c);border-radius:3px;height:100%;display:block}.cal{grid-template-columns:repeat(14,1fr);gap:3px;margin-top:6px;display:grid}.cal i{aspect-ratio:1;background:var(--bg3);border-radius:2px}.cal i.a1{background:#c7f0d2}.cal i.a2{background:#7fd99a}.cal i.a3{background:var(--green)}.daily{background:#fff8ec;border:1px solid #ffe2b3;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.daily b{font-size:13px;display:block}.daily .go{background:var(--ink);color:#fff;border-radius:6px;margin-left:auto;padding:5px 10px;font-size:12px}:root{--split-left:40%;--split-mid:40%;--split-right:20%;--single-width:800px;--pane-head:44px}.prob{height:calc(100dvh - 50px);min-height:560px}.split{grid-template-columns:minmax(0,var(--split-left)) minmax(0,var(--split-mid)) minmax(0,var(--split-right));grid-template-rows:minmax(0,1fr);gap:0;display:grid}.single{max-width:var(--single-width);border-left:1px solid var(--line);border-right:1px solid var(--line);margin:0 auto}.single>.pane{height:100%}.pane{border-right:1px solid var(--line);flex-direction:column;min-width:0;min-height:0;display:flex}.pane:last-child{border-right:0}.pane .tabs{height:var(--pane-head);border-bottom:1px solid var(--line);background:var(--bg2);white-space:nowrap;scrollbar-width:none;flex:none;align-items:center;gap:2px;padding:0 8px;display:flex;overflow-x:auto}.pane .tabs .acts{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.pane .tabs .lab{color:var(--ink);align-items:center;gap:6px;padding:0 6px;font-size:13px;font-weight:500;display:inline-flex}.single .tabs .acts .lab{color:var(--ink3);border-left:1px solid var(--line);margin-left:6px;padding-left:10px;font-weight:400}.pane .tabs .timer{color:var(--ink2);font-variant-numeric:tabular-nums;font-size:12.5px}.pane .tabs .btn{white-space:nowrap;padding:5px 10px}.single .ans{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.thoughts .tb{margin-bottom:10px}.pane .tabs button{color:var(--ink2);border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;display:inline-flex}.pane .tabs button.on{background:var(--bg);color:var(--ink);font-weight:500;box-shadow:0 1px 2px #00000014}.pane .tabs .sp{flex:1}.pane .body{flex:1;min-height:0;padding:18px 20px;overflow:auto}.ptitle{align-items:center;gap:10px;margin:0 0 14px;font-size:20px;font-weight:600;display:flex}.ptitle .st{font-size:16px}.passage{background:var(--bg2);border:1px solid var(--line2);border-radius:10px;max-width:72ch;margin-bottom:14px;padding:14px 16px;font-size:14.5px;line-height:1.75}.passage p{margin:0 0 10px}.passage p:last-child{margin:0}.passage table.hdr{border-collapse:collapse;margin-bottom:10px;font-size:13px}.passage table.hdr th{text-align:left;color:var(--ink3);padding:1px 10px 1px 0;font-weight:500}.script{white-space:pre-wrap;background:var(--bg2);border:1px solid var(--line2);border-radius:10px;margin-bottom:12px;padding:12px 14px;font-size:14px;line-height:1.6}.q{border-top:1px solid var(--line2);padding:12px 0}.q:first-child{border-top:0;padding-top:0}.q .qt{align-items:baseline;gap:8px;margin-bottom:8px;font-weight:500;display:flex}.q .qt .qn{color:var(--ink3);font-variant-numeric:tabular-nums}.q .qt .mk{white-space:nowrap;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:12px}.mk.ok{color:#1b7a3d;background:#e6f7ec}.mk.no{color:#b42318;background:#fdeaea}.opts{gap:6px;display:grid}.opt{border:1px solid var(--line);text-align:left;box-sizing:border-box;width:100%;font:inherit;cursor:pointer;background:#fff;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.opt:hover{background:var(--bg2);border-color:#bfc3c9}.opt .l{background:var(--bg3);width:22px;height:22px;color:var(--ink2);border-radius:6px;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.opt.pick{border-color:var(--ink);background:var(--bg2)}.opt.pick .l{background:var(--ink);color:#fff}.opt.correct{border-color:var(--green);background:#f0faf3}.opt.correct .l{background:var(--green);color:#fff}.opt.wrong{border-color:var(--red);background:#fdf2f2}.opt.wrong .l{background:var(--red);color:#fff}.opt .lbl{white-space:nowrap;margin-left:auto;font-size:12px;font-weight:500}.opt.correct .lbl{color:#1b7a3d}.opt.wrong .lbl{color:#b42318}.blank{font:500 14px var(--mono);width:var(--w,4ch);border:1px solid var(--line);color:var(--ink);text-align:center;background:#fff;border-radius:4px;padding:1px 2px;display:inline-block}.blank.ok{border-color:var(--green);color:#1b7a3d;background:#f0faf3}.blank.no{border-color:var(--red);color:#b42318;background:#fdf2f2}.blank:focus{border-color:var(--ink3);outline:none}.kw{background:#fff3c4}.mark{color:var(--blue);font-weight:600}.chipsw{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.chipw{border:1px solid var(--line);font-family:var(--mono);cursor:pointer;background:#fff;border-radius:6px;padding:5px 10px;font-size:13px}.chipw.used{opacity:.3;pointer-events:none}.sentline{font-family:var(--mono);border:1px solid var(--line);background:var(--bg2);border-radius:6px;min-height:36px;padding:8px 10px;font-size:14px}.sentline .fixed{color:var(--ink3)}textarea{border:1px solid var(--line);width:100%;min-height:220px;font:14px/1.6 var(--font);color:var(--ink);resize:vertical;background:#fff;border-radius:8px;padding:12px}.sample{white-space:pre-wrap;background:#f0faf3;border:1px solid #bfe5cc;border-radius:8px;margin-top:8px;padding:12px 14px;font-size:13.5px;line-height:1.6}details>summary{cursor:pointer;color:var(--blue);font-size:13px;font-weight:500}.note{color:var(--ink3);font-size:12.5px}.player{border:1px solid var(--line);color:var(--ink2);background:#fff;border-radius:20px;align-items:center;gap:10px;margin:0 0 10px;padding:5px 12px 5px 6px;font-size:12.5px;display:inline-flex}.player .pb{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;display:grid}.player .track{background:#ddd;border-radius:2px;width:140px;height:4px}.console{border-top:1px solid var(--line);background:var(--bg2);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.console .res{font-size:14px;font-weight:600}.console .res.ok{color:var(--green)}.console .res.no{color:var(--red)}.console .sub{color:var(--ink2);font-size:12.5px}.console .sp{flex:1}.btn{background:var(--bg3);color:var(--ink);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500}.btn:hover{background:#e6e8eb}.btn.p{background:var(--green);color:#fff}.btn.p:hover{background:#27a854}.btn.d{background:var(--ink);color:#fff}.btn[disabled]{opacity:.45;pointer-events:none}table.sub{border-collapse:collapse;width:100%;font-size:13.5px}table.sub th{text-align:left;color:var(--ink3);border-bottom:1px solid var(--line);padding:6px 8px;font-weight:500}table.sub td{border-bottom:1px solid var(--line2);padding:8px}table.sub .ok{color:var(--green);font-weight:500}.table.sub .no{color:var(--red)}table.sub td.no{color:var(--red);font-weight:500}.kh{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:28px;display:grid}.kh .side{position:sticky;top:70px}.kh .side h4{color:var(--ink3);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:12px;font-weight:600}.kh .side a{color:var(--ink2);border-radius:8px;padding:7px 10px;font-size:13.5px;display:block}.kh .side a:hover{background:var(--bg3)}.kh .side a.on{color:var(--blue);background:#e8f0fe;font-weight:500}.kh .side a.kbtn{color:#fff;background:var(--blue)}.khead{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;display:flex}.khead h1{margin:0;font-size:24px;font-weight:600}.khead .mp{text-align:right;margin-left:auto}.khead .mp b{font-size:20px;display:block}.khead .mp span{color:var(--ink3);font-size:12px}.legend{color:var(--ink2);flex-wrap:wrap;gap:14px;margin:0 0 16px;font-size:12.5px;display:flex}.legend i{vertical-align:-1px;border-radius:2px;width:12px;height:12px;margin-right:5px;display:inline-block}.area{border:1px solid var(--line);border-radius:12px;margin-bottom:16px;overflow:hidden}.area .ah{background:var(--bg2);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 16px;display:flex}.area .ah h3{margin:0;font-size:15px;font-weight:600}.area .ah .mb{gap:2px;width:120px;margin-left:auto;display:flex}.area .ah .mb i{background:var(--m1);border-radius:2px;flex:1;height:8px}.area .ah .pc{color:var(--ink2);text-align:right;width:92px;font-size:12.5px}.skill{border-bottom:1px solid var(--line2);align-items:center;gap:14px;padding:12px 16px;display:flex}.skill:last-child{border-bottom:0}.skill .mi{background:var(--m1);border-radius:3px;flex:none;gap:1px;width:40px;height:10px;display:flex;overflow:hidden}.skill .mi i,.mi i{background:var(--c);flex:1}.skill .t{flex:1;min-width:0}.skill .t a{font-weight:500}.skill .t a:hover{color:var(--blue)}.skill .t .sub{color:var(--ink3);font-size:12px}.skill .lv{text-align:right;width:84px;font-size:12.5px;font-weight:500}.skill .btn{padding:5px 12px}.lv-5{color:var(--m5)}.lv-4{color:var(--m4)}.lv-3{color:var(--m3)}.lv-2{color:#b07600}.lv-1{color:var(--ink3)}.kbtn{background:var(--blue);color:#fff;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-weight:500;display:inline-flex}.ud{max-width:860px}.ud .steps{gap:8px;margin:14px 0;display:grid}.ud .step{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.ud .step .n{background:var(--bg3);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-weight:600;display:grid}.ud .step.done .n{background:var(--m4);color:#fff}.ud .step b{display:block}.err{color:#b42318;text-underline-offset:3px;-webkit-text-decoration:underline wavy #f3a2a2;text-decoration:underline wavy #f3a2a2}.fix{color:#1b7a3d}.cmp{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:10px 0;font-size:13.5px;display:grid}.cmp div{background:var(--bg2);border:1px solid var(--line2);border-radius:8px;padding:8px 10px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:1px solid var(--ink3);outline-offset:1px}input:focus,textarea:focus,select:focus{outline:none}@media (max-width:900px){.ps{grid-template-columns:1fr}.prob{height:auto;min-height:0}.split{grid-template-columns:1fr}.single{border:0}.pane .body{overflow:visible}.pane{border-right:0;border-bottom:1px solid var(--line)}.kh{grid-template-columns:1fr}.kh .side{flex-wrap:wrap;gap:6px;display:flex;position:static}.nav .hidephone{display:none}.page{padding:14px 16px 50px}}.chips.lc .chip{color:var(--ink);background:#000a200d;gap:6px;padding:6px 12px;font-size:14px;line-height:20px}.chips.lc .chip .ico{stroke-width:1.8px;width:16px;height:16px;color:var(--ink2)}.chips.lc .chip:hover{background:#000a2017}.chips.lc .chip.on{color:#fff;background:#262626}.chips.lc .chip.on .ico{color:#fff}.shell{align-items:flex-start;display:flex}.lsb{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;flex:none;gap:2px;width:220px;height:calc(100vh - 50px);padding:12px 10px;display:flex;position:sticky;top:50px;overflow:auto}.lsb a{color:var(--ink2);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;display:flex}.lsb a:hover{background:var(--bg3);color:var(--ink)}.lsb a.on{background:var(--bg3);color:var(--ink);font-weight:500}.lsb a .ico{stroke-width:1.8px;width:18px;height:18px}.lsb a .n{color:var(--ink3);margin-left:auto;font-size:12px}.lsb .sec{color:var(--ink3);letter-spacing:.04em;text-transform:uppercase;padding:12px 10px 4px;font-size:11px;font-weight:600}.lsb hr{border:0;border-top:1px solid var(--line);margin:8px 4px}.lsb .sp{flex:1}.lsb .col{color:var(--ink3);align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.shell>#root{flex:1;min-width:0}@media (max-width:900px){.lsb{display:none}}table.pt td.ck,table.pt th.ck{text-align:center;width:34px;padding-left:6px;padding-right:0}table.pt td.ck input,table.pt th.ck input{cursor:pointer;width:15px;height:15px;accent-color:var(--ink);vertical-align:middle;margin:0}.actbar{z-index:20;background:var(--ink);color:#fff;border-radius:12px;align-items:center;gap:10px;padding:10px 10px 10px 16px;font-size:13.5px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}.actbar .btn{color:#fff;background:#ffffff24}.actbar .btn:hover{background:#ffffff38}.actbar .btn.p{background:var(--green)}.subrow{flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 12px;display:flex}.seg{background:var(--bg3);border-radius:8px;padding:2px;display:inline-flex}.seg button{color:var(--ink2);border-radius:6px;padding:5px 10px;font-size:13px}.seg button.on{color:var(--ink);background:#fff;box-shadow:0 1px 2px #00000014}.chips.cat{margin:0}.chips.cat .chip{padding:4px 10px;font-size:12.5px}.chips.cat .chip.on{color:var(--blue);background:#e8f0fe}.chips.part .chip.on{background:var(--blue);color:#fff}.subrow .lbl{color:var(--ink3);font-size:12px}.qrow{grid-template-columns:minmax(0,1fr) 170px;align-items:start;gap:12px;display:grid}.tb .lbl{color:var(--ink3);align-items:center;gap:4px;margin:0 0 3px;font-size:11px;display:flex}.tb textarea{resize:vertical;background:#fffbe6;border-color:#f0dd8e;min-height:96px;padding:8px;font-size:12.5px;line-height:1.5}.tb textarea.empty[readonly]{background:var(--bg2);border-color:var(--line2)}[data-hl]{cursor:text;position:relative}mark.hl,mark.sv{color:inherit;line-height:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;margin:0;padding:0;display:inline}mark.hl{background:#fff176}mark.hl:hover{background:#ffd54f}mark.sv{text-decoration:underline;-webkit-text-decoration-color:var(--green);text-decoration-color:var(--green);text-underline-offset:3px;text-decoration-skip-ink:none;text-decoration-thickness:2px}mark.sv:hover{background:#eaf7ee}@keyframes hlpop{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.hlpop{z-index:3;border:1px solid var(--line);cursor:default;-webkit-user-select:none;user-select:none;background:#fff;border-radius:7px;gap:2px;padding:1px;animation:.12s ease-out hlpop;display:inline-flex;position:absolute;box-shadow:0 1px 4px #0000001f}.hlpop button{width:22px;height:22px;color:var(--ink2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.hlpop button:hover{background:var(--bg3);color:var(--ink)}.hlpop button.bm.on{color:var(--green)}.hlpop .ico{width:14px;height:14px}.sv-end{width:10px;height:10px;color:var(--green);pointer-events:none;position:absolute}.sv-end .ico{width:10px;height:10px;display:block}.hlhint{color:var(--ink3);align-items:center;gap:6px;margin:-6px 0 12px;font-size:12px;display:flex}.hlhint i{background:#fff176;border-radius:2px;width:12px;height:12px;display:inline-block}.opt .tx{flex:1;min-width:0}.opt.dis{cursor:default}.opt:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.tm{color:var(--ink3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11.5px}.q .qt .tm{margin-left:auto}.q .qt .mk+.tm{margin-left:8px}.sess{color:var(--ink2);align-items:center;gap:8px;padding:0 6px;font-size:13px;display:flex}.sess b{color:var(--ink)}.given{background:var(--bg2);border:1px dashed var(--line);white-space:pre-wrap;color:var(--ink2);border-radius:8px;margin-bottom:8px;padding:10px 12px;font-size:13.5px;line-height:1.6}.given .lbl{color:var(--ink3);margin-bottom:4px;font-size:11px;font-weight:600;display:block}@media (max-width:900px){.qrow{grid-template-columns:1fr}}.shell.noside .lsb{display:none}.qrow{grid-template-columns:minmax(0,1fr) 300px}.tb{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:0 0 10px}.tb .lbl{color:var(--ink2);margin:0 0 8px;font-size:12.5px;font-weight:600}.tb textarea{text-align:left;width:100%;min-height:120px;color:var(--ink);resize:vertical;background:0 0;border:0;border-radius:0;margin:0;padding:0;font-size:13.5px;line-height:1.55;display:block}.tb textarea:focus,.tb textarea[readonly],.tb textarea.empty[readonly]{box-shadow:none;background:0 0;border:0;outline:none}.q .tb{margin-top:10px}.empty{border:1px dashed var(--line);text-align:center;color:var(--ink2);border-radius:12px;padding:48px 20px}.empty b{color:var(--ink);margin-bottom:6px;font-size:16px;display:block}.ovl{z-index:50;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 20px 60px #0000004d}.modal .mh{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:18px 24px;display:flex}.modal .mh h2{margin:0;font-size:18px;font-weight:600}.modal .mh .x{color:var(--ink3);border-radius:6px;margin-left:auto;padding:4px 8px;font-size:20px}.modal .mh .x:hover{background:var(--bg3)}.modal .mb{gap:22px;padding:18px 24px;display:grid}.modal h4{color:var(--ink2);align-items:baseline;gap:8px;margin:0 0 10px;font-size:13px;font-weight:600;display:flex}.modal h4 .note{font-weight:400}.bmk{color:var(--ink3);border-radius:8px;flex:none;place-items:center;display:inline-grid}.bmk:hover{background:var(--bg3);color:var(--ink)}.bmk.on{color:var(--brand)}.bmk .ico{width:16px;height:16px}.bmk.on .ico path{fill:currentColor}.ptitle .ptbm{margin-left:auto}.ptitle .ptbm .ico{width:18px;height:18px}table.pt td.bm{width:34px;padding:6px 2px 6px 6px}table.pt td.t .sub.retry{color:var(--hard)}.onlysaved{border:1.5px solid var(--line);text-align:left;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.onlysaved.on{border-color:var(--brand);background:#fff8ec}.onlysaved .bmk{width:26px;height:26px}.onlysaved .t{flex-direction:column;min-width:0;line-height:1.35;display:flex}.onlysaved .t b{font-weight:500}.onlysaved .t small{color:var(--ink3);font-size:12px}.onlysaved .sw{background:#d2d5da;border-radius:999px;flex:none;width:36px;height:20px;margin-left:auto;transition:background .15s;position:relative}.onlysaved .sw:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:2px;left:2px}.onlysaved.on .sw{background:var(--brand)}.onlysaved.on .sw:after{left:18px}.lvchips{flex-wrap:wrap;gap:8px;display:flex}.lvchip{border:1.5px solid var(--line);color:var(--ink2);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:7px 12px 7px 10px;font-size:13.5px;display:inline-flex}.lvchip:hover{border-color:#bfc3c9}.lvchip.on{border-color:var(--ink);color:var(--ink);background:var(--bg2)}.lvchip i{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.lvchip .n{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12.5px}.tcards{border:1px solid var(--line);border-radius:12px;overflow:hidden}.tcard{text-align:left;border-top:1px solid var(--line2);align-items:center;gap:12px;width:100%;padding:11px 14px;display:flex}.tcard:first-child{border-top:0}.tcard:hover,.tcard.on{background:var(--bg2)}.tcard .ck{color:#fff;background:#fff;border:1.5px solid #c5c8cd;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;display:grid}.tcard .ck svg{width:12px;height:12px;display:none}.tcard.on .ck{background:var(--green);border-color:var(--green)}.tcard.on .ck svg{display:block}.tcard .t{flex-direction:column;flex:1;min-width:0;display:flex}.tcard .t b{font-size:14px;font-weight:500}.tcard small{color:var(--ink3);font-size:12px}.tcard .r{color:var(--ink3);font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;flex:none;align-items:flex-end;font-size:13px;display:flex}.tcard .r b{color:var(--ink);font-weight:500}.steps3{align-items:center;gap:8px;display:flex}.stepb{border:1.5px solid var(--line);text-align:center;border-radius:10px;flex:1;padding:12px;font-weight:500}.stepb .note{margin-top:2px;font-weight:400;display:block}.stepb.on{border-color:var(--blue);color:var(--blue);background:#e8f0fe}.steps3 .arr{color:var(--ink3)}.counts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.counts .seg button{padding:7px 14px;font-size:14px}.counts input{border:1px solid var(--line);width:70px;font:inherit;border-radius:8px;padding:7px 10px}.mwarn{color:#9a5b00;background:#fdf1dc;border-radius:8px;padding:10px 12px;font-size:13px}.msum{color:var(--ink2);flex-wrap:wrap;align-items:center;gap:10px;min-width:0;margin-right:auto;font-size:13.5px;display:flex}.msum b{color:var(--ink);font-weight:600}.msum>span+span:before{content:"·";color:var(--ink3);margin-right:10px}.msum .seq{font-family:var(--mono);font-size:13px}.modal .mf{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding:14px 24px;display:flex}.modal .mf .btn{padding:10px 18px;font-size:14px}@media (max-width:900px){.qrow{grid-template-columns:1fr}}.d-혼합{color:var(--ink3)}.lsb.collapsed{width:56px;padding:12px 6px}.lsb.collapsed a{justify-content:center;padding:8px 0}.lsb.collapsed a .n,.lsb.collapsed .sec,.lsb.collapsed .col span,.lsb.collapsed a .lbl{display:none}.lsb .col{cursor:pointer;border-radius:8px}.lsb .col:hover{background:var(--bg3)}.nav .av{cursor:pointer}.login{color:#171717;background:#fff;grid-template-columns:minmax(0,39%) minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.login .lp{border-right:1px solid #e6e6e6;flex-direction:column;min-height:0;padding:clamp(20px,4vh,44px) 0 clamp(16px,3vh,32px);display:flex;position:relative;overflow:hidden}.login .brand{letter-spacing:-.01em;align-items:center;gap:10px;margin:0 44px;font-size:24px;font-weight:600;display:flex}.login form{width:min(533px,100% - 88px);margin:clamp(28px,11vh,120px) auto 0;display:grid}.login h1{letter-spacing:-.02em;margin:0;font-size:34px;font-weight:500;line-height:1.1}.login .sub{color:#525252;margin:12px 0 0;font-size:16px}.login label{color:#171717;margin:0 0 8px;font-size:15px}.login form>label:first-of-type{margin-top:clamp(20px,5vh,56px)}.login .row{justify-content:space-between;align-items:center;margin-top:22px;display:flex}.login .row label{margin:0}.login .row .link{color:#525252;cursor:pointer;font-size:14px;font:inherit;background:0 0;border:0;padding:0;text-decoration:none}.login .row .link:hover{color:#171717;text-decoration:underline}.login input{height:46px;font:inherit;color:#171717;box-sizing:border-box;background:#fff;border:1px solid #e0e0e0;border-radius:6px;width:100%;padding:0 14px;font-size:15px;box-shadow:0 1px 2px #00000008}.login input::placeholder{color:#9b9b9b}.login input:focus{border-color:#9b9b9b;outline:none}.login .pw{margin-top:8px;position:relative}.login .pw input{padding-right:50px}.login .pw .eye{cursor:pointer;color:#525252;background:#fff;border:1px solid #e0e0e0;border-radius:6px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:7px;right:7px}.login .pw .eye:hover{background:#f5f5f5}.login .pw .eye svg{width:16px;height:16px}.login .err{color:var(--red);margin-top:10px;font-size:14px}.login .note{color:#525252;margin-top:10px;font-size:14px}.login .signin{background:var(--green);color:#fff;height:50px;font:inherit;cursor:pointer;border:0;border-radius:6px;margin-top:clamp(20px,4vh,42px);font-size:16px;font-weight:600;box-shadow:0 1px 2px #0000000f}.login .signin:hover{filter:brightness(.94)}.login .signin:disabled{opacity:.6;cursor:default}.login .foot{text-align:center;color:#525252;margin:clamp(20px,5vh,56px) 0 0;font-size:15px}.login .foot span{color:#171717;text-underline-offset:3px;text-decoration:underline}.login .terms{text-align:center;color:#525252;margin:auto 44px 0;padding-top:clamp(16px,3vh,40px);font-size:13px;line-height:1.5}.login .rp{justify-content:center;align-items:center;padding:0 60px;display:flex}.login .quote{color:#171717;width:max-content;max-width:min(650px,100%);position:relative}.login .quote .lq-mark{color:#e2e2e2;letter-spacing:-.06em;-webkit-user-select:none;user-select:none;font-size:150px;font-style:italic;font-weight:500;line-height:1;position:absolute;top:-46px;left:-44px}.login .quote .lq-title{letter-spacing:-.01em;margin:0 0 20px;font-size:36px;font-weight:400;line-height:1.3;position:relative}.login .quote .lq-body{color:#525252;margin:0 0 14px;font-size:20px;line-height:1.65;display:grid}.login .quote .lq-ask{color:#171717;margin:0;font-size:20px}.ptitle .st .ico{width:18px;height:18px}.st .ico{vertical-align:middle;width:18px;height:18px}.mi{background:var(--m1);border-radius:3px;gap:1px;width:40px;height:10px;display:inline-flex;overflow:hidden}.opt.pick{color:var(--ink)}.console .btn{white-space:nowrap}.console .sub{min-width:0}.ctw-head{color:var(--ink);margin:0 0 10px;font-size:17px;font-weight:700}.passage.ctw-para{max-width:none;font-size:17px;line-height:23px}.blank.ctw-blank{vertical-align:baseline;background:var(--bg3);width:auto;height:auto;font:inherit;color:var(--ink);text-align:left;border:0;border-radius:0;align-items:baseline;padding:0 0 2px;display:inline-flex}.ctw-blank .ctw-cell{box-sizing:border-box;background:linear-gradient(var(--ink3),var(--ink3)) no-repeat 0 100%/11.75px 1px;width:15.17px;height:23px;font:inherit;color:inherit;text-align:center;caret-color:var(--ink);vertical-align:baseline;border:0;border-radius:0;outline:none;margin:0;padding:0;line-height:23px;display:inline-block}.ctw-blank .ctw-cell:focus{background-color:var(--line);background-image:linear-gradient(var(--ink),var(--ink));background-size:11.75px 2px;outline:none}.blank.ctw-blank:focus,.blank.ctw-blank:focus-within{outline:none}.blank.ctw-blank.ok{color:#1b7a3d;background:#f0faf3}.blank.ctw-blank.ok .ctw-cell{background-image:linear-gradient(var(--green),var(--green))}.blank.ctw-blank.no{color:#b42318;cursor:help;background:#fdf2f2}.blank.ctw-blank.no .ctw-cell{background-image:linear-gradient(var(--red),var(--red))}.player .pb{cursor:pointer;border:0;flex:none}.player .pb:disabled{background:var(--ink3);cursor:default}.player .track{cursor:pointer;position:relative;overflow:hidden}.player .track .fill{background:var(--ink);border-radius:2px;position:absolute;top:0;bottom:0;left:0}.player .time{font-variant-numeric:tabular-nums;white-space:nowrap}.player.on{border-color:var(--ink3)}.player.none{color:var(--ink3);background:var(--bg2)}.q .qt .player{margin:0}.lhead{color:var(--ink);margin:0 0 12px;font-size:15px;font-weight:600}.lgroup{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 14px;display:flex}.lgroup .player,.lwait{margin:0}.opts.radio{gap:4px;width:fit-content;max-width:100%}.opts.radio .opt{background:#fff;border:2px solid #0000;border-radius:6px;align-items:flex-start;gap:12px;padding:6px 10px 6px 6px;font-size:15px;line-height:20px}.opts.radio .opt:hover{background:var(--bg2);border-color:#0000}.opts.radio .rd{border:1px solid var(--ink);box-sizing:border-box;background:#fff;border-radius:50%;flex:none;width:20px;height:20px}.opts.radio .opt.pick{border-color:var(--blue);background:#fff}.opts.radio .opt.pick .rd{border-color:var(--ink);background:var(--ink);box-shadow:inset 0 0 0 2.5px #fff}.opts.radio .opt.correct{border-color:var(--green);background:#f0faf3}.opts.radio .opt.correct .rd{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 2.5px #fff}.opts.radio .opt.wrong{border-color:var(--red);background:#fdf2f2}.opts.radio .opt.wrong .rd{border-color:var(--red);background:var(--red);box-shadow:inset 0 0 0 2.5px #fff}.opts.radio.off .opt{color:var(--ink3);cursor:not-allowed}.opts.radio.off .opt:hover{background:#fff}.sprompt{color:var(--ink);margin:4px 0 10px;font-size:15px;font-weight:600}.srow{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn.rec.done{background:var(--green);color:#fff}.rtime{border:1px solid var(--ink);text-align:center;border-radius:10px;flex-direction:column;min-width:120px;display:inline-flex;overflow:hidden}.rtime .h{background:var(--ink);color:#fff;letter-spacing:.06em;padding:3px 10px;font-size:10.5px;font-weight:600}.rtime .b{color:var(--ink2);font-variant-numeric:tabular-nums;padding:3px 10px;font-size:15px;font-weight:600}.rs{max-width:960px}.rs-title{align-items:baseline;gap:10px;margin:0 0 14px;font-size:22px;display:flex}.rs-sum{padding:18px 20px}.rs-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.rs-sum .dbar .l b{font-variant-numeric:tabular-nums}table.rs-types{border-collapse:collapse;width:100%;font-size:13px}table.rs-types td{border-bottom:1px solid var(--line2);vertical-align:middle;padding:5px 6px}table.rs-types td.nm{white-space:nowrap;color:var(--ink2)}table.rs-types td.sc{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.rs-dot{background:var(--bg3);min-width:22px;height:22px;color:var(--ink2);border-radius:6px;place-items:center;margin:1px 3px 1px 0;padding:0 5px;font-size:11.5px;font-weight:600;display:inline-grid}.rs-dot.ok{color:#1b7a3d;background:#e6f7ec}.rs-dot.wrong{color:#b42318;background:#fdeaea}.rs-dot.skipped{color:var(--ink3);border:1px dashed var(--line);background:#fff}.rs-acts{border-top:1px solid var(--line2);align-items:center;gap:8px;margin-top:14px;padding-top:14px;display:flex}.rs-acts .sp{flex:1}.rs-acts .btn.on{background:var(--ink);color:#fff}.rs-hr{border:0;border-top:1px solid var(--line);margin:22px 0}.rs-prob{border:1px solid var(--line);border-radius:12px;margin-bottom:22px;scroll-margin-top:60px;overflow:hidden}.rs-prob.wrong,.rs-prob.skipped{border-left:3px solid var(--red)}.rs-prob.ok{border-left:3px solid var(--green)}.rs-head{background:var(--bg2);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex}.rs-head h2{min-width:0;margin:0;font-size:15px;font-weight:600}.rs-head .sp{flex:1}.rs-head .btn{padding:4px 10px}.rs-n{background:var(--ink);color:#fff;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:12px;font-weight:600;display:grid}.rs-badge{background:var(--bg3);color:var(--ink2);white-space:nowrap;border-radius:999px;padding:1px 9px;font-size:12px}.rs-badge.ok{color:#1b7a3d;background:#e6f7ec}.rs-badge.wrong{color:#b42318;background:#fdeaea}.rv{padding:16px 20px}.rv .ans{border-top:1px dashed var(--line);margin-top:16px;padding-top:14px}.rv .q .tb{margin-top:8px}.rs-submitted{max-width:640px;padding-top:60px}.rs-submitted h3{align-items:center;gap:8px;display:flex}.rs-submitted .sess{padding:0}@media (max-width:900px){.rs-top{grid-template-columns:1fr}}table.pt td.when{white-space:nowrap;color:var(--ink2);font-size:12.5px}.seccard{border:1px solid var(--line);background:var(--bg);border-radius:12px;align-items:center;gap:22px;margin:0 0 14px;padding:16px 20px;display:flex}.seccard .ring{flex:none;width:100px;height:100px;position:relative}.seccard .ring svg{width:100px;height:100px;display:block}.seccard .ring .t{text-align:center;place-content:center;line-height:1.1;display:grid;position:absolute;inset:0}.seccard .ring .t b{font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.seccard .ring .t small{color:var(--ink3);font-size:11px}.seccard .pills{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.seccard .pill{background:var(--bg2);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.seccard .pill .k{white-space:nowrap;font-weight:500}.seccard .pill .v{color:var(--ink2);font-variant-numeric:tabular-nums;white-space:nowrap}.seccard .pill .v b{color:var(--ink)}@media (max-width:600px){.seccard{flex-direction:column}.seccard .pills{width:100%}}.viewtog{align-items:center;gap:10px;margin-bottom:14px;display:flex}.viewtog .seg button{padding:6px 14px;font-size:13.5px}.viewtog .hint{color:var(--ink3);font-size:12.5px}.lessons{gap:12px;display:grid}.lesson{border:1px solid var(--line);background:var(--bg);border-radius:12px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;display:grid}.lesson:hover{background:var(--bg2)}.lesson .ic{width:44px;height:44px;color:var(--blue);background:#e8f0fe;border-radius:10px;place-items:center;display:grid}.lesson .ic .ico{width:20px;height:20px}.lesson.done .ic{color:var(--green);background:#e9f8ee}.lesson h4{margin:0;font-size:15px;font-weight:600}.lesson .meta{color:var(--ink3);margin-top:2px;font-size:12.5px}.lesson .bar{background:var(--bg3);border-radius:3px;max-width:360px;height:6px;margin-top:8px;overflow:hidden}.lesson .bar i{background:var(--green);border-radius:3px;height:100%;display:block}.lesson .btn.p{padding:8px 14px}.lplayer{background:#e9ebee;height:calc(100vh - 50px)}.lplayer .stage{place-items:center;height:100%;padding:20px 84px;display:grid;position:relative;overflow:hidden}.lplayer .cv{flex:none;position:relative}.lplayer .slide{transform-origin:0 0;background:var(--bg);border-radius:8px;flex-direction:column;gap:18px;width:1280px;height:720px;padding:56px 64px 48px;animation:.22s slidein;display:flex;position:relative;overflow:auto;box-shadow:0 12px 40px #0000001f}.lplayer .x{z-index:3;width:36px;height:36px;color:var(--ink2);border:1px solid var(--line);background:#ffffffd9;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:16px}.lplayer .x:hover{color:var(--ink);background:#fff}.lplayer .arr{z-index:2;border:1px solid var(--line);width:52px;height:52px;color:var(--ink2);background:#ffffffeb;border-radius:50%;place-items:center;transition:background .15s,color .15s,opacity .15s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 14px #00000014}.lplayer .arr .ico{stroke-width:2.2px;width:24px;height:24px}.lplayer .arr:hover{color:var(--ink);background:#fff;box-shadow:0 6px 18px #0000001f}.lplayer .arr.l{left:16px}.lplayer .arr.r{background:var(--green);color:#fff;border-color:var(--green);right:16px}.lplayer .arr.r:hover{color:#fff;background:#27a854}.lplayer .arr:disabled{opacity:.25;pointer-events:none}.lplayer .act{border-top:1px solid var(--line2);align-items:center;gap:12px;margin-top:auto;padding-top:16px;display:flex}.lplayer .act .keys{color:var(--ink3);gap:10px;font-size:12px;display:flex}.lplayer .act kbd{font:11px var(--mono);border:1px solid var(--line);background:var(--bg2);border-bottom-width:2px;border-radius:4px;padding:1px 5px}.lplayer .act .sp{flex:1}.lplayer .act .btn{border-radius:10px;padding:11px 22px;font-size:14px}.lplayer .act .btn.p{justify-content:center;min-width:120px}.lplayer .act .fb{align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.lplayer .act .fb.ok{color:#1b8a44}.lplayer .act .fb.hm{color:#9a5b00}.lplayer .act .fb .ico{width:20px;height:20px}.lplayer .act.ok{border-color:#bfe8cc}.lplayer .act.hm{border-color:#ffe2b3}.lplayer.mobile .stage{flex-direction:column;padding:0;display:flex;overflow:auto}.lplayer.mobile .cv{flex-direction:column;flex:1;display:flex}.lplayer.mobile .slide{width:100%;height:auto;box-shadow:none;border-radius:0;flex:1;padding:24px 18px 72px}.lplayer.mobile .arr{width:44px;height:44px;top:auto;bottom:16px;transform:none}@keyframes slidein{0%{opacity:0}to{opacity:1}}.lplayer .slide .num{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:11.5px;position:absolute;bottom:14px;right:20px}.lplayer .kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--ink3);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.lplayer .kicker i{border-radius:50%;width:8px;height:8px;display:inline-block}.lplayer .kicker .kr{text-transform:none;letter-spacing:0;color:var(--ink2);font-weight:500}.lplayer .slide h1{text-wrap:balance;letter-spacing:-.01em;margin:0;font-size:28px;font-weight:700;line-height:1.25}.lplayer .slide h1:has(.uno){grid-template-columns:34px minmax(0,1fr);align-items:center;column-gap:12px;display:grid}.lplayer .slide h1:has(.uno) small{grid-column:1/-1}.lplayer .slide h1 .uno{color:#fff;letter-spacing:0;border-radius:50%;place-items:center;width:34px;height:34px;font-size:15px;font-weight:700;display:grid}.lplayer .slide h1 small{color:var(--ink2);letter-spacing:0;margin-top:8px;font-size:15px;font-weight:400;display:block}.lplayer .slide p{color:var(--ink2);max-width:62ch;margin:0;font-size:15px}.lplayer .slide p.cnote{color:var(--ink);white-space:pre-line;word-break:keep-all;max-width:none;font-size:19px;line-height:1.65}.lplayer .tlist{gap:10px;margin-top:6px;display:grid}.lplayer .trow{border:1px solid var(--line);background:var(--bg2);border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:14px;padding:12px 14px;display:grid}.lplayer .trow .n{background:var(--c);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:grid}.lplayer .trow .k{color:var(--ink2);font-size:16px;font-weight:500}.lplayer .trow .pt{margin-top:1px;font-size:23px;font-weight:600}.lplayer .trow .pt .slot{font-size:19px}.lplayer .trow .exl{color:var(--ink3);margin-top:2px;font-size:17px}.lplayer .trow.done{background:#e9f8ee;border-color:#bfe8cc}.lplayer .pattern{letter-spacing:-.01em;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:22px 26px;font-size:30px;font-weight:700;line-height:1.3}.lplayer .tp{color:var(--c,var(--blue))}.lplayer .pattern .alt{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;padding-top:10px;font-size:21px;font-weight:600;display:flex}.lplayer .pattern .alt .slot{font-size:16px}.lplayer .pattern .atag{color:var(--ink3);background:var(--bg3);letter-spacing:.02em;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:600}.lplayer i.sl{text-decoration:underline;-webkit-text-decoration-color:var(--ink3);text-decoration-color:var(--ink3);text-underline-offset:4px;font-style:normal;text-decoration-style:dotted}.lplayer i.sl.hl{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:#fff6e0;border-radius:6px;padding:0 4px;text-decoration:none}.lplayer .slot{border:1.5px dashed var(--ink3);color:var(--ink2);border-radius:8px;margin:0 2px;padding:0 10px;font-weight:500;display:inline-block}.lplayer .when{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lplayer .when .lbl{color:var(--ink3);font-size:12.5px;font-weight:600}.lplayer .when .chip.on{background:var(--c,var(--blue));color:#fff}.lplayer .exs{gap:8px;display:grid}.lplayer .ex{border-bottom:1px solid var(--line2);grid-template-columns:22px minmax(0,1fr);align-items:baseline;gap:10px;padding:8px 0;display:grid}.lplayer .ex:last-child{border-bottom:0}.lplayer .ex .n{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12px}.lplayer .ex .en{font-size:16px}.lplayer .ex .en .tp{font-weight:600}.lplayer .ex .ko,.lplayer .big+.ko{color:var(--ink3);margin-top:2px;font-size:13px}.lplayer .big{font-size:26px;font-weight:600;line-height:1.4}.lplayer .big+.ko{margin-top:-8px;font-size:14px}.lplayer .two{grid-template-columns:1fr 1fr;gap:16px;display:grid}.lplayer .box{border:1px solid var(--line);background:var(--bg2);border-radius:12px;min-width:0;padding:14px 16px}.lplayer .box h5{letter-spacing:.04em;text-transform:uppercase;color:var(--ink3);align-items:center;gap:6px;margin:0 0 8px;font-size:12px;font-weight:600;display:flex}.lplayer .box p{color:var(--ink);font-size:14px}.lplayer .flow{counter-reset:f;gap:6px;display:grid}.lplayer .flow div{color:var(--ink2);grid-template-columns:20px minmax(0,1fr);align-items:baseline;gap:8px;font-size:13.5px;display:grid}.lplayer .flow div:before{counter-increment:f;content:counter(f);background:var(--bg3);width:20px;height:20px;color:var(--ink2);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid;position:relative;top:3px}.lplayer .flow div.on{color:var(--ink);font-weight:600}.lplayer .flow div.on:before{background:var(--c,var(--blue));color:#fff}.lplayer .nextex{border-left:3px solid var(--c,var(--blue));background:var(--bg);border-radius:0 8px 8px 0;margin-top:10px;padding:6px 12px;font-size:14px}.lplayer .nextex .ko{color:var(--ink3);margin-top:2px;font-size:12.5px;display:block}.lplayer .sit{border:1px solid var(--line);background:var(--bg2);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;padding:14px 16px;display:grid}.lplayer .sit .to{color:var(--ink3);align-items:center;gap:6px;margin-bottom:4px;font-size:12.5px;display:flex}.lplayer .sit .to b{color:var(--ink);font-weight:600}.lplayer .sit .ko{color:var(--ink);font-size:15px;line-height:1.55}.lplayer .sit .en{color:var(--ink3);margin-top:4px;font-size:13px}.lplayer .sit .others{color:var(--ink2);gap:3px;margin-top:8px;font-size:13px;display:grid}.lplayer .sit .others b{color:var(--ink);margin-right:4px;font-weight:600}.lplayer .sit .task{text-align:right;color:var(--ink2);white-space:nowrap;font-size:12.5px}.lplayer .sit .task b{color:var(--ink);font-size:13.5px;font-weight:600;display:block}.lplayer .ans{gap:8px;display:grid}.lplayer .ans textarea{resize:vertical;border:1.5px solid var(--line);width:100%;min-height:118px;font:16px/1.6 var(--font);color:var(--ink);background:var(--bg);border-radius:12px;outline:0;padding:14px 16px}.lplayer .ans textarea:focus{border-color:var(--ink)}.lplayer .ans textarea[disabled]{background:var(--bg2);color:var(--ink2)}.lplayer .ans .tools{color:var(--ink3);align-items:center;gap:8px;font-size:12.5px;display:flex}.lplayer .ans .tools button{color:var(--blue);border-radius:4px;padding:2px 4px;font-weight:500}.lplayer .ans .tools button:hover{background:#e8f0fe}.lplayer .ans .hint{color:var(--ink2);background:#e8f0fe;border-radius:8px;padding:8px 12px;font-size:13px}.lplayer .ans .hint b{color:var(--blue)}.lplayer .res{grid-template-columns:1fr 1fr;gap:14px;display:grid}.lplayer .pool{flex-wrap:wrap;gap:10px;padding:4px 0 8px;display:flex}.lplayer .pool button{background:var(--bg2);border:1.5px solid var(--line);color:var(--ink);border-radius:12px;padding:10px 18px;font-size:18px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.lplayer .pool button:hover{border-color:var(--ink3)}.lplayer .pool button.on{background:var(--c,var(--blue));border-color:var(--c,var(--blue));color:#fff}.lplayer .pool button.miss{border-color:var(--red);color:#b42318;background:#fdecec;text-decoration:line-through}.lplayer .pickres{color:var(--ink2);background:#fff6e0;border:1px solid #ffe2b3;border-radius:10px;align-items:baseline;gap:10px;padding:14px 16px;font-size:14px;display:flex}.lplayer .pickres b{color:var(--ink);font-size:16px}.lplayer .pickres.ok{background:#e9f8ee;border-color:#bfe8cc}.lplayer .checks{gap:6px;font-size:13.5px;display:grid}.lplayer .checks div{color:var(--ink2);align-items:center;gap:8px;display:flex}.lplayer .checks div.ok{color:#1b8a44}.lplayer .checks div.ok .ico{color:var(--green)}.lplayer .checks div.no{color:var(--ink)}.lplayer .checks div.no .ico{color:var(--red)}.lplayer .model{background:#e9f8ee;border:1px solid #bfe8cc;border-radius:12px;padding:12px 14px}.lplayer .model h5{letter-spacing:.04em;text-transform:uppercase;color:#1b8a44;margin:0 0 6px;font-size:12px;font-weight:600}.lplayer .model .en{white-space:pre-line;font-size:15px;line-height:1.55}.lplayer .model .en .tp{font-weight:600}.lplayer .model .ko{color:var(--ink3);margin-top:6px;font-size:12.5px}.lplayer .src{color:var(--ink3);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.lplayer .src .ico{width:16px;height:16px;color:var(--red)}.lplayer .src a{color:var(--blue);text-underline-offset:3px;font-weight:500;text-decoration:underline}.lplayer .src .v{flex-wrap:wrap;align-items:baseline;gap:6px;display:inline-flex}.lplayer .src small{font-size:12px}.lplayer .pattern .rule{color:var(--ink2);border-top:1px dashed var(--line);letter-spacing:0;margin-top:12px;padding-top:12px;font-size:14.5px;font-weight:500;line-height:1.5}.lplayer .mist{border:1px solid var(--line);border-left:4px solid var(--c,var(--red));background:var(--bg2);border-radius:12px;gap:6px;padding:12px 16px;display:grid}.lplayer .mist .lbl,.lplayer .reasons .lbl,.lplayer .ans .lbl{letter-spacing:.04em;text-transform:uppercase;color:var(--ink3);font-size:12px;font-weight:600}.lplayer .mist .pair{flex-wrap:wrap;align-items:center;gap:10px;font-size:17px;font-weight:600;display:flex}.lplayer .mist .pair .ico{width:18px;height:18px;color:var(--ink3);flex:none}.lplayer .mist .why{color:var(--ink2);font-size:13.5px}.lplayer .fixq{border:1px solid var(--line);background:var(--bg2);border-radius:12px;gap:8px;padding:14px 16px;display:grid}.lplayer .fixq .ko{color:var(--ink2);font-size:14px}.lplayer .fixq .wrong{font-size:24px;font-weight:600;line-height:1.4}.lplayer .reasons{gap:8px;display:grid}.lplayer .reasons .rb{text-align:left;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer;border-radius:10px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;padding:10px 14px;font-size:14px;display:grid}.lplayer .reasons .rb b{background:var(--bg3);width:24px;height:24px;color:var(--ink2);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.lplayer .reasons .rb:hover:not([disabled]){border-color:var(--ink3)}.lplayer .reasons .rb.on{border-color:var(--c,var(--blue))}.lplayer .reasons .rb.on b{background:var(--c,var(--blue));color:#fff}.lplayer .reasons .rb.right{background:#e9f8ee;border-color:#bfe8cc}.lplayer .reasons .rb.right b{background:var(--green);color:#fff}.lplayer .reasons .rb.miss{background:#fff1f1;border-color:#f3a2a2}.lplayer .reasons .rb.miss b{background:var(--red);color:#fff}.lplayer .reasons .rb[disabled]{cursor:default}.lplayer .pblocks{gap:12px;display:grid}.lplayer .pblock{border:1px solid var(--line);border-left:4px solid var(--c,var(--blue));background:var(--bg2);border-radius:12px;gap:6px;padding:14px 18px;display:grid}.lplayer .pblock .plabel{letter-spacing:.04em;text-transform:uppercase;color:var(--c,var(--blue));font-size:12px;font-weight:600}.lplayer .pblock .pform{letter-spacing:-.01em;font-size:24px;font-weight:700;line-height:1.3}.lplayer .pblock .pnote{color:var(--ink2);font-size:13.5px}.lplayer .pblock .pexs{border-top:1px dashed var(--line);gap:6px;margin-top:6px;padding-top:8px;display:grid}.lplayer .pblock .pexs .en{font-size:15.5px}.lplayer .pblock .pexs .ko{color:var(--ink3);font-size:12.5px}.lplayer .mlist{border:1px solid var(--line);border-radius:12px;gap:0;display:grid;overflow:hidden}.lplayer .mrow{border-bottom:1px solid var(--line2);background:var(--bg);grid-template-columns:170px 120px minmax(0,1fr);align-items:baseline;gap:14px;padding:11px 16px;display:grid}.lplayer .mrow:last-child{border-bottom:0}.lplayer .intro{gap:22px;display:grid}.lplayer .intro .def{letter-spacing:-.01em;text-wrap:pretty;word-break:keep-all;margin:0;font-size:24px;font-weight:600;line-height:1.45}.lplayer .intro .def.below{white-space:pre-line;color:var(--ink);font-size:19px;font-weight:500;line-height:1.6}.lplayer .intro .words{flex-wrap:wrap;gap:12px 36px;display:flex}.lplayer .intro .words span{color:var(--ink);letter-spacing:-.01em;font-size:40px;font-weight:800;line-height:1.1}.lplayer .intro .point{background:var(--bg2);border-left:4px solid var(--c,var(--blue));border-radius:12px;gap:4px;padding:16px 20px;display:grid}.lplayer .intro .point b{letter-spacing:-.01em;font-size:24px;font-weight:800}.lplayer .intro .point span{color:var(--ink2);font-size:16px}.lplayer .intro .caveat{color:var(--ink);letter-spacing:-.01em;word-break:keep-all;background:linear-gradient(transparent 55%,color-mix(in srgb,var(--c,var(--blue)) 22%,transparent) 55%);justify-self:start;margin:-8px 0 0;padding:0 2px;font-size:17px;font-weight:700;display:inline}.lplayer .intro .sv{gap:8px;display:grid}.lplayer .intro .sv>div{border:1px solid var(--line);background:var(--bg);border-radius:10px;grid-template-columns:20px auto minmax(0,1fr);align-items:baseline;gap:12px;padding:10px 14px;display:grid}.lplayer .intro .sv .ico{stroke-width:2.2px;align-self:center;width:18px;height:18px}.lplayer .intro .sv .ok .ico{color:var(--green)}.lplayer .intro .sv .no .ico{color:var(--hard)}.lplayer .intro .sv .en{font-size:18px;font-weight:600}.lplayer .intro .sv .note{color:var(--ink3);font-size:13.5px}.lplayer .intro .next{color:var(--ink2);margin:-6px 0 0;font-size:14.5px}.lplayer .intro .vs{gap:10px;display:grid}.lplayer .intro .vs h3{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:700}.lplayer .intro .vs .lead{color:var(--ink2);word-break:keep-all;margin:0;font-size:15.5px}.lplayer .intro .vs .cards{grid-template-columns:1fr 1fr;gap:14px;margin-top:4px;display:grid}.lplayer .intro .vs .card{border:1px solid var(--line);border-left:4px solid var(--c,var(--blue));background:var(--bg2);border-radius:12px;align-content:start;gap:6px;padding:14px 16px;display:grid}.lplayer .intro .vs .card .lbl{color:var(--c,var(--blue));font-size:13px;font-weight:700}.lplayer .intro .vs .card .en{font-size:19px;font-weight:600;line-height:1.35}.lplayer .intro .vs .card .en b{color:var(--c,var(--blue));font-weight:800}.lplayer .intro .vs .card .ko{color:var(--ink3);font-size:13.5px}.lplayer .intro .vs .card ul{color:var(--ink2);word-break:keep-all;gap:3px;margin:4px 0 0;padding-left:18px;font-size:13.5px;display:grid}.lplayer .intro .vs .wrong{background:#fdecec;border:1.5px solid #f3a2a2;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.lplayer .intro .vs .wrong>.ico{width:26px;height:26px;color:var(--red);flex:none;margin-top:2px}.lplayer .intro .vs .wrong .en{color:#b42318;font-size:20px;font-weight:700}.lplayer .intro .vs .wrong .why{color:#b42318;word-break:keep-all;margin-top:4px;font-size:14.5px;font-weight:600}@media (max-width:640px){.lplayer .intro .vs .cards{grid-template-columns:1fr}.lplayer .intro .def{font-size:19px}.lplayer .intro .words span{font-size:28px}.lplayer .intro .sv>div{grid-template-columns:20px minmax(0,1fr)}.lplayer .intro .sv .note{grid-column:2}}.lplayer .pintro{gap:24px;margin-top:6px;display:grid}.lplayer .pintro .lead{letter-spacing:-.01em;word-break:keep-all;margin:0;font-size:26px;font-weight:600}.lplayer .pintro .forms{gap:16px;display:grid}.lplayer .pintro .forms>div{background:var(--bg2);border-left:5px solid var(--c,var(--blue));border-radius:14px;align-items:baseline;gap:18px;padding:22px 28px;display:flex}.lplayer .pintro .forms .lbl{color:var(--c,var(--blue));white-space:nowrap;font-size:13px;font-weight:600}.lplayer .pintro .forms .fbody{gap:6px;display:grid}.lplayer .pintro .forms .fsub{color:var(--ink2);font-size:18px;font-weight:500}.lplayer .pintro .forms .form{letter-spacing:-.01em;font-size:40px;font-weight:800;line-height:1.15}.lplayer .pintro .forms .ph,.lplayer .pblock .pform .ph{color:var(--c,var(--blue))}.lplayer .pintro .note{color:var(--ink2);word-break:keep-all;margin:0;font-size:17px;line-height:1.6}.lplayer .ncards{grid-template-columns:1fr 1fr;gap:14px;display:grid}.lplayer .ncard{border:1px solid var(--line);border-left:4px solid var(--c,var(--blue));background:var(--bg2);border-radius:12px;align-content:start;gap:8px;padding:16px 18px;display:grid}.lplayer .ncard .chip.on{background:var(--c,var(--blue));color:#fff;justify-self:start}.lplayer .ncard .en{font-size:20px;font-weight:600;line-height:1.35}.lplayer .ncard .ko{color:var(--ink3);font-size:13.5px}.lplayer .ncard .bad{border-top:1px dashed var(--line);padding-top:8px;font-size:14px}.lplayer .ncard .bad .lbl{color:var(--red);font-weight:600}@media (max-width:640px){.lplayer .ncards{grid-template-columns:1fr}}.lplayer .mrow .w{color:var(--c,var(--blue));font-size:19px;font-weight:700}.lplayer .mrow .k{color:var(--ink2);font-size:14px}.lplayer .mrow .e{font-size:15px}.lplayer .mrow .e .ko{color:var(--ink3);margin-top:1px;font-size:12.5px;display:block}.lplayer .memo{color:var(--ink);background:#fff6e0;border:1px solid #ffe2b3;border-radius:10px;align-items:center;gap:8px;padding:12px 16px;font-size:15px;font-weight:600;display:flex}.lplayer .memo .ico{color:#9a5b00;flex:none;width:18px;height:18px}.lplayer .drill{gap:10px;display:grid}.lplayer .drow{border:1px solid var(--line);background:var(--bg2);border-radius:10px;gap:6px;padding:10px 14px;display:grid}.lplayer .drow.ok{background:#e9f8ee;border-color:#bfe8cc}.lplayer .drow.no{background:#fff1f1;border-color:#f3a2a2}.lplayer .drow .q{align-items:center;gap:10px;font-size:15px;display:flex}.lplayer .drow .q .n{background:var(--bg3);width:22px;height:22px;color:var(--ink2);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.lplayer .drow .q .chip.on{background:var(--c,var(--blue));color:#fff;margin-left:auto}.lplayer .drow .q .pt{border:1px solid var(--c,var(--blue));color:var(--c,var(--blue));white-space:nowrap;background:#fff;border-radius:999px;margin-left:auto;padding:3px 11px;font-size:12.5px;font-weight:600}.lplayer .drow input{border:1.5px solid var(--line);width:100%;font:15px/1.5 var(--font);color:var(--ink);background:var(--bg);border-radius:8px;outline:0;padding:9px 12px}.lplayer .drow input:focus{border-color:var(--ink)}.lplayer .drow input[disabled]{background:var(--bg2);color:var(--ink2)}.lplayer .drow .m{color:var(--ink2);align-items:center;gap:8px;font-size:14px;display:flex}.lplayer .drow.ok .m .ico{color:var(--green)}.lplayer .drow.no .m .ico{color:var(--red)}.lplayer .drow .m .tp{font-weight:600}.lplayer .drow .h{color:var(--ink3);padding-left:26px;font-size:12.5px}.lplayer .model .why{color:var(--ink2);border-top:1px dashed #bfe8cc;margin-top:8px;padding-top:8px;font-size:13px}.lplayer .ans .tools b{color:var(--c,var(--blue))}.lplayer .score{align-items:center;gap:22px;display:flex}.lplayer .score .ring{flex:none;width:110px;height:110px;position:relative}.lplayer .score .ring svg{width:110px;height:110px;transform:rotate(-90deg)}.lplayer .score .ring .t{text-align:center;place-content:center;line-height:1.1;display:grid;position:absolute;inset:0}.lplayer .score .ring .t b{font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.lplayer .score .ring .t small{color:var(--ink3);font-size:11px}.lplayer .score .msg{color:var(--ink2);font-size:15px}.lplayer .score .msg b{color:var(--ink);margin-bottom:4px;font-size:20px;font-weight:700;display:block}@media (max-width:640px){.lplayer .slide h1{font-size:22px}.lplayer .pattern{padding:16px;font-size:21px}.lplayer .big{font-size:20px}.lplayer .fixq .wrong{font-size:19px}.lplayer .pblock .pform{font-size:18px}.lplayer .mrow{grid-template-columns:1fr;gap:2px}.lplayer .two,.lplayer .res,.lplayer .sit{grid-template-columns:1fr}.lplayer .sit .others{color:var(--ink2);gap:3px;margin-top:8px;font-size:13px;display:grid}.lplayer .sit .others b{color:var(--ink);margin-right:4px;font-weight:600}.lplayer .sit .task{text-align:left}.lesson{grid-template-columns:44px minmax(0,1fr)}.lesson .btn.p{display:none}}.vtop{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.vtop .chips{margin:0}.vlist{gap:10px;display:grid}.vw{border:1px solid var(--line);background:var(--bg);border-radius:12px;gap:6px;padding:14px 16px;display:grid}.vw:hover{background:var(--bg2)}.vw .top{align-items:center;gap:10px;min-width:0;display:flex}.vw .w{letter-spacing:-.01em;font-size:17px;font-weight:600}.vw .ph{font-family:var(--mono);color:var(--ink3);font-size:12.5px}.vw .spk{width:26px;height:26px;color:var(--ink2);border-radius:6px;place-items:center;display:grid}.vw .spk:hover{background:var(--bg3);color:var(--ink)}.vw .spk .ico{width:15px;height:15px}.vw .top .sp{flex:1}.vw .ko{color:var(--ink);font-size:14.5px}.vw .ko .none{color:var(--ink3);font-weight:400}@keyframes vspin{to{transform:rotate(360deg)}}.vw .src{color:var(--ink2);border-top:1px solid var(--line2);flex-wrap:wrap;align-items:baseline;gap:10px;padding-top:6px;font-size:13px;display:flex}.vw .src+.src{border-top:0;padding-top:0}.vw .src .ctx{flex:1;min-width:200px}.vw .src .ctx b,.vw .t b{color:var(--ink);background:#eaf7ee;border-radius:3px;padding:0 2px;font-weight:600}.vw .src .pt{color:var(--ink2);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.vw .src .pt:hover{color:var(--blue)}.vw .src .pt .ico{width:13px;height:13px}.vw .src .d{color:var(--ink3);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.vw .last{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 8px;font-size:12px}.vw .last.ok{color:#1b7a3d;background:#e6f7ec}.vw .last.no{color:#b42318;background:#fdeaea}.vw .last.none{background:var(--bg3);color:var(--ink3)}.unf{border:1.5px solid var(--line);color:var(--ink2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 7px;font-size:12px;display:inline-flex}.unf i{background:#fff;border:1.5px solid #c5c8cd;border-radius:4px;place-items:center;width:14px;height:14px;display:grid}.unf i .ico{stroke-width:3px;width:10px;height:10px;display:none}.unf:hover{border-color:#bfc3c9}.unf.on{border-color:var(--brand);color:#9a5b00;background:#fff8ec}.unf.on i{background:var(--brand);border-color:var(--brand);color:#fff}.unf.on i .ico{display:block}.vw .del{width:26px;height:26px;color:var(--ink3);border-radius:6px;place-items:center;font-size:18px;line-height:1;display:grid}.vw .del:hover{background:var(--bg3);color:var(--ink)}.vw.gone{color:var(--ink3);background:var(--bg2);border-style:dashed;align-items:center;gap:10px;font-size:13px;display:flex}.vw.gone .undo{color:var(--blue);font-size:inherit;padding:0}.vw.gone .undo[disabled],.vw .del[disabled],.unf[disabled]{opacity:.5;cursor:default}.vs .t{font-size:15.5px;line-height:1.55}.vs .ko{color:var(--ink2);font-size:13.5px}.vstat{grid-template-columns:1fr 1fr;gap:8px;display:grid}.vstat div{background:var(--bg2);border-radius:10px;padding:10px 12px}.vstat b{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600;line-height:1.1;display:block}.vstat small{color:var(--ink3);font-size:12px}.vrecent button{border-top:1px solid var(--line2);text-align:left;width:100%;color:var(--ink);align-items:center;gap:8px;padding:7px 0;font-size:13.5px;display:flex}.vrecent button:first-child{border-top:0}.vrecent button:hover b{color:var(--blue)}.vrecent button b{font-weight:500}.vrecent button .ko{color:var(--ink3);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12.5px;overflow:hidden}.vrecent button .d{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12px}.vhist{border-collapse:collapse;width:100%;font-size:13px}.vhist td{border-top:1px solid var(--line2);color:var(--ink2);padding:5px 0}.vhist tr:first-child td{border-top:0}.vhist td:last-child{text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}button.pick{cursor:pointer;font:inherit;border:0;font-size:13px;font-weight:500}.daily button.go{cursor:pointer;font:inherit;border:0;font-size:12px}.modal .mb .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.modal .mb .seg button{padding:7px 16px;font-size:14px}.vcal{border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:12px;overflow:hidden}.vcal .ch{border-bottom:1px solid var(--line);background:var(--bg2);align-items:center;gap:8px;padding:10px 12px;font-weight:500;display:flex}.vcal .ch button{width:28px;height:28px;color:var(--ink2);border-radius:6px;place-items:center;display:grid}.vcal .ch button:hover{background:var(--bg3)}.vcal .ch button.rot .ico{transform:rotate(180deg)}.vcal .ch .m{text-align:center;min-width:110px}.vcal .ch .sp{flex:1}.vcal .ch .sm{color:var(--ink2);align-items:center;gap:8px;font-size:12.5px;font-weight:400;display:flex}.vcal .ch .sm button.all{width:auto;height:auto;color:var(--blue);font-size:inherit;padding:0}.vcal .wd{color:var(--ink3);text-align:center;grid-template-columns:repeat(7,1fr);padding:6px 0 2px;font-size:11px;display:grid}.vcal .g{grid-template-columns:repeat(7,1fr);gap:2px;padding:4px;display:grid}.vcal .c{height:52px;color:var(--ink2);cursor:default;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:13px;display:flex;position:relative}.vcal .c.o{color:#c9ccd1}.vcal .c.has{cursor:pointer;color:var(--ink)}.vcal .c.has:hover{background:var(--bg3)}.vcal .c .n{color:var(--blue);font-variant-numeric:tabular-nums;background:#e8f0fe;border-radius:999px;padding:0 6px;font-size:11px;font-weight:600}.vcal .c.today{font-weight:700}.vcal .c.today:after{content:"";background:var(--brand);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.vcal .c.sel{background:var(--ink);color:#fff}.vcal .c.sel .n{color:var(--ink);background:#fff}.vcal .c.sel:hover{background:#000}.modal .mf .msum>span+span:before{content:none}.modal .mf .msum>span+span{margin-left:10px}.lplayer .vq{align-content:start;gap:10px;display:grid}.lplayer .drow.v{grid-template-columns:1fr auto;align-items:center;gap:6px 14px}.lplayer .drow.v .q,.lplayer .drow.v input{grid-column:1}.lplayer .drow.v .m{flex-wrap:wrap;grid-column:1}.lplayer .drow.v .side{flex-direction:column;grid-area:1/2/span 2;align-items:flex-end;gap:6px;display:flex}.lplayer .drow.v .q .w{font-size:17px;font-weight:600}.lplayer .drow.v .q .ph{font-family:var(--mono);color:var(--ink3);font-size:12.5px}.lplayer .drow .m .note{color:var(--ink3);font-size:13px}.lplayer .drow .judge{color:var(--ink2);align-items:center;gap:6px;font-size:13px;display:flex}.lplayer .drow .judge button{border:1.5px solid var(--line);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:600}.lplayer .drow .judge button.jo{color:#1b7a3d}.lplayer .drow .judge button.jo.on{border-color:var(--green);background:#e6f7ec}.lplayer .drow .judge button.jx{color:#b42318}.lplayer .drow .judge button.jx.on{border-color:var(--red);background:#fdeaea}.lplayer .drow .judge button[disabled]:not(.on){opacity:.4}.lplayer .drow.self{background:#fff8ec;border-color:#ffe2b3}.lplayer .fcwrap{flex:1;place-items:center;display:grid}.lplayer .fc{border:1px solid var(--line);background:var(--bg);text-align:center;cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:760px;min-height:300px;padding:36px 44px;transition:transform .12s;display:flex;position:relative;box-shadow:0 8px 30px #0000000f}.lplayer .fc:hover{transform:translateY(-1px)}.lplayer .fc .w{letter-spacing:-.01em;font-size:40px;font-weight:700}.lplayer .fc .w.sm{font-size:28px}.lplayer .fc .s{text-wrap:balance;font-size:24px;font-weight:600;line-height:1.45}.lplayer .fc .s.sm{font-size:20px}.lplayer .fc .s b{background:#eaf7ee;border-radius:4px;padding:0 3px}.lplayer .fc .ph{font-family:var(--mono);color:var(--ink3);font-size:14px}.lplayer .fc .ko{color:var(--ink);font-size:22px}.lplayer .fc .ko.none{color:var(--ink3);font-size:16px}.lplayer .fc .tap{color:var(--ink3);font-size:12px;position:absolute;bottom:14px}.lplayer .fc .ctx{color:var(--ink2);max-width:600px;font-size:14px;line-height:1.5}.lplayer .fc .ctx b{color:var(--ink);font-weight:600}.lplayer .fc .unf{position:absolute;top:14px;right:14px}.lplayer.mobile .fc{width:100%;min-height:240px;padding:28px 18px}.lplayer .oxb{justify-content:center;gap:12px;display:flex}.lplayer .oxb button{border:1.5px solid var(--line);background:#fff;border-radius:12px;width:150px;padding:14px 0;font-size:17px;font-weight:700}.lplayer .oxb button.jo{color:#1b7a3d}.lplayer .oxb button.jo:hover{border-color:var(--green);background:#e6f7ec}.lplayer .oxb button.jx{color:#b42318}.lplayer .oxb button.jx:hover{border-color:var(--red);background:#fdeaea}.lplayer .oxb button small{color:var(--ink3);margin-top:2px;font-size:11.5px;font-weight:400;display:block}.lplayer .prog{color:var(--ink3);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:13px;display:flex}.lplayer .prog .b{background:var(--bg3);border-radius:3px;flex:1;height:5px;overflow:hidden}.lplayer .prog .b i{background:var(--green);border-radius:3px;height:100%;display:block}.lplayer .wrongs{gap:6px;max-height:300px;display:grid;overflow:auto}.lplayer .wrongs div{background:#fff1f1;border:1px solid #f3a2a2;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:flex}.lplayer .wrongs div b{font-weight:600}.lplayer .wrongs div .ko{color:var(--ink2);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lplayer .wrongs div .d{color:var(--ink3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.lplayer .qempty{text-align:center;color:var(--ink2);flex:1;place-content:center;gap:8px;display:grid}.toast{background:var(--ink);color:#fff;z-index:60;border-radius:999px;padding:9px 14px;font-size:13px;animation:.18s vup;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}@keyframes vup{0%{opacity:0;transform:translate(-50%,8px)}}
:root{--av-bg:#dbeafe;--av-ink:#1e3a8a}.nav a.l.ic{align-items:center;gap:6px;display:inline-flex}.nav a.l.ic .ico{width:15px;height:15px}.nav .dv{background:var(--line);flex:none;width:1px;height:18px;margin:0 6px}.nav a.l .b{background:var(--blue);color:var(--bg);border-radius:999px;padding:0 6px;font-size:11px;font-weight:600;line-height:18px}.lsb a .n.b{background:var(--blue);color:var(--bg);border-radius:999px;padding:0 7px;font-size:11px;font-weight:600;line-height:18px}.lsb a.off{opacity:.5}.lsb a.add{color:var(--blue);font-size:13px}.lsb .sav{background:var(--av-bg);width:22px;height:22px;color:var(--av-ink);border-radius:50%;flex:none;place-items:center;font-size:10px;font-weight:600;display:grid}.lsb .dot{background:var(--brand);border-radius:50%;flex:none;width:7px;height:7px;margin-left:auto}.lsb.collapsed a.add{display:none}.lsb button.col{text-align:left;width:100%}.lsb.collapsed a{position:relative}.lsb.collapsed a .n.b,.lsb.collapsed a .dot{border-radius:50%;width:6px;height:6px;margin:0;padding:0;font-size:0;line-height:0;display:block;position:absolute;top:5px;right:calc(50% - 14px)}.inactive{background:var(--bg2);place-items:center;min-height:100dvh;padding:20px;display:grid}.inactive .box{background:var(--bg);border:1px solid var(--line);text-align:center;border-radius:16px;max-width:460px;padding:32px 36px}.inactive .brand{justify-content:center;align-items:center;gap:8px;margin-bottom:18px;font-weight:600;display:flex}.inactive h1{margin:0 0 8px;font-size:18px}.inactive p{color:var(--ink2);margin:0 0 18px;font-size:14px}:root{--wtc:#8a6500;--wtbg:#fff3c4;--hwc:var(--blue)}.ovh{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.ovh h2{margin:0;font-size:20px;font-weight:600}.ovh .sub2{color:var(--ink3);font-size:13px}.ovh .acts{gap:8px;margin-left:auto;display:flex}.btn.sm{padding:5px 10px;font-size:12.5px}.btn.danger{color:#b42318;background:#fdeaea}.kpis{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px;display:grid}.kpi{border:1px solid var(--line);border-radius:12px;min-width:0;padding:12px 14px}.kpi .l{color:var(--ink3);font-size:12px}.kpi .v{margin-top:2px;font-size:22px;font-weight:600}.kpi .v small{color:var(--ink3);margin-left:4px;font-size:12px;font-weight:400}.kpi.warn .v{color:var(--wtc)}@media (max-width:760px){.kpis{grid-template-columns:repeat(2,1fr)}}table.pt.students tbody tr.r:nth-child(odd) td{background:0 0}table.pt.students tbody tr.r:hover td{background:var(--bg2)}table.pt.students tbody tr.off td{opacity:.55}table.pt.students .sub{color:var(--ink3);font-size:12px}table.pt.students .sub span+span{margin-left:10px}table.pt.students .srow{flex-wrap:nowrap;align-items:center;gap:10px;display:flex}table.pt.students .sav{background:var(--av-bg);width:28px;height:28px;color:var(--av-ink);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.hwbar{background:var(--bg3);vertical-align:middle;border-radius:3px;width:90px;height:6px;margin-right:8px;display:inline-block;overflow:hidden}.hwbar i{background:var(--hwc);border-radius:3px;height:100%;display:block}.newdot{color:var(--brand);align-items:center;gap:6px;font-size:12.5px;font-weight:500;display:inline-flex}.newdot:before{content:"";background:var(--brand);border-radius:50%;width:7px;height:7px}.mini{vertical-align:middle;gap:3px;display:inline-flex}.mini i{background:var(--bg3);border-radius:2px;width:10px;height:10px}.mini i.a1{background:#c7f0d2}.mini i.a2{background:#7fd99a}.mini i.a3{background:var(--green)}.apill{color:#1b7a3d;white-space:nowrap;background:#e6f7ec;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}.apill.ing{background:var(--wtbg);color:var(--wtc)}.apill.off{background:var(--bg3);color:var(--ink3)}.apill.wt{background:var(--wtbg);color:var(--wtc)}.apill.new{color:var(--blue);background:#e8f0fe}table.pt.students a.sname{color:var(--ink)}table.pt.students a.sname:hover{color:var(--blue)}.hwlist{gap:12px;display:grid}.hwcard{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:14px 16px}.hwcard .top{cursor:pointer;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hwcard.open .top{margin-bottom:10px}.hwcard .top h3{margin:0;font-size:15px;font-weight:600}.hwcard .top h3 button{all:unset;cursor:pointer;border-radius:4px}.hwcard .top h3 button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.hwcard .top .d{color:var(--ink3);font-size:12.5px}.hwcard .top .prog{color:var(--ink2);white-space:nowrap;align-items:center;gap:8px;margin-left:auto;font-size:13px;display:flex}.hwcard .top .chev{color:var(--ink3);font-size:11px;transition:transform .15s}.hwcard.open .top .chev{transform:rotate(180deg)}.hwcard .bar{background:var(--bg3);border-radius:3px;width:120px;height:6px;display:inline-block;overflow:hidden}.hwcard .bar i{background:var(--green);border-radius:3px;height:100%;display:block}.hwcard table{border-collapse:collapse;width:100%;font-size:13.5px}.hwcard td{border-top:1px solid var(--line2);vertical-align:middle;padding:7px 8px}.hwcard tr.r:hover td{background:var(--bg2)}.hwcard td.st{text-align:center;width:34px}.hwcard td.t a{color:var(--ink)}.hwcard td.t a:hover{color:var(--blue)}.hwcard td .subt{color:var(--ink3);font-size:12px}.hwcard td.sc{text-align:right;white-space:nowrap;width:90px;font-weight:600}.hwcard td.sc .note{font-weight:400}.hwcard td.ty{text-align:right;width:120px}.hwcard td.go{text-align:right;white-space:nowrap;width:60px;font-size:12.5px}.hwcard td.go a{color:var(--blue)}.hwcard td.act{text-align:right;white-space:nowrap;width:120px}.hwcard td.act button{color:var(--ink3);border-radius:5px;padding:2px 6px;font-size:11px}.hwcard td.act button:hover:not([disabled]){background:var(--bg3);color:var(--ink)}.hwcard td.act button[disabled]{opacity:.3;cursor:default}.hwcard td.act button.rm{margin-left:4px;font-size:12px}.hwcard .foot{border-top:1px solid var(--line2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.hwcard .foot .note{margin-left:auto}@media (max-width:560px){.hwcard td.ty,.hwcard td.go{display:none}}.shead{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:14px;display:flex}.shead .bigav{background:var(--av-bg);width:44px;height:44px;color:var(--av-ink);border-radius:50%;flex:none;place-items:center;font-size:16px;font-weight:600;display:grid}.shead h2{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-size:20px;font-weight:600;display:flex}.shead .id{color:var(--ink3);font-size:13px;font-weight:400}.shead .meta{color:var(--ink2);flex-wrap:wrap;gap:6px 14px;margin-top:2px;font-size:13px;display:flex}.shead .meta b{color:var(--ink);font-weight:600}.shead .acts{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.memo{color:#5b4a0c;background:#fffbea;border:1px solid #f4e5a8;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:13px;display:flex}.memo .ico{color:#b8860b;flex:none;margin-top:2px}.memo .tx{white-space:pre-line;overflow-wrap:anywhere;min-width:0}.memo .e{color:#9a7b1a;white-space:nowrap;margin-left:auto;font-size:12px}.memo .e:hover{text-decoration:underline}.ptabs{border-bottom:1px solid var(--line);gap:2px;margin-bottom:16px;display:flex}.ptabs :is(a,button){color:var(--ink2);white-space:nowrap;padding:8px 12px;font-size:14px;position:relative}.ptabs :is(a,button):hover{color:var(--ink)}.ptabs :is(a,button).on{color:var(--ink);font-weight:500}.ptabs :is(a,button).on:after{content:"";background:var(--ink);height:2px;position:absolute;bottom:-1px;left:12px;right:12px}.ptabs .n{color:var(--ink3);margin-left:4px;font-size:12px}.adminhw.busy{opacity:.6;pointer-events:none;transition:opacity .15s}.hwerr{color:#b42318;background:#fdeaea;border-radius:8px;margin:0 0 12px;padding:8px 12px;font-size:13px}:root{--hwbg:#e8f0fe;--hwsel:#eef4ff}.ps.one{grid-template-columns:minmax(0,1fr)}table.pt tr.picked td{background:var(--hwsel)!important}table.pt tr.dis{cursor:default}table.pt tr.dis td{opacity:.55}table.pt td.hwd{color:var(--ink3);white-space:nowrap;font-size:12px}table.pt td.hwd .was{color:var(--hwc);background:var(--hwbg);border-radius:999px;padding:1px 7px;font-size:11.5px}.lesson.pickable{cursor:pointer}.lesson.pickable.picked{border-color:var(--hwc);background:var(--hwsel)}.lesson.pickable.dis{cursor:default;opacity:.55}.lesson.pickable input{width:16px;height:16px;accent-color:var(--hwc)}@media (max-width:640px){.lesson.pickable{grid-template-columns:44px minmax(0,1fr) auto}}.assign .crumb{color:var(--ink3);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.assign .crumb a:hover{color:var(--ink)}.assign .crumb b{color:var(--ink);font-weight:500}.draftwrap{top:calc(50px + env(safe-area-inset-top,0px));z-index:4;background:var(--bg);margin:-4px 0 12px;padding-top:4px;position:sticky}.draftwrap .hwerr{margin:8px 0 0}.draft{background:#f3f7ff;border:1px solid #c9d9fb;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.draft.busy{opacity:.7}.draft .t{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.draft .t .ico{color:var(--hwc)}.draft input{font:inherit;color:var(--ink);background:0 0;border:0;border-bottom:1px dashed #9db6ec;outline:0;width:140px;padding:1px 2px;font-size:14px;font-weight:600}.draft input:focus{border-bottom-color:var(--hwc)}.draft .items{flex-wrap:wrap;flex:1;gap:6px;min-width:200px;max-height:92px;display:flex;overflow:auto}.draft .items .note{color:var(--ink3);font-size:13px}.dchip{background:var(--bg);border:1px solid #c9d9fb;border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:12.5px;display:inline-flex}.dchip .x{color:var(--ink3);border-radius:50%;flex:none;padding:0 3px;font-size:11px}.dchip .x:hover{color:var(--ink);background:var(--bg3)}.dchip.lsn{background:#faf8ff;border-color:#d9ccff}.draft .cnt{color:var(--ink2);white-space:nowrap;font-size:13px}.draft .cnt b{color:var(--ink);font-weight:600}.btn.ghost{color:var(--ink2);background:0 0}.btn.ghost:hover{background:var(--bg3);color:var(--ink)}.assign-top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.assign-top .chips{margin:0}:root{--actc:#1b7a3d;--actbg:#e6f7ec;--lsnc:#5b37c9;--lsnbg:#efe9ff;--hwline:#c9d9fb;--hwdone:#6b7fa8;--hwdonebg:#eef2f9}.c-hw{background:var(--hwc)}.c-act{background:var(--green)}.c-lsn{background:var(--extra)}.c-wt{background:var(--medium)}.calx{border:1px solid var(--line);background:var(--bg);border-radius:12px;overflow:hidden}.calx .ch{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.calx .ch h3{min-width:104px;margin:0;font-size:16px;font-weight:600}.calx .ch .nav2{gap:4px;margin-left:6px;display:flex}.calx .ch .nav2 button,.calx .ch .today{background:var(--bg3);color:var(--ink2);border-radius:6px}.calx .ch .nav2 button{width:26px;height:26px;font-size:13px}.calx .ch .nav2 button:hover,.calx .ch .today:hover{color:var(--ink);background:var(--line)}.calx .ch .legend{color:var(--ink2);flex-wrap:wrap;gap:12px;margin:0 0 0 14px;font-size:12px;display:flex}.calx .ch .legend span{align-items:center;gap:5px;display:inline-flex}.calx .ch .legend i{vertical-align:0;border-radius:3px;width:10px;height:10px;margin:0}.calx .ch .today{margin-left:auto;padding:4px 10px;font-size:12.5px}.calx .dow{color:var(--ink3);text-align:center;border-bottom:1px solid var(--line2);grid-template-columns:repeat(7,1fr);padding:6px 0;font-size:12px;font-weight:500;display:grid}.calx .dow .sun{color:var(--red)}.calx .dow .sat{color:var(--blue)}.calx .grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calx .day{border-right:1px solid var(--line2);border-bottom:1px solid var(--line2);text-align:left;flex-direction:column;align-items:stretch;gap:3px;min-width:0;min-height:80px;padding:6px 6px 4px;display:flex}.calx .day:nth-child(7n){border-right:0}.calx .day:nth-last-child(-n+7){border-bottom:0}.calx .day:hover{background:var(--bg2)}.calx .day:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.calx .day.out{background:var(--bg2)}.calx .day.sel{background:var(--hwsel);box-shadow:inset 0 0 0 2px var(--hwc)}.calx .day .dn{border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:500;display:grid}.calx .day.sun .dn{color:var(--red)}.calx .day.sat .dn{color:var(--blue)}.calx .day.out .dn{color:var(--ink3)}.calx .day.today .dn{background:var(--ink);color:var(--bg)}.calx .ev{white-space:nowrap;text-overflow:ellipsis;border-radius:5px;padding:2px 6px;font-size:11.5px;font-weight:500;line-height:1.45;overflow:hidden}.calx .ev b{font-weight:600}.calx .ev.hw{background:var(--hwbg);color:var(--hwc)}.calx .ev.hw.done{background:var(--hwdonebg);color:var(--hwdone);font-weight:400}.calx .ev.act{background:var(--actbg);color:var(--actc)}.calx .ev.lsn{background:var(--lsnbg);color:var(--lsnc)}.calx .ev.wt{background:var(--wtbg);color:var(--wtc)}.calx .ev.cls{background:var(--bg3);color:var(--ink3);font-weight:400}.dp{margin-top:20px}.dp h3{align-items:center;gap:8px;margin:0 0 10px;font-size:16px;font-weight:600;display:flex}.dp h3 small{color:var(--ink3);font-size:12.5px;font-weight:400}.dp .lab{color:var(--ink3);letter-spacing:.04em;align-items:center;gap:6px;margin:14px 0 6px;font-size:11px;font-weight:600;display:flex}.dp .lab i{border-radius:2px;width:8px;height:8px;display:inline-block}.dp .lab .cnt{margin-left:2px;font-weight:400}.dp .hwcard{border-color:var(--hwline)}.dp .acts{border:1px solid var(--line);background:var(--bg);border-radius:12px;overflow:hidden}.dp .acts .a{border-top:1px solid var(--line2);color:var(--ink);align-items:center;gap:12px;padding:9px 14px;font-size:13.5px;display:flex}.dp .acts .a:first-child{border-top:0}.dp .acts a.a:hover{background:var(--bg2)}.dp .acts .a .tm{color:var(--ink3);flex:none;width:38px;font-size:12px}.dp .acts .a .st{flex:none;place-items:center;width:18px;display:grid}.dp .acts .a .st .wt{color:var(--wtc)}.dp .acts .a .st .lsn{color:var(--extra)}.dp .acts .a .ti{flex:1;min-width:0}.dp .acts .a .subt{color:var(--ink3);font-size:12px;display:block}.dp .acts .a .sc{white-space:nowrap;font-weight:600}.dp .acts .a .sc.note{color:var(--wtc);font-size:12.5px;font-weight:400}.dp .acts .a .fromhw{color:var(--hwc);background:var(--hwbg);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:11px}.dp .empty.small{color:var(--ink3);padding:14px;font-size:13px}@media (max-width:640px){.calx .ch .legend{order:5;width:100%;margin:4px 0 0}.calx .day{min-height:64px;padding:4px 3px}.calx .ev{padding:1px 3px;font-size:10.5px}}.calx .day.sel:after{content:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.subs .filters .subs-new{margin-left:auto}.subs .filters .subs-new .newdot{color:var(--ink2)}.dayh{color:var(--ink3);letter-spacing:.03em;align-items:center;gap:8px;margin:0;padding:14px 0 6px;font-size:12px;font-weight:600;display:flex}.dayh .n{font-weight:400}.dayh:after{content:"";border-top:1px solid var(--line2);flex:1}table.sub2{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13.5px}table.sub2 td{border-bottom:1px solid var(--line2);vertical-align:middle;padding:9px 10px}table.sub2 tr.r{cursor:pointer}table.sub2 tr.r:hover td{background:var(--bg2)}table.sub2 tr.r.on td{background:var(--hwsel)}table.sub2 td.tm{width:52px;color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12.5px}table.sub2 td.st{text-align:center;width:34px}table.sub2 td.st .wt{color:var(--wtc)}table.sub2 td.st .lsn{color:var(--lsnc)}table.sub2 td.t{min-width:0}table.sub2 td.t .open{font:inherit;color:var(--ink);text-align:left;border-radius:4px;padding:0;font-weight:500}table.sub2 td.t .open:hover{color:var(--blue)}table.sub2 td.t .open:focus-visible{outline:2px solid var(--blue);outline-offset:2px}table.sub2 td.t .newdot{vertical-align:1px;margin-left:6px}table.sub2 td .subt{color:var(--ink3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}table.sub2 td.hwc{width:110px;overflow:hidden}table.sub2 td.ty{text-align:right;width:150px}table.sub2 td.dur{width:64px;color:var(--ink3);text-align:right;font-variant-numeric:tabular-nums;font-size:12.5px}table.sub2 td.sc{text-align:right;white-space:nowrap;width:96px;font-weight:600}table.sub2 td.sc small{color:var(--ink3);margin-left:4px;font-weight:400}table.sub2 td.sc .note{font-weight:400}.tag.hw{background:var(--hwbg);color:var(--hwc);text-overflow:ellipsis;vertical-align:middle;max-width:100%;font-size:11.5px;overflow:hidden}.tag.lsn{background:var(--lsnbg);color:var(--lsnc)}@media (max-width:760px){table.sub2 td.hwc,table.sub2 td.dur{display:none}table.sub2 td.ty{width:110px}}@media (max-width:520px){table.sub2 td.ty{display:none}}.drawer-bg{inset:calc(50px + env(safe-area-inset-top,0px)) 0 0 0;z-index:30;background:#0f172a2e;position:fixed}.drawer{background:var(--bg);border-left:1px solid var(--line);outline:0;flex-direction:column;width:min(760px,100%);display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 40px #0000001f}.drawer .dh{border-bottom:1px solid var(--line);padding:14px 52px 12px 20px;position:relative}.drawer .dh h2{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 4px;font-size:16px;font-weight:600;display:flex}.drawer .dh h2 .sc{align-items:center;gap:4px;font-size:14px;display:inline-flex}.drawer .dh .m{color:var(--ink3);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:12.5px;display:flex}.drawer .dh .x{color:var(--ink3);border-radius:6px;padding:2px 8px;font-size:20px;position:absolute;top:10px;right:12px}.drawer .dh .x:hover{background:var(--bg3);color:var(--ink)}.drawer .db{overscroll-behavior:contain;flex:1;overflow:auto}.drawer .db>.note,.drawer .db>.hwerr{margin:16px 20px}.drawer .df{border-top:1px solid var(--line);align-items:center;gap:8px;padding:10px 20px;display:flex}.drawer .df .ghost{margin-left:auto}.acc{grid-template-columns:1fr 1fr;align-items:start;gap:18px;max-width:900px;display:grid}.acc .box{border:1px solid var(--line);border-radius:12px;min-width:0;padding:16px}.acc .box+.box{margin-top:18px}.acc .box h3{margin:0 0 12px;font-size:14px;font-weight:600}.acc .f{min-width:0;margin:0 0 12px}.acc .f>label,.acc .f .lab,.acc .f legend{color:var(--ink2);margin-bottom:4px;padding:0;font-size:12.5px;display:block}.acc .f input:not([type=checkbox]),.acc .f .in{border:1px solid var(--line);width:100%;font:14px var(--font);color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.acc .f input:not([type=checkbox]):focus,.acc .f textarea:focus{border-color:var(--blue)}.acc .f .in.ro{background:var(--bg2);color:var(--ink2)}.acc .f .in .hint{color:var(--ink3);text-overflow:ellipsis;white-space:nowrap;margin-left:auto;font-size:12px;overflow:hidden}.acc .f .pw{gap:8px;display:flex}.acc .f .pw input{flex:1;min-width:0}.acc .f textarea{min-height:92px;font:13.5px/1.5 var(--font);color:#5b4a0c;background:#fffbea;border-color:#f4e5a8;padding:8px 10px}.acc .f .help{color:var(--ink3);margin-top:4px;font-size:12px}.acc fieldset.dows{border:0;flex-wrap:wrap;gap:4px 12px;padding:0;font-size:13px;display:flex}.acc fieldset.dows legend{width:100%}.acc fieldset.dows label{color:var(--ink);cursor:pointer;align-items:center;gap:4px;display:inline-flex}.acc .row2{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.acc .row2 .hwerr{margin:0;padding:4px 10px}.acc .accok{color:var(--ink2);font-size:12.5px}.acc .box.danger{background:snow;border-color:#f5c2c2}.acc .box.danger h3{color:#b42318}.acc .box.danger .row2{border-top:1px solid #f5dede;flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;padding:8px 0}.acc .box.danger .row2:first-of-type{border-top:0}.acc .box.danger b{font-weight:500}.acc .box.danger p{color:var(--ink2);margin:2px 0 0;font-size:13px}.acc .box.danger .btn{flex:none}.acc .box.danger>.accok,.acc .box.danger>.hwerr{margin:8px 0 0;display:block}.acc .box.log{color:var(--ink2);gap:4px;font-size:13px;display:grid}.acc .box.log h3{color:var(--ink)}@media (max-width:900px){.acc{grid-template-columns:1fr}}.modal:has(.accreset){width:min(460px,100%)}.accreset{gap:10px;font-size:14px;display:grid}.accreset p{margin:0}.accreset input{border:1px solid var(--line);width:100%;font:14px var(--mono);border-radius:8px;padding:8px 10px}.accreset input:focus{border-color:#b42318}.accreset .hwerr{margin:0}.modal:has(.addst){width:min(480px,100%)}.acc.addst{max-width:none;display:block}.acc.addst>.note{color:var(--ink2);margin:0 0 14px;font-size:13px}.acc.addst>.hwerr{margin:0}.acc.addst .cred{border:1px solid var(--line);background:var(--bg2);border-radius:10px;grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 12px;padding:12px 14px;display:grid}.acc.addst .cred dt{color:var(--ink2);align-self:center;font-size:12.5px}.acc.addst .cred dd{font:15px var(--mono);-webkit-user-select:all;user-select:all;word-break:break-all;margin:0}.acc.addst .copy{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.acc.addst .copy .hwerr{margin:0;padding:4px 10px}.subs .subs-cap{margin:0 0 8px}
.pte-instr{color:var(--ink2);background:var(--bg2);border:1px solid var(--line2);border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:13.5px;line-height:1.6}.pte-prompt{font-size:15.5px;font-weight:500}.pte-n{color:var(--blue);vertical-align:super;margin:0 1px 0 2px;font-size:10px;font-weight:700}.pte-fix{color:#1b7a3d;margin:0 4px 0 3px;font-size:13px;font-weight:600}.pte-ok{color:#1b7a3d}.pte-no{color:#b42318;text-decoration:line-through}.pte-speak .pte-ra{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:72ch;margin:0 0 12px;padding:14px 18px;font-size:17px;line-height:1.75}.pte-speak .pte-img{border:1px solid var(--line);border-radius:10px;max-width:100%;max-height:520px;margin:0 0 12px;display:block}.pte-speak .pte-situ{border:1px solid var(--line2);background:var(--bg2);border-radius:12px;margin:0 0 12px;padding:12px 16px;font-size:15.5px;line-height:1.65}.pte-rec{border:1px solid var(--line);background:#fff;border-radius:12px;margin:4px 0 10px;padding:12px 14px}.pte-rec .row{flex-wrap:wrap;align-items:center;gap:12px;min-height:32px;display:flex}.pte-rec .st{color:var(--ink2);font-weight:600}.pte-rec .cd{font-variant-numeric:tabular-nums;font-size:20px}.pte-rec .cd.on{color:var(--red)}.pte-rec .bar{background:var(--bg3);border-radius:3px;height:6px;margin:10px 0 2px;overflow:hidden}.pte-rec .bar i{background:var(--ink);height:100%;transition:width .25s linear;display:block}.pte-rec.rec .bar i{background:var(--red)}.pte-rec .out{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.pte-rec .out audio{max-width:100%;height:36px}.passage.pte-fib{max-width:none;font-size:15.5px;line-height:2.1}.pte-fib select.blank{width:auto;min-width:110px;height:28px;font:inherit;cursor:pointer;padding:0 4px;font-size:14px}.pte-fib select.blank:disabled{opacity:1;cursor:default}.pte-fib .pte-slot{width:auto;height:28px;line-height:26px;font:inherit;background:var(--bg3);cursor:pointer;border-style:dashed;padding:0 10px;font-size:14px}.pte-fib .pte-slot.filled{background:#fff;border-style:solid}.pte-fib .pte-slot:disabled{cursor:default}.pte-fib input.blank{width:150px;height:28px;font:inherit;text-align:left;padding:0 6px;font-size:14px}.pte-fib input.blank:disabled{background:var(--bg2);cursor:not-allowed}.pte-bank{border:1px solid var(--line2);background:var(--bg2);border-radius:12px;justify-content:center;margin:10px 0 0;padding:12px}.pte-bank .chipw{font-family:var(--font);font-size:14px}.opt.multi .l{color:#0000;background:#fff;border:1.5px solid #c5c8cd;border-radius:5px;font-size:0}.opt.multi.pick .l{background:var(--ink);border-color:var(--ink);color:#fff;font-size:12px}.opt.multi.correct .l{background:var(--green);border-color:var(--green);color:#fff;font-size:12px}.opt.multi.wrong .l{background:var(--red);border-color:var(--red);color:#fff;font-size:12px}.opt.multi.missed{border-color:var(--green);border-style:dashed}.opt.multi.missed .l{border-color:var(--green)}.opt.multi.missed .lbl{color:#1b7a3d}.opts.off .opt{color:var(--ink3);cursor:not-allowed}.opts.off .opt:hover{border-color:var(--line);background:#fff}.pte-ro{flex-direction:column;gap:8px;display:flex}.pte-ro .par{border:1px solid var(--line);cursor:grab;background:#fff;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:14.5px;line-height:1.6;display:flex}.pte-ro .par.drag{opacity:.4}.pte-ro .par .lab{color:var(--ink3);font-variant-numeric:tabular-nums;flex:none;width:20px;font-weight:600}.pte-ro .par .tx{flex:1;min-width:0}.pte-ro .par .ctl{flex-direction:column;flex:none;gap:2px;display:flex}.pte-ro .par .ctl button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:4px;width:26px;height:22px;font-size:11px}.pte-ro .par .ctl button:disabled{opacity:.35;cursor:default}.pte-ro .par.ok{border-color:var(--green);cursor:default;background:#f0faf3}.pte-ro .par.no{border-color:var(--red);cursor:default;background:#fdf2f2}.passage.pte-hiw{max-width:none;font-size:15.5px;line-height:2}.pte-hiw .w{cursor:pointer;border-radius:3px;padding:2px 1px}.pte-hiw .w:hover{background:#eef5f5}.pte-hiw.off .w{cursor:not-allowed;color:var(--ink3)}.pte-hiw.off .w:hover{background:0 0}.pte-hiw .w.sel{background:#ffe9a8}.pte-hiw .w.hit{color:#1b7a3d;cursor:default;background:#e6f7ec;font-weight:600}.pte-hiw .w.miss{color:#b42318;cursor:default;background:#fdeaea;text-decoration:line-through}.pte-hiw .w.left{outline:2px dashed var(--red);outline-offset:-1px;cursor:default}.pte-wfd{width:100%;height:40px;font:inherit;border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 12px;font-size:16px}.pte-wfd:focus{border-color:var(--ink3);outline:none}.pte-wfd:disabled{background:var(--bg2)}.pte-pick .tcard .t b{font-size:14px}.pte-pick .msum .seq{font-family:var(--mono);color:var(--ink3);font-size:12px}
.gsec{color:var(--ink3);letter-spacing:.04em;text-transform:uppercase;margin:18px 0 8px;font-size:12px;font-weight:600}.gsec:first-child{margin-top:0}.lesson .meta .ex{color:var(--ink2);display:block}.lesson .acts{gap:6px;display:flex}.lwrap.has .lesson{border-bottom-right-radius:0;border-bottom-left-radius:0}.lwrap .lesson{cursor:pointer}.attempts .hd,.attempts .row,.xside .recent .row{text-align:left;width:100%}.attempts{border:1px solid var(--line);background:var(--bg2);border-top:0;border-radius:0 0 12px 12px;margin:0 10px}.attempts .hd{color:var(--ink2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;display:flex}.attempts .hd .ico{width:14px;height:14px;transition:transform .15s}.attempts.closed .hd .ico{transform:rotate(-90deg)}.attempts.closed .rows{display:none}.attempts .hd .n{color:var(--ink3)}.attempts .hd .sp{flex:1}.attempts .hd .q{color:var(--blue);border:0;padding:0;font-size:12px;font-weight:500}.attempts .row{border-top:1px solid var(--line2);cursor:pointer;background:var(--bg);grid-template-columns:minmax(0,1fr) auto auto 18px;align-items:center;gap:14px;padding:9px 14px;font-size:13px;display:grid}.attempts .row:last-child{border-radius:0 0 11px 11px}.attempts .row:hover{background:var(--bg3)}.attempts .row .t{font-weight:500}.attempts .row .t small{color:var(--ink3);margin-left:6px;font-weight:400}.attempts .row .d{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:12px}.attempts .row .sc,.xside .recent .row .sc{font-variant-numeric:tabular-nums;color:var(--green);font-weight:600}.attempts .row .sc.lo,.xside .recent .row .sc.lo{color:var(--medium)}.attempts .row .sc.bad,.xside .recent .row .sc.bad{color:var(--red)}.attempts .row .ico{color:var(--ink3);width:14px;height:14px}.xside .recent{border:1px solid var(--line);background:var(--bg2);border-radius:10px;margin:0 0 6px;overflow:hidden}.xside .recent .row{cursor:pointer;background:var(--bg);grid-template-columns:minmax(0,1fr) auto auto 14px;align-items:center;gap:8px;padding:9px 14px;font-size:12.5px;display:grid}.xside .recent .row:hover{background:var(--bg3)}.xside .recent .row .t{font-weight:500}.xside .recent .row .d{color:var(--ink3);font-variant-numeric:tabular-nums;font-size:11px}.xside .recent .row .ico{color:var(--ink3);width:14px;height:14px}@media (max-width:600px){.lesson .acts{grid-column:2}.lesson .meta .ex{display:none}.attempts{margin:0 6px}.attempts .row{grid-template-columns:minmax(0,1fr) auto auto 14px;gap:8px;font-size:12.5px}}.modal .mh .sub{color:var(--ink3);font-size:13px}.sheet{border-collapse:collapse;width:100%;font-size:13.5px}.sheet th{text-align:left;color:var(--ink3);border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 8px 8px;font-size:12px;font-weight:500}.sheet td{border-bottom:1px solid var(--line2);vertical-align:top;padding:11px 8px}.sheet td.n{color:var(--ink3);font-variant-numeric:tabular-nums;width:28px}.sheet td.ko{color:var(--ink2);width:30%}.sheet td.my{font-family:var(--font)}.sheet td.my.bad{color:var(--red)}.sheet td.md{color:var(--ink2)}.sheet td.ok{text-align:center;width:28px}.sheet .ok .ico{width:16px;height:16px}.sheet .ok.y{color:var(--green)}.sheet .ok.n{color:var(--red)}.sheet mark{color:var(--blue);background:#e8f0fe;border-radius:4px;padding:0 2px}.sheet .flag{color:#9a5b00;margin-top:3px;font-size:12px}.sum{color:var(--ink2);align-items:center;gap:10px;padding:14px 0 6px;font-size:13px;display:flex}.sum b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px}.sum .pill{background:var(--bg3);border-radius:999px;padding:3px 10px;font-size:12px}svg.chart{display:block}.modal:has(.sheet) .mh{z-index:1;background:#fff;position:sticky;top:0}@media (max-width:640px){.lwrap .lesson .acts .btn.p{display:inline-flex}}.lplayer.xp .xerr{color:#9a5b00;background:#fff8ec;border:1px solid #ffe2b3;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:15px;font-weight:600;display:flex}.lplayer.xp .act .btn.bad{color:var(--red)}.lplayer.xp .top{color:var(--ink3);align-items:center;gap:12px;font-size:14px;display:flex}.lplayer.xp .top .k{letter-spacing:.04em;text-transform:uppercase;color:var(--ink3);font-size:12px;font-weight:600}.lplayer.xp .top .pb{background:var(--bg3);border-radius:3px;flex:1;max-width:420px;height:5px;overflow:hidden}.lplayer.xp .top .pb i{background:var(--green);height:100%;display:block}.lplayer.xp .top .st{gap:6px;display:flex}.lplayer.xp .top .st span{background:var(--bg3);color:var(--ink3);border-radius:999px;padding:3px 9px;font-size:11.5px}.lplayer.xp .top .st span.on{background:var(--ink);color:#fff}.lplayer.xp .top .st span.ok{color:#1b8a44;background:#e9f8ee}.lplayer.xp .slide h2{letter-spacing:-.01em;margin:0;font-size:38px;font-weight:700}.lplayer.xp .slide h2 small{color:var(--ink3);margin-left:12px;font-size:18px;font-weight:400}.lplayer.xp .lead{color:var(--ink2);font-size:18px}.lplayer.xp .expr{flex-wrap:wrap;align-items:baseline;gap:16px;display:flex}.lplayer.xp .expr .v{letter-spacing:-.01em;font-size:56px;font-weight:700;line-height:1.1}.lplayer.xp .expr .plus{color:var(--ink3);font-size:30px}.lplayer.xp .expr .ns{flex-wrap:wrap;gap:8px;display:flex}.lplayer.xp .expr .ns span{color:var(--blue);background:#e8f0fe;border-radius:999px;padding:5px 14px;font-size:22px;font-weight:500}.lplayer.xp .mean{color:var(--ink2);font-size:19px}.lplayer.xp .frame{flex-wrap:wrap;align-items:center;gap:10px;margin-top:-4px;font-size:16px;display:flex}.lplayer.xp .frame .lb{letter-spacing:.04em;color:var(--ink3);text-transform:uppercase;font-size:11.5px;font-weight:700}.lplayer.xp .frame .f{font-family:var(--mono);background:var(--bg3);color:var(--ink);border-radius:8px;padding:4px 12px;font-size:16px;font-weight:600}.lplayer.xp .frame .nt{color:var(--ink3);font-size:13.5px}.lplayer.xp .wrong{flex-wrap:wrap;gap:14px;margin-left:auto;font-size:17px;display:inline-flex}.lplayer.xp .wrong .no{color:var(--red);text-decoration:line-through;text-decoration-thickness:1.5px}.lplayer.xp .wrong .no u,.lplayer.xp .wrong .yes u{border-radius:4px;padding:0 2px;font-weight:700;text-decoration:none}.lplayer.xp .wrong .no u{background:#fff1f1}.lplayer.xp .wrong .yes{color:#1b8a44;font-weight:600}.lplayer.xp .wrong .yes u{background:#e9f8ee}.lplayer.xp .use .fr{font-family:var(--mono);color:var(--ink2);background:var(--bg3);border-radius:7px;padding:3px 10px;font-size:14px}.lplayer.xp .use .fchip{font-family:var(--mono);color:#9a5b00;background:#fff8ec;border:1px solid #ffe2b3;border-radius:7px;padding:3px 10px;font-size:14.5px;font-weight:600}.lplayer.xp .flag{color:#9a5b00;background:#fff8ec;border:1px solid #ffe2b3;border-radius:10px;align-items:center;gap:8px;margin-top:8px;padding:10px 14px;font-size:17px;font-weight:600;display:flex}.lplayer.xp .flag .ico{width:18px;height:18px;color:var(--red)}.lplayer.xp .model .alt{color:var(--ink2);margin-top:4px;font-size:18px}.lplayer.xp .learnrow{align-items:flex-start;gap:18px;display:flex}.lplayer.xp .learnrow .exs{flex:1;min-width:0}.lplayer.xp .chartbox{flex:none}.lplayer.xp .wrow{align-items:center;gap:20px;display:flex}.lplayer.xp .wrow .ko-p{flex:1;min-width:0;margin-top:0;font-size:30px}.lplayer.xp .reft{border-collapse:collapse;margin-top:2px;font-size:13.5px}.lplayer.xp .reft th{text-align:left;color:var(--ink3);white-space:nowrap;vertical-align:top;padding:2px 12px 2px 0;font-weight:600}.lplayer.xp .reft td{color:var(--ink2);padding:2px 0}.lplayer.xp .exs{gap:10px;margin-top:2px;display:grid}.lplayer.xp .ex{border:1px solid var(--line);background:var(--bg2);border-radius:12px;padding:11px 16px;display:block}.lplayer.xp .ex .en{font-size:24px;line-height:1.5}.lplayer.xp .ex .ko{color:var(--ink3);margin-top:4px;font-size:15px}.lplayer.xp mark.k{color:var(--blue);background:#e8f0fe;border-radius:7px;padding:0 7px;font-weight:600}.lplayer.xp .model mark,.lplayer.xp .sheet mark{color:var(--blue);background:#e8f0fe;border-radius:5px;padding:0 4px;font-weight:600}.lplayer.xp .ex input{font:inherit;border:0;border-bottom:2.5px solid var(--blue);min-width:260px;color:var(--ink);background:#f3f7ff;border-radius:6px 6px 0 0;outline:0;padding:0 10px;font-size:24px}.lplayer.xp .ex input.y{border-color:var(--green);background:#eefaf2}.lplayer.xp .ex input.n{border-color:var(--red);color:var(--red);background:#fff1f1}.lplayer.xp .ex .fix{color:var(--green);margin-top:6px;font-size:16px;font-weight:500}.lplayer.xp .ko-p{margin-top:6px;font-size:34px;font-weight:600;line-height:1.45}.lplayer.xp .use{color:var(--ink2);align-items:center;gap:10px;font-size:16px;display:flex}.lplayer.xp .use .chip{color:var(--blue);background:#e8f0fe;border-radius:999px;padding:4px 12px;font-size:16px;font-weight:600}.lplayer.xp textarea{width:100%;font:inherit;border:1.5px solid var(--line);resize:none;min-height:118px;color:var(--ink);background:#fff;border-radius:12px;outline:0;padding:16px 18px;font-size:26px;line-height:1.45}.lplayer.xp textarea:focus{border-color:var(--ink)}.lplayer.xp textarea[readonly]{background:var(--bg2);color:var(--ink2)}.lplayer.xp .model{background:#eefaf2;border:1px solid #bfe8cc;border-radius:12px;padding:14px 18px}.lplayer.xp .model .lb{color:#1b8a44;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:600}.lplayer.xp .model .en{font-size:25px;line-height:1.45}.lplayer.xp .fb{align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.lplayer.xp .fb.ok{color:#1b8a44}.lplayer.xp .fb.hm{color:#9a5b00}.lplayer.xp .fb .ico{width:18px;height:18px}.lplayer.xp .grid7{grid-template-columns:repeat(2,1fr);gap:10px 28px;display:grid}.lplayer.xp .grid7 div{border-bottom:1px solid var(--line2);align-items:baseline;gap:10px;padding:8px 0;font-size:19px;display:flex}.lplayer.xp .grid7 b{min-width:150px;font-size:22px}.lplayer.xp .grid7 span{color:var(--ink2)}.lplayer.xp .plan{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.lplayer.xp .plan div{background:var(--bg2);border:1px solid var(--line);min-width:160px;color:var(--ink2);border-radius:12px;flex:1;padding:12px 14px;font-size:14px}.lplayer.xp .plan b{color:var(--ink);margin-bottom:2px;font-size:15px;display:block}.lplayer.xp .score{align-items:baseline;gap:10px;display:flex}.lplayer.xp .score b{font-size:64px;font-weight:700;line-height:1}.lplayer.xp .score span{color:var(--ink3);font-size:20px}.lplayer.xp .sheet{font-size:16px}.lplayer.xp .sheet td{padding:9px 8px}.lplayer.xp .sheet th{font-size:12px}.lplayer.xp .sheet .flag{background:0 0;border:0;margin-top:3px;padding:0;font-size:12px;font-weight:400;display:block}.lplayer.xp .slide p{max-width:none}
