.screen--class{display:flex;flex-direction:column;gap:22px}.cls-note{padding:18px 0;color:var(--muted);font-size:14.5px;line-height:1.55}.cls-note--small{padding:6px 0;font-size:13px}.cls-live{position:relative;overflow:hidden;display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:20px 22px;border-radius:18px;border:1px solid #5a2a2f;background:radial-gradient(120% 140% at 0% 0%,rgba(252,100,100,.16),transparent 55%),var(--panel-red)}.cls-live:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.05) 50%,transparent 60%);transform:translate(-100%);animation:cls-sheen 4.5s ease-in-out infinite}.cls-live-pulse{position:relative;width:14px;height:14px;flex:none;border-radius:50%;background:var(--red)}.cls-live-pulse:before,.cls-live-pulse:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--red);animation:cls-ping 2s cubic-bezier(.2,.7,.2,1) infinite}.cls-live-pulse:after{animation-delay:1s}.cls-live-text{flex:1;min-width:200px;display:flex;flex-direction:column;gap:4px}.cls-live-kicker{font:600 11px var(--mono);color:var(--red);letter-spacing:.08em}.cls-live-title{font-size:22px;font-weight:700;letter-spacing:-.02em}.cls-live-chip{padding:4px 9px;border-radius:999px;background:#fc64641f;color:var(--red);font:600 11px var(--mono);animation:blink 1.6s steps(1) infinite}@keyframes cls-ping{0%{transform:scale(1);opacity:.9}to{transform:scale(3.2);opacity:0}}@keyframes cls-sheen{0%,30%{transform:translate(-100%)}70%,to{transform:translate(100%)}}.cls-block{display:flex;flex-direction:column;gap:14px}.cls-join{display:flex;gap:18px 24px;align-items:center;flex-wrap:wrap;padding:20px 22px;border:1px solid var(--line-4);border-radius:18px;background:var(--panel)}.cls-join-text{flex:1;min-width:220px;display:flex;flex-direction:column;gap:6px}.cls-join-sub{color:var(--body);font-size:14.5px}.cls-join-form{display:flex;gap:10px;flex-wrap:wrap}.cls-code-box{width:210px}.cls-code-input{font-size:19px;letter-spacing:.18em;text-transform:uppercase}.cls-list{display:flex;flex-direction:column;border:1px solid var(--line-4);border-radius:16px;overflow:hidden;background:var(--panel)}.cls-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-top:1px solid var(--line)}.cls-row:first-child{border-top:0}.cls-row-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:10px;background:var(--key-fill);border:1px solid var(--line-5);font:600 12px var(--mono);color:var(--red)}.cls-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.cls-row-name{font-weight:650;font-size:15.5px}.cls-row-sub{color:var(--muted);font:500 12px var(--mono)}.cls-teacher{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}.cls-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:24px}.cls-side-list{display:flex;flex-direction:column;gap:6px}.cls-tab{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 14px;text-align:left;border-radius:12px;border:1px solid transparent;background:transparent;cursor:pointer;transition:background .2s,border-color .2s}.cls-tab:hover{background:#101213}.cls-tab.is-on{background:#131516;border-color:var(--line-4);box-shadow:inset 3px 0 0 var(--red)}.cls-tab-name{font-weight:650;font-size:15px}.cls-tab-sub{display:flex;gap:6px;align-items:center;color:var(--muted);font:500 11.5px var(--mono)}.cls-tab-live{color:var(--red);animation:blink 1.4s steps(1) infinite}.cls-new{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.cls-main{min-width:0}.cls-detail{display:flex;flex-direction:column;gap:16px;animation:rise .35s ease}.cls-detail-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.cls-detail-name{margin:0;font-size:32px;letter-spacing:-.03em}.cls-detail-count{color:var(--muted);font:500 13px var(--mono)}.cls-invite{display:flex;gap:18px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:20px 22px;border-radius:18px;border:1px solid var(--line-4);background:linear-gradient(180deg,#0f1112,#0b0c0d)}.cls-invite-left{display:flex;flex-direction:column;gap:10px}.cls-invite-code{display:flex;gap:6px;padding:0;border:0;background:none;cursor:copy}.cls-invite-char{width:38px;height:50px;display:grid;place-items:center;border-radius:9px;background:var(--key-fill);border:1px solid var(--line-5);border-bottom-width:3px;font:700 24px var(--mono);color:var(--text);animation:cls-key .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 45ms)}.cls-invite-char.is-gap{margin-left:12px}.cls-invite-code:hover .cls-invite-char{border-color:#5a2a2f;color:var(--red-soft)}.cls-invite.is-closed .cls-invite-char{color:var(--faint);text-decoration:line-through}.cls-invite-note{color:var(--muted);font-size:13.5px}.cls-invite-actions{display:flex;gap:8px;flex-wrap:wrap}@keyframes cls-key{0%{opacity:0;transform:translateY(-10px) rotateX(70deg)}to{opacity:1;transform:none}}.cls-lessons{display:flex;flex-direction:column;gap:10px}.cls-lesson{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px;border-radius:18px;border:1px solid var(--line-4);background:var(--panel);transition:border-color .25s,transform .25s}.cls-lesson:hover{border-color:#3a2a1e;transform:translateY(-1px)}.cls-lesson-art{position:relative;width:92px;height:72px;flex:none;border-radius:14px;overflow:hidden;background:radial-gradient(80% 90% at 30% 20%,rgba(255,198,92,.2),transparent 70%),#12100c;border:1px solid #3a3020}.cls-lesson-tag{position:absolute;font:700 15px var(--mono)}.cls-lesson-tag{left:14px;bottom:8px;color:var(--muted);font-size:13px;animation:cls-float 5s ease-in-out infinite}@keyframes cls-float{50%{transform:translateY(-4px)}}.cls-lesson-info{flex:1;min-width:220px;display:flex;flex-direction:column;gap:5px}.cls-lesson-title{font-size:19px;font-weight:700;letter-spacing:-.02em}.cls-lesson-sub{color:var(--body);font-size:14px}.cls-lesson-meta{color:var(--dim);font:500 11.5px var(--mono)}.cls-lesson-go.is-off{opacity:.45;pointer-events:none}.cls-lesson-num{position:absolute;left:12px;top:8px;font:800 30px var(--mono);color:var(--yellow);letter-spacing:-.04em}.cls-lesson-module{font:600 11px var(--mono);color:var(--red);letter-spacing:.06em;text-transform:uppercase}.cls-more{align-self:flex-start}.cls-cpicker{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cls-cpick{height:34px;padding:0 14px;border:1px solid var(--line-3);border-radius:10px;background:var(--panel);color:var(--body);font:600 13px var(--sans);cursor:pointer;transition:border-color .2s,color .2s,background .2s}.cls-cpick:hover{border-color:var(--line-5);color:var(--text)}.cls-cpick.is-on{border-color:#5a2a2f;background:linear-gradient(180deg,#2a1416,#170b0c);color:var(--text)}.cls-ege{border:1px solid var(--line-3);border-radius:16px;background:var(--panel);overflow:hidden}.cls-ege-head{width:100%;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border:0;background:transparent;cursor:pointer}.cls-ege-toggle{font:500 12px var(--mono);color:var(--muted)}.cls-ege-body{display:flex;flex-direction:column;gap:14px;padding:0 16px 16px}.cls-ege-note{margin:0;color:var(--body);font-size:13.5px;line-height:1.55}.cls-ege-table{display:flex;flex-direction:column;gap:4px}.cls-ege-row{display:grid;grid-template-columns:minmax(0,1fr) auto 56px;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line-2)}.cls-ege-name{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cls-ege-mults,.cls-ege-cfg{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.cls-ege-label{font:500 12px var(--mono);color:var(--dim);margin-left:4px}.cls-ege-chip{height:30px;padding:0 10px;border-radius:8px;border:1px solid var(--line-4);background:var(--key-fill);color:var(--muted);font:600 12px var(--mono);cursor:pointer}.cls-ege-chip.is-on{border-color:var(--blue);color:var(--text);background:#6cc7ff1f}.cls-ege-blur{align-self:flex-start}.cls-ege-index{text-align:right;font:700 14px var(--mono);color:var(--dim)}.cls-ege-index.is-good{color:var(--green)}.cls-ege-index.is-mid{color:var(--yellow)}.cls-ege-index.is-low{color:var(--red)}.results-row.cls-ege-stat{grid-template-columns:minmax(0,1.4fr) 80px 70px 80px}.cls-ege-csv{align-self:flex-start;display:inline-flex;align-items:center;text-decoration:none}.cls-program-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.cls-program-passed{font:500 12px var(--mono);color:var(--muted)}.cls-course{display:flex;flex-direction:column;gap:8px}.cls-mod{border:1px solid var(--line-3);border-radius:16px;background:var(--panel);overflow:hidden;transition:border-color .25s}.cls-mod.is-open{border-color:var(--line-5)}.cls-mod-head{width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;border:0;background:transparent;text-align:left;cursor:pointer}.cls-mod-head:hover{background:#101213}.cls-mod-n{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:9px;background:#16181a;font:700 14px var(--mono);color:var(--muted)}.cls-mod.is-open .cls-mod-n{background:linear-gradient(180deg,#2a1416,#170b0c);color:var(--red-soft)}.cls-mod.is-done .cls-mod-n{background:#4fd69c24;color:var(--green)}.cls-mod-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.cls-mod-title{font-weight:650;font-size:15.5px}.cls-mod-sub{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cls-mod-progress{font:600 12px var(--mono);color:var(--dim)}.cls-mod-arrow{font:600 20px var(--mono);color:var(--dim);transition:transform .3s var(--ease, ease)}.cls-mod.is-open .cls-mod-arrow{transform:rotate(90deg)}.cls-mod-lessons{display:flex;flex-direction:column;border-top:1px solid var(--line);animation:rise .3s ease}.cls-unit{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--line)}.cls-unit:first-child{border-top:0}.cls-unit-n{width:30px;flex:none;text-align:right;font:600 13px var(--mono);color:var(--dim)}.cls-unit-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cls-unit-title{font-weight:600;font-size:14.5px}.cls-unit-sub{color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cls-unit-mark{width:18px;color:var(--green);font-weight:700}.cls-unit.is-done .cls-unit-title{color:var(--soft)}.cls-unit.is-next{background:#fc64640d;box-shadow:inset 3px 0 0 var(--red)}.cls-unit.is-next .cls-unit-n{color:var(--red)}.cls-unit-go{flex:none}.cls-unit-go.is-off{opacity:.4;pointer-events:none}.cls-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.cls-member{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line-3);border-radius:12px;background:var(--panel)}.cls-member-av{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;background:#1d2022;color:var(--soft);font-weight:700}.cls-member-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.cls-member-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cls-member-sub{color:var(--dim);font:500 11px var(--mono)}@media(max-width:999px){.cls-teacher{grid-template-columns:minmax(0,1fr)}.cls-side{position:static}.cls-side-list{flex-direction:row;flex-wrap:wrap}}@media(max-width:759px){.cls-invite-char{width:30px;height:42px;font-size:19px}.cls-invite-char.is-gap{margin-left:6px}.cls-code-box,.cls-join-form{width:100%}.cls-detail-name{font-size:26px}.cls-mod-sub,.cls-unit-sub{display:none}.cls-unit{padding:10px 12px;gap:8px}.cls-unit-n{width:22px}}@media(prefers-reduced-motion:reduce){.cls-live:after,.cls-live-pulse:before,.cls-live-pulse:after,.cls-lesson-tag,.cls-live-chip,.cls-tab-live{animation:none}.cls-invite-char{animation:none}}.cls-cab-pick{display:flex;flex-wrap:wrap;gap:4px}.cls-cab-pick .cls-ege-chip{min-width:38px;justify-content:center}.cls-cab-pick b{margin-left:3px;font-weight:700;color:var(--green)}.cls-cab-form{display:grid;grid-template-columns:minmax(0,1fr) 170px auto;gap:8px;align-items:center}.cls-cab-hw,.cls-cab-student,.cls-cab-replay,.cls-cab-report{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:12px;border:1px solid var(--line-3)}.cls-cab-hw-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cls-cab-hw-head>span{font:500 12px var(--mono);color:var(--muted);margin-right:auto}.cls-cab-hw-head>b{color:var(--text);margin-right:auto}.cls-cab-hw-head>b+span{margin-right:auto}.cls-cab-hw-rows{display:flex;flex-wrap:wrap;gap:6px}.cls-cab-hw-row{padding:4px 9px;border-radius:8px;background:var(--panel);font-size:12.5px;color:var(--soft)}.cls-cab-hw-row.is-done{color:var(--green)}.cls-cab-map{display:flex;flex-direction:column;gap:3px;overflow-x:auto;padding-bottom:4px}.cls-cab-line{display:grid;grid-template-columns:150px repeat(27,18px) 92px 52px;gap:3px;align-items:center;min-width:max-content;padding:3px 6px;border-radius:8px;border:1px solid transparent;background:none;color:var(--soft);font-size:12.5px;text-align:left;cursor:pointer}.cls-cab-line:hover,.cls-cab-line.is-on{border-color:var(--line-4);background:var(--panel)}.cls-cab-line--head{cursor:default;font:600 10.5px var(--mono);color:var(--dim);text-align:center}.cls-cab-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cls-cab-cell{width:18px;height:18px;border-radius:5px;background:var(--line-2, #1b1d20);border:1px solid var(--line-3)}.cls-cab-cell.is-trying{background:#fc646459}.cls-cab-cell.is-solved{background:#ffc85073}.cls-cab-cell.is-understood{background:#4fd69c99}.cls-cab-cell.is-review{background:#6cc7ff80}.cls-cab-att{display:grid;grid-template-columns:20px minmax(110px,1fr) 110px minmax(0,1.4fr) 90px auto;gap:8px;align-items:center;font-size:12.5px;color:var(--soft)}.cls-cab-att.is-right b{color:var(--green)}.cls-cab-att.is-wrong b{color:var(--red-soft)}.cls-cab-slider{width:100%}.cls-cab-code{margin:0;padding:12px;border-radius:10px;background:#0b0c0d;color:#d7dade;font:12.5px/1.5 var(--mono);white-space:pre-wrap;max-height:320px;overflow:auto}.cls-cab-marks{display:flex;flex-wrap:wrap;gap:6px;font:500 11.5px var(--mono);color:var(--yellow)}.cls-cab-rep-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:10px;font-size:13px}.cls-cab-rep-row>span{color:var(--muted)}@media(max-width:759px){.cls-cab-form{grid-template-columns:minmax(0,1fr)}.cls-cab-att{grid-template-columns:20px minmax(0,1fr)}.cls-cab-att>span:nth-child(n+3){grid-column:2}.cls-cab-rep-row{grid-template-columns:minmax(0,1fr)}}
