.wrong-panel-root{display:flex;flex-direction:column;height:100%;min-height:400px;overflow:hidden}.wrong-panel-root h2{margin-bottom:16px;text-align:center}.legend-line{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:10px;justify-content:center;margin-bottom:12px;opacity:.9}.legend-red{color:#ffd8d8}.round-tabs,.session-tabs,.subject-tabs{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:8px 0 12px}.tab-btn{appearance:none;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;font-size:13px;font-weight:700;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.tab-btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--primary)}.tab-btn.active{box-shadow:0 2px 8px #00000029}.tab-btn.active,.tab-btn.active:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff;color:var(--active-ink,#fff)}.tab-btn.active:hover:not(:disabled){filter:brightness(.92)}.tab-btn:disabled{background:var(--surface);border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.4}.tab-content{flex:1 1;min-height:250px;overflow:hidden;padding:8px;position:relative}.btn-grid{align-content:start;display:grid;height:100%;overflow:visible;padding:4px;width:100%}.btn-grid,.qbtn{box-sizing:border-box;justify-content:center}.qbtn{-webkit-tap-highlight-color:transparent;align-items:center;appearance:none;background:#ffffff0a;border:1.5px solid var(--line);border-radius:8px;color:var(--ink);display:flex;font-weight:800;line-height:1;margin:0;min-height:0;min-width:0;padding:0;transition:all .2s ease;-webkit-user-select:none;user-select:none}.qbtn,.qbtn.sample{cursor:default;position:relative}.legend-example{align-items:center;display:inline-flex;gap:6px}.legend-label{font-weight:600;white-space:nowrap}.spinner{animation:spin 1s linear infinite;border:3px solid #7ea2ff33;border-top:3px solid var(--primary);height:40px;margin:0 auto;width:40px}@media (max-width:600px){.wrong-panel-root{min-height:350px}.wrong-panel-root h2{font-size:18px;margin-bottom:12px}.tab-btn{font-size:12px;padding:6px 10px}.round-tabs,.session-tabs,.subject-tabs{gap:4px;margin:6px 0 10px}.tab-content{min-height:200px;padding:4px}.btn-grid{padding:2px}.qbtn{border-radius:6px;border-width:1px}.legend-line{font-size:12px;margin-bottom:8px}}@media (max-width:400px){.wrong-panel-root h2{font-size:16px}.tab-btn{font-size:11px;padding:5px 8px}.round-tabs,.session-tabs,.subject-tabs{gap:3px}}@media (min-width:601px) and (max-width:900px){.tab-btn{font-size:13px;padding:7px 12px}.tab-content{padding:6px}}@media (min-width:901px){.wrong-panel-root h2{font-size:22px}.tab-btn{font-size:14px;padding:8px 16px}.tab-content{padding:10px}}@media (prefers-reduced-motion:reduce){.tab-btn{transition:none}}.tab-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.qbtn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@media (hover:none) and (pointer:coarse){.tab-btn:hover:not(:disabled){background:var(--surface)}.tab-btn:active:not(:disabled){background:var(--surface-2);transform:scale(.98)}}.pdf-modal-root,.pdf-modal-root *{animation:none!important;backface-visibility:visible!important;transform:none!important;transform-style:flat!important}.tab-content .loading-container{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:16px;height:100%;justify-content:center;min-height:200px}.tab-content .loading-text{font-size:14px;font-weight:600;text-align:center}.tab-content .error-container{color:var(--bad)}.tab-content .empty-container,.tab-content .error-container{align-items:center;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center;min-height:200px;text-align:center}.tab-content .empty-container{color:var(--muted)}.tab-content .empty-container .empty-icon{font-size:48px;opacity:.5}.tab-content .empty-container .empty-text{font-size:16px;font-weight:600}.tab-content .empty-container .empty-subtitle{font-size:14px;opacity:.8}@media (hover:none) and (pointer:coarse){.tab-btn.active:active:not(:disabled),.tab-btn.active:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff;color:var(--active-ink,#fff)}}:root{--bg:#000;--surface:#11172b;--surface-2:#151d36;--line:#213056;--ink:#e8eeff;--muted:#9db0d6;--primary:#7ea2ff;--ok:#22c55e;--warn:#f59e0b;--bad:#ef4444}*{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ui-sans-serif,system-ui,-apple-system,Apple SD Gothic Neo,Noto Sans KR,Segoe UI,Roboto,Helvetica Neue,Arial;margin:0;padding:0}a{color:#171719;color:var(--primary);text-decoration:none}img{display:block;max-width:100%}.container{margin:24px auto;max-width:1100px;padding:0 16px}.header{display:none!important}h1{font-size:24px;font-weight:800;margin:0 0 6px;text-align:center}h2{font-size:18px;font-weight:700;margin:8px 0}.small,h2{color:#76777a;color:var(--muted)}.small{font-size:12px}.grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(12,1fr)}.col-12{grid-column:span 12}.col-6{grid-column:span 6}@media (max-width:860px){.col-6{grid-column:span 12}}.card{background:linear-gradient(180deg,#151d36e6,#fff);background:linear-gradient(180deg,#151d36e6,var(--surface));border:1px solid #e2e4e8;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px #00000040;height:fit-content;min-height:auto;padding:16px}.card.narrow{margin:0 auto;max-width:480px}.flex{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.flex-column{display:flex;flex-direction:column;gap:12px}.kpi{align-items:baseline;display:flex;gap:10px}.kpi .num{font-size:28px;font-weight:800;letter-spacing:.2px}.kpi .sub{color:#76777a;color:var(--muted);font-size:13px}.badge{border:1px solid #0000;border-radius:999px;display:inline-block;font-weight:700;letter-spacing:.2px;padding:6px 10px}.badge.pass{background:#22c55e2e;border-color:#22c55e8c}.badge.fail{background:#ef44442e;border-color:#ef44448c}.badge.invalid{background:#6b21a82e;border-color:#6b21a88c;color:#e9d5ff}.btn{appearance:none;background:#f7f7f8;background:var(--surface-2);border:1px solid #e2e4e8;border:1px solid var(--line);border-radius:10px;color:var(--ink);cursor:pointer;font-weight:700;padding:8px 12px}.btn:hover{background:#0f1526}.btn:disabled{cursor:not-allowed;opacity:.5}.btn.secondary{background:#7ea2ff1f;border-color:#7ea2ff73}.btn.secondary:hover{background:#7ea2ff2e}.input{background:#f7f7f8;background:var(--surface-2);border:1px solid #e2e4e8;border:1px solid var(--line);border-radius:10px;color:#171719;color:var(--ink);font-weight:700;letter-spacing:.2px;outline:none;padding:10px 12px}.input:focus{border-color:#171719;border-color:var(--primary)}hr.sep{border:none;height:1px;margin:14px 0}.progress{background:#1b2542;border-radius:999px;height:10px;overflow:hidden;position:relative;width:100%}.progress>.bar{background:linear-gradient(90deg,#7ea2ff,#4cc9ff);height:100%;transition:width .25s ease}.progress .cutline{background:#ffffff8c;bottom:0;left:60%;pointer-events:none;position:absolute;top:0;width:2px}.group-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(12,1fr)}.group-box{background:#f7f7f8;background:var(--surface-2);border:1px solid #e2e4e8;border:1px solid var(--line);border-radius:12px;padding:12px}.group-box.ok{background:#22c55e1f;border-color:#22c55e8c}.group-box.fail{background:#ef44441f;border-color:#ef44448c}.span-12{grid-column:span 12}.group-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.subj-row{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:6px}.subj-chip{background:#0000;border:none;border-radius:999px;font-weight:800;padding:4px 8px}.subj-chip .muted{font-weight:600;opacity:.7}.pill{border:1px solid #33416f;border-radius:999px;color:#76777a;color:var(--muted);font-size:12px;padding:3px 8px}.pill.green{border-color:#22c55e99;color:#d9ffe7}.pill.warn{border-color:#f59e0b99;color:#fff4d6}.pill.red{border-color:#ef4444b3;color:#ffd8d8}.flip-card{height:fit-content;margin-bottom:16px;perspective:1200px}.flip-card .flip-inner{min-height:fit-content;position:relative;transform-style:preserve-3d;transition:transform .6s ease;width:100%}.flip-card.is-flipped .flip-inner,.flip-inner.is-flipped{transform:rotateY(180deg)}.flip-card .flip-face{backface-visibility:hidden;border-radius:16px;left:0;overflow:hidden;position:absolute;top:0;width:100%}.flip-card .flip-front{height:auto;position:relative;transform:rotateY(0deg)}.flip-card .flip-back{-webkit-overflow-scrolling:touch;box-sizing:border-box;color:#171719;color:var(--ink);height:100%;position:absolute;scroll-behavior:smooth;transform:rotateY(180deg)}.flip-card .flip-back::-webkit-scrollbar{width:6px}.flip-card .flip-back::-webkit-scrollbar-track{background:#ffffff0d;border-radius:6px}.flip-card .flip-back::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:6px}.cards-grid{grid-gap:12px;display:grid;gap:12px;margin-top:12px}.alert{background:#ef444424;border:1px solid #ef44448c;border-radius:10px;color:#ffd8d8;font-weight:700;margin-top:10px;padding:10px 12px}@media print{:root{--bg:#fff;--ink:#000;--muted:#444}body{background:#fff;color:#000}.btn{display:none!important}.card{background:#fff;border-color:#ddd;box-shadow:none}.badge{border-color:#999}}.flip-front.rc-pass{background:#22c55e26;border:1px solid #22c55e73}.flip-front.rc-fail{background:#ef444426;border:1px solid #ef444473}.flip-front.rc-invalid{background:#6b21a826;border:1px solid #6b21a873}.flip-back.pass,.round.pass{background:#22c55e26;border:1px solid #22c55e73}.flip-back.fail,.round.fail{background:#ef444426;border:1px solid #ef444473}.flip-back.invalid,.round.invalid{background:#6b21a826;border:1px solid #6b21a873}.card.rc-pass{background:linear-gradient(180deg,#22c55e29,#fff);background:linear-gradient(180deg,#22c55e29,var(--surface));border-color:#22c55e73}.card.rc-fail{background:linear-gradient(180deg,#ef444429,#fff);background:linear-gradient(180deg,#ef444429,var(--surface));border-color:#ef444473}.card.rc-invalid{background:linear-gradient(180deg,#6b21a829,#fff);background:linear-gradient(180deg,#6b21a829,var(--surface));border-color:#6b21a873}.rc-pass .progress>.bar{background:linear-gradient(90deg,#22c55e,#72f2b1);background:linear-gradient(90deg,var(--ok),#72f2b1)}.rc-fail .progress>.bar{background:linear-gradient(90deg,#ef4444,#ff6b6b);background:linear-gradient(90deg,var(--bad),#ff6b6b)}.flip-back.rc-pass .accordion .session-header{background:#22c55e2e;border-bottom:1px solid #22c55e73;color:#d9ffe7}.flip-back.rc-fail .accordion .session-header{background:#ef44442e;border-bottom:1px solid #ef444473;color:#ffd8d8}.flip-back.rc-invalid .accordion .session-header{background:#6b21a82e;border-bottom:1px solid #6b21a873;color:#e9d5ff}.flip-back.rc-pass .accordion .acc-btn{background:#22c55e1f;border-color:#22c55e73}.flip-back.rc-pass .accordion .acc-btn:hover{background:#22c55e2e}.flip-back.rc-fail .accordion .acc-btn{background:#ef44441f;border-color:#ef444473}.flip-back.rc-fail .accordion .acc-btn:hover{background:#ef44442e}.flip-back.rc-invalid .accordion .acc-btn{background:#6b21a81f;border-color:#6b21a873}.flip-back.rc-invalid .accordion .acc-btn:hover{background:#6b21a82e}.flip-back.rc-pass .pill{border-color:#22c55e8c;color:#d9ffe7}.flip-back.rc-fail .pill{border-color:#ef44448c;color:#ffd8d8}.flip-back.rc-invalid .pill{border-color:#6b21a88c;color:#e9d5ff}.flip-face.flip-back.card,.flip-face.flip-back.card.rc-fail,.flip-face.flip-back.card.rc-invalid,.flip-face.flip-back.card.rc-pass{background:linear-gradient(180deg,#151d36eb,#0f1731)}.flip-face.flip-back .accordion .session-header{background:linear-gradient(90deg,#171719,#4cc9ff);background:linear-gradient(90deg,var(--primary),#4cc9ff);border-bottom:1px solid #e2e4e8;border-bottom:1px solid var(--line)}.flip-face.flip-back .accordion .acc-btn{background:#fff;background:var(--surface);border-color:#e2e4e8;border-color:var(--line);color:var(--ink)}.flip-face.flip-back .accordion .acc-btn:hover{background:#f7f7f8;background:var(--surface-2)}.flip-face.flip-back .pill{border-color:#33416f;color:#76777a;color:var(--muted)}.qgrid{display:flex;flex-wrap:wrap;gap:6px;max-height:none;overflow:visible;padding-right:0;scrollbar-width:none}.qgrid::-webkit-scrollbar{display:none}.flip-card .flip-back .panel{max-height:none!important;overflow:visible!important}.flip-card .flip-back .session-content{overflow:visible!important}.flip-card .flip-back{overflow-x:hidden;overflow-y:auto}.spinner{animation:spin .8s linear infinite;border:4px solid #e2e4e8;border-top-color:#171719;border:4px solid var(--line);border-radius:50%;border-top-color:var(--primary);height:36px;margin:0 auto 10px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}.card.narrow{margin:16px auto;max-width:520px}.form{gap:16px}.field,.form{display:flex;flex-direction:column}.field{gap:8px}.label-row{align-items:baseline;display:flex;justify-content:space-between}.label-row label{font-weight:800;letter-spacing:.2px}.label-row .hint{color:#76777a;color:var(--muted);font-size:12px}.input.big{background:#f7f7f8;background:var(--surface-2);border:1px solid #e2e4e8;border:1px solid var(--line);border-radius:12px;color:#171719;color:var(--ink);font-size:15px;font-weight:700;height:44px;outline:none;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.input.big::placeholder{color:#7b86a5;font-weight:600}.input.big:focus{background:#121a2f;border-color:#171719;border-color:var(--primary);box-shadow:0 0 0 3px #7ea2ff2e}.input-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr auto}.btn.primary{background:#7ea2ff1f;border:1px solid #171719;border:1px solid var(--primary);border-radius:12px;color:#171719;color:var(--ink);font-weight:800;height:44px;padding:10px 14px;transition:transform .15s ease,background .15s ease,border-color .15s ease}.btn.primary:hover{background:#7ea2ff33;transform:translateY(-1px)}.btn.primary.wide{width:100%}.actions{margin-top:4px}.naver-login{align-items:center;border:1px solid #03c75a;border-radius:12px;display:grid;font-size:20px;font-weight:800;grid-template-columns:72px 1fr 72px;line-height:1;min-height:64px;overflow:hidden;padding:0;position:relative;transition:background .15s ease,border-color .15s ease,transform .15s ease;width:100%}.naver-login-mark{align-self:stretch;border-right:1px solid #ffffff47;display:grid;font-family:Arial,sans-serif;font-size:34px;grid-column:1;place-items:center}.naver-login-label{grid-column:2;text-align:center;white-space:nowrap}.naver-login:hover:not(:disabled){background:#02b351;border-color:#02b351}.naver-login:focus-visible{outline:3px solid #03c75a59;outline-offset:3px}@media (max-width:420px){.naver-login{font-size:18px;grid-template-columns:60px 1fr 60px;min-height:58px}.naver-login-mark{font-size:30px}}.form-alert{background:#ef444424;border:1px solid #ef44448c;border-radius:10px;color:#ffd8d8;font-weight:700;margin-top:4px;padding:10px 12px}@media (max-width:560px){.card.narrow{margin:12px auto;padding:14px}.input-row{grid-template-columns:1fr}.btn.primary{width:100%}}.auth-intro{line-height:1.6;margin:0 0 20px;text-align:center}.auth-methods{display:flex;flex-direction:column;gap:18px}.sms-login-link{align-self:center;appearance:none;background:#0000;border:0;color:#76777a;color:var(--muted);cursor:pointer;font-size:13px;font-weight:700;opacity:.72;padding:4px 8px;text-decoration:underline;text-decoration-color:#9db0d68c;text-underline-offset:4px;transition:color .15s ease,opacity .15s ease}.sms-login-link:focus-visible,.sms-login-link:hover:not(:disabled){color:var(--ink);opacity:1}.sms-login-link:focus-visible{border-radius:4px;outline:2px solid #7ea2ff73;outline-offset:3px}.sms-login-link:disabled{cursor:not-allowed;opacity:.4}.sms-auth-form{margin-top:8px}.sms-auth-form label{font-weight:800}.auth-form-heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.auth-method-back{appearance:none;background:#0000;border:0;color:#171719;color:var(--primary);cursor:pointer;font-size:12px;font-weight:700;padding:4px}.auth-method-back:disabled{cursor:not-allowed;opacity:.5}.sms-phone-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto}.recaptcha-container{opacity:0;pointer-events:none;position:absolute}.site-identifier{gap:20px;justify-content:space-between;margin-bottom:0;padding-top:8px;width:100%}.site-brand,.site-identifier{align-items:center;display:flex}.site-brand{gap:12px;min-width:0}.site-brand img{flex-shrink:0;height:32px}.site-brand h1{color:#171719;color:var(--ink);font-size:16px;font-weight:800;line-height:1.2;margin:0;text-align:left;white-space:nowrap}.student-session{align-items:center;display:flex;flex-shrink:0;gap:10px;justify-content:flex-end}.student-identity{align-items:baseline;background:#7ea2ff1f;border:1px solid #7ea2ff73;border-radius:12px;display:flex;gap:6px;min-height:36px;padding:8px 11px}.student-identity span{color:var(--muted);font-size:11px;font-weight:700}.student-identity strong{color:#171719;color:var(--ink);font-size:13px;font-weight:800;white-space:nowrap}.session-logout{font-size:12px;font-weight:700;min-height:36px;padding:6px 10px}@media (max-width:680px){.site-identifier{align-items:flex-start;flex-wrap:wrap;gap:12px}.site-brand h1{font-size:13px;white-space:normal}.student-session{width:100%}.student-identity{flex:1 1}}@media (max-width:460px){.sms-phone-row{grid-template-columns:1fr}.sms-phone-row .btn{width:100%}}:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#f7f7f8;--line:#e2e4e8;--ink:#171719;--muted:#76777a;--primary:#171719}body,html{color:#171719;color:var(--ink)}.app-root-container,body,html{background:#f5f6f8;background:var(--bg)}.app-root-container{min-height:100vh}.card,.card.narrow{background:#fff;border-color:#e2e4e8;border-color:var(--line);box-shadow:0 12px 36px #00000012}.card.narrow{border-radius:18px}.group-box,.input,.input.big{background:#f7f7f8;border-color:#dedfe3;color:#171719;color:var(--ink)}.input.big::placeholder,.input::placeholder{color:#a1a2a6}.input.big:focus,.input:focus{background:#fff;border-color:#171719;box-shadow:0 0 0 3px #17171917}.btn{background:#fff;border-color:#d7d8dc;color:#171719}.btn:hover:not(:disabled){background:#f2f2f3}.btn.primary,.btn.secondary{background:#171719;border-color:#171719;color:#fff}.btn.primary:hover:not(:disabled),.btn.secondary:hover:not(:disabled){background:#000;border-color:#000}.site-brand h1,.student-identity strong{color:#171719}.student-identity{background:#fff;border-color:#dedfe3}.student-identity span{color:#76777a}.session-logout{background:#fff;border-color:#d7d8dc;color:#171719}.auth-intro{color:#66676b}.auth-methods{gap:20px}.naver-login{background:#03c75a;border:0;border-radius:10px;box-shadow:none;color:#fff;font-size:18px;grid-template-columns:68px minmax(0,1fr) 68px;letter-spacing:-.3px;min-height:62px}.naver-login-mark{border-right:0;font-size:32px;line-height:1}.naver-login:hover:not(:disabled){background:#02b856;border-color:#0000;box-shadow:0 8px 20px #03c75a2e;transform:translateY(-1px)}.naver-login:active:not(:disabled){background:#02ad50;box-shadow:none;transform:translateY(0)}.sms-login-link{color:#8b8c90;opacity:1;text-decoration-color:#b9babd}.sms-login-link:focus-visible,.sms-login-link:hover:not(:disabled){color:#171719}.auth-method-back{color:#55565a}.alert,.form-alert{background:#fff4f4;border-color:#efcaca;color:#b42318}.spinner{border-color:#171719 #dedfe3 #dedfe3}hr.sep{background:#e2e4e8;background:var(--line)}.flip-face.flip-back.card,.flip-face.flip-back.card.rc-fail,.flip-face.flip-back.card.rc-invalid,.flip-face.flip-back.card.rc-pass{background:#fff;border-color:#e2e4e8;border-color:var(--line)}.flip-face.flip-back .accordion .session-header{background:#171719;border-bottom-color:#d7d8dc;color:#fff}.flip-face.flip-back .accordion .acc-btn{background:#f7f7f8;border-color:#dedfe3;color:#171719}.flip-face.flip-back .accordion .acc-btn:hover{background:#eeeeef}@media (max-width:420px){.naver-login{font-size:17px;grid-template-columns:56px minmax(0,1fr) 56px;min-height:58px}}.login-heading{margin-bottom:28px;text-align:left}.login-heading h2{color:#171719;font-size:21px;font-weight:800;letter-spacing:-.5px;line-height:1.4;margin:0 0 8px}.login-heading p{color:#76777a;font-size:14px;font-weight:500;line-height:1.5;margin:0}.naver-login{font-size:17px;grid-template-columns:48px minmax(0,1fr) 48px;min-height:56px}.naver-login-mark{font-family:Arial,Helvetica,sans-serif;font-size:23px;font-weight:900;letter-spacing:-2px}.year-tabs{margin-bottom:12px}@media (max-width:560px){.login-heading{margin-bottom:24px}.login-heading h2{font-size:18px;word-break:keep-all}.naver-login{font-size:16px;grid-template-columns:44px minmax(0,1fr) 44px;min-height:54px}.naver-login-mark{font-size:21px}}:root{--active-ink:#fff}.app-root-container,.btn,.card,.group-box,.input,.student-identity,.theme-toggle,body,html{transition:background-color .2s ease,color .2s ease,border-color .2s ease}.theme-toggle{align-items:center;appearance:none;background:#fff;border:1px solid #d7d8dc;border-radius:999px;color:#55565a;cursor:pointer;display:inline-flex;gap:7px;min-height:36px;padding:5px 8px}.theme-toggle:hover{background:#f2f2f3;border-color:#aeb0b5;color:#171719}.theme-toggle:focus-visible{outline:2px solid #171719;outline-offset:2px}.theme-toggle-icon{display:grid;font-size:15px;line-height:1;place-items:center;width:16px}.theme-toggle-track{background:#d7d8dc;border-radius:999px;display:block;height:18px;position:relative;width:30px}.theme-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000040;height:12px;left:3px;position:absolute;top:3px;transition:transform .2s ease;width:12px}.theme-toggle[aria-checked=true] .theme-toggle-thumb{transform:translateX(12px)}.btn:hover:not(:disabled){background:#e8e8ea;border-color:#c3c5c9;color:#171719}.btn.primary:hover:not(:disabled),.btn.secondary:hover:not(:disabled),.session-logout:hover:not(:disabled){background:#000;border-color:#000;color:#fff}:root[data-theme=dark]{--bg:#0d0d0f;--surface:#171719;--surface-2:#222225;--line:#36363b;--ink:#f5f5f6;--muted:#a5a5aa;--primary:#f5f5f6;--active-ink:#171719}:root[data-theme=dark] .app-root-container,:root[data-theme=dark] body,:root[data-theme=dark] html{background:#0d0d0f;color:#f5f5f6}:root[data-theme=dark] .card,:root[data-theme=dark] .card.narrow{background:#171719;border-color:#343439;box-shadow:0 12px 36px #00000052}:root[data-theme=dark] .group-box,:root[data-theme=dark] .input,:root[data-theme=dark] .input.big{background:#222225;border-color:#3a3a3f;color:#f5f5f6}:root[data-theme=dark] .input.big:focus,:root[data-theme=dark] .input:focus{background:#171719;border-color:#f5f5f6;box-shadow:0 0 0 3px #ffffff1a}:root[data-theme=dark] .login-heading h2,:root[data-theme=dark] .site-brand h1,:root[data-theme=dark] .student-identity strong{color:#f5f5f6}:root[data-theme=dark] .student-identity,:root[data-theme=dark] .theme-toggle{background:#171719;border-color:#3a3a3f;color:#c7c7cb}:root[data-theme=dark] .auth-intro,:root[data-theme=dark] .login-heading p,:root[data-theme=dark] .student-identity span{color:#a5a5aa}:root[data-theme=dark] .theme-toggle:hover{background:#29292d;border-color:#66666d;color:#fff}:root[data-theme=dark] .theme-toggle-track{background:#5a5a61}:root[data-theme=dark] .theme-toggle[aria-checked=true] .theme-toggle-track{background:#f5f5f6}:root[data-theme=dark] .theme-toggle[aria-checked=true] .theme-toggle-thumb{background:#171719}:root[data-theme=dark] .btn{background:#222225;border-color:#45454b;color:#f5f5f6}:root[data-theme=dark] .btn:hover:not(:disabled){background:#303034;border-color:#66666d;color:#fff}:root[data-theme=dark] .btn.primary,:root[data-theme=dark] .btn.secondary,:root[data-theme=dark] .session-logout{background:#f5f5f6;border-color:#f5f5f6;color:#171719}:root[data-theme=dark] .btn.primary:hover:not(:disabled),:root[data-theme=dark] .btn.secondary:hover:not(:disabled),:root[data-theme=dark] .session-logout:hover:not(:disabled){background:#d7d7da;border-color:#d7d7da;color:#000}:root[data-theme=dark] .sms-login-link{color:#b1b1b6;text-decoration-color:#696970}:root[data-theme=dark] .sms-login-link:hover:not(:disabled){color:#fff}:root[data-theme=dark] .alert,:root[data-theme=dark] .form-alert{background:#321c1d;border-color:#7f3434;color:#ffcece}:root[data-theme=dark] .flip-face.flip-back.card,:root[data-theme=dark] .flip-face.flip-back.card.rc-fail,:root[data-theme=dark] .flip-face.flip-back.card.rc-invalid,:root[data-theme=dark] .flip-face.flip-back.card.rc-pass{background:#171719;border-color:#36363b}@media (max-width:680px){.theme-toggle{padding:5px 7px}.theme-toggle-icon{display:none}}
/*# sourceMappingURL=main.b15b506a.css.map*/