*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}input,button{font:inherit;color:inherit}html{scrollbar-width:none;-ms-overflow-style:none;overflow-y:scroll;scroll-behavior:smooth}html::-webkit-scrollbar{display:none}:root{--index: calc(1vh + 1vw) ;--font-base: 15px;--rad: clamp(4px, calc(var(--index) * .4), 10px);--tr: .2s;--accent-color: #4386FF;--accent-contrast: #fff;--main-text: #000;--main-text-bt-pn: #000;--secondary-text: rgba(0, 0, 0, .6);--bg-color: #fff;--bg-input: #e2e2e2;--bg-code: #fff;--modal-color: #4385ff57;--surface-1: #fff;--surface-2: #f6f6f6;--surface-3: #efefef;--surface-4: #ebffe7;--border-color: rgba(0, 0, 0, .08);--border-code: #d0d7de;--menu-shadow: 2px 0 10px rgba(0, 0, 0, .1);--panel-shadow: 0 20px 48px rgba(0, 0, 0, .09);--dropdown-shadow: 0 4px 12px rgba(0, 0, 0, .1);--menu-expanded: clamp(293px, calc(31vw - 7px) , 343px);--menu-collapsed: clamp(66px, calc(2vw + 52px) , 75px);--mbuf: 14px;--menu-gap: 14px;--mfs: clamp(12px, calc(.22vw + 10.8px) , 15px);--mis: clamp(15px, calc(.22vw + 13.8px) , 19px);--msf: clamp(13px, calc(.26vw + 11.7px) , 17px);--msls: clamp(11px, calc(.15vw + 10.1px) , 13px);--msg: clamp(8px, calc(var(--index) * .75), 16px);--msp: clamp(3px, calc(var(--index) * .2), 6px);--cg-bg: #f6f8fa;--cg-t: #8c959f;--cg-act: #eef2f6;--cl-act: #f8fafc;--status-dot: #4386FF;--th-bg: #2b2b2b;--th-at: #fff;--bg-btn: #191919;--t-btn: #fff;--line-1: #2f6df6;--line-2: #0f8f53;--line-3: #7a5cff;--task-muted-text: rgba(0, 0, 0, .62);--task-active-bg: rgba(0, 0, 0, .06);--test-error-text: #d53b2a;--test-loading-text: #6b7280;--test-pass-text: #1f9d56;--test-fail-text: #d53b2a;--test-pending-text: #c08b00;--test-tooltip-text: #fff;--test-tooltip-bg: rgba(23, 24, 29, .97);--test-tooltip-border: transparent;--pad: clamp(14px, calc(var(--index) * 1.2), 30px);--gap: clamp(8px, calc(var(--index) * .6), 14px);--font-size: var(--font-base);--app-bg: var(--bg-color);--text-primary: var(--main-text);--text-secondary: var(--secondary-text);--content-pad: var(--pad);--menu-width-buffer: var(--mbuf);--border-radius: var(--rad);--output-label: #5b5b5b}:root[data-theme=dark]{--accent-color: #4386FF;--accent-contrast: #efffd7;--main-text: #f2f6fbeb;--main-text-bt-pn: #f2f6fbeb;--secondary-text: rgba(195, 206, 220, .82);--bg-color: #10151B;--bg-input: #12171f;--bg-code: #0D1015;--modal-color: rgba(46, 148, 251, .378);--surface-1: #181C23;--surface-2: #0a0f16;--surface-3: #2C3036;--surface-4: #18251E;--output-label: #b0b0b0;--border-color: rgba(146, 166, 191, .28);--border-code: #2a3443;--menu-shadow: 2px 0 24px rgba(0, 0, 0, .58);--panel-shadow: 0 28px 72px rgba(0, 0, 0, .64);--dropdown-shadow: 0 14px 32px rgba(0, 0, 0, .56);--cg-bg: #0b1119;--cg-t: #8d9cb1;--cg-act: #16202d;--cl-act: #101926;--status-dot: #4386FF;--th-bg: #c8cbd1ea;--th-at: #120d0a;--bg-btn: #4386FF;--t-btn: #f2f6fbeb;--line-1: #81afff;--line-2: #58d39a;--line-3: #b89fff;--muted-1: rgba(170, 184, 203, .88);--muted-2: #aaaaaa;--output-accent: #6da8ff;--status-pass: #5fd08c;--status-fail: #ff6f62;--status-pending: #f1c75a;--tooltip-bg: rgba(13, 18, 25, .97);--bullet-color: #4386FF;--task-muted-text: #3C87EE;--task-active-bg: #4386FF;--test-error-text: var(--status-fail);--test-loading-text: var(--muted-1);--test-pass-text: var(--status-pass);--test-fail-text: var(--status-fail);--test-pending-text: var(--status-pending);--test-tooltip-text: var(--main-text);--test-tooltip-bg: var(--tooltip-bg);--test-tooltip-border: var(--border-color)}@font-face{font-family:regular;src:url(/fonts/regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter-Medium;src:url(/fonts/Inter-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter-Regular;src:url(/fonts/Inter-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter-Light;src:url(/fonts/Inter-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Inter-Bold;src:url(/fonts/Inter-SemiBold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:CodeMedium;src:url(/fonts/CodeMedium.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}body{font-family:regular;font-size:var(--font-size);background:radial-gradient(1200px 600px at 85% -20%,rgba(138,251,46,.08),transparent 58%),radial-gradient(900px 460px at -10% 8%,rgba(104,180,255,.08),transparent 50%),var(--app-bg);color:var(--text-primary);overflow-x:hidden;text-rendering:optimizeLegibility}.layout{position:relative;isolation:isolate;min-height:130vh}.menu-rail{position:absolute;top:0;left:0;bottom:0;width:var(--menu-expanded);background:var(--surface-1);box-shadow:var(--menu-shadow);pointer-events:none;z-index:0}.viewport-error{width:100vw;height:100vh;height:100dvh;display:grid;place-items:center;padding:24px;background:var(--app-bg);color:var(--main-text);position:relative;overflow:hidden}.viewport-error-video{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;object-fit:cover;z-index:0}.viewport-error-panel{position:relative;z-index:1;width:min(420px,100%);padding:24px;border:1px solid var(--border-color);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-1) 74%,transparent),color-mix(in srgb,var(--surface-2) 68%,transparent));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--panel-shadow);text-align:center}.viewport-error-panel h1{margin-bottom:8px;font-size:24px}.viewport-error-panel p{color:color-mix(in srgb,var(--secondary-text) 78%,transparent);font-size:15px}.viewport-error-desktop-button{display:inline-flex;align-items:center;justify-content:center;min-width:116px;min-height:38px;margin-top:16px;padding:0 18px;border:1px solid color-mix(in srgb,var(--accent-color) 52%,transparent);border-radius:10px;background:color-mix(in srgb,var(--accent-color) 82%,transparent);color:var(--accent-contrast);cursor:pointer;font-size:14px;line-height:1;box-shadow:0 10px 24px color-mix(in srgb,var(--accent-color) 24%,transparent);transition:transform var(--tr),background var(--tr),box-shadow var(--tr)}.viewport-error-desktop-button:hover{transform:translateY(-1px);background:var(--accent-color);box-shadow:0 14px 28px color-mix(in srgb,var(--accent-color) 30%,transparent)}.viewport-error-desktop-button:active{transform:translateY(0)}.content{position:relative;z-index:1;background:var(--app-bg);padding:var(--content-pad);margin-left:calc(var(--menu-expanded) + var(--menu-gap))}.gsap-animating-content{will-change:margin-left}.task-panel-fallback{width:min(clamp(620px,calc(var(--index) * 42),1200px),100%);margin:clamp(4px,calc(var(--index) * .4),10px) auto 0;padding:clamp(16px,calc(var(--index) * 1.4),30px);border-radius:clamp(14px,calc(var(--index) * 1.2),24px);background:linear-gradient(180deg,var(--surface-1) 0%,var(--surface-2) 100%);color:var(--text-secondary)}.task-panel-fallback.admin-warning{border:1px dashed color-mix(in srgb,#f59e0b 60%,var(--border-color));color:#92400e;background:linear-gradient(180deg,color-mix(in srgb,#fef3c7 70%,var(--surface-1)) 0%,var(--surface-2) 100%)}.admin-topic-bar{width:min(clamp(620px,calc(var(--index) * 48),1280px),100%);margin:0 auto clamp(10px,calc(var(--index) * .8),18px);display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.admin-topic-button{border:1px solid var(--border-color);background:var(--surface-1);color:var(--main-text);border-radius:10px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .12s ease,opacity .12s ease}.admin-topic-button:hover{opacity:.9;transform:translateY(-1px)}.admin-topic-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-topic-button.danger{color:#b91c1c;border-color:color-mix(in srgb,#b91c1c 36%,var(--border-color));background:color-mix(in srgb,#fee2e2 42%,var(--surface-1))}[data-theme=dark] .admin-topic-button.danger{color:#fca5a5;background:color-mix(in srgb,#7f1d1d 28%,var(--surface-1))}.admin-topic-modal{position:fixed;inset:0 0 0 var(--admin-overlay-left, 0px);z-index:60;display:grid;place-items:center;padding:20px;background:#00000047}.admin-topic-form{width:min(420px,100%);display:grid;gap:14px;padding:18px;border-radius:14px;border:1px solid var(--border-color);background:var(--surface-1);color:var(--main-text);box-shadow:var(--panel-shadow)}.admin-topic-form-header,.admin-topic-form-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}@media(max-width:760px){.admin-topic-bar{width:100%;justify-content:stretch}.admin-topic-button{flex:1 1 160px;min-height:36px}}.admin-topic-form-header h2{font-size:18px}.admin-topic-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.admin-topic-form input,.admin-topic-form select{width:100%;border:1px solid var(--border-color);border-radius:10px;padding:9px 10px;background:var(--surface-2);color:var(--main-text)}.admin-topic-error{color:#b91c1c;font-size:13px;font-weight:700}.profile-overlay{position:fixed;inset:0;z-index:1400;display:flex;justify-content:flex-start;padding-left:calc(var(--menu-expanded) + var(--menu-gap));background:#090d1447;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:profile-overlay-in .2s ease both}.profile-panel{width:min(390px,calc(100vw - var(--menu-expanded) - 42px));max-height:calc(100vh - 32px);margin:16px 0;padding:20px;display:grid;gap:18px;align-self:flex-start;border:1px solid var(--border-color);border-radius:16px;background:linear-gradient(180deg,var(--surface-1),var(--surface-2));box-shadow:var(--panel-shadow);color:var(--main-text);overflow:auto;animation:profile-panel-in .28s ease both}.profile-panel-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}.profile-avatar-large{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.62),transparent 30%),var(--accent-color);color:var(--accent-contrast);font-family:Inter-Bold;font-size:28px}.profile-kicker{margin:0 0 4px;color:var(--status-dot);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.profile-panel h2{margin:0;font-family:Inter-Bold;font-size:24px}.profile-panel-head p:last-child{max-width:100%;margin-top:4px;color:var(--secondary-text);font-size:13px;overflow:hidden;text-overflow:ellipsis}.profile-progress{display:grid;gap:8px}.profile-progress-top{display:flex;align-items:center;justify-content:space-between;color:var(--secondary-text);font-size:13px}.profile-progress-top strong{color:var(--main-text);font-size:18px}.profile-progress-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--accent-color) 14%,transparent);overflow:hidden}.profile-progress-track span{display:block;height:100%;min-width:4px;border-radius:inherit;background:linear-gradient(90deg,var(--accent-color),#6ed6ff);transition:width .35s ease}.profile-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-stats-grid div{padding:12px;border:1px solid var(--border-color);border-radius:12px;background:var(--surface-1)}.profile-stats-grid span{display:block;color:var(--secondary-text);font-size:12px}.profile-stats-grid strong{display:block;margin-top:6px;font-family:Inter-Bold;font-size:24px}.profile-recent{display:grid;gap:8px}.profile-recent h3{margin:0;font-size:15px}.profile-recent p{margin:0;color:var(--secondary-text);font-size:13px;line-height:1.45}.profile-recent-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:10px;background:var(--surface-1);border:1px solid var(--border-color);font-size:13px}.profile-recent-row strong{color:var(--secondary-text);font-size:12px}.profile-recent-row strong[data-status=accepted]{color:var(--test-pass-text)}.profile-recent-row strong[data-status=wrong_answer],.profile-recent-row strong[data-status=compile_error]{color:var(--test-fail-text)}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-actions button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border-color);border-radius:10px;background:var(--surface-1);color:var(--main-text);cursor:pointer}.profile-actions button.danger{background:color-mix(in srgb,var(--test-fail-text) 12%,var(--surface-1));color:var(--test-fail-text)}@keyframes profile-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes profile-panel-in{0%{opacity:0;transform:translate(-12px) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}@media(max-width:860px){.profile-overlay{padding:14px;justify-content:center}.profile-panel{width:min(420px,100%);margin:0}}@media(max-width:640px)and (pointer:coarse){:root{--font-base: 14px;--index: calc(.7vh + .7vw) ;--menu-expanded: 58px;--menu-collapsed: 58px;--menu-gap: 8px;--content-pad: 8px;--pad: 8px;--gap: 8px;--rad: 10px;--mfs: 12px;--mis: 18px;--msg: 6px;--msp: 4px}html,body{min-width:0;overflow-x:hidden}.layout{min-height:100svh}.content{min-height:100svh;margin-left:calc(var(--menu-expanded) + var(--menu-gap));padding:var(--content-pad)}.task-panel-fallback{width:100%;margin-top:0;padding:14px;border-radius:12px}.profile-overlay{padding:10px 10px 10px calc(var(--menu-expanded) + var(--menu-gap) + 10px);justify-content:center}.profile-panel{width:100%;max-height:calc(100svh - 20px);margin:0;padding:14px;border-radius:14px}.profile-stats-grid,.profile-actions{grid-template-columns:1fr}}.auth-screen{min-height:100vh;width:100%;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(rgba(67,134,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(67,134,255,.08) 1px,transparent 1px),radial-gradient(circle at 20% 20%,rgba(67,134,255,.2),transparent 34%),linear-gradient(135deg,#f7fbff,#eef4ff 44%,#fff);background-size:46px 46px,46px 46px,auto,auto;color:#10151b;animation:auth-screen-in .55s ease both}.auth-screen:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 18%,rgba(255,255,255,.58) 18% 18.4%,transparent 18.4% 100%),linear-gradient(70deg,transparent 0 62%,rgba(67,134,255,.12) 62% 62.35%,transparent 62.35% 100%);pointer-events:none}.auth-screen.is-leaving{animation:auth-screen-out .72s ease forwards}.auth-stage{position:relative;z-index:1;width:min(1040px,calc(100vw - 48px));min-height:min(620px,calc(100vh - 48px));display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);align-items:center;gap:clamp(26px,4vw,72px)}.auth-copy{max-width:560px;animation:auth-copy-in .7s ease both}.auth-kicker{margin-bottom:16px;color:#4386ff;font-family:CodeMedium,Inter-Regular,sans-serif;font-size:14px;letter-spacing:.08em;text-transform:uppercase}.auth-copy h1{margin:0;font-family:Inter-Bold,Inter-Regular,sans-serif;font-size:clamp(38px,5vw,72px);line-height:.98;letter-spacing:0}.auth-copy p:last-child{margin-top:22px;max-width:480px;color:#10151bad;font-size:clamp(15px,1.4vw,18px);line-height:1.6}.alic-login-box{width:100%;padding:clamp(22px,3vw,32px);border:1px solid rgba(255,255,255,.78);border-radius:18px;background:#ffffff7a;box-shadow:0 24px 70px #1939692e,inset 0 1px #ffffffad;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:auth-form-in .66s cubic-bezier(.2,.8,.2,1) both}.auth-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:4px;margin-bottom:24px;border:1px solid rgba(67,134,255,.16);border-radius:12px;background:#ffffff75}.auth-tabs button{border:0;border-radius:9px;padding:9px 10px;background:transparent;color:#10151b94;cursor:pointer;transition:background-color .22s ease,color .22s ease,box-shadow .22s ease}.auth-tabs button.active{background:#4386ff;color:#fff;box-shadow:0 8px 18px #4386ff40}.alic-login-box h2{margin:0 0 22px;text-align:center;font-family:Inter-Bold,Inter-Regular,sans-serif;font-size:clamp(23px,2.4vw,30px)}.auth-field{position:relative;padding:12px 0}.auth-field-email,.auth-field-password,.auth-field-username{max-height:0;opacity:0;transform:translateY(-8px);overflow:hidden;pointer-events:none;padding:0;transition:max-height .38s ease,opacity .28s ease,transform .38s ease,padding .38s ease}.auth-field-email.show,.auth-field-password.show,.auth-field-username.show{max-height:84px;opacity:1;transform:translateY(0);pointer-events:auto;overflow:visible;padding:18px 0 12px}.auth-code-hint{margin:-4px 0 8px;color:#10151ba8;font-size:14px;line-height:1.45;text-align:center}.auth-code-hint strong{color:#10151b;font-weight:700}.auth-field-code{max-height:0;opacity:0;transform:translateY(8px);overflow:hidden;pointer-events:none;padding:0;transition:max-height .38s ease,opacity .28s ease,transform .38s ease,padding .38s ease}.auth-field-code.show{max-height:92px;opacity:1;transform:translateY(0);pointer-events:auto;overflow:visible;padding:20px 0 10px}.auth-field-code input{text-align:center;font-family:CodeMedium,Inter-Regular,sans-serif;font-size:24px;letter-spacing:.18em}.auth-field input{width:100%;padding:13px 0 10px;border:0;border-bottom:1px solid rgba(16,21,27,.22);outline:0;background:transparent;color:#10151b;font-size:17px;transition:border-color .24s ease}.auth-field label{position:absolute;top:24px;left:0;color:#10151b94;font-size:17px;opacity:1;pointer-events:none;transition:transform .28s ease,color .28s ease,font-size .28s ease,opacity .18s ease}.auth-field-password:not(.show) label{opacity:0}.auth-field input:focus{border-color:#4386ff}.auth-field input:focus~label,.auth-field input:not(:placeholder-shown)~label{transform:translateY(-20px);font-size:12px;color:#4386ff}.auth-field-code input:focus~label,.auth-field-code input:not(:placeholder-shown)~label{transform:translateY(-22px)}.auth-recovery-row{display:flex;justify-content:flex-end;margin:-2px 0 4px}.auth-recovery-row button{border:0;background:transparent;color:#4386ffeb;cursor:pointer;font-size:13px;font-weight:700;transition:color .2s ease,transform .2s ease}.auth-recovery-row button:hover,.auth-recovery-row button:focus-visible{color:#256dff;transform:translateY(-1px)}.auth-message-slot{min-height:26px;display:grid;align-items:center}.auth-message{margin:0;width:100%;padding:7px 10px;border-radius:10px;font-size:13px;line-height:1.35;text-align:center;animation:auth-message-in .22s ease both}.auth-message.error{color:#d53b2a;background:#d53b2a14;box-shadow:inset 0 0 0 1px #d53b2a1f}.auth-message.success{color:#0f8f53;background:#0f8f5314;box-shadow:inset 0 0 0 1px #0f8f531f}.auth-submit{width:100%;height:48px;margin-top:8px;border:1px solid #4386ff;border-radius:999px;background:linear-gradient(to left,transparent 50%,#4386ff 50%);background-size:200% 100%;background-position:right bottom;color:#10151b;cursor:pointer;transition:background-position .42s ease,color .42s ease,transform .16s ease,opacity .16s ease}.auth-submit:hover,.auth-submit:focus-visible{background-position:left bottom;color:#fff}.auth-submit:active{transform:translateY(1px)}.auth-submit:disabled{opacity:.68;cursor:wait}.auth-switch{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;color:#10151ba3;font-size:14px}.auth-switch button{border:0;background:transparent;color:#4386ff;cursor:pointer;font-weight:700}.layout.app-shell-enter{animation:app-shell-enter .55s ease both}@keyframes auth-screen-in{0%{opacity:0}to{opacity:1}}@keyframes auth-screen-out{to{opacity:0;transform:scale(1.015);filter:blur(8px)}}@keyframes auth-copy-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-form-in{0%{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes auth-message-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes app-shell-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.auth-screen{min-height:100svh;overflow-y:auto;padding:18px 0}.auth-stage{width:min(430px,calc(100vw - 28px));min-height:auto;grid-template-columns:1fr;gap:22px;align-content:center}.auth-copy{text-align:center;justify-self:center}.auth-copy p:last-child{margin-left:auto;margin-right:auto}.auth-copy h1{font-size:clamp(32px,10vw,46px);line-height:1.02}.alic-login-box{padding:2px;border-radius:16px}}@media(max-width:640px)and (pointer:coarse){.auth-screen{display:block;padding:14px 0;overflow-x:hidden;overflow-y:auto}.auth-stage{width:min(430px,calc(100vw - 24px));min-height:calc(100svh - 28px);margin:0 auto;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;align-content:space-between;gap:18px}.auth-copy{width:min(360px,100%);align-self:start;justify-self:center;padding-top:clamp(8px,3svh,28px);text-align:left}.auth-kicker{margin-bottom:10px;font-size:12px}.auth-copy h1{max-width:9.5em;font-size:clamp(30px,10vw,42px);line-height:1.02}.auth-copy p:last-child{max-width:30em;margin:12px 0 0;font-size:14px;line-height:1.45}.alic-login-box{width:min(360px,100%);justify-self:center;align-self:end;padding:18px;border-radius:16px;margin-bottom:42px}.auth-tabs{margin-bottom:14px}.alic-login-box h2{margin-bottom:14px;font-size:22px}.auth-field,.auth-field-username.show{padding:9px 0}.auth-field input,.auth-field label{font-size:16px}.auth-submit{height:44px}.auth-recovery-row{margin-top:-4px}}@media(max-width:430px),(max-height:620px){.auth-stage{gap:16px}.auth-kicker{margin-bottom:10px}.auth-copy h1{font-size:clamp(28px,9vw,38px)}.auth-copy p:last-child{margin-top:12px;font-size:14px;line-height:1.45}.alic-login-box h2{margin-bottom:14px;font-size:22px}.auth-tabs{margin-bottom:16px}.auth-field,.auth-field-username.show{padding:9px 0}.auth-field input{font-size:16px}.auth-submit{height:44px}}.menu{background:var(--surface-1);color:var(--main-text);font-size:var(--mfs);padding:var(--msp);display:flex;flex-direction:column;gap:var(--msg);width:auto;height:100vh;position:fixed;top:0;left:0;z-index:1000;transform-origin:left center;transform:translateZ(0);backface-visibility:hidden;box-shadow:none;will-change:transform}.menu-content{font-family:CodeMedium;display:flex;flex-direction:column;gap:var(--rad);flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none}.menu-content::-webkit-scrollbar{display:none}.menu-profile-button{width:100%;min-height:48px;display:flex;align-items:center;gap:0;border:0;border-radius:var(--rad);padding:clamp(5px,calc(var(--index)*.5),12px) clamp(10px,calc(var(--index)*.8),18px) clamp(7px,calc(var(--index)*.55),12px) 14px;background:color-mix(in srgb,var(--accent-color) 11%,transparent);color:var(--main-text);cursor:pointer;overflow:hidden;transition:background-color var(--tr) ease,color var(--tr) ease}.menu-profile-button:hover{background:var(--modal-color)}.menu-profile-avatar{width:clamp(34px,calc(var(--index) * 2.2),40px);min-width:clamp(34px,calc(var(--index) * 2.2),40px);height:clamp(34px,calc(var(--index) * 2.2),40px);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-color);color:var(--accent-contrast);font-family:Inter-Bold;font-size:14px}.menu-profile-text{display:grid;gap:2px;min-width:0;margin-left:clamp(6px,calc(var(--index) * .42),10px);text-align:left;opacity:1;transition:opacity .25s ease,max-width .35s ease}.menu-profile-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Inter-Bold;font-size:13px}.menu-profile-meta{color:var(--secondary-text);font-size:11px}.menu.menu-collapsed .menu-profile-button{padding-right:0}.menu.menu-collapsed .menu-profile-text{opacity:0;max-width:0;pointer-events:none}.menu-item{position:relative;display:flex;align-items:center;gap:0;min-height:50px;padding:clamp(5px,calc(var(--index)*.5),14px) clamp(10px,calc(var(--index)*.8),18px) clamp(8px,calc(var(--index)*.6),14px) 14px;border-radius:var(--rad);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;contain:content;backface-visibility:hidden;margin:0;overflow:hidden;transition:background-color var(--tr) ease,color var(--tr) ease}.menu-item:hover:not(.active){background:var(--modal-color);color:var(--main-text)}.menu-item.active{background:var(--accent-color);color:var(--accent-contrast)}.menu-item-base{display:inline-flex;align-items:center;justify-content:center;width:clamp(34px,calc(var(--index) * 2.2),40px);min-width:clamp(34px,calc(var(--index) * 2.2),40px);margin-left:-1px;height:clamp(22px,calc(var(--index) * 1.5),26px);font-size:var(--mis);flex-shrink:0;transform-origin:center;transform:translateZ(0)}.menu.menu-collapsed .menu-item{padding-right:0}.menu-item-extra{opacity:1;width:auto;max-width:100%;min-width:0;font-size:1em;line-height:1.2;margin-left:clamp(5px,calc(var(--index) * .38),10px);overflow:hidden;text-rendering:optimizeLegibility;text-overflow:clip;transition:opacity .25s ease,max-width .35s ease}.menu-topic-check{width:22px;min-width:22px;height:22px;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--accent-color) 18%,var(--surface-1));color:var(--accent-color);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-color) 28%,transparent)}.menu-item.active .menu-topic-check{background:color-mix(in srgb,var(--accent-contrast) 20%,transparent);color:var(--accent-contrast);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-contrast) 45%,transparent)}.menu.menu-collapsed .menu-item-extra{opacity:0;max-width:0;pointer-events:none}.menu.menu-collapsed .menu-topic-check{position:absolute;right:5px;top:6px;width:16px;min-width:16px;height:16px;margin-left:0;font-size:10px}.gsap-animating-extra{will-change:opacity}.gsap-animating-base{will-change:transform}@media(max-width:640px)and (pointer:coarse){.menu-rail{display:none}.menu{background:var(--surface-1);gap:6px;padding:4px;top:0;bottom:0;width:var(--menu-collapsed);min-width:var(--menu-collapsed);max-width:var(--menu-collapsed);height:var(--mobile-menu-height, 100svh);min-height:var(--mobile-menu-height, 100svh);overflow:hidden}.menu-content{gap:6px;overflow-y:auto;overflow-x:hidden}.menu-profile-button{min-height:44px;justify-content:center;padding:5px 0;transform:translateY(-27px)}.menu-profile-avatar{width:34px;min-width:34px;height:34px;font-size:13px}.menu-profile-text,.menu-item-extra{display:none}.menu-item{min-height:44px;justify-content:center;padding:5px 0;border-radius:10px}.menu-item-base{width:36px;min-width:36px;height:28px;margin-left:0;font-size:18px}.menu-topic-check{right:2px;top:4px}}.sb-wrapper{display:flex;align-items:center;justify-content:center;font-size:var(--mfs);min-height:clamp(72px,calc(var(--index) * 4.5),100px);gap:clamp(8px,calc(var(--index) * .6),14px);padding:clamp(8px,calc(var(--index) * .6),14px);margin-bottom:clamp(4px,calc(var(--index) * .4),10px);border-bottom:1px solid var(--border-color);position:relative;min-width:0;overflow:visible;z-index:20}.sb-wrapper.collapsed{justify-content:center;padding-left:0;padding-right:0}.sb-wrapper.collapsed .toggle-button{transform:scale(1.38)}.toggle-button{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:clamp(22px,calc(var(--index) * 1.45),28px);height:clamp(22px,calc(var(--index) * 1.45),28px);font-size:var(--mis);color:var(--secondary-text);flex-shrink:0;padding:0;opacity:1;transition:all .2s ease}.toggle-button.is-hidden{opacity:0}.toggle-button.is-locked{opacity:.38;cursor:default;pointer-events:none}.toggle-button:hover{color:var(--accent-color);transform:scale(1.2)}.sb-wrapper.collapsed .toggle-button:hover{transform:scale(1.28)}.search-box{position:relative;flex:1 1 auto;width:auto;max-width:100%;min-width:0;padding:clamp(8px,calc(var(--index) * .5),12px) 0;transform-origin:left center;z-index:21;transition:opacity .35s ease,transform .35s ease,max-width .35s ease}.search-box.visible{opacity:1;transform:scaleX(1)}.search-box.hidden{opacity:0;transform:scaleX(.78);max-width:0;pointer-events:none;overflow:hidden}.search-input{width:100%;max-width:100%;min-width:0;padding:clamp(8px,calc(var(--index) * .5),12px) clamp(34px,calc(var(--index) * 2.2),48px) clamp(8px,calc(var(--index) * .5),12px) clamp(8px,calc(var(--index) * .45),12px);font-size:var(--msf);color:var(--main-text);border:none;outline:none;background:var(--bg-input);border-radius:clamp(14px,calc(var(--index) * 1.1),24px)}.search-label{font-family:Inter-Regular;position:absolute;top:clamp(8px,calc(var(--index) * .5),12px);left:clamp(10px,calc(var(--index) * .8),16px);padding:clamp(8px,calc(var(--index) * .5),12px) 0;font-size:var(--msf);color:var(--main-text);pointer-events:none;opacity:0;max-width:clamp(72px,calc(var(--index) * 4.8),120px);overflow:hidden;white-space:nowrap;transform:translate(-6px);transition:top .4s ease,left .4s ease,font-size .4s ease,opacity .26s ease,transform .26s ease,max-width .26s ease}.search-label.visible{opacity:1;transform:translate(0)}.search-box.hidden .search-label{opacity:0;transform:translate(-8px);max-width:0}.search-input:focus~.search-label,.search-input:not(:placeholder-shown)~.search-label{top:clamp(-16.5px,calc(var(--index) * -.8),-10px);left:clamp(2px,calc(var(--index) * .2),6px);font-size:var(--msls)}.search-input::placeholder{color:transparent}.search-theme{position:absolute;top:50%;right:clamp(5px,calc(var(--index) * .4),14px);transform:translateY(-50%);width:clamp(24px,calc(var(--index) * 1.7),32px);height:clamp(24px,calc(var(--index) * 1.7),32px);font-size:var(--mis);border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--secondary-text);cursor:pointer;transition:transform .15s ease,background-color .15s ease,color .15s ease}.search-theme:hover{color:var(--secondary-text);transform:translateY(-50%) scale(1.2)}.search-theme.active{color:var(--main-text)}.search-theme:active{transform:translateY(-50%) scale(.98)}.search-drop{position:absolute;top:100%;left:0;right:0;background:var(--surface-1);border-radius:var(--border-radius);box-shadow:var(--dropdown-shadow);max-height:clamp(220px,calc(var(--index) * 14),360px);overflow-y:auto;z-index:30;margin-top:clamp(4px,calc(var(--index) * .25),7px);animation:dropdownIn .2s ease-out}.search-drop-item{display:flex;align-items:center;gap:clamp(8px,calc(var(--index) * .5),12px);padding:clamp(8px,calc(var(--index) * .5),12px) clamp(10px,calc(var(--index) * .8),16px);min-height:clamp(38px,calc(var(--index) * 2.4),46px);font-size:var(--mfs);cursor:pointer;transition:background-color .2s ease}.search-drop-item:hover{background-color:var(--modal-color)}.search-drop-item.empty{color:var(--secondary-text);cursor:default}@media(max-width:640px)and (pointer:coarse){.sb-wrapper{min-height:48px;padding:4px 0;margin-bottom:4px;border-bottom:0}.toggle-button{width:36px;height:36px;font-size:20px}.search-box{display:none}}.search-drop-item.empty:hover{background-color:transparent}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
