@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:DM Sans Variable,Segoe UI Variable,ui-sans-serif,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--font-display: "DM Sans Variable", "Segoe UI Variable", ui-sans-serif, system-ui, sans-serif;--page: #f8f7f3;--surface: #ffffff;--surface-muted: #efeee8;--surface-accent: #eef1fb;--primary-soft: #e9edff;--ink: #111a31;--text: #172039;--muted: #707689;--line: #dfddd6;--line-strong: #aeb3c0;--accent-blue: #3157e7;--accent-yellow: #e6b93f;--accent-pink: #df698b;--accent-green: #2f9468;--danger: #c9364e;--warning: #e39732;--warning-soft: #fff1dd;--warning-text: #8c4c16;--success: #2f9468;--success-soft: #e4f4eb;--paper: var(--surface);--bg: var(--page);--line-2: var(--line-strong);--accent: var(--accent-blue);--shadow-sm: 0 3px 12px rgba(16,32,68,.07);--shadow-lg: 0 20px 50px rgba(24,32,51,.14);--shadow: var(--shadow-lg);color:var(--text);background:var(--page)}:root[data-theme=dark]{--page: #121316;--surface: #1b1d22;--surface-muted: #25272e;--surface-accent: #303440;--primary-soft: #2a3044;--ink: #f1f0ed;--text: #e9e8e5;--muted: #a5a6af;--line: #2d2f36;--line-strong: #e9e8e5;--accent-blue: #b6b0fa;--accent-yellow: #f3cb45;--accent-pink: #ff85a1;--accent-green: #65d6aa;--danger: #ff8192;--warning: #f4b45d;--warning-soft: #3f3025;--warning-text: #ffd09a;--success: #65d6aa;--success-soft: #1f3c37;--shadow-sm: 0 4px 14px rgba(0,0,0,.2);--shadow-lg: 0 24px 60px rgba(0,0,0,.32);--shadow: var(--shadow-lg)}*{box-sizing:border-box}html{min-height:100%;background:var(--page);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-width:320px;min-height:100%;margin:0;background:var(--page);color:var(--text)}button,input,select,textarea{font:inherit}input,select,textarea{font-size:16px}button{color:inherit}::selection{background:var(--accent-yellow);color:#121316}:focus-visible{outline:3px solid var(--accent-pink);outline-offset:2px}.overlay{position:fixed;inset:0;z-index:1200;display:flex;justify-content:center;align-items:flex-start;padding:max(38px,7vh) 16px 16px;background:#060c1c9e}.overlay--strong{background:#060c1cb8}.modal-panel{position:relative;width:100%;max-width:480px;max-height:calc(100vh - 76px);overflow-y:auto;padding:0;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid var(--line)}.modal-header h3{margin:0;font:800 1.15rem/1.1 var(--font-display);letter-spacing:-.02em}.modal-body{padding:18px}.modal-panel .muted{color:var(--muted)}.ios-standalone .app-root{padding-top:calc(env(safe-area-inset-top,0px) + 8px)}html.ios-standalone{min-height:calc(100% + env(safe-area-inset-top))}@media (max-width: 620px){.overlay{align-items:flex-end;padding:16px 0 0}.modal-panel{max-width:none!important;max-height:min(88vh,780px);border-width:1px 0 0;border-radius:24px 24px 0 0;box-shadow:0 -14px 40px #0000002e}.modal-header{padding:15px 16px 12px}.modal-body{padding:16px;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.scrollsheet-dialog[data-scrollsheet-side=bottom]{--scrollsheet-keyboard-lift:var(--scrollsheet-keyboard,0px)}.scrollsheet-dialog{width:100%;height:calc(100% + var(--scrollsheet-keyboard-lift,0px));--scrollsheet-ease:linear(0, .042 3.4%, .136 6.9%, .37 13.8%, .481 17.2%, .58 20.7%, .664 24.1%, .735 27.6%, .793 31%, .839 34.5%, .876 37.9%, .906 41.4%, .928 44.8%, .946 48.3%, .96 51.7%, .978 58.6%, .988 65.5%, .994 72.4%, .998 82.8%, 1);--scrollsheet-dur:475ms;background:0 0;border:none;outline:none;max-width:none;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:clip}.scrollsheet-dialog::backdrop{background:0 0}:where(.scrollsheet-backdrop){background:var(--scrollsheet-backdrop,#00000052);opacity:0;pointer-events:none;position:fixed;inset:0}.scrollsheet-dialog[data-scrollsheet-state=opening] .scrollsheet-backdrop{opacity:min(var(--scrollsheet-dim,0),1);transition:opacity var(--scrollsheet-dur) var(--scrollsheet-ease)}.scrollsheet-dialog[data-scrollsheet-state=open] .scrollsheet-backdrop{opacity:min(var(--scrollsheet-dim,0),1);transition:none}.scrollsheet-dialog[data-scrollsheet-state=closing] .scrollsheet-backdrop{opacity:0;transition:opacity var(--scrollsheet-dur) var(--scrollsheet-ease)}:where(.scrollsheet-top-chrome){height:calc(env(safe-area-inset-top,0px) + 8px);inset:0 0 auto}:where(.scrollsheet-bottom-chrome){height:calc(env(safe-area-inset-bottom,0px) + 32px);inset:auto 0 0}:where(.scrollsheet-top-chrome)~:where([data-scrollsheet-backdrop]){top:calc(env(safe-area-inset-top,0px) + 8px)}:where(.scrollsheet-bottom-chrome)~:where([data-scrollsheet-backdrop]){bottom:calc(env(safe-area-inset-bottom,0px) + 32px)}.scrollsheet-dialog:is([data-scrollsheet-state=pre],[data-scrollsheet-state=opening]) :is(.scrollsheet-top-chrome,.scrollsheet-bottom-chrome){opacity:min(var(--scrollsheet-dim,0),1);transition:none}.scrollsheet-bottom-sentinel{height:min(calc(max(env(safe-area-inset-bottom,0px),24px) + 45vh),var(--scrollsheet-reveal,24px));pointer-events:none;position:fixed;inset:auto 0 0}.scrollsheet-track{left:0;right:0;top:var(--scrollsheet-vv-top,0px);height:calc(var(--scrollsheet-vv-height,100%) + var(--scrollsheet-keyboard-lift,0px));overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;position:fixed;overflow-y:scroll}.scrollsheet-track::-webkit-scrollbar{display:none}.scrollsheet-dialog:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-track{scroll-snap-type:x mandatory;overscroll-behavior-x:none;overflow:scroll hidden}.scrollsheet-dialog[data-scrollsheet-modal=false]{pointer-events:none}.scrollsheet-dialog[data-scrollsheet-modal=false] .scrollsheet-panel{pointer-events:auto;touch-action:none}.scrollsheet-canvas{height:calc(100% + var(--scrollsheet-max-detent,0px));position:relative}.scrollsheet-dialog:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-canvas{width:calc(100% + var(--scrollsheet-max-detent,0px));height:100%}.scrollsheet-canvas:after{content:"";top:calc(100% - var(--scrollsheet-keyboard,0px));--scrollsheet-od:calc(120vh + var(--scrollsheet-keyboard,0px));height:0;box-shadow:0 calc(var(--scrollsheet-od) / 2) 0 calc(var(--scrollsheet-od) / 2) var(--scrollsheet-panel-bg,transparent);pointer-events:none;position:absolute;left:0;right:0}.scrollsheet-dialog[data-scrollsheet-side=top] .scrollsheet-canvas:after{box-shadow:0 -60vh 0 60vh var(--scrollsheet-panel-bg,transparent);top:auto;bottom:100%}.scrollsheet-dialog[data-scrollsheet-side=left] .scrollsheet-canvas:after{width:0;height:auto;box-shadow:-60vw 0 0 60vw var(--scrollsheet-panel-bg,transparent);inset:0 100% 0 auto}.scrollsheet-dialog[data-scrollsheet-side=right] .scrollsheet-canvas:after{width:0;height:auto;box-shadow:60vw 0 0 60vw var(--scrollsheet-panel-bg,transparent);inset:0 auto 0 100%}.scrollsheet-dialog[data-scrollsheet-detached] .scrollsheet-canvas:after{box-shadow:none}.scrollsheet-snap{pointer-events:none;scroll-snap-align:start;width:100%;height:1px;position:absolute;left:0}.scrollsheet-dialog:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-snap{width:1px;height:100%;top:0;left:auto}.scrollsheet-panel{--scrollsheet-eg:calc(var(--scrollsheet-inset-bottom,0px) + var(--scrollsheet-keyboard,0px));bottom:var(--scrollsheet-eg);left:var(--scrollsheet-inset-x,0px);right:var(--scrollsheet-inset-x,0px);height:var(--scrollsheet-max-detent,auto);max-height:var(--scrollsheet-vv-height,none);will-change:transform;padding-bottom:max(var(--scrollsheet-safe-area,env(safe-area-inset-bottom,0px)),0px);position:absolute;overflow:hidden;transform:translateY(100%)}.scrollsheet-dialog[data-scrollsheet-side=top] .scrollsheet-panel{bottom:auto;top:var(--scrollsheet-inset-top,0px);left:var(--scrollsheet-inset-x,0px);right:var(--scrollsheet-inset-x,0px);height:var(--scrollsheet-max-detent,auto);padding-bottom:0;padding-top:max(var(--scrollsheet-safe-area-top,env(safe-area-inset-top,0px)),0px);transform:translateY(-100%)}.scrollsheet-dialog:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-panel{top:var(--scrollsheet-inset-y,0px);bottom:var(--scrollsheet-inset-y,0px);width:var(--scrollsheet-max-detent,auto);height:auto;padding-top:max(var(--scrollsheet-safe-area-top,env(safe-area-inset-top,0px)),0px)}.scrollsheet-dialog[data-scrollsheet-side=left] .scrollsheet-panel{right:auto;left:var(--scrollsheet-inset-left,0px);padding-left:max(var(--scrollsheet-safe-area-left,env(safe-area-inset-left,0px)),0px);transform:translate(-100%)}.scrollsheet-dialog[data-scrollsheet-side=right] .scrollsheet-panel{left:auto;right:var(--scrollsheet-inset-right,0px);padding-right:max(var(--scrollsheet-safe-area-right,env(safe-area-inset-right,0px)),0px);transform:translate(100%)}.scrollsheet-dialog:is([data-scrollsheet-side=top],[data-scrollsheet-side=left]) .scrollsheet-panel{justify-content:flex-end;display:flex}.scrollsheet-dialog[data-scrollsheet-side=top] .scrollsheet-panel{flex-direction:column}.scrollsheet-dialog[data-scrollsheet-side=left] .scrollsheet-panel{flex-direction:row}.scrollsheet-dialog[data-scrollsheet-side=left] .scrollsheet-panel>*{flex:0 0 100%;min-width:0}:where(.scrollsheet-panel){scrollbar-width:none}:where(.scrollsheet-panel)::-webkit-scrollbar{display:none}:where([data-scrollsheet-nested-scroll]){scrollbar-width:none}:where([data-scrollsheet-nested-scroll])::-webkit-scrollbar{display:none}:where(.scrollsheet-dialog[data-scrollsheet-scrollbar=overlay] [data-scrollsheet-nested-scroll]){position:relative}:where(.scrollsheet-panel){--scrollsheet-radius:20px;background:var(--scrollsheet-bg,#fff);color:var(--scrollsheet-fg,#1d1d1f);border-radius:var(--scrollsheet-radius) var(--scrollsheet-radius) 0 0;box-shadow:var(--scrollsheet-shadow,0 -8px 32px #00000029)}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-panel){background:var(--scrollsheet-bg,#1c1c1e);color:var(--scrollsheet-fg,#f5f5f7)}@media (prefers-color-scheme:dark){:where([data-scrollsheet-theme=system]) :where(.scrollsheet-panel){background:var(--scrollsheet-bg,#1c1c1e);color:var(--scrollsheet-fg,#f5f5f7)}}.scrollsheet-dialog[data-scrollsheet-side=top] :where(.scrollsheet-panel){border-radius:0 0 var(--scrollsheet-radius) var(--scrollsheet-radius);box-shadow:var(--scrollsheet-shadow,0 8px 32px #00000029)}.scrollsheet-dialog[data-scrollsheet-side=left] :where(.scrollsheet-panel){box-shadow:var(--scrollsheet-shadow,8px 0 32px #00000029);border-radius:0}.scrollsheet-dialog[data-scrollsheet-side=right] :where(.scrollsheet-panel){box-shadow:var(--scrollsheet-shadow,-8px 0 32px #00000029);border-radius:0}@media (min-width:768px){:where(.scrollsheet-dialog[data-scrollsheet-side=bottom]) :where(.scrollsheet-panel),:where(.scrollsheet-dialog[data-scrollsheet-side=bottom]) .scrollsheet-canvas:after{width:min(var(--scrollsheet-max-inline,640px),calc(100% - 2 * var(--scrollsheet-desktop-margin,24px)));margin-inline:auto var(--scrollsheet-desktop-margin,24px)}.scrollsheet-dialog[data-scrollsheet-side=bottom] .scrollsheet-panel{--scrollsheet-inset-bottom:var(--scrollsheet-desktop-margin,24px);--scrollsheet-dg:calc(var(--scrollsheet-desktop-margin,24px) + var(--scrollsheet-inset-x,0px) + 32px)}.scrollsheet-dialog[data-scrollsheet-side=bottom]:where([data-scrollsheet-detached]) .scrollsheet-panel,.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=closing]:where([data-scrollsheet-detached]) .scrollsheet-panel{transform:translate3d(calc(100% + var(--scrollsheet-dg,32px)),0,0)}.scrollsheet-dialog[data-scrollsheet-side=bottom]:where([data-scrollsheet-detached][data-scrollsheet-rtl]) .scrollsheet-panel,.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=closing]:where([data-scrollsheet-detached][data-scrollsheet-rtl]) .scrollsheet-panel{transform:translate3d(calc(-100% - var(--scrollsheet-dg,32px)),0,0)}.scrollsheet-dialog[data-scrollsheet-side=top] .scrollsheet-panel{top:var(--scrollsheet-desktop-margin,24px);border-radius:var(--scrollsheet-radius)}.scrollsheet-dialog[data-scrollsheet-side=bottom] :where(.scrollsheet-handle){opacity:0;pointer-events:none;width:5px;height:44px;margin:-22px 0 0;position:absolute;top:50%;left:10px}.scrollsheet-dialog[data-scrollsheet-side=bottom] :where(.scrollsheet-handle:focus-visible){opacity:1;pointer-events:auto}.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-has-handle] :where(.scrollsheet-body){padding-top:18px}:where(.scrollsheet-dialog[data-scrollsheet-side=top]) :where(.scrollsheet-panel),:where(.scrollsheet-dialog[data-scrollsheet-side=top]) .scrollsheet-canvas:after{max-width:var(--scrollsheet-max-inline,640px);margin-inline:auto}}.scrollsheet-dialog[data-scrollsheet-detached] :where(.scrollsheet-panel){padding-bottom:max(var(--scrollsheet-safe-area,0px),0px);border-radius:var(--scrollsheet-radius)}.scrollsheet-dialog[data-scrollsheet-detached][data-scrollsheet-side=bottom] :where(.scrollsheet-panel){--scrollsheet-eg:calc(max(var(--scrollsheet-inset-bottom,0px), env(safe-area-inset-bottom,0px)) + var(--scrollsheet-keyboard,0px));bottom:var(--scrollsheet-eg)}.scrollsheet-dialog[data-scrollsheet-scrollbar=native] .scrollsheet-panel{scrollbar-width:auto}.scrollsheet-dialog[data-scrollsheet-scrollbar=native] .scrollsheet-panel::-webkit-scrollbar{display:block}.scrollsheet-dialog[data-scrollsheet-scrollbar=native] [data-scrollsheet-nested-scroll]{scrollbar-width:auto}.scrollsheet-dialog[data-scrollsheet-scrollbar=native] [data-scrollsheet-nested-scroll]::-webkit-scrollbar{display:block}.scrollsheet-dialog[data-scrollsheet-state=opening] .scrollsheet-panel,.scrollsheet-dialog[data-scrollsheet-state=open] .scrollsheet-panel{transform:translate(0)}.scrollsheet-dialog[data-scrollsheet-state=closing] .scrollsheet-panel{transform:translate3d(0,calc(100% + var(--scrollsheet-eg,0px) + 32px),0)}.scrollsheet-dialog[data-scrollsheet-side=top][data-scrollsheet-state=closing] .scrollsheet-panel{transform:translate3d(0,calc(-100% - var(--scrollsheet-inset-top,0px) - 32px),0)}.scrollsheet-dialog[data-scrollsheet-side=left][data-scrollsheet-state=closing] .scrollsheet-panel{transform:translate3d(calc(-100% - var(--scrollsheet-inset-left,0px) - 32px),0,0)}.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-state=closing] .scrollsheet-panel{transform:translate3d(calc(100% + var(--scrollsheet-inset-right,0px) + 32px),0,0)}.scrollsheet-dialog:is([data-scrollsheet-at-max],[data-scrollsheet-kb]) .scrollsheet-panel{overflow-y:auto}.scrollsheet-dialog[data-scrollsheet-kb][data-scrollsheet-side=bottom] .scrollsheet-panel{--scrollsheet-eg:calc(var(--scrollsheet-inset-bottom,0px) + var(--scrollsheet-keyboard,0px) + var(--scrollsheet-kb-hang,0px));box-shadow:none;border-bottom-right-radius:0;border-bottom-left-radius:0}.scrollsheet-kb-fade{display:none}.scrollsheet-dialog[data-scrollsheet-kb][data-scrollsheet-side=bottom] .scrollsheet-kb-fade{left:var(--scrollsheet-inset-x,0px);right:var(--scrollsheet-inset-x,0px);bottom:calc(var(--scrollsheet-keyboard,0px) + var(--scrollsheet-kb-hang,0px));background:linear-gradient(to bottom,transparent,var(--scrollsheet-panel-bg,#fff) 75%);pointer-events:none;z-index:1;height:18px;display:block;position:absolute}.scrollsheet-dialog:is([data-scrollsheet-handle-only],[data-scrollsheet-disable-drag]):not([data-scrollsheet-at-max],[data-scrollsheet-at-nested-boundary],[data-scrollsheet-kb]) :is(.scrollsheet-track,.scrollsheet-canvas){touch-action:none}.scrollsheet-dialog[data-scrollsheet-handle-only] .scrollsheet-panel,.scrollsheet-dialog[data-scrollsheet-disable-drag] .scrollsheet-panel{touch-action:pan-y}.scrollsheet-dialog[data-scrollsheet-handle-only]:not([data-scrollsheet-at-nested-boundary]) .scrollsheet-panel,.scrollsheet-dialog[data-scrollsheet-disable-drag]:not([data-scrollsheet-at-nested-boundary]) .scrollsheet-panel{overscroll-behavior:contain}.scrollsheet-dialog[data-scrollsheet-at-nested-boundary] .scrollsheet-track,.scrollsheet-dialog[data-scrollsheet-at-nested-boundary] .scrollsheet-canvas{touch-action:pan-y}.scrollsheet-dialog[data-scrollsheet-side=left][data-scrollsheet-at-nested-boundary] .scrollsheet-track,.scrollsheet-dialog[data-scrollsheet-side=left][data-scrollsheet-at-nested-boundary] .scrollsheet-canvas,.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-at-nested-boundary] .scrollsheet-track,.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-at-nested-boundary] .scrollsheet-canvas{touch-action:pan-x}:where(.scrollsheet-scrollbar){top:0;width:var(--scrollsheet-scrollbar-width,4px);box-sizing:border-box;background:var(--scrollsheet-scrollbar-color,#00000052);opacity:0;pointer-events:none;z-index:2;background-clip:padding-box;border:1px solid #ffffff38;border-radius:999px;transition:opacity .4s;position:absolute;inset-inline-end:3px}.scrollsheet-scrollbar[data-visible]{opacity:1;transition:opacity .12s}@media (prefers-reduced-motion:reduce){:where(.scrollsheet-scrollbar){transition:none}}.scrollsheet-panel:before{content:"";z-index:1;pointer-events:none;opacity:var(--scrollsheet-recede-dim,0);background:#000;position:absolute;inset:0}.scrollsheet-dialog[data-scrollsheet-behind] .scrollsheet-panel{--scrollsheet-recede-dim:.14;--scrollsheet-stack-progress:1;transform-origin:50% 0;transition:transform var(--scrollsheet-dur) var(--scrollsheet-ease);transform:translateY(8px)scale(.94)}.scrollsheet-dialog[data-scrollsheet-behind] .scrollsheet-panel:before{transition:opacity var(--scrollsheet-dur) var(--scrollsheet-ease)}.scrollsheet-dialog[data-scrollsheet-side=top][data-scrollsheet-behind] .scrollsheet-panel{transform-origin:50% 100%;transform:translateY(-8px)scale(.94)}.scrollsheet-dialog[data-scrollsheet-side=left][data-scrollsheet-behind] .scrollsheet-panel{transform-origin:100%;transform:translate(-8px)scale(.94)}.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-behind] .scrollsheet-panel{transform-origin:0%;transform:translate(8px)scale(.94)}.scrollsheet-track,.scrollsheet-canvas,.scrollsheet-panel,.scrollsheet-dialog:focus-visible,.scrollsheet-track:focus-visible,.scrollsheet-canvas:focus-visible,.scrollsheet-panel:focus-visible{outline:none}[data-scrollsheet-dragging]{-webkit-user-select:none;user-select:none}[data-scrollsheet-dragging] .scrollsheet-panel{cursor:grabbing}.scrollsheet-dialog:is([data-scrollsheet-side=top],[data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-panel{scroll-padding-bottom:var(--scrollsheet-keyboard,0px)}.scrollsheet-dialog:is([data-scrollsheet-side=top],[data-scrollsheet-side=left],[data-scrollsheet-side=right]) [data-scrollsheet-body]{padding-bottom:var(--scrollsheet-keyboard,0px)}:where([data-scrollsheet-body]){display:flow-root}.scrollsheet-panel[data-scrollsheet-fill]{flex-direction:column;display:flex}[data-scrollsheet-body][data-scrollsheet-fill]{flex-direction:column;flex:1;min-height:0;display:flex}@media (prefers-reduced-motion:reduce){.scrollsheet-dialog .scrollsheet-panel,.scrollsheet-dialog .scrollsheet-backdrop{transition:none!important}}@supports (animation-timeline:scroll()){@property --scrollsheet-progress{syntax:"<number>";inherits:true;initial-value:0}.scrollsheet-dialog[data-scrollsheet-sda]{timeline-scope:--scrollsheet-track}.scrollsheet-dialog[data-scrollsheet-sda] .scrollsheet-track{scroll-timeline:--scrollsheet-track y}.scrollsheet-dialog[data-scrollsheet-sda]:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) .scrollsheet-track{scroll-timeline:--scrollsheet-track x}.scrollsheet-dialog[data-scrollsheet-sda][data-scrollsheet-state=open] .scrollsheet-backdrop{animation:linear both scrollsheet-fade,linear both scrollsheet-progress-var;animation-timeline:--scrollsheet-track,--scrollsheet-track;animation-range:var(--scrollsheet-fade-start,0px) var(--scrollsheet-fade-end,100%),0px var(--scrollsheet-first-detent,100%)}.scrollsheet-dialog[data-scrollsheet-sda][data-scrollsheet-state=open]:is([data-scrollsheet-side=top],[data-scrollsheet-side=left]) .scrollsheet-backdrop{animation-direction:reverse,reverse;animation-range:calc(var(--scrollsheet-max-detent,0px) - var(--scrollsheet-fade-end,0px)) calc(var(--scrollsheet-max-detent,0px) - var(--scrollsheet-fade-start,0px)),calc(var(--scrollsheet-max-detent,0px) - var(--scrollsheet-first-detent,0px)) var(--scrollsheet-max-detent,0px)}@keyframes scrollsheet-fade{0%{opacity:0}to{opacity:1}}@keyframes scrollsheet-progress-var{0%{--scrollsheet-progress:0}to{--scrollsheet-progress:1}}}.scrollsheet-fallback{z-index:2147483647;display:flex;position:fixed;inset:0}.scrollsheet-fallback[data-scrollsheet-modal=false]{pointer-events:none}.scrollsheet-fallback[data-scrollsheet-modal=false] .scrollsheet-fallback-panel{pointer-events:auto}.scrollsheet-fallback-backdrop{background:var(--scrollsheet-backdrop,#00000052);position:fixed;inset:0}:where(.scrollsheet-fallback-panel){--scrollsheet-radius:20px;background:var(--scrollsheet-bg,#fff);color:var(--scrollsheet-fg,#1d1d1f);box-shadow:var(--scrollsheet-shadow,0 -8px 32px #00000029);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;outline:none;position:relative;overflow-y:auto}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-fallback-panel){background:var(--scrollsheet-bg,#1c1c1e);color:var(--scrollsheet-fg,#f5f5f7)}@media (prefers-color-scheme:dark){:where([data-scrollsheet-theme=system]) :where(.scrollsheet-fallback-panel){background:var(--scrollsheet-bg,#1c1c1e);color:var(--scrollsheet-fg,#f5f5f7)}}.scrollsheet-fallback[data-scrollsheet-side=bottom]{align-items:flex-end}.scrollsheet-fallback[data-scrollsheet-side=bottom] :where(.scrollsheet-fallback-panel){border-radius:var(--scrollsheet-radius) var(--scrollsheet-radius) 0 0;width:100%;max-height:85%;padding-bottom:max(var(--scrollsheet-safe-area,env(safe-area-inset-bottom,0px)),0px)}.scrollsheet-fallback[data-scrollsheet-side=top]{align-items:flex-start}.scrollsheet-fallback[data-scrollsheet-side=top] :where(.scrollsheet-fallback-panel){border-radius:0 0 var(--scrollsheet-radius) var(--scrollsheet-radius);width:100%;max-height:85%;box-shadow:var(--scrollsheet-shadow,0 8px 32px #00000029);padding-top:max(var(--scrollsheet-safe-area-top,env(safe-area-inset-top,0px)),0px)}.scrollsheet-fallback[data-scrollsheet-side=center]{justify-content:center;align-items:center}.scrollsheet-fallback[data-scrollsheet-side=center] :where(.scrollsheet-fallback-panel){max-inline-size:var(--scrollsheet-center-max-inline,min(560px, calc(100% - 40px) ));border-radius:var(--scrollsheet-radius);max-height:85%;box-shadow:var(--scrollsheet-shadow,0 8px 32px #00000029)}.scrollsheet-fallback[data-scrollsheet-side=left]{justify-content:flex-start}.scrollsheet-fallback[data-scrollsheet-side=right]{justify-content:flex-end}.scrollsheet-fallback:is([data-scrollsheet-side=left],[data-scrollsheet-side=right]) :where(.scrollsheet-fallback-panel){max-width:85%;height:100%;padding-top:max(var(--scrollsheet-safe-area-top,env(safe-area-inset-top,0px)),0px);padding-bottom:max(var(--scrollsheet-safe-area,env(safe-area-inset-bottom,0px)),0px);border-radius:0}.scrollsheet-fallback[data-scrollsheet-side=left] :where(.scrollsheet-fallback-panel){box-shadow:var(--scrollsheet-shadow,8px 0 32px #00000029)}.scrollsheet-fallback[data-scrollsheet-side=right] :where(.scrollsheet-fallback-panel){box-shadow:var(--scrollsheet-shadow,-8px 0 32px #00000029)}@media (min-width:768px){.scrollsheet-fallback[data-scrollsheet-side=bottom] :where(.scrollsheet-fallback-panel),.scrollsheet-fallback[data-scrollsheet-side=top] :where(.scrollsheet-fallback-panel){max-width:var(--scrollsheet-max-inline,640px);margin-inline:auto}}.scrollsheet-fallback [data-scrollsheet-handle]{display:none}@media (forced-colors:active){:where(.scrollsheet-backdrop),:where(.scrollsheet-fallback-backdrop){forced-color-adjust:none}:where(.scrollsheet-panel),:where(.scrollsheet-fallback-panel){color:canvastext;box-shadow:none;background:canvas;border:1px solid buttonborder}.scrollsheet-dialog:is([data-scrollsheet-side=top],[data-scrollsheet-side=left],[data-scrollsheet-side=right]) :where(.scrollsheet-panel),.scrollsheet-fallback:is([data-scrollsheet-side=top],[data-scrollsheet-side=left],[data-scrollsheet-side=right]) :where(.scrollsheet-fallback-panel){box-shadow:none}:where(.scrollsheet-scrollbar){background:highlight}}.scrollsheet-dialog[data-scrollsheet-side=center] .scrollsheet-track{scroll-snap-type:none;box-sizing:border-box;padding:var(--scrollsheet-center-gutter,20px);padding-bottom:calc(var(--scrollsheet-center-gutter,20px) + var(--scrollsheet-keyboard,0px));place-items:center;display:grid;overflow:hidden}.scrollsheet-dialog[data-scrollsheet-side=center] .scrollsheet-canvas{display:contents}.scrollsheet-dialog[data-scrollsheet-side=center] .scrollsheet-canvas:after{content:none}.scrollsheet-dialog[data-scrollsheet-side=center] .scrollsheet-panel{width:auto;height:auto;max-inline-size:var(--scrollsheet-center-max-inline,min(560px, 100%));max-block-size:var(--scrollsheet-center-max-block,100%);border-radius:var(--scrollsheet-radius,16px);padding-bottom:0;position:static;inset:auto;overflow:auto}.scrollsheet-dialog[data-scrollsheet-side=center] .scrollsheet-handle{display:none}.scrollsheet-dialog[data-scrollsheet-side=center]:is([data-scrollsheet-state=pre],[data-scrollsheet-state=closing]) .scrollsheet-panel{opacity:0;transform:scale(.95)}.scrollsheet-handle:before{content:"";width:max(100%,44px);height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:where(.scrollsheet-handle){background:var(--scrollsheet-handle,#0003);cursor:grab;width:44px;height:5px;box-shadow:0 0 0 2px transparent,0 0 0 calc(2px + var(--scrollsheet-focus-ring-width,2px)) transparent;transition:transform .18s var(--scrollsheet-ease),background .18s ease,box-shadow .15s ease;border:none;border-radius:999px;outline:none;margin:8px auto;padding:0;display:block;position:relative}:where(.scrollsheet-handle:hover){background:var(--scrollsheet-handle-hover,#00000052)}:where(.scrollsheet-handle:active){cursor:grabbing;transform:scaleX(1.3)}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-handle){background:var(--scrollsheet-handle,#ffffff52)}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-handle:hover){background:var(--scrollsheet-handle-hover,#ffffff75)}@media (prefers-color-scheme:dark){:where([data-scrollsheet-theme=system]) :where(.scrollsheet-handle){background:var(--scrollsheet-handle,#ffffff52)}:where([data-scrollsheet-theme=system]) :where(.scrollsheet-handle:hover){background:var(--scrollsheet-handle-hover,#ffffff75)}}:where(.scrollsheet-handle[data-scrollsheet-handle-variant=floating]){z-index:1;margin:0;position:absolute;top:8px;left:50%;translate:-50%}:where(.scrollsheet-canvas>.scrollsheet-handle[data-scrollsheet-handle-variant=outside]){left:50%;bottom:calc(var(--scrollsheet-ib,0px) + var(--scrollsheet-keyboard,0px) + var(--scrollsheet-kb-hang,0px) + var(--scrollsheet-max-detent,0px) + 10px);background:var(--scrollsheet-handle,#fffc);margin:0;position:absolute;translate:-50%}.scrollsheet-dialog:not([data-scrollsheet-state=open]) .scrollsheet-canvas>.scrollsheet-handle[data-scrollsheet-handle-variant=outside]{opacity:0;transition:opacity .12s}.scrollsheet-dialog[data-scrollsheet-modal=false] .scrollsheet-handle[data-scrollsheet-handle-variant=outside]{pointer-events:auto;touch-action:none}:where(.scrollsheet-close){top:12px;z-index:1;background:var(--scrollsheet-close-bg,#0000000f);width:28px;height:28px;color:var(--scrollsheet-close-color,#0000008c);cursor:pointer;box-shadow:0 0 0 2px transparent,0 0 0 calc(2px + var(--scrollsheet-focus-ring-width,2px)) transparent;border:none;border-radius:999px;outline:none;place-items:center;padding:0;transition:background .15s,color .15s,box-shadow .15s;display:grid;position:absolute;inset-inline-end:12px}.scrollsheet-close:before{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:where(.scrollsheet-close:hover){background:var(--scrollsheet-close-bg-hover,#0000001a);color:var(--scrollsheet-close-color-hover,#000000bf)}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-close){background:var(--scrollsheet-close-bg,#ffffff17);color:var(--scrollsheet-close-color,#ffffff9e)}:where([data-scrollsheet-theme=dark]) :where(.scrollsheet-close:hover){background:var(--scrollsheet-close-bg-hover,#ffffff24);color:var(--scrollsheet-close-color-hover,#ffffffd9)}@media (prefers-color-scheme:dark){:where([data-scrollsheet-theme=system]) :where(.scrollsheet-close){background:var(--scrollsheet-close-bg,#ffffff17);color:var(--scrollsheet-close-color,#ffffff9e)}:where([data-scrollsheet-theme=system]) :where(.scrollsheet-close:hover){background:var(--scrollsheet-close-bg-hover,#ffffff24);color:var(--scrollsheet-close-color-hover,#ffffffd9)}}:where(.scrollsheet-close:focus-visible),:where(.scrollsheet-handle:focus-visible){box-shadow:0 0 0 2px transparent,0 0 0 calc(2px + var(--scrollsheet-focus-ring-width,2px)) var(--scrollsheet-focus-ring,#6366f199);outline:none}.scrollsheet-dialog[data-scrollsheet-side=left] .scrollsheet-handle:before,.scrollsheet-dialog[data-scrollsheet-side=right] .scrollsheet-handle:before{width:44px;height:max(100%,44px)}.scrollsheet-dialog[data-scrollsheet-side=left] :where(.scrollsheet-handle),.scrollsheet-dialog[data-scrollsheet-side=right] :where(.scrollsheet-handle){width:5px;height:44px;margin:auto 8px}.scrollsheet-dialog[data-scrollsheet-side=left] :where(.scrollsheet-handle:active),.scrollsheet-dialog[data-scrollsheet-side=right] :where(.scrollsheet-handle:active){transform:scaleY(1.3)}@media (forced-colors:active){:where(.scrollsheet-handle){box-shadow:none;background:buttonborder}:where(.scrollsheet-handle:focus-visible){box-shadow:none;outline:2px solid highlight}:where(.scrollsheet-close){color:buttontext;box-shadow:none;background:canvas;border:1px solid buttonborder}:where(.scrollsheet-close:focus-visible){box-shadow:none;outline:2px solid highlight}}.taskly-dialog{--scrollsheet-bg:var(--surface);--scrollsheet-radius:28px;--scrollsheet-backdrop:rgba(8,10,18,.54);--scrollsheet-handle:color-mix(in srgb,var(--muted) 55%,var(--surface));--scrollsheet-shadow:var(--shadow-lg);--scrollsheet-center-max-inline:var(--dialog-width);--scrollsheet-center-max-block: calc(100dvh - 64px) ;color:var(--text)}.taskly-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:24px 28px 16px}.taskly-dialog-header h2{margin:0;font-size:1.35rem;font-weight:760;letter-spacing:-.035em}.taskly-dialog-close{position:static;width:44px;height:44px;flex:none;border:0;border-radius:12px;background:var(--surface-muted);color:var(--muted);cursor:pointer}.taskly-dialog-content{flex:1;min-height:0;overflow-y:auto;padding:4px 28px 30px;scroll-padding-block:24px;scrollbar-width:thin}.taskly-dialog .input{min-height:48px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);padding:12px 14px;font-size:16px}.taskly-dialog .btn{min-height:44px;padding-inline:16px;border-radius:13px}.taskly-dialog .btn.primary{background:var(--accent-blue);border-color:var(--accent-blue);color:var(--page)}[data-scrollsheet-side=center] .taskly-dialog{width:min(var(--dialog-width),calc(100vw - 40px))}@media (min-width:701px){html:has(.scrollsheet-dialog[open] .desktop-sheet-panel){overflow:hidden}.scrollsheet-dialog[data-scrollsheet-side=center] .taskly-dialog--lesson{width:min(var(--dialog-width),calc(100vw - 40px))}.taskly-dialog--lesson .taskly-dialog-header,.taskly-dialog--lesson .taskly-dialog-content{padding-inline:40px}}@media (max-width:700px){.taskly-dialog{--scrollsheet-radius:28px;--scrollsheet-safe-area:env(safe-area-inset-bottom,0px)}.taskly-dialog-header{padding:12px 24px 20px}.taskly-dialog-header h2{font-size:1.4rem}.taskly-dialog-content{padding:4px 24px calc(32px + env(safe-area-inset-bottom,0px))}.taskly-dialog .scrollsheet-handle{height:5px;min-height:5px;margin:14px auto 8px;flex:none}.taskly-dialog--profile .page-heading{margin-bottom:20px}.taskly-dialog--profile .settings-group{padding:20px 0;gap:12px}.scrollsheet-dialog[data-scrollsheet-state=closing]{pointer-events:none;touch-action:none}}@media (min-width:701px){.scrollsheet-dialog:has(.desktop-sheet-panel){--scrollsheet-backdrop:rgba(8,10,18,.62);--scrollsheet-dur:.32s;--scrollsheet-ease:cubic-bezier(.22,1,.36,1)}.scrollsheet-dialog:has(.desktop-sheet-panel) .scrollsheet-track{overflow:hidden}.desktop-sheet-panel .scrollsheet-handle{display:none}.scrollsheet-dialog:has(.desktop-sheet-panel),.desktop-sheet-panel{border:0}.desktop-sheet-grip{position:absolute;inset:50% auto auto 0;transform:translateY(-50%);display:grid;place-items:center;width:24px;height:88px;padding:0;border:0;border-radius:0 12px 12px 0;background:transparent;cursor:w-resize;z-index:2}.desktop-sheet-grip span{width:4px;height:42px;border-radius:4px;background:var(--muted);opacity:.55;transition:height .15s ease,opacity .15s ease,background .15s ease}.desktop-sheet-grip:hover,.desktop-sheet-grip:focus-visible{background:var(--surface-muted);outline:none}.desktop-sheet-grip:hover span,.desktop-sheet-grip:focus-visible span{height:54px;background:var(--accent-blue);opacity:1}.scrollsheet-dialog[data-scrollsheet-side=bottom] .desktop-sheet-panel{left:0;right:0;bottom:24px;margin-inline:auto;width:min(var(--desktop-sheet-width),calc(100% - 48px));max-height:calc(100dvh - 64px);border-radius:28px;--scrollsheet-inset-bottom:0px}.scrollsheet-dialog[data-scrollsheet-side=bottom] .scrollsheet-canvas:after{display:none}.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=pre] .desktop-sheet-panel,.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=closing] .desktop-sheet-panel{opacity:0}.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=opening] .desktop-sheet-panel,.scrollsheet-dialog[data-scrollsheet-side=bottom][data-scrollsheet-state=open] .desktop-sheet-panel{opacity:1}.scrollsheet-dialog[data-scrollsheet-side=right] .desktop-sheet-panel{top:0;bottom:0;right:0;width:min(var(--desktop-sheet-width),calc(100vw - 40px));max-width:calc(100vw - 40px);max-height:100dvh;border-radius:28px 0 0 28px;--scrollsheet-inset-y:0px;--scrollsheet-inset-right:0px}.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-state=pre] .desktop-sheet-panel,.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-state=closing] .desktop-sheet-panel{opacity:0}.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-state=opening] .desktop-sheet-panel,.scrollsheet-dialog[data-scrollsheet-side=right][data-scrollsheet-state=open] .desktop-sheet-panel{opacity:1}.scrollsheet-dialog:has(.desktop-sheet-panel) .scrollsheet-panel{transition:transform var(--scrollsheet-dur) var(--scrollsheet-ease),opacity .22s ease;box-shadow:0 24px 90px #0005}}@media (min-width:701px) and (prefers-reduced-motion:reduce){.scrollsheet-dialog:has(.desktop-sheet-panel){--scrollsheet-dur:1ms}.scrollsheet-dialog:has(.desktop-sheet-panel) .scrollsheet-panel{transition:none}}@media (min-width:701px){.taskly-dialog--auth.desktop-sheet-panel,.taskly-dialog--auth .form-grid,.taskly-dialog--auth .input{border:0}}@media (min-width:701px) and (pointer:coarse){.scrollsheet-dialog[data-scrollsheet-side=bottom] .taskly-dialog--lesson .desktop-sheet-grip{display:none}}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}.brand-mark{--brand-gradient-start:#7560c7;--brand-gradient-end:#5541ad;display:block;width:40px;height:40px;flex:none}:root[data-theme=dark] .brand-mark{--brand-gradient-start:#cdc7fb;--brand-gradient-end:#b7affe}.app-header .brand{gap:2px}.brand .brand-copy strong{font-family:Manrope,var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.045em}.brand-mark.maintenance-brand{position:absolute;right:0;top:-28px;width:56px;height:56px}@media (max-width:1020px){.brand .brand-copy{display:none}}.brand-wordmark{display:block;width:164px;flex:none;line-height:0}.brand-wordmark img{display:block;width:100%;height:auto}.brand-wordmark .wordmark-dark{display:none}:root[data-theme=dark] .brand-wordmark .wordmark-light{display:none}:root[data-theme=dark] .brand-wordmark .wordmark-dark{display:block}.brand .brand-mobile-mark{display:none}@media (min-width:701px) and (max-width:1020px){.brand .brand-wordmark{display:none}.brand .brand-mobile-mark{display:block}}@media (max-width:700px){.brand .brand-wordmark{display:none}.brand .brand-mobile-mark{display:block}}.install-guide{display:grid;gap:16px;padding-bottom:8px}.install-guide-heading{display:flex;align-items:flex-start;gap:14px}.install-guide-heading>.brand-mark{flex:none;width:48px;height:48px}.install-guide h3{margin:0 0 7px;font-size:1.1rem;line-height:1.3}.install-guide h4{margin:6px 0 0;font-size:.85rem}.install-guide p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.5}.install-guide ol{margin:0;padding-left:24px;font-size:.9rem;line-height:1.6}.install-guide li{padding:4px 0 10px 5px}.install-guide li::marker{color:var(--accent-blue);font-weight:750}.install-guide .install-guide-note{padding-top:16px;border-top:1px solid var(--line)}.install-guide .btn.primary{background:var(--accent-blue);color:var(--page);border:0;min-height:46px}.agenda-lesson,.agenda-lesson *,.quick-preview-card,.quick-preview-card *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.agenda-lesson[data-preview-press=true]{animation:lesson-press .48s ease-out forwards}.quick-preview-layer{position:fixed;inset:0;z-index:1600}.quick-preview-dismiss{position:absolute;inset:0;width:100%;height:100%;border:0;background:#11101918;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quick-preview-card{position:fixed;max-height:calc(100dvh - 48px);overflow:auto;border:0;border-radius:24px;padding:20px;background:var(--surface);color:var(--text);box-shadow:0 24px 80px #0005;transform-origin:center;outline:none}.quick-preview-card>header{display:flex;justify-content:flex-end;align-items:center;color:var(--muted);font-size:.75rem}.quick-preview-card>header button{width:32px;height:32px;border:0;border-radius:50%;background:var(--surface-muted);color:var(--text);font-size:22px;cursor:pointer}.quick-preview-card .lesson-detail h2{font-size:1.7rem;margin-block:12px 20px}.quick-preview-card .lesson-detail-facts{grid-template-columns:1fr 1fr;gap:16px}@keyframes lesson-press{to{transform:scale(1.035);box-shadow:0 10px 25px #0003}}@media (prefers-reduced-motion: reduce){.agenda-lesson[data-preview-press=true],.quick-preview-card{animation:none}}.week-planner{min-width:0}.week-planner button{font:inherit;cursor:pointer}.agenda-empty{padding:22px 0;color:var(--muted);font-size:.85rem}.agenda-day-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 0}.agenda-day-heading h2{margin:0;font-size:1.15rem;font-weight:730}.agenda-day-heading time{color:var(--muted);font-size:.8rem}.day-agenda{max-width:780px;margin:0 auto}.agenda-list{list-style:none;margin:0;padding:0;display:grid;gap:15px}.agenda-row{display:grid;grid-template-columns:55px 14px minmax(0,1fr);gap:12px;align-items:stretch}.agenda-time{padding-top:13px;display:flex;flex-direction:column;gap:3px;font-variant-numeric:tabular-nums}.agenda-time span{color:var(--muted);font-size:.7rem}.agenda-track{position:relative;display:flex;justify-content:center;padding-top:20px}.agenda-track:before{content:"";position:absolute;top:4px;bottom:-21px;width:1px;background:var(--line)}.agenda-track:after{content:"";position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:var(--dot-color);box-shadow:0 0 0 4px var(--page)}.agenda-list>li:last-child .agenda-track:before{bottom:55%}.agenda-break{display:flex;align-items:center;justify-content:center;gap:7px;margin:12px 0 18px 81px;color:var(--muted);font-size:.72rem}.agenda-break span:first-child{font-size:.82rem}.focus-wrap{margin:0 0 18px}.focus-label{display:block;margin:0 0 10px 81px;color:var(--accent-blue);font-size:.72rem;font-weight:750}.agenda-lesson{width:100%;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;padding:15px 18px;border:0;border-radius:22px;text-align:left;color:#242335;background:color-mix(in srgb,var(--lesson-color) 64%,#fff);box-shadow:inset 0 2px 2px #ffffff70,0 6px 14px #0000000e;transition:transform .15s ease,box-shadow .15s ease}.agenda-lesson:hover{transform:translateY(-2px);box-shadow:inset 0 2px 2px #ffffff70,0 10px 18px #00000020}.agenda-lesson:focus-visible{outline:3px solid var(--accent-blue);outline-offset:2px}.agenda-lesson.is-focus{min-height:120px;border-radius:28px;padding:20px 24px;box-shadow:inset 0 3px 3px #ffffff80,0 10px 22px #00000015}.agenda-lesson.is-focus .lesson-subject{font-size:1.3rem}.lesson-subject{font-size:1.01rem;font-weight:780;letter-spacing:-.025em;line-height:1.16;overflow-wrap:anywhere}.lesson-subject span{font-size:.78em;font-weight:650}.lesson-room{font-size:.82rem;font-weight:730}.lesson-teacher{font-size:.74rem;opacity:.72}.lesson-changes,.lesson-homework,.lesson-selected{margin-top:3px;font-size:.68rem;font-weight:700}.agenda-lesson.is-cancelled{background:var(--surface-muted);color:var(--muted)}.agenda-lesson.is-cancelled .lesson-subject{text-decoration:line-through}.agenda-lesson.is-personal{background:var(--surface);color:var(--text);border:1px dashed var(--lesson-color)}.agenda-lesson.is-selected-group{outline:3px solid var(--accent-blue)}.planner-day-nav{display:flex;align-items:center;gap:9px;max-width:780px;margin:14px auto}.planner-day-nav>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));flex:1;gap:7px}.planner-day-nav button{min-width:32px;min-height:44px;border:0;border-radius:18px;background:transparent;color:var(--muted)}.planner-day-nav>div button{display:grid;place-items:center;padding:8px 4px}.planner-day-nav span{font-size:.7rem}.planner-day-nav strong{font-size:.94rem}.planner-day-nav button.is-active{background:var(--ink);color:var(--page)}.planner-day-nav button.is-today:not(.is-active){color:var(--accent-blue)}.planner-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 15px}.planner-selection>div:first-child{display:grid;gap:3px}.planner-selection span{font-size:.75rem;color:var(--muted)}.planner-selection>div:last-child{display:flex;gap:8px}.planner-selection button{min-height:40px;padding:8px 14px;border:0;border-radius:13px;background:var(--surface-muted);color:var(--text)}.planner-selection button.is-primary{background:var(--accent-blue);color:#fff}.lesson-detail h2{margin:8px 0;font-size:1.6rem}.lesson-change{padding-left:12px;border-left:2px solid var(--warning)}.week-scroller{width:100%;overflow-x:auto;padding-bottom:12px}.timed-week{display:grid;grid-template-columns:44px repeat(5,minmax(0,1fr));gap:5px;min-width:710px}.week-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:4px;padding:10px 5px;color:var(--text)}.week-day-head strong{font-size:.77rem}.week-day-head time{font-size:.65rem;color:var(--muted)}.week-day-head.is-today strong{color:var(--accent-blue)}.week-time-axis{position:relative;font-variant-numeric:tabular-nums}.week-time-axis time{position:absolute;right:5px;transform:translateY(-50%);color:var(--muted);font-size:.65rem}.timed-day{position:relative;min-width:0}.time-guide{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--line) 48%,transparent);pointer-events:none}.timed-lesson{position:absolute;z-index:1;padding:2px;min-width:0;display:flex;flex-direction:column}.timed-lesson>time{position:absolute;z-index:2;top:8px;left:11px;color:#242335;font-size:.58rem;font-weight:720;font-variant-numeric:tabular-nums;white-space:nowrap}.agenda-lesson.is-compact{height:100%;padding:21px 8px 5px;gap:1px;border-radius:13px;overflow:hidden;box-shadow:inset 0 2px 2px #ffffff70,0 2px 5px #0000000a}.agenda-lesson.is-compact .lesson-subject{width:100%;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-lesson.is-compact .lesson-room{font-size:.68rem}.agenda-lesson.is-compact .lesson-teacher{font-size:.59rem}.agenda-lesson.is-compact .lesson-changes,.agenda-lesson.is-compact .lesson-homework,.agenda-lesson.is-compact .lesson-selected{font-size:.55rem}.now-line{position:absolute;left:-3px;right:0;height:2px;background:var(--accent-blue);z-index:3;pointer-events:none}.now-line:before{content:"";position:absolute;left:0;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent-blue)}@media (max-width:1050px){.timed-week{min-width:780px}.week-scroller{scrollbar-width:thin}.week-day-head{display:grid}}@media (max-width:700px){.agenda-row{grid-template-columns:46px 11px minmax(0,1fr);gap:9px}.agenda-break,.focus-label{margin-left:66px}.agenda-lesson{padding:14px 15px;border-radius:20px}.agenda-lesson.is-focus{padding:19px;border-radius:25px}.planner-day-nav{gap:2px}.planner-day-nav>div{gap:3px}.planner-day-nav>div button{padding-inline:2px}.timed-week{min-width:760px}}@media (prefers-reduced-motion:reduce){.agenda-lesson{transition:none}.agenda-lesson:hover{transform:none}}.timed-lesson>time{top:5px;left:9px;font-size:.56rem;line-height:1}.agenda-lesson.is-compact{justify-content:flex-start;padding:17px 7px 2px;gap:0}.agenda-lesson.is-compact .lesson-subject{font-size:.72rem;line-height:1.05;min-height:12px}.agenda-lesson.is-compact .lesson-room{font-size:.63rem;line-height:1.05;margin-top:2px}.agenda-lesson.is-compact .lesson-teacher,.agenda-lesson.is-compact .lesson-changes,.agenda-lesson.is-compact .lesson-homework,.agenda-lesson.is-compact .lesson-selected{display:none}@media (min-width:701px) and (max-width:1050px){.timed-week{min-width:660px}}.agenda-empty button{display:block;margin-top:12px;min-height:42px;padding:9px 15px;border:0;border-radius:14px;background:var(--accent-blue);color:#fff;font-weight:730}.agenda-lesson.is-compact .lesson-teacher{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;line-height:1.05;margin-top:2px}.week-scroller{width:100%;overflow:hidden;padding:0}.timed-week{grid-template-columns:44px repeat(5,minmax(0,1fr));gap:4px;min-width:0}.week-day-head{min-width:0}.week-day-head.is-today{border-radius:12px 12px 0 0;background:color-mix(in srgb,var(--accent-blue) 7%,transparent)}.week-day-head strong{overflow:hidden;text-overflow:ellipsis}.time-guide{border-top-color:color-mix(in srgb,var(--line) 28%,transparent)}.timed-day:has(.now-line){background:color-mix(in srgb,var(--accent-blue) 4%,transparent)}.agenda-lesson.is-compact{justify-content:center;padding:5px 8px;gap:2px;border-radius:14px}.agenda-lesson.is-compact .lesson-subject{font-size:.78rem;line-height:1.1}.agenda-lesson.is-compact .lesson-room,.agenda-lesson.is-compact .lesson-teacher{display:block;margin:0;font-size:.64rem;line-height:1.1;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-lesson.is-compact .lesson-teacher{font-size:.6rem}.agenda-lesson.is-focus{min-height:105px}.agenda-list{gap:10px}.agenda-break svg{flex:none}.is-selecting .agenda-lesson.is-unselected-group,.is-selecting .bundle-entry.is-unselected-group{background:var(--surface-muted);color:var(--muted);box-shadow:none;filter:saturate(.25)}.is-selecting .agenda-lesson.is-selected-group{outline:0;box-shadow:inset 0 0 0 2px var(--accent-blue)}.timed-bundle{position:absolute;z-index:1;left:2px;right:2px;min-width:0;padding:3px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(82px,100%),1fr));gap:3px;border-radius:14px;background:var(--surface-muted);overflow:hidden}.bundle-entry{min-width:0;min-height:0;padding:4px 6px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;border:0;border-radius:10px;text-align:left;color:#242335;background:color-mix(in srgb,var(--lesson-color) 58%,#fff)}.bundle-entry strong,.bundle-entry span{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bundle-entry strong{font-size:.67rem;line-height:1.1}.bundle-entry span{font-size:.57rem;opacity:.8}.bundle-entry.is-cancelled strong{text-decoration:line-through}.bundle-entry.is-selected-group{box-shadow:inset 0 0 0 2px var(--accent-blue)}.bundle-entry:focus-visible,.bundle-more:focus-visible{outline:2px solid var(--accent-blue);outline-offset:1px}.bundle-more{min-width:0;border:0;border-radius:9px;background:var(--surface);color:var(--accent-blue);font-size:.67rem;font-weight:760}.bundle-list{display:grid;gap:5px}.bundle-list button{width:100%;min-height:56px;padding:8px;display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:11px;align-items:center;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left}.bundle-list button:hover{background:var(--surface-muted)}.bundle-list-dot{width:9px;height:9px;border-radius:50%}.bundle-list button span:nth-child(2){min-width:0;display:grid;gap:3px}.bundle-list strong{font-size:.85rem}.bundle-list small{color:var(--muted);font-size:.7rem}.bundle-list b{color:var(--accent-blue)}.lesson-detail{padding:4px 8px 12px}.lesson-detail-date{color:var(--muted);font-size:.76rem;text-transform:capitalize}.lesson-detail h2{margin:8px 0 22px;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:790;letter-spacing:-.045em;line-height:1.1}.lesson-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding-top:19px;border-top:3px solid var(--lesson-color)}.lesson-detail-facts div{min-width:0;display:grid;gap:4px}.lesson-detail-facts span{color:var(--muted);font-size:.69rem}.lesson-detail-facts strong{font-size:.93rem;overflow-wrap:anywhere}.lesson-change{margin:20px 0 0;padding:11px 14px;border:0;border-radius:12px;background:var(--warning-soft);color:var(--warning-text);font-size:.77rem;line-height:1.5}.lesson-detail-description{margin:18px 0 0;font-size:.84rem;line-height:1.5}.overlay--lesson .modal-header .icon-btn{width:42px;min-width:42px;padding:0;border:0;background:transparent;box-shadow:none;color:var(--muted)}.overlay--lesson .modal-header .icon-btn:hover{color:var(--text);background:var(--surface-muted)}@media (max-width:1050px){.timed-week{min-width:0}.bundle-entry span{display:none}.week-day-head{display:grid;gap:2px}}.timed-bundle{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.timed-day.is-today{background:color-mix(in srgb,var(--accent-blue) 4%,transparent)}.week-pair-nav{margin:6px auto 10px}.week-pair-nav button.is-in-pair:not(.is-active){color:var(--accent-blue)}.week-planner.is-week .bundle-entry span{display:block}.agenda-pages{max-width:780px;margin:14px auto 0;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:.71rem;font-variant-numeric:tabular-nums}.agenda-pages button{min-height:40px;padding:7px 10px;display:flex;align-items:center;gap:6px;border:0;border-radius:12px;background:var(--surface-muted);color:var(--text)}.agenda-pages button:disabled{opacity:.35;cursor:default}@media (max-width:700px){.week-planner.is-day .agenda-list{gap:7px}.week-planner.is-day .agenda-lesson:not(.is-focus){min-height:67px;padding:10px 14px}.week-planner.is-day .agenda-lesson.is-focus{min-height:92px;padding:14px 18px}.week-planner.is-day .agenda-lesson.is-focus .lesson-subject{font-size:1.15rem}.week-planner.is-day .agenda-break{margin-top:6px;margin-bottom:8px}.week-planner.is-day .focus-wrap{margin-bottom:10px}}@media (max-width:700px){.week-planner.is-week .timed-week{gap:5px}.week-planner.is-week .agenda-lesson.is-compact{padding:5px 7px;border-radius:12px}.week-planner.is-week .agenda-lesson.is-compact .lesson-subject{font-size:.72rem}.week-planner.is-week .agenda-lesson.is-compact .lesson-room,.week-planner.is-week .agenda-lesson.is-compact .lesson-teacher{font-size:.6rem}.week-planner.is-week .bundle-entry{padding:3px 5px}.week-planner.is-week .bundle-entry strong{font-size:.62rem}.week-planner.is-week .bundle-more{font-size:.64rem}}@media (max-width:700px){.timed-week{grid-template-columns:34px repeat(5,minmax(0,1fr));gap:2px;min-width:0}.week-time-axis time{right:1px;font-size:.52rem}.week-day-head{padding:7px 2px}.week-day-head strong{font-size:.58rem}.week-day-head time{font-size:.54rem}.agenda-lesson.is-compact{padding:4px 3px;border-radius:9px;gap:1px}.agenda-lesson.is-compact .lesson-subject{font-size:.58rem}.agenda-lesson.is-compact .lesson-room,.agenda-lesson.is-compact .lesson-teacher{font-size:.52rem}.timed-bundle{left:1px;right:1px;padding:2px;gap:1px;border-radius:9px}.bundle-entry{padding:2px 3px;border-radius:6px}.bundle-entry strong,.bundle-more{font-size:.55rem}}.day-agenda,.planner-day-nav,.agenda-pages{max-width:1080px}.agenda-list{gap:14px}.agenda-row{grid-template-columns:63px 16px minmax(0,1fr);gap:12px}.agenda-time{padding-top:17px}.agenda-time strong{font-size:.88rem}.agenda-time span{font-size:.69rem}.agenda-track{padding-top:23px}.agenda-track:before{background:color-mix(in srgb,var(--line) 52%,transparent)}.agenda-lesson{position:relative;overflow:hidden;min-height:94px;justify-content:space-between;padding:17px 20px;border:1px solid color-mix(in srgb,var(--lesson-color) 38%,transparent);border-radius:26px;background:color-mix(in srgb,var(--lesson-color) 53%,#fff);box-shadow:inset 0 2px 1px #ffffff9c,inset 0 -1px #0000000b,0 3px 8px #00000009}.agenda-lesson:hover{transform:none;box-shadow:inset 0 2px 1px #ffffff9c,0 4px 12px #00000012}.agenda-lesson.is-focus{border-radius:27px;box-shadow:inset 0 2px 1px #ffffff9c,0 0 0 2px color-mix(in srgb,var(--lesson-color) 26%,transparent)}.agenda-lesson .subject-motif{position:absolute;right:8px;bottom:-18px;width:94px;height:94px;opacity:.105;pointer-events:none}.agenda-lesson .lesson-subject,.agenda-lesson .lesson-room,.agenda-lesson .lesson-teacher{position:relative;z-index:1}.agenda-lesson .lesson-subject{font-size:1.05rem}.agenda-lesson .lesson-room{font-size:.75rem}.agenda-lesson .lesson-teacher{align-self:flex-end;display:inline-flex;align-items:center;gap:5px;font-size:.69rem;opacity:.76}.teacher-name svg{width:15px;height:15px;flex:none;padding:2px;border-radius:5px;background:#fff5}.teacher-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-lesson.is-compact{min-height:0;justify-content:flex-start;padding:8px 9px;border-radius:15px}.agenda-lesson.is-compact .subject-motif{width:58px;height:58px;right:-7px;bottom:-12px}.agenda-lesson.is-compact .lesson-subject{font-size:clamp(.67rem,.8vw,.83rem);line-height:1.12;white-space:normal;overflow-wrap:anywhere}.agenda-lesson.is-compact .lesson-room{margin-top:auto;font-size:.66rem}.agenda-lesson.is-compact .lesson-teacher{align-self:flex-start;font-size:.6rem;max-width:100%}.timed-week{grid-template-columns:38px repeat(5,minmax(0,1fr));gap:3px}.time-guide{left:0;right:auto;width:10px;border-top-color:color-mix(in srgb,var(--line) 45%,transparent)}.timed-day.is-today,.week-day-head.is-today{background:color-mix(in srgb,var(--accent-blue) 5%,transparent)}.timed-bundle{display:flex;flex-direction:column;gap:2px;padding:2px;border-radius:15px;background:color-mix(in srgb,var(--surface-muted) 78%,transparent);overflow:hidden}.bundle-entry{position:relative;flex:1 1 0;min-height:0;width:100%;padding:2px 7px;border:1px solid color-mix(in srgb,var(--lesson-color) 34%,transparent);border-radius:10px;background:color-mix(in srgb,var(--lesson-color) 50%,#fff);box-shadow:inset 0 1px 1px #ffffff9c;overflow:hidden}.bundle-entry .subject-motif{position:absolute;right:-5px;bottom:-9px;width:42px;height:42px;opacity:.1}.bundle-entry strong{position:relative;z-index:1;width:100%;font-size:.68rem;line-height:1.1;white-space:normal;overflow-wrap:anywhere}.bundle-entry .teacher-name{position:relative;z-index:1;display:inline-flex;align-items:center;gap:3px;width:100%;font-size:.54rem;opacity:.75}.bundle-entry .teacher-name svg{width:11px;height:11px;padding:1px}.bundle-entry.is-cancelled{background:var(--surface-muted);color:var(--muted)}.is-selecting .agenda-lesson.is-unselected-group,.is-selecting .bundle-entry.is-unselected-group{background:var(--surface-muted);color:var(--muted);filter:saturate(.2)}@media (max-width:700px){.agenda-row{grid-template-columns:47px 12px minmax(0,1fr);gap:8px}.agenda-lesson{min-height:80px;padding:13px 15px;border-radius:22px}.week-planner.is-day .agenda-lesson:not(.is-focus){min-height:80px}.week-planner.is-day .agenda-lesson.is-focus{min-height:95px}.agenda-lesson .subject-motif{width:76px;height:76px}.timed-week{grid-template-columns:31px repeat(5,minmax(0,1fr));gap:2px}.bundle-entry{padding:1px 3px;border-radius:7px}.bundle-entry strong{font-size:.55rem}.bundle-entry .teacher-name{display:none}.agenda-lesson.is-compact{padding:4px;border-radius:10px}.agenda-lesson.is-compact .lesson-subject{font-size:.59rem}.agenda-lesson.is-compact .lesson-teacher{display:none}}.week-scroller.is-dense{max-height:calc(100dvh - 104px);overflow-y:auto;scrollbar-width:thin}.week-scroller.is-dense .timed-bundle{min-height:0}.mobile-course-list{max-height:calc(100dvh - 195px);overflow-y:auto;padding:2px 2px 20px;scrollbar-width:thin}.mobile-course-list h2{position:sticky;top:0;z-index:3;display:flex;align-items:baseline;gap:8px;margin:0;padding:10px 0;background:var(--page);font-size:1rem}.mobile-course-list h2 span{font-size:.72rem;color:var(--muted);font-weight:500}.mobile-course-group{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;padding:8px 0 13px;border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.mobile-course-group>time{padding-top:4px;font-size:.75rem;font-weight:770;font-variant-numeric:tabular-nums}.mobile-course-group>time small{display:block;margin-top:3px;color:var(--muted);font-size:.61rem;font-weight:500}.mobile-course-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.mobile-course-group .bundle-entry{min-height:44px;padding:7px 9px;border-radius:13px}.mobile-course-group .bundle-entry strong{font-size:.7rem;line-height:1.12}.mobile-course-group .bundle-entry .teacher-name{display:inline-flex;font-size:.59rem}.mobile-course-group .bundle-entry .subject-motif{width:50px;height:50px}@media (min-width:1051px){.mobile-course-list{display:none}}@media (max-width:700px){.mobile-course-list{max-height:calc(100dvh - 173px)}.mobile-course-group{grid-template-columns:44px minmax(0,1fr);gap:7px}.mobile-course-group>div{gap:4px}.mobile-course-group .bundle-entry{min-height:41px;padding:5px 7px}.mobile-course-group .bundle-entry strong{font-size:.64rem}.mobile-course-group .bundle-entry .teacher-name{font-size:.54rem}}.week-day-head{padding:0}.week-day-head button{width:100%;min-height:40px;display:flex;align-items:baseline;justify-content:space-between;gap:4px;padding:9px 7px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.week-day-head button:hover,.week-day-head button:focus-visible{background:color-mix(in srgb,var(--accent-blue) 12%,var(--surface-muted));color:var(--accent-blue);outline:none}.week-day-head button:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-blue)}.week-day-head button strong{font-size:.78rem}.week-day-head button time{font-size:.65rem;color:var(--muted)}.agenda-day-heading{margin:12px 0 17px}.agenda-day-heading button{width:100%;display:flex;align-items:baseline;gap:12px;padding:8px 4px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.agenda-day-heading button strong{font-size:1.2rem}.agenda-day-heading button time{font-size:.8rem;color:var(--muted)}.agenda-day-heading button span{margin-left:auto;font-size:.8rem;color:var(--muted);transform:rotate(225deg)}.agenda-day-heading button:hover,.agenda-day-heading button:focus-visible{background:var(--surface-muted);outline:none}.agenda-day-heading button:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-blue)}.timed-lesson{container-type:size}.agenda-lesson.is-compact.is-parallel{height:100%;align-items:center;justify-content:center;padding:2px 0;border-radius:9px}.agenda-lesson.is-compact.is-parallel .subject-motif{display:none}.agenda-lesson.is-compact.is-parallel .lesson-subject{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;font-size:clamp(.48rem,.64vw,.65rem);line-height:1;text-align:center;white-space:nowrap;overflow:hidden;overflow-wrap:normal}.agenda-lesson.is-compact.is-parallel .lesson-subject small{font-size:.78em;font-weight:700;letter-spacing:.02em}.agenda-lesson.is-compact.is-parallel.is-cancelled .lesson-subject{text-decoration:line-through;text-decoration-thickness:1.5px}.agenda-lesson.is-compact.is-parallel.is-cancelled{background:var(--surface-muted);color:var(--muted);border-color:var(--line-strong)}.agenda-lesson.is-cancelled,.agenda-lesson.is-focus.is-cancelled{background:var(--surface-muted);color:var(--muted);border-color:var(--line-strong);box-shadow:inset 0 1px #ffffff1a}.agenda-lesson.is-cancelled .lesson-subject{text-decoration:line-through;text-decoration-thickness:1.5px}@container (min-height: 120px){.agenda-lesson.is-compact:not(.is-parallel){justify-content:space-between;padding:14px 16px}.agenda-lesson.is-compact:not(.is-parallel) .lesson-subject{font-size:1.05rem;white-space:normal}.agenda-lesson.is-compact:not(.is-parallel) .lesson-room{margin-top:auto;font-size:.73rem}.agenda-lesson.is-compact:not(.is-parallel) .lesson-teacher{align-self:flex-end;font-size:.68rem}.agenda-lesson.is-compact:not(.is-parallel) .subject-motif{width:clamp(100px,80cqh,180px);height:clamp(100px,80cqh,180px);right:0;bottom:-24px;opacity:.11}}::view-transition-group(*){animation-duration:.26s;animation-timing-function:cubic-bezier(.2,.75,.25,1)}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:0ms}}@media (max-width:700px){.week-day-head button{min-height:37px;padding:7px 8px}.week-day-head button strong{font-size:.73rem}.week-day-head button time{font-size:.62rem}.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:clamp(.55rem,2.2vw,.7rem)}.agenda-day-heading button strong{font-size:1.1rem}}.week-scroller{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.day-agenda{max-height:calc(100dvh - 160px);overflow-y:auto;padding-right:5px;scrollbar-width:thin}@media (max-width:700px){.day-agenda{max-height:calc(100dvh - 195px)}}.agenda-lesson.is-compact:not(.is-parallel){justify-content:center;padding:5px 9px}.agenda-lesson.is-compact:not(.is-parallel) .lesson-room,.agenda-lesson.is-compact:not(.is-parallel) .lesson-teacher{display:none}@container (min-height: 70px){.agenda-lesson.is-compact:not(.is-parallel){justify-content:space-between;padding:9px 11px}.agenda-lesson.is-compact:not(.is-parallel) .lesson-room{display:block;margin-top:auto}}@container (min-height: 88px){.agenda-lesson.is-compact:not(.is-parallel){padding:12px 15px}.agenda-lesson.is-compact:not(.is-parallel) .lesson-subject{font-size:1rem;white-space:normal}.agenda-lesson.is-compact:not(.is-parallel) .lesson-room{font-size:.7rem}.agenda-lesson.is-compact:not(.is-parallel) .lesson-teacher{display:inline-flex;align-self:flex-end;font-size:.64rem}.agenda-lesson.is-compact:not(.is-parallel) .subject-motif{width:clamp(100px,95cqh,155px);height:clamp(100px,95cqh,155px);right:-2px;bottom:-19px;opacity:.12}}.week-planner,.week-scroller,.timed-week,.timed-day,.timed-lesson{min-width:0;max-width:100%}.week-scroller{overflow-x:hidden}.timed-week{width:100%;min-width:0}.week-planner.is-day .week-day-head button{justify-content:flex-start;gap:12px}.week-planner.is-day .week-day-head button strong{font-size:1rem}.week-planner.is-day .week-day-head button time{font-size:.78rem}.week-planner.is-day .agenda-lesson.is-parallel .lesson-subject{font-size:clamp(.68rem,1.5vw,.9rem)}.agenda-lesson .subject-motif{opacity:.045}@container (min-height: 88px){.agenda-lesson.is-compact:not(.is-parallel) .subject-motif{opacity:.05}}@container (min-height: 120px){.agenda-lesson.is-compact:not(.is-parallel) .subject-motif{opacity:.05}}.agenda-lesson.is-cancelled,.agenda-lesson.is-focus.is-cancelled,.agenda-lesson.is-compact.is-parallel.is-cancelled{border-color:transparent;box-shadow:none}.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:clamp(.58rem,.85vw,.77rem);font-weight:800;text-overflow:ellipsis}.agenda-lesson.is-compact.is-parallel .lesson-subject small{font-size:.7em;font-weight:570;opacity:.66}.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:clamp(.38rem,24cqw,.77rem)}.week-planner.is-day .agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:clamp(.68rem,24cqw,.9rem)}.overlay--lesson .modal-panel{view-transition-name:selected-lesson}::view-transition-group(selected-lesson){animation-duration:.19s;animation-timing-function:cubic-bezier(.2,.75,.25,1)}@media (prefers-reduced-motion:reduce){::view-transition-group(selected-lesson){animation-duration:0ms}}.agenda-lesson.is-compact{position:relative;background:color-mix(in srgb,var(--lesson-color) 80%,#fff);color:#202235}.agenda-lesson.is-compact.is-personal{background:color-mix(in srgb,var(--lesson-color) 72%,#fff);border:0;color:#202235}.agenda-lesson.is-compact .lesson-subject,.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:.8rem;line-height:1.12;min-height:0;letter-spacing:-.02em}.agenda-lesson.is-compact .lesson-subject span{font-size:1em;font-weight:inherit}.agenda-lesson.is-compact .lesson-subject-short{display:block}.agenda-lesson.is-compact .lesson-subject-full,.agenda-lesson.is-compact .lesson-teacher,.agenda-lesson.is-compact .lesson-room{display:none}.agenda-lesson.is-compact .lesson-teacher-short{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:680;opacity:.76}.agenda-lesson.is-compact.is-parallel{align-items:flex-start;justify-content:center;padding:5px 8px}.agenda-lesson.is-compact.is-parallel .lesson-subject{display:block;text-align:left;white-space:nowrap}.lesson-homework-dot{position:absolute;top:6px;right:6px;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#df486a;box-shadow:0 0 0 1px #9b2440}.agenda-lesson.is-compact:has(.lesson-homework-dot){padding-right:16px}@container (min-width: 155px) and (min-height: 72px){.agenda-lesson.is-compact .lesson-subject-short{display:none}.agenda-lesson.is-compact .lesson-subject-full{display:block;white-space:normal}.agenda-lesson.is-compact .lesson-teacher-short{display:none}.agenda-lesson.is-compact .lesson-teacher{display:inline-flex;align-self:auto;width:100%;font-size:.68rem;line-height:1.15;white-space:normal}.agenda-lesson.is-compact .lesson-room{display:block;width:100%;font-size:.67rem;line-height:1.15;white-space:normal}.agenda-lesson.is-compact.is-parallel{align-items:flex-start;justify-content:center;padding:9px 12px}.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:.9rem;text-align:left;white-space:normal}}.timed-day.is-today,.timed-day:has(.now-line),.week-day-head.is-today{background:transparent}.week-day-head.is-today strong{color:var(--accent-blue);font-weight:820}.week-day-head.is-tomorrow strong{color:color-mix(in srgb,var(--accent-blue) 58%,var(--text));font-weight:760}.week-day-head .day-relative{align-self:center;padding:2px 5px;border-radius:5px;background:color-mix(in srgb,var(--accent-blue) 13%,transparent);color:var(--accent-blue);font-size:.58rem;font-weight:780}.week-day-head.is-tomorrow .day-relative{background:color-mix(in srgb,var(--accent-blue) 8%,transparent);color:var(--muted)}.lesson-detail-homework{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.lesson-detail-homework h3{margin:0 0 9px;font-size:.8rem}.lesson-detail-homework p{margin:0;padding:8px 0;border-bottom:1px solid var(--line);font-size:.8rem}.overlay--lesson{view-transition-name:lesson-backdrop}::view-transition-new(lesson-backdrop){animation:lesson-backdrop-in .18s ease-out both}::view-transition-old(lesson-backdrop){animation:lesson-backdrop-out .14s ease-in both}::view-transition-group(selected-lesson){animation-duration:.18s}@keyframes lesson-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes lesson-backdrop-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-new(lesson-backdrop),::view-transition-old(lesson-backdrop){animation-duration:0ms}}.week-grid-lines{position:relative;z-index:0;pointer-events:none}.week-scroller.desktop-week-scroller{overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}.week-grid-lines span{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--line) 52%,transparent)}.timed-day{z-index:1}.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-subject-full{font-size:1em}@container (min-width: 130px) and (min-height: 76px){.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-subject-short{display:none}.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-subject-full{display:block;white-space:normal}.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-teacher-short{display:none}.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-teacher{display:inline-flex;align-self:auto;width:100%;font-size:.7rem;line-height:1.15}.week-planner.is-own-courses .agenda-lesson.is-compact .lesson-room{display:block;width:100%;font-size:.67rem}}::view-transition-group(root){z-index:0}::view-transition-group(lesson-backdrop){z-index:1}::view-transition-group(selected-lesson){z-index:2}::view-transition-old(selected-lesson),::view-transition-new(selected-lesson){z-index:2}@media (max-width:700px){.week-planner{height:100%;min-height:0}.week-planner .week-scroller.mobile-week-overview,.week-planner .week-scroller.mobile-day-agenda{width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:0 1px 12px}.mobile-week-overview{display:grid;align-content:start}.mobile-week-day{width:100%;min-height:104px;display:grid;grid-template-columns:77px minmax(0,1fr) 34px;align-items:start;gap:10px;padding:14px 4px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.mobile-week-day:first-child{border-top:0}.mobile-week-day:focus-visible{outline:2px solid var(--accent-blue);outline-offset:-2px}.mobile-week-day.is-today .mobile-week-date strong{color:var(--accent-blue)}.mobile-week-date,.mobile-week-summary{display:grid;gap:5px;min-width:0}.mobile-week-date strong{font-size:.78rem}.mobile-week-date small{color:var(--muted);font-size:.63rem}.mobile-week-summary>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:680}.mobile-week-summary time{margin-right:5px;color:var(--muted);font-size:.66rem;font-weight:670;font-variant-numeric:tabular-nums}.mobile-week-summary>small{color:var(--muted);font-size:.68rem}.mobile-week-count{display:flex;align-items:center;justify-content:flex-end;gap:2px;color:var(--muted);font-size:.68rem}.mobile-week-count svg{width:13px;height:13px}.mobile-choose-courses{width:max-content;margin:12px 0;padding:10px 15px;border:0;border-radius:10px;background:var(--accent-blue);color:#fff}.mobile-day-agenda{display:grid;align-content:start;gap:0}.mobile-day-slot{display:grid;grid-template-columns:45px minmax(0,1fr);gap:9px;padding:10px 0 14px;border-top:1px solid var(--line)}.mobile-day-slot:first-child{border-top:0;padding-top:2px}.mobile-slot-time{display:grid;align-content:start;gap:3px;padding-top:7px;font-variant-numeric:tabular-nums}.mobile-slot-time strong{font-size:.73rem}.mobile-slot-time span{color:var(--muted);font-size:.61rem}.mobile-slot-lessons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.mobile-slot-lessons.is-single{grid-template-columns:minmax(0,1fr)}.mobile-slot-lesson{min-width:0;min-height:100px}.mobile-day-agenda .agenda-lesson{height:100%;min-height:100px;justify-content:center;gap:5px;padding:12px 14px;border:0;border-radius:16px;background:color-mix(in srgb,var(--lesson-color) 78%,#fff);color:#202235}.mobile-day-agenda .lesson-subject{width:100%;font-size:.88rem;line-height:1.13;overflow-wrap:anywhere}.mobile-day-agenda .lesson-subject-short{display:none}.mobile-day-agenda .lesson-subject-full{font-size:1em;font-weight:inherit}.mobile-day-agenda .lesson-teacher-short{display:none}.mobile-day-agenda .lesson-teacher{display:inline-flex;max-width:100%;font-size:.68rem;opacity:.82}.mobile-day-agenda .lesson-room{font-size:.65rem;opacity:.82}.mobile-day-agenda .agenda-lesson.is-cancelled{background:var(--surface-muted);color:var(--muted)}.mobile-day-agenda .agenda-lesson.is-personal{background:color-mix(in srgb,var(--lesson-color) 70%,#fff)}}@media (max-width:360px){.mobile-slot-lessons{grid-template-columns:1fr}.mobile-slot-lesson,.mobile-day-agenda .agenda-lesson{min-height:88px}}.agenda-lesson.is-cancelled,.agenda-lesson.is-focus.is-cancelled,.agenda-lesson.is-compact.is-cancelled{background:repeating-linear-gradient(135deg,var(--surface-muted) 0 8px,color-mix(in srgb,var(--surface-muted) 80%,var(--line)) 8px 10px);color:var(--muted);border:1px dashed var(--line-strong);box-shadow:none}.agenda-lesson.is-cancelled .subject-motif{display:none}.agenda-lesson.is-cancelled:hover{box-shadow:none}.agenda-lesson.is-compact:not(.is-parallel) .lesson-subject{font-size:1rem}@container (min-height: 88px){.agenda-lesson.is-compact:not(.is-parallel) .lesson-subject{font-size:1rem}}@container (min-height: 120px){.agenda-lesson.is-compact:not(.is-parallel) .lesson-subject{font-size:1rem}}@media (max-width:700px){.week-planner{min-height:0}.week-scroller.desktop-week-scroller{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}.week-planner.is-week .timed-week{grid-template-columns:28px repeat(5,minmax(0,1fr))!important;gap:2px}.week-planner.is-day .timed-week{grid-template-columns:38px minmax(0,1fr)!important}.week-day-head button{padding:5px 1px;min-height:41px;display:grid;justify-items:center;gap:1px}.week-day-head button strong{font-size:.62rem}.week-day-head button time{font-size:.58rem}.week-planner.is-day .week-day-head button{display:flex;justify-content:flex-start;padding:7px 10px}.timed-lesson{padding:1px}.agenda-lesson.is-compact{padding:5px 3px;border-radius:9px}.agenda-lesson.is-compact .lesson-subject,.week-planner.is-week .agenda-lesson.is-compact .lesson-subject{font-size:.68rem;line-height:1.1}.week-planner.is-day .agenda-lesson.is-compact .lesson-subject{font-size:1rem}.agenda-lesson.is-compact .lesson-room,.agenda-lesson.is-compact .lesson-teacher{display:none}.week-planner.is-day .agenda-lesson.is-compact .lesson-room,.week-planner.is-day .agenda-lesson.is-compact .lesson-teacher{display:block}.agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:.62rem}.week-planner.is-day .agenda-lesson.is-compact.is-parallel .lesson-subject{font-size:.78rem}}@media (hover:none),(pointer:coarse){.agenda-lesson:hover,.week-day-head button:hover{transform:none;box-shadow:none}}@media (max-width:700px){.mobile-grid-scroller{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y}.mobile-timed-week{display:grid;grid-template-columns:29px repeat(5,minmax(0,1fr));gap:2px;align-content:start}.mobile-timed-week>.week-day-head{position:sticky;top:0;z-index:4;background:var(--page)}.mobile-timed-week>.week-day-head button{min-height:43px}.mobile-time-head{position:sticky;top:0;z-index:4;background:var(--page)}.mobile-time-row{display:contents}.mobile-time-row>time{align-self:start;padding-top:10px;color:var(--muted);font-size:.55rem;font-variant-numeric:tabular-nums}.mobile-time-cell{min-width:0;display:grid;align-content:start;gap:2px;padding:2px 0;border-top:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.mobile-time-cell>div{min-width:0;height:46px}.mobile-time-cell .agenda-lesson.is-compact{width:100%;min-height:46px;height:46px;padding:4px;border-radius:8px;justify-content:center;align-items:flex-start}.mobile-time-cell .agenda-lesson.is-compact .lesson-subject{font-size:.68rem;white-space:normal;line-height:1.04;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.mobile-time-cell .agenda-lesson.is-compact .lesson-subject-full,.mobile-time-cell .agenda-lesson.is-compact .lesson-room,.mobile-time-cell .agenda-lesson.is-compact .lesson-teacher,.mobile-time-cell .agenda-lesson.is-compact .subject-motif{display:none}.mobile-time-cell .agenda-lesson.is-compact .lesson-subject-short{display:block}}.mobile-timetable{min-height:0;flex:1;display:flex;flex-direction:column}.mobile-period-pager{display:flex;min-height:0;flex:1;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.mobile-period-pager::-webkit-scrollbar{display:none}.mobile-period{flex:0 0 100%;min-width:0;height:100%;overflow-y:auto;overflow-x:hidden;scroll-snap-align:start;scroll-snap-stop:normal;overscroll-behavior-y:contain;scrollbar-width:none;padding-bottom:calc(40px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:calc(40px + env(safe-area-inset-bottom,0px))}.mobile-period::-webkit-scrollbar{display:none}.mobile-time-table{display:grid;gap:0;align-content:start}.mobile-time-heading,.mobile-time-corner{position:sticky;top:0;z-index:4;background:var(--page);min-width:0}.mobile-time-heading button{width:100%;min-height:58px;border:0;border-radius:12px;background:transparent;color:var(--text);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 2px}.mobile-time-heading strong{font-size:.75rem;line-height:1.15;font-weight:750}.mobile-time-heading strong span{display:block;margin-top:3px;font-size:.5rem;color:var(--accent-blue)}.mobile-time-heading time{font-size:.65rem;color:var(--muted)}.mobile-time-heading .is-today{background:var(--primary-soft)}.mobile-period--day .mobile-time-heading button{align-items:flex-start;padding:8px 12px}.mobile-period--day .mobile-time-heading strong{font-size:1.14rem;display:flex;align-items:baseline;gap:7px}.mobile-period--day .mobile-time-heading strong span{display:inline;font-size:.64rem;margin:0}.mobile-time-axis,.mobile-time-day{position:relative;min-width:0}.mobile-time-axis time{position:absolute;left:0;font-size:.59rem;color:var(--muted);font-variant-numeric:tabular-nums}.mobile-time-guide{position:absolute;left:0;right:0;border-top:1px solid color-mix(in srgb,var(--line) 30%,transparent);pointer-events:none}.mobile-timed-lesson{position:absolute;min-width:0;padding:0 2px;box-sizing:border-box}.week-planner .mobile-timed-lesson .agenda-lesson{width:100%;height:100%;min-height:0;min-width:0;overflow:hidden;box-shadow:none;border:0;border-radius:11px;justify-content:flex-start;gap:2px;padding:8px 8px 16px}.mobile-timed-lesson .subject-motif{display:none}.week-planner .mobile-timed-lesson .lesson-subject{width:100%;font-size:.9rem;line-height:1.12;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-timed-lesson .lesson-subject span{font-size:inherit;font-weight:inherit}.mobile-period--day .lesson-subject-full{display:block;overflow:hidden;text-overflow:ellipsis}.mobile-period--day .lesson-subject-short,.mobile-period--day .lesson-teacher-short{display:none}.week-planner .mobile-timed-lesson .lesson-teacher,.week-planner .mobile-timed-lesson .lesson-room{width:100%;max-width:100%;font-size:.65rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-planner .mobile-period--week .mobile-timed-lesson .agenda-lesson{padding:8px 4px 5px;border-radius:8px;gap:2px}.week-planner .mobile-period--week .mobile-timed-lesson.is-tall .agenda-lesson{padding-top:12px}.week-planner .mobile-period--week .mobile-timed-lesson .lesson-subject{font-size:.69rem;line-height:1.1}.mobile-period--week .lesson-teacher-short{display:none}.mobile-period--week .lesson-subject-short{display:block;overflow:hidden;text-overflow:clip}.mobile-period--week .lesson-teacher-short{font-size:.54rem;white-space:nowrap;overflow:hidden;max-width:100%}.week-planner .mobile-timed-lesson .agenda-lesson.is-parallel .lesson-subject{font-size:.77rem}.week-planner .mobile-period--week .mobile-timed-lesson .agenda-lesson.is-parallel .lesson-subject{font-size:.62rem}.week-planner .agenda-lesson.is-cancelled,.week-planner .agenda-lesson.is-compact.is-cancelled,.week-planner .agenda-lesson.is-compact.is-parallel.is-cancelled{border:0;outline:0;box-shadow:none;color:var(--muted);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--surface-muted) 60%,var(--page)) 0 8px,color-mix(in srgb,var(--line) 42%,var(--page)) 8px 10px);opacity:.65}.week-day-head .day-relative{display:inline;margin-left:6px;padding:0;background:transparent;font-size:.62rem;font-weight:650;white-space:nowrap}.week-day-head button strong{display:inline;min-width:0}.week-planner.is-day .mobile-timed-lesson .agenda-lesson:not(.is-focus){min-height:0;height:100%;box-sizing:border-box;padding:10px 12px}.week-planner.is-day .mobile-timed-lesson.is-tall .agenda-lesson:not(.is-focus){justify-content:flex-start;gap:5px;padding:20px 16px 8px}.mobile-lesson-motif{display:none;order:3}.week-planner .mobile-timed-lesson.is-tall .mobile-lesson-motif{display:flex;flex:1;align-items:center;justify-content:center;width:100%;min-height:0;position:relative;padding:0 8px;transform:translateY(3px);pointer-events:none}.week-planner .mobile-timed-lesson.is-tall .agenda-lesson .subject-motif{display:block;position:static;width:100%;height:100%;max-width:110px;max-height:110px;opacity:.06;pointer-events:none}.week-planner .mobile-timed-lesson .agenda-lesson.is-cancelled .subject-motif{display:none}.responsive-course-name{display:block;min-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-name>span{min-width:0;flex:1}.week-planner .mobile-timed-lesson .lesson-subject{display:block!important;white-space:nowrap!important;overflow-wrap:normal!important}.week-planner .mobile-timed-lesson .lesson-teacher{display:flex!important;align-items:center;gap:3px;min-width:0;align-self:flex-start}.week-planner .mobile-timed-lesson .lesson-room{display:block!important;margin:0;font-size:.6rem;opacity:.8}.week-planner .mobile-period--week .lesson-teacher{font-size:.54rem}.week-planner .mobile-period--week .teacher-name svg{width:12px;height:12px;padding:1px}.lesson-detail-facts>div>span{display:flex;align-items:center;gap:6px}.lesson-detail-facts>div>span>svg{width:20px;height:20px;flex:none;padding:3px;border-radius:5px;background:var(--surface-muted);box-sizing:border-box}.mobile-timetable{position:relative}.pull-refresh{position:absolute;z-index:10;top:8px;left:50%;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm);opacity:var(--pull-progress);transform:translate(-50%,calc(var(--pull-progress)*18px))}.pull-refresh svg{width:22px;height:22px;transform:rotate(calc(var(--pull-progress)*300deg))}.pull-refresh[data-ready=true]{background:var(--primary-soft)}.pull-refresh.is-refreshing svg{animation:spin .8s linear infinite}@media (prefers-reduced-motion:reduce){.pull-refresh.is-refreshing svg{animation:none}}.mobile-period--week .lesson-subject{order:0}.mobile-period--week .lesson-room{order:1}.mobile-period--week .lesson-teacher{order:2}.pull-refresh.has-feedback{width:max-content;max-width:calc(100% - 24px);height:auto;min-height:40px;padding:9px 13px;border-radius:999px;display:flex;align-items:center;gap:8px;font-size:.73rem;line-height:1.35;color:var(--text)}.pull-refresh.has-feedback svg{flex:none;width:19px;height:19px;transform:none}.pull-refresh[data-state=success] svg{color:var(--success)}.pull-refresh[data-state=error]{background:var(--surface)}.pull-refresh[data-state=error] svg{color:var(--danger)}.mobile-timed-lesson{container-type:size}@container (max-width:120px){.week-planner .mobile-timed-lesson .agenda-lesson,.week-planner.is-day .mobile-timed-lesson .agenda-lesson:not(.is-focus),.week-planner.is-day .mobile-timed-lesson.is-tall .agenda-lesson:not(.is-focus){padding:6px 5px;gap:3px}.week-planner .mobile-timed-lesson .agenda-lesson.is-parallel .teacher-name svg{display:none}}@container (max-width:65px){.week-planner .mobile-timed-lesson .agenda-lesson,.week-planner.is-day .mobile-timed-lesson .agenda-lesson:not(.is-focus){padding:4px 2px;gap:2px}.week-planner .mobile-timed-lesson .agenda-lesson.is-parallel .lesson-teacher{display:none!important}}.room-change{white-space:normal;overflow-wrap:anywhere;font-weight:650}.room-change del{opacity:.65;text-decoration-thickness:1.5px}.room-change strong{font-weight:850}.week-planner .agenda-lesson.has-room-change .lesson-room{display:block!important;color:inherit;white-space:normal!important;font-size:.67rem}.lesson-detail-facts .room-change{display:inline}@media (min-width:701px) and (pointer:coarse){.week-planner .agenda-lesson .subject-motif{max-width:88px;max-height:88px}}.week-planner{position:relative}.mobile-timetable{overflow:hidden;min-height:0}.mobile-period-pager{overflow-anchor:none;scroll-behavior:auto}.mobile-period{overflow-anchor:none;contain:layout paint}.mobile-period .timetable-column{overflow-anchor:none}.timed-lesson{padding:0 2px}.pull-refresh.has-feedback{animation:timetable-feedback-in .18s ease-out both}.pull-refresh.is-leaving{animation:timetable-feedback-out .3s ease-in both;pointer-events:none}@keyframes timetable-feedback-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%,18px)}}@keyframes timetable-feedback-out{0%{opacity:1;transform:translate(-50%,18px)}to{opacity:0;transform:translate(-50%,-28px)}}@media (min-width:701px) and (pointer:coarse){.mobile-time-table{--time-axis-width:42px}.week-planner .mobile-timed-lesson .lesson-subject{font-size:1rem}.week-planner .mobile-period--week .mobile-timed-lesson .lesson-subject{font-size:.82rem}.week-planner .mobile-timed-lesson .lesson-room,.week-planner .mobile-timed-lesson .lesson-teacher{font-size:.73rem}}@media (prefers-reduced-motion:reduce){.pull-refresh.has-feedback,.pull-refresh.is-leaving{animation:none}.pull-refresh.is-leaving{opacity:0}}.timetable-columns{--time-axis-width:38px;grid-template-columns:var(--time-axis-width) minmax(0,1fr)!important;gap:0;min-width:0;isolation:isolate}.timetable-columns .timetable-column{min-width:0;box-sizing:border-box;transition:left var(--day-expand-duration,.23s) cubic-bezier(.4,0,.2,1),width var(--day-expand-duration,.23s) cubic-bezier(.4,0,.2,1),opacity .11s ease;position:relative;border-left:0;border-right:0}.timetable-columns .timetable-column.is-away{opacity:0;pointer-events:none}.timetable-columns .timetable-column.is-focused{z-index:2}.timetable-header-row{grid-column:1/-1;grid-row:1;position:sticky;top:0;z-index:10;height:72px;display:grid;grid-template-columns:var(--time-axis-width) minmax(0,1fr);background:var(--page);isolation:isolate}.timetable-header-days{position:relative;min-width:0;height:72px;overflow:hidden}.timetable-columns .timetable-header-days .timetable-heading{position:absolute;top:0;display:block;padding:0;height:72px;background:transparent;border-radius:0}.timetable-columns .timetable-heading.is-focused{z-index:5}.timetable-columns .timetable-axis-head{height:72px;position:sticky;top:0;z-index:4;background:var(--page)}.timetable-columns .timetable-heading .timetable-day-label{position:relative;width:100%;height:72px;min-height:72px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:18px 2px 8px;border:0;border-radius:0;background:transparent;color:var(--text);text-align:center}.timetable-columns .timetable-day-label strong{display:block;overflow:visible;font-size:.78rem;line-height:1.15;white-space:nowrap;margin:0}.timetable-columns .timetable-day-label time{font-size:.65rem;color:var(--muted);font-variant-numeric:tabular-nums}.week-planner.is-day .timetable-heading .timetable-day-label{justify-content:center;gap:4px}.week-planner.is-day .timetable-heading .timetable-day-label strong{font-size:.78rem}.week-planner.is-day .timetable-heading .timetable-day-label time{font-size:.65rem}.timetable-columns .today-pointer{position:absolute;top:1px;left:50%;transform:translate(-50%);padding:2px 5px;border-radius:5px;background:var(--accent-blue);color:var(--page);font-size:.5rem;line-height:1.2;font-weight:750}.today-pointer:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:3px solid transparent;border-top-color:var(--accent-blue)}.timetable-columns .timetable-day-label:focus-visible{outline:2px solid var(--accent-blue);outline-offset:-3px;border-radius:12px}.timetable-columns .week-grid-lines span,.timetable-columns .mobile-time-guide{border-top-color:color-mix(in srgb,var(--line) 22%,transparent)}@media (max-width:700px){.mobile-time-table.timetable-columns{--time-axis-width:32px}.timetable-columns .timetable-day-label strong{font-size:.75rem}}@media (prefers-reduced-motion:reduce){.timetable-columns .timetable-column{transition:none}}.mobile-period-pager.is-rebasing .timetable-column,.timetable-columns[data-day-navigation=true] .timetable-column{transition:none}.desktop-week-scroller .agenda-lesson.is-compact .lesson-room{margin-top:auto}.week-planner.is-day .timed-lesson.is-tall .agenda-lesson.is-compact:not(.is-parallel){justify-content:flex-start;gap:5px;padding-block:12px}.week-planner.is-day .timed-lesson.is-tall .agenda-lesson.is-compact:not(.is-parallel) .lesson-room{margin-top:auto}.week-planner.is-day .timed-lesson.is-tall .agenda-lesson.is-compact:not(.is-parallel) .lesson-teacher{align-self:flex-start}.is-day-morphing .timetable-column{transition:none!important}.registration-username{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:10px;align-items:center}.registration-username label{min-width:0}.registration-avatar{display:grid;place-items:center;gap:3px}.registration-avatar small{font-size:.6rem;color:var(--muted);text-align:center}.registration-avatar.is-reacting svg{animation:registration-blob-reaction .24s ease-out}@keyframes registration-blob-reaction{50%{transform:translateY(-4px) scale(1.06)}to{transform:none}}.school-field{position:relative;display:grid;gap:6px}.school-field small{font-size:.7rem;line-height:1.4}.school-combobox{position:relative;min-width:0}.school-suggestions{position:absolute;z-index:10;inset:calc(100% + 6px) 0 auto;margin:0;padding:4px;list-style:none;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted);box-shadow:var(--shadow-lg);max-height:180px;overflow:auto;overscroll-behavior:contain}.school-suggestions li{min-height:44px;padding:12px 10px;border-radius:8px;font-size:.85rem;cursor:pointer}.school-suggestions li[aria-selected=true],.school-suggestions li:hover{background:var(--surface);color:var(--accent-blue)}@media (prefers-reduced-motion:reduce){.registration-avatar.is-reacting svg{animation:none}}.reg-grid label small{min-height:1.4em;font-size:.75rem;line-height:1.4}.registration-submit{margin-top:4px}.registration-error{min-height:3.2em;margin-bottom:10px;color:var(--danger);font-size:.82rem;line-height:1.6;overflow-wrap:anywhere}.registration-actions{display:flex;align-items:center;gap:16px}.registration-actions .btn.primary{flex:1;min-height:48px;background:var(--accent-blue);border-color:var(--accent-blue);color:var(--page);font-weight:750}.registration-actions .btn.primary:disabled{opacity:.5}.registration-cancel{min-height:48px;padding:10px 8px;border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:.85rem}.registration-cancel:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:8px}.registration-page{position:fixed;inset:0 auto auto 0;box-sizing:border-box;width:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--surface);color:var(--text);overflow:hidden;overscroll-behavior:none}.registration-page[open]{display:flex;flex-direction:column}.registration-page::backdrop{background:var(--surface)}.registration-page .taskly-dialog-header{padding-top:calc(12px + env(safe-area-inset-top,0px))}.registration-page .taskly-dialog-content{overscroll-behavior:contain;scroll-behavior:auto}.registration-page .input{min-height:48px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted);padding:12px 14px;font-size:16px}html:has(.registration-page[open]),body:has(.registration-page[open]){overflow:hidden;overscroll-behavior:none;background:var(--surface)}.reg-grid .registration-untis{margin-top:10px;padding-top:24px;border-top:2px solid var(--line)}.registration-section-note{margin:-2px 0 8px;color:var(--muted);font-size:.82rem;line-height:1.5}.reg-grid>.section:first-child{border-bottom:0;padding-bottom:4px}.color-editor{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.color-editor>*{min-width:0}.color-editor>p{margin:0;font-size:.82rem;line-height:1.5;max-width:48ch}.color-editor .code-strip{display:flex;gap:8px;flex-wrap:wrap;padding:3px}.color-editor .code-pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 11px;min-height:40px;border-radius:10px;border:2px solid transparent;background:color-mix(in srgb,var(--subject-color) 80%,#fff);color:#202235;cursor:pointer;font:inherit;font-size:.85rem;font-weight:750;opacity:.55;transition:opacity .12s ease}.color-editor .code-pill svg{visibility:hidden;flex:none}.color-editor .code-pill:hover,.color-editor .code-pill:focus-visible{opacity:.9}.color-editor .code-pill.is-active{opacity:1;border-color:var(--surface);outline:2px solid var(--accent-blue);box-shadow:var(--shadow-sm)}.color-editor .code-pill.is-active svg{visibility:visible}.color-palette{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}.color-palette-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;max-width:436px}.color-palette-heading p{margin:0;font-size:.85rem;color:var(--muted)}.color-palette-heading strong{color:var(--text);font-weight:800}.color-default-key{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.68rem}.color-default-key i{display:block;width:12px;height:12px;border-radius:3px;outline:1px dashed var(--muted);outline-offset:2px}.color-editor .swatches{display:grid;grid-template-columns:repeat(auto-fill,40px);gap:4px;max-width:436px}.swatch-option{position:relative;display:grid;place-items:center;width:36px;height:36px}.color-editor .swatch{width:30px;height:30px;border-radius:6px;border:2px solid transparent;cursor:pointer;position:relative;background-clip:padding-box;box-shadow:none;transition:transform .12s ease,box-shadow .15s ease}.color-editor .swatch:before{content:"";display:block;position:absolute;inset:-5px}.color-editor .swatch.is-default{outline:1px dashed var(--muted);outline-offset:3px}.color-editor .swatch:hover:not(:disabled){transform:scale(1.08)}.color-editor .swatch.is-active{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink);z-index:1}.color-editor .swatch:disabled{cursor:wait}.color-editor button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:4px}.color-editor-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 16px;margin-top:-8px;max-width:436px}.color-save-status{font-size:.75rem;color:var(--muted)}.color-save-status:empty{display:none}.color-save-status[role=alert]{width:100%;color:var(--danger);line-height:1.5}.color-reset-link{padding:8px 0;min-height:44px;border:0;background:transparent;color:var(--danger);font:inherit;font-size:.78rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.color-reset-link:disabled{opacity:.45;cursor:default}.color-reset-confirm{display:grid;gap:10px;padding-top:8px}.color-reset-confirm p{margin:0;font-size:.82rem;line-height:1.5}.color-reset-confirm>div{display:flex;flex-wrap:wrap;gap:12px}.color-reset-confirm .color-reset-accept{color:var(--danger)}@media (prefers-reduced-motion:reduce){.color-editor .swatch,.color-editor .code-pill{transition:none}}.color-current-values{display:flex;gap:20px;flex-wrap:wrap;margin-top:-8px}.color-current-values>div{display:flex;align-items:center;gap:5px}.color-current-values span{font-size:.7rem;color:var(--muted)}.color-palette-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:500px}.color-palette-group{min-width:0}.color-palette-group h3{margin:0 0 6px;font-size:.85rem;font-weight:700}.color-palette-group>p{margin:4px 0 8px;font-size:.7rem;color:var(--muted)}.color-palette-group .swatches{grid-template-columns:repeat(6,minmax(0,36px));max-width:none;gap:2px}@media (max-width:600px){.color-palette-groups{grid-template-columns:minmax(0,1fr);gap:16px}}.legal-overview>p{margin-top:0}.legal-overview a,.legal-document a{color:var(--accent-blue);text-underline-offset:3px}.legal-document-tabs{position:sticky;top:-4px;z-index:2;display:flex;flex-wrap:wrap;gap:6px 20px;margin:20px 0 28px;padding:8px 0;background:var(--surface)}.legal-document-tabs a{display:inline-flex;align-items:center;min-height:40px;color:var(--muted);font-size:.8rem;text-decoration:none;border-bottom:2px solid transparent}.legal-document-tabs a[aria-current]{color:var(--accent-blue);border-bottom-color:currentColor;font-weight:700}.legal-document{line-height:1.75;overflow-wrap:anywhere}.legal-document .eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 8px}.legal-document h1{font-size:clamp(1.8rem,4vw,2.8rem);letter-spacing:-.045em;line-height:1.12;margin:0 0 22px}.legal-document .intro{color:var(--muted);margin-bottom:36px}.legal-document section{margin-block:30px}.legal-document h2{font-size:1.08rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 12px}.legal-document p{margin:10px 0 16px}.legal-document address{font-style:normal}.legal-document .stand{color:var(--muted);font-size:.75rem;margin-top:38px}.legal-document-tabs a:focus-visible,.legal-overview a:focus-visible{outline:2px solid var(--accent-blue);outline-offset:4px}@media (max-width:700px){.taskly-dialog--legal{padding-top:max(8px,env(safe-area-inset-top,0px))}.legal-document-tabs{gap:4px 16px}.legal-document-tabs a{font-size:.75rem}}@property --mo-amp{syntax:"<number>";inherits:true;initial-value:0}@property --mo-esx{syntax:"<number>";inherits:true;initial-value:1}@property --mo-esy{syntax:"<number>";inherits:true;initial-value:1}@property --mo-tilt{syntax:"<number>";inherits:true;initial-value:0}@property --mo-edy{syntax:"<number>";inherits:true;initial-value:0}@property --mo-edx{syntax:"<number>";inherits:true;initial-value:0}@property --mo-esx2{syntax:"<number>";inherits:true;initial-value:0}@property --mo-esy2{syntax:"<number>";inherits:true;initial-value:0}@property --mo-tilt2{syntax:"<number>";inherits:true;initial-value:0}@property --mo-edy2{syntax:"<number>";inherits:true;initial-value:0}@property --mo-lock{syntax:"<number>";inherits:true;initial-value:0}@property --mo-shake{syntax:"<number>";inherits:true;initial-value:0}@property --mo-rock{syntax:"<number>";inherits:true;initial-value:0}@property --mo-rockp{syntax:"<number>";inherits:true;initial-value:1}@property --mo-bdy{syntax:"<number>";inherits:true;initial-value:0}.mo-root,.mo-breathe,.mo-bob{transform-box:view-box;transform-origin:center}.mo-root{--mo-amp:0;--mo-morph:calc(.4s*var(--mo-rate,1));--mo-morph-ease:ease-in-out;--mo-tp:--mo-esx,--mo-esy,--mo-tilt,--mo-edy,--mo-edx,--mo-esx2,--mo-esy2,--mo-tilt2,--mo-edy2,--mo-lock,--mo-shake,--mo-rock,--mo-bdy;--mo-md:var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph),var(--mo-morph);--mo-me:var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease),var(--mo-morph-ease);transition-property:--mo-amp,transform,var(--mo-tp);transition-duration:calc(.4s*var(--mo-rate,1)),calc(.16s*var(--mo-rate,1)),var(--mo-md);transition-timing-function:ease-out,cubic-bezier(.23,1,.32,1),var(--mo-me);animation:mo-shake calc(.112s*var(--mo-rate,1))linear infinite}.mo-bob>g:not(.mo-eyes){fill:var(--mo-head);transition:fill var(--mo-morph)var(--mo-morph-ease)}.mo-eyes{fill:var(--mo-eye);transition:fill var(--mo-morph)var(--mo-morph-ease)}@keyframes mo-shake{0%,to{translate:calc(.62px*var(--mo-shake))calc(-.34px*var(--mo-shake))}25%{translate:calc(-.7px*var(--mo-shake))calc(.22px*var(--mo-shake))}50%{translate:calc(.38px*var(--mo-shake))calc(.66px*var(--mo-shake))}75%{translate:calc(-.44px*var(--mo-shake))calc(-.6px*var(--mo-shake))}}.mo-root.mo-expr{--mo-morph:calc(.3s*var(--mo-rate,1));--mo-morph-ease:cubic-bezier(.45,.05,.5,1)}.mo-root:hover{--mo-amp:1;transition-duration:calc(.4s*var(--mo-rate,1)),calc(.22s*var(--mo-rate,1)),var(--mo-md);transform:translateY(-1.5px)scale(1.04)}.mo-root.mo-always{--mo-amp:1}.mo-breathe{animation-name:mo-breathe;animation-duration:calc(2.8s*var(--mo-rate,1));animation-delay:calc(var(--mo-phase,0s)*var(--mo-rate,1));animation-iteration-count:infinite;animation-direction:alternate;animation-timing-function:ease-in-out}@keyframes mo-breathe{to{transform:scaleX(calc(1 + .022*var(--mo-amp)))scaleY(calc(1 - .018*var(--mo-amp)))}}.mo-bob{translate:0 calc(var(--mo-bdy)*1px);animation-name:mo-bob;animation-duration:calc(3.4s*var(--mo-rate,1));animation-delay:calc(var(--mo-bob-phase,0s)*var(--mo-rate,1));animation-iteration-count:infinite;animation-direction:alternate;animation-timing-function:ease-in-out}@keyframes mo-bob{0%{transform:translateY(0)}to{transform:translateY(calc(-1.1px*var(--mo-amp)))}}.mo-eye{transform-box:view-box;--mo-sel:calc((var(--mo-wrap,1) + 1)/2);--mo-x:calc(var(--mo-esx) + var(--mo-esx2)*var(--mo-sel));--mo-y:calc(var(--mo-esy) + var(--mo-esy2)*var(--mo-sel));--mo-t:calc(var(--mo-tilt) + var(--mo-tilt2)*var(--mo-sel));--mo-ph:calc(var(--mo-sel)*(1 - var(--mo-rock)) + var(--mo-rock)*((1 + var(--mo-wrap,1)*var(--mo-rockp))/2));translate:calc(var(--mo-edx)*var(--mo-wrap,1)*1px)calc((var(--mo-edy) + var(--mo-edy2)*var(--mo-ph))*1px);rotate:calc((var(--mo-t)*var(--mo-wrap,1) - var(--mo-lean,0)*var(--mo-lock))*1deg);transform:rotate(calc(var(--mo-lean,0)*1deg))scaleX(var(--mo-x))scaleY(var(--mo-y))rotate(calc(var(--mo-lean,0)*-1deg));animation-name:mo-rock;animation-duration:calc(.9s*var(--mo-rate,1));animation-iteration-count:infinite;animation-timing-function:ease-in-out}@container style(--mo-rock:0){.mo-eye{animation-name:none}}@keyframes mo-rock{0%,to{--mo-rockp:1}50%{--mo-rockp:-1}}.mo-eye>*{transform-box:fill-box;transform-origin:center;animation-name:mo-blink,mo-wrap;animation-duration:calc(var(--mo-blink,4.8s)*var(--mo-rate,1)),calc(var(--mo-saccade,5.6s)*var(--mo-rate,1));animation-delay:calc(var(--mo-blink-phase,0s)*var(--mo-rate,1)),calc(var(--mo-saccade-phase,0s)*var(--mo-rate,1));animation-iteration-count:infinite;animation-timing-function:linear}@keyframes mo-blink{0%,97.2%{transform:rotate(calc(var(--mo-lean,0)*1deg))scaleY(1)rotate(calc(var(--mo-lean,0)*-1deg));animation-timing-function:ease-in}98.6%{transform:rotate(calc(var(--mo-lean,0)*1deg))scaleY(calc(1 - .92*var(--mo-amp)))rotate(calc(var(--mo-lean,0)*-1deg));animation-timing-function:ease-out}to{transform:rotate(calc(var(--mo-lean,0)*1deg))scaleY(1)rotate(calc(var(--mo-lean,0)*-1deg))}}.mo-eyes{animation-name:mo-saccade;animation-duration:calc(var(--mo-saccade,5.6s)*var(--mo-rate,1));animation-delay:calc(var(--mo-saccade-phase,0s)*var(--mo-rate,1));animation-iteration-count:infinite;animation-timing-function:linear}@keyframes mo-saccade{0%,15%{translate:0}16.5%,31%{translate:calc(-.8px*var(--mo-look-x,1.4)*var(--mo-amp))calc(-.9px*var(--mo-look-y,1.1)*var(--mo-amp))}32.5%,47%{translate:calc(1px*var(--mo-look-x,1.4)*var(--mo-amp))calc(.1px*var(--mo-look-y,1.1)*var(--mo-amp))}48.5%,63%{translate:calc(-.15px*var(--mo-look-x,1.4)*var(--mo-amp))calc(.85px*var(--mo-look-y,1.1)*var(--mo-amp))}64.5%,79%{translate:calc(.75px*var(--mo-look-x,1.4)*var(--mo-amp))calc(-.8px*var(--mo-look-y,1.1)*var(--mo-amp))}80.5%,98.5%{translate:calc(-1px*var(--mo-look-x,1.4)*var(--mo-amp))calc(-.15px*var(--mo-look-y,1.1)*var(--mo-amp))}to{translate:0}}@keyframes mo-wrap{0%,15%{scale:1;rotate:none}16.5%,31%{scale:calc(1 - .0176*var(--mo-look-mx,1.4)*var(--mo-amp) + .008*var(--mo-look-x,1.4)*var(--mo-wrap,1)*var(--mo-amp))calc(1 - .027*var(--mo-look-my,1.1)*var(--mo-amp));rotate:calc(.648deg*var(--mo-look-x,1.4)*var(--mo-look-y,1.1)*var(--mo-wrap,1)*var(--mo-amp))}32.5%,47%{scale:calc(1 - .022*var(--mo-look-mx,1.4)*var(--mo-amp) - .01*var(--mo-look-x,1.4)*var(--mo-wrap,1)*var(--mo-amp))calc(1 - .003*var(--mo-look-my,1.1)*var(--mo-amp));rotate:calc(.09deg*var(--mo-look-x,1.4)*var(--mo-look-y,1.1)*var(--mo-wrap,1)*var(--mo-amp))}48.5%,63%{scale:calc(1 - .0033*var(--mo-look-mx,1.4)*var(--mo-amp) + .0015*var(--mo-look-x,1.4)*var(--mo-wrap,1)*var(--mo-amp))calc(1 - .0255*var(--mo-look-my,1.1)*var(--mo-amp));rotate:calc(-.115deg*var(--mo-look-x,1.4)*var(--mo-look-y,1.1)*var(--mo-wrap,1)*var(--mo-amp))}64.5%,79%{scale:calc(1 - .0165*var(--mo-look-mx,1.4)*var(--mo-amp) - .0075*var(--mo-look-x,1.4)*var(--mo-wrap,1)*var(--mo-amp))calc(1 - .024*var(--mo-look-my,1.1)*var(--mo-amp));rotate:calc(-.54deg*var(--mo-look-x,1.4)*var(--mo-look-y,1.1)*var(--mo-wrap,1)*var(--mo-amp))}80.5%,98.5%{scale:calc(1 - .022*var(--mo-look-mx,1.4)*var(--mo-amp) + .01*var(--mo-look-x,1.4)*var(--mo-wrap,1)*var(--mo-amp))calc(1 - .0045*var(--mo-look-my,1.1)*var(--mo-amp));rotate:calc(.135deg*var(--mo-look-x,1.4)*var(--mo-look-y,1.1)*var(--mo-wrap,1)*var(--mo-amp))}to{scale:1;rotate:none}}@media not ((hover:hover) and (pointer:fine)){.mo-root:hover{--mo-amp:0;transform:none}.mo-root.mo-always{--mo-amp:1}.mo-root:not(.mo-always),.mo-root:not(.mo-always) *{animation-play-state:paused}.mo-root.mo-expr:not(.mo-always) .mo-eye{animation-play-state:running}}.mo-slow{--mo-rate:5}@media (prefers-reduced-motion:reduce){.mo-root,.mo-breathe,.mo-bob,.mo-eyes,.mo-eye,.mo-eye>*{animation:none;transition:none}.mo-bob>g:not(.mo-eyes){transition:none}}.mascot-greeting{display:flex;align-items:center;gap:18px;min-width:0}.mascot-greeting>svg{flex:none;overflow:visible}.mascot-message{position:relative;min-width:0;display:grid;gap:5px}.mascot-message>span{font-size:.78rem;font-weight:650;color:var(--accent-blue)}.mascot-message h1,.mascot-message h2{margin:0;color:var(--ink);font-size:1.7rem;line-height:1.1;letter-spacing:-.045em;font-weight:750}.mascot-message p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.45}@media (max-width:700px){.mascot-greeting{gap:14px}.mascot-message h1,.mascot-message h2{font-size:1.5rem}.mascot-message p{font-size:.73rem}.mascot-greeting.is-compact{gap:12px}}.hw-root .swipe-wrap{position:relative;overflow:hidden;border-radius:19px;isolation:isolate;touch-action:pan-y;--swipe-underlap: clamp(0px, calc(var(--swipe-reveal, 0px) * 3), 24px)}.hw-root .hw-card{position:relative;z-index:2;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;will-change:transform}.hw-root .swipe-action{position:absolute;top:0;bottom:0;z-index:1;width:calc(var(--swipe-reveal, 0px) + var(--swipe-underlap, 0px));box-sizing:border-box;max-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden;opacity:0;pointer-events:none;font-size:.65rem;font-weight:700;white-space:nowrap;transition:background .16s ease;color:var(--success);background:color-mix(in srgb,var(--success) 15%,var(--surface-muted))}.hw-root .swipe-complete{right:0;padding-left:var(--swipe-underlap, 0px)}.hw-root .swipe-delete{left:0;padding-right:var(--swipe-underlap, 0px);background:color-mix(in srgb,var(--danger) 15%,var(--surface-muted));color:var(--danger)}.hw-root .swipe-complete.is-reopen{color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 15%,var(--surface-muted))}.hw-root [data-swipe-direction=left] .swipe-complete,.hw-root [data-swipe-direction=right] .swipe-delete{opacity:1}.hw-root .swipe-action-icon{display:grid;place-items:center;transform:scale(var(--swipe-scale, .65));opacity:clamp(0,var(--swipe-progress, 0) * 2,1);transition:transform .12s ease}.hw-root .swipe-action-icon svg{width:27px;height:27px;stroke-width:2}.hw-root .swipe-action>span:last-child{opacity:clamp(0,(var(--swipe-progress, 0) - .18) * 2,1)}.hw-root [data-swipe-ready=true] .swipe-complete{background:color-mix(in srgb,var(--success) 30%,var(--surface-muted))}.hw-root [data-swipe-ready=true] .swipe-complete.is-reopen{background:color-mix(in srgb,var(--accent-blue) 30%,var(--surface-muted))}.hw-root [data-swipe-ready=true] .swipe-delete{background:color-mix(in srgb,var(--danger) 30%,var(--surface-muted))}.homework-delete-link{display:flex;align-items:center;gap:8px;min-height:44px;margin-top:20px;border:0;background:transparent;color:var(--danger);font:inherit;font-size:.8rem;cursor:pointer}.hw-root .hw-card.is-done .hw-card-body{color:var(--muted)}.hw-root .hw-toast{position:static;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 15px;border:0;border-radius:12px;background:var(--surface-muted);color:var(--text);box-shadow:none;font-size:.82rem;line-height:1.5}.hw-root .hw-toast-undo{margin-left:auto;min-height:34px;padding:5px 0;border:0;background:transparent;color:var(--accent-blue);font:inherit;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.homework-form-actions.actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:12px;margin-top:22px;padding-top:6px}.homework-form-actions.actions>.spacer{display:none}.homework-form-actions.actions>.btn{flex:1 1 0;min-width:0;max-width:180px}@media (prefers-reduced-motion: reduce){.hw-root .swipe-action,.hw-root .swipe-action-icon,.hw-root .hw-card{transition:none!important}}.app-root .hw-card{gap:3px}.app-root .hw-card .hw-card-title{gap:8px;text-transform:none}.app-root .hw-card .subject-text{font-size:.9rem;font-weight:650;letter-spacing:0;text-transform:none}.app-root .hw-card .hw-card-body{padding-left:16px;font-size:.9rem!important}.hw-card-due{padding-left:16px;margin-top:7px}.app-root .hw-card .due-badge{border:0;background:transparent;padding:0;border-radius:0;color:var(--muted);font-weight:550;font-size:.72rem!important}.app-root .hw-card .due-badge.danger{color:color-mix(in srgb,var(--task-color) 35%,var(--text));font-weight:700}.app-root .hw-card .due-badge.danger:before{content:"";display:block;width:5px;height:5px;border-radius:50%;background:var(--task-color)}.app-root .hw-card-tools .btn{color:var(--muted);border-radius:10px}.app-root .hw-card-tools .btn:hover{color:var(--text);background:var(--surface)}.taskly-dialog .homework-modal .input,.taskly-dialog .homework-modal input,.taskly-dialog .homework-modal textarea,.taskly-dialog .homework-modal select{border:0!important;box-shadow:none;background:var(--surface-muted)}.taskly-dialog .homework-modal :is(input,textarea,select):focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.app-root .hw-card{padding:10px 16px 12px!important;gap:1px}.app-root .hw-card .hw-card-body{margin-top:-3px!important;line-height:1.4!important}.app-root .hw-card-due{margin-top:3px}.app-root .hw-root .hw-header{padding:16px 0 8px!important;min-height:96px}.hw-header .mascot-message>span{color:var(--muted);font-weight:500}.hw-list>.swipe-wrap,.hw-empty{animation:homework-row-in .2s cubic-bezier(.2,0,.2,1) both}@keyframes homework-row-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.taskly-dialog .homework-modal .btn.primary{background:var(--ink);color:var(--page);border:0}@media (prefers-reduced-motion:reduce){.hw-list>.swipe-wrap,.hw-empty{animation:none}}.maintenance-view{min-height:100dvh;display:grid;place-items:center;padding:32px 24px;background:var(--page);color:var(--text)}.maintenance-view>div{width:min(390px,100%)}.maintenance-view .brand-mark{width:44px;height:44px;margin-bottom:28px}.maintenance-view h1{margin:0 0 12px;font-size:1.55rem;font-weight:650;line-height:1.25;letter-spacing:-.035em;overflow-wrap:anywhere}.maintenance-view p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.65;white-space:pre-line}.email-form{display:grid;gap:18px}.email-form>label{display:grid;gap:7px;font-size:.85rem}.email-form .feedback{margin:0}.email-main-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.email-main-actions .primary{flex:1;min-height:48px}.email-secondary-actions{display:grid;justify-items:center;gap:0}.email-text-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:6px 8px;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.78rem;line-height:1.4;text-align:center;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.email-text-action:hover:not(:disabled){color:var(--accent-blue)}.email-text-action:disabled{opacity:.55;text-decoration:none;cursor:default}.email-text-action:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:6px}@media (min-width:701px){.sidebar-nav .nav-item{min-height:52px;gap:12px;color:var(--muted);font-weight:600}.sidebar-nav .nav-item.is-active{color:var(--ink);background:transparent;font-weight:750}.sidebar-nav .nav-item:before{display:none}.sidebar-nav .nav-icon{position:relative;flex:none;width:28px;height:28px}.sidebar-nav .nav-icon>svg{width:24px;height:24px}.sidebar-nav .nav-avatar>svg{position:absolute;left:50%;top:50%;width:30px;height:30px;max-width:none;transform:translate(-50%,-50%);filter:grayscale(1);opacity:.75}.sidebar-nav .is-active .nav-avatar>svg{opacity:1}.sidebar-nav .nav-avatar .mo-bob>g[fill]{fill:currentColor}.sidebar-nav .nav-avatar .mo-bob>g.mo-eyes{fill:var(--page)}}.share-content{display:grid;gap:14px}.share-content p{margin:0;color:var(--muted);font-size:.83rem;line-height:1.5}.share-content small{color:var(--muted)}.share-options{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface-muted)}.share-options button{flex:1;min-height:44px;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;font-size:.76rem;font-weight:650;cursor:pointer}.share-options button.is-active{background:var(--surface);color:var(--text)}.share-options button:disabled{opacity:.45;cursor:default}.share-qr{display:grid;place-items:center;min-height:240px}.share-qr img{display:block;width:min(240px,100%);height:auto;border-radius:16px}.share-link{display:grid;gap:7px;font-size:.72rem;color:var(--muted)}.share-link input{min-width:0}.share-actions{display:flex;flex-wrap:wrap;gap:8px}.share-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--surface-muted);border:0}.share-actions svg{width:16px;height:16px;flex:none}.share-feedback{min-height:1.4em;color:var(--muted);font-size:.76rem}.guided-tutorial{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:visible;pointer-events:none;color:var(--text)}.tutorial-shade{position:absolute;background:#00000094;pointer-events:auto;touch-action:none}.tutorial-spotlight{position:absolute;border:2px solid var(--accent-blue);border-radius:13px;box-shadow:0 0 0 2px var(--surface);pointer-events:none}.tutorial-coach{position:absolute;box-sizing:border-box;padding:39px 18px 15px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg);pointer-events:auto;animation:tutorial-coach-in .14s ease-out}.tutorial-avatar{position:absolute;top:-36px;left:18px;width:72px;height:72px;pointer-events:none}.tutorial-count{margin:0 0 8px;font-size:.65rem;color:var(--muted);font-weight:700}.tutorial-coach h2{margin:0;font-size:1rem;line-height:1.45;letter-spacing:-.015em}.tutorial-coach button{min-height:44px;margin-top:10px;padding:6px 0;border:0;background:transparent;color:var(--accent-blue);font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.tutorial-coach button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:3px;border-radius:5px}.tutorial-coach-inline{position:relative;margin:38px 0 20px;background:var(--surface-muted);box-shadow:none;color:var(--text)}.tutorial-coach-inline .tutorial-avatar{width:56px;height:56px;top:-32px}.tutorial-coach-inline button{margin-top:4px}[data-tutorial-host]:empty{display:none}.tutorial-typewriter{display:grid}.tutorial-text-space,.tutorial-text-typed{grid-area:1/1}.tutorial-text-space{visibility:hidden}.week-planner>[data-tutorial-host=courses]{position:relative;height:0;z-index:45}.tutorial-course-guide{position:absolute;top:64px;left:0;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;width:36px;padding:0;margin:0;color:var(--text);transition:padding .24s ease,background .24s ease}.tutorial-course-guide.is-expanded{top:0;width:min(340px,100%);padding:12px;border-radius:18px;background:var(--surface-muted);box-shadow:var(--shadow-lg)}.tutorial-course-avatar{display:block;width:36px;height:36px;min-height:36px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.tutorial-course-avatar:focus-visible{outline:2px solid var(--accent-blue);outline-offset:3px}.tutorial-course-copy{max-height:0;opacity:0;overflow:hidden;transition:max-height .24s ease,opacity .16s ease}.is-expanded .tutorial-course-copy{max-height:240px;opacity:1}.tutorial-course-instruction{margin:0;font-size:.85rem;line-height:1.5;font-weight:650}.tutorial-course-copy>button{min-height:44px;padding:4px 0;border:0;background:transparent;color:var(--accent-blue);font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.tutorial-course-reminder{position:absolute;z-index:40;top:0;left:44px;width:min(240px,calc(100vw - 84px));padding:12px 14px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-lg);font-size:.78rem;line-height:1.5;pointer-events:none;animation:tutorial-coach-in .14s ease-out}.timetable-columns .agenda-lesson{scroll-margin-top:84px}@keyframes tutorial-coach-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tutorial-coach.is-leaving{pointer-events:none;animation:tutorial-coach-out .36s ease-in forwards}@keyframes tutorial-coach-out{to{opacity:0;transform:translateY(-24px) scale(.86)}}@media (prefers-reduced-motion:reduce){.tutorial-coach,.tutorial-course-reminder,.tutorial-coach.is-leaving{animation:none}.tutorial-coach.is-leaving{opacity:0}.tutorial-course-guide,.tutorial-course-copy{transition:none}}#root,.app-root,.fit-scale,.fit-scale-inner{min-height:100vh}.app-root{background:var(--page);color:var(--text);transition:background .2s ease,color .2s ease}.fit-scale-inner{display:grid;grid-template-columns:204px minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;max-width:1760px;margin:0 auto}.app-header{position:sticky;top:0;grid-row:1/-1;height:100vh;padding:27px 17px 20px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface) 78%,var(--page));z-index:30}.brand{display:flex;align-items:center;gap:10px;padding:1px 10px 38px;cursor:pointer}.brand-copy{display:grid;line-height:1}.brand-copy strong{font-size:1.45rem;font-weight:730;letter-spacing:-.065em}.sidebar-nav{display:grid;gap:5px}.nav-item{position:relative;min-height:43px;padding:0 11px;display:flex;align-items:center;gap:11px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.8rem;font-weight:650;text-align:left;cursor:pointer;transition:color .15s ease,background .15s ease}.nav-item:before{content:"";position:absolute;left:0;width:3px;height:18px;border-radius:4px;background:transparent}.nav-item:hover{background:var(--surface-muted);color:var(--text)}.nav-item.is-active{background:transparent;color:var(--accent-blue)}.nav-item.is-active:before{background:var(--accent-blue)}.nav-icon{width:19px;height:19px;display:grid;place-items:center}.nav-icon svg{width:19px;height:19px}.nav-dot{margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--danger)}.sidebar-profile{margin-top:auto;padding:17px 8px 0;display:flex;align-items:center;gap:10px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.sidebar-profile:hover{color:var(--accent-blue)}.sidebar-profile>span{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--page);font-size:.76rem;font-weight:780}.sidebar-profile div{display:grid;min-width:0}.sidebar-profile strong{overflow:hidden;font-size:.74rem;font-weight:690;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile small{margin-top:2px;color:var(--muted);font-size:.6rem}.mobile-shell-profile{display:none}.toolbar{grid-column:2;padding:25px clamp(25px,4vw,58px) 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}.toolbar .left,.toolbar .right{display:flex;align-items:center;gap:8px}.toolbar .right{justify-content:flex-end}.range{color:var(--muted);font-size:.7rem;font-weight:700;font-variant-numeric:tabular-nums}.week-nav,.seg-toggle,.refresh-wrap{display:flex;align-items:center;gap:3px}.btn,.seg-btn,.schedule-modes button,.settings-actions button,.theme-options button{min-height:36px;padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.7rem;font-weight:680;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover,.seg-btn:hover,.schedule-modes button:hover,.settings-actions button:hover,.theme-options button:hover{background:var(--surface-muted)}.btn.is-active,.seg-btn.is-active{border-color:var(--ink);background:var(--ink);color:var(--page)}.icon-btn{width:36px;padding:0;display:grid;place-items:center}.icon-btn .icon{width:16px;height:16px}.schedule-modes{display:flex;padding:3px;border-radius:10px;background:var(--surface-muted)}.schedule-modes button{min-width:66px;border:0;background:transparent}.schedule-modes button.is-active{background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.lastup{width:29px;font-size:.62rem;font-variant-numeric:tabular-nums}.app-main{grid-column:2;min-width:0;padding:30px clamp(25px,4vw,58px) 58px}.stage{width:100%;max-width:1460px;margin:0 auto}.today-stage{max-width:none}.card{width:100%;background:transparent}.card.stretch{min-height:0}.schedule-surface{height:auto!important;max-height:none!important;overflow:visible!important}.page-heading{margin:0 0 27px}.page-heading p{margin:0 0 6px;color:var(--muted);font-size:.67rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase}.page-heading h1{margin:0;color:var(--ink);font-size:clamp(1.9rem,3vw,2.55rem);font-weight:710;letter-spacing:-.05em;line-height:1.05}.page-heading>span{display:block;margin-top:8px;color:var(--muted);font-size:.8rem}.plan-heading,.plan-heading p{display:block}.settings-page{max-width:960px}.settings-group{display:grid;grid-template-columns:minmax(220px,.82fr) 1.18fr;gap:44px;padding:25px 0;border-bottom:1px solid var(--line)}.settings-group h2{margin:0 0 6px;font-size:.94rem;font-weight:700}.settings-group p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.5}.settings-actions,.theme-options{display:flex;flex-wrap:wrap;gap:7px;align-items:flex-start}.theme-options{padding:3px;border-radius:10px;background:var(--surface-muted)}.theme-options button{flex:1;border:0;background:transparent}.theme-options button.is-active{background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.danger{color:var(--danger)!important}.feedback{display:flex;align-items:center;gap:9px;padding:10px 0;color:var(--muted);font-size:.75rem}.feedback.error{color:var(--danger)}.spinner{width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent-blue);border-radius:50%;animation:spin .75s linear infinite}.spinner.big{width:28px;height:28px}@keyframes spin{to{transform:rotate(360deg)}}.input{width:100%;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text)}.muted{color:var(--muted)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.app-footer,.bottom-nav{display:none}.overlay-box,.blocker-panel{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-lg)}.blocker{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:#091226a3}.link{color:var(--accent-blue)}.app-root .hw-root{max-width:850px;margin:0 auto;padding:0!important;gap:16px!important}.app-root .hw-header{margin:0!important;padding:6px 0 10px!important;border:0!important}.app-root .hw-greeting{font-size:1.6rem!important;font-weight:600!important;letter-spacing:-.035em!important;color:var(--ink)!important}.app-root .hw-tag,.app-root .glow{display:none!important}.app-root .hw-add-fab{top:0!important;right:0!important;height:42px!important;min-width:0!important;padding:0 16px!important;flex-direction:row!important;gap:8px!important;border:0!important;border-radius:22px!important;background:var(--ink)!important;color:var(--page)!important;box-shadow:none!important}.app-root .hw-list{gap:12px!important;border:0!important}.app-root .hw-card{padding:10px 16px 12px!important;border:0!important;border-radius:19px!important;background:var(--surface-muted)!important;box-shadow:none!important}.app-root .hw-card:hover{box-shadow:none!important}.app-root .hw-card-title{font-size:.88rem!important;text-transform:none;letter-spacing:0;font-weight:650!important}.app-root .hw-card-body{margin-top:0!important;font-size:1rem!important;font-weight:500;line-height:1.5!important}.app-root .hw-card.is-done .hw-card-body{text-decoration:line-through}.app-root .hw-card-tools .btn{border:0;background:transparent;min-width:36px;min-height:36px}.app-root .hw-filters{gap:8px!important;margin:0!important}.app-root .hw-filter-chip{min-height:36px!important;border-radius:20px!important;border:0!important;background:var(--surface-muted)!important;font-size:.75rem!important;box-shadow:none!important}.app-root .hw-filter-chip.is-active{background:var(--ink)!important;color:var(--page)!important}.hw-search{padding:13px 17px;border-radius:22px;font-size:.85rem;background:transparent}.app-root .due-badge{font-size:.65rem!important}.app-root .hw-empty{padding:32px 0!important}.app-root .hw-empty-emoji{display:none}.app-root .hw-empty-title{font-size:1.1rem!important;font-weight:550!important}@media (max-width:1020px){.fit-scale-inner{grid-template-columns:76px minmax(0,1fr)}.app-header{padding-inline:10px}.brand{justify-content:center;padding-inline:0}.brand-copy,.nav-label,.sidebar-profile div{display:none}.sidebar-nav{justify-items:center}.nav-item{width:48px;padding:0;justify-content:center}.sidebar-profile{justify-content:center}.toolbar,.app-main{grid-column:2}.toolbar{grid-template-columns:1fr auto}.toolbar .left{display:none}.schedule-modes{justify-self:start}.toolbar .right{grid-column:2}}@media (max-width:700px){.fit-scale-inner{display:block}.app-header{position:relative;height:62px;padding:13px 16px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;border:0;background:var(--page)}.brand{padding:0}.brand-copy{display:grid}.brand-copy strong{font-size:1.35rem}.app-header>.sidebar-nav,.sidebar-profile{display:none}.mobile-shell-profile{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--ink);color:var(--page);font:inherit;font-size:.72rem;font-weight:740;cursor:pointer}.toolbar{padding:4px 16px 9px;display:grid;grid-template-columns:1fr auto}.toolbar .right .seg-toggle,.toolbar .right .refresh-wrap,.toolbar .right .icon-btn{display:none}.schedule-modes{width:100%}.schedule-modes button{flex:1}.app-main{padding:14px 16px calc(82px + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;inset:auto 0 0;z-index:100;height:calc(66px + env(safe-area-inset-bottom));padding:4px 8px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 -5px 20px #1420400f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-nav .nav-item{width:auto;min-height:56px;padding:4px;flex-direction:column;justify-content:center;gap:3px;border-radius:8px}.bottom-nav .nav-item:before{left:50%;top:2px;width:18px;height:2px;transform:translate(-50%)}.bottom-nav .nav-label{display:block;font-size:.59rem}.bottom-nav .nav-icon{height:20px}.bottom-nav .nav-dot{position:absolute;top:8px;right:26%}.settings-group{grid-template-columns:1fr;gap:15px}.plan-heading{margin-bottom:17px}.app-root .hw-add-fab{top:0!important;right:0!important}}.app-header{background:var(--page)}.app-main{padding-top:30px}.brand{background:transparent;border:0;color:inherit;font:inherit;text-align:left}.brand-copy strong{letter-spacing:-.04em}.plan-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.plan-heading h1{font-size:1.35rem;letter-spacing:-.03em;font-weight:600;line-height:1.3}.plan-heading div>span{display:block;margin-top:4px;font-size:.8rem;color:var(--muted)}.plan-heading>.btn{border-radius:20px;padding-inline:18px}.plan-controls{display:flex;align-items:center;gap:18px;padding-bottom:12px}.plan-controls .schedule-modes{margin-left:auto;border-radius:22px}.plan-controls .schedule-modes button{border-radius:18px;box-shadow:none}.plan-controls .btn{min-height:40px;min-width:40px;border-radius:20px;border-color:transparent}.plan-options{position:relative;font-size:.75rem}.plan-options summary{cursor:pointer;padding:12px 0 12px 10px}.plan-options>div{position:absolute;right:0;top:45px;z-index:20;display:grid;gap:8px;min-width:235px;padding:16px;border:1px solid var(--line);background:var(--surface);border-radius:14px;box-shadow:var(--shadow-lg)}.homework-strip{display:flex;gap:16px;align-items:center;width:100%;padding:13px 0;border:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;font-size:.78rem}.homework-strip strong{font-weight:550}.homework-strip span{color:var(--muted)}.homework-strip span:last-child{margin-left:auto;color:var(--accent-blue)}.scope-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.75rem;color:var(--muted);padding:12px 0}.connect-notice{max-width:600px;padding:24px 0}.connect-notice h2{font-size:1.2rem;font-weight:550}.connect-notice p{color:var(--muted);line-height:1.6;font-size:.85rem}.feedback.error{flex-wrap:wrap}.lesson-detail{padding:4px 8px 16px}@media (max-width:700px){.app-main{padding-top:12px;padding-inline:18px}.plan-heading{margin-bottom:14px;gap:10px}.plan-heading h1{font-size:1.25rem}.plan-heading div>span{font-size:.74rem}.plan-heading>.btn{min-height:44px;white-space:nowrap}.plan-controls{gap:6px;padding-bottom:5px}.plan-controls .schedule-modes{width:auto}.plan-controls .schedule-modes button{min-width:44px;padding:7px;min-height:38px}.plan-options summary{font-size:.68rem;padding-left:2px}.homework-strip{gap:10px;font-size:.7rem}.homework-strip>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-strip strong{white-space:nowrap}.bottom-nav .nav-label{font-size:.62rem}.btn{min-height:40px}}.scope-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;color:var(--muted);font-size:.8rem;flex-wrap:wrap}.app-main{padding-top:22px}.plan-heading{margin-bottom:12px}.plan-controls{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:9px}.plan-controls .schedule-modes{margin-left:auto}.week-nav{gap:3px;padding:3px;border-radius:17px;background:var(--surface-muted)}.plan-controls .week-nav .btn{min-width:40px;min-height:40px;border-radius:14px;border:0}.plan-controls .week-nav .btn:nth-child(2){padding-inline:15px;background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.course-modes{display:flex;gap:3px;padding:3px;border-radius:18px;background:var(--surface-muted)}.course-modes button{min-height:40px;padding:6px 13px;border:0;border-radius:15px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:740;white-space:nowrap;cursor:pointer}.course-modes button.is-active{background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.plan-options summary{list-style:none;display:grid;place-items:center;min-width:42px;min-height:42px;padding:0;border-radius:14px;background:var(--surface-muted);font-size:1.4rem;line-height:1}.plan-options summary::-webkit-details-marker{display:none}.plan-options>div{border:0;border-radius:20px;padding:10px;box-shadow:var(--shadow-lg)}.plan-options>div .btn{text-align:left;border-radius:11px}.plan-options[open] summary{color:var(--accent-blue)}.modal-panel{border:0;border-radius:28px;box-shadow:0 24px 70px #0003}.modal-header{padding:23px 26px 8px;border-bottom:0}.modal-header h3{font-size:1.4rem;font-weight:760;letter-spacing:-.035em}.modal-body{padding:10px 26px 26px}.modal-panel .input{min-height:48px;padding:12px 15px;border:1px solid transparent;border-radius:15px;background:var(--surface-muted);font:inherit;font-size:.94rem}.modal-panel .input:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.modal-panel label{font-weight:700}.modal-panel .btn{min-height:42px;padding-inline:17px;border-radius:14px}.modal-panel .btn.primary{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.untis-form{display:grid;gap:17px}.untis-form>p{margin:0 0 2px;color:var(--muted);font-size:.83rem;line-height:1.5}.untis-form>label{display:grid;gap:8px;color:var(--text);font-size:.76rem}.untis-form .form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}@media (max-width:880px){.plan-controls .schedule-modes{margin-left:0}.course-modes{order:3}.plan-options{margin-left:auto}}@media (max-width:700px){.app-main{padding-top:9px}.plan-heading{margin-bottom:10px}.plan-controls{gap:7px}.course-modes{order:3;width:100%}.course-modes button{flex:1}.plan-options{margin-left:auto}.plan-options>div{right:0;min-width:210px}.week-nav{gap:0}.plan-controls .week-nav .btn{min-width:35px;min-height:40px}.plan-controls .week-nav .btn:nth-child(2){padding-inline:10px}.modal-header{padding:20px 20px 6px}.modal-body{padding:10px 20px 24px}.modal-panel{border-radius:25px 25px 0 0}}.app-root:has(.schedule-surface),.app-root:has(.schedule-surface) .fit-scale,.app-root:has(.schedule-surface) .fit-scale-inner{height:100dvh;min-height:0;overflow:hidden}.app-root:has(.schedule-surface) .app-main{height:100%;min-height:0;overflow:hidden;padding-bottom:0}.app-root:has(.schedule-surface) .stage{min-width:0}.plan-controls .week-nav .btn:nth-child(2){background:transparent;color:var(--text);box-shadow:none}.plan-controls .week-nav .btn{display:grid;place-items:center}.plan-controls .week-nav .btn:hover{background:var(--surface);color:var(--accent-blue)}.fit-scale-inner{max-width:none}.app-root:has(.schedule-surface) .app-main{padding:14px clamp(12px,1.8vw,28px) 0}.app-root:has(.schedule-surface) .stage{max-width:none}.plan-controls{display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(5px,.7vw,12px);overflow-x:auto;scrollbar-width:none;padding:0 0 12px}.plan-controls::-webkit-scrollbar{display:none}.plan-date{min-width:130px;display:grid;gap:2px;white-space:nowrap;margin-right:auto}.plan-date strong{font-size:.95rem;line-height:1.1;text-transform:capitalize;color:var(--ink);font-weight:760}.plan-date span{font-size:.67rem;color:var(--muted);font-variant-numeric:tabular-nums}.plan-controls .schedule-modes{margin-left:0;flex:none}.plan-controls .week-nav,.plan-controls .course-modes{flex:none}.plan-actions{display:flex;gap:5px;flex:none}.plan-controls .plan-icon{width:42px;height:42px;min-width:42px;padding:0;display:grid;place-items:center;border:0;border-radius:15px;background:var(--surface-muted);color:var(--text)}.plan-icon svg{width:19px;height:19px}.plan-icon:disabled{opacity:.55;cursor:wait}.plan-icon:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}.refresh-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:color-mix(in srgb,var(--page) 44%,transparent);-webkit-backdrop-filter:brightness(.82);backdrop-filter:brightness(.82)}.refresh-overlay .spinner{width:32px;height:32px;border-width:3px}@media (max-width:700px){.app-root:has(.schedule-surface) .app-main{padding:8px 10px calc(72px + env(safe-area-inset-bottom))}.plan-controls{gap:5px;padding-bottom:8px}.plan-date{min-width:96px;margin-right:0}.plan-date strong{font-size:.76rem}.plan-date span{font-size:.59rem}.plan-controls .week-nav .btn{min-width:31px;min-height:36px}.plan-controls .week-nav .btn:nth-child(2){padding-inline:7px}.plan-controls .schedule-modes button,.course-modes button{min-height:36px;padding-inline:8px;font-size:.66rem}.course-modes{order:0;width:auto}.course-modes button{flex:none}.plan-controls .plan-icon{width:36px;height:36px;min-width:36px;border-radius:12px}.plan-icon svg{width:17px;height:17px}}.plan-nav{display:flex;align-items:center;gap:8px;margin-right:auto;flex:none}.plan-nav .plan-date{margin-right:0}.plan-nav .week-nav{margin-left:0}.plan-back{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-bottom:4px;padding:4px 7px;min-height:25px;font-size:.65rem}.plan-back svg{width:13px;height:13px}.plan-controls .course-modes{margin-left:auto}@media (max-width:700px){.plan-nav{gap:4px}.plan-nav .plan-date{min-width:92px}.plan-controls .course-modes{margin-left:0}}.plan-secondary{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto;overflow-x:auto;scrollbar-width:none}.plan-secondary::-webkit-scrollbar{display:none}@media (max-width:700px){.plan-controls{overflow:hidden}.plan-nav .plan-date{min-width:85px}.plan-secondary{gap:5px}.plan-secondary .course-modes,.plan-secondary .plan-actions{flex:none}.plan-controls .week-nav .btn{min-width:29px}.plan-controls .week-nav .btn:nth-child(2){padding-inline:7px}}@media (max-width:700px){.plan-nav .plan-date{min-width:78px}.plan-date strong{font-size:.69rem}.plan-date span{font-size:.55rem}.plan-controls .week-nav .btn{min-width:27px;min-height:34px;padding-inline:5px}.plan-controls .week-nav .btn:nth-child(2){padding-inline:5px}.plan-secondary .course-modes button{min-height:34px;padding:5px;font-size:.6rem}}@media (max-width:700px){.plan-controls{flex-wrap:wrap;overflow:visible;gap:8px}.plan-nav,.plan-secondary{width:100%;margin:0;justify-content:space-between;overflow:visible}.plan-nav .plan-date{min-width:0}.plan-secondary .course-modes{margin:0}.plan-back{margin-bottom:2px}}.plan-view-modes{display:flex;gap:2px;padding:3px;border-radius:14px;background:var(--surface-muted);flex:none}.plan-view-modes button{min-height:36px;padding:7px 12px;border:0;border-radius:11px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:740;cursor:pointer}.plan-view-modes button.is-active{background:var(--surface);color:var(--accent-blue);box-shadow:var(--shadow-sm)}.plan-view-modes button:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}@media (max-width:700px){.app-header{height:48px;padding:7px 14px}.app-root:has(.schedule-surface) .app-main{height:calc(100dvh - 48px);padding:4px 12px 0}.plan-controls{gap:6px;padding-bottom:8px}.plan-nav{min-height:39px;align-items:center}.plan-date{max-width:calc(100vw - 156px)}.plan-date strong{font-size:.87rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-date span{font-size:.62rem}.plan-secondary{gap:6px}.plan-view-modes{padding:2px;border-radius:12px}.plan-view-modes button{min-height:34px;padding:5px 9px;font-size:.68rem}.plan-secondary .course-modes{padding:2px;border-radius:12px}.plan-secondary .course-modes button{min-height:34px;padding:5px 7px;border-radius:10px;font-size:.62rem}.plan-actions{gap:3px}.plan-controls .plan-icon{width:34px;height:34px;min-width:34px;border-radius:10px}.plan-controls .week-nav .btn{min-width:31px;min-height:34px}.plan-controls .week-nav .btn:nth-child(2){padding-inline:7px}.bottom-nav{grid-template-columns:repeat(3,1fr);height:calc(60px + env(safe-area-inset-bottom));padding:3px 10px env(safe-area-inset-bottom)}.bottom-nav .nav-item{min-height:53px;gap:2px}.bottom-nav .nav-item:nth-child(2){color:var(--text);font-weight:770}.bottom-nav .nav-item:nth-child(2).is-active{color:var(--accent-blue)}.bottom-nav .nav-item:nth-child(2) .nav-icon{width:30px;height:27px;display:grid;place-items:center;border-radius:9px;background:var(--surface-muted)}.bottom-nav .nav-item:nth-child(2).is-active .nav-icon{background:var(--primary-soft)}.bottom-nav .nav-dot{right:30%}}@media (max-width:360px){.plan-secondary{flex-wrap:nowrap;gap:3px}.plan-view-modes button{min-height:32px;padding:4px 6px;font-size:.61rem}.plan-secondary .course-modes button{min-height:32px;padding:4px;font-size:.55rem}.plan-controls .plan-icon{width:30px;height:32px;min-width:30px}.plan-actions{gap:2px}.plan-date strong{font-size:.78rem}}.profile-heading{display:flex;align-items:center;gap:14px}.profile-heading>div{min-width:0}.modal-drag-handle{display:none}@media (max-width:700px){html,body,#root{height:100%;overflow:hidden}.app-root:has(.schedule-surface) .fit-scale-inner{height:100dvh;overflow:hidden}.app-root:has(.schedule-surface) .stage{height:100%;min-height:0;display:flex;flex-direction:column}.app-root:has(.schedule-surface) .schedule-surface{min-height:0;flex:1;overflow:hidden!important}.app-root:has(.schedule-surface) .week-planner{height:100%;display:flex;flex-direction:column}.app-root:has(.schedule-surface) .week-scroller{flex:1;max-height:none!important;overflow-y:auto;overscroll-behavior:contain}.app-root:has(.schedule-surface) .app-main{height:calc(100dvh - 108px - env(safe-area-inset-bottom));overflow:hidden}.bottom-nav{border:0;box-shadow:none;background:var(--page);-webkit-backdrop-filter:none;backdrop-filter:none}.bottom-nav .nav-item:before{display:none}.bottom-nav .nav-item:nth-child(2) .nav-icon,.bottom-nav .nav-item:nth-child(2).is-active .nav-icon{background:transparent;width:20px;height:20px}.bottom-nav .nav-item{min-height:56px}.plan-controls .week-nav .btn{min-width:40px;min-height:40px}.plan-controls .plan-icon{width:40px;height:40px;min-width:40px}.plan-secondary .course-modes button,.plan-view-modes button{min-height:40px}.overlay--lesson,.overlay--profile{align-items:flex-end;padding:0;background:#060c1c7a}.overlay--lesson .modal-panel,.overlay--profile .modal-panel{max-width:none!important;width:100%;max-height:min(72dvh,620px);border:0;border-radius:24px 24px 0 0;overflow:auto;animation:sheet-up .24s cubic-bezier(.2,.75,.25,1) both}.overlay--profile .modal-panel{max-height:min(82dvh,740px)}.modal-drag-handle{display:block;width:38px;height:5px;margin:10px auto 0;border-radius:10px;background:var(--line-strong)}.overlay--profile .page-heading{margin:0 0 8px}.overlay--profile .page-heading h1{font-size:1.25rem}.overlay--profile .page-heading>div>span{display:none}.overlay--profile .settings-group{padding:15px 0;gap:8px}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.overlay--lesson .modal-panel,.overlay--profile .modal-panel{animation:none}}@media (hover:none),(pointer:coarse){.nav-item:hover,.btn:hover,.seg-btn:hover,.schedule-modes button:hover,.settings-actions button:hover,.theme-options button:hover,.plan-controls .week-nav .btn:hover{background:transparent;color:inherit}.nav-item.is-active:hover{color:var(--accent-blue)}.hw-card:hover,.hw-add-fab:hover{transform:none;box-shadow:none}}.plan-nav .week-nav{display:flex;align-items:center;gap:3px}.plan-nav .plan-date{min-width:0;margin:0 6px}.plan-nav .plan-today{border:0;background:transparent;color:var(--accent-blue)}.sidebar-profile>span{border-radius:0;background:transparent;color:inherit}@media (max-width:700px){.mobile-shell-profile{width:44px;height:44px;border-radius:0;background:transparent;color:inherit}.plan-controls{display:flex;flex-direction:column-reverse;align-items:stretch;gap:5px;padding-bottom:7px}.plan-nav,.plan-secondary{width:100%;justify-content:space-between}.plan-nav .week-nav{flex:1;justify-content:space-between;min-width:0;background:transparent;padding:0}.plan-nav .plan-date{min-width:0;max-width:none;text-align:center}.plan-date strong{font-size:.88rem}.plan-date span:empty{display:none}.plan-nav .plan-today{flex:none;min-height:36px;padding:5px 7px}.plan-secondary .plan-actions{margin-left:auto}.overlay--sheet{align-items:flex-end;padding:0 0 max(0px,env(safe-area-inset-bottom,0px));background:#060c1c9e}.overlay--sheet .modal-panel{width:100%;max-width:none!important;max-height:min(88dvh,780px);display:flex;flex-direction:column;overflow:hidden;border:0;border-radius:24px 24px 0 0;animation:sheet-up .24s cubic-bezier(.2,.75,.25,1) both;touch-action:pan-y}.overlay--sheet .modal-grab-area{touch-action:none}.overlay--sheet .modal-drag-handle{display:block;width:42px;height:5px;margin:10px auto 0;border-radius:10px;background:var(--line-strong)}.overlay--sheet .modal-header{flex:none;padding-top:11px}.overlay--sheet .modal-close{display:none}.overlay--sheet .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(30px + env(safe-area-inset-bottom,0px))}.overlay--profile .modal-panel{max-height:min(84dvh,740px)}}@media (prefers-reduced-motion:reduce){.overlay--sheet .modal-panel{animation:none!important}}.schedule-access-notice{position:absolute;z-index:5;top:96px;left:50%;transform:translate(-50%);display:grid;gap:7px;width:min(380px,calc(100% - 64px));padding:12px 14px;border-radius:12px;background:var(--surface-muted);color:var(--muted);font-size:.78rem;line-height:1.45}.schedule-access-notice button{justify-self:start;min-height:36px;padding:0;border:0;background:transparent;color:var(--accent-blue);font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:3px;cursor:pointer}@media (max-width:700px){.app-header{height:56px;padding:4px 12px;gap:8px}.app-header .brand{width:40px;min-width:40px;height:44px;padding:0;justify-content:center}.app-header .plan-secondary{flex:1;width:auto;min-width:0}.brand-copy strong{font-size:1.3rem}.app-main{height:calc(100dvh - 120px - env(safe-area-inset-bottom,0px));overflow-y:auto;overflow-x:hidden;padding:12px 16px 24px}.app-root:has(.schedule-surface) .app-main{height:calc(100dvh - 120px - env(safe-area-inset-bottom,0px));padding:0 12px;overflow:hidden}.app-root:has(.schedule-surface) .stage{height:100%;display:flex;flex-direction:column;min-height:0}.plan-controls{flex:none;display:block;padding:2px 0 9px;overflow:visible}.plan-secondary{width:100%;display:flex;gap:6px;align-items:center;margin:0;overflow:visible}.plan-view-modes{padding:3px;border-radius:14px}.plan-view-modes button{min-height:40px;padding:6px 9px;font-size:.69rem;border-radius:11px}.plan-secondary .course-modes{flex:1;min-width:0;padding:0;background:transparent}.plan-secondary .course-modes button{min-width:0;flex:1;min-height:40px;padding:4px 2px;font-size:.62rem;background:transparent;box-shadow:none;border-radius:10px;color:var(--muted)}.plan-secondary .course-modes button.is-active{color:var(--accent-blue)}.plan-actions{margin-left:0;gap:0}.plan-actions .mobile-today{min-height:42px;padding:8px 10px;border:0;border-radius:12px;background:var(--surface-muted);color:var(--text);font-size:.71rem}.plan-actions .plan-icon{display:none}.schedule-surface{min-height:0;flex:1;overflow:hidden!important}.week-planner{display:flex;flex-direction:column;min-height:0;height:100%}.bottom-nav{height:calc(64px + env(safe-area-inset-bottom,0px));padding:4px 12px env(safe-area-inset-bottom,0px);background:var(--page);border-top:1px solid color-mix(in srgb,var(--line) 65%,transparent)}.bottom-nav .nav-item{min-height:55px;gap:5px}.bottom-nav .nav-label{font-size:.63rem}.bottom-nav .nav-item.is-active{color:var(--accent-blue);background:var(--surface-muted)}.profile-heading{align-items:center;gap:16px;margin-bottom:20px}.profile-heading h1{font-size:1.6rem}.profile-heading>div>span{display:none}.hw-root{height:auto!important;min-height:100%;gap:16px!important}.hw-header{margin:0!important;padding:0 0 15px!important;min-height:106px}.hw-header-main{min-width:0}.hw-root .hw-add-fab{position:fixed!important;top:auto!important;right:18px!important;bottom:calc(82px + env(safe-area-inset-bottom,0px));min-height:48px;flex-direction:row;gap:9px;border:0;border-radius:18px;padding:12px 17px;background:var(--accent-blue);color:var(--page);box-shadow:var(--shadow-lg);letter-spacing:0}.hw-root .hw-add-line{background:var(--page)}.hw-root .hw-add-label{font-size:.78rem}.hw-root .hw-list-wrap{overflow:visible!important}.hw-root .hw-scroll-area{overflow:visible!important;max-height:none!important}}@media (min-width:701px){.plan-nav .week-nav .btn:nth-child(2){background:var(--surface);color:var(--text)}}.profile-avatar{display:block;flex:none;width:92px;height:92px}@media (max-width:700px){.plan-secondary .course-modes{position:relative;isolation:isolate;display:flex;padding:3px;border-radius:14px;background:var(--surface-muted)}.plan-secondary .course-modes:before{content:"";position:absolute;z-index:-1;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);border-radius:11px;background:var(--surface);box-shadow:0 1px 3px #0000000b;transition:transform .18s ease-out;transform:translate(calc(var(--course-indicator-position,0)*100%))}.plan-secondary .course-modes button.is-active{background:transparent;color:var(--text)}}@media (prefers-reduced-motion:reduce){.plan-secondary .course-modes:before{transition:none}}@media (max-width:700px){.bottom-nav .nav-icon.nav-avatar{width:28px;height:28px}.app-main>.settings-page{padding:14px 4px 24px}.settings-page .profile-heading{margin-bottom:24px}.settings-page .settings-group{padding:20px 0;gap:14px}.settings-page .settings-actions button,.settings-page .theme-options button{min-height:44px}.plan-secondary .course-modes{height:44px;padding:2px}.plan-secondary .course-modes button{font-size:.68rem;min-height:40px;height:40px}.plan-actions .mobile-today{height:44px;min-height:44px}}@media (max-width:700px){.bottom-nav .nav-item,.bottom-nav .nav-item:nth-child(2){color:var(--muted);font-weight:600;gap:4px;background:transparent}.bottom-nav .nav-item.is-active,.bottom-nav .nav-item:nth-child(2).is-active{color:var(--ink);background:transparent;font-weight:750}.bottom-nav .nav-icon,.bottom-nav .nav-item:nth-child(2) .nav-icon,.bottom-nav .nav-item:nth-child(2).is-active .nav-icon,.bottom-nav .nav-icon.nav-avatar{width:28px;height:28px;background:transparent}.bottom-nav .nav-icon>svg{width:24px;height:24px}.bottom-nav .nav-avatar>svg{width:30px;height:30px;max-width:none;filter:grayscale(1);opacity:.75}.bottom-nav .is-active .nav-avatar>svg{opacity:1}.bottom-nav .nav-avatar .mo-bob>g[fill]{fill:currentColor}.bottom-nav .nav-avatar .mo-bob>g.mo-eyes{fill:var(--page)}.bottom-nav .nav-label{font-size:.67rem;line-height:1.15}.app-root:has(.settings-page) .app-header,.app-root:has(.hw-root) .app-header{height:44px;padding-block:0}.app-root:has(.settings-page) .app-main,.app-root:has(.hw-root) .app-main{padding-top:max(0px,env(safe-area-inset-top,0px));height:calc(100dvh - 108px - env(safe-area-inset-bottom,0px))}.app-main>.settings-page{padding-top:0}}.settings-group h2{display:flex;align-items:center;gap:8px}.settings-group h2>svg{width:18px;height:18px;flex:none;color:var(--muted)}.settings-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:var(--surface-muted)}.settings-actions button:hover{background:color-mix(in srgb,var(--surface-muted) 75%,var(--muted))}.settings-actions button>svg{width:15px;height:15px;flex:none}@media (max-width:700px){.bottom-nav .nav-item{align-items:center;text-align:center}.bottom-nav .nav-icon{position:relative;flex:none}.bottom-nav .nav-avatar>svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.app-root:has(.settings-page) .app-header,.app-root:has(.hw-root) .app-header{display:none}.app-root:has(.settings-page),.app-root:has(.hw-root){padding-top:env(safe-area-inset-top,0px);height:100dvh;min-height:0;overflow:hidden}.app-root:has(.settings-page) .fit-scale,.app-root:has(.hw-root) .fit-scale,.app-root:has(.settings-page) .fit-scale-inner,.app-root:has(.hw-root) .fit-scale-inner{height:100%;min-height:0}.app-root:has(.settings-page) .app-main,.app-root:has(.hw-root) .app-main{height:calc(100dvh - env(safe-area-inset-top,0px) - 64px - env(safe-area-inset-bottom,0px));padding-top:0;padding-bottom:32px;overflow-y:auto;overscroll-behavior-y:contain}.app-main>.settings-page{padding:0 4px 24px}.settings-page .profile-heading{margin-top:0}}@media (max-width:700px){.app-root .hw-root .input.hw-search{border-radius:24px;padding-inline:18px}}@media (min-width:701px) and (pointer:coarse){.app-root:has(.schedule-surface) .stage{height:100%;display:flex;flex-direction:column;min-height:0}.app-root:has(.schedule-surface) .schedule-surface{flex:1;min-height:0}.app-root:has(.schedule-surface) .week-planner{height:100%;min-height:0;display:flex;flex-direction:column}.desktop-week-scroller{flex:1;min-height:0;touch-action:pan-y;overscroll-behavior-x:contain}.quick-preview-card{padding:28px;border-radius:28px}}.schedule-surface{position:relative}.schedule-surface>.schedule-loading{position:absolute;top:4px;right:12px;z-index:12;display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px;border:0;border-radius:16px;background:var(--surface);font-size:.72rem;pointer-events:none}@media (min-width:701px) and (pointer:coarse){.app-header .brand-wordmark{width:145px}.app-header .brand-mobile-mark{width:33px;height:33px}}.schedule-surface>.feedback.error{position:absolute;top:8px;inset-inline:12px;z-index:13;max-height:35%;overflow:auto;background:var(--surface)}
