:root{color-scheme:light;--navy-950: #082b43;--navy-900: #103b58;--navy-800: #174c6c;--navy-700: #28627f;--ink: #123b59;--ink-soft: #5c7588;--ink-faint: #8195a4;--warm-50: #fffdfa;--warm-100: #f8f4ec;--warm-200: #ece6dc;--sky-wash: #dcebf2;--line: rgb(20 69 98 / 16%);--coral: #f15c4b;--coral-soft: #ff8a74;--success: #238163;--warning: #d88624;--danger: #bb433e;--focus: #315f78;--font-display: "Songti SC", "STSong", "Noto Serif SC", SimSun, serif;--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang SC", "Microsoft YaHei UI", sans-serif;--font-data: "SFMono-Regular", "Cascadia Mono", Consolas, monospace;--content-max: 1240px;--gutter: clamp(18px, 4vw, 52px);--radius-control: 12px;--radius-card: 18px;--radius-glass: 26px;--radius-pill: 999px;--glass-white-08: rgb(255 255 255 / 8%);--glass-white-14: rgb(255 255 255 / 14%);--glass-white-22: rgb(255 255 255 / 22%);--glass-white-30: rgb(255 255 255 / 30%);--glass-white-44: rgb(255 255 255 / 44%);--glass-cool-10: rgb(218 235 242 / 10%);--glass-cool-18: rgb(218 235 242 / 18%);--glass-warm-18: rgb(255 250 241 / 18%);--glass-surface-fill: radial-gradient(140% 68% at 48% -18%, rgb(255 255 255 / 22%), transparent 58%), radial-gradient(90% 120% at -8% 58%, rgb(205 230 241 / 13%), transparent 64%), linear-gradient(145deg, rgb(255 255 255 / 14%), rgb(218 235 242 / 10%) 54%, rgb(255 250 241 / 11%));--glass-surface-border: rgb(255 255 255 / 46%);--glass-surface-shadow: 0 20px 58px rgb(18 53 74 / 10%), inset 0 1px 0 rgb(255 255 255 / 74%), inset 0 -1px 0 rgb(23 76 108 / 7%), inset 1px 0 0 rgb(255 255 255 / 30%), inset -1px 0 0 rgb(23 76 108 / 5%);--glass-surface-blur: 12px;--glass-elevated-fill: radial-gradient(120% 65% at 46% -12%, rgb(255 255 255 / 46%), transparent 60%), linear-gradient(145deg, rgb(255 255 255 / 34%), rgb(219 234 241 / 16%) 56%, rgb(255 249 239 / 24%));--glass-elevated-border: rgb(255 255 255 / 64%);--glass-elevated-shadow: 0 26px 72px rgb(8 39 59 / 17%), inset 0 1px 0 rgb(255 255 255 / 84%), inset 0 -1px 0 rgb(22 72 101 / 9%), inset 1px 0 0 rgb(255 255 255 / 38%), inset -1px 0 0 rgb(22 72 101 / 7%);--glass-elevated-blur: 24px;--glass-interactive-fill: linear-gradient(145deg, rgb(255 255 255 / 28%), rgb(222 236 242 / 12%));--glass-interactive-hover: linear-gradient(145deg, rgb(255 255 255 / 38%), rgb(226 239 244 / 18%));--glass-interactive-border: rgb(255 255 255 / 54%);--glass-interactive-shadow: 0 8px 22px rgb(12 47 69 / 10%), inset 0 1px 0 rgb(255 255 255 / 78%), inset 0 -1px 0 rgb(23 76 108 / 7%), inset 1px 0 0 rgb(255 255 255 / 26%), inset -1px 0 0 rgb(23 76 108 / 5%);--glass-focus-ring: 0 0 0 2px rgb(255 253 250 / 72%), 0 0 0 4px rgb(18 59 89 / 22%), inset 0 1px 0 rgb(255 255 255 / 82%);--glass-input-focus-shadow: 0 10px 28px rgb(12 47 69 / 11%), inset 0 1px 0 rgb(255 255 255 / 88%), inset 0 -1px 0 rgb(23 76 108 / 8%);--glass-dark-fill: radial-gradient(110% 85% at 8% 0%, rgb(112 175 205 / 20%), transparent 58%), linear-gradient(145deg, rgb(13 63 91 / 74%), rgb(6 40 62 / 64%));--glass-dark-border: rgb(255 255 255 / 30%);--glass-dark-shadow: 0 24px 62px rgb(3 27 43 / 24%), inset 0 1px 0 rgb(255 255 255 / 40%), inset 0 -1px 0 rgb(0 17 29 / 22%);--glass-scrim: rgb(5 31 48 / 28%);--glass-scrim-blur: 7px;--glass-white: var(--glass-surface-fill);--glass-strong: var(--glass-elevated-fill);--glass-dark: var(--glass-dark-fill);--glass-border: var(--glass-surface-border);--glass-blur: var(--glass-elevated-blur);--shadow-soft: 0 18px 54px rgb(19 52 72 / 12%);--shadow-float: 0 18px 46px rgb(8 39 59 / 18%);--shadow-control: 0 7px 18px rgb(16 55 80 / 12%);--inner-highlight: inset 0 1px 0 rgb(255 255 255 / 78%);--motion-instant: .1s;--motion-fast: .18s;--motion-base: .22s;--motion-slow: .36s;--ease-standard: cubic-bezier(.22, .61, .36, 1);--ease-enter: cubic-bezier(.16, 1, .3, 1);--focus-ring: var(--glass-focus-ring);--dock-edge: 16px;--dock-height: 72px;--dock-blur: 28px;--dock-surface-top: rgb(255 255 255 / 25%);--dock-surface-mid: rgb(232 243 248 / 8%);--dock-surface-bottom: rgb(217 232 239 / 17%);--dock-rim: rgb(255 255 255 / 42%);--dock-highlight: rgb(255 255 255 / 78%);--dock-shadow: 0 18px 44px rgb(8 39 59 / 20%);--dock-bubble-top: rgb(255 255 255 / 34%);--dock-bubble-bottom: rgb(224 238 244 / 9%);--dock-spring-duration: .42s;--dock-spring-fallback: cubic-bezier(.2, .9, .22, 1.08);--route-preview-max-height: min(360px, 48vh);--route-overview-max-height: min(520px, 64vh);--route-dialog-inset: clamp(12px, 3vw, 32px);--workspace-heading-gap: clamp(14px, 2vw, 22px);--workspace-section-space: clamp(42px, 4.5vw, 52px);--guest-content-max: 960px;--guest-header-height: 74px;--guest-section-gap: clamp(24px, 4vw, 46px);--guest-badge-fill: rgb(255 255 255 / 18%);--guest-badge-border: rgb(255 255 255 / 38%);--week-grid-min: 980px;--week-time-column: 112px;--week-row-min: 118px;--week-grid-line: rgb(18 59 89 / 10%);--week-today-fill: rgb(224 238 244 / 28%);--week-course-a: rgb(218 235 242 / 72%);--week-course-b: rgb(255 238 226 / 72%);--week-course-c: rgb(226 237 226 / 72%);--week-course-d: rgb(233 229 241 / 68%);--week-swap-duration: .26s;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility}.glass-surface{--glass-component-fill: var(--glass-surface-fill);--glass-component-border: var(--glass-surface-border);--glass-component-shadow: var(--glass-surface-shadow);--glass-component-blur: var(--glass-surface-blur)}.glass-elevated{--glass-component-fill: var(--glass-elevated-fill);--glass-component-border: var(--glass-elevated-border);--glass-component-shadow: var(--glass-elevated-shadow);--glass-component-blur: var(--glass-elevated-blur)}.glass-interactive{--glass-component-fill: var(--glass-interactive-fill);--glass-component-border: var(--glass-interactive-border);--glass-component-shadow: var(--glass-interactive-shadow)}.glass-dark{--glass-component-fill: var(--glass-dark-fill);--glass-component-border: var(--glass-dark-border);--glass-component-shadow: var(--glass-dark-shadow)}.glass-inset{--glass-component-fill: radial-gradient(120% 100% at 0 0, rgb(255 255 255 / 28%), transparent 54%), linear-gradient(100deg, rgb(210 234 243 / 38%), rgb(252 248 239 / 38%));--glass-component-border: rgb(255 255 255 / 44%);--glass-component-shadow: inset 0 1px 0 rgb(255 255 255 / 72%), inset 0 -1px 0 rgb(23 76 108 / 6%)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;color:var(--ink);background:var(--warm-100)}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}code{font:.92em var(--font-data)}::selection{color:var(--warm-50);background:var(--navy-700)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.icon{display:block;flex:0 0 auto}.mobile-story-title{display:none}.brand-symbol{display:block;flex:0 0 auto;overflow:visible;filter:drop-shadow(0 8px 18px rgb(8 38 58 / 20%))}.brand-symbol__tile,.brand-symbol__glyph,.brand-symbol__orbit,.brand-symbol__node{transform-box:fill-box;transform-origin:center}.brand-symbol__glyph{transition:transform .18s var(--ease-standard)}.brand-symbol.is-animated .brand-symbol__tile,.brand-symbol.is-animated .brand-symbol__orbit,.brand-symbol.is-animated .brand-symbol__arc,.brand-symbol.is-animated .brand-symbol__node{animation-duration:1.2s;animation-timing-function:linear;animation-fill-mode:both}.brand-symbol.is-animated .brand-symbol__tile{animation-name:logo-tile-stage}.brand-symbol.is-animated .brand-symbol__orbit{animation-name:logo-orbit-establish}.brand-symbol.is-animated .brand-symbol__arc{stroke-dasharray:1 1.2;stroke-dashoffset:1.1}.brand-symbol.is-animated .brand-symbol__arc--course{animation-name:logo-course-draw}.brand-symbol.is-animated .brand-symbol__arc--reply{animation-name:logo-reply-draw}.brand-symbol.is-animated .brand-symbol__node--course{animation-name:logo-course-node}.brand-symbol.is-animated .brand-symbol__node--reply{animation-name:logo-reply-node}@keyframes logo-tile-stage{0%{opacity:0;transform:scale(.965);animation-timing-function:cubic-bezier(.4,0,.2,1)}30%,to{opacity:1;transform:scale(1)}}@keyframes logo-orbit-establish{0%,14%{opacity:0;transform:scale(.94) rotate(-10deg)}14%{animation-timing-function:cubic-bezier(.4,0,.2,1)}48%{opacity:.78;transform:scale(1) rotate(0)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes logo-course-draw{0%,12%{opacity:0;stroke-dashoffset:1.1}12%{animation-timing-function:cubic-bezier(.4,0,.2,1)}72%,to{opacity:1;stroke-dashoffset:0}}@keyframes logo-reply-draw{0%,22%{opacity:0;stroke-dashoffset:1.1}22%{animation-timing-function:cubic-bezier(.4,0,.2,1)}82%,to{opacity:1;stroke-dashoffset:0}}@keyframes logo-course-node{0%,66%{opacity:0;transform:scale(.72)}66%{animation-timing-function:cubic-bezier(.16,1,.3,1)}88%,to{opacity:1;transform:scale(1)}}@keyframes logo-reply-node{0%,76%{opacity:0;transform:scale(.72)}76%{animation-timing-function:cubic-bezier(.16,1,.3,1)}96%,to{opacity:1;transform:scale(1)}}.brand-lockup{display:inline-flex;align-items:center;gap:14px;color:var(--ink)}.brand-wording{display:grid;gap:2px;min-width:0}.brand-wording strong{font-size:24px;line-height:1.1;letter-spacing:.06em}.brand-wording small{color:var(--ink-soft);font:12px/1.35 var(--font-display);letter-spacing:.12em;white-space:nowrap}.brand-lockup.compact{gap:10px}.brand-lockup.compact .brand-wording strong{font-size:20px}.brand-lockup.compact .brand-wording small{font-size:10px}.brand-lockup.inverse{color:var(--warm-50)}.brand-lockup.inverse .brand-wording small{color:#fffdfaa3}.icon-button,.text-button,.header-notification{border:0;background:transparent;cursor:pointer}.icon-button,.header-notification{display:inline-grid;width:44px;height:44px;place-items:center;border-radius:50%;transition:color var(--motion-fast) ease,background-color var(--motion-fast) ease,transform var(--motion-instant) ease}.text-button{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:0 8px;color:var(--ink-soft);font-size:13px;transition:color var(--motion-fast) ease,transform var(--motion-instant) ease}.primary-button,.secondary-button,.side-cta,.hero-action{min-height:48px;border:0;border-radius:var(--radius-control);cursor:pointer;transition:transform var(--motion-instant) ease,box-shadow var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 24px;color:var(--warm-50);background:linear-gradient(135deg,var(--navy-800),var(--navy-950));box-shadow:var(--shadow-control),var(--inner-highlight);font-weight:700}.primary-button.wide{width:100%;min-height:58px;font:700 17px var(--font-display);letter-spacing:.08em}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border:1px solid var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);font-weight:650}.side-cta{display:inline-flex;width:max-content;align-items:center;justify-content:center;gap:18px;padding:0 22px;color:var(--warm-50);background:var(--navy-900);box-shadow:var(--shadow-control);font-weight:700}.side-cta.secondary{border:1px solid var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.button-loader{width:18px;height:18px;border:2px solid rgb(255 255 255 / 35%);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite}.spin{display:inline-block;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(hover:hover)and (pointer:fine){.icon-button:hover,.header-notification:hover{color:var(--coral)}.icon-button.glass-interactive:hover,.header-notification.glass-interactive:hover,.secondary-button:hover,.side-cta.secondary:hover{transform:translateY(-1px);background:var(--glass-interactive-hover);border-color:#ffffffad;box-shadow:0 11px 28px #0c2f4521,inset 0 1px #ffffffe0,inset 0 -1px #174c6c12}.text-button:hover{color:var(--coral)}.primary-button:hover,.side-cta:not(.secondary):hover,.hero-action:hover{transform:translateY(-1px);box-shadow:0 11px 24px #082d452e}.brand-lockup:hover .brand-symbol__glyph{transform:rotate(2deg)}}.icon-button:active,.text-button:active,.primary-button:active,.secondary-button:active,.side-cta:active,.hero-action:active{transform:scale(.99)}.boot-screen{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:18px;color:var(--ink);background:radial-gradient(circle at 50% 35%,#fff 0,var(--warm-100) 56%,#e6edf0 100%)}.boot-screen p{margin:0;color:var(--ink-soft);font-size:14px;letter-spacing:.08em}.login-page{position:relative;min-height:100dvh;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 1fr;gap:0 32px;isolation:isolate;overflow:hidden;padding:28px max(38px,calc((100vw - 1390px)/2)) 32px;color:var(--warm-50);background:var(--navy-950)}.login-atmosphere,.login-wash,.login-grid{position:absolute;inset:0;z-index:-3;pointer-events:none}.login-atmosphere{background:url(/assets/atmosphere/desktop-stage.jpg) center / cover no-repeat;transform:scale(1.015);animation:atmosphere-settle .9s var(--ease-enter) both}.login-wash{z-index:-2;background:linear-gradient(90deg,#05263ca8,#06273c5e 47%,#fffbf314 62%,#fffbf33d),linear-gradient(180deg,rgb(5 31 49 / 12%),transparent 65%,rgb(5 31 49 / 20%))}.login-grid{z-index:-1;width:58%;opacity:.13;background-image:linear-gradient(rgb(255 255 255 / 25%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 25%) 1px,transparent 1px);background-size:30px 30px;-webkit-mask-image:linear-gradient(90deg,#000 0 72%,transparent 100%);mask-image:linear-gradient(90deg,#000 0 72%,transparent 100%)}@keyframes atmosphere-settle{0%{opacity:.7;transform:scale(1.03)}to{opacity:1;transform:scale(1.015)}}.login-header{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;justify-content:space-between;z-index:2}.login-story{grid-column:1 / 7;grid-row:2;position:relative;align-self:center;padding:34px 0 20px;animation:login-story-in .7s var(--ease-enter) 80ms both}@keyframes login-story-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.login-mobile-brand{display:none}.login-story h1{max-width:760px;margin:0;font:500 clamp(52px,5.2vw,82px) / 1.12 var(--font-display);letter-spacing:-.055em;text-wrap:balance;text-shadow:0 4px 28px rgb(3 27 43 / 22%)}.login-story-copy{margin:24px 0 0;color:#fffdfad4;font:18px/1.7 var(--font-display);letter-spacing:.04em}.login-rhythm{position:relative;width:min(470px,90%);display:grid;gap:10px;margin:30px 0 0;padding:0;list-style:none}.login-rhythm:before{content:"";position:absolute;left:70px;top:20px;bottom:20px;width:1px;background:#ffffff6b}.login-rhythm li{display:grid;grid-template-columns:58px 16px 1fr;align-items:center;gap:10px;min-height:50px}.login-rhythm time{font:13px var(--font-data);color:#ffffffc2}.rhythm-pin{position:relative;z-index:1;width:8px;height:8px;margin:auto;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #ffffff14}.login-rhythm li.is-current .rhythm-pin{width:12px;height:12px;background:var(--coral);box-shadow:0 0 0 5px #f15c4b33}.login-rhythm li>div{display:grid;padding:13px 18px;border:1px solid rgb(255 255 255 / 14%);border-radius:12px;background:linear-gradient(145deg,#10405b61,#ffffff0d);box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #00121e1f}.login-rhythm li.is-current>div{border-color:#ffffff52;background:linear-gradient(145deg,#ffffff26,#5590ae12)}.login-rhythm strong{font-size:14px}.login-sheet{grid-column:8 / 13;grid-row:2;width:min(100%,520px);align-self:center;justify-self:end;position:relative;padding:clamp(32px,4vw,52px);border:1px solid var(--glass-component-border);border-radius:var(--radius-glass);color:var(--ink);background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(var(--glass-component-blur)) saturate(128%) contrast(102%);-webkit-backdrop-filter:blur(var(--glass-component-blur)) saturate(128%) contrast(102%);animation:login-sheet-in .72s var(--ease-enter) .16s both}@keyframes login-sheet-in{0%{opacity:0;transform:translateY(16px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}.eyebrow{margin:0;color:var(--coral);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.login-sheet h2{margin:0 0 28px;font:700 clamp(44px,4vw,64px) / 1.06 var(--font-display);letter-spacing:-.055em}.login-form{display:grid;gap:13px}.login-token-heading,.label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-token-heading label,.field-block>label,.label-row label{font-size:13px;font-weight:760}.login-token-heading span{color:var(--ink-faint);font:11px var(--font-data)}.login-token-heading span.complete{color:var(--success)}.login-token-heading span.invalid{color:var(--danger)}.secret-control{min-height:52px;display:flex;align-items:center;gap:10px;border:1px solid rgb(255 255 255 / 58%);border-radius:var(--radius-control);padding:0 6px 0 15px;color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,transform var(--motion-instant) ease}.secret-control:focus-within{border-color:#123b593d;box-shadow:var(--glass-input-focus-shadow);background:var(--glass-interactive-hover)}.secret-control.token-ready{border-color:#23816373}.secret-control.token-invalid{border-color:#bb433e94}.secret-control input{min-width:0;flex:1;height:48px;border:0;outline:0;color:var(--ink);background:transparent}.secret-control input:focus,.secret-control input:focus-visible{outline:0;box-shadow:none}.daily-token-control input{font-family:var(--font-data);letter-spacing:.04em}.secret-control input::placeholder{color:#93a4af;letter-spacing:0}.field-note{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--ink-soft);font-size:11px;line-height:1.55}.field-note .icon{margin-top:1px}.token-expiry{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:10px;color:var(--ink-soft);background:#daebf27a;font-size:11px}.token-expiry strong{color:var(--coral)}.form-error{margin:0;color:var(--danger);font-size:12px;line-height:1.5}.app-shell{position:relative;min-height:100vh;isolation:isolate;overflow:clip;background:linear-gradient(180deg,#e8eff2 0 610px,var(--warm-100) 750px,#f5f1e9 100%)}.dashboard-atmosphere,.dashboard-wash,.paper-grid{position:absolute;inset:0 0 auto;height:680px;z-index:-3;pointer-events:none}.dashboard-atmosphere{background:url(/assets/atmosphere/desktop-stage.jpg) center 42% / cover no-repeat}.dashboard-wash{z-index:-2;background:linear-gradient(90deg,#05293f8f,#082e453d 43%,#f7f4ed1c 67%,#f7f4ed57),linear-gradient(180deg,rgb(7 37 56 / 18%),transparent 62%,var(--warm-100) 96%)}.paper-grid{z-index:-1;height:100%;opacity:.045;background-image:linear-gradient(var(--navy-900) 1px,transparent 1px),linear-gradient(90deg,var(--navy-900) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:linear-gradient(#000,transparent 78%);mask-image:linear-gradient(#000,transparent 78%)}.topbar{position:sticky;top:0;z-index:30;min-height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:0 max(var(--gutter),calc((100vw - var(--content-max)) / 2));color:var(--warm-50);border-bottom:1px solid rgb(255 255 255 / 10%);background:radial-gradient(80% 145% at 18% -30%,rgb(115 174 202 / 16%),transparent 62%),linear-gradient(180deg,#06283da3,#06283d40);box-shadow:inset 0 1px #ffffff29,0 12px 34px #031d2d17;backdrop-filter:blur(16px) saturate(125%) contrast(102%);-webkit-backdrop-filter:blur(16px) saturate(125%) contrast(102%)}.topbar:after{content:"";position:absolute;inset:auto var(--gutter) 0;height:1px;background:#ffffff1c}.topbar-brand{min-width:0}.desktop-nav{justify-self:center;display:flex;min-height:56px;align-items:center;gap:34px;font-size:13px;font-weight:650}.desktop-nav a{position:relative;min-height:48px;display:grid;place-items:center;color:#ffffffa6;transition:color var(--motion-fast) ease}.desktop-nav a:after{content:"";position:absolute;bottom:2px;width:0;height:2px;border-radius:99px;background:var(--coral);transition:width var(--motion-base) var(--ease-standard)}.desktop-nav a.active,.desktop-nav a:hover{color:#fff}.desktop-nav a.active:after,.desktop-nav a:hover:after{width:28px}.topbar-actions,.topbar-quick-actions{display:flex;align-items:center;gap:8px}.semester-picker{min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--glass-interactive-border);border-radius:var(--radius-pill);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.semester-picker i{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px #2381631f}.semester-picker select{max-width:190px;border:0;outline:0;appearance:none;color:inherit;background:transparent;font-size:12px;font-weight:700;cursor:pointer}.semester-picker select:focus,.semester-picker select:focus-visible{outline:0;box-shadow:none}.semester-picker:focus-within{border-color:#123b5933;box-shadow:var(--glass-input-focus-shadow)}.header-notification{position:relative;border:1px solid rgb(255 255 255 / 16%);color:var(--warm-50);background:linear-gradient(145deg,#ffffff1f,#ffffff08);box-shadow:inset 0 1px #fff3,0 7px 18px #031d2d1a}.header-notification>span{position:absolute;top:7px;right:7px;width:9px;height:9px;border:2px solid var(--warm-50);border-radius:50%;background:var(--coral)}.topbar .icon-button,.topbar .text-button{color:var(--warm-50)}.topbar .refresh-button,.topbar .logout-button{border:1px solid transparent;border-radius:var(--radius-pill);background:linear-gradient(145deg,rgb(255 255 255 / 8%),transparent);box-shadow:inset 0 1px #ffffff1f}@media(hover:hover)and (pointer:fine){.semester-picker:hover{border-color:#ffffffb8;background:var(--glass-interactive-hover);box-shadow:0 11px 28px #0c2f4521,inset 0 1px #ffffffe0}.topbar .refresh-button:hover,.topbar .logout-button:hover,.topbar .header-notification:hover{border-color:#ffffff3d;background:linear-gradient(145deg,#ffffff2b,#ffffff0d);box-shadow:0 9px 22px #031d2d21,inset 0 1px #ffffff47}}.main-content{position:relative;z-index:1;padding-bottom:28px}.page-section{width:min(var(--content-max),calc(100% - (2 * var(--gutter))));margin:0 auto;scroll-margin-top:92px}.overview-section{padding:22px 0 72px}.hero-stage{min-height:430px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(520px,1.05fr);align-items:center;gap:clamp(28px,3.2vw,48px)}.hero-statement{align-self:center;color:var(--warm-50)}.hero-statement h1{max-width:610px;margin:0;font:500 clamp(40px,3.9vw,56px) / 1.12 var(--font-display);letter-spacing:-.055em;text-shadow:0 4px 28px rgb(3 27 43 / 20%)}.hero-statement h1 span{display:block;white-space:nowrap}.hero-statement>p{margin:22px 0 0;color:#ffffffd9;font:17px/1.7 var(--font-display);letter-spacing:.03em}.statement-rule{width:48px;height:1px;margin:28px 0 20px;background:#ffffffa8}.hero-statement small{color:#ffffffad;font:9px/1.7 var(--font-data);letter-spacing:.25em}.next-hero{min-height:300px;display:grid;grid-template-columns:minmax(0,1fr) 188px;align-items:center;gap:18px;padding:clamp(30px,4vw,48px);border:1px solid var(--glass-component-border);border-radius:var(--radius-glass);color:var(--warm-50);background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(var(--glass-component-blur)) saturate(132%) contrast(103%);-webkit-backdrop-filter:blur(var(--glass-component-blur)) saturate(132%) contrast(103%)}.next-card-copy{min-width:0}.hero-label{margin:0 0 11px;color:#ffffffb8;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.next-card-copy h2{margin:0;font:650 clamp(37px,4vw,54px) / 1.08 var(--font-display);letter-spacing:-.045em;text-wrap:balance}.next-hero.is-empty .next-card-copy h2{font-size:clamp(34px,3.5vw,46px)}.hero-meta{display:grid;gap:9px;margin:22px 0 0;color:#ffffffd1;font-size:13px}.hero-meta span{display:inline-flex;align-items:center;gap:8px}.hero-empty{margin:16px 0 0;color:#ffffffad;font-size:13px;line-height:1.7}.hero-action{width:max-content;display:inline-flex;align-items:center;gap:32px;margin-top:24px;padding:0 22px;color:var(--warm-50);background:linear-gradient(135deg,#206489f0,#082e46f5);box-shadow:inset 0 1px #ffffff5c,0 8px 22px #031d2d38;font:650 15px var(--font-display)}.countdown-dial{position:relative;width:164px;aspect-ratio:1;display:grid;place-content:center;justify-items:center;text-align:center}.countdown-dial svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.countdown-dial circle{fill:none;stroke-width:5}.dial-track{stroke:#d3e4ec5c}.dial-value{stroke:var(--coral-soft);stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--dial-progress));transition:stroke-dashoffset .9s linear}.countdown-dial span{color:#ffffffad;font-size:10px;letter-spacing:.08em}.countdown-dial strong{max-width:128px;margin-top:6px;font:650 22px/1.18 var(--font-display)}.countdown-dial em{max-width:128px;margin-top:3px;color:#ffffffc2;font:normal 12px/1.25 var(--font-data)}.route-disclosure{grid-column:1 / -1;margin-top:2px;overflow:hidden;border:1px solid rgb(255 255 255 / 18%);border-radius:14px;color:var(--warm-50);background:linear-gradient(145deg,#ffffff1c,#c5e0ed0d);box-shadow:inset 0 1px #ffffff3d,inset 0 -1px #0014201f}.route-disclosure summary{min-height:48px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 12px;cursor:pointer;list-style:none}.route-disclosure summary::-webkit-details-marker{display:none}.route-summary-icon{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 18%);border-radius:50%;color:#ffffffdb;background:#ffffff14;box-shadow:inset 0 1px #ffffff38}.route-summary-copy{min-width:0;display:grid;gap:2px}.route-summary-copy small{color:#ffffff94;font-size:9px;font-weight:650;letter-spacing:.08em}.route-summary-copy strong{overflow:hidden;font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.route-summary-action{display:inline-flex;align-items:center;gap:6px;color:#ffffffa8;font-size:10px;font-weight:650;white-space:nowrap}.route-summary-action .icon{transition:transform var(--motion-base) var(--ease-enter)}.route-disclosure[open] .route-summary-action .icon{transform:rotate(180deg)}.route-preview-shell{padding:0 10px 10px;border-top:1px solid rgb(255 255 255 / 12%);animation:route-preview-in var(--motion-base) var(--ease-enter) both}.route-image-button{position:relative;width:100%;display:block;margin-top:10px;padding:0;overflow:hidden;border:1px solid rgb(255 255 255 / 22%);border-radius:11px;background:#031c2c47;box-shadow:0 12px 34px #0217252e,inset 0 1px #fff3;cursor:zoom-in}.route-image-button img{width:auto;max-width:100%;height:auto;max-height:var(--route-preview-max-height);display:block;margin-inline:auto;object-fit:contain}.route-image-button>span{position:absolute;right:9px;bottom:9px;min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid rgb(255 255 255 / 32%);border-radius:var(--radius-pill);color:var(--warm-50);background:#052639b8;box-shadow:0 7px 18px #02142038,inset 0 1px #ffffff38;font-size:9px;font-weight:700;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@keyframes route-preview-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.campus-route-overview{margin-top:18px;scroll-margin-top:96px;border-color:var(--glass-surface-border);border-radius:var(--radius-card);color:var(--ink);background:var(--glass-surface-fill);box-shadow:var(--glass-surface-shadow);backdrop-filter:blur(var(--glass-surface-blur)) saturate(120%) contrast(101%);-webkit-backdrop-filter:blur(var(--glass-surface-blur)) saturate(120%) contrast(101%)}.campus-route-overview summary{min-height:64px;padding:10px 16px}.campus-route-overview .route-summary-icon{border-color:#123b5921;color:var(--navy-800);background:#ffffff47;box-shadow:inset 0 1px #ffffffc7}.campus-route-overview .route-summary-copy small{color:var(--coral)}.campus-route-overview .route-summary-copy strong{color:var(--ink);font-size:13px}.campus-route-overview .route-summary-action{color:var(--ink-soft)}.campus-route-overview .route-preview-shell{padding:0 14px 14px;border-top-color:var(--line)}.campus-route-overview .route-image-button{margin-top:14px;border-color:#ffffff94;background:#ebf2f18a;box-shadow:0 16px 42px #08273b21,inset 0 1px #ffffffc7}.campus-route-overview .route-image-button img{max-height:var(--route-overview-max-height)}.route-map-dialog{width:min(1180px,calc(100vw - (var(--route-dialog-inset) + var(--route-dialog-inset))));max-width:none;max-height:calc(100dvh - (var(--route-dialog-inset) + var(--route-dialog-inset)));margin:auto;padding:0;overflow:visible;border:0;border-radius:var(--radius-glass);color:var(--ink);background:transparent;opacity:0;transform:translateY(8px) scale(.99);transition:opacity .24s var(--ease-enter),transform .24s var(--ease-enter),overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.route-map-dialog[open]{opacity:1;transform:translateY(0) scale(1)}.route-map-dialog::backdrop{background:#051f3000;backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);-webkit-backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);transition:background-color .24s ease,overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.route-map-dialog[open]::backdrop{background:#051f3070}@starting-style{.route-map-dialog[open]{opacity:0;transform:translateY(8px) scale(.99)}.route-map-dialog[open]::backdrop{background:#051f3000}}.route-map-sheet{max-height:calc(100dvh - (var(--route-dialog-inset) + var(--route-dialog-inset)));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;padding:16px;border:1px solid var(--glass-elevated-border);border-radius:var(--radius-glass);background:radial-gradient(110% 60% at 50% -12%,rgb(255 255 255 / 72%),transparent 62%),linear-gradient(145deg,#fffdf9ad,#daeaf175 58%,#fff9ef8a);box-shadow:0 34px 100px #041b2a52,inset 0 1px #fffffff0,inset 0 -1px #1648651a;backdrop-filter:blur(28px) saturate(122%) contrast(102%);-webkit-backdrop-filter:blur(28px) saturate(122%) contrast(102%)}.route-map-toolbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 4px 13px}.route-map-toolbar span{display:block;margin-bottom:4px;color:var(--coral);font-size:9px;font-weight:750;letter-spacing:.12em}.route-map-toolbar h2{margin:0;font:650 clamp(20px,3vw,30px)/1.15 var(--font-display)}.route-map-close{flex:0 0 auto;border:1px solid var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.route-map-canvas{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;margin:0;overflow:auto;overscroll-behavior:contain;border:1px solid rgb(255 255 255 / 54%);border-radius:16px;background:#eef3ee8a;box-shadow:inset 0 1px #ffffffd1,inset 0 -1px #16486514}.route-map-canvas img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 176px);display:block;margin-inline:auto;object-fit:contain;touch-action:pan-x pan-y pinch-zoom}.route-map-canvas figcaption{min-height:42px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:11px;font-weight:650}@media(hover:hover)and (pointer:fine){.route-disclosure summary:hover{background:#ffffff0f}.route-image-button:hover{box-shadow:0 15px 40px #0217253d,inset 0 1px #ffffff42}.route-map-close:hover{color:var(--coral);background:var(--glass-interactive-hover)}}.day-plan-block{padding-top:54px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:22px}.section-heading h2{margin:0;font:650 clamp(30px,3.2vw,44px) / 1.08 var(--font-display);letter-spacing:-.045em}.day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.day-sheet{position:relative;min-height:315px;padding:25px;border:1px solid var(--glass-component-border);border-radius:var(--radius-card);background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(var(--glass-component-blur)) saturate(122%) contrast(101%);-webkit-backdrop-filter:blur(var(--glass-component-blur)) saturate(122%) contrast(101%)}.day-sheet.accent:before{content:"";position:absolute;top:0;left:20px;right:20px;height:3px;border-radius:0 0 99px 99px;background:var(--coral)}.day-sheet header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:17px;border-bottom:1px solid var(--line)}.day-sheet header p{margin:0 0 5px;color:var(--coral);font-size:11px;font-weight:800}.day-sheet header h3{margin:0;font:650 20px/1.15 var(--font-display);letter-spacing:-.02em}.course-count{padding:6px 9px;border-radius:6px;color:var(--navy-700);background:#dbebf2b3;font-size:10px;font-weight:750;white-space:nowrap}.timeline{display:grid;gap:18px;margin:20px 0 0;padding:0;list-style:none}.timeline li{position:relative;display:grid;grid-template-columns:55px 15px 1fr;align-items:start;gap:10px;min-height:54px}.timeline time{display:grid;gap:4px;color:var(--ink);font:700 14px var(--font-data)}.timeline time small{color:var(--ink-faint);font-size:10px;font-weight:500}.timeline-pin{position:relative;width:11px;height:11px;margin-top:3px;border:2px solid #fff;border-radius:50%;background:var(--coral);box-shadow:0 0 0 2px #f15c4b47}.timeline li:not(:last-child) .timeline-pin:after{content:"";position:absolute;top:10px;left:3px;width:1px;height:56px;background:#123b592e}.timeline-copy{min-width:0}.timeline-copy strong{display:block;font-size:14px;line-height:1.45}.timeline-copy p{margin:4px 0 0;color:var(--ink-soft);font-size:11px;line-height:1.55}.timeline-copy small{display:block;margin-top:4px;color:var(--warning);font-size:10px}.empty-day{height:210px;display:grid;place-content:center;justify-items:center;color:var(--ink-soft);text-align:center}.empty-day span{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font:600 18px var(--font-display)}.empty-day p{margin:10px 0 2px;color:var(--ink);font-weight:700}.empty-day small{font-size:11px}.sync-section,.notification-section,.archive-section{display:block;padding:var(--workspace-section-space) 0}.section-side-heading{min-width:0;display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:var(--workspace-heading-gap)}.section-side-heading .section-heading{min-width:0;flex:1;margin-bottom:0}.section-side-heading .side-cta{flex:0 0 auto;margin:0}.sync-column{min-width:0}.sync-paper,.ledger-paper,.semester-list,.import-notes{border:1px solid var(--glass-component-border);background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow)}.sync-paper,.ledger-paper,.semester-list{backdrop-filter:blur(var(--glass-component-blur)) saturate(120%) contrast(101%);-webkit-backdrop-filter:blur(var(--glass-component-blur)) saturate(120%) contrast(101%)}.sync-paper{padding:clamp(22px,3vw,34px);border-radius:var(--radius-card)}.sync-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;margin-bottom:18px}.sync-steps>div{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;min-width:0;color:var(--ink-faint)}.sync-steps>div>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#b9cbd5;box-shadow:inset 0 1px #fff9;font:700 13px var(--font-data)}.sync-steps>div.active>span{background:linear-gradient(135deg,var(--coral),#ef8067)}.sync-steps>div.done>span{background:var(--success)}.sync-steps p{min-width:0;display:grid;gap:3px;margin:0}.sync-steps strong{color:var(--ink);font-size:12px;white-space:nowrap}.sync-help-trigger{min-height:44px;display:inline-flex;align-items:center;gap:6px;margin:-8px 0;padding:0 3px;border:0;color:var(--ink);background:transparent;cursor:pointer;font-size:10px;font-weight:700;white-space:nowrap;transition:color var(--motion-fast) ease,transform var(--motion-instant) ease}.sync-help-trigger:active{transform:scale(.99)}.sync-form{display:grid;gap:18px}.field-block{display:grid;gap:8px;min-width:0}.sync-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.secret-control.large{min-height:54px}.sync-submit{min-width:178px}.context-fields{display:grid;grid-template-columns:1.2fr 1fr .55fr .9fr;gap:12px;padding:16px;border:1px solid rgb(255 255 255 / 42%);border-radius:14px;background:linear-gradient(145deg,#daebf23d,#fffaf129);box-shadow:inset 0 1px #ffffff94,inset 0 -1px #174c6c0d}.context-fields input,.context-fields select,.ledger-tools select{width:100%;min-height:44px;border:1px solid var(--glass-interactive-border);border-radius:9px;padding:0 11px;outline:0;color:var(--ink);background:var(--glass-interactive-fill);box-shadow:inset 0 1px #ffffffad,inset 0 -1px #174c6c0f;transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease}.context-fields input:focus,.context-fields select:focus,.ledger-tools select:focus{border-color:#123b5933;box-shadow:var(--glass-input-focus-shadow)}.context-warning{grid-column:1 / -1;margin:0;color:var(--warning);font-size:10px;line-height:1.55}.enter-fields{animation:compact-enter var(--motion-slow) var(--ease-enter) both}@keyframes compact-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sync-progress{min-height:78px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 16px;border:1px solid var(--glass-component-border);border-radius:13px;background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow)}.progress-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--navy-700);background:#d3e8f1c2}.sync-progress.running .progress-icon{animation:pulse-scale 1.4s ease-in-out infinite alternate}@keyframes pulse-scale{0%{transform:scale(.96)}to{transform:scale(1.04)}}.progress-copy{min-width:0}.progress-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-size:11px}.progress-caption span{font-weight:750}.progress-caption strong{font:700 11px var(--font-data)}.sync-progress progress{width:100%;height:4px;display:block;overflow:hidden;margin-top:9px;border:0;border-radius:99px;appearance:none}.sync-progress progress::-webkit-progress-bar{background:#123b591c}.sync-progress progress::-webkit-progress-value{background:linear-gradient(90deg,var(--navy-700),var(--coral));transition:width var(--motion-base) var(--ease-standard)}.sync-progress progress::-moz-progress-bar{background:linear-gradient(90deg,var(--navy-700),var(--coral))}.week-track{display:flex;gap:3px;margin-top:6px}.week-track span{height:2px;flex:1;border-radius:99px;background:#123b591a}.week-track span.done{background:var(--navy-700)}.week-track span.current{background:var(--coral)}.courses-found{color:var(--success);font:700 10px var(--font-data)}.sync-progress>.form-error{grid-column:2 / -1}.diff-strip{display:flex;flex-wrap:wrap;gap:10px}.diff-strip span{padding:7px 10px;border:1px solid rgb(255 255 255 / 40%);border-radius:8px;color:var(--ink-soft);background:linear-gradient(145deg,#ffffff47,#daebf21f);box-shadow:inset 0 1px #fff9;font-size:10px}.diff-strip b{color:var(--ink)}.download-link{min-height:44px;display:inline-flex;width:max-content;align-items:center;gap:8px;color:var(--navy-700);font-size:12px;font-weight:700}.sync-actions{display:flex;align-items:center;justify-content:space-between;gap:20px}.check-row{display:flex;flex-wrap:wrap;gap:14px}.check-row label{display:inline-flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:11px}.check-row input{accent-color:var(--navy-700)}.fallback-panel{margin-top:12px;border:1px solid var(--glass-surface-border);border-radius:13px;background:var(--glass-surface-fill);box-shadow:inset 0 1px #ffffffa8,inset 0 -1px #174c6c0f}.fallback-panel summary{min-height:48px;display:flex;align-items:center;gap:8px;padding:0 16px;cursor:pointer;color:var(--ink-soft);font-size:11px;font-weight:650;list-style:none}.fallback-panel summary .icon:last-child{margin-left:auto}.fallback-panel[open] summary .icon:last-child{transform:rotate(180deg)}.fallback-panel form{display:grid;gap:14px;padding:0 16px 16px}.file-drop{min-height:88px;display:grid;place-content:center;justify-items:center;gap:7px;border:1px dashed rgb(18 59 89 / 26%);border-radius:10px;color:var(--ink-soft);cursor:pointer;font-size:11px}.file-drop{background:linear-gradient(145deg,#ffffff2e,#daebf21a);box-shadow:inset 0 1px #ffffff75;transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,transform var(--motion-instant) ease}.file-drop:focus-within{border-color:#123b5933;box-shadow:var(--glass-input-focus-shadow)}.file-drop input{position:absolute;inline-size:1px;block-size:1px;clip:rect(0 0 0 0);overflow:hidden}.cookie-help-dialog{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:visible;border:0;border-radius:var(--radius-glass);color:var(--ink);background:transparent;opacity:0;transform:translateY(10px) scale(.985);transition:opacity .24s var(--ease-enter),transform .24s var(--ease-enter),overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.cookie-help-dialog[open]{opacity:1;transform:translateY(0) scale(1)}.cookie-help-dialog::backdrop{background:#051f3000;backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);-webkit-backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);transition:background-color .24s ease,overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.cookie-help-dialog[open]::backdrop{background:var(--glass-scrim)}@starting-style{.cookie-help-dialog[open]{opacity:0;transform:translateY(10px) scale(.985)}.cookie-help-dialog[open]::backdrop{background:#051f3000}}.cookie-help-sheet{position:relative;max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:1px solid var(--glass-component-border);border-radius:var(--radius-glass);background:radial-gradient(120% 62% at 48% -10%,rgb(255 255 255 / 68%),transparent 62%),linear-gradient(145deg,#fffdf985,#dcecf357 58%,#fff9ef6b);box-shadow:0 30px 90px #051f3045,inset 0 1px #ffffffeb,inset 0 -1px #1648651a;backdrop-filter:blur(26px) saturate(124%) contrast(101%);-webkit-backdrop-filter:blur(26px) saturate(124%) contrast(101%)}.cookie-help-sheet:before{content:"";position:absolute;inset:0 auto auto 26px;width:54px;height:3px;border-radius:0 0 99px 99px;background:var(--coral)}.cookie-help-topline{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px}.cookie-help-topline>span{display:inline-flex;align-items:center;gap:8px;color:var(--navy-700);font-size:11px;font-weight:750;letter-spacing:.08em}.cookie-help-close{flex:0 0 auto;border:1px solid var(--glass-interactive-border);color:var(--ink-soft);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.cookie-help-heading{margin-top:12px}.cookie-help-heading p{margin:0 0 8px;color:var(--coral);font:700 9px var(--font-data);letter-spacing:.14em}.cookie-help-heading h2{margin:0;font:700 clamp(27px,4.5vw,34px)/1.2 var(--font-display);letter-spacing:.03em}.cookie-help-heading>span{display:block;margin-top:8px;color:var(--ink-soft);font-size:12px;line-height:1.6}.cookie-help-path{display:grid;gap:8px;margin:22px 0;padding:0;list-style:none}.cookie-help-path li{min-height:66px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;padding:10px 13px;border:1px solid rgb(255 255 255 / 42%);border-radius:13px;background:linear-gradient(145deg,#ffffff42,#daebf21f);box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #1648650d}.cookie-help-path li>b{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--navy-800);font:700 11px var(--font-data)}.cookie-help-path li:last-child>b{background:var(--coral)}.cookie-help-path p{min-width:0;display:grid;gap:3px;margin:0}.cookie-help-path strong{font-size:13px;line-height:1.4}.cookie-help-path span{color:var(--ink-soft);font-size:12px;line-height:1.5}.cookie-help-path code,.cookie-help-path kbd{padding:2px 5px;border:1px solid rgb(18 59 89 / 10%);border-radius:5px;color:var(--navy-800);background:#daebf294;font:600 .92em var(--font-data);white-space:nowrap}.cookie-help-confirm{width:100%}@media(hover:hover)and (pointer:fine){.sync-help-trigger:hover{color:var(--coral)}.cookie-help-close:hover{color:var(--coral);background:var(--glass-interactive-hover)}}.notification-section{border-top:1px solid rgb(18 59 89 / 8%)}.ledger-paper{display:flex;overflow:hidden;flex-direction:column;border-radius:var(--radius-card)}.ledger-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line)}.segmented{display:flex;align-items:center;gap:5px;overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{min-height:34px;padding:0 14px;border:1px solid transparent;border-radius:9px;color:var(--ink-soft);background:transparent;cursor:pointer;font-size:10px;font-weight:650;white-space:nowrap;transition:color var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,transform var(--motion-instant) ease}.segmented button.active{border-color:#ffffff4d;color:#fff;background:linear-gradient(145deg,#1b4e6aeb,#082b42d6);box-shadow:0 8px 20px #082d4526,inset 0 1px #ffffff3d,inset 0 -1px #00131f2e}.segmented button:active{transform:scale(.99)}.ledger-tools select{width:auto;min-width:108px;min-height:36px;font-size:10px}.ledger-results{min-height:220px}.ledger-list{margin:0;padding:0 24px;list-style:none}.ledger-list li{position:relative;display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:15px;padding:18px 0;border-bottom:1px solid rgb(18 59 89 / 9%)}.ledger-list li:last-child{border-bottom:0}.status-mark{width:10px;height:10px;margin-top:7px;border:2px solid #fff;border-radius:50%;background:var(--ink-faint);box-shadow:0 0 0 4px #123b590f}.status-mark.sent{background:var(--success);box-shadow:0 0 0 4px #2381631a}.status-mark.failed{background:var(--danger);box-shadow:0 0 0 4px #bb433e1a}.status-mark.retrying,.status-mark.pending{background:var(--warning);box-shadow:0 0 0 4px #d886241a}.ledger-main{min-width:0}.ledger-main>div{display:flex;align-items:center;gap:9px;margin-bottom:5px}.kind-tag{padding:3px 7px;border-radius:5px;color:var(--navy-700);background:#daebf2b3;font-size:9px;font-weight:750}.ledger-main time{color:var(--ink-faint);font:9px var(--font-data)}.ledger-main strong{display:block;font-size:13px;line-height:1.45}.ledger-main p{max-width:700px;margin:4px 0 0;overflow:hidden;color:var(--ink-soft);font-size:10px;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.error-copy{display:block;margin-top:5px;color:var(--danger);font-size:9px}.status-label{align-self:center;padding:5px 8px;border:1px solid var(--line);border-radius:6px;color:var(--ink-soft);font-size:9px;white-space:nowrap}.status-label.sent{border-color:#23816359;color:var(--success)}.status-label.failed{border-color:#bb433e59;color:var(--danger)}.empty-ledger{min-height:220px;display:grid;place-content:center;justify-items:center;text-align:center;color:var(--ink-soft)}.empty-ledger strong{margin-top:10px;color:var(--ink)}.empty-ledger p{margin:5px 0 0;font-size:11px}.ledger-pagination{min-height:62px;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:9px 18px;border-top:1px solid var(--line);background:linear-gradient(180deg,#ffffff21,#daebf224);box-shadow:inset 0 1px #ffffff70}.ledger-pagination p{margin:0 auto 0 0;color:var(--ink-soft);font:10px var(--font-data);white-space:nowrap}.page-size-control,.page-picker{display:inline-flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:10px;white-space:nowrap}.page-size-control select,.page-picker select{min-height:36px;border:1px solid var(--glass-interactive-border);border-radius:9px;outline:0;color:var(--ink);background:#edf5f8b8;box-shadow:inset 0 1px #ffffffb8;font:700 10px var(--font-data);cursor:pointer}.page-size-control select{min-width:68px;padding:0 7px}.page-picker select{width:48px;padding:0 5px;text-align:center}.page-stepper{display:inline-flex;min-height:38px;align-items:center;gap:8px}.pagination-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--glass-interactive-border);border-radius:50%;color:var(--navy-800);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);cursor:pointer;transition:transform var(--motion-instant) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,opacity var(--motion-fast) ease}.pagination-button.previous .icon{transform:rotate(180deg)}.pagination-button:active:not(:disabled){transform:scale(.99)}.pagination-button:disabled{cursor:default;opacity:.34}@media(hover:hover)and (pointer:fine){.segmented button:not(.active):hover{border-color:#ffffff6b;color:var(--ink);background:linear-gradient(145deg,#ffffff38,#daebf214);box-shadow:inset 0 1px #ffffff8f}.pagination-button:hover:not(:disabled){border-color:#ffffffb8;background:var(--glass-interactive-hover);box-shadow:0 10px 26px #0c2f4521,inset 0 1px #ffffffe5}.fallback-panel summary:hover,.file-drop:hover{color:var(--ink);border-color:#ffffff8a}}.archive-section{padding-top:34px;border-top:1px solid rgb(18 59 89 / 8%)}.archive-grid{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:14px}.semester-list{overflow:hidden;border-radius:var(--radius-card)}.semester-list article{min-height:112px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:18px 24px;border-bottom:1px solid var(--line)}.semester-list article:last-child{border-bottom:0}.semester-list article.active{position:relative}.semester-list article.active:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--coral)}.semester-list article>div:first-child{display:grid;gap:4px;min-width:0}.semester-list article span{color:var(--coral);font-size:9px;font-weight:750}.semester-list article strong{font:650 24px var(--font-display)}.semester-list article small{color:var(--ink-soft);font-size:10px}.semester-list article>div:nth-child(2){min-width:76px;display:grid;justify-items:center;padding-left:20px;border-left:1px solid var(--line)}.semester-list article b{font:650 26px var(--font-display)}.archive-download{white-space:nowrap}.empty-archive{min-height:112px;display:grid;place-items:center;color:var(--ink-soft);font-size:11px}.import-notes{padding:18px;border-radius:var(--radius-card)}.import-notes>p{margin:0 0 8px;color:var(--ink-soft);font-size:9px;font-weight:750}.import-notes>a{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line)}.import-notes>a:last-child{border-bottom:0}.import-notes a span{display:grid;gap:3px;font-size:11px;font-weight:700}.import-notes a small,.import-notes>small{color:var(--ink-soft);font-size:9px;font-weight:500}footer{width:min(var(--content-max),calc(100% - (2 * var(--gutter))));min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:8px auto 0;border-top:1px solid var(--line);color:var(--ink-soft);font-size:9px;letter-spacing:.04em}.toast{position:fixed;z-index:80;top:92px;right:24px;max-width:min(420px,calc(100vw - 32px));min-height:52px;display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--glass-component-border);border-radius:14px;color:var(--ink);background:radial-gradient(130% 90% at 20% -20%,rgb(255 255 255 / 68%),transparent 60%),linear-gradient(145deg,#ffffff7a,#daebf24d);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(20px) saturate(122%);-webkit-backdrop-filter:blur(20px) saturate(122%);animation:toast-in .18s var(--ease-enter) both}.toast.error{color:var(--danger)}.toast-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--success)}.toast.error .toast-icon{background:var(--danger)}.toast>span:nth-child(2){min-width:0;flex:1;font-size:12px;line-height:1.45}.toast button{width:32px;height:32px;border:0;border-radius:50%;background:transparent;cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(12px);transition:opacity var(--motion-slow) var(--ease-enter),transform var(--motion-slow) var(--ease-enter)}.reveal.is-visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:50ms}.delay-2{transition-delay:90ms}.delay-3{transition-delay:.13s}.mobile-nav{display:none}@supports not (backdrop-filter: blur(1px)){.login-sheet,.day-sheet,.sync-paper,.ledger-paper,.semester-list,.import-notes,.toast,.cookie-help-sheet{background:#fffdf8eb}.next-hero{background:#082e46f0}}@media(max-width:1100px){.topbar{gap:18px}.brand-lockup.compact .brand-wording small{display:none}.desktop-nav{gap:20px}.hero-stage{grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);gap:28px}.hero-statement h1{font-size:clamp(42px,5vw,58px)}.day-grid{grid-template-columns:1fr 1fr}.learning-note{display:none}.sync-section,.notification-section,.archive-section{grid-template-columns:210px minmax(0,1fr);gap:32px}.sync-steps{grid-template-columns:repeat(3,1fr)}.sync-steps>a{grid-column:1 / -1;justify-self:end}}@media(max-width:900px){.login-page{grid-template-columns:repeat(10,minmax(0,1fr));padding-inline:28px}.login-story{grid-column:1 / 6}.login-story h1{font-size:48px}.login-sheet{grid-column:6 / 11;padding:30px}.login-card-brand{margin-bottom:18px}.login-sheet h2{font-size:42px}.desktop-nav{display:none}.topbar{grid-template-columns:auto 1fr}.topbar-actions{justify-self:end}.hero-stage{grid-template-columns:1fr;min-height:0;padding:42px 0 56px}.hero-statement{display:none}.next-hero{width:min(680px,100%);justify-self:center}.day-plan-block{padding-top:42px}.sync-section,.notification-section,.archive-section{grid-template-columns:1fr;gap:20px}.section-side-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-side-heading .section-heading{margin-bottom:0}.section-side-heading .section-heading>p{max-width:560px}.section-side-heading .side-cta{margin:0}.archive-grid{grid-template-columns:minmax(0,1fr) 210px}}@media(max-width:720px){:root{--gutter: 16px}html{scroll-padding-top:102px}.desktop-story-title{display:none}.mobile-story-title{display:block}.login-page{min-height:100dvh;display:block;overflow:visible;padding:28px 20px 82px;color:var(--ink);background:#dfe8ec}.login-atmosphere{position:fixed;background-image:url(/assets/atmosphere/mobile-login.jpg);background-position:center top}.login-wash{position:fixed;background:linear-gradient(180deg,#edf5f861,#e1ebf03b 52%,#08263a2e)}.login-grid,.login-header{display:none}.login-story{padding:0;animation-delay:0ms}.login-mobile-brand{display:block;margin:0}.login-mobile-brand .brand-lockup{align-items:center}.login-mobile-brand .brand-wording strong{font-size:23px}.login-mobile-brand .brand-wording small{font-size:10px;color:var(--ink-soft)}.login-story h1{max-width:330px;margin-top:42px;font-size:clamp(45px,13vw,54px);line-height:1.1;color:var(--ink);text-shadow:none}.login-story-copy{max-width:320px;margin-top:20px;color:var(--ink-soft);font:16px/1.72 var(--font-body)}.login-rhythm,.hand-note{display:none}.login-sheet{width:100%;margin-top:32px;padding:26px 22px 23px;border-radius:24px;background:radial-gradient(130% 70% at 45% -12%,rgb(255 255 255 / 52%),transparent 60%),linear-gradient(145deg,#ffffff4f,#daebf22e 58%,#fff9ef3d);backdrop-filter:blur(22px) saturate(122%) contrast(101%);-webkit-backdrop-filter:blur(22px) saturate(122%) contrast(101%);animation-delay:90ms}.login-card-brand,.login-sheet>.eyebrow,.login-sheet h2,.login-intro{display:none}.login-token-heading label{font-size:15px}.daily-token-control{min-height:58px}.daily-token-control input{height:54px;font-size:13px}.token-expiry,.field-note{font-size:10px}.primary-button.wide{min-height:56px}.login-rule{margin-top:19px}.login-edition{position:relative;right:auto;bottom:auto;margin:54px 0 0;color:#ffffffc7;text-align:center}.app-shell{background:linear-gradient(180deg,#dfe9ed 0 570px,#f6f3ed 760px,#edf2f4)}.main-content{padding-bottom:96px}.dashboard-atmosphere{position:absolute;height:640px;background-image:url(/assets/atmosphere/mobile-dashboard.jpg);background-position:center top}.dashboard-wash{position:absolute;height:680px;background:linear-gradient(180deg,rgb(231 240 244 / 24%),rgb(236 243 245 / 18%) 58%,var(--warm-100) 96%)}.paper-grid{opacity:.025}.topbar{position:relative;min-height:0;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"brand semester quick";justify-content:space-between;column-gap:8px;row-gap:0;padding:max(12px,env(safe-area-inset-top)) 12px 10px;color:var(--ink);border-bottom:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.topbar:after{display:none}.topbar-brand{grid-area:brand;align-self:center}.topbar .brand-lockup.inverse{color:var(--ink)}.topbar .brand-lockup.compact{width:44px;flex-direction:column;justify-content:center;gap:2px}.topbar .brand-wording{display:block;text-align:center}.topbar .brand-lockup.inverse .brand-wording small{display:none}.topbar .brand-symbol{width:44px;height:44px}.topbar .brand-wording strong{display:block;font-size:15px;line-height:1;letter-spacing:.08em;white-space:nowrap}.topbar-actions{display:contents}.topbar-quick-actions{grid-area:quick;justify-self:end;gap:2px}.topbar-quick-actions>*{flex:0 0 44px}.semester-picker{grid-area:semester;width:100%;max-width:220px;min-width:0;min-height:44px;justify-self:start;box-sizing:border-box;padding:0 8px;gap:5px}.semester-picker select{width:100%;min-width:0;max-width:none;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.header-notification{border-color:var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.refresh-button{display:none}.topbar .logout-button{width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--glass-interactive-border);border-radius:50%;color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.topbar .logout-button span{display:none}.page-section{width:calc(100% - 32px);scroll-margin-top:18px}.overview-section{padding-top:10px;padding-bottom:38px}.hero-stage{display:block;padding:0}.next-hero{--glass-component-fill: radial-gradient(125% 72% at 44% -16%, rgb(255 255 255 / 50%), transparent 60%), linear-gradient(145deg, rgb(255 255 255 / 28%), rgb(215 232 240 / 15%) 56%, rgb(255 249 239 / 22%));--glass-component-border: rgb(255 255 255 / 62%);--glass-component-shadow: 0 24px 64px rgb(8 39 59 / 16%), inset 0 1px 0 rgb(255 255 255 / 86%), inset 0 -1px 0 rgb(22 72 101 / 9%);min-height:306px;grid-template-columns:minmax(0,1fr) 132px;gap:8px;padding:25px 22px;border-radius:22px;color:var(--ink);background:var(--glass-component-fill);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(22px) saturate(126%) contrast(102%);-webkit-backdrop-filter:blur(22px) saturate(126%) contrast(102%)}.hero-label{color:var(--navy-700);font-size:10px}.next-card-copy h2{font-size:clamp(32px,9vw,42px);color:var(--ink)}.next-hero.is-empty .next-card-copy h2{font-size:28px;white-space:nowrap}.hero-meta{gap:8px;margin-top:18px;color:var(--ink-soft);font-size:11px}.hero-empty{color:var(--ink-soft)}.hero-action{min-height:46px;gap:16px;margin-top:18px;padding:0 16px;font-size:12px}.route-disclosure{border-color:#123b591f;color:var(--ink);background:linear-gradient(145deg,#ffffff4d,#daebf224);box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #174c6c0f}.route-summary-icon{border-color:#123b591a;color:var(--navy-700);background:#daebf252;box-shadow:inset 0 1px #ffffffb8}.route-summary-copy small,.route-summary-action{color:var(--ink-soft)}.route-preview-shell{border-top-color:#123b5917}.route-image-button{border-color:#ffffff8f;background:#dfeae270;box-shadow:0 11px 30px #08273b1f,inset 0 1px #ffffffc2}.countdown-dial{width:124px}.dial-track{stroke:#123b5926}.dial-value{stroke:var(--coral)}.countdown-dial span{color:var(--ink-soft)}.countdown-dial strong{color:var(--ink);font-size:18px}.countdown-dial em{color:var(--ink-soft);font-size:10px}.day-plan-block{padding-top:34px}.section-heading{align-items:start;gap:12px;margin-bottom:15px}.section-heading h2{font-size:29px}.section-heading>p{max-width:48%;font-size:10px;text-align:right}.day-grid{grid-template-columns:1fr;gap:13px}.day-sheet{min-height:0;padding:20px}.day-sheet,.sync-paper,.ledger-paper,.semester-list{backdrop-filter:blur(10px) saturate(118%);-webkit-backdrop-filter:blur(10px) saturate(118%)}.day-sheet header h3{font-size:18px}.timeline{gap:16px}.timeline li{grid-template-columns:54px 14px 1fr}.timeline-copy strong{font-size:13px}.learning-note{display:none}.route-map-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px)}.route-map-sheet{max-height:calc(100dvh - 12px);padding:8px;border-radius:20px}.route-map-toolbar{min-height:52px;padding:0 5px 8px}.route-map-toolbar h2{max-width:265px;font-size:20px}.route-map-canvas{grid-template-rows:minmax(0,1fr);border-radius:13px}.route-map-canvas img{max-height:calc(100dvh - 132px)}.route-map-canvas figcaption{display:none}.sync-section,.notification-section,.archive-section{display:block;padding:34px 0}.section-side-heading{display:block}.section-side-heading .section-heading{display:flex}.section-side-heading .section-heading>p{margin-top:3px}.section-side-heading .side-cta{display:none}.sync-paper{padding:18px 16px}.sync-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:16px}.sync-steps>div{grid-template-columns:28px 1fr;gap:6px}.sync-steps>div>span{width:28px;height:28px;font-size:11px}.sync-steps strong{font-size:9px;white-space:normal}.sync-steps small{display:none}.sync-help-trigger{min-height:44px;margin:-8px 0}.sync-input-row{grid-template-columns:1fr;gap:9px}.sync-submit{width:100%}.context-fields{grid-template-columns:1fr 1fr}.context-warning{grid-column:1 / -1}.sync-progress{grid-template-columns:40px minmax(0,1fr);padding:11px}.progress-icon{width:36px;height:36px}.courses-found{display:none}.sync-progress>.form-error{grid-column:1 / -1}.progress-copy>p{white-space:normal}.sync-actions{display:block}.check-row{gap:9px 12px}.fallback-panel{margin-top:10px}.cookie-help-dialog{width:calc(100vw - 28px)}.cookie-help-sheet{padding:20px 18px 18px}.cookie-help-sheet:before{left:18px}.cookie-help-heading{margin-top:8px}.cookie-help-heading h2{font-size:28px}.cookie-help-path{margin:18px 0}.cookie-help-path li{min-height:62px;padding:9px 11px}.notification-section,.archive-section{border-top-color:#123b5917}.ledger-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:12px}.segmented{gap:2px}.segmented button{padding:0 10px}.ledger-tools select{min-width:88px;padding:0 6px}.ledger-list{padding:0 14px}.ledger-list li{grid-template-columns:12px minmax(0,1fr) auto;gap:10px;padding:15px 0}.ledger-main strong{font-size:12px}.ledger-main p{max-width:210px}.status-label{padding:4px 6px}.ledger-pagination{min-height:116px;display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:12px 14px}.ledger-pagination p{grid-column:1 / -1}.page-size-control{justify-self:start}.page-stepper{justify-self:end}.archive-grid{grid-template-columns:1fr}.semester-list article{min-height:104px;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px}.semester-list article>div:nth-child(2){min-width:60px;padding-left:12px}.semester-list article .archive-download,.semester-list article>.text-button{grid-column:1 / -1;justify-self:start}.semester-list article strong{font-size:22px}.import-notes{padding:14px 16px}footer{min-height:118px;flex-wrap:wrap;align-content:flex-start;justify-content:flex-start;gap:8px 18px;padding:22px 0 96px}.mobile-nav{position:fixed;left:50%;bottom:max(var(--dock-edge),env(safe-area-inset-bottom));z-index:60;isolation:isolate;width:min(364px,calc(100vw - (var(--dock-edge) * 2)));height:var(--dock-height);display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;padding:7px;overflow:hidden;border:1px solid var(--dock-rim);border-radius:var(--radius-pill);background:radial-gradient(120% 92% at 50% -46%,rgb(255 255 255 / 38%) 0%,transparent 62%),linear-gradient(180deg,var(--dock-surface-top) 0%,var(--dock-surface-mid) 48%,var(--dock-surface-bottom) 100%);box-shadow:var(--dock-shadow),0 4px 12px #08273b17,inset 0 1px 0 var(--dock-highlight),inset 0 -1px #1f526b1a;backdrop-filter:blur(var(--dock-blur)) saturate(165%) contrast(103%);-webkit-backdrop-filter:blur(var(--dock-blur)) saturate(165%) contrast(103%);transform:translate(-50%) translateZ(0)}.mobile-nav:before,.mobile-nav:after{position:absolute;content:"";pointer-events:none}.mobile-nav:before{inset:1px 10px auto;z-index:0;height:48%;border-top:1px solid rgb(255 255 255 / 86%);border-radius:var(--radius-pill);background:radial-gradient(80% 72% at 50% -12%,rgb(255 255 255 / 28%),transparent 78%);opacity:.92}.mobile-nav:after{inset:1px;z-index:0;border-radius:inherit;background:radial-gradient(34% 86% at 0% 50%,rgb(255 255 255 / 20%),transparent 70%),radial-gradient(34% 86% at 100% 50%,rgb(125 148 160 / 9%),transparent 72%),linear-gradient(90deg,rgb(255 255 255 / 10%),transparent 20% 80%,rgb(255 255 255 / 8%));box-shadow:inset 0 -8px 16px #597d8f0f}.mobile-nav-indicator{position:absolute;top:9px;left:7px;z-index:1;width:calc((100% - 14px)/4);height:54px;overflow:hidden;border:1px solid rgb(255 255 255 / 54%);border-radius:var(--radius-pill);background:radial-gradient(92% 74% at 50% -8%,rgb(255 255 255 / 54%),transparent 70%),radial-gradient(80% 130% at 8% 54%,rgb(255 255 255 / 17%),transparent 58%),radial-gradient(80% 130% at 92% 58%,rgb(111 141 155 / 9%),transparent 60%),linear-gradient(180deg,var(--dock-bubble-top),var(--dock-bubble-bottom));box-shadow:0 8px 18px #0b30451f,0 2px 6px #0b304512,inset 0 1px #ffffffeb,inset 0 -1px #3d697e1f;pointer-events:none;transform:translate3d(var(--nav-offset, 0%),0,0);transform-origin:center;transition-property:transform;transition-duration:var(--dock-spring-duration);transition-timing-function:var(--dock-spring-fallback)}.mobile-nav-indicator:before,.mobile-nav-indicator:after{position:absolute;content:"";pointer-events:none}.mobile-nav-indicator:before{inset:1px 8px auto;height:42%;border-top:1px solid rgb(255 255 255 / 88%);border-radius:var(--radius-pill);background:radial-gradient(70% 100% at 50% 0%,rgb(255 255 255 / 34%),transparent 76%)}.mobile-nav-indicator:after{inset:auto 12px 3px;height:10px;border-radius:50%;background:radial-gradient(ellipse,rgb(108 148 166 / 12%),transparent 72%)}.mobile-nav a{position:relative;z-index:2;min-width:0;display:grid;place-content:center;justify-items:center;gap:3px;border-radius:var(--radius-pill);color:#2a485bb8;font-size:10px;text-shadow:0 1px 0 rgb(255 255 255 / 44%);transition:color var(--motion-fast) ease,transform var(--motion-instant) ease}.mobile-nav a .icon{width:20px;height:20px}.mobile-nav a>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-nav a.active{color:var(--navy-950);font-weight:750}.mobile-nav a.active .icon{filter:drop-shadow(0 1px 2px rgb(255 255 255 / 48%))}.mobile-nav a:active{transform:scale(.99)}.toast{top:14px;right:14px}}@supports (transition-timing-function: linear(0,1)){.mobile-nav-indicator{transition-timing-function:linear(0,.015 5%,.065 10%,.17 16%,.34 24%,.56 34%,.77 46%,.92 58%,1.015 70%,1.035 78%,1.025 85%,1.008 92%,.999 97%,1)}}@supports selector(.mobile-nav:has(a:focus-visible)){.mobile-nav:has(a:focus-visible) .mobile-nav-indicator{transition-duration:0ms}}@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){@media(max-width:720px){.mobile-nav{background:#e8f1f5eb}.mobile-nav-indicator{background:#ffffffc2}}}@media(max-width:390px){.topbar .brand-wording strong{font-size:15px}.next-hero{grid-template-columns:minmax(0,1fr) 112px;padding-inline:18px}.countdown-dial{width:108px}.countdown-dial strong{font-size:16px}.hero-action{gap:10px;padding-inline:13px}.ledger-main p{max-width:178px}}@media(max-width:350px){.topbar{grid-template-columns:44px auto;grid-template-areas:"brand quick" "semester semester";column-gap:8px;row-gap:8px;padding-inline:12px}.topbar-quick-actions{gap:3px}.semester-picker{max-width:none}.next-hero{grid-template-columns:1fr}.countdown-dial{position:absolute;right:12px;top:56px;width:92px;opacity:.94}.next-card-copy{padding-right:84px}.next-card-copy h2{font-size:30px}.hero-meta span{max-width:175px}.hero-action{margin-right:-76px}.section-heading>p{display:none}.context-fields{grid-template-columns:1fr}.context-warning{grid-column:1}}.topbar .guest-share-button{border:1px solid transparent;color:var(--warm-50);background:linear-gradient(145deg,rgb(255 255 255 / 8%),transparent);box-shadow:inset 0 1px #ffffff1f}.guest-share-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:visible;border:0;border-radius:var(--radius-glass);color:var(--ink);background:transparent;opacity:0;transform:translateY(10px) scale(.985);transition:opacity .24s var(--ease-enter),transform .24s var(--ease-enter),overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.guest-share-dialog[open]{opacity:1;transform:translateY(0) scale(1)}.guest-share-dialog::backdrop{background:#051f3000;backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);-webkit-backdrop-filter:blur(var(--glass-scrim-blur)) saturate(88%);transition:background-color .24s ease,overlay var(--motion-fast) allow-discrete,display var(--motion-fast) allow-discrete}.guest-share-dialog[open]::backdrop{background:var(--glass-scrim)}@starting-style{.guest-share-dialog[open]{opacity:0;transform:translateY(10px) scale(.985)}.guest-share-dialog[open]::backdrop{background:#051f3000}}.guest-share-sheet{position:relative;display:grid;gap:18px;max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:1px solid var(--glass-component-border);border-radius:var(--radius-glass);background:radial-gradient(115% 64% at 45% -12%,rgb(255 255 255 / 58%),transparent 62%),linear-gradient(145deg,#ffffff75,#dcebf240 58%,#fff9ef57);box-shadow:var(--glass-component-shadow);backdrop-filter:blur(var(--glass-elevated-blur)) saturate(128%);-webkit-backdrop-filter:blur(var(--glass-elevated-blur)) saturate(128%)}.guest-share-sheet:before{content:"";position:absolute;inset:0 auto auto 26px;width:54px;height:3px;border-radius:0 0 99px 99px;background:var(--coral)}.guest-share-heading{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:13px}.guest-share-heading>.icon-button{border:1px solid var(--glass-interactive-border);color:var(--ink-soft);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.guest-share-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;color:var(--navy-800);background:linear-gradient(145deg,#dbedf5a8,#ffffff52);box-shadow:inset 0 1px #ffffffd1,0 9px 22px #0c2f4517}.guest-share-heading small{display:block;margin-bottom:3px;color:var(--coral);font:700 9px var(--font-data);letter-spacing:.14em}.guest-share-heading h2{margin:0;font:650 30px/1.1 var(--font-display);letter-spacing:-.04em}.guest-share-copy{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.65}.guest-link-control{display:grid;gap:7px;padding:12px 14px;border:1px solid var(--glass-interactive-border);border-radius:var(--radius-control);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.guest-link-control:focus-within{border-color:#123b5938;box-shadow:var(--glass-input-focus-shadow)}.guest-link-control span{color:var(--ink-soft);font-size:10px;font-weight:750;letter-spacing:.08em}.guest-link-control input{min-width:0;width:100%;border:0;outline:0;color:var(--ink);background:transparent;font:11px/1.5 var(--font-data)}.guest-share-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.guest-rotate-button{min-height:44px;padding:0 6px;color:var(--ink-soft);font-size:12px}.guest-topbar{min-height:var(--guest-header-height);grid-template-columns:auto 1fr}.guest-topbar-actions{justify-self:end;display:flex;align-items:center;gap:8px}.guest-role-badge{min-height:40px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:1px solid var(--guest-badge-border);border-radius:var(--radius-pill);color:#ffffffdb;background:var(--guest-badge-fill);box-shadow:inset 0 1px #ffffff47;font-size:12px;font-weight:720}.guest-main-content{min-height:calc(100dvh - var(--guest-header-height))}.guest-overview{width:min(var(--guest-content-max),calc(100% - (2 * var(--gutter))));padding-top:14px;padding-bottom:54px}.guest-overview .hero-stage{min-height:390px;grid-template-columns:minmax(210px,.56fr) minmax(0,1.44fr);gap:clamp(24px,3.5vw,46px)}.guest-statement{align-self:center;color:var(--warm-50)}.guest-statement>p{display:inline-flex;align-items:center;gap:8px;margin:0 0 15px;color:#ffffffb8;font-size:11px;font-weight:750;letter-spacing:.12em}.guest-statement h1{margin:0;font:560 clamp(42px,4.2vw,58px)/1.05 var(--font-display);letter-spacing:-.055em;text-shadow:0 4px 28px rgb(3 27 43 / 20%)}.guest-statement>span{display:block;margin-top:16px;color:#ffffffad;font-size:13px;letter-spacing:.08em}.guest-next-hero{min-height:270px;grid-template-columns:minmax(0,1fr) 162px}.guest-next-hero .hero-meta{margin-top:18px}.guest-overview .day-plan-block{padding-top:var(--guest-section-gap)}.guest-overview .day-sheet{min-height:250px}.guest-overview .timeline-copy strong{font-size:14px}.guest-error-screen .secondary-button{justify-self:center}@media(hover:hover)and (pointer:fine){.topbar .guest-share-button:hover{border-color:#ffffff3d;color:var(--warm-50);background:linear-gradient(145deg,#ffffff2b,#ffffff0d);box-shadow:0 9px 22px #031b2b24,inset 0 1px #ffffff3d}}@media(max-width:900px){.guest-overview .hero-stage{grid-template-columns:1fr;padding-block:36px 46px}.guest-statement{display:none}.guest-next-hero{width:min(680px,100%);justify-self:center}}@media(max-width:720px){.topbar .guest-share-button{width:44px;height:44px;border-color:var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.guest-share-dialog{width:calc(100vw - 28px)}.guest-share-sheet{gap:15px;padding:20px 18px 18px}.guest-share-sheet:before{left:18px}.guest-share-heading{grid-template-columns:40px minmax(0,1fr) 40px;gap:10px}.guest-share-icon,.guest-share-heading>.icon-button{width:40px;height:40px}.guest-share-heading h2{font-size:27px}.guest-share-actions{align-items:stretch;flex-direction:column-reverse}.guest-share-actions .primary-button{width:100%}.guest-rotate-button{align-self:center}.guest-topbar{min-height:86px;padding-top:18px}.guest-topbar-actions{gap:6px}.guest-role-badge{min-height:40px;padding-inline:10px;border-color:var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);font-size:10px}.guest-topbar .logout-button{width:auto;min-width:62px;padding:0 10px;display:inline-flex;gap:5px;border-radius:var(--radius-pill)}.guest-topbar .logout-button span{display:inline;font-size:10px}.guest-main-content{padding-bottom:28px}.guest-overview{width:calc(100% - 32px);padding-top:6px;padding-bottom:34px}.guest-overview .hero-stage{display:block;min-height:0;padding:0}.guest-next-hero{min-height:262px;grid-template-columns:minmax(0,1fr) 124px}.guest-overview .day-plan-block{padding-top:30px}.guest-overview .day-sheet{min-height:0}}.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}.weekly-schedule{margin-top:clamp(42px,5vw,64px);padding-top:6px;scroll-margin-top:92px}.week-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.week-heading-copy{min-width:0}.week-heading-copy h2{margin:0;font:570 clamp(31px,3.2vw,43px)/1.05 var(--font-display);letter-spacing:-.045em}.week-heading-copy span{display:block;margin-top:7px;color:var(--ink-soft);font-size:12px}.week-controls{display:grid;grid-template-columns:44px minmax(128px,auto) 44px;align-items:stretch;gap:8px}.week-arrow{width:44px;min-width:44px;height:44px;border:1px solid var(--glass-interactive-border);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow)}.week-arrow-previous .icon{transform:rotate(180deg)}.week-current-button{min-height:44px;padding:5px 15px;display:grid;place-content:center;border:1px solid var(--glass-interactive-border);border-radius:var(--radius-pill);color:var(--ink);background:var(--glass-interactive-fill);box-shadow:var(--glass-interactive-shadow);cursor:pointer}.week-current-button strong{font:750 12px/1.2 var(--font-body)}.week-current-button span{margin-top:2px;color:var(--ink-soft);font:650 9px/1.2 var(--font-data)}.week-current-button.is-current{border-color:#23816333}.week-current-button.is-current span{color:var(--success)}.week-controls button:disabled{opacity:.42;cursor:default;box-shadow:none}.week-surface{position:relative;padding:0;overflow:hidden;border-radius:24px;background:linear-gradient(145deg,#ffffff57,#ddebf12e 54%,#fff8ed47);transition:opacity .16s var(--ease-enter);animation:week-surface-in var(--week-swap-duration) var(--ease-enter) both}.weekly-schedule.is-loading .week-surface{opacity:.56}.weekly-desktop-scroll{width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgb(18 59 89 / 18%) transparent}.weekly-grid{width:100%;min-width:var(--week-grid-min);border-spacing:0;border-collapse:separate;table-layout:fixed;color:var(--ink)}.weekly-grid th,.weekly-grid td{border-right:1px solid var(--week-grid-line);border-bottom:1px solid var(--week-grid-line)}.weekly-grid tr>:last-child{border-right:0}.weekly-grid tbody tr:last-child>*{border-bottom:0}.weekly-grid thead th{height:68px;padding:12px 8px;color:var(--ink-soft);background:#f6f6f82e;text-align:center}.weekly-grid thead th:first-child{width:var(--week-time-column);color:var(--navy-700);font:750 10px/1.2 var(--font-data);letter-spacing:.08em}.weekly-grid thead th span,.weekly-grid thead th small{display:block}.weekly-grid thead th span{font-size:12px}.weekly-grid thead th small{margin-top:4px;color:var(--ink-faint);font:650 9px var(--font-data)}.weekly-grid thead th.is-today{position:relative;color:var(--navy-800);background:var(--week-today-fill)}.weekly-grid thead th.is-today:before{content:"";position:absolute;inset:0 16px auto;height:3px;border-radius:0 0 99px 99px;background:var(--coral)}.weekly-grid tbody th{width:var(--week-time-column);padding:17px 12px;color:var(--ink-soft);background:#fffcf633;text-align:left;vertical-align:top}.weekly-grid tbody th span,.weekly-grid tbody th time{display:block}.weekly-grid tbody th span{color:var(--ink-faint);font-size:10px;font-weight:700}.weekly-grid tbody th time{margin-top:7px;color:var(--navy-800);font:760 12px/1.3 var(--font-data)}.weekly-grid td{height:var(--week-row-min);padding:7px;vertical-align:top;background:#ffffff14}.weekly-grid td.is-today{background:var(--week-today-fill)}.week-empty-slot{width:4px;height:4px;display:block;margin:46px auto 0;border-radius:50%;background:#123b591f}.week-course{position:relative;min-width:0;overflow:hidden;border:1px solid rgb(255 255 255 / 58%);border-radius:14px;color:var(--ink);box-shadow:0 7px 18px #0a2a3d12,inset 0 1px #ffffffb8}.week-course:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#488bb4b8}.week-course.tone-0{background:linear-gradient(145deg,var(--week-course-a),rgb(255 255 255 / 38%))}.week-course.tone-1{background:linear-gradient(145deg,var(--week-course-b),rgb(255 255 255 / 38%))}.week-course.tone-1:before{background:#ee6f55b3}.week-course.tone-2{background:linear-gradient(145deg,var(--week-course-c),rgb(255 255 255 / 38%))}.week-course.tone-2:before{background:#438b69ad}.week-course.tone-3{background:linear-gradient(145deg,var(--week-course-d),rgb(255 255 255 / 38%))}.week-course.tone-3:before{background:#6e63959e}.week-course.compact{min-height:102px;padding:10px 9px 9px 12px}.week-course.compact+.week-course.compact{margin-top:6px}.week-course time{color:var(--ink-faint);font:700 8px/1.2 var(--font-data);letter-spacing:.02em}.week-course strong{display:block;margin-top:6px;overflow:hidden;color:var(--navy-900);font-size:11px;line-height:1.35;text-overflow:ellipsis}.week-course p{margin:5px 0 0;overflow:hidden;color:var(--ink-soft);font-size:9px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.week-course small{display:block;margin-top:3px;overflow:hidden;color:var(--ink-faint);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.weekly-mobile-view{display:none}.weekly-loading,.weekly-error,.weekly-empty{min-height:190px;display:grid;place-items:center;border-radius:24px}.weekly-loading{grid-template-columns:repeat(3,74px);gap:12px}.weekly-loading span{width:74px;height:96px;border-radius:16px;background:linear-gradient(110deg,#dae8ef38 20%,#ffffff85,#dae8ef38 72%);background-size:220% 100%;animation:week-loading 1.25s linear infinite}.weekly-error{align-content:center;gap:12px;text-align:center}.weekly-error p{margin:0;color:var(--danger)}.weekly-empty{grid-template-columns:auto auto;gap:14px;color:var(--ink-soft)}.weekly-empty strong,.weekly-empty p{display:block;margin:0}.weekly-empty p{margin-top:4px;font-size:12px}@media(hover:hover)and (pointer:fine){.week-controls button:not(:disabled):hover{transform:translateY(-1px);border-color:#ffffffbd;box-shadow:0 12px 26px #0c2f451f,inset 0 1px #ffffffdb}.week-course{transition:transform .17s var(--ease-enter),box-shadow .17s var(--ease-enter)}.week-course:hover{transform:translateY(-1px);box-shadow:0 11px 24px #0a2a3d1a,inset 0 1px #ffffffc7}}.week-controls button:not(:disabled):active,.week-course:active{transform:scale(.99)}@keyframes week-surface-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes week-loading{to{background-position:-220% 0}}@media(max-width:900px){.weekly-schedule{margin-top:38px;scroll-margin-top:18px}.weekly-desktop-scroll{display:none}.weekly-mobile-view{display:block}.week-surface{padding:12px;border-radius:22px}.mobile-day-rail{position:relative;display:grid;grid-template-columns:repeat(7,1fr);padding:4px;border:1px solid var(--glass-inset-border);border-radius:var(--radius-pill);background:var(--glass-inset-fill);box-shadow:var(--glass-inset-shadow)}.mobile-day-indicator{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / 7);border:1px solid rgb(255 255 255 / 64%);border-radius:var(--radius-pill);background:linear-gradient(145deg,#fff9,#deedf440);box-shadow:0 8px 20px #0a2b3f1a,inset 0 1px #ffffffd9;transform:translate3d(calc(var(--day-index) * 100%),0,0);transition:transform .38s var(--dock-spring-fallback)}.mobile-day-rail button{position:relative;z-index:1;min-width:0;min-height:54px;padding:5px 0;display:grid;place-content:center;gap:2px;border:0;border-radius:var(--radius-pill);color:var(--ink-faint);background:transparent;cursor:pointer}.mobile-day-rail button span{font-size:11px;font-weight:750}.mobile-day-rail button small{font:650 9px var(--font-data)}.mobile-day-rail button.active{color:var(--navy-900)}.mobile-day-rail button.has-course:after{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;border-radius:50%;background:#123b594d;transform:translate(-50%)}.mobile-day-rail button.is-today:after{background:var(--coral)}.mobile-day-rail button.active:after{background:var(--navy-700)}.mobile-day-agenda{margin-top:12px;padding:17px 15px 15px;border:1px solid rgb(255 255 255 / 46%);border-radius:18px;background:linear-gradient(145deg,#ffffff47,#e0edf221);box-shadow:inset 0 1px #ffffff9e;animation:week-surface-in var(--week-swap-duration) var(--ease-enter) both}.mobile-day-agenda>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:0 2px 13px;border-bottom:1px solid var(--week-grid-line)}.mobile-day-agenda>header p,.mobile-day-agenda>header h3{margin:0}.mobile-day-agenda>header p{color:var(--coral);font-size:10px;font-weight:750}.mobile-day-agenda>header h3{margin-top:3px;font:620 22px/1.1 var(--font-display)}.mobile-day-agenda>header>span{color:var(--ink-soft);font-size:10px;font-weight:700}.mobile-day-agenda ol{margin:14px 0 0;padding:0;display:grid;gap:10px;list-style:none}.mobile-day-agenda .week-course{min-height:92px;padding:14px 13px 13px 15px;display:grid;grid-template-columns:82px minmax(0,1fr);align-content:center;column-gap:12px}.mobile-day-agenda .week-course time{grid-row:1 / span 3;align-self:start;padding-top:3px;color:var(--navy-700);font-size:10px;line-height:1.45}.mobile-day-agenda .week-course strong,.mobile-day-agenda .week-course p,.mobile-day-agenda .week-course small{grid-column:2}.mobile-day-agenda .week-course strong{margin-top:0;font-size:13px}.mobile-day-agenda .week-course p{font-size:10px}.mobile-day-agenda .week-course small{font-size:9px}.week-free-day{min-height:128px;display:flex;align-items:center;justify-content:center;gap:14px;color:var(--ink-soft)}.week-free-day>span{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 52%);border-radius:50%;color:var(--navy-700);background:#ffffff42;font:650 20px var(--font-display)}.week-free-day strong,.week-free-day p{display:block;margin:0}.week-free-day p{margin-top:3px;font-size:11px}}@media(max-width:600px){.week-toolbar{align-items:stretch;flex-direction:column;gap:14px}.week-heading-copy{align-items:center}.week-heading-copy>p{display:none}.week-controls{width:100%;grid-template-columns:44px 1fr 44px}.week-current-button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.brand-symbol.is-animated .brand-symbol__tile,.brand-symbol.is-animated .brand-symbol__orbit,.brand-symbol.is-animated .brand-symbol__arc,.brand-symbol.is-animated .brand-symbol__node{animation:none!important;opacity:1;transform:none}.brand-symbol.is-animated .brand-symbol__arc{stroke-dashoffset:0}.login-atmosphere{transform:none}.mobile-nav-indicator{transition:none!important}}
