.sumi-wm,.sumi-fig{--sumi-spring:cubic-bezier(.3, 1.25, .5, 1);--sumi-ease:cubic-bezier(.2, 0, 0, 1);--sumi-eyes:.26s;--sumi-body:.4s;--sumi-lead:90ms;vertical-align:middle;flex:none;display:inline-block;overflow:visible}@supports (transition-timing-function:linear(0, 1)){.sumi-wm,.sumi-fig{--sumi-spring:linear(0, .01 1.6%, .055 4%, .14 6.7%, .256 9.7%, .392 13%, .532 16.5%, .664 20.2%, .78 24%, .874 27.9%, .944 32%, .992 36.3%, 1.021 40.6%, 1.035 45.1%, 1.038 49.6%, 1.035 54.3%, 1.028 59%, 1.021 63.9%, 1.014 68.8%, 1.008 73.8%, 1.004 78.9%, 1.001 84.1%, 1)}}.sumi-wm{color:inherit}.sumi-wm-dot{fill:var(--sumi-dot,var(--accent,currentColor))}.sumi-wm-eye{transform-box:fill-box;transform-origin:50% 100%}.sumi-wm[data-act=blink] .sumi-wm-eye{animation:sumi-blink .18s var(--sumi-ease)}.sumi-wm[data-act=wink] .sumi-wm-eye.r{animation:sumi-wink .32s var(--sumi-ease)}@keyframes sumi-blink{0%{transform:scaleY(1)}39%{transform:scaleY(.12)}50%{transform:scaleY(.12)}to{transform:scaleY(1)}}@keyframes sumi-wink{0%{transform:scaleY(1)}30%{transform:scaleY(.1)}62%{transform:scaleY(.1)}to{transform:scaleY(1)}}.sumi-fig .sumi-pose{transform:translate(var(--dx,0px), var(--dy,0px)) rotate(var(--rot,0deg));transform-box:fill-box;transform-origin:50% 100%;transition:transform var(--sumi-body) var(--sumi-spring) var(--sumi-lead)}.sumi-fig[data-direct] .sumi-pose{transition:none}.sumi-fig[data-snap] *{transition:none!important}.sumi-fig .sumi-page{transition:opacity .3s var(--sumi-ease)}.sumi-fig .sumi-page[data-hidden]{opacity:0}.sumi-fig .sumi-eye{transition:transform var(--sumi-eyes) var(--sumi-spring)}.sumi-fig .sumi-look{transition:transform .22s var(--sumi-ease)}.sumi-fig .sumi-lid{transform-box:fill-box;transform-origin:50%}.sumi-fig .sumi-lid[data-lid=blink]{animation:sumi-blink .18s var(--sumi-ease)}.sumi-fig .sumi-lid[data-lid=wink]{animation:sumi-wink .32s var(--sumi-ease)}.sumi-fig .sumi-pill{transform-box:fill-box;transform-origin:50% 100%;transition:transform .18s var(--sumi-ease), opacity .12s var(--sumi-ease) 60ms}.sumi-fig .sumi-arc{opacity:0;transition:opacity .14s var(--sumi-ease) 80ms}.sumi-fig [data-shape=arc] .sumi-pill{opacity:0;transform:scaleY(.2)}.sumi-fig [data-shape=arc] .sumi-arc{opacity:1}.sumi-fig .sumi-sleepy{opacity:0;transition:opacity .14s var(--sumi-ease) 80ms}.sumi-fig [data-shape=sleepy] .sumi-pill{opacity:0;transform:scaleY(.2)}.sumi-fig [data-shape=sleepy] .sumi-sleepy{opacity:1}.sumi-fig [data-shape=sleepy] .sumi-lid[data-lid=blink]{animation-duration:.3s}.sumi-fig .sumi-scan[data-scan]{animation:sumi-scan 1.6s var(--sumi-ease) infinite}@keyframes sumi-scan{0%{transform:translate(-2.6px)}42%{transform:translate(2.6px)}50%{transform:translate(-2.6px,1.6px)}92%{transform:translate(2.6px,1.6px)}to{transform:translate(-2.6px)}}.sumi-fig .sumi-band{transition:opacity .26s var(--sumi-ease), transform .36s var(--sumi-spring)}.sumi-fig .sumi-band:not([data-on]){opacity:0;transform:translateY(-6px)}.sumi-fig .sumi-band-fill{transform:scaleX(var(--fill,0));transform-box:fill-box;transform-origin:0%;transition:transform .4s var(--sumi-ease)}.sumi-fig .sumi-pen{transform-box:fill-box;transform-origin:0 100%;transition:transform .34s var(--sumi-spring)}.sumi-fig .sumi-pen[data-pen=up]{transform:translate(3px,-10px)rotate(6deg)}.sumi-fig .sumi-pen[data-writing]{animation:.9s ease-in-out infinite alternate sumi-write}@keyframes sumi-write{0%{transform:rotate(-3deg)}50%{transform:rotate(1.5deg)translateY(-.6px)}to{transform:rotate(3deg)}}.sumi-fig .sumi-act{transform-box:fill-box;transform-origin:50% 100%}.sumi-fig .sumi-act[data-act=dip]{animation:sumi-dip .42s var(--sumi-ease)}@keyframes sumi-dip{0%{transform:none}38%{transform:translate(3px,3px)rotate(7deg)}58%{transform:translate(3px,3.4px)rotate(7deg)scale(1.01,.99)}to{transform:none}}.sumi-fig .sumi-figure{transform-box:fill-box;transform-origin:50% 100%}.sumi-fig .sumi-figure[data-act=hop]{animation:sumi-hop .38s var(--sumi-ease)}@keyframes sumi-hop{0%{transform:none}34%{transform:translateY(-3px)scale(.99,1.012)}62%{transform:translateY(0)scale(1.016,.984)}82%{transform:scale(.997,1.003)}to{transform:none}}.sumi-fig .sumi-figure[data-act=settle]{animation:sumi-settle .32s var(--sumi-ease)}@keyframes sumi-settle{0%{transform:none}45%{transform:translateY(1.6px)scale(1.012,.988)}to{transform:none}}.sumi-skel{gap:10px;display:grid}.sumi-skel-line{background:var(--surface-2,#ece6da);border-radius:5px;height:10px;position:relative;overflow:hidden}.sumi-skel-line:after{content:"";border-radius:inherit;background:var(--accent-soft,#e9dbd3);transform-origin:0;animation:sumi-ink 2.4s var(--sumi-ease,ease-out) infinite;position:absolute;inset:0;transform:scaleX(0)}.sumi-skel-line:nth-child(2):after{animation-delay:.16s}.sumi-skel-line:nth-child(3):after{animation-delay:.32s}@keyframes sumi-ink{0%{opacity:1;transform:scaleX(0)}62%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}.sumi-fig[data-still] *,.sumi-skel[data-still] *,.sumi-skel[data-still] :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){.sumi-wm *,.sumi-fig *,.sumi-skel *,.sumi-skel :after{transition:none!important;animation:none!important}}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/lexend-latin-wght-BUr6tp1s.woff2)format("woff2-variations"),url(/assets/lexend-latin-wght-BUr6tp1s.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f6f3ec;--surface:#fffdf8;--surface-2:#eee9df;--surface-3:#e4ded1;--rule:#ddd6c8;--rule-strong:#b6ad9c;--ink:#171512;--ink-2:#3e3a33;--ink-3:#6b665c;--ink-inverse:#f6f3ec;--surface-inverse:#1b1916;--overlay:#1715126b;--accent:#8c2f1f;--on-accent:#fff;--accent-soft:#e9dbd3;--signal:#7a2a1c;--signal-ink:#7a2a1c;--signal-soft:#f3e3de;--on-signal:#fff;--calm:#2f7a45;--calm-soft:#ebf4ec;--load-class:#8a8375;--load-due:var(--accent);--load-free:#6f9658;--load-class-on:#cfc7b8;--load-due-on:var(--accent-soft);--load-free-on:#9dbb8b;--warn:#93600a;--warn-soft:#f6eedd;--danger:#b0372a;--danger-soft:#f3dfdb;--focus:#1f5fbf;--edge:#8a8375;--font-display:"Bricolage Grotesque Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans:var(--font-serif);--font-serif:"Lexend", system-ui, -apple-system, "Segoe UI", sans-serif;--font-editorial:var(--font-serif);--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-meta:12px;--fs-sm:13px;--fs-md:15px;--fs-body:16px;--fs-lg:17px;--fs-h3:18px;--fs-h2:21px;--fs-h1:clamp(26px, 3.5vw, 32px);--fs-display:clamp(30px, 4vw, 44px);--fs-voice:clamp(17px, 1.8vw, 19px);--lh-tight:1.1;--lh-snug:1.3;--lh:1.5;--lh-loose:1.6;--track-meta:.06em;--w-body:400;--w-em:500;--opsz-display:"opsz" 96;--opsz-label:"opsz" 12;--r:10px;--r-xs:6px;--r-sm:10px;--r-md:16px;--r-lg:16px;--r-sheet:22px;--rule-w:1px;--rule-heavy:2px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--dur-fast:.12s;--dur:.18s;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:var(--ease);--shadow-pop:0 8px 28px #17151224, 0 1px 2px #17151214;--nextmove-bg:#fffdf8;--nextmove-fg:#171512;--nextmove-rule:#ddd6c8;--rail-w:208px;--tabbar-h:70px;--topbar-h:57px;--content-max:760px}@media (max-width:640px){:root{--fs-body:15px}}:root{--fs-sub:14px}@media (min-width:1024px){:root{--fs-sm:15px;--fs-meta:13px;--fs-sub:15px}}:root,:root[data-theme-accent=oxblood]{--accent:#8c2f1f;--accent-soft:#e9dbd3}:root[data-theme-accent=forest]{--accent:#2f5d3a;--accent-soft:#dee1d7}:root[data-theme-accent=navy]{--accent:#223a6b;--accent-soft:#dcdde6}:root[data-theme-accent=mustard]{--accent:#7d5f0e;--accent-soft:#e9e3d2}:root[data-theme-accent=plum]{--accent:#5a2d5c;--accent-soft:#e3dbdb}:root{--course-1:#047469;--course-2:#27487e;--course-3:#7e58bc;--course-4:#c23678;--course-5:#03769b;--course-6:#653760;--course-7:#535b01;--course-hub:#565c64}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#141210;--surface:#1c1915;--surface-2:#262219;--surface-3:#2e2a22;--rule:#302b23;--rule-strong:#4e4739;--ink:#f2ede3;--ink-2:#cfc8ba;--ink-3:#9d9586;--ink-inverse:#141210;--surface-inverse:#f2ede3;--overlay:#0009;--signal:#e8917d;--signal-ink:#e8917d;--signal-soft:#392924;--calm:#72cf8c;--calm-soft:#1d2b20;--load-class:#776f5f;--load-due:var(--accent);--load-free:#97c97a;--load-class-on:#4e4739;--load-due-on:var(--accent-soft);--load-free-on:#3f6629;--warn:#e8b24c;--warn-soft:#2e2412;--danger:#f2826f;--danger-soft:#321c18;--focus:#7fb0ff;--on-signal:#171512;--edge:#776f5f;--accent:#e8917d;--on-accent:#141210;--accent-soft:#392924;--course-1:#3bae9f;--course-2:#799af1;--course-3:#cbb7fe;--course-4:#ffa0c3;--course-5:#07bff9;--course-6:#ce79d3;--course-7:#c5c98a;--course-hub:#a7aeb7;--shadow-pop:0 8px 28px #00000080, 0 1px 2px #0006;--nextmove-bg:#262219;--nextmove-fg:#f2ede3;--nextmove-rule:#f2ede329}:root[data-theme=dark],:root[data-theme=dark][data-theme-accent=oxblood]{--accent:#e8917d;--accent-soft:#392924}:root[data-theme=dark][data-theme-accent=forest]{--accent:#8fcf9c;--accent-soft:#293429}:root[data-theme=dark][data-theme-accent=navy]{--accent:#8fb2f2;--accent-soft:#292f39}:root[data-theme=dark][data-theme-accent=mustard]{--accent:#dcb54c;--accent-soft:#372f1b}:root[data-theme=dark][data-theme-accent=plum]{--accent:#d39fd6;--accent-soft:#362b34}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur:0s}}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh);font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1, "tnum" 1;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:2px}a:hover{text-decoration-color:currentColor}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-xs)}.skip{z-index:100;background:var(--ink);color:var(--ink-inverse);border-radius:var(--r-sm);padding:10px 14px;font-weight:600;text-decoration:none;position:absolute;top:-80px;left:12px}.skip:focus{top:12px}::selection{background:var(--accent-soft)}.n{font-variant-numeric:lining-nums tabular-nums}.t-display{font-family:var(--font-display);letter-spacing:-.025em;font-weight:600;line-height:var(--lh-tight);font-size:var(--fs-display);font-variation-settings:var(--opsz-display);text-wrap:pretty}.t-h1{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:var(--lh-tight);font-size:var(--fs-h1);font-variation-settings:var(--opsz-display)}.t-h2{font-family:var(--font-display);letter-spacing:-.015em;font-weight:600;line-height:var(--lh-snug);font-size:var(--fs-h2);font-variation-settings:var(--opsz-display)}.t-h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600;line-height:var(--lh-snug);font-size:var(--fs-h3)}.t-voice{font-family:var(--font-serif);font-weight:400;font-size:var(--fs-voice);color:var(--ink-2);text-wrap:pretty;line-height:1.4}.t-editorial{font-family:var(--font-serif);letter-spacing:0;font-weight:400;line-height:var(--lh-snug)}.t-editorial.i{font-style:italic}.t-mono{font-family:var(--font-sans);font-size:var(--fs-sm);letter-spacing:0;font-variant-numeric:lining-nums tabular-nums;font-variation-settings:var(--opsz-label)}.t-accent{color:var(--accent)}.t-meta{font-family:var(--font-sans);font-weight:500;font-size:var(--fs-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--ink-3);font-variation-settings:var(--opsz-label);font-variant-numeric:tabular-nums}.t-body{font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh)}.t-ui{font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.5}.t-sm{font-size:var(--fs-sm)}.t-muted{color:var(--ink-3)}.t-ink2{color:var(--ink-2)}.t-signal{color:var(--signal-ink)}.t-calm{color:var(--calm)}.row{align-items:center;gap:var(--s-2);display:flex}.row.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.push{margin-left:auto}.stack{gap:var(--s-3);flex-direction:column;display:flex}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.section{margin-top:var(--s-10)}.section:first-child{margin-top:0}.section-head{align-items:baseline;gap:var(--s-3);padding-bottom:var(--s-2);border-bottom:var(--rule-w) solid var(--rule);margin-bottom:var(--s-3);display:flex}.section-head>h2.t-meta{font-family:var(--font-display);font-size:var(--fs-md);letter-spacing:-.01em;text-transform:none;color:var(--ink);font-variation-settings:normal;font-weight:600}.section-head .aside{flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;margin-left:auto;display:flex}.btn{--b-bg:var(--surface);--b-fg:var(--ink);--b-bd:var(--rule-strong);border-radius:var(--r-sm);border:var(--rule-w) solid var(--b-bd);background:var(--b-bg);min-height:40px;color:var(--b-fg);font-family:var(--font-sans);font-weight:500;font-size:var(--fs-md);white-space:nowrap;letter-spacing:-.005em;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease), opacity var(--dur-fast);justify-content:center;align-items:center;gap:8px;padding:0 16px;line-height:1;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn.primary:disabled,.btn.signal:disabled{--b-bg:transparent;--b-fg:var(--ink);--b-bd:var(--rule-strong);opacity:.45}.btn.primary,.btn.signal{--b-bg:var(--accent);--b-fg:var(--on-accent);--b-bd:var(--accent);font-weight:var(--w-em);padding:0 20px}.btn.primary:hover:not(:disabled),.btn.signal:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, var(--ink));border-color:#0000}.btn.secondary{--b-bg:var(--surface);--b-fg:var(--ink);--b-bd:var(--edge);font-weight:600}.btn.quiet{--b-bg:transparent;--b-fg:var(--ink-2);--b-bd:transparent;min-height:32px;padding:0 10px;font-weight:500}.btn.quiet:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn.quiet.icon{min-height:38px;padding:0;text-decoration:none}.btn.danger{--b-fg:var(--danger)}.btn.sm{min-height:36px;font-size:var(--fs-sm);border-radius:var(--r-sm);padding:0 12px}.btn.lg{min-height:46px;font-size:var(--fs-lg);white-space:normal;overflow-wrap:anywhere;text-align:center;max-width:100%;padding:8px 22px;line-height:1.2}.btn.icon{width:38px;padding:0}.btn.icon.sm{width:30px}.btn.block{width:100%}.btn .ico{flex:none;width:16px;height:16px}.input,.textarea,.select{font-family:var(--font-sans);border-radius:var(--r-sm);background:var(--surface);border:var(--rule-w) solid var(--edge);width:100%;min-height:38px;color:var(--ink);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);outline:none;padding:0 12px}.input::placeholder,.textarea::placeholder{color:var(--ink-3)}.input:focus,.textarea:focus,.select:focus{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.input:disabled,.textarea:disabled,.select:disabled{opacity:.55;background:var(--surface-2)}.input.invalid,.textarea.invalid{border-color:var(--danger)}.textarea{min-height:88px;line-height:var(--lh);resize:vertical;padding:10px 12px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' fill='none' stroke='%236b665c' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}.field>label{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);font-weight:500}.field .hint{font-size:var(--fs-sm);color:var(--ink-3)}.field .error{font-size:var(--fs-sm);color:var(--danger)}.check{appearance:none;cursor:pointer;border:1.5px solid var(--edge);border-radius:var(--r-xs);background:var(--surface);width:24px;height:24px;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);flex:none;place-content:center;margin:0;display:inline-grid}.check:before{content:"";border:2.2px solid var(--ink-inverse);width:13px;height:7px;transition:transform var(--dur) var(--ease-out);border-top:0;border-right:0;margin-top:-2px;transform:rotate(-45deg)scale(0)}.check:checked{background:var(--ink);border-color:var(--ink)}.check:checked:before{transform:rotate(-45deg)scale(1)}.check:active{transform:scale(.92)}.check:disabled{opacity:.5;cursor:default}.kbd{font-family:var(--font-mono);border:1px solid var(--rule-strong);color:var(--ink-3);border-radius:3px;padding:3px 5px;font-size:10.5px;line-height:1}.tag{height:20px;font-family:var(--font-sans);font-variation-settings:var(--opsz-label);font-weight:500;font-size:var(--fs-sm);letter-spacing:0;text-transform:none;color:var(--ink-2);white-space:nowrap;align-items:center;gap:6px;padding:0;display:inline-flex}.tag:before{content:"";background:var(--ink-3);border-radius:50%;flex:none;width:6px;height:6px}.tag.signal{color:var(--signal-ink)}.tag.signal:before{background:var(--signal)}.tag.calm{color:var(--calm)}.tag.calm:before{background:var(--calm)}.tag.warn{color:var(--warn)}.tag.warn:before{background:var(--warn)}.tag.danger{color:var(--danger)}.tag.danger:before{background:var(--danger)}.tag.neutral{color:var(--ink-3)}.tag.neutral:before{background:var(--rule-strong)}.tag.outline{color:var(--ink-3)}.tag.outline:before{box-shadow:inset 0 0 0 1.5px var(--rule-strong);background:0 0}.source{display:inline-block;position:relative}.source>button{all:unset;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px dotted var(--rule-strong);padding-bottom:1px}.source>button:hover,.source>button[aria-expanded=true]{color:var(--ink);border-bottom-color:var(--ink)}.source>button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.source-pop{z-index:30;background:var(--surface);border:var(--rule-w) solid var(--rule-strong);border-radius:var(--r);min-width:240px;max-width:320px;font-size:var(--fs-sm);text-transform:none;letter-spacing:0;animation:pop var(--dur) var(--ease);padding:10px 12px;position:absolute;top:calc(100% + 6px);left:0}.source-pop.right{left:auto;right:0}.source-pop .q{font-family:var(--font-serif);font-style:italic;font-size:var(--fs-body);margin-bottom:6px}.source-pop dl{grid-template-columns:auto 1fr;gap:3px 10px;margin:0;display:grid}.source-pop dt{color:var(--ink-3);font-family:var(--font-sans);font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.04em;align-self:center}.source-pop dd{margin:0}.conf{vertical-align:middle;gap:2px;margin-left:6px;display:inline-flex}.conf i{background:var(--rule-strong);border-radius:1px;width:5px;height:9px}.conf.high i,.conf.medium i:nth-child(-n+2),.conf.low i:first-child{background:var(--ink)}.nextmove{color:var(--nextmove-fg);padding:var(--s-5);border:var(--rule-w) solid var(--nextmove-rule);border-left:3px solid var(--accent);border-radius:var(--r-lg);background:var(--nextmove-bg);box-shadow:0 1px 0 var(--rule), 0 10px 30px -18px #17150f59;position:relative}.nextmove .eyebrow{font-family:var(--font-sans);font-variation-settings:var(--opsz-label);font-weight:500;font-size:var(--fs-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--s-3);align-items:center;gap:10px;display:flex}.nextmove .eyebrow .course{color:var(--ink-3)}.nextmove .eyebrow{flex-wrap:wrap;row-gap:2px}.nextmove .eyebrow>span:first-child{white-space:nowrap}.nextmove .title{font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:var(--opsz-display);text-wrap:balance;margin-bottom:var(--s-2);font-size:26px;font-weight:600;line-height:1.12}.nextmove .nm-prep{font-family:var(--font-sans);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--ink-3);margin-bottom:var(--s-3)}.nextmove .say{font-family:var(--font-serif);font-size:var(--fs-lg);color:var(--ink-2);max-width:62ch;margin-bottom:var(--s-4);text-wrap:pretty;line-height:1.35}.nextmove .say+.say.second{margin-top:calc(-1 * var(--s-2));font-size:var(--fs-body);color:var(--ink-3)}.nextmove .reason{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink-2);font-variant-numeric:tabular-nums;margin-bottom:var(--s-5)}.nextmove .actions{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.nextmove.review .eyebrow,.nextmove.get_ahead .eyebrow,.nextmove.clear .eyebrow{color:var(--ink-3)}.nextmove .nm-footer{margin-top:var(--s-4)}.nextmove .nm-tail{margin-top:var(--s-2)}.nextmove .nm-strip{margin:calc(-1 * var(--s-2)) 0 var(--s-3)}.nextmove .alts{margin-top:var(--s-6);flex-direction:column;gap:10px;display:flex}.nextmove .alt{font-size:var(--fs-sm);color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.nextmove .alt:hover .alt-t{text-underline-offset:3px;color:var(--ink);text-decoration:underline}.nextmove .alt .t-meta{color:var(--ink-3);flex:none}.nextmove .alt .alt-t{color:var(--ink)}.nextmove .alt .alt-r{color:var(--ink-3)}.nextmove.clear{background:var(--accent-soft);padding:var(--s-6) var(--s-5);border-color:#0000}.nextmove.clear .title{font-size:var(--fs-h1);letter-spacing:-.02em}.nextmove.clear .reason,.nextmove.clear .say{color:var(--ink-2);font-size:var(--fs-lg)}.nextmove.clear .eyebrow{color:var(--ink-2)}.nextmove.clear-term{padding:var(--s-8) var(--s-6)}.nextmove.clear-term .title{font-size:var(--fs-display)}.nextmove.clear-week .title{font-size:var(--fs-h1)}.nm-corner{top:var(--s-4);right:var(--s-4);line-height:0;position:absolute}.nextmove.has-corner .eyebrow,.nextmove.has-corner .title{padding-right:80px}.nm-ornament{top:var(--s-4);right:var(--s-4);opacity:.9;pointer-events:none;width:56px;height:56px;position:absolute}.nm-ornament img,.nm-ornament svg{width:100%;height:100%}.nextmove.clear-term .nm-ornament{width:88px;height:88px}.nextmove.clear-unknown{background:var(--nextmove-bg);border:var(--rule-w) solid var(--nextmove-rule);border-left:3px solid var(--accent);padding:var(--s-5)}.nextmove.changed{animation:nudge var(--dur) var(--ease)}.nextmove:not(.clear) .eyebrow>span:first-child{color:var(--accent);font-weight:600}.nextmove .eyebrow:has(.course){gap:6px}.nextmove .eyebrow .course{text-transform:none;letter-spacing:0;color:var(--ink-3);font-size:13px;font-weight:500}.nextmove .nm-cost{font-family:var(--font-sans);color:var(--ink-2);background:var(--surface-2);border-radius:8px;margin:0;padding:7px 9px;font-size:13px}.nextmove .nm-skips{margin-top:var(--s-3);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.nextmove .nm-skips .nm-cost{flex:14rem;min-width:0}.nextmove .nm-skips .nm-not-now{flex:none;min-width:44px;min-height:44px;padding:0 10px}.nextmove .nm-cost b{color:var(--ink);font-weight:600}.nextmove .nm-cost.bare{background:0 0;padding:0}.nextmove .nm-cost .nm-not-doing{width:max-content;line-height:24px;font:inherit;color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px;white-space:nowrap;cursor:pointer;background:0 0;border:0;margin-left:8px;padding:0;display:inline-block}.nextmove .nm-cost.bare .nm-not-doing{margin-left:0}@media (pointer:coarse){.nextmove .nm-cost .nm-not-doing{min-height:44px;margin-top:-10px;margin-bottom:-10px;padding:10px 0}}.nextmove .actions .btn.lg{min-height:48px;padding:0 18px;font-size:15px;font-weight:600}.nextmove .actions{gap:8px}.nextmove .actions .btn.quiet{min-height:44px;padding:0 10px}@media (max-width:359px){.nextmove .actions{gap:6px}.nextmove .actions .btn.lg{padding:0 14px}.nextmove .actions .btn.quiet{padding:0 8px}}@media (max-width:599px){.nextmove{padding:16px}}@keyframes nudge{0%{transform:translateY(4px)}to{transform:none}}.path{flex-direction:column;margin:0;padding:0;list-style:none;display:flex;position:relative}.path:before{content:"";left:calc(var(--p-time,64px) + var(--s-3) + 9.5px);background:var(--rule);width:1px;position:absolute;top:14px;bottom:14px}.p-row{grid-template-columns:var(--p-time,64px) 24px 1fr;gap:0 var(--s-3);align-items:baseline;padding:8px 0;display:grid;position:relative}.p-row.hit{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--r);background:0 0;border:0;text-decoration:none}.p-row.hit:hover .p-title{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.p-time{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);font-variant-numeric:lining-nums tabular-nums;font-variation-settings:var(--opsz-label);white-space:nowrap;text-align:right}.p-node{align-self:start;width:24px;height:22px;position:relative}.p-node:before{content:"";border:1.5px solid var(--ink-3);background:var(--paper);box-sizing:border-box;border-radius:50%;width:8px;height:8px;position:absolute;top:7px;left:6px}.p-row.done .p-node:before{background:var(--ink-3);border-color:var(--ink-3)}.p-row.lit .p-node:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.p-row.lit .p-time{color:var(--accent)}.p-row.done .p-title,.p-row.done .p-time,.p-row.done .p-sub{color:var(--ink-3)}.p-body{min-width:0}.p-title{font-family:var(--font-serif);font-size:var(--fs-body);line-height:1.3;display:block}.p-sub,.p-trail{font-family:var(--font-sans);display:block}.p-sub{font-size:var(--fs-sm);color:var(--ink-3);margin-top:2px}@media (min-width:1024px){.p-sub{font-size:var(--fs-sub)}}.p-trail{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.nowline{border-top:1.5px solid var(--accent);height:0;margin:2px 0;position:relative}.nowline i{left:calc(var(--p-time,64px) + var(--s-3) + 5.5px);background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:-5px}.nowline.bare i{left:-4px}.nowline.bare{margin-left:4px}@media (prefers-reduced-motion:no-preference){.nowline i{animation:nowpulse 2.4s var(--ease) infinite}}@keyframes nowpulse{0%,to{box-shadow:0 0 0 0 var(--accent-soft)}50%{box-shadow:0 0 0 5px var(--accent-soft)}}.day{flex-direction:column;display:flex;position:relative}.day:before{content:"";left:calc(var(--p-time,64px) + var(--s-3) + 9.5px);background:var(--rule);width:1px;position:absolute;top:14px;bottom:14px}.slot{grid-template-columns:var(--p-time,64px) 24px 1fr;gap:2px var(--s-3);align-items:baseline;padding:8px 0;display:grid;position:relative}.slot .body{min-width:0}.slot .trail{flex-wrap:wrap;grid-column:3;align-items:center;gap:10px;display:flex}.slot.selectable{padding:0;display:block}.slot .slot-hit{grid-template-columns:var(--p-time,64px) 24px 1fr;gap:2px var(--s-3);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--r);background:0 0;border:0;align-items:baseline;padding:8px 0;text-decoration:none;display:grid}.slot .slot-hit .trail{flex-wrap:wrap;grid-column:3;align-items:center;gap:10px;display:flex}.slot .node{align-self:start;width:24px;height:22px;position:relative}.course-edge{border-left:3px solid var(--edge-c,var(--rule-strong))}.slot .node:before{content:"";border:1.5px solid var(--ink-3);background:var(--paper);box-sizing:border-box;border-radius:50%;width:8px;height:8px;position:absolute;top:7px;left:6px}.slot.past .node:before{background:var(--ink-3);border-color:var(--ink-3)}.slot.now .node:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.slot.open .node:before{border-style:dashed;border-color:var(--rule-strong)}.slot.open.now .node:before{border-style:solid}.slot .slot-hit:hover .what{text-underline-offset:3px;text-decoration:underline}.slot .slot-hit:focus-visible{outline-offset:0}.slot.cancelled .what{color:var(--ink-3);text-decoration:line-through}.slot.cancelled .time{color:var(--ink-3)}.slot .time{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);font-variant-numeric:lining-nums tabular-nums;font-variation-settings:var(--opsz-label);white-space:nowrap;text-align:right}.slot .what{font-family:var(--font-serif);font-size:var(--fs-body);line-height:1.3}.slot .what .lead{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--ink-3);vertical-align:1px;margin-right:6px}.slot .where{font-size:var(--fs-sm);color:var(--ink-3);margin-top:1px}.slot.open .what{font-family:var(--font-sans);font-weight:500;font-size:var(--fs-sm);color:var(--ink-3)}.slot .where{font-family:var(--font-sans)}.slot.open .time{color:var(--ink-3)}.slot.open .say{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink-2);text-wrap:pretty;max-width:52ch;margin-top:2px}.slot.open .trail{margin-top:4px}.slot.breather{padding:4px 0}.slot.breather .node:before{content:none}.slot.breather .what{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);font-style:italic}.slot.breather .time{color:var(--ink-3)}.day.rows:before{content:none}.day.rows .slot,.day.rows .slot .slot-hit{grid-template-columns:52px minmax(0,1fr);gap:2px 10px;padding:8px 0}:root[data-clock="12"] .day.rows .slot,:root[data-clock="12"] .day.rows .slot .slot-hit{grid-template-columns:64px minmax(0,1fr)}.day.rows .slot.selectable{padding:0}@media (pointer:coarse){.day.rows .slot.selectable .slot-hit{align-items:center;min-height:44px}}.slot.has-action,.day.rows .slot.has-action{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 8px;padding:0;display:grid}:root[data-clock="12"] .day.rows .slot.has-action{grid-template-columns:minmax(0,1fr) auto}.slot .slot-hit.static{cursor:default}.slot .slot-hit.static:hover .what{text-decoration:none}.slot-action{align-items:center;display:flex}.day.rows>.slot+.slot{border-top:1px solid var(--rule)}.day.rows .slot .time{text-align:left;font-size:12.5px}.day.rows .slot.now .time{color:var(--accent);font-weight:600}.day.rows .slot .what{font-family:var(--font-sans);font-size:15px;font-weight:500;line-height:1.35}.day.rows .slot .what .lead{letter-spacing:0;text-transform:none;vertical-align:0;margin-right:4px;font-size:12.5px;font-weight:400}.day.rows .slot .where{font-size:12.5px}@media (min-width:1024px){.day.rows .slot .time,.day.rows .slot .where{font-size:13px}}.day.rows .slot .trail,.day.rows .slot .slot-hit .trail{grid-column:2}.day.rows .slot.past .what{color:var(--ink)}.day.rows .slot.open .body{background:var(--calm-soft);border-radius:8px;margin-left:-8px;padding:6px 8px}.day.rows .slot.open .what{color:var(--calm);font-size:13.5px;font-weight:600}.day.rows .slot.open .say{font-family:var(--font-serif);color:var(--ink-2);overflow-wrap:anywhere;margin-top:1px;font-size:14.5px;line-height:1.35}.day.rows .slot.open .slot-hit:hover .what{text-underline-offset:3px;text-decoration:underline}.day.rows .nowline i{left:-4px}.day.rows .nowline{margin-left:4px}.slot.past .what,.slot.past .time,.slot.past .where{color:var(--ink-3)}.slot.now .time{color:var(--accent)}.slot.changed .what:after{content:attr(data-change);font-family:var(--font-sans);font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.04em;color:var(--signal-ink);margin-left:8px}.slot.cancelled .where{color:var(--ink-3)}.slot.cancelled.async .what{text-decoration:none}.deadline{gap:var(--s-2) var(--s-4);border-top:1px solid var(--rule);color:inherit;grid-template-columns:1fr auto;align-items:baseline;padding:10px 0;text-decoration:none;display:grid}.deadline:first-child{border-top:0}a.deadline:hover .d-title,button.deadline:hover .d-title{text-underline-offset:3px;text-decoration:underline}.deadline .d-title{font-family:var(--font-sans);font-weight:400;font-size:var(--fs-body)}.deadline .d-meta{font-size:var(--fs-sm);color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.deadline .d-when{font-family:var(--font-sans);font-size:var(--fs-sm);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink-2);grid-area:1/2}.deadline .d-when.soon{color:var(--ink);font-weight:500}.deadline .d-when.over{color:var(--signal-ink);font-weight:500}.deadline.done .d-title{color:var(--ink-3);text-decoration:line-through}.deadline .d-course{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.deadline.has-check{grid-template-columns:auto 1fr auto}.deadline.has-check .check{align-self:center}.deadline .d-body{min-width:0}.deadline.has-check .d-when{grid-area:1/3}.deadline .d-instr{font-size:var(--fs-sm);color:var(--ink-2);grid-column:1/-1;padding-left:0}.deadline.has-check .d-instr{grid-column:2/-1}.alert{gap:var(--s-3);border-top:var(--rule-w) solid var(--rule);grid-template-columns:auto 1fr;align-items:start;padding:10px 0;display:grid}.alert+.alert{margin-top:var(--s-2)}.alert .a-ico{width:18px;height:18px;color:var(--warn);margin-top:2px}.alert.exam_soon .a-ico,.alert.at_risk .a-ico{color:var(--warn)}.alert.overdue .a-ico{color:var(--danger)}.alert.schedule_change .a-ico{color:var(--calm)}.alert.exam_soon,.alert.overdue,.alert.schedule_change{background:0 0}.alert .a-text{font-size:var(--fs-md)}.alert .a-foot{align-items:center;gap:10px;margin-top:4px;display:flex}.ai-actions{flex-wrap:wrap;gap:8px;display:flex}.ai-action.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);text-align:left;align-items:flex-start;padding:12px 16px}.ai-action.primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, var(--ink))}.ai-action.primary .ico{color:var(--on-accent);margin-top:2px}.ai-action .aa-text{flex-direction:column;gap:2px;min-width:0;display:flex}.ai-action .aa-label{font-weight:var(--w-em)}.ai-action .aa-hint{font-size:var(--fs-sm);opacity:.85;white-space:normal;font-weight:400}.ai-action{border-radius:var(--r);border:var(--rule-w) solid var(--rule-strong);background:var(--surface);min-height:36px;font-family:var(--font-sans);font-weight:500;font-size:var(--fs-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);align-items:center;gap:8px;padding:0 12px 0 10px;display:inline-flex}.ai-action:hover{background:var(--surface-2);border-color:var(--ink)}.ai-action .ico{width:15px;height:15px;color:var(--ink-3)}.notice{border-left:var(--rule-heavy) solid var(--rule-strong);padding:12px 0 12px 14px}.notice .n-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);letter-spacing:-.01em;margin-bottom:4px}.notice .n-body{color:var(--ink-2);font-size:var(--fs-sm)}.notice .n-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.notice.error{border-left-color:var(--danger)}.notice.warn{border-left-color:var(--warn)}.notice.calm{border-left-color:var(--calm)}.notice details{font-size:var(--fs-sm);color:var(--ink-3);margin-top:8px}.notice details pre{font-family:var(--font-mono);font-size:var(--fs-meta);white-space:pre-wrap;margin:6px 0 0}.empty{padding:var(--s-8) 0;max-width:46ch}.empty .e-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h2);letter-spacing:-.02em;margin-bottom:6px}.empty .e-body{color:var(--ink-2)}.empty .e-actions{margin-top:var(--s-4);flex-wrap:wrap;gap:8px;display:flex}.skel{background:var(--surface-2);color:#0000;border-radius:3px;position:relative;overflow:hidden}.skel.line{height:12px}.skel.text:after{content:"";background:repeating-linear-gradient(to bottom, var(--surface-2) 0 12px, var(--paper) 12px 20px);position:absolute;inset:0}.spinner{border:2px solid var(--rule-strong);border-top-color:var(--ink);vertical-align:-2px;border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.tabs{border-bottom:var(--rule-w) solid var(--rule);scrollbar-width:none;gap:0;display:flex;overflow:auto hidden}.tabs::-webkit-scrollbar{display:none}.tab{font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink-3);cursor:pointer;white-space:nowrap;transition:color var(--dur-fast);background:0 0;border:0;border-bottom:1.5px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.sheet-backdrop{background:var(--overlay);z-index:50;animation:fade var(--dur) var(--ease-out);display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r);min-width:0;max-width:100vw;max-height:100%;box-shadow:var(--shadow-pop);outline:none;flex-direction:column;display:flex}.sheet-backdrop.side{justify-content:flex-end}.sheet-backdrop.side .sheet{width:min(480px,94vw);height:100%;animation:slide var(--dur) var(--ease);border-radius:0}@media (max-width:640px){.sheet-backdrop.side .sheet{width:100%}}.sheet-backdrop.center{justify-content:center;align-items:flex-end}.sheet-backdrop.center .sheet{width:100%;max-height:92vh;border-radius:var(--r-sheet) var(--r-sheet) 0 0;max-height:92dvh;animation:rise var(--dur) var(--ease)}@media (min-width:640px){.sheet-backdrop.center{padding:var(--s-6);align-items:center}.sheet-backdrop.center .sheet{border-radius:var(--r-lg);width:min(540px,100%)}}.sheet-backdrop.top{justify-content:center;align-items:stretch}.sheet-backdrop.top .sheet{width:100%;height:100%;animation:rise var(--dur) var(--ease);border:0;border-radius:0}@media (min-width:640px){.sheet-backdrop.top{padding:12vh var(--s-6) var(--s-6);align-items:flex-start}.sheet-backdrop.top .sheet{border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);width:min(540px,100%);height:auto}}.sheet-backdrop.responsive{justify-content:center;align-items:flex-end}.sheet-backdrop.responsive .sheet{width:100%;max-height:92vh;border-radius:var(--r-sheet) var(--r-sheet) 0 0;max-height:92dvh;animation:rise var(--dur) var(--ease)}.sheet-backdrop.kb .sheet{max-height:100%}.sheet-backdrop.kb:after{content:"";left:0;right:0;top:var(--seen-bottom,100%);background:var(--overlay);pointer-events:none;position:fixed;bottom:0}@media (max-width:639px){.sheet-backdrop.top.kb:after{background:var(--surface)}}.sheet .s-grab{background:var(--rule-strong);border-radius:2px;flex:none;width:36px;height:4px;margin:8px auto 0}@media (min-width:1024px){.sheet-backdrop.responsive{justify-content:flex-end;align-items:stretch}.sheet-backdrop.responsive .sheet{width:min(480px,94vw);height:100%;max-height:none;animation:slide var(--dur) var(--ease);border-radius:0}.sheet-backdrop.responsive .s-grab{display:none}}.sheet-backdrop.drawer{justify-content:flex-start}.sheet-backdrop.drawer .sheet{border:0;border-right:var(--rule-w) solid var(--rule);width:min(340px,88vw);height:100%;animation:slide-left var(--dur) var(--ease);border-radius:0}@keyframes slide-left{0%{transform:translate(-16px)}}.sheet .s-head{align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:var(--rule-w) solid var(--rule);display:flex}.sheet .s-head h2{flex:1}.sheet .s-body{padding:var(--s-5);overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.sheet-backdrop.center .sheet .s-body:last-child,.sheet-backdrop.responsive .sheet .s-body:last-child{padding-bottom:calc(var(--s-5) + env(safe-area-inset-bottom,0px))}.sheet-backdrop.center .sheet .s-foot,.sheet-backdrop.responsive .sheet .s-foot{padding-bottom:calc(var(--s-3) + env(safe-area-inset-bottom,0px))}.sheet .s-foot{gap:var(--s-2);padding:var(--s-3) var(--s-5);border-top:var(--rule-w) solid var(--rule);justify-content:flex-end;display:flex}@keyframes fade{0%{background:0 0}}@keyframes slide{0%{transform:translate(16px)}}@keyframes rise{0%{transform:translateY(12px)}}@keyframes pop{0%{transform:translateY(3px)}}.toasts{left:50%;bottom:calc(var(--tabbar-h) + 12px);z-index:60;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}@media (min-width:1024px){.toasts{left:auto;right:var(--s-6);bottom:var(--s-6);transform:none}}.toast{pointer-events:auto;border-radius:var(--r);background:var(--surface-inverse);color:var(--ink-inverse);animation:rise var(--dur) var(--ease);font-size:var(--fs-sm);align-items:center;gap:12px;padding:10px 12px 10px 14px;display:flex}.toast .t-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md)}.toast .dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.toast.ok .dot{background:var(--calm)}.toast.error .dot{background:var(--danger)}.toast .toast-action{color:inherit;text-underline-offset:3px;font-weight:600;text-decoration:underline}.toast .msg{flex:1;min-width:0}.toast .btn.quiet{--b-fg:var(--ink-inverse)}.toast .btn.quiet:hover{color:var(--ink-inverse);background:#7f7f7f33}.ico{vertical-align:middle;flex:none;width:18px;height:18px;display:inline-block}@media (pointer:coarse){.btn.primary,.btn.sm.primary,.btn.signal,.btn.secondary,.btn.sm.secondary,.ai-action.primary{min-height:44px}.btn.primary:not(.sm),.btn.signal:not(.sm){min-height:48px}.btn{min-height:44px}.btn.sm{min-height:44px;padding:0 12px}.link-quiet,.why-toggle,.turn-actions button,.thread-controls button,.day-timeless a{min-height:44px}.btn.icon{width:44px}.btn.icon.sm{width:40px}.btn.quiet.icon{min-height:44px}.btn.quiet.icon.sm{width:44px}.btn.quiet{min-height:44px}.tab{min-height:44px;padding:12px 14px}.check{width:24px;height:24px;position:relative}.check:before{width:13px;height:7px}.check:after{content:"";position:absolute;inset:-10px}.ai-action{min-height:44px}.source>button{margin:-8px 0;padding:8px 0;display:inline-block}.input,.select{min-height:44px;font-size:16px}.textarea{font-size:16px}.slot .slot-hit{padding:12px 0}}.ai-thread{margin-top:var(--s-4);gap:var(--s-4);flex-direction:column;display:flex}.ai-turn{gap:var(--s-3);grid-template-columns:28px 1fr;display:grid}.ai-turn .who{background:var(--surface-2);width:28px;height:28px;color:var(--ink-2);border-radius:50%;place-content:center;display:grid}.ai-turn .who .ico{width:15px;height:15px}.ai-turn .bubble{min-width:0}.ai-turn .verb{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:var(--track-meta);text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:4px;display:flex}.ai-turn .verb .cost{color:var(--ink-3);text-transform:none;letter-spacing:0;margin-left:auto}.ai-turn .said{font-family:var(--font-serif);font-size:var(--fs-lg);color:var(--ink);margin-bottom:6px;line-height:1.35}.ai-turn .said:before{content:"“";color:var(--ink-3)}.ai-turn .said:after{content:"”";color:var(--ink-3)}.ai-prose{font-size:var(--fs-md);line-height:var(--lh-loose);max-width:64ch}.ai-prose>:first-child{margin-top:0}.ai-prose>:last-child{margin-bottom:0}.ai-prose p{margin:0 0 10px}.ai-prose h1,.ai-prose h2,.ai-prose h3{font-family:var(--font-serif);font-size:var(--fs-body);letter-spacing:0;margin:14px 0 4px;font-weight:600}.ai-prose ul,.ai-prose ol{margin:0 0 10px;padding-left:22px}.ai-prose li{margin:2px 0}.ai-prose hr{border:0;border-top:1px solid var(--rule);margin:12px 0}.ai-prose blockquote{border-left:2px solid var(--rule-strong);color:var(--ink-2);margin:8px 0;padding:2px 0 2px 12px;font-style:italic}.ai-prose code{font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--surface-2);border-radius:3px;padding:1px 5px}.ai-prose pre{background:var(--surface-2);border:1px solid var(--rule);border-radius:var(--r-sm);font-size:var(--fs-sm);padding:10px 12px;overflow:auto}.ai-prose strong{font-weight:var(--w-em)}.ai-notice{color:var(--ink-2);font-style:italic}.ai-thinking{color:var(--ink-3);font-size:var(--fs-sm);align-items:center;gap:8px;display:inline-flex}.ai-thinking i{background:var(--accent);width:6px;height:6px;animation:pulse 1.2s var(--ease) infinite;border-radius:50%}.ai-thinking i:nth-child(2){animation-delay:.2s}.ai-thinking i:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.ai-compose{margin-top:var(--s-2);align-items:flex-end;gap:8px;display:flex}.ai-compose .textarea{min-height:44px;max-height:200px}.ai-foot{margin-top:var(--s-2);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ai-privacy{font-size:var(--fs-meta);color:var(--ink-3);font-family:var(--font-sans);letter-spacing:.02em}.proposal{margin-top:var(--s-3);border-top:var(--rule-w) solid var(--rule);border-bottom:var(--rule-w) solid var(--rule);padding:var(--s-4) 0}.proposal .p-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-lg);letter-spacing:-.01em}.proposal .p-body{color:var(--ink-2);font-size:var(--fs-sm);margin:2px 0 10px}.proposal ol{margin:0;padding:0;list-style:none}.proposal li{border-top:1px solid var(--rule);align-items:center;gap:10px;padding:7px 0;display:flex}.proposal li:first-child{border-top:0}.proposal li label{cursor:pointer;flex:1}.proposal li.off label{color:var(--ink-3);text-decoration:line-through}.proposal li .est{font-family:var(--font-sans);font-size:var(--fs-meta);color:var(--ink-3)}.proposal .p-actions{margin-top:var(--s-3);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.proposal .p-note{font-size:var(--fs-meta);color:var(--ink-3);margin-left:auto}.material{border-top:1px solid var(--rule);align-items:center;gap:10px;padding:8px 0;display:flex}.material:first-child{border-top:0}.material .ico{color:var(--ink-3)}.note{border-top:1px solid var(--rule);padding:10px 0}.note:first-child{border-top:0}.note .n-title{font-weight:var(--w-em);margin-bottom:2px}.note .n-body{white-space:pre-wrap;font-size:var(--fs-body);color:var(--ink-2);line-height:1.5}.note .n-when{margin-top:4px}.margin{font-family:var(--font-sans);font-size:var(--fs-md)}.margin-list{margin:0;padding:0;list-style:none}.m-item{border-top:var(--rule-w) solid var(--rule)}.m-item:first-child{border-top:0}.m-row{justify-content:space-between;align-items:baseline;gap:var(--s-3);width:100%;min-height:40px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:var(--r);background:0 0;border:0;padding:9px 0;text-decoration:none;display:flex}.m-row:hover .m-sentence{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.m-row.quiet{color:var(--ink-3)}.m-sentence{font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh-snug)}.m-chev{width:16px;height:16px;color:var(--ink-3);transition:transform var(--dur-fast) var(--ease);flex:none;transform:rotate(-90deg)}.m-item.open .m-chev{transform:rotate(0)}.m-panel{padding:0 0 var(--s-4);font-family:var(--font-serif);font-size:var(--fs-body)}.m-panel[hidden]{display:none}.page-with-margin{gap:var(--s-8) var(--s-10);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (min-width:1024px){.page-with-margin{grid-template-columns:minmax(0, var(--content-max)) minmax(240px, 300px)}.page-with-margin>.margin{top:var(--s-6);position:sticky}}.composer{gap:var(--s-2);flex-direction:column;display:flex}.composer-lead{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3)}.composer-box{border:var(--rule-w) solid var(--rule-strong);background:var(--surface);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:18px;flex-direction:column;gap:2px;padding:10px 8px 8px 14px;display:flex}.composer-box:focus-within{border-color:var(--ink-3);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink) 7%, transparent)}.composer-input{resize:none;width:100%;font-family:var(--font-serif);font-size:var(--fs-body);line-height:var(--lh);color:var(--ink);background:0 0;border:0;outline:none;min-height:28px;padding:2px 6px 2px 0}.composer-input::placeholder{color:var(--ink-3)}.composer-input:disabled{opacity:.55}.composer-foot{justify-content:space-between;align-items:flex-end;gap:var(--s-2);min-height:36px;display:flex}.composer-words{gap:2px var(--s-3);font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);flex-wrap:wrap;flex:auto;align-items:center;min-width:0;display:flex}.composer-foot>.btn{flex:none;margin-left:auto}.composer-send{background:var(--accent);width:36px;height:36px;color:var(--on-accent);cursor:pointer;transition:opacity var(--dur-fast) var(--ease);border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.composer-send .ico{width:18px;height:18px}.composer-send:disabled{background:var(--accent);color:var(--on-accent);opacity:.45;cursor:default}.composer-send:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (max-width:599px){.composer-words{font-size:var(--fs-meta);gap:0 2px}.composer-words .btn.sm{font-size:var(--fs-meta);padding:0 6px}}.composer-lead .thinking{min-height:24px}.composer.dropping .composer-box{outline:2px dashed var(--rule-strong);outline-offset:2px}.composer .btn.primary{transition:opacity var(--dur-fast) var(--ease)}.composer:not(.has-text) .btn.primary{opacity:.45}.composer.sticky{background:var(--surface);padding-top:var(--s-2);position:sticky;bottom:0}.m-row.static{cursor:default}.m-item.m-node:empty{display:none}.m-row.static:hover .m-sentence{text-decoration:none}@media (pointer:coarse){.m-row{min-height:44px}}body{font-synthesis-style:none}:where(em,i,cite),.t-editorial.i,.source-pop .q,.ai-prose blockquote,.ai-notice{font-weight:var(--w-em)}.btn{font-family:var(--font-display)}#root{min-height:100%}:root{--head-off:0px}html{scroll-padding-top:calc(var(--head-off) + 12px)}.shell{flex-direction:column;min-height:100%;display:flex}.content{width:100%;min-width:0;padding:var(--s-4) var(--s-4) calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--corner-h) + 32px);flex:1}.page{max-width:var(--content-max);margin:0 auto}@media (min-width:600px) and (max-width:1023px){:root{--tablet-col:680px}.page,.page.week-page,.demo-line{max-width:var(--tablet-col)}.content>.demo-line{margin-left:auto;margin-right:auto}.topbar-in{max-width:calc(var(--tablet-col) + 2 * var(--s-4));margin:0 auto}.tabbar{padding-left:max(env(safe-area-inset-left), calc((100vw - var(--tablet-col)) / 2));padding-right:max(env(safe-area-inset-right), calc((100vw - var(--tablet-col)) / 2))}}@media (min-width:1024px){.page.with-margin{max-width:calc(var(--content-max) + var(--s-10) + 300px)}}.page-head{margin-bottom:var(--s-6)}.page-head .sub{color:var(--ink-2);font-size:var(--fs-body);text-wrap:pretty;max-width:62ch;margin-top:6px;line-height:1.4}.newbuild{margin:calc(-1 * var(--s-6)) calc(-1 * var(--s-4)) var(--s-4);background:var(--ink);color:var(--paper);font-size:var(--fs-sm);justify-content:center;align-items:center;gap:12px;padding:10px 12px;display:flex}@media (min-width:1024px){.newbuild{margin:calc(-1 * var(--s-12)) calc(-1 * var(--s-10)) var(--s-6)}}.newbuild .btn{--b-bg:var(--accent);--b-fg:var(--on-accent)}.topbar{border-bottom:var(--rule-w) solid var(--rule);background:var(--paper)}.topbar-in{justify-content:space-between;align-items:center;gap:var(--s-4);min-height:56px;padding:0 var(--s-4);display:flex}.topbar .brand{letter-spacing:-.02em;font-variation-settings:var(--opsz-display);align-items:center;gap:8px;font-size:20px;font-weight:600;display:inline-flex}.topbar .brand-mark{width:24px;height:24px}@media (min-width:1024px){.topbar .sumi-header-logo{width:62.4652px;height:30px}}.brand-mark{width:26px;height:26px;color:var(--ink)}.brand-mark.lg{width:34px;height:34px}.brand-in{display:inline-flex}.brand-mark{--mark-anim:0}@media (prefers-reduced-motion:no-preference){.brand-in{animation:markin .62s var(--ease-out) both}.brand-mark.working,.thinking-mark{--mark-anim:1;--mark-loop:infinite;--mark-dir:alternate}}@keyframes markin{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){:root{--mark-anim:0}}.avatar-mark{color:var(--ink);flex:none}.brand{align-items:center;gap:6px;display:inline-flex}.nm-ornament svg,.thinking-mark{color:var(--ink)}.topnav{display:none}.top-actions{align-items:center;gap:var(--s-2);display:flex}.avatar{background:var(--surface-2);border:var(--rule-w) solid var(--rule-strong);width:32px;height:32px;color:var(--ink);font-size:14px;font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.avatar.active{border-color:var(--ink);color:var(--ink)}.avatar:after{content:"";border-radius:50%;position:absolute;inset:-6px}.avatar{cursor:pointer;padding:0}.avatar[aria-expanded=true]{border-color:var(--ink)}.avatar-wrap{position:relative}.avatar-menu{z-index:45;background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r);min-width:200px;box-shadow:var(--shadow-pop);animation:pop var(--dur-fast) var(--ease);flex-direction:column;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.avatar-item{text-align:left;border-radius:var(--r-xs);min-height:40px;font:inherit;font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink);cursor:pointer;background:0 0;border:0;padding:10px 12px}.avatar-item:hover,.avatar-item:focus-visible{background:var(--surface-2)}@media (pointer:coarse){.avatar-item{min-height:44px}}@media (prefers-reduced-motion:reduce){.avatar-menu{animation:none}}.tabbar .door{position:relative}.tabbar .door-circle{background:var(--accent);width:56px;height:56px;color:var(--on-accent);box-shadow:0 10px 24px -8px color-mix(in srgb, var(--accent) 60%, transparent);transition:transform var(--dur-fast) var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:-26px;display:inline-flex}.tabbar .door-circle .ico{stroke-width:2.25px;width:26px;height:26px}.tabbar .door:active .door-circle{transform:scale(.96)}.tabbar .door:focus-visible{outline:none}.tabbar .door:focus-visible .door-circle{outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tabbar .door-circle{transition:none}}.door-btn,.search-btn,.ask-rail{display:none}.ask-scope{margin-bottom:8px}.ask-scope .chips{margin-top:0}.chip.on{background:var(--ink);color:var(--ink-inverse);border-color:var(--ink)}.wrong-cats .chip.needs{border-color:var(--signal)}.ask-scope .chips{gap:4px 14px}@media (max-width:599px){.ask-scope .ask-scope-courses{scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.ask-scope .ask-scope-courses::-webkit-scrollbar{display:none}.ask-scope .ask-scope-courses .chip{scroll-snap-align:start;white-space:nowrap;flex:none}.ask-scope .ask-scope-courses{margin:-4px;padding:4px;scroll-padding-inline:4px}}.ask-scope .chip{min-height:32px;color:var(--ink-3);background:0 0;border:0;padding:4px 0;text-decoration:none}.ask-scope .chip:hover{color:var(--ink);background:0 0}.ask-scope .chip.on{color:var(--ink);box-shadow:inset 0 -1.5px 0 var(--ink);background:0 0}.chips.nb-course-filter{gap:4px 14px;margin:0 0 12px}.nb-course-filter .chip{min-height:32px;color:var(--ink-3);white-space:nowrap;background:0 0;border:0;padding:4px 0}.nb-course-filter .chip:hover{color:var(--ink);background:0 0}.nb-course-filter .chip.on{color:var(--ink);text-underline-offset:6px;background:0 0;text-decoration:underline;text-decoration-thickness:1.5px}@media (pointer:coarse){.nb-course-filter .chip{min-height:44px}}@media (max-width:599px){.chips.nb-course-filter{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin:-4px -4px 8px;padding:4px;scroll-padding-inline:4px;overflow-x:auto}.nb-course-filter::-webkit-scrollbar{display:none}.nb-course-filter .chip{flex:none}}.ask-scope-tasks{border-left:2px solid var(--rule);margin-top:2px;padding-left:12px}.ask-scope-tasks .chip{font-family:var(--font-serif);font-size:var(--fs-md);text-transform:none}.ask-reading{color:var(--ink-3);text-transform:none;letter-spacing:0;margin:0 0 14px;font-size:13px}.door-over{color:var(--ink-2)}.door-nudge .link-quiet{font-size:inherit;color:var(--ink)}.tabbar{height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));background:var(--surface);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);border-top:var(--rule-w) solid var(--rule);padding-bottom:env(safe-area-inset-bottom);z-index:40;transition:transform var(--dur) var(--ease);grid-template-columns:1fr 1fr 64px 1fr 1fr;display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar.away{transform:translateY(calc(100% + 32px))}:root[data-sheet-open] .tabbar.away{transform:none}@media (prefers-reduced-motion:reduce){.tabbar{transition:none}}.tabbar a,.tabbar .door,.tabbar .tab-search{min-width:0;color:var(--ink-3);font-family:var(--font-sans);letter-spacing:.01em;text-transform:none;white-space:nowrap;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:flex-start;align-items:center;gap:4px;padding:9px 0 0;font-size:11.5px;font-weight:500;text-decoration:none;display:flex}.tabbar a .ico{flex:none;width:22px;height:22px}.tabbar a.active,.tabbar a.active .ico{color:var(--ink)}.tabbar .tab-search .ico{flex:none;width:22px;height:22px}.tabbar .tab-search.active{color:var(--ink)}.tabbar a:focus-visible,.tabbar .tab-search:focus-visible{outline:3px solid var(--focus);outline-offset:-3px;border-radius:var(--r)}@media (min-width:1024px){.topbar-in{max-width:calc(var(--content-max) + var(--s-10) + 300px + 2 * var(--s-10));padding:0 var(--s-10);gap:var(--s-6);margin:0 auto}.topnav{flex:1;display:block}.topnav ul{gap:var(--s-1);margin:0;padding:0;list-style:none;display:flex}.topnav a{min-height:40px;padding:0 var(--s-3);border-radius:var(--r);color:var(--ink-2);font-family:var(--font-sans);font-weight:500;font-size:var(--fs-md);transition:color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);align-items:center;text-decoration:none;display:inline-flex}.topnav a:hover{color:var(--ink);background:var(--surface-2)}.topnav a.active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink);border-radius:0}.door-btn{border-radius:var(--r);border:1px solid var(--edge);background:var(--surface);min-height:40px;color:var(--ink);font:inherit;font-family:var(--font-sans);font-size:var(--fs-md);cursor:pointer;align-items:center;gap:8px;margin:0;padding:0 14px;font-weight:600;display:inline-flex}.ask-rail{border-radius:var(--r);border:1px solid var(--rule-strong);background:var(--paper);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;align-items:center;gap:8px;margin:0;padding:0 14px 0 10px;font-weight:600;display:inline-flex}.ask-rail .ico{width:18px;height:18px;color:var(--ink-2)}.ask-rail:hover{background:var(--surface-2);border-color:var(--ink)}.ask-mark{color:var(--ink);flex:none}.door-btn:hover{background:var(--surface-2);border-color:var(--ink)}.search-btn{border-radius:var(--r);border:1px solid var(--rule);background:var(--paper);min-height:40px;color:var(--ink-2);font:inherit;cursor:pointer;align-items:center;gap:8px;margin:0;padding:0 10px;display:inline-flex}.search-btn .ico{width:18px;height:18px}.search-btn kbd{font:inherit;font-size:var(--fs-meta);color:var(--ink-3);border:1px solid var(--rule);border-radius:4px;padding:0 5px}.search-btn:hover{background:var(--surface-2);border-color:var(--ink);color:var(--ink)}.content{padding:var(--s-10) var(--s-10) var(--s-16)}.content:has(.chat-page){padding-bottom:var(--s-4)}.content .chat-page{min-height:calc(100dvh - var(--head-off) - var(--s-10) - var(--s-4))}.tabbar{display:none}:root{--head-off:var(--topbar-h)}.topbar{z-index:30;position:sticky;top:0}}section[id],.section[id]{scroll-margin-top:calc(var(--head-off,0px) + 16px)}.finished{margin-top:28px}.finished-toggle{color:var(--ink-3);cursor:pointer;font-family:var(--font-sans);background:0 0;border:0;padding:6px 0}.finished-toggle:hover{color:var(--ink-2)}.course-row.archived .cname,.course-row.archived .cmeta{color:var(--ink-3)}.course-row.archived .cmeta{align-items:center}.ov-conv{margin:4px 0 8px}.rough-week{border-top:1px solid var(--rule);margin-top:28px;padding-top:14px}.heavy-line{align-items:center;gap:8px;margin-top:12px;display:flex}.overwhelmed.menu{text-align:left;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);width:100%;font-size:var(--fs-md);color:var(--ink);padding:14px 0;text-decoration:none;display:block}.overwhelmed.menu:after{content:" →";color:var(--ink-3)}.overwhelmed{font-size:var(--fs-sm);color:var(--ink-3);text-decoration:none}.overwhelmed:hover{color:var(--ink-2);text-underline-offset:3px;text-decoration:underline}.overwhelmed.heavy{color:var(--ink-2)}.ow{gap:22px}.ow-part h3{margin-bottom:6px}.ow-part p{margin:0 0 10px}.ow-list{margin:0;padding:0;list-style:none}.ow-list li{border-top:1px solid var(--rule);align-items:center;gap:12px;padding:10px 0;display:flex}.ow-list li:first-child{border-top:0}.ow-list li.parked .ow-title{color:var(--ink-3)}.ow-list.plain li{align-items:flex-start}.ow-title{color:var(--ink);font-weight:500;text-decoration:none}a.ow-title:hover{text-underline-offset:3px;text-decoration:underline}.ow-breath{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.ow-phase{font-size:26px;line-height:1.1}.ai-sources{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);margin-top:8px;font-size:13px;font-weight:400}.ai-sources a{color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:3px}.turn-steps{font-family:var(--font-sans);color:var(--ink-3);text-transform:none;margin:8px 0 0;font-size:13px;line-height:1.45}button.turn-steps{min-height:40px;font-family:var(--font-sans);letter-spacing:0;color:var(--ink-3);text-align:left;align-items:center;gap:4px;margin-top:4px;padding:0;font-size:13px;font-weight:400;display:inline-flex}.turn-steps-chev{display:inline-block}.turn-steps-sources{scroll-margin-bottom:calc(var(--tabbar-h,0px) + env(safe-area-inset-bottom) + 160px)}.cite{background:var(--surface-2,var(--ground));min-width:1.35em;color:var(--ink-2);font-family:var(--font-sans);text-align:center;vertical-align:.12em;border:0;border-radius:4px;margin:0 2px;padding:0 4px;font-size:11px;font-style:normal;font-weight:600;line-height:1.5;text-decoration:none;display:inline-block;position:relative}button.cite{cursor:pointer}button.cite:after{content:"";position:absolute;inset:-12px -2px}button.cite:hover,button.cite:focus-visible{background:var(--edge);color:var(--ink)}.cite-n{margin:0 4px 0 0}.ai-sources [data-n]{scroll-margin-bottom:calc(var(--tabbar-h,0px) + env(safe-area-inset-bottom) + 160px)}.ai-sources .src-hit{background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:4px}.next-steps{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.next-step{text-align:left}@media (pointer:coarse){.next-step{min-height:44px}}button.turn-steps[aria-expanded=true] .turn-steps-chev{transform:rotate(90deg)}.thread{flex-direction:column;min-height:0;display:flex}.thread-context{color:var(--ink-3);margin-bottom:14px}.thread-turns{flex-direction:column;flex:none;gap:26px;display:flex}.turn{flex-direction:column;gap:10px;display:flex}.msg.me{justify-content:flex-end;display:flex}.msg.me .bubble{background:var(--surface-2);max-width:82%;color:var(--ink);font-size:var(--fs-md);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 18px 6px;padding:10px 16px;line-height:1.45}.msg.ai .ai-prose{font-size:17px;line-height:1.55}.msg.ai .ai-prose a,.msg.ai .ai-prose code{overflow-wrap:anywhere}.turn-verb{margin:4px 0 2px}.msg.ai{max-width:100%}.msg.ai .wordmark{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--ink-2);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;font-weight:600;display:flex}.msg.ai .wordmark-mark{flex:none;width:18px;height:18px}.msg.ai .chat-fig-row{align-items:center;gap:10px;min-height:48px;margin-bottom:6px;display:flex}.msg.ai .chat-fig{color:var(--ink);flex:none}.msg.ai .ai-prose.streaming>:is(p,h1,h2,h3,h4,blockquote):last-child:after,.msg.ai .ai-prose.streaming>:is(ul,ol):last-child>li:last-child:after{content:"▍";color:var(--accent);animation:pulse 1s var(--ease) infinite;margin-left:1px}.thread-empty{padding:8px 0 4px}.chips{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.chip{background:var(--surface);border:1px solid var(--edge);color:var(--ink);font:inherit;font-family:var(--font-sans);font-size:var(--fs-sm);border-radius:var(--r);cursor:pointer;min-height:36px;padding:8px 12px}.chip:not(.on):hover{background:var(--surface-2)}.thread-new{background:var(--ink);min-height:44px;color:var(--ink-inverse);border-radius:var(--r);font:inherit;font-family:var(--font-sans);font-size:var(--fs-sm);cursor:pointer;box-shadow:var(--shadow-pop);border:0;align-self:center;margin-bottom:6px;padding:0 16px;font-weight:600}.thread-compose{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));background:linear-gradient(to bottom, transparent, var(--ground,var(--paper)) 18px);z-index:5;align-items:flex-end;gap:8px;margin-top:auto;padding:18px 0 10px;display:flex;position:sticky}:root:has(.tabbar.away) .thread-compose:not(.sheet .thread-compose){bottom:env(safe-area-inset-bottom)}.composer-attach{width:36px;height:36px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-left:-8px;display:inline-flex}.composer-attach:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.composer-attach:disabled{opacity:.4;cursor:default}.composer-attach .ico{width:20px;height:20px}@media (pointer:coarse){.composer-attach,.composer .composer-send{width:44px;height:44px}.composer .composer-send{background-clip:content-box;padding:4px}.thread .turn-actions{opacity:1}}.sheet .thread-compose{position:sticky;bottom:0}.sheet{--ground:var(--surface)}@media (min-width:1024px){.thread-compose{bottom:0}}.thread-ai-note{text-align:center;font-family:var(--font-sans);font-size:var(--fs-meta);color:var(--ink-3);margin:2px 0 0;padding:0 0 6px}@media (min-width:1024px){.content:has(.chat-page) .thread-ai-note{padding-bottom:var(--corner-h)}}.thread-compose:has(.thread-below)+.thread-ai-note{text-align:left;padding-left:6px;padding-right:6px}.thread-compose{flex-direction:column;align-items:stretch}.thread-compose .composer{flex:1}.thread-below{padding:0 6px}.file-chip{max-width:100%;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);align-items:center;gap:6px;display:inline-flex}.file-chip .ico{flex:none;width:14px;height:14px}.file-chip .truncate{max-width:240px}.file-thumb{object-fit:cover;border-radius:var(--r-sm);flex:none;width:28px;height:28px}.turn-photo{border-radius:var(--r-sm);max-width:min(240px,70%);max-height:200px;margin-bottom:4px;margin-left:auto;display:block}.msg.me .file-chip{margin-bottom:4px}.file-row{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.file-rows{flex-direction:column;gap:6px;display:flex}.file-state{color:var(--ink-3);font-family:var(--font-sans)}.file-state.ready{color:var(--ink-2)}.file-state.failed,.file-row.failed .file-chip{color:var(--danger)}.file-error{color:var(--ink-2);font-family:var(--font-serif);flex-basis:100%}.filed-note{text-transform:none;letter-spacing:0;color:var(--ink-3);margin:6px 0 0}.notes-basis{text-transform:none;letter-spacing:0;color:var(--ink-3);text-wrap:pretty;margin:0 0 8px}.notes-basis .notes-change{vertical-align:middle;min-height:40px;color:var(--ink-2);margin:-8px 0;text-decoration:underline}.notes-missing{text-transform:none;letter-spacing:0;color:var(--ink-3);text-wrap:pretty;margin:-4px 0 8px}.notes-quote{color:var(--ink-2);overflow-wrap:anywhere;text-wrap:pretty;margin:0 0 8px;font-size:14px;line-height:1.45}.notes-task{text-transform:none;letter-spacing:0;color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;margin:0 0 8px;overflow:hidden}.notes-ask-line{font-family:var(--font-serif);color:var(--ink-2);text-wrap:pretty;margin:0 0 12px;font-size:16px;line-height:1.45}.notes-pick{border-top:var(--rule-w) solid var(--rule);margin:0;padding:0;list-style:none}.notes-pick label{border-bottom:var(--rule-w) solid var(--rule);cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding:10px 0;display:flex}.notes-pick input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:2px 0 0}.notes-pick-text{flex-direction:column;gap:2px;min-width:0;display:flex}.notes-pick-title{color:var(--ink);overflow-wrap:anywhere;font-size:15px;font-weight:500}.notes-pick-day{text-transform:none;letter-spacing:0;color:var(--ink-3)}.thread.inline .thread-compose{position:static}.thread.inline .thread-turns:empty{display:none}.turn-actions{opacity:.55;transition:opacity var(--dur-fast) var(--ease);gap:14px;margin-top:6px;display:flex}.turn-actions .link-quiet,.thread-controls .link-quiet{font-family:var(--font-sans);font-size:var(--fs-meta);color:var(--ink-3);text-decoration:none}.turn-actions .link-quiet:hover,.thread-controls .link-quiet:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.turn:hover .turn-actions,.turn:focus-within .turn-actions,.ai-turn:hover .turn-actions,.ai-turn:focus-within .turn-actions,.door-turn:hover .turn-actions,.door-turn:focus-within .turn-actions{opacity:1}:root{--answer-cap:min(28rem, 60vh)}.answer{flex-direction:column;display:flex}.ai-prose.clamp{max-height:var(--answer-cap);overflow:hidden}.ai-prose.cut{-webkit-mask-image:linear-gradient(#000 calc(100% - 4rem),#0000);mask-image:linear-gradient(#000 calc(100% - 4rem),#0000)}.answer-cut{flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;display:flex}.answer.cut .answer-cut{border-top:var(--rule-w) solid var(--rule);padding-top:8px}.turn-stopped{margin-top:4px}.thread-controls{gap:14px;margin:10px 0 4px;display:flex}.thread-compose .composer-words{font-size:var(--fs-sm)}.thread-send{background:var(--accent);width:44px;height:44px;color:var(--on-accent);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.thread-send:disabled{background:var(--surface-3);color:var(--ink-2);cursor:default}.thread-send .ico{width:20px;height:20px}.thread-foot{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.chat-page{min-height:calc(100dvh - var(--tabbar-h) - 120px);flex-direction:column;display:flex}.chat-where{margin:-2px 0 16px}.chat-title{resize:none;-webkit-line-clamp:2;white-space:pre-wrap;field-sizing:content;-webkit-box-orient:vertical;max-height:2.4em;line-height:1.15;display:-webkit-box;overflow:hidden}.thread-about{color:inherit;text-decoration:none}.thread-about:hover{text-underline-offset:3px;text-decoration:underline}.chat-thread,.chat-page .thread{flex:1}@media (max-width:1023px){:root:has(.chat-page) .tabbar{display:none}.content:has(.chat-page){padding-bottom:env(safe-area-inset-bottom)}:root:has(.chat-page) .thread-compose:not(.sheet .thread-compose){bottom:env(safe-area-inset-bottom)}.chat-page{min-height:calc(100dvh - 120px)}}@media (max-width:1199px){.chat-page .chat-grid{flex-direction:column;display:flex}}.chat-page .chat-main{flex:auto;align-self:stretch}.chat-page .thread-compose{margin-top:auto}.chat-grid{flex:1;display:block}.chat-main{flex-direction:column;min-width:0;display:flex}.chat-aside{display:none}.cx-strip{text-align:left;width:100%;min-width:0;color:var(--ink-3);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-height:24px;margin:0 0 10px;padding:0;font-size:13px;display:flex}.cx-strip-about{min-width:0;color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-weight:500;overflow:hidden}.cx-strip-counts{color:var(--ink-3);white-space:nowrap;flex:none;font-size:13px}.cx-strip-about+.cx-strip-counts:before{content:"· "}.cx-strip:hover .cx-strip-about{color:var(--ink);text-underline-offset:3px;text-decoration:underline}@media (pointer:coarse){.cx-strip{min-height:44px}}.chat-top{align-items:center;gap:2px;min-width:0;margin:0 0 6px;display:flex}.chat-name{min-width:0;font-family:var(--font-sans);letter-spacing:-.005em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:auto;margin:0 4px;font-size:16px;font-weight:600;line-height:1.3;overflow:hidden}@media (min-width:1024px){.chat-drawer-btn{display:none}}.chat-aside-btn{display:none}@media (min-width:1200px){.chat-aside-btn{display:inline-flex}.chat-page.aside-closed .chat-grid{grid-template-columns:minmax(0,1fr)}.chat-page.aside-closed .chat-aside{display:none}}.chat-rename{margin:0 0 var(--s-4);flex-direction:column;gap:6px;display:flex}.cx{gap:var(--s-6);font-family:var(--font-sans);flex-direction:column;display:flex}.cx-head{flex-direction:column;gap:2px;display:flex}.cx-about{color:var(--ink-2);font-size:var(--fs-sm);margin-top:2px;line-height:1.35;text-decoration:none}a.cx-about:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.cx-who{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);color:var(--ink)}.cx section{flex-direction:column;gap:6px;display:flex}.cx h3{margin:0}.cx ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.cx li{flex-direction:column;gap:1px;min-width:0;display:flex}.cx li.here{box-shadow:inset 2px 0 0 var(--accent);padding-left:8px}.cx-link{color:var(--ink);font-size:var(--fs-sm);overflow-wrap:anywhere;line-height:1.35;text-decoration:none}.cx-link:hover{text-underline-offset:3px;text-decoration:underline}.cx-meta{color:var(--ink-3);font-size:var(--fs-meta)}.cx-none{color:var(--ink-3);font-size:var(--fs-sm);margin:0}.cx-more{color:var(--ink-2);font-size:var(--fs-sm);text-decoration:none}.cx-more:hover{color:var(--ink);text-decoration:underline}@media (min-width:1200px){.page.nb-layout.chat-layout{max-width:calc(var(--content-max) + 300px + 260px + 2 * var(--s-10))}.chat-grid{gap:0 var(--s-8);grid-template-columns:minmax(0,1fr) 260px;align-items:start;display:grid}.chat-aside{top:calc(var(--head-off) + var(--s-6));max-height:calc(100vh - var(--head-off) - var(--s-12));padding-left:var(--s-6);border-left:var(--rule-w) solid var(--rule);display:block;position:sticky;overflow:auto}.chat-page .cx-strip{display:none}}.chat-compose .textarea{min-height:44px}.chat-compose{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--rule);margin-top:12px;padding:10px 0;position:sticky}@media (min-width:1024px){.chat-compose{bottom:0}}.coming .faded .d-title,.coming .faded .d-when,.coming .faded .d-meta{color:var(--ink-3)}.week-page{max-width:1240px}.wk{--wk-hours:52px;--wk-col:140px;margin-top:8px;overflow-x:auto}@media (min-width:768px) and (max-width:1199px){.wk{--wk-col:92px;--wk-hours:44px}}@media (min-width:768px) and (max-width:1023px){.wk{--wk-col:0px}}.wk-head{grid-template-columns:var(--wk-hours) repeat(7, minmax(var(--wk-col), 1fr));top:var(--head-off);background:var(--paper);z-index:4;display:grid;position:sticky}@media (min-width:768px){.wk{overflow-x:clip}}.wk-dayhead{border-bottom:1px solid var(--rule);white-space:nowrap;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:2px 4px;min-width:0;padding:6px;display:grid;overflow:hidden}.wk-dayhead .wk-changes{justify-self:end}.wk-dayhead .wk-dayload{grid-column:1/-1;min-width:0;display:block}.wk-dayhead .wk-bars{max-width:72px;margin:2px 0 0}.wk-dayhead.today{box-shadow:inset 0 -1.5px 0 var(--accent)}.wk-dayhead .wk-day{font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink-2);font-weight:500}.wk-dayhead .wk-daynum{font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink);font-variant-numeric:lining-nums tabular-nums;margin-left:2px;font-weight:600}.wk-dayhead.today .wk-day,.wk-dayhead.today .wk-daynum{color:var(--accent)}.wk-changes{width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.wk-changes:hover{color:var(--ink);background:var(--surface-2)}.wk-changes .ico{width:14px;height:14px}.wk-body{grid-template-columns:var(--wk-hours) repeat(7, minmax(var(--wk-col), 1fr));display:grid;position:relative}.wk-hours{position:relative}.wk-hour{font-family:var(--font-sans);color:var(--ink-3);font-size:12px;position:absolute;right:8px;transform:translateY(-50%)}.wk-hour:first-child{transform:none}.wk-hour:last-child{transform:translateY(-100%)}.wk-col{border-left:1px solid var(--rule);cursor:copy;min-width:0;position:relative;container-type:inline-size}.wk-col.today{background:color-mix(in srgb, var(--accent) 4%, transparent)}.wk-col.off{background:repeating-linear-gradient(135deg, transparent 0 8px, var(--surface-2) 8px 9px)}.wk-col:focus-visible{outline-offset:-2px}.wk-line{border-top:1px solid var(--rule);opacity:.6;pointer-events:none;position:absolute;left:0;right:0}.wk-line.half{opacity:.35;border-top-style:dashed}@media (min-width:600px){.wk.sat-empty .wk-head,.wk.sat-empty .wk-banners,.wk.sat-empty .wk-body{grid-template-columns:var(--wk-hours) repeat(5, minmax(var(--wk-col), 1fr)) minmax(96px, .55fr) minmax(var(--wk-col), 1fr)}.wk.sun-empty .wk-head,.wk.sun-empty .wk-banners,.wk.sun-empty .wk-body{grid-template-columns:var(--wk-hours) repeat(6, minmax(var(--wk-col), 1fr)) minmax(96px, .55fr)}.wk.sat-empty.sun-empty .wk-head,.wk.sat-empty.sun-empty .wk-banners,.wk.sat-empty.sun-empty .wk-body{grid-template-columns:var(--wk-hours) repeat(5, minmax(var(--wk-col), 1fr)) repeat(2, minmax(96px, .55fr))}}.wk-block{z-index:3;border-radius:var(--r-sm);text-align:left;font:inherit;cursor:pointer;z-index:1;border:1px solid #0000;flex-direction:column;gap:0;padding:4px 8px;display:flex;position:absolute;left:4px;right:4px;overflow:hidden}.wk-block .wk-name{font-weight:600;font-size:var(--fs-sm);overflow-wrap:break-word;-webkit-line-clamp:var(--lines,2);-webkit-box-orient:vertical;flex-shrink:0;line-height:16px;display:-webkit-box;overflow:hidden}.wk-block .wk-meta{white-space:nowrap;flex-shrink:0;align-items:baseline;gap:6px;min-width:0;line-height:14px;display:flex}.wk-block .wk-where{font-family:var(--font-sans);color:inherit;opacity:.85;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.wk-block .wk-meta.wrap{flex-wrap:wrap}.wk-block .wk-meta.wrap .wk-where{flex-basis:100%}.wk-block.cancelled .wk-where{white-space:normal}.wk-block .wk-time{font-family:var(--font-sans);color:inherit;opacity:.75;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;font-size:12px}.wk-block.class{background:var(--surface);color:var(--ink);border-color:var(--rule);border-left:3px solid var(--edge-c,var(--rule-strong))}.wk-block.personal{background:color-mix(in srgb, var(--accent) 12%, var(--paper));color:var(--ink);border:1px solid #0000;border-left-width:6px;border-image:repeating-linear-gradient(135deg, var(--accent) 0 3px, transparent 3px 6px) 0 0 0 6}.wk-block.event{background:var(--surface-3);color:var(--ink);border-color:#0000;text-decoration:none}a.wk-block.event:hover{filter:brightness(.97)}.event-link{color:inherit;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong)}.event-link:hover{text-decoration-color:currentColor}.wk-block.online{border-style:dotted}.wk-block.past{opacity:.55}.wk-block.cancelled{background:var(--paper);border:1px solid var(--rule);color:var(--ink-3);cursor:default;z-index:2}.wk-block.cancelled .wk-name{text-decoration:line-through}.wk-cancel-strip{z-index:2;cursor:pointer;background:repeating-linear-gradient(135deg, var(--rule-strong) 0 3px, transparent 3px 6px);border:0;border-radius:3px;width:6px;padding:0;position:absolute;left:1px}.wk-cancel-strip:hover,.wk-cancel-strip:focus-visible{background-color:var(--surface-2);outline:2px solid var(--focus);outline-offset:1px}@media (pointer:coarse){.wk-cancel-strip:after{content:"";position:absolute;inset:0 -8px}}.wk-async-strip{z-index:2;cursor:pointer;background:repeating-linear-gradient(45deg, var(--accent) 0 2px, transparent 2px 5px);border:0;border-radius:3px;width:6px;padding:0;position:absolute;left:1px}.wk-async-strip:hover,.wk-async-strip:focus-visible{background-color:var(--surface-2);outline:2px solid var(--focus);outline-offset:1px}@media (pointer:coarse){.wk-async-strip:after{content:"";position:absolute;inset:0 -8px}}.wk-block.cancelled.async{cursor:pointer;background:repeating-linear-gradient(45deg, var(--accent) 0 2px, transparent 2px 5px) left / 3px 100% no-repeat, var(--paper);padding-left:9px}.wk-block.cancelled.async .wk-name{text-decoration:none}.wk-block:hover:not(:disabled):not(.cancelled){filter:brightness(.97)}.wk-gap{z-index:1;text-align:left;font:inherit;color:inherit;border-radius:var(--r);background:0 0;border:0;flex-direction:column;align-items:flex-start;padding:4px 2px;display:flex;position:absolute;left:8px;right:8px;overflow:hidden}.drop-box{border:1px dashed var(--rule-strong);border-radius:var(--r);padding:var(--s-6) var(--s-4);text-align:center}.drop-box.over{border-color:var(--accent);background:var(--surface-2)}.drop-lead{margin:0 0 var(--s-3)}.drop-hint{margin:var(--s-2) 0 0}.drop-list{margin:var(--s-2) 0 0;padding:0;list-style:none}.drop-row,.drop-ask{border-top:1px solid var(--rule);padding:8px 0}.drop-why{margin:4px 0 0}.drop-going h2,.drop-asking h2{margin:0}.wk-tasks{margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--rule)}.wk-tasks-head{margin:0 0 var(--s-2);font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;font-weight:600;display:flex}.wk-tasks-head .wk-tasks-n{color:var(--ink-2);white-space:nowrap;font-weight:500}.wk-tasks-none{margin:0}.wk-tasks-behind{margin:var(--s-3) 0 0}.wk-breather{z-index:0;pointer-events:none;align-items:center;gap:6px;display:flex;position:absolute;left:8px;right:8px;overflow:hidden}.wk-breather:before,.wk-breather:after{content:"";border-top:1px dashed var(--rule);flex:1 1 0;min-width:0}.wk-breather span{font-family:var(--font-sans);letter-spacing:.02em;color:var(--ink-3);white-space:nowrap;font-size:12px}.wk-gap.hit{cursor:pointer}.wk-gap.hit:hover{background:var(--surface-2)}.wk-say{font-family:var(--font-sans);color:var(--ink-2);text-wrap:pretty;overflow-wrap:break-word;min-width:0;max-width:100%;margin:0;font-size:13px;line-height:19px}.wk-say.free{color:var(--ink-3)}.wk-gap.free:not(.hit){pointer-events:none}.wk-say.full{-webkit-line-clamp:var(--lines,3);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.wk-say.short{-webkit-line-clamp:var(--lines,1);-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.wk-say.narrow-only{display:none}@container (width<=159px){.wk-say.full{display:none}.wk-say.narrow-only{display:block}}.wk-verb{font-family:var(--font-sans);color:var(--ink-2);text-underline-offset:3px;white-space:nowrap;margin-top:2px;font-size:12px;line-height:16px;text-decoration:underline}.wk-gap.hit:hover .wk-verb{color:var(--ink)}.wk-sitting{font-family:var(--font-sans);color:var(--signal-ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;line-height:15px;display:block;overflow:hidden}.wk-due{font-family:var(--font-sans);color:var(--ink-2);overflow-wrap:break-word;margin-top:2px;font-size:12px;font-weight:600;line-height:16px;display:block}.wk-gap .wk-due{color:var(--ink-3);font-weight:500}.wk-daylist .slot-meta{margin-top:2px}.wk-daylist .wk-due{font-size:var(--fs-sm);display:block}.wk-banners{grid-template-columns:var(--wk-hours) repeat(7, minmax(var(--wk-col), 1fr));border-bottom:1px solid var(--rule);display:grid}.wk-banner{border-left:1px solid var(--rule);min-width:0;color:var(--ink-3);padding:0 8px}.wk-banner.on{background:repeating-linear-gradient(135deg, transparent 0 8px, var(--surface-2) 8px 9px);padding:6px 8px}.wk-banner .t-meta{text-transform:none;letter-spacing:0}.wk-banner.period{background:var(--surface-2);color:var(--ink-2);padding:6px 8px}.wk-banner.period+.wk-banner.period{border-left-color:#0000}.wk-say-2{font-size:var(--fs-sm);color:var(--ink-3);display:block}.slot.open .what{font-weight:500}.wk-now{border-top:1.5px solid var(--accent);z-index:2;height:0;position:absolute;left:0;right:0}.wk-now:before{content:"";background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:-5px;left:-4px}@media (prefers-reduced-motion:no-preference){.wk-now:before{animation:nowpulse 2.4s var(--ease) infinite}}.wk-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:6px;display:grid}.wk-daychip{min-width:0;min-height:44px;color:var(--ink-3);font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:stretch;gap:1px;padding:5px 0 6px;display:flex}.wk-daychip .wk-dayword{font-family:var(--font-sans);letter-spacing:0;text-transform:none;font-size:12px}.wk-daychip .wk-daynum{font-family:var(--font-sans);color:var(--ink-2);font-variant-numeric:lining-nums tabular-nums;font-size:17px}.wk-bars{flex-direction:column;gap:2px;margin:4px 6px 0;display:flex}.wk-bars i,.wk-legend i{border-radius:2px;height:4px;display:block}.wk-bars .c,.wk-legend .c{background:var(--load-class)}.wk-bars .d,.wk-legend .d{background:var(--load-due)}.wk-bars .f,.wk-legend .f{background:var(--load-free)}.wk-daychip.on .wk-bars .c{background:var(--load-class-on)}.wk-daychip.on .wk-bars .d{background:var(--load-due-on)}.wk-daychip.on .wk-bars .f{background:var(--load-free-on)}.wk-legend{margin:0 0 var(--s-4);font-family:var(--font-sans);color:var(--ink-3);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.wk-legend span{align-items:center;gap:5px;display:inline-flex}.wk-legend i{width:12px}.wk-addrow{width:100%;min-height:44px;margin-top:var(--s-3);border:1.5px dashed var(--rule-strong);border-radius:var(--r);color:var(--ink-2);font:inherit;font-family:var(--font-sans);font-size:var(--fs-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;display:flex}.d-weight{background:var(--surface-2);color:var(--ink-2);font-family:var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.35;display:inline-block}.d-weight.hi{background:var(--accent-soft);color:var(--accent)}.d-weight.q{background:var(--warn-soft);color:var(--warn)}.wt-missing{font-family:var(--font-sans);color:var(--ink-2);justify-content:space-between;align-items:center;gap:10px;padding:6px 0 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex}.wt-missing>span:last-child{color:var(--ink-3)}@media (pointer:coarse){.wt-missing{min-height:44px}}.wk-addrow:hover{border-color:var(--ink);color:var(--ink)}.wk-addrow .ico{width:16px;height:16px}@media (max-width:767px){.wk-header .wk-addown{display:none}}.wk-daychip.today .wk-daynum{color:var(--accent)}.wk-daychip.on{background:var(--ink);color:var(--paper)}.wk-daychip.on .wk-daynum,.wk-daychip.on.today .wk-daynum{color:var(--paper)}.wk-daychip:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:var(--r-xs)}@media (max-width:1023px){.wk{margin-left:calc(-1 * var(--s-4));margin-right:calc(-1 * var(--s-4));padding:0 var(--s-4)}}@media (max-width:599px){.wk{--wk-hours:40px;--wk-day:calc((100vw - var(--wk-hours)) / 2);scroll-snap-type:x mandatory;scroll-padding-left:var(--wk-hours);overscroll-behavior-x:contain;padding:0}.wk-head,.wk-banners,.wk-body{grid-template-columns:var(--wk-hours) repeat(7, var(--wk-day));width:max-content}.wk-col{scroll-snap-align:start}.wk-hours,.wk-corner{width:var(--wk-hours);z-index:5;background:var(--paper);grid-area:1/1/auto/-1;justify-self:start;position:sticky;left:0}.wk-hour{right:6px}}.study{margin:0;padding:0;list-style:none}.period-ask-say{font-family:var(--font-serif);color:var(--ink);margin:0;font-size:17px;line-height:1.4}.period-ask-items{margin:0;padding:0;list-style:none}.period-ask-items li{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:2px 10px;padding:8px 0;display:flex}.period-ask-title{color:var(--ink);overflow-wrap:anywhere}.study-row{border-top:1px solid var(--rule);align-items:center;gap:12px;padding:10px 0;display:flex}.study-row:first-child{border-top:0}.study-body{flex:1;min-width:0}.study-head{font-weight:500}.study-what{margin-top:2px}.study-path{font-size:var(--fs-meta);color:var(--ink-3);font-variant-numeric:tabular-nums;margin-top:2px}.changes-more{font:inherit;font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;background:0 0;border:0;margin-top:10px;padding:4px 0;display:block}.changes-more:hover{color:var(--ink)}.day-timeless{border-bottom:1px solid var(--rule);font-size:var(--fs-sm);color:var(--ink-2);margin:0 0 10px;padding:0 0 8px;list-style:none}.day-timeless li+li{margin-top:4px}.day-timeless .t-mono{text-transform:capitalize}.day-timeless a{align-items:center;min-height:24px;display:inline-flex}@media (pointer:coarse){.day-timeless a{min-height:44px}}.greeting{font-family:var(--font-display);font-weight:600;font-size:var(--fs-display);letter-spacing:-.025em;font-variation-settings:var(--opsz-display);text-wrap:pretty;max-width:22ch;line-height:1.1}.greeting-voice{margin-top:8px}.greeting-head{margin-bottom:var(--s-6)}.greeting-head.has-mascot{column-gap:var(--s-4);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.greeting-head.has-mascot>:not(.mascot){grid-column:1}.greeting-head.has-mascot>.mascot{grid-area:1/2/span 4;align-self:center}.mascot{color:var(--ink);flex:none;position:relative}.mascot-layer{position:absolute;inset:0}.mascot-layer.arriving{animation:mascot-in .2s var(--ease,ease) both}.mascot-layer.leaving{animation:mascot-out .2s var(--ease,ease) both}@keyframes mascot-in{0%{opacity:0}to{opacity:1}}@keyframes mascot-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.mascot-layer{animation:none!important}.mascot.fade-still .mascot-layer.arriving{animation:.3s both mascot-in!important}.mascot.fade-still .mascot-layer.leaving{animation:.3s both mascot-out!important}}.day-sec .section-head{border-bottom:0;align-items:center;margin-bottom:4px;padding-bottom:0}.day-sec .section-head>h2.t-meta{font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-size:13px;font-weight:600}.day-sec-link{min-height:24px;font-family:var(--font-sans);color:var(--ink-2);align-items:center;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.free-sheet .free-say{font-family:var(--font-serif);font-size:var(--fs-lg);color:var(--ink-2);text-wrap:pretty;line-height:1.45}.day-sec-link:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}@media (pointer:coarse){.day-sec-link{min-height:44px}}.room-project{margin:var(--s-5) 0 var(--s-6)}.rp-ask{margin:0 0 var(--s-5);align-items:center;gap:8px;display:flex}.rp-ask-input{border-radius:12px;flex:auto;min-width:0;min-height:48px;font-size:16px}.rp-ask .btn{border-radius:50%;flex:none;justify-content:center;width:48px;height:48px;padding:0}.rp-group{margin:0 0 var(--s-4)}.rp-head{justify-content:space-between;align-items:center;gap:10px;margin:0 0 4px;display:flex}.rp-h{font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:0 0 4px;font-size:13px;font-weight:600}.rp-head .rp-h{margin:0}.rp-list{margin:0;padding:0;list-style:none}.rp-list li+li{border-top:1px solid var(--rule)}.rp-row{width:100%;min-height:40px;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:11px 0;text-decoration:none;display:flex}.rp-row:hover .rp-name{text-underline-offset:3px;text-decoration:underline}.rp-name{min-width:0;font-family:var(--font-sans);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:14px;font-weight:500;overflow:hidden}.rp-meta{font-family:var(--font-sans);color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:14px}.rp-chev{width:18px;height:18px;color:var(--ink-3);transition:transform var(--dur-fast) var(--ease);flex:none;transform:rotate(-90deg)}.rp-files[aria-expanded=true] .rp-chev{transform:none}.rp-files{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.rp-all{min-height:24px;font-family:var(--font-sans);color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;padding:6px 0;font-size:14px;display:inline-flex}.rp-all:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.rp-panel{margin-top:8px}.room-need{margin:0 0 var(--s-4)}@media (pointer:coarse){.rp-row,.rp-all{min-height:44px}}.shelf-tiles{margin:0 0 var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.shelf-tile{border:1px solid var(--rule);background:var(--surface);min-height:44px;color:var(--ink);font-family:var(--font-sans);border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;text-decoration:none;display:flex}.shelf-tile:hover{border-color:var(--rule-strong)}.shelf-name{font-size:13px;font-weight:600}.shelf-n{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px}.continue{margin:0 0 var(--s-6)}.continue-h{font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:0 0 4px;font-size:13px;font-weight:600}.continue-list{margin:0;padding:0;list-style:none}.continue-list li+li{border-top:1px solid var(--rule)}.continue-row{min-height:40px;color:var(--ink);align-items:center;gap:10px;padding:11px 0;text-decoration:none;display:flex}.continue-row:hover .continue-name{text-underline-offset:3px;text-decoration:underline}.continue-name{min-width:0;font-family:var(--font-sans);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:14px;font-weight:500;overflow:hidden}.continue-meta{font-family:var(--font-sans);color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:14px}@media (pointer:coarse){.continue-row{min-height:44px}}.not-doing-what{font-weight:600}.not-doing-cost{font-family:var(--font-sans);color:var(--ink-2);background:var(--surface-2);border-radius:8px;padding:7px 9px;font-size:13px}.not-doing-cost b{color:var(--ink);font-weight:600}.streak-n{color:var(--ink-2);transition:color var(--dur) var(--ease);font-weight:600}.greeting-line{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--ink-2);text-wrap:balance;margin:6px 0 0;font-size:18px;font-weight:600;line-height:1.3}.streak-n.grew{color:var(--ink-3)}.page-with-margin .home-hero{margin-top:0}.margin .study-row{border-top:0;align-items:flex-start;padding:0}.margin .study-what{font-family:var(--font-serif);font-size:var(--fs-body)}.margin .coming .deadline{padding:8px 0}.margin.also .m-heading{font-family:var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin:0 0 4px;font-size:13px;font-weight:600}.margin.also .m-row{align-items:center;gap:10px;min-height:44px;padding:11px 0}.margin.also .m-sentence{font-family:var(--font-sans);white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;font-size:14px;font-weight:500;line-height:1.35;overflow:hidden}.margin.also .m-row.ask{flex-wrap:wrap;row-gap:2px}.margin.also .m-row.ask .m-sentence{white-space:normal;overflow-wrap:anywhere;flex:100%;overflow:visible}.margin.also .m-row.ask .m-value{margin-left:0;margin-right:auto}.margin.also .m-row.quiet{color:var(--ink)}.margin.also .m-row.quiet .m-sentence{font-weight:500}.margin.also .m-row.wrap{flex-wrap:wrap;row-gap:2px}.margin.also .m-row.wrap .m-sentence{white-space:normal;overflow-wrap:anywhere;flex:100%;overflow:visible}.margin.also .m-row.wrap .m-value{margin-left:0;margin-right:auto}.margin.also .m-value{color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:14px}.margin.also .m-footer{padding:12px 0 0}.margin.also .m-footer .rough-week{border:0;margin:0;padding:0}.margin.also .m-footer .link-quiet{padding-left:0;padding-right:0}.margin.also .m-node>.day-off .btn{font-family:var(--font-sans);color:var(--ink);border:0;justify-content:flex-start;width:100%;padding:0;font-size:14px;font-weight:500}.margin .m-node>.day-timeless,.margin .m-node>.rough-week,.margin .m-node>.day-off,.margin .m-node>.see-all{border:0;margin:0;padding:9px 0}.margin .m-node>.day-off .btn,.margin .m-node>.rough-week .link-quiet,.margin .m-node>.see-all .link-quiet{padding-left:0;padding-right:0}.margin.also .m-node>.day-off{justify-content:space-between;display:flex}.margin.also .m-node>.day-off>.t-sm{flex:auto;min-width:0}.margin.also .m-node>.day-off .btn{flex:none;width:auto;min-height:44px}.margin .d-meta,.margin .d-course,.margin .d-when,.margin .t-sm,.margin .p-sub,.margin .nb-meta{font-size:var(--fs-sub)}.assign-score{flex-wrap:wrap;align-items:baseline;gap:8px;margin:6px 0 0;font-size:15px;display:flex}.assign-feedback{margin:var(--s-5) 0;flex-direction:column;gap:10px;display:flex}.assign-feedback h2{margin:0}.assign-feedback ul{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.assign-feedback .fb-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 0;line-height:1.5}.assign-feedback .fb-rubric{flex-direction:column;gap:6px;display:flex}.assign-feedback .fb-rubric h3{font-family:var(--font-sans);color:var(--ink-2);margin:4px 0 0;font-size:13px;font-weight:600}.assign-feedback .fb-rubric ul{gap:8px}.assign-feedback .fb-score{font-family:var(--font-sans);overflow-wrap:anywhere;font-size:14px}.assign-feedback .fb-note{overflow-wrap:anywhere;margin:2px 0 0}.teacher-comments{margin:var(--s-3) 0}.assign-missing{flex-wrap:wrap;align-items:baseline;gap:6px 8px;margin:8px 0 0;display:flex}@media (min-width:1024px){.why li,.why .why-toggle,.ch-head,.ch-cons,.ch-src,.change .ch-why,.d-instr,.alt-list .t-mono,.study-what,.push-say,.conn-what,.assign-facts,.room-line{font-size:var(--fs-sub)}.wk-say{font-size:14px;line-height:18px}.wk-block .wk-name{font-size:15px;line-height:18px}.wk-block .wk-where,.wk-block .wk-time{font-size:13px}.wk-block .wk-meta{line-height:16px}.wk-hour{font-size:13px}.wk-verb{font-size:15px;line-height:18px}.sink-was,.ai-privacy,.wtr,.link-quiet,.changes-more{font-size:15px}.path,.day{--p-time:84px}.margin .ch-head{font-size:var(--fs-sub)}}.margin .changes-more{margin-top:6px}.alt-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.alt-list li{flex-direction:column;gap:2px;display:flex}.alt-link{color:var(--ink);text-decoration:none}.alt-link:hover{text-underline-offset:3px;text-decoration:underline}.greeting-date{text-transform:none;letter-spacing:0;color:var(--ink-3);margin-top:0;font-size:13px}.greeting-date .date-b{color:var(--ink-2);font-weight:500}.greeting-head:has(.sr-only+.greeting-date){margin-bottom:var(--s-4)}.home-hero{margin:var(--s-6) 0 var(--s-4)}.crunch-hero{padding:var(--s-5);border:var(--rule-w) solid color-mix(in srgb, var(--crunch) 30%, var(--rule));border-left:4px solid var(--crunch);border-radius:var(--r-lg);background:var(--surface);box-shadow:0 1px 0 var(--rule), 0 10px 30px -18px #17150f59;position:relative;overflow:hidden}.crunch-band{margin:calc(-1 * var(--s-5)) calc(-1 * var(--s-5)) var(--s-4);padding:10px var(--s-5);border-radius:var(--r-lg) var(--r-lg) 0 0;border-bottom:var(--rule-w) solid color-mix(in srgb, var(--crunch) 35%, transparent);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--crunch) 35%, transparent) 0 3px, transparent 3px 6px) left / 6px 100% no-repeat, var(--crunch-wash);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.crunch-on{font-family:var(--font-sans);color:var(--ink);align-items:flex-start;gap:6px;margin:0;font-size:15px;display:flex}.crunch-on svg{width:16px;height:16px;color:var(--crunch);flex:none;margin-top:2px}.crunch-on strong{color:var(--crunch);font-weight:700}.crunch-band .crunch-why{color:var(--ink);flex-basis:100%;padding-left:22px}.crunch-why{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.crunch-title{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere;font-size:26px;font-weight:600;line-height:1.15}.crunch-donow{color:var(--crunch)}.crunch-task{text-decoration:none}.crunch-task:hover{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.crunch-code{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:.05em;color:var(--ink-3);margin-top:4px;font-weight:700}.crunch-left{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--ink);margin:var(--s-3) 0 var(--s-4);font-size:17px;font-weight:600}.crunch-clock{letter-spacing:-.02em;color:var(--crunch);margin-bottom:4px;font-size:clamp(30px,9vw,40px);line-height:1.05;display:block}.crunch-in{color:var(--crunch)}.crunch-actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.crunch-actions .btn{min-height:44px}.crunch-next{margin-top:var(--s-5);padding-top:var(--s-4);border-top:var(--rule-w) solid var(--rule)}.crunch-next h3{margin-bottom:var(--s-2);color:var(--ink-3)}.crunch-next ul{margin:0;padding:0;list-style:none}.crunch-row{justify-content:space-between;align-items:baseline;gap:var(--s-3);border-bottom:var(--rule-w) solid var(--rule);min-height:44px;font-family:var(--font-sans);padding:8px 0;text-decoration:none;display:flex}.crunch-next li:last-child .crunch-row{border-bottom:0}.crunch-row-title{overflow-wrap:anywhere;min-width:0;font-size:15px;font-weight:500}.crunch-row-when{font-size:var(--fs-sm);color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.crunch-row-code{font-weight:600}.crunch-more{min-height:40px;font-family:var(--font-sans);font-size:var(--fs-sm);align-items:center;display:inline-flex}@media (max-width:380px){.crunch-row{flex-direction:column;gap:2px}.crunch-title{font-size:23px}}.coming{flex-direction:column;display:flex}.plan-updated{color:var(--calm);font-family:var(--font-sans);letter-spacing:0;text-transform:none;animation:pop var(--dur) var(--ease);align-items:center;gap:6px;font-size:13px;display:inline-flex}.nextmove.setup .eyebrow{color:var(--calm)}.nextmove.setup .reason{opacity:.9;max-width:46ch;margin-bottom:0}.setup-margin{margin-top:var(--s-5)}.corner{z-index:35;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);flex-direction:column;align-items:flex-start;gap:6px;display:flex;position:fixed;bottom:8px;left:8px}.corner.away{opacity:0;pointer-events:none;transform:translateY(6px)}:root[data-review] .corner{display:none}.review-actions .review-wrong{margin-left:auto}@media (max-width:420px){.review-actions .review-wrong{flex-basis:100%;justify-content:flex-end}}.review-actions.pinned{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:5;justify-content:space-between;gap:var(--s-3,12px);margin:0 calc(-1 * var(--s-4));padding:10px var(--s-4);background:var(--surface);border-top:var(--rule-w,1px) solid var(--rule);transition:bottom var(--dur) var(--ease);flex-wrap:nowrap;position:sticky}:root:has(.tabbar.away) .review-actions.pinned{bottom:env(safe-area-inset-bottom)}@media (min-width:1024px){.review-actions.pinned{justify-content:flex-start;margin:0;padding:12px 0;bottom:0}}@media (prefers-reduced-motion:reduce){.review-actions.pinned{transition:none}}.review-wrong-after{margin-top:var(--s-2,8px);justify-content:flex-end;display:flex}@media (prefers-reduced-motion:reduce){.corner{transition:none}}:root{--corner-h:40px}:root[data-demo]{--corner-h:76px}@media (max-width:599px){:root{--corner-h:52px}:root[data-demo]{--corner-h:88px}}@media (max-width:1023px){.corner{bottom:calc(var(--tabbar-h) + 8px + env(safe-area-inset-bottom))}.corner .wrong-sticky{display:none}:root,:root[data-demo]{--corner-h:0px}.corner .demo-tag{display:none}.content{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 16px)}}.demo-line{display:none}.heavier-week{margin:0 0 var(--s-4);background:var(--surface-2);font-family:var(--font-sans);border-radius:12px;padding:8px 12px}.heavier-week-line{min-height:44px;color:var(--ink);align-items:center;font-size:15px;line-height:1.3;text-decoration:none;display:flex}a.heavier-week-line:hover{text-underline-offset:3px;text-decoration:underline}.heavier-week-hours{color:var(--ink-2)}@media (max-width:1023px){.demo-line{margin:0 0 var(--s-3);display:block}}@media (min-width:1024px){.corner{align-items:flex-end;left:auto;right:12px}}.corner .demo-tag{position:static}.wrong-sticky.btn{background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r);color:var(--ink-2);min-height:32px;padding:0 10px;text-decoration:none}.wrong-sticky.btn:hover{color:var(--ink);border-color:var(--rule-strong)}@media (max-width:599px){.wrong-sticky.btn{min-height:44px}}.assign-head .course{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.assign-head .title{margin-top:4px}.assign-facts{margin-top:var(--s-4);flex-wrap:wrap;align-items:baseline;gap:6px 18px;display:flex}.assign-facts .fact{align-items:baseline;gap:8px;display:flex}.assign-facts .fact-from{align-items:baseline;gap:0 6px;display:inline-flex}@media (max-width:599px){.assign-facts{gap:4px 18px}.assign-facts .fact-from{flex-basis:100%}}.steps{margin:0;padding:0;list-style:none}.step{border-top:1px solid var(--rule);align-items:center;gap:12px;padding:10px 0;display:flex}.step:first-child{border-top:0}.step label{cursor:pointer;transition:color var(--dur) var(--ease);flex:1}.step.done label{color:var(--ink-3);text-decoration:line-through}.step .est{font-family:var(--font-sans);font-size:var(--fs-meta);color:var(--ink-3)}.progress{background:var(--surface-3);border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.progress>i{background:var(--ink);height:100%;transition:width var(--dur) var(--ease);display:block}.instructions{font-size:var(--fs-body);color:var(--ink);white-space:pre-wrap;max-width:62ch;line-height:1.5}.signin{min-height:100vh;padding:var(--s-6) var(--s-4);place-items:center;display:grid}.signin .input.code{font-family:var(--font-sans);letter-spacing:.35em;text-align:center;max-width:240px;font-size:24px}.signin-card{width:min(440px,100%);padding:var(--s-8) var(--s-6);background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r-md);border-top:var(--rule-heavy) solid var(--signal)}.welcome{min-height:100vh;padding:var(--s-8) var(--s-4) var(--s-12);place-items:start center;display:grid}.welcome-card{width:min(560px,100%);padding:var(--s-6) var(--s-5);background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r-md);border-top:var(--rule-heavy) solid var(--signal)}@media (min-width:640px){.welcome{place-items:center}.welcome-card{padding:var(--s-8) var(--s-8)}}.coming-together ul{margin:10px 0;padding:0;list-style:none}.coming-together li{font-family:var(--font-sans);font-size:var(--fs-sm);align-items:center;gap:8px;padding:3px 0;display:flex}.coming-together .ico{color:var(--rule-strong)}.coming-together .ico.ok{color:var(--calm)}.first-run-dots{align-items:center;gap:6px;display:inline-flex}.first-run-dots i{background:var(--rule);border-radius:2px;width:8px;height:4px;transition:width .2s}.first-run-dots i.done{background:var(--ink)}.first-run-dots i.now{background:var(--ink);width:18px}@media (prefers-reduced-motion:reduce){.first-run-dots i{transition:none}}.lms-pick{margin:var(--s-4) 0 0;border:0;min-width:0;padding:0}.lms-pick legend{margin-bottom:8px;padding:0;font-weight:600}.lms-pick-row{border-radius:var(--r-sm);background:var(--surface-2);grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:4px;padding:4px;display:grid}.lms-pick-opt{border-radius:calc(var(--r-sm) - 2px);min-height:44px;color:var(--ink-2);line-height:1.2;font:inherit;font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;padding:4px 6px;font-weight:500}.lms-pick-opt.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #1715121f}.lms-pick-opt:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.first-run-read{border-radius:var(--r-sm);background:var(--surface-2);font-family:var(--font-sans);align-items:center;gap:8px;margin:0;padding:12px 14px;display:flex}.first-run-read.in{background:var(--calm-soft)}.first-run-read .ico.ok{color:var(--calm)}.first-run-courses{margin:14px 0;padding:0;list-style:none}.first-run-courses li{border-top:var(--rule-w) solid var(--rule);font-family:var(--font-sans);align-items:center;gap:8px;padding:8px 0;display:flex}.own-item-actions{margin-top:var(--s-3);gap:8px}.picklist{border-top:1px solid var(--rule);flex-direction:column;max-height:42vh;display:flex;overflow:auto}.pick{border-bottom:1px solid var(--rule);cursor:pointer;align-items:center;gap:12px;padding:10px 0;display:flex}.pick.as-button{border:0;border-bottom:1px solid var(--rule);width:100%;font:inherit;color:inherit;text-align:left;background:0 0}.pick.as-button .ico{color:var(--ink-3);flex:none}.page .picklist{max-height:none}.pick .pk-name{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);line-height:1.25}.alert.reminder{background:var(--surface)}.alert.reminder .a-ico{color:var(--ink-3)}.capture-box .textarea{min-height:140px;font-size:var(--fs-md)}.pgroup{border-top:1px solid var(--rule);padding-top:8px}.pg-head{align-items:center;gap:12px;display:flex}.pg-toggle{min-width:0;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:8px 0;display:flex}.pg-name{font-weight:600}.pg-chev{width:18px;height:18px;color:var(--ink-3);transition:transform var(--dur-fast) var(--ease);transform:rotate(-90deg)}.pgroup.open .pg-chev{transform:none}.pg-pick .link-quiet{font:inherit;font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;background:0 0;border:0;padding:4px 2px}.pg-pick .link-quiet:disabled{color:var(--ink-3);cursor:default}.pg-blocked{margin:-2px 0 6px 28px}.pg-body{padding:4px 0 12px}.proposal.capture{margin-top:0}.proposal.capture.off .p-summary,.proposal.capture.off .t-meta{color:var(--ink-3)}.proposal.capture.deadline_change{border-left-color:var(--signal)}.proposal.capture.schedule_exception{border-left-color:var(--calm)}.proposal.capture.new_assignment{border-left-color:var(--ink)}.rubric-list{margin:0;padding:0;list-style:none}.rubric-list li{box-sizing:border-box;border-top:1px solid var(--rule);align-items:flex-start;gap:10px;min-height:44px;padding:10px 0;display:flex}.rubric-list li:first-child{border-top:0}.rubric-list li>input,.rubric-list li>.checkbox{flex:none;margin-top:2px}.rubric-text{cursor:pointer;overflow-wrap:anywhere;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rubric-list li.on .rubric-name{color:var(--ink-3)}.rubric-weight{color:var(--ink-2);white-space:nowrap;flex:none}.rubric-foot{align-items:center;gap:8px;margin-top:8px}@media (max-width:480px){.rubric-foot>.t-meta{flex-basis:100%}}.proposal.capture.announcement,.proposal.capture.note{border-left-color:var(--rule-strong)}.proposal .p-summary{font-size:var(--fs-lg);margin:4px 0 2px;line-height:1.3}.proposal .p-fields{gap:10px;max-width:440px;margin-top:10px;display:grid}.conf-high{color:var(--calm)}.conf-medium{color:var(--warn)}.conf-low{color:var(--ink-3)}.raw{white-space:pre-wrap;font-family:var(--font-mono);font-size:var(--fs-sm);background:var(--surface-2);border-radius:var(--r-sm);max-height:240px;margin:8px 0 0;padding:10px 12px;overflow:auto}.room-title{font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:var(--opsz-display);max-width:24ch;margin:0;font-size:22px;font-weight:600;line-height:1.12}.room-sub{font-family:var(--font-sans);color:var(--ink-3);overflow-wrap:anywhere;margin-top:2px;font-size:13px;line-height:1.4}.room-sub a{color:var(--ink-2)}.room-source{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);overflow-wrap:anywhere;margin-top:2px;line-height:1.4}.room-details{border-bottom:var(--rule-w) solid var(--rule);font-family:var(--font-sans);color:var(--ink-2);flex-direction:column;gap:2px;margin-bottom:8px;padding:0 0 12px;display:flex}.room-details p{overflow-wrap:anywhere;margin:0}.colour-pick{border:0;border-bottom:var(--rule-w) solid var(--rule);min-width:0;margin:0 0 8px;padding:0 0 12px}.colour-pick legend{color:var(--ink-3);margin-bottom:8px;padding:0}.colour-pick-name{color:var(--ink)}.colour-swatches{flex-wrap:wrap;gap:6px;display:flex}.colour-swatch{cursor:pointer;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:relative}.colour-swatch:before{content:"";background:var(--c,var(--course-hub));border-radius:999px;width:28px;height:28px}.colour-swatch.is-default:before{background:linear-gradient(135deg, var(--c,var(--course-hub)) 50%, transparent 50%);box-shadow:inset 0 0 0 1.5px var(--c,var(--course-hub))}.colour-swatch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.colour-swatch:has(input:checked){box-shadow:inset 0 0 0 2px var(--ink)}.colour-swatch:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.room-tabs{margin-top:var(--s-2)}@media (max-width:560px){.room-tabs{flex-wrap:wrap;overflow:visible}.room-tabs .tab{text-align:center;flex:1 0 auto}}.ov-grid{gap:var(--s-4);display:grid}@media (min-width:640px){.ov-grid{grid-template-columns:1fr 1fr}}.ov-block{padding:var(--s-4);border:var(--rule-w) solid var(--rule);border-radius:var(--r-sm);background:var(--surface)}.ov-block .t-meta{margin-bottom:6px}.ov-class{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.ov-big{font-size:28px;line-height:1.1}.announcement{border-top:1px solid var(--rule);padding:12px 0}.announcement:first-child{border-top:0}.announcement .an-title{font-weight:500}.announcement .an-body{color:var(--ink-2);font-size:var(--fs-sm);-webkit-line-clamp:2;white-space:pre-wrap;-webkit-box-orient:vertical;margin-top:4px;display:-webkit-box;overflow:hidden}.announcement .an-body.open{-webkit-line-clamp:unset;display:block}.announcement .an-more{margin-top:2px;margin-left:-12px}.announcement .an-foot{align-items:baseline;gap:12px;margin-top:6px;display:flex}.announcement .an-foot .an-from{flex:auto;min-width:0}.announcement .an-foot .an-open{white-space:nowrap;flex:none}.tabs.pills{background:var(--surface-2);border-radius:var(--r);width:max-content;margin-bottom:var(--s-2);border-bottom:0;gap:2px;padding:3px}.tabs.pills .tab{border-radius:var(--r);font-size:var(--fs-sm);border-bottom:0;margin:0;padding:5px 12px}.tabs.pills .tab[aria-selected=true]{background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule)}.project-block,.yourpart{margin-top:var(--s-2);padding:var(--s-2) 0 0;border-top:var(--rule-w) solid var(--rule)}.margin .project-block,.margin .yourpart{border-top:0;margin-top:0;padding-top:0}.project-block .pb-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);flex-wrap:wrap;align-items:baseline;gap:10px;margin:2px 0 4px;line-height:1.3;display:flex}.project-block .pb-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.project-block .pb-list li{border-top:1px solid var(--rule);flex-direction:column;gap:2px;padding-top:6px;display:flex}.project-block .pb-link{color:var(--ink);text-decoration:none}.project-block .pb-link:hover{text-decoration:underline}.project-block .pb-course{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);margin-right:4px}.yourpart{border-left:var(--rule-heavy) solid var(--signal)}.yourpart.empty{border-left-color:var(--rule-strong)}.yourpart .yp-desc{font-size:var(--fs-body);margin:2px 0 8px;line-height:1.5}.yourpart .yp-facts{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.yourpart .yp-others{border-top:1px solid var(--rule);margin-top:10px;padding-top:8px}.yourpart .yp-others ul{font-size:var(--fs-sm);color:var(--ink-2);margin:4px 0 0;padding:0;list-style:none}.nb-tabs{margin-bottom:8px}.nb-row{align-items:flex-start;gap:2px;display:flex}.row-menu{width:32px;height:32px;color:var(--ink-3);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:8px;display:inline-flex}.row-menu .ico{width:16px;height:16px}.row-menu:hover,.row-menu:focus-visible,.nb-row:hover .row-menu,.material:hover .row-menu{opacity:1;color:var(--ink);background:var(--surface-2)}.material .row-menu{margin-top:0}.nb-hidden .material{color:var(--ink-3)}.nb-row .nb-note{min-width:0}.ask-about{width:32px;height:32px;color:var(--ink-3);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:8px;display:inline-flex}.ask-about .ico{width:16px;height:16px}.ask-about:hover,.ask-about:focus-visible{color:var(--ink);background:var(--surface-2);opacity:1}.nb-row:hover .ask-about,.material:hover .ask-about,.ask-about:focus-visible{opacity:1}.material .ask-about{margin-top:0}@media (pointer:coarse){.nb-row .row-menu,.nb-row .ask-about,.material .row-menu,.material .ask-about{display:none}.nb-row,.material{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.material{min-height:44px}}.nb-group-h{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);margin:18px 0 2px;font-size:13px;font-weight:500}.nb-group:first-child .nb-group-h,.nb-compact .nb-group:first-of-type .nb-group-h{margin-top:4px}.nb-reviewed{color:var(--calm)}.nb-more{font-size:var(--fs-sm);margin:8px 0 0;display:block}.material .btn.sm{flex:none}.material .nb-note{border-top:0;min-width:0;padding:0}.nb-topic-name{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:0;text-transform:none;color:var(--ink-3);margin:6px 0}.nb-note{border-top:1px solid var(--rule);color:inherit;grid-template-columns:1fr auto;gap:2px 12px;padding:10px 0;text-decoration:none;display:grid}.nb-note:first-of-type{border-top:0}.nb-note .nb-title{font-family:var(--font-sans);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:16px;font-weight:500;line-height:1.3;overflow:hidden}.nb-note .nb-meta{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;min-width:0;font-size:13px;font-weight:400;display:flex;overflow:hidden}.nb-notes .nb-group{gap:var(--s-2);grid-template-columns:minmax(0,1fr);display:grid}.nb-notes .nb-group-h{grid-column:1/-1}@media (min-width:768px){.nb-notes .nb-group{grid-template-columns:repeat(2,minmax(0,1fr))}}.nb-row.nb-card{background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);padding:2px 6px 2px 14px;position:relative;overflow:hidden}.nb-row.nb-card:before{content:"";background:var(--c,var(--rule-strong));width:4px;position:absolute;top:0;bottom:0;left:0}.nb-row.nb-card .nb-note{border-top:0}.nb-row.nb-card .nb-where{color:var(--c,var(--ink-3));font-weight:600}.nb-note .nb-snippet{font-family:var(--font-sans);color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-column:1/-1;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.nb-meta .nb-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nb-meta .nb-sep{white-space:pre;flex:none}.nb-note .nb-tags{grid-column:1/-1;gap:6px;margin-top:2px;display:flex}.reader-why{margin:0 0 var(--s-4)}.cal-sw-note{margin:-6px 0 10px;padding-left:36px}.cal-include .cal-sw+.cal-sw .toggle{border-top:1px solid var(--rule)}.nb-meta .nb-age{flex:none}@media (pointer:coarse){.nb-note{min-height:44px}}.nb-head-row{align-items:center;gap:12px}@media (max-width:1023px){.nb-search{display:none}}.nb-note .nb-preview{color:var(--ink-3);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.editor{flex-direction:column;display:flex}.editor>*{order:0}.editor .ed-title,.chat-page .ed-title{width:100%;font-family:var(--font-display);font-variation-settings:var(--opsz-display);letter-spacing:-.02em;color:var(--ink);background:0 0;border:0;margin-bottom:2px;padding:4px 0;font-size:clamp(24px,6vw,32px);font-weight:600}.ed-h1{font:inherit;margin:0;display:flex}.editor .ed-title:focus,.chat-page .ed-title:focus{outline:none}.editor .ed-title:focus-visible,.chat-page .ed-title:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.editor .ed-title::placeholder,.chat-page .ed-title::placeholder{color:var(--ink-3);opacity:1}.ed-place{background:var(--surface);border:1px solid var(--edge);border-radius:var(--r);max-width:100%;min-height:36px;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);text-align:left;cursor:pointer;align-self:flex-start;align-items:center;gap:4px;margin:2px 0 12px;padding:6px 10px;display:inline-flex}.ed-place .ico{width:14px;height:14px;color:var(--ink-3);flex:none}.ed-place:hover{background:var(--surface-2);color:var(--ink)}.ed-place.unfiled{border-style:dashed}@media (pointer:coarse){.ed-place{min-height:44px}.btn.quiet.wk-empty-own{min-height:44px;padding:0 8px}}.ed-body{width:100%;min-height:50vh;color:var(--ink);font:inherit;resize:vertical;background:0 0;border:0;order:5;padding:4px 0;font-size:17px;line-height:1.55}.ed-body:focus{outline:none}.ed-rich-wrap{order:5}.ed-rich{white-space:pre-wrap;border-left:3px solid #0000;outline:none;min-height:50vh;margin-left:-13px;padding-left:10px}.ed-rich:focus-visible{border-left-color:var(--focus);outline:none}.ed-rich>*+*{margin-top:.6em}.ed-rich h1,.ed-rich h2,.ed-rich h3{font-family:var(--font-display);letter-spacing:-.01em;margin-top:1em;line-height:1.2}.ed-rich h1{font-size:24px}.ed-rich h2{font-size:20px}.ed-rich h3{font-size:18px}.ed-rich ul,.ed-rich ol{padding-left:22px}.ed-rich ul[data-type=taskList]{padding-left:0;list-style:none}.ed-rich ul[data-type=taskList] li{align-items:flex-start;gap:8px;display:flex}.ed-rich ul[data-type=taskList] li>label{flex:none;margin-top:3px}.ed-rich ul[data-type=taskList] li>div{flex:1}.ed-rich ul[data-type=taskList] li[data-checked=true]>div{color:var(--ink-3);text-decoration:line-through}.ed-rich a{color:var(--accent)}.ed-rich code{font-family:var(--font-mono);background:var(--surface-2);border-radius:3px;padding:1px 4px;font-size:.92em}.ed-rich blockquote{border-left:2px solid var(--rule-strong);color:var(--ink-2);padding-left:12px}.ed-rich p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-3);pointer-events:none;float:left;height:0}.ed-loading{min-height:50vh;color:var(--ink-2);white-space:pre-wrap}.ed-rich table{border-collapse:collapse;width:100%;font-size:var(--fs-md);table-layout:fixed;margin:.8em 0}.ed-rich th,.ed-rich td{border:1px solid var(--rule-strong);vertical-align:top;min-width:3em;padding:6px 8px}.ed-rich th{background:var(--surface-2);text-align:left;font-weight:600}.ed-rich .selectedCell:after{content:"";background:var(--focus);opacity:.12;pointer-events:none;position:absolute;inset:0}.ed-rich td,.ed-rich th{position:relative}.ed-rich img{border-radius:var(--r-sm);max-width:100%;height:auto;margin:.8em 0;display:block}.ed-rich img.ProseMirror-selectednode{outline:2px solid var(--focus);outline-offset:2px}.ed-more{border-bottom:1px solid var(--rule);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:4px 0;margin-bottom:4px;padding-bottom:6px;display:flex}.ed-group{border-left:1px solid var(--rule);align-items:center;gap:2px;padding:0 6px;display:inline-flex}.ed-group:first-child{border-left:0;padding-left:0}.ed-tool[data-tip]{position:relative}.ed-tool[data-tip]:after{content:attr(data-tip);white-space:nowrap;background:var(--surface-inverse);color:var(--ink-inverse);font:500 12px/1.2 var(--font-sans);pointer-events:none;opacity:0;z-index:20;border-radius:6px;padding:5px 8px;transition:opacity .12s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}@media (hover:hover){.ed-tool[data-tip]:hover:after{opacity:1}}.ed-tool[data-tip]:focus-visible:after{opacity:1}@media (prefers-reduced-motion:reduce){.ed-tool[data-tip]:after{transition:none}}.ed-g{font-family:var(--font-sans);font-size:15px;font-weight:600;line-height:1}.ed-g.u{text-underline-offset:2px;text-decoration:underline}.ed-g.s{text-decoration:line-through}.ed-g.hl{background:var(--warn-soft);border-radius:3px;padding:1px 3px}.ed-g sub,.ed-g sup{font-size:10px}.ed-colors{gap:6px}.ed-swatch{border:2px solid var(--surface);width:24px;height:24px;box-shadow:0 0 0 1px var(--edge);cursor:pointer;border-radius:50%;padding:0}.ed-swatch.on{box-shadow:0 0 0 2px var(--focus)}.ed-words{order:5;margin-top:8px}.ed-rich mark{background:var(--warn-soft);color:inherit;border-radius:2px;padding:0 2px}.ed-rich pre{background:var(--surface-2);border-radius:var(--r-sm);font-family:var(--font-mono);padding:10px 12px;font-size:.92em;overflow:auto}.ed-rich hr{border:0;border-top:1px solid var(--rule-strong);margin:1em 0}.ed-rich .ed-img{margin:.8em 0}.ed-rich .ed-img.ProseMirror-selectednode img{outline:2px solid var(--focus);outline-offset:2px}.ed-tablebar{flex-wrap:wrap;flex-basis:100%;gap:4px;padding-bottom:4px;display:flex}.ed-toolbar{flex-wrap:wrap}.ed-tool.sm{min-width:0;height:30px;font-size:var(--fs-sm);color:var(--ink-2);border:1px solid var(--rule);padding:0 8px}.ed-preview{order:5;min-height:50vh;padding:4px 0}.ed-err{order:7;margin-top:12px}.editor .ed-head{top:var(--head-off);z-index:6;margin:calc(-1 * var(--s-4)) calc(-1 * var(--s-4)) 12px;padding:calc(4px + env(safe-area-inset-top)) var(--s-4) 4px;background:var(--paper);border-bottom:1px solid var(--rule);position:sticky}.ed-toolbar{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));z-index:5;background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);order:6;align-items:center;gap:4px;margin:8px 0 0;padding:6px 0;display:flex;position:sticky}.ed-toolbar.kb{left:var(--s-4);right:var(--s-4);margin:0;padding-left:4px;padding-right:4px;position:fixed;bottom:auto;transform:translateY(-100%)}.editor:has(.ed-toolbar.kb) .ed-body{padding-bottom:64px}.ed-tool{border-radius:var(--r-sm);min-width:44px;height:44px;color:var(--ink-2);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.ed-tool:hover,.ed-tool.on{background:var(--surface-2);color:var(--ink)}.ed-glyph{font-family:var(--font-sans);font-size:15px;font-weight:700}.ed-glyph.i{font-style:italic;font-weight:400}.save-state.saving,.save-state.offline{color:var(--ink-2)}.save-state.error{color:var(--danger)}.save-state.saved{color:var(--calm)}@media (min-width:1024px){.ed-toolbar{top:calc(var(--head-off) + 44px);order:4;margin:0 0 8px;position:sticky;bottom:auto}.ed-toolbar.kb{position:sticky;left:auto;right:auto;transform:none;top:calc(var(--head-off) + 44px)!important}}.field{flex-direction:column;gap:6px;display:flex}.menu-list{flex-direction:column;display:flex}.menu-list .menu-item{border-bottom:1px solid var(--rule);border-radius:0;justify-content:flex-start;width:100%;min-height:48px}@media (pointer:coarse){.ed-body{font-size:17px}.ed-tool{min-width:44px;height:44px;padding:0 4px}.ed-toolbar{gap:2px}.ed-tool.sm{min-width:0;height:44px}}.door-compose .textarea{min-height:96px}.ai-thread.plain{flex-direction:column;gap:14px;display:flex}.door-turn .door-q{font-size:var(--fs-body);color:var(--ink-2);margin-bottom:6px;line-height:1.4}.door-turn .door-a{margin:0}.ways{flex-direction:column;gap:6px;display:flex}.welcome-school{margin-bottom:var(--s-6);padding-bottom:var(--s-5);border-bottom:var(--rule-w) solid var(--rule)}.way{text-align:left;border:var(--rule-w) solid var(--rule-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;padding:12px 14px;font-weight:540}.way:hover{border-color:var(--ink-3)}.way.on{border-color:var(--ink);box-shadow:inset 2px 0 0 var(--ink)}.sources-style{margin-bottom:var(--s-3);align-items:center;gap:8px}.sources-list{margin:0 0 var(--s-4);padding:0;list-style:none}.source-item{border-top:var(--rule-w) solid var(--rule);flex-direction:column;gap:6px;padding:12px 0;display:flex}.source-item:first-child{border-top:0}.source-title{font-family:var(--font-sans);overflow-wrap:anywhere;font-weight:500}.source-stance{gap:6px}.source-stance .chip{min-height:36px}@media (pointer:coarse){.source-stance .chip{min-height:44px}}.source-acts{gap:8px}.source-add{margin-top:var(--s-3)}.way-body{border-top:var(--rule-w) solid var(--rule);margin-top:12px;padding:14px 0 0}.known{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.known li{font-family:var(--font-sans);font-size:var(--fs-sm);align-items:flex-start;gap:8px;display:flex}.known .ico{color:var(--calm);flex:none;margin-top:2px}.assign-source{margin-top:6px}details.more>summary{cursor:pointer;color:var(--ink-3);align-items:center;gap:4px;padding:4px 0;list-style:none;display:inline-flex}details.more>summary::-webkit-details-marker{display:none}details.more>summary:before{content:"+";font-family:var(--font-sans)}details.more[open]>summary:before{content:"–"}details.more>.ai-actions{margin-top:8px}.topic-dot{border:var(--rule-w) solid var(--rule-strong);border-radius:50%;flex:none;width:18px;height:18px}.resources{flex-direction:column;gap:4px;margin:0 0 12px;padding:0;list-style:none;display:flex}.resources li{font-size:var(--fs-sm);flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.resources .res-note{font-family:var(--font-serif);font-size:var(--fs-sm);color:var(--ink-3);flex-basis:100%;margin-left:0}.resources li.done{color:var(--ink-3);text-decoration:line-through}.resources a{color:var(--ink)}.resources .res-open{color:var(--ink-3);margin-left:6px;text-decoration:none}.resources .res-open:hover{color:var(--ink);text-decoration:underline}.wrong-cats{flex-wrap:wrap;gap:8px;display:flex}.wrong-cats .chip{min-height:44px}.wrong-sends{border-top:var(--rule-w) solid var(--rule);padding-top:10px}.wrong-sends>summary{min-height:24px;color:var(--ink-2);cursor:pointer}.wrong-sends>summary:hover{color:var(--ink)}.wrong-sends-list{flex-direction:column;gap:2px;margin:0;padding-left:18px;display:flex}.path-starts{margin:0 0 10px}.why-toggle{min-height:24px;font:inherit;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}@media (pointer:coarse){.why-toggle{min-height:44px}}.why-toggle:hover{color:var(--ink)}.why-chev{width:14px;height:14px;transition:transform var(--dur-fast) var(--ease)}.why.open .why-chev,.why-chev.open{transform:rotate(180deg)}.nextmove .why.hero-why{border-top:1px solid var(--rule);margin-top:12px;padding-top:10px}.event-from-line{width:100%;min-height:24px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:0;display:flex}.event-from-title{font-weight:500}.event-from-line:hover .event-from-title{text-underline-offset:3px;text-decoration:underline}.event-from-body{margin-top:8px}.event-from-body .instructions{white-space:pre-wrap;margin:0 0 8px}@media (pointer:coarse){.event-from-line{min-height:44px}}.why-panel{margin-top:8px}.why-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.why-list li{border-left:2px solid var(--rule-strong);flex-direction:column;gap:1px;padding-left:12px;display:flex}.why-text{font-size:var(--fs-sm)}.why-source{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3)}.src-link{color:inherit;text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3);-webkit-box-decoration-break:clone;box-decoration-break:clone;margin:-4px 0;padding:4px 0;display:inline}@media (pointer:coarse){.src-link{margin:-14px 0;padding:14px 0}}.src-link:hover{color:var(--ink);text-decoration-color:currentColor}.wk-banner .src-link,.dayoff .src-link,.wk-where .src-link{text-decoration-style:dotted}.an-open{margin-left:auto}.hint{border-top:1px solid var(--rule);font-family:var(--font-serif);font-size:var(--fs-sm);color:var(--ink-2);align-items:flex-start;gap:8px;margin-top:10px;padding-top:8px;display:flex}.hint-text{flex:1}.hint-x{width:24px;height:24px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin:-4px -4px 0 0;display:inline-flex}.hint-x:hover{color:var(--ink);background:var(--surface-2)}.hint-x .ico{width:14px;height:14px}@media (pointer:coarse){.hint-x{width:44px;height:44px;margin:-12px -12px 0 0}}.nextmove .hint{color:inherit;opacity:.85;border-top-color:currentColor}.wk-addown{margin-left:auto}.wk-term{min-height:44px;margin-left:auto}@media (min-width:768px){.wk-addown+.wk-term{margin-left:16px}}.term-list{margin:0;padding:0;list-style:none}.term-row{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 0;display:flex}.term-row:first-child{border-top:0}.term-what{font-family:var(--font-sans);color:var(--ink);font-weight:600}.term-when{color:var(--ink-2)}.term-now{font-family:var(--font-sans);color:var(--calm);background:var(--calm-soft);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.term-note{flex-basis:100%}.term-src{margin-left:auto}.term-row.is-over .term-what,.term-row.is-over .term-when{color:var(--ink-3);font-weight:500}.term-empty{margin:0 0 var(--s-3)}.term-add{margin:var(--s-4) 0 0}.term-add a{align-items:center;min-height:44px;display:inline-flex}.working .hint{flex-basis:100%;margin-top:4px}.add-course-row{align-items:flex-start;gap:12px}.add-course-row .field{min-width:140px}.usage-lines{border-bottom:1px solid var(--rule);margin:0 0 16px;padding-bottom:12px}.usage-line{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink-2);margin:0 0 4px}.pro-tiers{gap:28px;margin-top:8px;display:grid}@media (min-width:720px){.pro-tiers{grid-template-columns:1fr 1fr;gap:40px}}.pro-tier{border-top:1px solid var(--rule);padding-top:14px}.pro-tier.mine{border-top-color:var(--ink)}.pro-tier-head{gap:10px}.pro-tier-lead{margin:4px 0 10px}.pro-list{margin:0;padding:0;list-style:none}.pro-list li{border-bottom:1px solid var(--rule);font-family:var(--font-serif);font-size:var(--fs-body);flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 0;display:flex}.pro-list li:last-child{border-bottom:0}.pro-coming{text-transform:uppercase;letter-spacing:.06em}.pro-price{font-variant-numeric:tabular-nums;margin:12px 0 0}.pro-note{max-width:56ch;margin-top:24px}.plan-row{flex-direction:column;align-items:flex-start;gap:4px;margin-top:10px;display:flex}.conn-details{margin:-4px 0}.working{font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px;display:flex}.working-line{font-family:var(--font-sans);font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.working.on .working-line{color:var(--ink);font-weight:500}.working-dot{background:var(--signal);width:8px;height:8px;animation:working-pulse 2s var(--ease) infinite;border-radius:50%}.btn.primary .working-dot{background:var(--on-accent,#fff)}@keyframes working-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.working-dot{animation:none}}.working.stale .working-line{color:var(--ink-2)}.nextmove .working{font-size:var(--fs-body);margin-top:0}.nextmove .working .working-line{color:inherit}.cap-photo{gap:6px;margin:0;display:grid}.cap-photo img{border:1px solid var(--rule);border-radius:var(--r);background:var(--surface-2);width:auto;max-width:100%;max-height:70vh;display:block}.material.wanted{background:var(--surface-2);box-shadow:0 0 0 4px var(--surface-2);border-radius:var(--r)}.why-tail{margin-top:8px}.link-quiet{font:inherit;font-size:var(--fs-sm);color:var(--ink-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;min-height:24px;padding:0;text-decoration:none;display:inline-flex}.link-quiet:hover{opacity:1;color:var(--ink);text-decoration:underline}@media (pointer:coarse){.link-quiet{min-height:44px}}.changes{flex-direction:column;display:flex}.ch-day{color:var(--ink-3);padding:14px 0 4px}.ch-day+.change{border-top:0}.change{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:flex-start;gap:8px 12px;padding:12px 0;display:flex}.change:first-child{border-top:0}.ch-body{flex:13rem;min-width:0}.ch-head{font-weight:500;font-family:var(--font-serif);font-size:var(--fs-body)}.change.confirm .ch-head:before{content:"";background:var(--signal);vertical-align:2px;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.ch-cons{color:var(--ink-2);font-size:var(--fs-sm);margin-top:2px}.ch-src{text-transform:none;letter-spacing:0;margin-top:3px}.ch-why{margin-top:4px}.ch-actions{flex:none;align-items:center;gap:4px;display:flex}.ch-done{color:var(--calm);min-height:24px;font-size:var(--fs-sub);align-items:flex-start;gap:4px;line-height:1.3;display:inline-flex}.ch-done svg{flex:none;margin-top:2px}.score-edit{flex-wrap:nowrap;align-items:center;gap:8px}.score-edit input{width:6.5em}.week-label{color:var(--ink-2);align-items:center;gap:4px;display:inline-flex}.week-label .ico{width:14px;height:14px}.month-head{align-items:center;gap:8px;margin-bottom:8px}.month-title{text-align:center;font-family:var(--font-sans);font-weight:600}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.month-wd{text-align:center;padding:4px 0}.month-cell{border-radius:var(--r);min-height:44px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.month-cell:hover{background:var(--surface-2)}.month-cell.today .month-num{box-shadow:0 0 0 1.5px var(--accent);border-radius:999px}.month-cell.chosen{background:var(--accent-soft)}.month-num{text-align:center;min-width:26px;line-height:26px}.month-dots{gap:3px;height:6px;display:flex}.dot{vertical-align:middle;border-radius:50%;width:6px;height:6px;display:inline-block}.dot.due{background:var(--accent)}.dot.cls{background:var(--ink-3);opacity:.6}.month-legend{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 4px;display:flex}.month-legend .dot.cls{margin-left:10px}.privacy-line{flex-direction:column;align-items:flex-start;gap:2px;margin:12px 0;display:flex}.campus{flex-direction:column;gap:10px;margin:4px 0 16px;display:flex}.campus-starting{margin:4px 0 12px}.campus-ask{border:var(--rule-w) solid var(--rule-strong);border-left:3px solid var(--warn);border-radius:var(--r-lg);background:var(--surface);padding:12px 14px}.campus-q{font-family:var(--font-serif);font-size:var(--fs-body);margin:0 0 4px}.campus-acts{align-items:center;gap:8px;margin-top:10px}.campus-lines{margin:0;padding:0;list-style:none}.campus-lines li{border-top:var(--rule-w) solid var(--rule);padding:8px 0}.campus-lines li:first-child{border-top:0}.campus-text{font-family:var(--font-serif);font-size:var(--fs-sub);margin:0 0 2px}.campus-meta{align-items:center;gap:8px}.campus-mode{border-radius:var(--r-lg);background:var(--warn-soft);border:var(--rule-w) solid color-mix(in srgb, var(--warn) 35%, transparent);font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink);align-items:flex-start;gap:8px;margin:0;padding:10px 14px;display:flex}.campus-mode svg{width:16px;height:16px;color:var(--warn);flex:none;margin-top:2px}.campus-mode strong{color:var(--warn)}.campus.is-mode .campus-tile,.campus.is-mode .campus-ask{border-left-color:var(--warn)}.campus-when{font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px;font-size:12px;font-weight:700;display:block}.campus-posted{font-family:var(--font-sans);color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:4px;font-size:12px;display:flex}.campus-pill{border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.campus-pill.is-calm{color:var(--calm);background:var(--calm-soft)}.campus-pill.is-warn{color:var(--warn);background:var(--warn-soft)}.campus-ask-foryou{margin:6px 0 0}.campus-fold{margin-bottom:var(--s-3)}.campus-fold-line{text-align:left;border:var(--rule-w) solid var(--rule-strong);border-left:3px solid var(--warn);border-radius:0 var(--r-lg) var(--r-lg) 0;background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;font-family:var(--font-sans);cursor:pointer;align-items:center;gap:10px;padding:8px 12px;font-size:14px;line-height:1.35;display:flex}.campus-fold-text{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-weight:600;display:-webkit-box;overflow:hidden}.campus-fold-more{color:var(--ink-2);white-space:nowrap;flex:none;font-size:13px}.campus-fold-chev{color:var(--ink-3);flex:none;transition:transform .15s}.campus-fold.is-open .campus-fold-chev{transform:rotate(180deg)}.campus-fold.is-open .campus{margin-top:var(--s-2)}@media (prefers-reduced-motion:reduce){.campus-fold-chev{transition:none}}.campus-commute{border:var(--rule-w) solid var(--rule-strong);border-radius:var(--r-lg);background:var(--surface);padding:12px 14px}.campus-commute-sub{margin:0 0 10px}.campus-commute-opts{flex-wrap:wrap;gap:8px;display:flex}.campus-commute-opts .btn{min-height:44px}.campus-acts .btn{min-width:44px;min-height:44px}.about-commute select{min-height:40px}.campus-card.is-firm .campus-card-icon{color:var(--danger)}.campus-source{color:var(--ink-3)}a.campus-source{text-underline-offset:2px;align-items:center;min-height:24px;text-decoration:underline;display:inline-flex}@media (pointer:coarse){a.campus-source{min-height:44px}}.caught-up{align-items:center;gap:8px;margin:4px 0 12px}.back-after{flex-wrap:nowrap;align-items:center;gap:8px;margin:4px 0 12px}.back-after>.t-sm{min-width:0;color:var(--ink-2);flex:1}.caught-list{margin:0;padding:0;list-style:none}.caught-list li{border-top:var(--rule-w) solid var(--rule);align-items:center;gap:12px;padding:10px 0}.caught-list li:first-child{border-top:0}.caught-title,.caught-meta{display:block}.day-off{align-items:center;gap:8px;margin-top:8px}.ch-kept{flex-wrap:wrap;align-items:center;gap:4px 8px;display:inline-flex}.wtr{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.wtr-answers{flex:none;align-items:center;gap:6px;display:inline-flex}.wtr.why{gap:8px}.wtr.why .input{flex:200px;min-width:0}.wtr.in-row{margin-top:4px}.wtr.off{flex-direction:column;align-items:flex-start;gap:0}.wtr.off .chips{margin-top:4px}.wtr.off-fix{gap:8px}.wtr.off-fix .input{flex:0 240px;min-width:0}@media (max-width:640px){.wtr.off .chip,.wtr.off-fix .input,.wtr.off-fix .btn{min-height:44px}}.facts-row{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.facts-row .assign-facts{margin:0}.day-strip{width:100%}.strip-link{color:inherit;border-radius:var(--r);text-decoration:none;display:block}.strip-link:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.day-strip .strip-block.drawn{cursor:inherit}.day-strip svg{max-width:100%;font-family:var(--font-sans);display:block;overflow:visible}.day-strip .strip-block{cursor:pointer;outline:none;text-decoration:none}.day-strip .strip-block text{pointer-events:none;text-decoration:none}.day-strip .strip-block:hover rect{filter:brightness(.94)}.day-strip .strip-block:focus-visible rect{stroke:var(--ink);stroke-width:2px}.day-strip .strip-hour,.day-strip .strip-label{font-variant-numeric:lining-nums tabular-nums}.day-strip .strip-hour{letter-spacing:.01em}:root[data-theme=dark] .day-strip .strip-block.fixed rect:first-of-type{fill-opacity:.14}:root[data-theme=dark] .day-strip .strip-block.work rect:first-of-type{fill:var(--ink-3);fill-opacity:.38}:root[data-theme=dark] .day-strip .strip-block.work .strip-label{fill:var(--ink)}.assign-details{font-family:var(--font-sans);margin-top:6px}.reminder-row.skipped .d-title{color:var(--ink-2)}.reminder-row.failed .d-title{color:var(--danger)}.scheme-line{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.deadline .d-part{width:100%;color:var(--ink-2);font-size:var(--fs-sm);margin-top:2px;display:block}.deadline .d-where{color:var(--ink-3);font-size:var(--fs-sm)}.attached{margin-top:var(--s-4);padding:var(--s-3) var(--s-4);border:var(--rule-w) solid var(--rule-strong);border-radius:var(--r-sm);background:var(--surface)}.attached .ai-actions{margin-top:10px}.d-pin{font-size:var(--fs-sm);color:var(--ink-2);align-items:center;gap:4px;display:inline-flex}.d-pin svg{width:13px;height:13px}.pin-btn{border:var(--rule-w) solid var(--rule);border-radius:var(--r-sm);min-height:32px;color:var(--ink-2);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-top:10px;padding:6px 10px 6px 8px;display:inline-flex}.pin-btn:hover,.pin-btn.on{border-color:var(--rule-strong);color:var(--ink)}.pin-btn svg{width:14px;height:14px}.waiting-on{background:var(--surface-2);color:var(--ink-2);border-radius:12px;flex-direction:column;gap:2px;margin:8px 0;padding:8px 12px;display:flex}.waiting-nudge{color:var(--accent);font-weight:500}.waiting-clear,.waiting-ask{min-height:44px;font-family:var(--font-sans);font-size:var(--fs-meta);align-self:flex-start}.waiting-form{max-width:420px;margin:8px 0}@media (pointer:coarse){.pin-btn{min-height:44px}}.reading{margin:var(--s-5) 0 0;padding-left:var(--s-3);border-left:var(--rule-w) solid var(--rule)}.report-said{font-family:var(--font-serif);font-size:var(--fs-h3);margin:0 0 8px;line-height:1.4}.report-facts{flex-wrap:wrap;gap:4px 12px;display:flex}.setup{margin:var(--s-5) 0 var(--s-5)}.setup-head{border-bottom:1px solid var(--rule);padding-bottom:6px}.setup-row{border-bottom:1px solid var(--rule);align-items:baseline;gap:10px;padding:10px 0}.setup-row .t-sm{color:var(--ink-2)}.setup-acts{flex-wrap:wrap;align-items:baseline;gap:10px 14px;display:inline-flex}@media (max-width:599px){.setup-row{flex-direction:column;align-items:flex-start;gap:8px}.setup-row .grow{flex:none;width:100%}}.setup-no{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3)}@media (pointer:coarse){.setup-no{align-items:center;min-height:44px;display:inline-flex}}.work-group{margin-top:var(--s-6)}.work-head{border-bottom:1px solid var(--rule);align-items:baseline;gap:6px;padding-bottom:6px;display:flex}.work-course{border-bottom:1px solid var(--rule)}.work-course-head{box-sizing:border-box;cursor:pointer;min-height:44px;font-family:var(--font-sans);font-size:var(--fs-sm);align-items:baseline;gap:8px;padding:12px 0;list-style:none;display:flex}.work-course-head::-webkit-details-marker{display:none}.work-course-head:before{content:"›";color:var(--ink-3);transition:transform .12s;display:inline-block}.work-course[open]>.work-course-head:before{transform:rotate(90deg)}.work-course-head:hover{color:var(--ink)}.work-course-head:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r)}.work-course>.coming{padding-bottom:8px}@media (prefers-reduced-motion:reduce){.work-course-head:before{transition:none}}.subject-asked{padding-left:var(--s-3);border-left:var(--rule-w) solid var(--rule);margin:0}.subject-asked .t-meta{display:block}.backfill{margin:0 0 var(--s-6);padding-left:var(--s-3);border-left:var(--rule-w) solid var(--rule)}.backfill .thinking{margin:0}.m-lead{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.margin.also .m-sentence .m-lead{display:inline}.why-off{border-top:1px solid var(--rule);margin-top:8px;padding-top:8px}.why-off .chips{margin-top:4px}.why-off.noted{border-top:0;padding-top:0}.course-list{flex-direction:column;display:flex}.course-row{border-top:1px solid var(--rule);color:inherit;grid-template-columns:1fr auto;align-items:baseline;gap:4px 16px;padding:14px 0;text-decoration:none;display:grid}.course-row:first-child{border-top:0}.course-row:hover .cname{text-underline-offset:3px;text-decoration:underline}.course-row .cname{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h3);letter-spacing:-.01em;line-height:1.25}.course-row .ccode{grid-area:1/2/span 2;align-self:start}.course-row .cmeta{color:var(--ink-3);font-size:var(--fs-sm)}.wk-header{flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 2px;display:flex}.wk-title{min-width:0;font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);margin:0;font-size:13px;font-weight:500}.wk-title .week-label{font:inherit;color:var(--ink-2)}@media (pointer:coarse){.wk-title .week-label{min-height:44px}}.wk-dayrows{margin-top:var(--s-6)}.wk-dayrows-head{align-items:center;gap:8px;margin-bottom:2px;display:flex}.wk-dayrows-h{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);margin:0;font-size:13px;font-weight:600}.wk-seetoday{margin:var(--s-4) 0 0;font-family:var(--font-sans);font-size:14px}.link-quiet.wk-change{font-family:var(--font-sans);color:var(--calm);padding:0 4px;font-size:13px;font-weight:600;text-decoration:none}.link-quiet.wk-change:hover{text-underline-offset:3px;text-decoration:underline}@media (pointer:coarse){.link-quiet.wk-change,.wk-seetoday .link-quiet{align-items:center;min-height:44px;display:inline-flex}}.wk-sentence{margin:2px 0 var(--s-4);font-family:var(--font-serif);color:var(--ink);max-width:36ch;font-size:19px;line-height:1.3}.load-line{margin:0 0 var(--s-5);max-width:560px}.load-head{align-items:center;gap:8px;min-height:44px;display:flex}.load-title{font-family:var(--font-sans);color:var(--ink-2);margin:0;font-size:13px;font-weight:600}.load-move{min-height:44px;margin-left:auto}.load-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:4px 0 0;padding:0;list-style:none;display:grid}.load-day{font-family:var(--font-sans);font-variant-numeric:tabular-nums;justify-items:center;gap:3px;display:grid}.load-dow{color:var(--ink-3);white-space:nowrap;font-size:12px}.load-bar{background:var(--rule);opacity:.9;border-radius:6px;width:100%;max-width:40px;height:36px;position:relative;overflow:hidden}.load-fill{height:calc(var(--fill,0) * 100%);background:var(--calm);border-radius:6px 6px 0 0;min-height:0;position:absolute;bottom:0;left:0;right:0}.load-day.is-tight .load-fill{background:var(--warn)}.load-day.is-over .load-fill{background:var(--danger)}.load-hours{color:var(--ink-2);font-size:12px}.load-word{min-height:15px;font-size:12px;font-weight:600;line-height:15px}.load-day.is-tight .load-word{color:var(--warn)}.load-day.is-over .load-word{color:var(--danger)}.load-grade{margin-top:var(--s-4)}.load-grade-title{font-family:var(--font-sans);color:var(--ink-2);margin:0 0 4px;font-size:13px;font-weight:600}.load-weeks{font-family:var(--font-sans);font-variant-numeric:tabular-nums;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 8px;margin:0;padding:0;list-style:none;display:grid}.load-week{gap:1px;min-width:0;display:grid}.load-week-name{color:var(--ink-3);overflow-wrap:anywhere;font-size:12px}.load-week-pct{color:var(--ink-2);font-size:15px}.load-week.has-pct .load-week-pct{color:var(--ink);font-weight:600}.load-week-more{color:var(--ink-3);font-size:12px}@media (prefers-reduced-motion:no-preference){.load-fill{transition:height .2s ease-out}}.week{gap:var(--s-6);display:grid}@media (min-width:720px){.week{column-gap:var(--s-10);grid-template-columns:repeat(2,minmax(0,1fr))}}.week .dayname{margin-bottom:var(--s-1);border-bottom:var(--rule-w) solid var(--rule-strong);padding-bottom:4px}.week .today .dayname{border-bottom-color:var(--accent)}.dayoff{background:var(--warn-soft);color:var(--warn);border-radius:var(--r-xs);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0;padding:8px 10px;display:flex}.choices{gap:8px;display:grid}@media (min-width:480px){.choices{grid-template-columns:repeat(3,minmax(0,1fr))}.choices.four,.choices.five{grid-template-columns:repeat(2,minmax(0,1fr))}.choices.five>.choice:first-child{grid-column:1/-1}.choices.two{grid-template-columns:repeat(2,minmax(0,1fr))}}.choice{text-align:left;border:1px solid var(--rule-strong);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;transition:border-color var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.choice:hover{border-color:var(--ink)}.choice.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--surface-2)}.choice .c-title{font-weight:600}.choice .c-hint{font-size:var(--fs-sm);color:var(--ink-3)}.cls-week{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start;gap:14px;display:grid}.cls-day{flex-direction:column;gap:6px;min-width:0;display:flex}.cls-dayname{border-bottom:var(--rule-w) solid var(--rule);padding-bottom:4px}.cls-block{border:1px solid var(--edge);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;align-items:flex-start;gap:8px;padding:8px;display:flex}.cls-block .grow{flex-direction:column;gap:1px;display:flex}.cls-course{font-family:var(--font-sans);font-size:var(--fs-sm)}.cls-when{display:block}.cls-block.off{background:0 0;border-style:dashed}.cls-block.off .cls-course{color:var(--ink-3);text-decoration:line-through}.cls-block.off .cls-when{color:var(--ink-3)}.cls-block.needs{border-color:var(--signal)}.cls-block.already{cursor:default;background:0 0;border-style:dashed;padding-left:36px}.cls-block.already .cls-course{color:var(--ink-2)}.cls-already,.cls-new{color:var(--ink-3)}.cls-fix-row{align-items:center;gap:8px}@media (pointer:coarse){.cls-block{min-height:44px}}.daypicks{flex-wrap:wrap;gap:6px;display:flex}.daypick{border:1px solid var(--rule-strong);border-radius:var(--r-sm);background:var(--surface);min-width:44px;min-height:40px;font-family:var(--font-sans);font-size:var(--fs-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);padding:0 10px}.daypick.on{background:var(--ink);color:var(--ink-inverse);border-color:var(--ink)}.daypick.wide{min-height:44px;color:var(--ink);flex:1 1 0}.daypick.wide.on{color:var(--ink-inverse)}.daypick.unsaved{border-color:var(--danger);-webkit-text-decoration:underline wavy var(--danger);text-decoration:underline wavy var(--danger);text-underline-offset:4px}@media (pointer:coarse){.daypick,.chip,.ask-scope .chip{min-height:44px}.wk-changes{width:44px;height:44px}}.thisday{margin-top:var(--s-6);padding-top:var(--s-4);border-top:var(--rule-w) solid var(--rule-strong)}.canvas-connect .cancan{gap:4px 24px;margin-top:12px;display:grid}@media (min-width:560px){.canvas-connect .cancan{grid-template-columns:1fr 1fr}}.canvas-connect .cancan ul{margin:0;padding:0;list-style:none}.canvas-connect .cancan li{font-size:var(--fs-sm);align-items:flex-start;gap:8px;padding:3px 0;display:flex}.canvas-connect .cancan .ico{width:16px;height:16px;margin-top:2px}.canvas-connect .cancan .ico.ok{color:var(--calm)}.canvas-connect .cancan .ico.no{color:var(--ink-3)}.canvas-connect .paths{gap:8px;margin-top:16px;display:grid}@media (min-width:560px){.canvas-connect .paths{grid-template-columns:1fr 1fr}}.conn{flex-direction:column;gap:6px;display:flex}.toggles{flex-direction:column;display:flex}.toggle{border-top:1px solid var(--rule);cursor:pointer;align-items:flex-start;gap:12px;padding:10px 0;display:flex}.toggle:first-child{border-top:0}.toggle .check{margin-top:2px}.notify-level input[type=radio]{accent-color:var(--ink);flex:none;width:18px;height:18px;margin:3px 3px 0}.study-day-off{border-top:var(--rule-w,1px) solid var(--rule);margin-top:16px;padding-top:12px}.study-day-off-hint{margin:6px 0 0}.study-days-off{margin-top:16px}.study-days-off-list{margin:6px 0 0;padding:0;list-style:none}.study-days-off-list li{border-top:var(--rule-w,1px) solid var(--rule);padding:6px 0}.classes-end-early{cursor:default;align-items:center}.sink section>h2{margin-bottom:var(--s-4)}.swatches{gap:var(--s-2);flex-wrap:wrap;display:flex}.swatch{border:1px solid var(--rule);border-radius:var(--r-xs);width:104px;font-family:var(--font-sans);font-size:10.5px;overflow:hidden}.swatch .c{height:42px}.swatch .n{padding:4px 6px}.ai-prose input[type=checkbox]{accent-color:var(--calm);margin-right:6px}.ai-prose li:has(>input[type=checkbox]){margin-left:-18px;list-style:none}.ai-prose .katex-display,.ed-rich .katex-display,.ed-rich [data-type=block-math]{text-align:center;-webkit-overflow-scrolling:touch;max-width:100%;margin:.6em 0;padding:4px 0;overflow:auto hidden}.ai-prose .katex,.ed-rich .katex{font-size:1.05em}.ai-prose .katex-error{color:var(--danger)}.ai-prose table{border-collapse:collapse;font-size:var(--fs-sm);max-width:100%;margin:.6em 0}.ai-prose th,.ai-prose td{border:0;border-bottom:var(--rule-w) solid var(--rule);text-align:left;vertical-align:top;padding:6px 12px 6px 0}.ai-prose th{font-family:var(--font-sans);color:var(--ink-2);border-bottom-color:var(--rule-strong);font-weight:500}.ai-prose tr:last-child td{border-bottom:0}.ai-prose .table-scroll{overflow-x:visible}.ai-prose table,.msg.ai .ai-prose table{table-layout:auto;width:100%;max-width:100%;display:table;overflow:visible}.ai-prose th,.ai-prose td{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.ai-prose th{overflow-wrap:break-word;-webkit-hyphens:manual;hyphens:manual}.ai-prose td:last-child,.ai-prose th:last-child{padding-right:0}.known{border-left:2px solid var(--rule);color:var(--ink-3);padding:2px 0 2px 12px}.known a{color:var(--ink-2)}.known strong{color:var(--ink-2);font-weight:500}.known-list{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.lang-picker{margin-top:var(--s-4);gap:6px;display:grid}.lang-picker .t-meta{margin:0}.accent-picker{margin:var(--s-4) 0 0;border:0;padding:0}.accent-picker legend{margin-bottom:var(--s-2);padding:0}.accent-row{gap:var(--s-2);margin-bottom:var(--s-2);flex-wrap:wrap;display:flex}.accent-opt{cursor:pointer;min-height:44px;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);align-items:center;gap:8px;padding:0 4px;display:inline-flex}.accent-opt .accent-name{text-underline-offset:4px;transition:text-decoration-color var(--dur-fast) var(--ease);-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1.5px}.accent-opt.on{color:var(--ink)}.accent-opt.on .accent-name{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.accent-opt:has(:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.accent-dot{background:var(--sw);border-radius:50%;flex:none;width:16px;height:16px}.accent-opt[data-accent=oxblood]{--sw:#8c2f1f}.accent-opt[data-accent=forest]{--sw:#2f5d3a}.accent-opt[data-accent=navy]{--sw:#223a6b}.accent-opt[data-accent=mustard]{--sw:#7d5f0e}.accent-opt[data-accent=plum]{--sw:#5a2d5c}.accent-opt[data-accent=indigo]{--sw:#2b2d5c}.accent-opt[data-accent=ink]{--sw:#23394d}.accent-opt[data-accent=teal]{--sw:#2f6f6a}[data-look=pastel]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4effb;--surface:#fff;--surface-2:#efe8f8;--surface-3:#e6def3;--rule:#e3d7f5;--rule-strong:#b9a9d6;--ink:#231b33;--ink-2:#3d3450;--ink-3:#5d5470;--ink-inverse:#f4effb;--surface-inverse:#231b33;--overlay:#231b336b;--signal:#7a4bb8;--signal-ink:#6a3fa6;--signal-soft:#efe5fb;--accent:#7a4bb8;--on-accent:#fff;--accent-soft:#efe5fb;--on-signal:#fff;--calm:#2f7a45;--calm-soft:#e8f3ea;--load-class:#8a8199;--load-due:var(--accent);--load-free:#6f9658;--load-class-on:#d6cde6;--load-due-on:var(--accent-soft);--load-free-on:#9dbb8b;--warn:#93600a;--warn-soft:#f6eedd;--danger:#b0372a;--danger-soft:#f3dfdb;--focus:#1f5fbf;--edge:#8a8199;--course-1:#047469;--course-2:#27487e;--course-3:#7e58bc;--course-4:#c23678;--course-5:#03769b;--course-6:#653760;--course-7:#535b01;--course-hub:#565c64;--shadow-pop:0 8px 28px #231b3324, 0 1px 2px #231b3314;--nextmove-bg:#fff;--nextmove-fg:#231b33;--nextmove-rule:#e3d7f5;color:var(--ink);background:linear-gradient(#f4effb 0%,#efe6fa 55%,#e3d7f5 100%)}[data-look=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0f1724;--surface:#1e2c45;--surface-2:#24375a;--surface-3:#2c4169;--rule:#2c3d5c;--rule-strong:#4a6088;--ink:#eef2f8;--ink-2:#d3dbe8;--ink-3:#a9b6c9;--ink-inverse:#0f1724;--surface-inverse:#eef2f8;--overlay:#0009;--signal:#8fd3c7;--signal-ink:#8fd3c7;--signal-soft:#1c3a42;--accent:#8fd3c7;--on-accent:#0f1724;--accent-soft:#1c3a42;--on-signal:#0f1724;--calm:#9bd08a;--calm-soft:#1d2f2a;--load-class:#6d7f9c;--load-due:var(--accent);--load-free:#9bd08a;--load-class-on:#4a6088;--load-due-on:var(--accent-soft);--load-free-on:#3f6629;--warn:#f4d58d;--warn-soft:#2e2a18;--danger:#f0a08f;--danger-soft:#3a2224;--focus:#7cc4e4;--edge:#6d7f9c;--course-1:#3bae9f;--course-2:#799af1;--course-3:#cbb7fe;--course-4:#ffa0c3;--course-5:#07bff9;--course-6:#ce79d3;--course-7:#c5c98a;--course-hub:#a7aeb7;--shadow-pop:0 8px 28px #00000080, 0 1px 2px #0006;--nextmove-bg:#24375a;--nextmove-fg:#eef2f8;--nextmove-rule:#eef2f829;color:var(--ink);background:linear-gradient(#0f1724 0%,#152238 60%,#1b2b45 100%)}[data-look]{border-radius:var(--r-md);padding:var(--s-4) var(--s-3) var(--s-8)}.look-picker{margin:var(--s-5) 0 0;border:0;flex-direction:column;gap:8px;min-width:0;padding:0;display:flex}.look-picker legend{margin-bottom:4px;padding:0}.sticker-marks{vertical-align:middle;color:var(--ink-2);gap:2px;margin-left:4px;display:inline-flex}.wk-daychip .sticker-marks{justify-content:center;margin:3px 0 0}.sticker-picker{margin:var(--s-5) 0 0;border:0;flex-direction:column;gap:8px;min-width:0;padding:0;display:flex}.sticker-picker legend{margin-bottom:4px;padding:0;font-weight:600}.sticker-row{flex-wrap:wrap;gap:6px;display:flex}.sticker-opt{border:var(--rule-w) solid var(--rule);border-radius:var(--r-sm);background:var(--surface);width:48px;height:48px;color:var(--ink-2);cursor:pointer;place-items:center;display:grid}.sticker-opt.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--surface-2)}.sticker-opt:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.thinking{align-items:center;gap:8px;min-height:22px;display:inline-flex}.thinking-mark{flex:none}.btn .thinking-mark{display:none}.thinking-word{font-family:var(--font-serif);font-style:italic;font-size:var(--fs-body);color:var(--ink-3);animation:rise var(--dur) var(--ease)}.btn .thinking-word{color:inherit;font-size:var(--fs-md)}.wk-dayrows .wk-own-all{font-family:var(--font-sans);color:var(--ink);border-bottom:1px solid var(--rule);overflow-wrap:anywhere;padding:10px 0;font-size:14px}.wk-banner .wk-own-all{font-family:var(--font-sans);color:var(--ink-2);overflow-wrap:anywhere;font-size:12px;line-height:1.3;display:block}.own-cal{margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--rule)}.own-cal h3{margin:0}.own-cal-form input{width:100%}.own-cal-caveat,.own-cal-apps{margin:0}.own-cal-app{min-height:44px}.own-cal-where{margin:0}.own-cal-done{color:var(--ink);margin:0}.cal-link{margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--rule);gap:10px}.cal-link>p{margin:0}.cal-include{border:0;min-width:0;margin:0;padding:0}.cal-include legend{margin-bottom:var(--s-1);padding:0}.cal-reminders{margin-top:var(--s-2)}.cal-reminders .cal-mac-tip,.cal-reminders .cal-sumi-still{margin:8px 0 0}.conn-status{margin:var(--s-4) 0 0;flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.conn-line{font-family:var(--font-sans);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.conn-dot{background:var(--calm);border-radius:50%;width:8px;height:8px}.conn-line.failing .conn-dot{background:var(--signal)}.conn-name{font-weight:500}.conn-what{color:var(--ink-2)}.conn-reconnect{flex-basis:100%;margin-top:6px}.alpha-words{gap:4px 18px}.include-state{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.admin-cohort{font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink-2);margin:0 0 var(--s-4)}.table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-family:var(--font-sans);font-size:var(--fs-sm)}.admin-table th{text-align:left;color:var(--ink-3);font-weight:500;font-size:var(--fs-meta);letter-spacing:var(--track-meta);text-transform:uppercase;border-bottom:var(--rule-w) solid var(--rule-strong);white-space:nowrap;padding:6px 10px 6px 0}.admin-table td{border-bottom:var(--rule-w) solid var(--rule);vertical-align:top;padding:8px 10px 8px 0}.admin-metrics h2.t-meta{margin:0 0 6px}.admin-metrics .admin-table th{white-space:normal;text-transform:none;letter-spacing:0;vertical-align:bottom;min-width:72px}.admin-metrics .admin-table td{font-variant-numeric:tabular-nums}.admin-metrics .admin-table td:nth-child(2){min-width:0}.metric-students td:first-child{min-width:200px}.admin-metrics .metric-used{min-width:180px}.metric-weeks td:first-child{white-space:nowrap}.metric-who{min-height:44px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.metric-who:hover>span:first-child{text-underline-offset:3px;text-decoration:underline}.metric-backs{flex-wrap:wrap;gap:2px 10px;min-width:130px;display:flex}.metric-back b{font-weight:500}.metric-back.yes b{color:var(--calm,var(--ink))}.metric-back.no b{color:var(--danger)}.metric-back.unknown{color:var(--ink-3)}.metric-detail td{background:var(--surface-2)}.metric-detail dl{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 20px;margin:0;display:grid}.metric-detail dt{font-size:var(--fs-meta);color:var(--ink-3);margin-bottom:2px}.metric-detail dd{color:var(--ink-2);overflow-wrap:anywhere;margin:0}.metric-notes{font-family:var(--font-sans);color:var(--ink-3);margin-top:20px;font-size:12.5px}.metric-notes ul{margin:4px 0 0;padding-left:18px}.admin-report{border-top:var(--rule-w) solid var(--rule);padding:12px 0}.admin-report:first-child{border-top:0}.admin-text{font-family:var(--font-serif);font-size:var(--fs-body);white-space:pre-wrap;margin:6px 0}.admin-shot img{border:var(--rule-w) solid var(--rule);border-radius:var(--r);max-width:240px;max-height:160px;margin-top:6px}.admin-msg{cursor:pointer}.admin-err-meta{font-size:var(--fs-meta);font-variant-numeric:tabular-nums;color:var(--ink-2);margin-top:4px}.admin-err-where{font-size:var(--fs-meta);color:var(--ink-3);overflow-wrap:anywhere;margin-top:2px}.admin-stack{font-family:var(--font-mono);white-space:pre-wrap;color:var(--ink-2);max-height:240px;margin:6px 0 0;font-size:11px;overflow:auto}.submitted-prompt{border-top:var(--rule-w) solid var(--rule);font-family:var(--font-serif);font-size:var(--fs-body);padding:10px 0}@media print{.topbar,.tabbar,.tour,.corner,.demo-tag,.sheet-backdrop,.toasts,.nb-list-col,.ed-toolbar,.ed-menu,.btn,.skip,.ask-rail,.door-btn,.ed-place,.ed-meta{display:none!important}.content{padding:0!important}.page,.page.nb-layout{max-width:none!important;display:block!important}body{color:#000;background:#fff;font-family:Times New Roman,Times,serif;font-size:12pt;line-height:1.5}.editor .ed-title{text-align:center;font-family:Times New Roman,Times,serif;font-size:16pt}.ed-rich,.ed-rich p,.ed-rich li{font-family:Times New Roman,Times,serif;font-size:12pt;line-height:1.5}@page{margin:1in}}.sink-was{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);max-width:80ch;margin:-6px 0 12px}.sink section{margin-bottom:var(--s-10)}.toc{gap:var(--s-2);flex-direction:column;display:flex}.school-lead{margin-bottom:var(--s-2);background:var(--surface-2);border-left:3px solid var(--c,var(--accent));border-radius:0 var(--r-lg,12px) var(--r-lg,12px) 0;color:inherit;flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;display:flex}.school-lead-label{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:.06em;text-transform:uppercase;color:var(--c,var(--accent));font-weight:700}.school-lead-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h3);line-height:1.25}.school-lead-when{font-family:var(--font-sans);color:var(--ink-2);font-size:14px}.school-lead:hover .school-lead-title{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.toc-row{gap:2px var(--s-4);background:var(--surface);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg,12px);color:inherit;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"code class""name class""next state";align-items:baseline;padding:12px 14px 12px 17px;text-decoration:none;display:grid;position:relative;overflow:hidden}.toc-row:before{content:"";background:var(--c,var(--rule-strong));width:4px;position:absolute;top:0;bottom:0;left:0}.toc-code{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-meta);letter-spacing:.05em;color:var(--c,var(--ink-2));grid-area:code}.toc-row:hover .toc-name{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.toc-name{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h3);letter-spacing:-.01em;grid-area:name;line-height:1.25}.toc-next{font-family:var(--font-sans);color:var(--ink-2);grid-area:next;font-size:14px}.toc-class{color:var(--ink-3);white-space:nowrap;text-align:right;grid-area:class;align-self:start;padding-top:2px}.toc-row.hub{color:var(--ink-3);background:0 0}.state-pill{white-space:nowrap;font-family:var(--font-sans);border-radius:999px;place-self:center end;align-items:center;padding:2px 9px;font-size:12px;font-weight:600;line-height:1.3;display:inline-flex}.state-pill.is-calm{color:var(--calm);background:var(--calm-soft)}.state-pill.is-warn{color:var(--warn);background:var(--warn-soft)}.state-pill.is-danger{color:var(--danger);background:var(--danger-soft)}.toc-state{grid-area:state}.toc-row.hub .toc-name{font-weight:500;font-size:var(--fs-md);color:var(--ink-2)}.toc-row.hub .toc-next{color:var(--ink-3);font-size:var(--fs-md)}.toc-hubs{margin-top:var(--s-6);gap:var(--s-2);flex-direction:column;display:flex}.toc-hubs-head{padding-bottom:var(--s-2)}.shelves{margin-top:var(--s-10)}@media (max-width:599px){.toc-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"code state""name name""next next""class class"}.toc-class{text-align:left;padding-top:0;font-size:13px}}.push-card{gap:0 var(--s-3);border-top:var(--rule-w) solid var(--rule);grid-template-columns:28px minmax(0,1fr) auto;align-items:start;padding:12px 0;display:grid}.push-card:first-child{border-top:0}.push-mark{color:var(--ink);flex:none;margin-top:4px}.push-card.skipped .push-mark,.push-card.failed .push-mark{color:var(--rule-strong);--sumi-dot:var(--rule-strong)}.push-card.failed .push-title{color:var(--signal-ink)}.push-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-md);letter-spacing:-.01em}.push-say{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink-2);text-wrap:pretty;max-width:52ch;margin-top:2px}.push-body .d-meta{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:4px;display:flex}.push-words{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:6px;display:flex}.push-when{color:var(--ink-3);font-size:var(--fs-sm);white-space:nowrap}.nb-layout{display:block}.nb-list-col{display:none}@media (min-width:1024px){.page.nb-layout{max-width:calc(var(--content-max) + var(--s-10) + 300px);gap:0 var(--s-10);grid-template-columns:300px minmax(0,1fr);align-items:start;display:grid}.nb-list-col{top:calc(var(--head-off) + var(--s-6));max-height:calc(100vh - var(--head-off) - var(--s-12));padding-right:var(--s-4);border-right:var(--rule-w) solid var(--rule);display:block;position:sticky;overflow:auto}.nb-page-col{min-width:0}.page.nb-layout.list-closed{max-width:calc(var(--content-max) + var(--s-10) + 44px);grid-template-columns:44px minmax(0,1fr)}.nb-layout.list-closed .nb-list-col{border-right:0;padding-right:0;overflow:visible}.nb-list-fold{justify-content:flex-end;margin:-6px 0 4px;display:flex}}@media (min-width:1200px){.page.nb-layout.chat-layout.list-closed{max-width:calc(var(--content-max) + var(--s-10) + 44px)}}.nb-compact-new{margin-bottom:10px}.nb-compact-new>*{justify-content:center;width:100%}.nb-compact .row form,.nb-compact form.row{margin-bottom:10px}.nb-compact .nb-tabs .tab{font-size:var(--fs-sm);padding:8px 10px}.nb-compact .nb-title{font-size:var(--fs-sm)}.nb-compact .nb-preview{display:none}.nb-compact .btn{font-size:var(--fs-sm)}.assign-facts{color:var(--ink-2);margin-top:8px}.p-row.step-done .p-title{text-decoration:line-through;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong)}.margin .ai-actions{flex-direction:column;align-items:stretch}.margin .ai-action{justify-content:flex-start}.room-lines{margin-top:var(--s-3);color:var(--ink-2);flex-direction:column;gap:4px;display:flex}.room-period-note{min-height:44px;color:var(--ink-2);align-items:center;text-decoration:none;display:flex}.room-period-note:hover{color:var(--ink);text-decoration:underline}.room-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-head{margin-bottom:var(--s-6)}.margin .nb-list,.margin .coming{font-size:var(--fs-md)}@media (min-width:1024px){.page.admin{max-width:calc(var(--content-max) + var(--s-10) + 300px)}}.admin-table td:nth-child(2){min-width:140px}.same-list{margin:0;padding:0;list-style:none}.same-list li+li{border-top:1px solid var(--rule)}.same-row{width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 4px;display:flex}.same-row:hover{background:var(--surface-2)}.same-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.same-title{overflow-wrap:break-word;font-weight:600}.twins{gap:var(--s-3);margin:0 0 var(--s-6);flex-direction:column;display:flex}.twin{border:var(--rule-w) solid var(--rule-strong);border-radius:var(--r);background:var(--surface);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.twin p{color:var(--ink);margin:0}.sheet .twins{margin:0}.sheet .twin{background:0 0;border:0;padding:0}.feed-open{align-self:flex-start}.feed-field{align-items:stretch;gap:8px;display:flex}.feed-field>:first-child{flex:1;min-width:0}.feed-field>.btn{flex:none;min-height:44px}.feed-said{color:var(--ink);margin:-4px 0 0}.feed-phone{margin:0}.feed-qr{align-items:center;gap:14px;margin:4px 0 0;display:flex}.feed-qr svg{border-radius:6px;flex:none;width:132px;height:132px}.feed-qr figcaption{max-width:28ch}.feed-honest{margin:6px 0}.tz-row{margin-top:var(--s-4);align-items:center;gap:8px 12px}.tz-now{font-family:var(--font-sans);color:var(--ink);font-size:15px}.token-steps{background:var(--surface-2);border-radius:var(--r);padding:12px 14px}.token-steps ol{margin:8px 0 4px;padding-left:22px}.token-steps li{margin:4px 0;line-height:1.45}.token-steps li::marker{color:var(--ink-3);font-variant-numeric:tabular-nums}.token-steps p.t-sm{margin:6px 0 0}.topbar a.brand{color:inherit;border-radius:var(--r-sm);text-decoration:none}.topbar a.brand:focus-visible{outline:2px solid var(--focus);outline-offset:4px}@media (pointer:coarse){.topbar a.brand{min-height:44px}}.hero-now{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink);align-items:center;gap:8px;margin:0 0 10px;font-weight:600;display:flex}.hero-now-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.reader{max-width:72ch}.reader-head{margin-bottom:var(--s-5)}.reader-head .t-meta{margin-top:4px}.reader-actions{gap:8px;margin-top:12px}.reader-prose{font-family:var(--font-serif);font-size:var(--fs-body);color:var(--ink);overflow-wrap:break-word;line-height:1.6}.reader-prose p{margin:0 0 .9em}.reader-prose h2{margin:1.4em 0 .5em}.reader-prose h2:first-child{margin-top:0}.reader-prose ul,.reader-prose ol{margin:0 0 .9em;padding-left:1.4em}.reader-prose li{margin:.25em 0}.reader-pdf{border:1px solid var(--rule);border-radius:var(--r);background:var(--surface);width:100%;height:min(80vh,1100px);display:block}.reader-image{border-radius:var(--r);max-width:100%;height:auto;display:block}.msg.me.tell-this{margin-top:-4px}.msg.me.tell-this .link-quiet{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.reader-html h2,.reader-html h3,.reader-html h4{font-family:var(--font-display);margin:1.3em 0 .5em}.reader-html h2:first-child,.reader-html h3:first-child{margin-top:0}.reader-html li{margin:0 0 .45em}.reader-html li>p{margin:0}.reader-html blockquote{border-left:2px solid var(--rule-strong);color:var(--ink-2);margin:0 0 .9em;padding-left:12px}.reader-html table{border-collapse:collapse;max-width:100%;margin:0 0 1em;display:block;overflow-x:auto}.reader-html td,.reader-html th{border:var(--rule-w) solid var(--rule);text-align:left;vertical-align:top;padding:6px 8px}.reader-html a{color:var(--ink);text-underline-offset:3px}.blind-spots section+section{margin-top:var(--s-4)}.blind-spots .bs-head{margin:0 0 6px}.blind-spots ul{margin:0;padding:0;list-style:none}.blind-spots li{border-top:1px solid var(--rule);padding:6px 0;line-height:1.45}.blind-spots li:first-child{border-top:0}.missed{margin:0;padding:0;list-style:none}.missed li{border-top:1px solid var(--rule);padding:6px 0;line-height:1.45}.missed li:first-child{border-top:0}.behind section{margin-top:var(--s-5)}.behind section>h3{margin:0 0 6px}.behind-say{font-family:var(--font-serif);font-size:var(--fs-lg);color:var(--ink-2);margin:0;line-height:1.35}.behind-list{margin:0;padding:0;list-style:none}.behind-list li{border-top:1px solid var(--rule);line-height:1.45;font-family:var(--font-sans);padding:8px 0}.behind-list li:first-child{border-top:0}.behind-foot{align-items:center;gap:8px 12px}.need-say{font-family:var(--font-serif);font-size:var(--fs-md);color:var(--ink-2);line-height:1.45}.grade-canvas{color:var(--ink);font-weight:600}.grade-canvas.is-none{color:var(--ink-2);font-weight:400}.need-est{margin-bottom:2px}.need-targets{align-items:center;gap:6px 10px;margin-top:6px}.need-counts{flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-top:8px;display:flex}.need-count{flex-direction:column;gap:4px;display:flex}.need-count input{width:6em;min-height:40px}@media (pointer:coarse){.need-count input{min-height:44px}}.d-overdue .d-taps{gap:4px 12px;margin:-4px 0 8px;padding-left:0}.d-taps-q{align-self:center;margin-right:2px}.blind-spots .bs-name{overflow-wrap:anywhere;font-weight:600;display:block}.blind-spots .bs-say{margin:2px 0 4px;display:block}@media (min-width:1024px) and (max-width:1279px){.search-btn{justify-content:center;width:40px;padding:0}.search-btn span,.search-btn kbd{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.search{flex-direction:column;gap:12px;display:flex}.search-input{appearance:none;width:100%}.search-results,.search-results ul{margin:0;padding:0;list-style:none}.search-group{margin:10px 0 4px}.search-hit,.search-title{overflow-wrap:anywhere}.search-hit{text-align:left;border-radius:var(--r);width:100%;min-width:0;min-height:40px;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px 10px;display:block}.search-hit:hover,.search-hit:focus-visible{background:var(--surface-2)}@media (pointer:coarse){.search-hit{min-height:44px}}.search-empty,.search-status{margin:0}.ask-meta{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--ink-3);font-size:13px}.ask-from{flex-direction:column;gap:2px;margin:2px 0 4px;display:flex}.ask-pick{flex-wrap:nowrap;align-items:center;gap:8px;margin-top:8px}.ask-pick input[type=date]{max-width:15rem}.details-missing{border:1px solid var(--rule);border-radius:var(--r);background:var(--surface);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.details-missing-say{font-family:var(--font-sans);color:var(--ink-2);margin:0;font-size:15px}.nextmove .nm-details{font:inherit;font-family:var(--font-sans);color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;display:inline}@media (pointer:coarse){.nextmove .nm-details{align-items:center;min-height:44px;display:inline-flex}}.draft-row{align-items:center;padding:0}.draft-row .draft-open{min-width:0;min-height:40px;color:var(--ink);flex:1;align-items:center;text-decoration:none;display:flex}.draft-row .draft-open:hover .m-sentence{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.draft-row .draft-more{width:32px;height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.draft-row .draft-more:hover,.draft-row .draft-more:focus-visible{background:var(--surface-2);color:var(--ink)}.draft-row .draft-more .ico{width:16px;height:16px}@media (pointer:coarse){.draft-row .draft-open{min-height:44px}.draft-row .draft-more{width:44px;height:44px}}.nextmove .nm-task-link{font-family:var(--font-sans);margin-top:8px;font-size:13px;display:inline-block}@media (pointer:coarse){.nextmove .nm-task-link{align-items:center;min-height:44px;display:inline-flex}}.nextmove .nm-ahead{font-family:var(--font-sans);overflow-wrap:anywhere;margin-top:8px;font-size:14px;line-height:1.4;display:inline-block}@media (pointer:coarse){.nextmove .nm-ahead{align-items:center;min-height:44px;display:inline-flex}}.nextmove .nm-pick{font-family:var(--font-sans);margin-top:2px;padding:0;font-size:13px;display:block}@media (pointer:coarse){.nextmove .nm-pick{align-items:center;min-height:44px;display:inline-flex}}.nextmove .nm-make{flex-direction:column;align-items:flex-start;gap:8px;margin-top:12px;display:flex}.nextmove .nm-make p{font-family:var(--font-sans);color:var(--ink-2);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.4}.nextmove .nm-make .nm-free-try{font-size:13px}.door-week{margin:0 0 var(--s-3);font-family:var(--font-sans);color:var(--ink-2);overflow-wrap:anywhere;font-size:13px;line-height:1.4}.door-can{margin-top:var(--s-5);flex-direction:column;gap:6px;display:flex}.door-can ul{margin:0;padding:0;list-style:none}.door-can-row{border:0;border-top:1px solid var(--rule);width:100%;min-height:44px;color:var(--ink);font:inherit;font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:8px 0;display:flex}.door-can li:first-child .door-can-row{border-top:0}.door-can-row .door-can-t{overflow-wrap:anywhere;font-size:14px;font-weight:600;line-height:1.3}.door-can-row small{color:var(--ink-3);font-size:12.5px;line-height:1.3}.door-can-row:hover:not(:disabled) .door-can-t{text-underline-offset:3px;text-decoration:underline}.door-can-row:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.door-can-row:disabled{opacity:.6;cursor:default}.door-compose .composer-foot{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px 2px}.door-compose .composer-words{display:contents}.door-compose .mode-menu{top:calc(100% + 6px);bottom:auto}.door-compose .composer-box{position:relative}.door-compose .mode-pick{position:static}@media (max-width:359px){.door-tool{justify-content:center;min-width:44px}.door-tool .door-tool-t{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.door-tool{border-radius:var(--r);min-height:36px;font:inherit;font-family:var(--font-sans);color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:6px;font-size:13px;display:inline-flex}.door-tool .ico{width:20px;height:20px}.door-tool:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.door-tool:disabled{opacity:.4;cursor:default}.door-course{border-radius:var(--r);max-width:140px;min-height:36px;font:inherit;font-family:var(--font-sans);color:var(--ink-2);cursor:pointer;background:0 0;border:0;padding:6px;font-size:13px}.door-course:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}@media (pointer:coarse){.door-tool,.door-course{min-height:44px}}.door-compose .composer-box{border:1.5px solid var(--rule-strong);border-radius:14px}.door-compose .composer-box:focus-within{border-color:var(--ink-3)}.door-switch{margin-top:8px}.offline-line{max-width:var(--content-max);margin:0 auto var(--s-3);border-radius:var(--r-sm);background:var(--surface-2);font-family:var(--font-sans);color:var(--ink-2);padding:8px 12px;font-size:13px}@media (min-width:600px) and (max-width:1023px){.offline-line{max-width:var(--tablet-col)}}@media (min-width:1024px){.content:has(.page:is(.with-margin,.nb-layout,.admin))>.offline-line{max-width:calc(var(--content-max) + var(--s-10) + 300px)}.content:has(.page.week-page)>.offline-line{max-width:1240px}}.door-switch .link-quiet{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.door-hint{font-family:var(--font-sans);color:var(--ink-3);margin-top:10px;font-size:12.5px;line-height:1.4}.door-recent{margin-top:var(--s-6);flex-direction:column;gap:6px;display:flex}.door-recent-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.door-recent-head .link-quiet{font-family:var(--font-sans);font-size:13px}.door-recent li a{justify-content:space-between;gap:10px}.door-recent .door-recent-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-sans);font-size:14px;overflow:hidden}.door-recent .door-recent-m{font-family:var(--font-sans);color:var(--ink-3);white-space:nowrap;flex:none;font-size:12.5px}.door-recent ul{margin:0;padding:0;list-style:none}.door-recent li a{min-height:40px;color:var(--ink);border-top:1px solid var(--rule);align-items:center;text-decoration:none;display:flex}.door-recent li:first-child a{border-top:0}.door-recent li a:hover{text-underline-offset:3px;text-decoration:underline}@media (pointer:coarse){.door-recent li a{min-height:44px}}.sync-fail{margin:0 0 var(--s-4);border-radius:var(--r);background:var(--danger-soft);border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 14px;display:flex}.reading-counts{color:var(--ink-2);font-variant-numeric:tabular-nums}.margin.also .m-value:has(.applies-v){text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.applies-items,.about-you{margin:0;padding:0;list-style:none}.about-you{margin-top:var(--s-4);border-top:var(--rule-w) solid var(--rule);max-width:420px}.applies-items li{border-bottom:var(--rule-w) solid var(--rule);justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;display:flex}.applies-t{min-width:0}.when-choices{flex-wrap:wrap;gap:8px;display:flex}.d-putoff,.d-myplan{color:var(--ink-3)}.myplan{min-width:0;max-width:100%;font-family:var(--font-sans);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.myplan-q{overflow-wrap:anywhere;min-width:0;color:var(--ink)}.myplan[data-kind=which]{flex-flow:column;align-items:stretch}.myplan[data-kind=which]>.btn{align-self:flex-start}.myplan-pick{border-top:var(--rule-w) solid var(--rule);min-width:0;margin:0;padding:0;list-style:none}.myplan-pick li{min-width:0}.myplan-pick label{border-bottom:var(--rule-w) solid var(--rule);cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:4px 0;display:flex}.myplan-pick input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.myplan-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);flex:auto;overflow:hidden}.myplan-due{color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.myplan-late{margin:0}.myplan-err{color:var(--danger);font-family:var(--font-sans);margin:6px 0 0}.msg.me.myplan-turn{flex-direction:column;align-items:flex-end}.msg.me.myplan-turn>.myplan{width:min(100%,420px)}.msg.me.myplan-turn>.myplan[data-kind=plan]{text-align:right;justify-content:flex-end;width:auto;max-width:82%}.tap-sheet{flex-direction:column;gap:10px;display:flex}.tap-when{font-family:var(--font-sans);color:var(--ink-3);font-variant-numeric:tabular-nums;margin:0}.tap-say{font-family:var(--font-serif);color:var(--ink-2);text-wrap:pretty;overflow-wrap:anywhere;margin:0;font-size:17px;line-height:1.4}.tap-sub{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);margin:0}.tap-quote{border-left:2px solid var(--rule-strong);padding-left:12px}.tap-from{margin:0}.tap-actions{border-top:var(--rule-w) solid var(--rule);margin-top:4px}.tap-actions .menu-item{text-decoration:none}.tap-actions .menu-item.tap-lead{color:var(--accent);font-weight:600}.tap-actions .menu-item.danger{color:var(--danger)}.tap-move,.tap-else{flex-direction:column;gap:8px;display:flex}.find-time{min-width:0;font-family:var(--font-sans);flex-direction:column;gap:10px;display:flex}.ft-say{font-family:var(--font-serif);color:var(--ink-2);text-wrap:pretty;margin:0;font-size:17px;line-height:1.4}.find-time>.btn,.find-time>.ft-times,.ft-ask{align-self:flex-start}.ft-slots{border-top:var(--rule-w) solid var(--rule);margin:0;padding:0;list-style:none}.ft-slots label{border-bottom:var(--rule-w) solid var(--rule);cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding:8px 0;display:flex}.ft-slots input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:2px 0 0}.ft-slot{flex-direction:column;gap:2px;min-width:0;display:flex}.ft-when{color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.ft-why{color:var(--ink-3);overflow-wrap:anywhere;font-size:13px;line-height:1.4}.ft-not{color:var(--ink-3);flex-direction:column;gap:2px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.ft-weekly{color:var(--ink-3);margin:0;font-size:12.5px}.ft-looking{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);align-items:center;gap:8px;display:inline-flex}.msg.me.find-time-turn{flex-direction:column;align-items:flex-end}.msg.me.find-time-turn>.find-time{width:min(100%,460px)}.applies-when{font-family:var(--font-sans);color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.about-you li{border-bottom:var(--rule-w) solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:8px 0;display:flex}.about-you-q{flex:12em;min-width:0}.chat-about{min-width:0;max-width:100%;color:var(--ink-2);font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;min-height:24px;margin:0 0 4px;padding:0;font-size:13px;font-weight:500;display:flex}.chat-about-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.chat-about>[aria-hidden]{white-space:pre;flex:none}.chat-about:hover:not(:disabled) .chat-about-text{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.chat-about:disabled{cursor:default;opacity:.6}.chat-about-list .chat-about-pick{text-align:left;white-space:normal;align-items:center;gap:8px;width:100%;padding-block:10px;line-height:1.3;display:flex}.chat-about-pick-name{overflow-wrap:anywhere;flex:auto;min-width:0}.chat-about-pick .ico{width:16px;height:16px;color:var(--accent);flex:none}.chat-about-pick[aria-current=true] .chat-about-pick-name{font-weight:600}.chat-about-empty{margin:4px 0 8px}.chat-tray-open{font-family:var(--font-sans);color:var(--ink-2);min-height:40px;margin:0 0 8px;font-size:13px}.chat-files{flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.chat-file-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.chat-file-read,.chat-file-why{font-family:var(--font-sans);color:var(--ink-3);overflow-wrap:anywhere;margin:2px 0 0 10px;font-size:13px;line-height:1.45}.chat-file-why{color:var(--ink-2)}.chat-file-read .link-quiet{font-size:13px}.chat-file{border-bottom:1px solid var(--edge);min-width:0;font-family:var(--font-sans);padding:4px 0 8px;font-size:14px;display:block}.chat-file-name{min-width:0;color:var(--ink);align-items:center;gap:6px;min-height:40px;padding:4px 2px 4px 10px;text-decoration:none;display:inline-flex}.chat-file-name .ico{flex:none;width:14px;height:14px}.chat-file-name .truncate{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.chat-file-name:hover .truncate{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.chat-file-x{width:40px;height:40px;color:var(--ink-3);border-radius:var(--r);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.chat-file-x .ico{width:14px;height:14px}.chat-file-x:hover:not(:disabled){color:var(--ink);background:var(--surface-2)}@media (pointer:coarse){.chat-about,.chat-tray-open,.chat-file-name{min-height:44px}.chat-file-x{width:44px;height:44px}}.why.explained .why-tap{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.why-decided-link{font-family:var(--font-sans);font-size:var(--fs-sm);margin-top:8px}.why-decided{font-family:var(--font-sans);flex-direction:column;gap:10px;margin-top:10px;display:flex}.why-decided-h{font-size:var(--fs-sm);color:var(--ink);margin:0;font-weight:600}.why-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.why-chip{border:1px solid var(--edge);min-height:28px;color:var(--ink-3);background:var(--surface);transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);border-radius:999px;align-items:center;padding:2px 10px;font-size:13px;text-decoration:none;display:inline-flex}.why-chip.lit{color:var(--ink);border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.why-race{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.why-race-btn{text-align:left;width:100%;font:inherit;font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:baseline;gap:8px;padding:6px 0;text-decoration:none;display:flex}.why-race-row.first .why-race-btn{color:var(--ink)}.why-rank{font-variant-numeric:tabular-nums;width:1.2em;color:var(--ink-3);flex:none;font-weight:600}.why-race-text{overflow-wrap:anywhere;min-width:0}.why-race-title{font-weight:600}.why-race-btn:hover .why-race-title{text-underline-offset:3px;text-decoration:underline}.why-whatif{font-size:var(--fs-sm);color:var(--ink-2);margin:0 0 6px calc(1.2em + 8px)}.why-trade{font-size:var(--fs-sm);color:var(--ink-2);margin:0}@media (pointer:coarse){.why-chip{min-height:36px}.why-race-btn{align-items:center;min-height:44px}.why-decided-link{align-items:center;min-height:44px;display:inline-flex}}@media (prefers-reduced-motion:reduce){.why-chip{transition:none}}.campus-card{list-style:none}.campus-lines.campus-tile{border:1px solid var(--edge);border-radius:var(--r);background:var(--surface);margin:0;padding:4px 14px}.campus-card-link{color:inherit;align-items:flex-start;gap:10px;min-height:44px;padding:8px 0;text-decoration:none;display:flex}.campus-card+.campus-card .campus-card-link{border-top:1px solid var(--rule)}.campus-card-icon{width:18px;height:18px;color:var(--ink-3);flex:none;margin-top:2px}.campus-card-body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.campus-fact{font-size:var(--fs-sm);color:var(--ink)}.campus-foryou{font-size:var(--fs-sm);color:var(--ink-2)}.campus-card-go{color:var(--ink-3);flex:none;align-self:center}.campus-card-link:hover .campus-fact{text-underline-offset:3px;text-decoration:underline}.campus-page .t-h1{margin:8px 0 4px}.campus-page-source,.campus-page-sec{margin:0 0 var(--s-6)}.campus-page-h{font-family:var(--font-sans);color:var(--ink-3);letter-spacing:0;text-transform:none;margin:0 0 6px;font-size:13px;font-weight:600}.campus-page-p{margin:0}.campus-quote{border-left:2px solid var(--rule-strong);margin:0;padding-left:12px}.campus-original{font-family:var(--font-sans);font-size:var(--fs-sm)}@media (pointer:coarse){.campus-original{align-items:center;min-height:44px;display:inline-flex}}.campus-google{width:100%;max-width:100%;height:64px;margin-top:var(--sp-3,12px);background:0 0;border:0;display:block}.setup-bar{top:var(--head-off);z-index:20;width:calc(100% + 2 * var(--s-4));margin:calc(-1 * var(--s-2)) calc(-1 * var(--s-4)) var(--s-4);padding:8px var(--s-4);border:0;border-bottom:var(--rule-w) solid var(--rule);background:var(--surface);min-height:40px;color:var(--ink);font:inherit;font-family:var(--font-sans);font-size:var(--fs-sm);text-align:left;cursor:pointer;align-items:center;gap:8px;display:flex;position:sticky}.setup-bar-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;animation:1.6s ease-in-out infinite setup-pulse}.setup-bar-fig{color:var(--ink);flex:none}.setup-bar-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.setup-bar-go{color:var(--ink-3);flex:none}@keyframes setup-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.setup-bar-dot{animation:none}}@media (pointer:coarse){.setup-bar{min-height:44px}}.readsheet{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.readsheet-row{border-bottom:1px solid var(--rule);font-family:var(--font-sans);grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:12px 0;display:grid}.readsheet-name{font-weight:600}.readsheet-state{color:var(--ink-3);font-size:var(--fs-sm)}.readsheet-row[data-state=in] .readsheet-state{color:var(--calm,var(--ink-2))}.readsheet-line{grid-column:1/-1}.refresh-now{display:none}@media (min-width:1024px){.refresh-now{font-family:var(--font-sans);color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.refresh-btn{border:1px solid var(--edge);border-radius:var(--r-sm);min-height:32px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:4px;padding:0 10px;display:inline-flex}.refresh-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.refresh-btn:disabled{opacity:.6;cursor:default}}.ptr{font-family:var(--font-sans);color:var(--ink-3);transition:height var(--dur-fast) var(--ease);justify-content:center;align-items:flex-end;margin:0 0 4px;font-size:13px;display:flex;overflow:hidden}.ptr-in{align-items:flex-end;gap:6px;padding-bottom:6px;display:inline-flex}.ptr-peek{transform-origin:50% 100%;transform:translateY(calc((1 - var(--lean,0)) * 10px)) rotate(calc(var(--lean,0) * -12deg));transition:transform var(--dur-fast) var(--ease);display:inline-flex}.ptr.is-busy .ptr-peek{animation:ptr-dip .36s var(--ease) 1}@keyframes ptr-dip{0%{transform:rotate(-12deg)}45%{transform:translateY(4px)rotate(-20deg)}to{transform:rotate(-12deg)}}@media (prefers-reduced-motion:reduce){.ptr{transition:none}.ptr-peek,.ptr.is-busy .ptr-peek{transition:none;animation:none;transform:none}}.say-split{display:inline}.say-names{overflow-wrap:anywhere}.say-more{white-space:nowrap}.class-days{gap:var(--s-2);display:grid}.class-days-rows{margin:var(--s-2) 0 0;gap:var(--s-3);padding:0;list-style:none;display:grid}.class-days-row{justify-content:space-between;align-items:center;gap:var(--s-2) var(--s-3);flex-wrap:wrap;display:flex}.class-days-name{font-family:var(--font-sans);min-width:0;font-weight:500}.class-days-chips{flex-wrap:wrap;gap:4px;display:inline-flex}.class-days .day-chip{justify-content:center;min-width:44px;min-height:44px}.class-days-course{flex-basis:100%}.pick-date{gap:var(--s-2);display:grid}.pick-date-q{font-family:var(--font-sans);margin:0;font-weight:500}.pick-date-choices{gap:var(--s-2);flex-wrap:wrap;display:flex}.pick-date .pick-date-chip{justify-content:center;min-height:44px}.pick-date-note,.pick-date-yours{margin:0}.held-yours{gap:var(--s-2);justify-items:start;margin-top:4px;display:grid}.held-yours p{margin:0}.held-yours .held-use{min-height:44px}.held-except-answers{gap:var(--s-2)}.campus-read{gap:var(--s-2);margin:var(--s-3) 0 var(--s-2);display:grid}.campus-read p{margin:0}.campus-read-lead{font-family:var(--font-sans);font-size:var(--fs-md);color:var(--ink);font-weight:500}.campus-read-numbers{color:var(--ink-2);gap:2px;margin:0;padding:0;list-style:none;display:grid}.campus-read-links a{align-items:center;min-height:44px;display:inline-flex}.ask-pick:has(.ask-pick-label){flex-wrap:wrap}.ask-pick .ask-pick-label{flex-basis:100%}.announcement .an-did{margin:2px 0 4px}.announcement .an-did-many{text-align:left;min-height:0;padding:0}.announcement .an-did-list{padding:0 0 0 var(--s-3);color:var(--ink-2);gap:2px;margin:4px 0 0;list-style:none;display:grid}@media (pointer:coarse){.announcement .an-did-many,.announcement .an-did-ok{align-items:center;min-height:44px;display:inline-flex}}.token-ends{border:0;gap:4px;margin:4px 0 0;padding:0;display:grid}.token-ends-q{padding:0;font-weight:600}.token-ends p{margin:0}.token-ends-row{gap:var(--s-2);align-items:center}.token-ends-row input[type=date]{max-width:13rem}.token-ends-row .chip{min-height:44px}.token-line.soon{color:var(--signal,var(--ink))}.token-line.ended{color:var(--danger,var(--signal,var(--ink)))}.token-renew{margin-top:var(--s-2)}.urgent-today{gap:var(--s-2,8px);margin-bottom:var(--s-3,12px);display:grid}.token-pick{gap:var(--s-2);align-items:center}.token-pick input[type=date]{max-width:13rem}.room-empty-cat{margin:var(--s-2,8px) 0 0}.room-empty-cat p{color:var(--ink-2);margin:0}.room-empty-cat .room-add-one{font-family:var(--font-sans);font-size:var(--fs-meta);margin-top:2px}.make-panel{flex-direction:column;gap:12px;min-width:0;display:flex}.make-versions{align-items:center;gap:4px;display:flex}.make-v{border:1px solid var(--edge);border-radius:var(--r);min-width:40px;min-height:40px;color:var(--ink);font-family:var(--font-sans);cursor:pointer;background:0 0;font-size:17px;line-height:1}.make-v:disabled{color:var(--ink-3);cursor:default}.make-v-at{font-family:var(--font-sans);color:var(--ink-2);font-variant-numeric:tabular-nums;padding:0 8px;font-size:13px}@media (pointer:coarse){.make-v{min-width:44px;min-height:44px}}.make-body{overflow-wrap:anywhere;min-width:0}.make-actions{border-top:1px solid var(--edge);flex-wrap:wrap;align-items:center;gap:4px 16px;padding-top:8px;display:flex}.mode-pick{display:inline-flex;position:relative}.mode-chip{border-radius:var(--r);min-height:32px;color:var(--ink-2);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0 8px;font-size:13px;display:inline-flex}.mode-chip:hover:not(:disabled),.mode-chip[aria-expanded=true]{background:var(--surface-2,var(--surface));color:var(--ink)}.mode-chip:disabled{opacity:.5;cursor:default}.mode-chip .ico{width:16px;height:16px}.mode-mark{color:var(--ink);flex:none;display:block}.r15d-strike{stroke-dasharray:1;stroke-dashoffset:0}.r15b-brain{transform-box:fill-box;transform-origin:50% 55%}@keyframes r15d-strike{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes r15b-breathe{0%,to{transform:scale(1)}45%{transform:scale(1.035)}}@keyframes r15b-glow{0%,to{opacity:1}45%{opacity:.35}}.r15e-eye{transform-box:fill-box;transform-origin:50% 100%}@keyframes r15e-blink{0%{transform:scaleY(1)}39%{transform:scaleY(.12)}50%{transform:scaleY(.12)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:no-preference){.mode-mark.play .r15d-strike{animation:.18s cubic-bezier(.2,0,0,1) r15d-strike}.mode-mark.play .r15b-brain{animation:.42s cubic-bezier(.2,0,0,1) r15b-breathe}.mode-mark.play .r15b-glow{animation:.42s cubic-bezier(.2,0,0,1) r15b-glow}.mode-mark.play .r15e-eye{animation:.18s cubic-bezier(.2,0,0,1) r15e-blink}}.mode-chip .mode-caret{width:12px;height:12px}@media (pointer:coarse){.mode-chip{min-height:44px}}.mode-menu{z-index:30;border:1px solid var(--edge);border-radius:var(--r-lg,12px);background:var(--surface);width:min(300px,100vw - 32px);box-shadow:var(--shadow-2,0 8px 24px #00000024);padding:4px;position:absolute;bottom:calc(100% + 6px);left:0}@media (max-width:479px){.composer-box:has(.mode-pick){position:relative}.composer-box .mode-pick{position:static}.composer-box .mode-menu{width:auto;left:0;right:0}}.mode-opt{border-radius:var(--r);width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--font-sans);background:0 0;border:0;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.mode-opt:hover,.mode-opt:focus-visible{background:var(--surface-2,var(--ground))}.mode-opt>.ico{flex:none;width:18px;height:18px;margin-top:1px}.mode-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mode-name{font-size:14px;font-weight:600}.mode-line{color:var(--ink-2);font-size:13px;line-height:1.35}.ink-meter{font-family:var(--font-sans);color:var(--ink-2);flex-direction:column;gap:4px;font-size:13px;display:flex}.mode-ink{border-top:1px solid var(--edge);margin-top:4px;padding:10px 10px 6px}.settings-ink{margin:8px 0 16px}.ink-title{color:var(--ink);margin:0 0 2px;font-weight:600}.ink-row{align-items:center;gap:6px;display:flex}.ink-row .ico{flex:none;width:14px;height:14px}.ink-bar{background:var(--edge);border-radius:2px;height:4px;margin:2px 0 6px 20px;overflow:hidden}.ink-bar>span{background:var(--ink-2);height:100%;display:block}.ink-foot{color:var(--ink-3);margin:2px 0 0}.mode-opt .mode-on{width:16px;height:16px;color:var(--accent);flex:none;margin-top:2px}.you-index{margin-top:var(--s-4);border-top:var(--rule-w) solid var(--rule);flex-direction:column;display:flex}.you-row{justify-content:space-between;align-items:center;gap:var(--s-3);border-bottom:var(--rule-w) solid var(--rule);min-height:52px;color:inherit;font-family:var(--font-sans);padding:0 2px;font-size:16px;font-weight:500;text-decoration:none;display:flex}.you-row:hover .you-row-name{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px}.you-row-go{color:var(--ink-3);flex:none;transform:rotate(-90deg)}.you-row-text{flex-direction:column;gap:1px;min-width:0;padding:8px 0;display:flex}.you-row-value{font-size:var(--fs-sm);color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.you-part>.section:first-child>.section-head>h2{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.you-part>.section:first-child>.section-head:not(:has(.aside)){display:contents}.nb-course-filter .chip{align-items:center;gap:6px;display:inline-flex}.nb-chip-dot{background:var(--c,var(--rule-strong));border-radius:50%;width:8px;height:8px}@media (pointer:coarse){.topnav a,.door-btn,.search-btn,.refresh-btn,.wrong-sticky.btn{min-height:44px}.search-btn{min-width:44px}}.turn-card .n-title{font-family:var(--font-sans);letter-spacing:0;color:var(--ink);margin:0;font-size:15px;font-weight:500}.turn-card{max-width:64ch}:root{--crunch:#8e2a1f;--crunch-deep:#6e1d14;--crunch-on:#fbeee9;--crunch-fill:#e9c9c0;--crunch-wash:#f4ebe5}:root[data-theme=dark]{--crunch:#e58a7b;--crunch-deep:#5c1a12;--crunch-on:#fbeee9;--crunch-fill:#e9a99c;--crunch-wash:#221715}.heads-up{--bleed:var(--s-4);margin:calc(-1 * var(--bleed)) calc(-1 * var(--bleed)) var(--s-4);padding:6px var(--bleed) 2px;background:var(--surface-2);border-bottom:var(--rule-w) solid var(--rule);font-family:var(--font-sans)}@media (min-width:1024px){.heads-up{--bleed:var(--s-10)}}.heads-up-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:13px;font-weight:600}.heads-up-list{margin:0;padding:0;list-style:none}.heads-up-line{min-height:44px;color:var(--ink);overflow-wrap:anywhere;align-items:center;padding:4px 0;font-size:15px;line-height:1.3;text-decoration:none;display:flex}.heads-up-line:hover{text-underline-offset:3px;text-decoration:underline}.crunch-bar{--bleed:var(--s-4);margin:calc(-1 * var(--bleed)) calc(-1 * var(--bleed)) var(--s-4);background:var(--crunch-deep);color:var(--crunch-on);font-family:var(--font-sans)}.crunch-bar-row{min-height:44px;padding:4px var(--bleed);align-items:center;gap:8px;display:flex}@media (min-width:1024px){.crunch-bar{--bleed:var(--s-10)}}.crunch-bar-row>svg{flex:none;width:16px;height:16px}.crunch-bar-line{min-width:0;color:inherit;overflow-wrap:anywhere;flex:1;margin:0;padding:6px 0;font-size:15px;line-height:1.3;text-decoration:none}a.crunch-bar-line:hover .crunch-bar-due{text-underline-offset:3px;text-decoration:underline}.crunch-bar-label{letter-spacing:.01em;font-weight:700}.crunch-bar-due{font-variant-numeric:tabular-nums}.crunch-bar-more{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;margin-right:-10px;display:inline-grid}.crunch-bar-more:hover{background:#ffffff1a}.crunch-bar-more svg{stroke-width:3.25px;width:22px;height:22px}.crunch-bar :focus-visible{outline:2px solid var(--crunch-on);outline-offset:2px}.crunch-fill{background:#ffffff29;height:4px}.crunch-fill i{background:var(--crunch-fill);height:100%;transition:width .4s cubic-bezier(.2,.7,.2,1);display:block}.crunch-fill.still i{transition:none;animation:.3s ease-out crunch-fade}@keyframes crunch-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.crunch-fill i{transition:none;animation:.3s ease-out crunch-fade}}.crunch-bar.thin{background:var(--surface);color:var(--crunch);border-bottom:var(--rule-w) solid color-mix(in srgb, var(--crunch) 30%, var(--rule));box-shadow:inset 0 3px 0 var(--crunch)}.crunch-bar.thin .crunch-bar-line{font-size:var(--fs-sm)}.crunch-off-acts{width:100%}.crunch-off-acts .btn{width:100%;min-height:44px}.crunch-never{min-height:44px;font-size:var(--fs-sm);justify-content:center;align-items:center;display:inline-flex}.crunch-rest{justify-content:space-between;align-items:center;gap:var(--s-2);width:100%;min-height:44px;margin:var(--s-2) 0 var(--s-4);padding:0 var(--s-1);border:0;border-top:var(--rule-w) solid var(--rule);border-bottom:var(--rule-w) solid var(--rule);font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-3);cursor:pointer;text-align:left;background:0 0;display:flex}.crunch-rest:hover{color:var(--ink)}.crunch-rest svg{width:16px;height:16px;transition:transform .2s}.crunch-rest[aria-expanded=true] svg{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.crunch-rest svg{transition:none}}.crunch-over{margin:0 0 var(--s-3);padding:10px var(--s-4);border-radius:var(--r);background:var(--crunch-wash);color:var(--ink);font-family:var(--font-sans);align-items:center;gap:8px;font-size:15px;font-weight:500;animation:.3s ease-out crunch-fade;display:flex}.crunch-over svg{width:16px;height:16px;color:var(--crunch);flex:none}.toc-row.quiet{opacity:.72;box-shadow:none}.toc-row.quiet:hover,.toc-row.quiet:focus-visible{opacity:1}.crunch-corner{float:right;margin:0 0 var(--s-2) var(--s-4);line-height:0}.moved-undo{position:relative}.moved-undo:after{content:"";position:absolute;inset:-12px -8px}.coming:has(.deadline.has-check) .deadline:not(.has-check){padding-left:calc(24px + var(--s-4))}@media (max-width:400px){.ai-prose .katex-display,.ed-rich .katex-display,.ed-rich [data-type=block-math]{scrollbar-gutter:stable;padding-bottom:12px;font-size:.88em}}.privacy-notice{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--surface);align-items:flex-start;gap:8px;margin:8px 0 12px;padding:10px 4px 10px 14px;display:flex}.privacy-notice p{font-size:var(--fs-sm);line-height:var(--lh);color:var(--ink-2);flex:1;margin:0;padding-top:2px}.privacy-notice a{color:var(--accent);white-space:nowrap;font-weight:600}.privacy-notice-x{min-width:44px;min-height:44px;color:var(--ink-2);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:-8px 0;display:inline-flex}.privacy-notice-x:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (min-width:768px){.content>.privacy-notice{max-width:var(--tablet-col);margin-left:auto;margin-right:auto}}.mfa-panel{margin:0 0 var(--s-5);padding:var(--s-4);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);background:var(--surface);gap:var(--s-2);flex-direction:column;display:flex}.mfa-panel h2{margin:0}.mfa-qr{border-radius:var(--r);background:#fff;width:180px;height:180px;padding:8px}.mfa-secret{font-family:var(--font-mono,monospace);overflow-wrap:anywhere}.mfa-code{align-items:flex-end;gap:var(--s-2)}.mfa-code .btn{min-height:44px}.mfa-err{color:var(--danger);flex-basis:100%;margin:0}.talk-card{border:1px solid var(--rule);border-radius:var(--r-lg);background:var(--surface);margin:12px 0 4px;padding:16px}.talk-card.bare{background:0 0;border:0;margin:0;padding:0}.talk-card>.t-h3{margin:0 0 8px}.talk-card p{margin:0}.talk-lead{margin:0 0 4px!important}.talk-part{border-top:1px solid var(--rule);padding:12px 0}.talk-card>.talk-part:first-of-type,.talk-card>.t-h3+.talk-part{border-top:0}.talk-h{font-size:var(--fs-sm);color:var(--ink-2);margin:0 0 6px;font-weight:600}.talk-name{font-weight:600}.talk-office+.talk-office,.talk-line+.talk-line{margin-top:10px}.talk-acts{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.talk-btn{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.talk-source{margin-top:6px}.talk-danger{flex-direction:column;gap:8px;display:flex}.talk-danger .talk-btn{align-self:flex-start}.talk-only{margin-top:12px!important}.talk-foot{justify-content:space-between;align-items:center}.talk-row{text-align:left;cursor:pointer;width:100%;min-height:44px;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 0;display:flex}.talk-row-t{font-weight:600}.talk-row:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}.task-chats{margin:0 0 10px}.task-chats-toggle{min-height:44px}.task-chats-list{margin:0;padding:0;list-style:none}.task-chats-list li{border-top:var(--rule-w) solid var(--rule);justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.task-chats-list a{overflow-wrap:anywhere;flex:1;min-width:0}.task-chats-list a[aria-current]{font-weight:600}.wk-look-day+.wk-look-day{margin-top:14px}.wk-look-head{font-family:var(--font-sans);font-size:var(--fs-meta);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);margin:0 0 6px;font-weight:700}.wk-look-row{padding-left:12px;position:relative}.wk-look-row:before{content:"";background:var(--c,var(--rule-strong));border-radius:2px;width:4px;position:absolute;top:10px;bottom:10px;left:0}.wk-look-row .d-course{color:var(--c,var(--ink-2));letter-spacing:.03em;font-weight:700}.msg.me.editing{flex-direction:column;align-items:stretch;gap:8px;max-width:100%;display:flex}.msg.me.editing .edit-box{width:100%;min-height:64px;font:inherit;resize:vertical}.msg.me.editing .edit-acts{justify-content:flex-end;align-items:center;gap:12px;display:flex}.msg.me.editing .edit-acts>*{min-height:44px}.msg.me.msg-edit-row{margin-top:-4px}.msg.me.msg-edit-row .link-quiet{font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2)}.msg-edit{min-width:44px;min-height:44px;padding:0 8px}.whatif-form .whatif-kinds{border:0;margin:0;padding:0}.whatif-form .whatif-kinds legend{margin-bottom:var(--s-2)}.whatif-kind,.whatif-instead{min-height:44px}.whatif-dates,.whatif-times{gap:var(--s-3);align-items:flex-end}.whatif-hint{flex-basis:100%;margin:0}.whatif-problem{color:var(--danger);margin:0}.whatif-form .btn,.whatif-acts .btn{min-height:44px}.whatif-card{padding-left:var(--s-4);border-left:4px solid var(--calm)}.whatif-card.is-tight{border-left-color:var(--warn)}.whatif-card.is-costs{border-left-color:var(--danger)}.whatif-verdict{font-family:var(--font-display);color:var(--ink);margin:0;font-size:22px;font-weight:600;line-height:1.2}.whatif-free{margin:0}.whatif-before-after{display:block}.whatif-list h3{margin:0 0 var(--s-2);color:var(--ink-3)}.whatif-list ul{margin:0;padding:0;list-style:none}.whatif-list li{border-top:var(--rule-w) solid var(--rule);flex-direction:column;gap:2px;padding:8px 0;display:flex}.whatif-list li:first-child{border-top:0}.whatif-row-title{font-family:var(--font-sans);overflow-wrap:anywhere;font-size:15px;font-weight:500}.whatif-late .whatif-row-title{color:var(--ink)}.whatif-attendance{margin:var(--s-2) 0 0}.roster-list{margin:0;padding:0;list-style:none}.roster-list li{border-bottom:var(--rule-w) solid var(--rule);padding:6px 0}.roster-shift{min-height:44px}.roster-shift.past{opacity:.72}.roster-when{font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-weight:500}.roster-cost.is-fits{color:var(--calm)}.roster-cost.is-tight{color:var(--ink-2)}.roster-cost.is-costs{color:var(--danger)}.roster-form .btn,.roster-acts .btn{min-height:44px}.wk-block.clash{box-shadow:inset 0 0 0 2px var(--danger)}.wk-block .wk-clash-mark{width:14px;height:14px;color:var(--danger);position:absolute;top:4px;right:4px}.tap-clash{color:var(--danger);font-size:var(--fs-sm);align-items:center;gap:6px;margin:4px 0 0;display:flex}.tap-clash .ico{flex:none;width:14px;height:14px}.day-clash{width:16px;height:16px;color:var(--danger);flex:none}.schedule-turn{flex-direction:column;gap:8px;display:flex}.schedule-turn .schedule-say{white-space:pre-line;margin:0}.schedule-pick .chip{min-height:44px}.schedule-review{border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);background:var(--surface);padding:12px}.next-steps a.chip.next-step{color:inherit;align-items:center;text-decoration:none;display:inline-flex}.later-ask{margin:var(--s-4) 0;padding:var(--s-4);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);background:var(--surface)}.later-ask-line{margin:0 0 var(--s-3);font-family:var(--font-sans);color:var(--ink);font-size:15px;line-height:1.45}.later-ask.is-syllabus_read{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.later-ask.is-syllabus_read .later-ask-line{flex:1;margin:0}.later-ask-acts .btn{min-height:44px}.you-founding{margin-top:var(--s-2);display:inline-block}.you-invite{margin-top:var(--s-4);border-top:var(--rule-w) solid var(--rule);flex-direction:column;display:flex}button.you-row{border:0;border-bottom:var(--rule-w) solid var(--rule);cursor:pointer;text-align:left;background:0 0;width:100%}.invite-link{width:100%;font-family:var(--font-mono,monospace);font-size:var(--fs-sm)}.invite-sheet .btn{min-height:44px}.grade-hide{margin:var(--s-4) 0 var(--s-2)}.last-read{color:var(--ink-3);margin-top:4px}.teacher-draft{margin-top:var(--s-3)}.teacher-fields{gap:4px var(--s-3);font-size:var(--fs-sm);grid-template-columns:auto 1fr;margin:0;display:grid}.teacher-fields dt{color:var(--ink-3)}.teacher-fields dd{overflow-wrap:anywhere;margin:0}.teacher-body{padding:var(--s-3);border:var(--rule-w) solid var(--rule);border-radius:var(--r);background:var(--surface);font-family:var(--font-sans);font-size:var(--fs-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.teacher-draft .btn{min-height:44px}@media (pointer:coarse){.composer-input{min-height:44px}.tab{min-width:44px}}.make-edit{flex-direction:column;gap:8px;display:flex}.make-edit-box{width:100%;min-height:40vh;font-family:var(--font-mono);font-size:var(--fs-sm);resize:vertical;line-height:1.5}.make-edit-acts{justify-content:flex-end;gap:8px}.make-edited{color:var(--ink-3);margin:0 0 6px}.make-word{margin-top:var(--s-4);padding-top:var(--s-3);border-top:var(--rule-w) solid var(--rule);justify-content:flex-start;display:flex}.make-word .btn,.make-edit-acts .btn{min-height:44px}.answer-edit{flex-direction:column;gap:8px;display:flex}.answer-edit-box{width:100%;min-height:160px;font-family:var(--font-mono);font-size:var(--fs-sm);resize:vertical;line-height:1.5}.answer-edit-acts{justify-content:flex-end;gap:12px}.answer-edit-acts>*{min-height:44px}.answer-edited{color:var(--ink-3);margin:2px 0 0}.skills{gap:10px;margin-top:8px;display:grid}.skills .skill-chips{margin-top:0}.skill-chip{font-weight:500}.skill-which{border-left:2px solid var(--edge);gap:4px;padding-left:12px;display:grid}.skill-which .chips{margin-top:0}.skill-which .chip{text-align:left;max-width:100%}.skill-yes{text-align:left;justify-self:start;align-items:center;gap:8px;min-height:44px;display:inline-flex}.skill-yes svg{flex:none;width:18px;height:18px}.link-pair{gap:4px;margin:0;padding:0;list-style:none;display:grid}.same-elsewhere-head{margin:16px 0 8px}.oidc{gap:8px;margin-bottom:14px}.oidc-btn{box-sizing:border-box;justify-content:center;align-items:center;width:100%;min-height:44px;text-decoration:none;display:flex}.campus-confirm{font-family:var(--font-sans);color:var(--ink-2);align-items:center;gap:6px;margin-top:4px;font-size:13px;font-weight:600;display:flex}.campus-confirm svg{flex:none;width:14px;height:14px}.school-lead.up-next{background:var(--accent-soft);border-left:0;border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:var(--r-lg,16px);margin-bottom:var(--s-4,18px);padding:14px 16px}.school-lead.up-next .school-lead-label{color:var(--accent)}.up-next-dot{background:var(--c,var(--ink-3));vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.continue-row{align-items:center;gap:12px}.continue-kind{background:var(--surface-2);width:34px;height:34px;color:var(--ink-2);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.continue-text{flex-direction:column;flex:auto;min-width:0;display:flex}.continue-text .continue-name{flex:none}.continue-text .continue-meta{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.shelf-mark{color:var(--ink-2);margin-bottom:2px;display:inline-flex}.room-when{margin-top:var(--s-3,12px)}.room-when-head{margin:0 0 6px}.room-when-head.state-pill{display:inline-block}.room-when-later{border:0;border-top:1px solid var(--rule);width:100%;min-height:44px;color:var(--ink-2);font:inherit;font-family:var(--font-sans);cursor:pointer;background:0 0;justify-content:space-between;align-items:center;padding:0;font-size:15px;display:flex}.d-est{color:var(--ink-3)}.room-stand{margin-top:var(--s-5,24px);border-radius:var(--r-lg,16px);background:var(--surface);border:1px solid var(--rule);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.room-stand>h2{margin:0}.stand-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stand-tile{background:var(--surface-2);border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:12px;display:flex}.stand-pct{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:600;line-height:1.1}.room-stand .room-lines{margin:0}.room-stand-quiet{border-top:1px solid var(--rule);margin-top:0;padding-top:10px}.absences-ask{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.absences-ask .field .hint{color:var(--ink-3);border-top:0;margin-top:0;padding-top:0;display:block}.room-hard{margin-top:var(--s-3,12px);border-radius:var(--r-lg,16px);border:1px solid var(--rule);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.room-hard.is-noticed{background:var(--warn-soft);border-color:#0000}.room-hard-line{margin:0;line-height:1.45}.room-hard-switch{min-height:44px}.cleanup-sources,.cleanup-recent ul,.repair-list ul,.cleanup-examples{margin:0;padding:0;list-style:none}.cleanup-row{align-items:center;gap:var(--s-3);border-bottom:var(--rule-w) solid var(--rule);min-height:48px}.cleanup-row .btn{min-height:44px}.cleanup-recent,.repair-list{margin-top:var(--s-4)}.cleanup-examples li{overflow-wrap:anywhere;padding:2px 0}.cleanup-acts .btn,.repair-form .btn{min-height:44px}.repair-row{border-bottom:var(--rule-w) solid var(--rule);flex-direction:column;gap:4px;padding:10px 0;display:flex}.repair-text{overflow-wrap:anywhere}.math-keys-toggle{border-radius:var(--r);min-width:44px;min-height:44px;color:var(--ink-2);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;place-items:center;padding:0 8px;font-size:18px;display:inline-grid}.math-keys-toggle:hover,.math-keys-toggle.on{background:var(--surface-2);color:var(--ink)}.math-keys{display:contents}.math-keys-panel{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:var(--s-2);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);background:var(--surface);flex-basis:100%;order:9;margin-top:6px}.math-keys-tabs{margin-bottom:var(--s-2);gap:4px;display:flex;overflow-x:auto}.math-keys-tab{border:var(--rule-w) solid var(--rule);min-height:36px;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:0 10px}.math-keys-tab.on{background:var(--ink);color:var(--ink-inverse);border-color:var(--ink)}.math-keys-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;display:grid}.math-key{border:var(--rule-w) solid var(--rule);border-radius:var(--r);background:var(--paper);min-height:44px;font-family:"KaTeX_Main", var(--font-sans);color:var(--ink);cursor:pointer;font-size:17px}.math-key:hover{background:var(--surface-2)}@media (pointer:coarse){.math-keys-tab{min-height:44px}}.cards-top{margin:var(--s-2) 0 var(--s-4)}.cards-decks,.cards-list{margin:0;padding:0;list-style:none}.cards-deck{border-bottom:var(--rule-w) solid var(--rule);min-height:52px;color:inherit;flex-direction:column;justify-content:center;gap:2px;padding:8px 0;text-decoration:none;display:flex}.cards-deck-title{font-family:var(--font-sans);font-weight:500}.cards-item{gap:var(--s-3);border-bottom:var(--rule-w) solid var(--rule);grid-template-columns:1fr 1fr auto;align-items:start;padding:10px 0;display:grid}@media (max-width:599px){.cards-item{grid-template-columns:1fr}}.cards-face{overflow-wrap:anywhere}.cards-face p{margin:0}.cards-add{margin-top:var(--s-5)}.cards-review-link{margin-bottom:var(--s-4)}.cards-card{min-height:180px;padding:var(--s-5);border:var(--rule-w) solid var(--rule);border-radius:var(--r-lg);background:var(--surface);justify-content:center;gap:var(--s-4);flex-direction:column;font-size:18px;display:flex}.cards-back{padding-top:var(--s-4);border-top:var(--rule-w) solid var(--rule);color:var(--ink-2)}.cards-rate{gap:var(--s-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (max-width:359px){.cards-rate{grid-template-columns:repeat(2,minmax(0,1fr))}}.cards-rate .btn,.cards-show,.cards-page .btn{min-height:44px}.quiz-list{margin:0 0 var(--s-3);padding:0;list-style:none}.quiz-row{border-bottom:var(--rule-w) solid var(--rule);min-height:52px;color:inherit;flex-direction:column;justify-content:center;gap:2px;padding:8px 0;text-decoration:none;display:flex}.quiz-row>span:first-child{font-family:var(--font-sans);font-weight:500}.quiz-questions{margin:var(--s-5) 0 0;gap:var(--s-5);padding-left:1.4em;display:grid}.quiz-q{font-weight:500}.quiz-q p{margin:0 0 6px}.quiz-options{gap:4px;display:grid}.quiz-option{border:var(--rule-w) solid var(--rule);border-radius:var(--r-md);cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:6px 10px;display:flex}.quiz-option p{margin:0}.quiz-option input{width:18px;height:18px;accent-color:var(--accent);flex:none}.quiz-option.is-answer{border-color:var(--calm);background:var(--calm-soft)}.quiz-option.is-chosen{border-style:dashed}.quiz-why{color:var(--ink-2);margin-top:6px}.quiz-topics{margin:0;padding:0;list-style:none}.quiz-topics li{border-bottom:var(--rule-w) solid var(--rule);justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.quiz-topics li.needs>span:first-child{font-weight:600}.quiz-page .btn,.practice-acts .btn{min-height:44px}.cards-done{font-family:var(--font-display);margin:0;font-size:22px}.add-rubric{margin:0 0 var(--s-3,12px);flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.add-rubric-hint{flex:200px;margin:0}.ask-open-conversation{min-height:44px;margin:0 0 var(--s-2,8px);align-items:center;font-weight:600;display:inline-flex}.door-task-list{margin:0;padding:0;list-style:none}.turn-actions,.make-actions{flex-wrap:wrap;gap:4px 6px}.turn-actions .link-quiet,.thread-controls .link-quiet,.make-actions .link-quiet{box-sizing:border-box;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 8px;display:inline-flex}button.turn-steps{min-height:44px}.busy-card{gap:10px;display:grid}.busy-card .busy-added{margin:0;font-weight:600}.busy-card ul.busy-blocks,.busy-card ul.busy-changes{gap:6px;margin:0;padding:0;list-style:none;display:grid}.busy-card ul.busy-blocks li{font-weight:500}.busy-card ul.busy-changes li{color:var(--ink-2)}.busy-card .busy-until{margin:0}.busy-card .link-quiet,.whatif-talk,.busy-ask .btn{min-height:44px}.busy-card .busy-actions{align-items:center;gap:12px}.whatif-talk{align-items:center;margin-top:8px;display:inline-flex}.busy-ask label,.busy-change label{align-items:center;gap:8px;display:inline-flex}.wk-gap.urgent{border-left:3px solid var(--crunch);border-radius:0 var(--r-sm,6px) var(--r-sm,6px) 0;background:color-mix(in srgb, var(--crunch) 16%, transparent);padding-left:6px}.wk-gap.urgent.hit:hover{background:color-mix(in srgb, var(--crunch) 22%, transparent)}.wk-gap.urgent .wk-say{color:var(--ink);font-weight:600}.wk-gap.urgent .wk-due{color:var(--crunch);font-weight:600}.wk-look-row.urgent{background:color-mix(in srgb, var(--crunch) 10%, transparent);border-radius:0 var(--r-sm,6px) var(--r-sm,6px) 0}.wk-look-row.urgent:before{background:var(--crunch)}.work-page .work-tabs{margin:0 0 var(--s-4)}.finished-toggle{align-items:center;min-height:44px;display:inline-flex}.work-page:has(.deadline.has-check) .deadline:not(.has-check){padding-left:calc(24px + var(--s-4))}.wks{flex-direction:column;gap:12px;display:flex}.wks-card{background:var(--surface);border:1px solid var(--edge,var(--rule));border-radius:20px;flex-direction:column;gap:14px;padding:16px 14px 14px;display:flex}.wks-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.wks-titles{flex-direction:column;gap:2px;min-width:0;display:flex}.wks-h1{font-family:var(--font-display);letter-spacing:-.6px;margin:0;font-size:30px;font-weight:600;line-height:1.1}.wks-range-row{align-items:center;gap:0;margin-left:-10px;display:flex}.wks-range{min-height:40px;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:14px}.wks-arrow{width:40px;height:40px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.wks-arrow:hover,.wks-range:hover{color:var(--ink)}.wks-mine{border:1px solid var(--rule-strong,var(--rule));background:var(--surface);width:44px;height:44px;color:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.wks-bar-box{background:var(--paper);border-radius:14px;flex-direction:column;gap:10px;padding:12px 12px 10px;display:flex}.wks-count{align-items:baseline;gap:8px;display:flex}.wks-count-n{font-family:var(--font-display);letter-spacing:-.5px;font-size:26px;font-weight:600}.wks-count-w{color:var(--ink-2);font-size:15px}.wks-segs{gap:3px;display:grid}.wks-segs>span{background:var(--rule);border-radius:4px;height:8px}.wks-segs>span.on{background:var(--ink-2)}.wks-solid{background:var(--rule);border-radius:4px;height:8px;overflow:hidden}.wks-solid>span{background:var(--ink-2);height:100%;display:block}.wks-classes{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.wks-class{flex-direction:column;gap:2px;min-width:0;display:flex}.wks-class-code{font-family:var(--font-display);color:var(--c,var(--ink-3));white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}@supports (color:color-mix(in srgb, red 50%, blue)){.wks-class-code{color:color-mix(in srgb, var(--c,var(--ink-3)) 78%, var(--ink))}}.wks-class-n{color:var(--ink-2);font-size:13px}.wks-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.wks-day{min-height:60px;color:var(--ink);font-family:var(--font-display);cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;display:flex}.wks-day.on{background:var(--surface);box-shadow:inset 0 0 0 2px var(--ink)}.wks-day.today{background:var(--accent);color:var(--on-accent,#fff)}.wks-day.today.on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.wks-wd{letter-spacing:.4px;font-size:11.5px;font-weight:600}.wks-n{font-size:18px;font-weight:600;line-height:1}.wks-pips{gap:3px;height:5px;margin-top:3px;display:flex}.wks-pip{border-radius:50%;width:5px;height:5px}.wks-pip.due{background:var(--danger)}.wks-pip.study{background:var(--warn)}.wks-day.today .wks-pip{background:currentColor}.wks-panel{flex-direction:column;gap:6px;display:flex}.wks-day-h{font-family:var(--font-display);justify-content:space-between;align-items:baseline;gap:8px;margin:2px 0;font-size:17px;font-weight:600;display:flex}.wks-day-sum{font-family:var(--font-sans);color:var(--ink-2);font-size:13px;font-weight:400}.wks-row{align-items:stretch;gap:8px;display:flex}.wks-time{width:44px;color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums;flex:none;padding-top:11px;font-size:13px}.wks-block{box-sizing:border-box;background:var(--surface-2);min-width:0;min-height:48px;color:var(--ink-2);text-align:left;line-height:1.25;font:inherit;border:1px solid #0000;border-radius:12px;flex-direction:column;flex:1;justify-content:center;gap:1px;padding:8px 12px;text-decoration:none;display:flex}button.wks-block,a.wks-block{cursor:pointer}.wks-block.tinted{background:color-mix(in srgb, var(--c,var(--ink-3)) 14%, var(--surface));box-shadow:inset 4px 0 0 var(--c,var(--ink-3));color:color-mix(in srgb, var(--c,var(--ink-3)) 55%, var(--ink))}.wks-block.important{background:color-mix(in srgb, var(--danger) 10%, var(--surface))}.wks-block.cancelled .wks-b-title{color:var(--ink-2);text-decoration:line-through}.wks-block.cancelled,.wks-block.async{opacity:.8}.wks-b-title{color:var(--ink);overflow-wrap:anywhere;font-size:15px;font-weight:500}.wks-b-sub{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.wks-b-mark{background:var(--ink-3);border-radius:50%;flex:none;width:8px;height:8px}.k-due .wks-b-mark{background:var(--danger)}.k-study .wks-b-mark{background:var(--warn)}.k-own .wks-b-mark{background:var(--calm)}.wks-chip{background:var(--danger-soft,color-mix(in srgb, var(--danger) 14%, transparent));color:var(--danger);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.wks-free{border:1px dashed var(--rule-strong,var(--rule));color:var(--ink-2);border-radius:12px;margin:0;padding:14px;font-size:15px}.wks-allday{color:var(--ink-2);margin:0;font-size:13px}.wks-add{min-height:44px;font:inherit;color:var(--ink-2);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0 4px 0 52px;font-size:14px;display:flex}.wks-add:hover{color:var(--ink)}.wks-todo{background:var(--surface);border:1px solid var(--edge,var(--rule));min-height:56px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:16px;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.wks-todo-t{flex-direction:column;display:flex}.wks-todo-h{font-size:16px;font-weight:500}.wks-todo-n{color:var(--ink-2);font-size:13px}.wks-todo-go{font-size:18px}.week-simple[data-look] .wks-card,.week-simple[data-look] .wks-todo{background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.week-simple[data-look] .wks-bar-box{background:color-mix(in srgb, var(--surface) 60%, transparent)}.ed-glyph.i{font-synthesis-style:auto}.door-btn,.thread-new,.chat-name,.month-title{font-family:var(--font-display)}.talk-small{margin:6px 0 0}.topnav .nav-you{display:none}@media (min-width:1024px){:root{--head-off:0px}.shell{flex-direction:row;align-items:stretch}.topbar{z-index:30;border-bottom:0;border-right:1px solid var(--edge,var(--rule));background:var(--paper);flex:none;align-self:flex-start;width:200px;height:100vh;position:sticky;top:0}.topbar-in{box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;max-width:none;height:100%;min-height:0;margin:0;padding:20px 14px}.topbar-in>.brand{padding:0 10px 14px}.topbar-in>.door-btn{border:1px solid var(--ink);background:var(--surface);min-height:44px;font-family:var(--font-display);border-radius:999px;order:0;align-items:center;gap:8px;margin:0 0 10px;padding:0 12px;font-size:14px;font-weight:500;display:flex}.topnav{flex:none}.topnav ul{flex-direction:column;gap:4px}.topnav .nav-you{display:block}.topnav a{min-height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:15px;font-weight:400;display:flex}.topnav a.active{box-shadow:none;background:color-mix(in srgb, var(--ink) 7%, transparent);border-radius:10px;font-weight:600}.top-actions{display:none}.content{flex:1;min-width:0}.content:has(.week-laptop){padding:24px 0 0 24px}}.wkl{grid-template-columns:minmax(0,1fr) 300px;min-height:calc(100vh - 24px);display:grid}.wkl-main{flex-direction:column;gap:16px;min-width:0;padding:0 20px 24px 0;display:flex}.wkl-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.wkl-titles{flex-direction:column;gap:4px;min-width:0;display:flex}.wkl-h1{font-family:var(--font-display);letter-spacing:-.6px;margin:0;font-size:32px;font-weight:600;line-height:1.1}.wkl-line{color:var(--ink-2);font-size:15px}.wkl-line strong{color:var(--ink);font-weight:600}.wkl-mine{border:1px solid var(--rule-strong,var(--rule));background:var(--surface);min-height:40px;color:var(--ink);font-family:var(--font-display);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;text-decoration:none;display:inline-flex}.wkl-cols{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;gap:8px;min-height:0;display:grid}.wkl-col{border:1px solid var(--edge,var(--rule));border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:8px 4px;display:flex;overflow:hidden}.wkl-col.today{border:2px solid var(--accent);background:var(--surface);padding:7px 3px}.wkl-colh{min-height:30px;font-family:var(--font-display);border-radius:9px;justify-content:space-between;align-items:center;gap:4px;margin:0 0 4px;padding:0 8px;font-size:13px;font-weight:600;display:flex}.wkl-col.today .wkl-colh{background:var(--accent);color:var(--on-accent,#fff)}.wkl-coln{font-weight:500}.wkl-block{text-align:left;font:inherit;color:var(--ink);background:var(--kind-class,var(--surface-2));border:1px solid #0000;border-radius:10px;flex-direction:column;gap:2px;padding:7px 6px;line-height:1.25;text-decoration:none;display:flex}button.wkl-block,a.wkl-block{cursor:pointer}.wkl-time{color:var(--kind-class-ink,var(--ink-2));font-variant-numeric:tabular-nums;font-size:12px}.wkl-title{letter-spacing:-.15px;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:13px;font-weight:500}.wkl-block.k-study{background:var(--kind-study,var(--warn-soft))}.wkl-block.k-study .wkl-time{color:var(--kind-study-ink,var(--warn))}.wkl-block.k-due{background:var(--kind-due,var(--danger-soft))}.wkl-block.k-due .wkl-time{color:var(--kind-due-ink,var(--danger))}.wkl-block.k-own{background:var(--kind-yours,var(--calm-soft))}.wkl-block.k-own .wkl-time{color:var(--kind-yours-ink,var(--calm))}.wkl-block.important{background:var(--kind-important,var(--danger-soft));box-shadow:inset 0 0 0 1px var(--kind-important-rule,var(--danger))}.wkl-block.cancelled .wkl-title{color:var(--ink-2);text-decoration:line-through}.wkl-block.cancelled,.wkl-block.async{opacity:.8}.wkl-col .dayoff,.wkl-col .wks-allday{font-size:12px}.wkl-todo{border-left:1px solid var(--edge,var(--rule));background:var(--surface);box-sizing:border-box;flex-direction:column;align-self:start;gap:12px;min-height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.wkl-todo-h{font-family:var(--font-display);margin:0;font-size:20px;font-weight:600}.wkl-segs{gap:3px;display:grid}.wkl-segs>span{background:var(--rule);border-radius:3px;height:6px}.wkl-segs>span.on{background:var(--accent)}.wkl-none{color:var(--ink-2);margin:0;font-size:14px}.wkl-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.wkl-item{border-bottom:1px solid color-mix(in srgb, var(--ink) 8%, transparent);align-items:center;gap:6px;min-height:48px;display:flex}.wkl-tick{cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.wkl-tick>span{border:2px solid var(--kind-due-ink,var(--danger));box-sizing:border-box;border-radius:50%;width:20px;height:20px}.wkl-tick.study>span{border-color:var(--kind-study-ink,var(--warn))}.wkl-item.done .wkl-tick>span{background:var(--ink-3);border-color:var(--ink-3)}.wkl-item-t{min-width:0;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;padding:4px 0;display:flex}.wkl-item-title{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:14px;overflow:hidden}.wkl-item.done .wkl-item-title{color:var(--ink-3);text-decoration:line-through}.wkl-item-sub{color:var(--ink-2);align-items:center;gap:5px;font-size:12px;display:flex}.wkl-dot{background:var(--c,var(--ink-3));border-radius:50%;flex:none;width:7px;height:7px}.week-laptop[data-look] .wkl-col,.week-laptop[data-look] .wkl-todo{background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.wks-block.clash,.wkl-block.clash{box-shadow:inset 0 0 0 2px var(--danger)}.wks-clash{color:var(--danger);align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.wks-clash .ico,.wkl-clash-mark{width:13px;height:13px;color:var(--danger);flex:none}.wkl-time{justify-content:space-between;align-items:center;gap:4px;display:flex}.wkl-add{border:1px dashed var(--rule-strong,var(--rule));min-height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-self:stretch;align-items:center;margin-top:auto;display:flex}.wkl-add:hover{color:var(--ink);border-color:var(--ink-3)}.wkl-add .ico{width:16px;height:16px}@media (min-width:1024px){.content:has(.week-laptop){box-sizing:border-box;flex-direction:column;height:100vh;display:flex;overflow:hidden}.content:has(.week-laptop)>*{flex:none}.content:has(.week-laptop)>.week-laptop{flex:1;min-height:0}.week-laptop .wkl{height:100%;min-height:0}.week-laptop .wkl-main{min-height:0;padding-bottom:16px}.week-laptop .wkl-cols,.week-laptop .wkl-col{min-height:0}.week-laptop .wkl-todo{height:100%;min-height:0;position:static;overflow-y:auto}}.wkl-title{-webkit-line-clamp:2;line-clamp:2;-webkit-hyphens:manual;hyphens:manual;overflow-wrap:break-word;letter-spacing:-.15px;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.wkl-block{flex:none}.wkl-more{background:color-mix(in srgb, var(--ink) 6%, transparent);min-height:28px;color:var(--ink-2);font:inherit;cursor:pointer;border:0;border-radius:8px;flex:none;align-self:stretch;font-size:12px;font-weight:600}.wkl-more:hover{color:var(--ink)}.wkl-daysheet{flex-direction:column;gap:6px;display:flex}.wkd{--done:var(--ink);flex-direction:column;gap:18px;display:flex}[data-look] .wkd{--done:var(--accent)}.wkd-card{background:var(--surface);border:1px solid var(--rule);border-radius:22px;flex-direction:column;align-items:flex-start;gap:14px;padding:26px 20px;display:flex}.wkd-range{min-height:32px;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px}.wkd-check{color:var(--done)}.wkd-h1{font-family:var(--font-display);letter-spacing:-.5px;margin:0;font-size:28px;font-weight:600;line-height:1.15}.wkd-segs{gap:3px;width:100%;display:grid}.wkd-segs>span{background:var(--done);border-radius:4px;height:8px}.wkd-solid{background:var(--done);border-radius:4px;width:100%;height:8px}.wkd-line{color:var(--ink-2);margin:0;font-size:16px;line-height:1.45}.wkd-classes{border-top:1px solid var(--rule);flex-direction:column;width:100%;padding-top:6px;display:flex}.wkd-class{align-items:center;gap:10px;min-height:36px;display:flex}.wkd-dot{background:var(--c,var(--ink-3));border-radius:50%;flex:none;width:8px;height:8px}.wkd-code{flex:1;font-size:15px}.wkd-n{color:var(--ink-2);font-size:14px}.wkd-next{background:var(--surface);border:1px solid var(--rule);min-height:56px;font:inherit;color:var(--ink);text-align:left;cursor:pointer;border-radius:16px;justify-content:space-between;align-items:center;padding:0 16px;display:flex}.wkd-next-t{flex-direction:column;display:flex}.wkd-next-h{font-size:15px}.wkd-next-n{color:var(--ink-2);font-size:13px}.week-done[data-look] .wkd-card,.week-done[data-look] .wkd-next{background:color-mix(in srgb, var(--surface) 62%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topnav .nav-search{display:none}@media (min-width:1024px){.topnav .nav-search{margin-top:8px;display:block}.nav-search-btn{width:100%;min-height:44px;color:var(--ink-2);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:14px;display:flex}.nav-search-btn:hover{background:color-mix(in srgb, var(--ink) 6%, transparent);color:var(--ink)}.nav-search-l{align-items:center;gap:8px;display:flex}.nav-search-l .ico{width:16px;height:16px}.nav-search-btn kbd{font:inherit;color:var(--ink-3);border:1px solid var(--rule);border-radius:5px;padding:1px 6px;font-size:12px}}:root{--kind-class:#ece9e2;--kind-class-ink:#4a453c;--kind-study:#f4ead2;--kind-study-ink:#7a5410;--kind-due:#f3e1da;--kind-due-ink:#8c2f1f;--kind-yours:#e1e9dc;--kind-yours-ink:#3d5a35;--kind-important:#f6e4de;--kind-important-ink:#8c2f1f;--kind-important-rule:#e4b9ad;--stack-edge-1:#f3eee2;--stack-edge-2:#ece6d8}:root[data-theme=dark]{--kind-class:#2a2823;--kind-class-ink:#cfc7b8;--kind-study:#362d1c;--kind-study-ink:#e5c27a;--kind-due:#3a2420;--kind-due-ink:#f0a08f;--kind-yours:#22302a;--kind-yours-ink:#a9cf9a;--kind-important:#40231d;--kind-important-ink:#f0a08f;--kind-important-rule:#6b3a30;--stack-edge-1:#24221e;--stack-edge-2:#1f1d1a}.home-hero .nextmove{border-left-width:4px;border-radius:16px}.stk{margin:var(--s-4) 0 0}.stk-box{z-index:2;background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:0 12px 12px;position:relative}.stk-h{font:inherit;margin:0}.stk-head{width:100%;min-height:52px;color:var(--ink);cursor:pointer;text-align:left;font-family:var(--font-sans);background:0 0;border:0;align-items:center;gap:10px;padding:0 2px;display:flex}.stk-head:disabled{cursor:default}.stk-head:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:8px}.stk-title{letter-spacing:-.01em;flex-grow:1;font-size:19px;font-weight:600}.stk-aside{color:var(--ink-3);font-size:14px;font-weight:400}.stk-badge{background:var(--ink);color:var(--paper);border-radius:10px;padding:2px 8px;font-size:13px;font-weight:600}.stk-chev{flex:none;width:20px;height:20px;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.stk.is-open .stk-chev{transform:rotate(180deg)}.stk-hint{color:var(--ink-3);margin:0 2px 8px;font-size:13px}.stk-empty{color:var(--ink-3);margin:0 2px 4px;font-size:15px}.stk-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex;position:relative}.stk-card{background:var(--paper);border:1px solid var(--rule);color:var(--ink);transform-origin:bottom;border-radius:12px;align-items:center;min-height:60px;display:flex;position:relative}.stk-card[hidden]{display:none}.stk-card.is-held{box-shadow:0 10px 22px #17151233}.stk-card.tone-study{background:var(--kind-study);border-color:#0000}.stk-card.tone-due{background:var(--kind-due);border-color:#0000}.stk-card.tone-important{background:var(--kind-important);border-color:#0000}.stk-card.tone-yours{background:var(--kind-yours);border-color:#0000}.stk-card.tone-done{background:var(--kind-class);color:var(--ink-3);border-color:#0000;min-height:52px}.stk-body{flex-grow:1;min-width:0}.stk-grip{cursor:grab;touch-action:none;width:44px;height:44px;color:var(--ink-3);background:0 0;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.stk-grip:active{cursor:grabbing}.stk-grip:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.stk-card.tone-study .stk-grip{color:var(--kind-study-ink)}.stk-card.tone-due .stk-grip,.stk-card.tone-important .stk-grip{color:var(--kind-important-ink)}.stk-edge{background:var(--stack-edge-1);border:1px solid var(--rule);z-index:1;border-top:0;border-radius:0 0 12px 12px;height:8px;margin:0 14px;position:relative}.stk-edge.e2{background:var(--stack-edge-2);z-index:0;height:7px;margin:0 28px}@media (prefers-reduced-motion:reduce){.stk-chev{transition:none}}.todo-row{align-items:center;min-height:60px;display:flex}.todo-tick{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex}.todo-tick>span{border:2px solid var(--ink-3);background:var(--surface);box-sizing:border-box;border-radius:50%;width:24px;height:24px}.todo-tick[aria-checked=true]>span{background:var(--kind-yours-ink);border-color:var(--kind-yours-ink);box-shadow:inset 0 0 0 4px var(--surface)}.todo-tick:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.todo-text{font-family:var(--font-sans);min-width:0;color:inherit;flex-direction:column;flex-grow:1;gap:1px;padding:8px 4px;text-decoration:none;display:flex}.todo-t{min-width:0;font-size:16px;font-weight:500;line-height:1.3;display:block}.todo-t>:first-child,.todo-t{overflow-wrap:anywhere}.todo-m{color:var(--ink-3);font-size:13px}.tone-study .todo-m{color:var(--kind-study-ink)}.tone-due .todo-m,.tone-important .todo-m{color:var(--kind-important-ink)}.tone-important .todo-t{font-weight:600}.tone-done .todo-t{color:var(--ink-3);font-size:15px;text-decoration:line-through}.chip-important{vertical-align:2px;letter-spacing:.02em;background:var(--surface);color:var(--kind-important-ink);border:1px solid var(--kind-important-rule);border-radius:6px;flex:none;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.4;display:inline-block}.todo-more{width:40px;height:44px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;font-size:20px;line-height:1}.todo-more:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.todo-actions{gap:8px}.todo-actions .btn{justify-content:center;width:100%}.stk-check .stk-card{background:var(--paper)}.stk-check .m-item{list-style:none}.stk-check .m-row{font-family:var(--font-sans);background:0 0;border:0;width:100%;min-height:56px;padding:8px 10px}.stk-check .m-panel{padding:0 10px 10px}.check-footer{margin-top:var(--s-3)}.day-sec.day-box{margin-top:var(--s-4);background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:4px 14px 14px}.day-sec.day-box .section-head{min-height:52px;margin-bottom:0}.day-sec.day-box .section-head>h2.t-meta{letter-spacing:-.01em;text-transform:none;color:var(--ink);font-size:19px;font-weight:600}.day-box .day.rows>.slot+.slot{border-top:0}.day-box .day.rows{flex-direction:column;gap:8px;display:flex}.day-box .day.rows .slot{align-items:start;padding:0}.day-box .day.rows .slot .slot-hit{align-items:start;min-height:0;padding:0}.day-box .day.rows .slot .body,.day-box .day.rows .slot .body .say{font-family:var(--font-sans)}.day-box .day.rows .slot .time{padding-top:12px}.day-box .day.rows .slot .body{background:var(--kind-class);color:var(--ink);border-radius:12px;padding:10px 12px}.day-box .day.rows .slot .body .where,.day-box .day.rows .slot .body .slot-meta,.day-box .day.rows .slot .body .say{color:var(--kind-class-ink)}.day-box .day.rows .slot.tone-study .body{background:var(--kind-study)}.day-box .day.rows .slot.tone-study .body .what,.day-box .day.rows .slot.tone-study .body .say{color:var(--kind-study-ink)}.day-box .day.rows .slot.tone-important .body{background:var(--kind-important);box-shadow:inset 3px 0 0 var(--kind-important-ink)}.day-box .day.rows .slot.tone-important .body .what,.day-box .day.rows .slot.tone-important .body .say{color:var(--kind-important-ink)}.day-box .day.rows .slot.tone-yours .body{background:var(--kind-yours)}.day-box .day.rows .slot.tone-free .body{border:1px dashed var(--rule-strong);background:0 0}.day-box .day.rows .slot.now .body{outline:2px solid var(--kind-study-ink);outline-offset:-2px}.day-box .day.rows .slot.now.tone-important .body{outline-color:var(--kind-important-ink)}.day-box .day.rows .slot.now.tone-class .body,.day-box .day.rows .slot.now.tone-event .body{outline-color:var(--ink-3)}.day-box .day.rows .slot.now.tone-yours .body{outline-color:var(--kind-yours-ink)}.day-box .day.rows .slot.past .body{opacity:.8}.stk-check .m-row{text-align:left;color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:8px;text-decoration:none;display:grid}.stk-check .m-row .m-sentence{font-family:var(--font-sans);white-space:normal;text-overflow:clip;-webkit-line-clamp:unset;grid-column:1;font-size:15px;line-height:1.35;display:block;overflow:visible}.stk-check .m-row .m-sentence *{font-family:inherit}.stk-check .m-row .m-value{font-family:var(--font-sans);color:var(--ink-3);text-align:left;white-space:normal;grid-area:2/1;font-size:13px}.stk-check .m-row .m-chev{width:16px;height:16px;color:var(--ink-3);grid-area:1/2/span 2;transform:rotate(-90deg)}.stk-check .m-item.open .m-row .m-chev{transform:none}.stk-check .m-node{font-family:var(--font-sans);padding:4px 10px}.day-sec-hint{font-family:var(--font-sans);color:var(--ink-3);font-size:14px}.block-options{margin-top:var(--s-3);gap:var(--s-3);flex-direction:column;display:flex}.crunch-hero:has(>.crunch-board){box-shadow:none;background:0 0;border:0;padding:0;overflow:visible}.crunch-box.crunch-board{border:1px solid color-mix(in srgb, var(--crunch) 25%, var(--rule));background:var(--kind-due);box-shadow:none;border-left-width:1px;border-radius:16px;flex-direction:column;gap:8px;padding:0 14px 14px;display:flex;position:relative;overflow:hidden}.crunch-board .crunch-band{background:var(--crunch);color:var(--crunch-on);border:0;border-radius:15px 15px 0 0;flex-direction:column;align-items:stretch;gap:4px;margin:0 -14px;padding:14px 16px 12px;display:flex}.crunch-board .crunch-band-top{align-items:center;gap:10px;display:flex}.crunch-board .crunch-band-top .icon,.crunch-board .crunch-band-top svg{width:26px;height:26px;color:var(--crunch-on)}.crunch-board .crunch-big{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--crunch-on);margin:0;font-size:30px;font-weight:800;line-height:1}.crunch-board .crunch-sub{font-family:var(--font-sans);font-size:15px;font-weight:500}.crunch-board .crunch-on{font-family:var(--font-sans);color:var(--kind-due-ink);margin:4px 0 0;font-size:16px;font-weight:600;display:block}.crunch-board .crunch-on strong{font-weight:600}.crunch-board .crunch-why{font-family:var(--font-sans);color:var(--ink-2);margin:0;padding:0;font-size:15px;line-height:1.4}.crunch-board .crunch-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.crunch-board .crunch-row{border-top:1px solid color-mix(in srgb, var(--crunch) 22%, transparent);min-height:44px;font-family:var(--font-sans);color:var(--ink);justify-content:space-between;align-items:center;gap:8px;font-size:15px;text-decoration:none;display:flex}.crunch-board .crunch-row-when{color:var(--ink-3);white-space:nowrap}.crunch-board .crunch-in-line{font-family:var(--font-sans);color:var(--ink-3);margin:0;font-size:13px}.crunch-board .crunch-corner{position:absolute;top:10px;right:12px}.crunch-now{margin-top:var(--s-4)}.crunch-now-eyebrow{font-family:var(--font-sans);color:var(--signal-ink);font-size:13px;font-weight:600}.crunch-now .crunch-title{font-family:var(--font-sans);letter-spacing:-.01em;margin:2px 0 0;font-size:22px;font-weight:600}.crunch-now .crunch-task{color:var(--ink);text-decoration:none}.crunch-now .crunch-line{font-family:var(--font-sans);color:var(--ink-2);margin:4px 0 0;font-size:15px;line-height:1.4}.crunch-now .crunch-line .crunch-clock{color:var(--ink);font-weight:600}.crunch-now .crunch-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.crunch-now .crunch-actions .btn{min-height:48px}.crunch-now .crunch-left .crunch-clock{font-size:inherit;line-height:inherit;letter-spacing:0;display:inline}.crunch-now .crunch-line .crunch-code{font:inherit;letter-spacing:0;text-transform:none;color:inherit;display:inline}.crunch-board .crunch-row-when{white-space:normal;text-align:right;flex:none;max-width:48%;font-size:14px}.check-footer .check-coming{min-height:44px;font-family:var(--font-sans);color:var(--ink);align-items:center;gap:10px;padding:0 2px;font-size:15px;text-decoration:none;display:flex}.check-footer .check-coming .m-sentence{font-weight:500}.check-footer .check-coming .m-value{color:var(--ink-3);margin-left:auto;font-size:14px}.check-footer .check-coming .m-chev{width:16px;height:16px;color:var(--ink-3);transform:rotate(-90deg)}.stk-check .m-node>.day-off{border:0;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:4px 0;display:flex}.stk-check .m-node>.day-off>.t-sm{flex:auto;min-width:0;font-size:15px}.stk-check .m-node>.day-off .btn{flex:none;width:auto;min-height:44px}.todo-bar{background:var(--kind-class);border-radius:3px;height:6px;margin:0 2px 10px;overflow:hidden}.todo-bar>span{background:var(--kind-yours-ink);border-radius:3px;height:100%;transition:width .32s cubic-bezier(.2,.8,.2,1);display:block}@media (prefers-reduced-motion:reduce){.todo-bar>span{transition:none}}.this-week{margin-top:var(--s-4);background:var(--kind-yours);font-family:var(--font-sans);border-radius:16px;flex-direction:column;gap:8px;padding:14px;display:flex}.this-week h2{color:var(--kind-yours-ink);margin:0;font-size:16px;font-weight:600}.this-week ul{color:var(--ink-2);grid-template-columns:minmax(0,1fr) auto;row-gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.this-week li{display:contents}@media (min-width:1024px){.page.today-page{max-width:min(1200px,100%)}.today-page .page-with-margin{grid-template-columns:minmax(0,1fr)}.today-cols{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;column-gap:32px;display:grid}.today-cols>.today-main{grid-area:1/1}.today-cols>.today-side{grid-area:1/2/span 2}.today-cols>.today-asks{grid-area:2/1}.today-cols>[hidden]{display:none}.today-side>.day-box:first-child{margin-top:0}}.today-page .campus-fold{margin:0 0 var(--s-3)}.today-page .campus-fold-line{border:1px solid var(--rule);background:var(--surface);max-width:100%;min-height:44px;font-family:var(--font-sans);color:var(--ink-2);border-radius:22px;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:inline-flex}.today-page .campus-fold-line .campus-fold-text{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;display:block;overflow:hidden}.today-page .campus-fold-line .campus-fold-chev{flex:none;width:14px;height:14px;transform:rotate(-90deg)}.today-page .campus-fold.is-open .campus-fold-chev{transform:none}.day-box .day.rows .slot .body{margin-left:0}.stk-hint,.stk-empty,.check-footer .check-coming .m-sentence{font-family:var(--font-sans)}.crunch-now .crunch-line .crunch-left{font-family:var(--font-sans);font-size:inherit;color:inherit;letter-spacing:0;font-weight:400}.day-fold{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;margin-right:-10px;display:inline-flex}.day-fold .icon,.day-fold svg{width:20px;height:20px;transition:transform .22s cubic-bezier(.2,.8,.2,1)}.day-fold[aria-expanded=true] .icon,.day-fold[aria-expanded=true] svg{transform:rotate(180deg)}.day-fold:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.day-sec.day-box .section-head>:last-child{align-items:center;gap:4px;display:inline-flex}.day-box.is-folded{z-index:2;padding-bottom:12px;position:relative}.day-peek-next{font-family:var(--font-sans);color:var(--ink-3);margin:8px 2px 0;font-size:14px}.day-edge{margin-top:0}.check-footer .check-coming{min-height:56px;margin-top:var(--s-3);background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:0 16px}.check-footer .check-coming .m-sentence{font-size:16px;font-weight:600}@media (prefers-reduced-motion:reduce){.day-fold .icon,.day-fold svg{transition:none}}.crunch-board .crunch-row-when{color:var(--ink-2)}.day-box .day.rows .slot.tone-important .body .slot-meta{color:var(--kind-important-ink);font-size:13px;font-weight:600}:root[data-theme-accent=indigo]{--accent:#2b2d5c;--accent-soft:#d8d5d6;--accent-on:#f6f3ec;--accent-text:#34366b;--hero-edge:#2b2d5c;--kind-class:#eceae5;--kind-class-ink:#4a473f;--kind-study:#f6eacb;--kind-study-ink:#6f4d0c;--kind-yours:#e1e9dc;--kind-yours-ink:#3d5a35;--kind-important:#f8e3df;--kind-important-ink:#a3261b;--kind-important-rule:#e9b7ae;--course-1:#3b3d7a;--course-1-tint:#e4e2e6;--course-1-ink:#3b3d7a;--course-2:#ad770c;--course-2-tint:#f4ead7;--course-2-ink:#865c09;--course-3:#2f6f6a;--course-3-tint:#e2e9e4;--course-3-ink:#2f6f6a;--course-4:#6b7a2f;--course-4-tint:#eaebdc;--course-4-ink:#5a6728;--course-5:#7a5a3a;--course-5-tint:#ece6dd;--course-5-ink:#7a5a3a}:root[data-theme=dark][data-theme-accent=indigo]{--accent:#bcbef0;--accent-soft:#2d2c32;--accent-on:#141210;--accent-text:#bcbef0;--hero-edge:#bcbef0;--kind-class:#26241f;--kind-class-ink:#c9c3b6;--kind-study:#33281a;--kind-study-ink:#f0c770;--kind-yours:#1d2b22;--kind-yours-ink:#a9d39b;--kind-important:#3d1f1b;--kind-important-ink:#ffa497;--kind-important-rule:#7a372e;--course-1:#8081a9;--course-1-tint:#262534;--course-1-ink:#b1b1ca;--course-2:#caa761;--course-2-tint:#463515;--course-2-ink:#dec99e;--course-3:#78a19e;--course-3-tint:#233330;--course-3-ink:#acc5c3;--course-4:#9fa978;--course-4-tint:#34361f;--course-4-ink:#c4caac;--course-5:#a9947f;--course-5-tint:#382d22;--course-5-ink:#cabdb0}:root[data-theme-accent=ink]{--accent:#23394d;--accent-soft:#d6d7d4;--accent-on:#f6f3ec;--accent-text:#23394d;--hero-edge:#23394d;--kind-class:#eceae5;--kind-class-ink:#4a473f;--kind-study:#e3ebf2;--kind-study-ink:#23415a;--kind-yours:#e3ece4;--kind-yours-ink:#2f5a3f;--kind-important:#f8e3df;--kind-important-ink:#a3261b;--kind-important-rule:#e9b7ae;--course-1:#2f4a66;--course-1-tint:#e2e4e4;--course-1-ink:#2f4a66;--course-2:#2f6f6a;--course-2-tint:#e2e9e4;--course-2-ink:#2f6f6a;--course-3:#6b7a2f;--course-3-tint:#eaebdc;--course-3-ink:#5a6728;--course-4:#a07d2c;--course-4-tint:#f2ebdb;--course-4-ink:#7c6222;--course-5:#5b4a72;--course-5-tint:#e8e4e5;--course-5-ink:#5b4a72}:root[data-theme=dark][data-theme-accent=ink]{--accent:#a9c7e0;--accent-soft:#2a2d2f;--accent-on:#141210;--accent-text:#a9c7e0;--hero-edge:#a9c7e0;--kind-class:#26241f;--kind-class-ink:#c9c3b6;--kind-study:#1c2833;--kind-study-ink:#a9c7e0;--kind-yours:#1c2a21;--kind-yours-ink:#9fd0ae;--kind-important:#3d1f1b;--kind-important-ink:#ffa497;--kind-important-rule:#7a372e;--course-1:#78899c;--course-1-tint:#23292f;--course-1-ink:#acb7c2;--course-2:#78a19e;--course-2-tint:#233330;--course-2-ink:#acc5c3;--course-3:#9fa978;--course-3-tint:#34361f;--course-3-ink:#c4caac;--course-4:#c1aa76;--course-4-tint:#42371e;--course-4-ink:#d9cbab;--course-5:#9489a3;--course-5-tint:#2f2932;--course-5-ink:#bdb7c7}:root[data-theme-accent=teal]{--accent:#2a2c2e;--accent-soft:#d7d5d0;--accent-on:#f6f3ec;--accent-text:#2a6460;--hero-edge:#2f6f6a;--kind-class:#eceae5;--kind-class-ink:#4a473f;--kind-study:#dfeeec;--kind-study-ink:#1f5a55;--kind-yours:#efe6d4;--kind-yours-ink:#6a5225;--kind-important:#f8e3df;--kind-important-ink:#a3261b;--kind-important-rule:#e9b7ae;--course-1:#2f6f6a;--course-1-tint:#e2e9e4;--course-1-ink:#2f6f6a;--course-2:#a07d2c;--course-2-tint:#f2ebdb;--course-2-ink:#7c6222;--course-3:#2f4a66;--course-3-tint:#e2e4e4;--course-3-ink:#2f4a66;--course-4:#6b7a2f;--course-4-tint:#eaebdc;--course-4-ink:#5a6728;--course-5:#5b4a72;--course-5-tint:#e8e4e5;--course-5-ink:#5b4a72}:root[data-theme=dark][data-theme-accent=teal]{--accent:#e9ece9;--accent-soft:#343331;--accent-on:#141210;--accent-text:#8fd0c8;--hero-edge:#7cc4bc;--kind-class:#26241f;--kind-class-ink:#c9c3b6;--kind-study:#17302d;--kind-study-ink:#8fd0c8;--kind-yours:#302819;--kind-yours-ink:#e2c58f;--kind-important:#3d1f1b;--kind-important-ink:#ffa497;--kind-important-rule:#7a372e;--course-1:#78a19e;--course-1-tint:#233330;--course-1-ink:#acc5c3;--course-2:#c1aa76;--course-2-tint:#42371e;--course-2-ink:#d9cbab;--course-3:#78899c;--course-3-tint:#23292f;--course-3-ink:#acb7c2;--course-4:#9fa978;--course-4-tint:#34361f;--course-4-ink:#c4caac;--course-5:#9489a3;--course-5-tint:#2f2932;--course-5-ink:#bdb7c7}.home-hero .nextmove{border-left-color:var(--hero-edge,var(--accent))}.home-hero .nextmove .eyebrow{white-space:nowrap;letter-spacing:.03em;flex-wrap:nowrap;min-width:0;font-size:12px;overflow:hidden}.home-hero .nextmove .eyebrow>span:first-child{color:var(--accent-text,var(--accent));font-weight:600}.home-hero .nextmove .eyebrow>:not(:first-child){text-overflow:ellipsis;letter-spacing:0;text-transform:none;min-width:0;overflow:hidden}.course-dot{background:var(--ink-3);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.course-dot.c1{background:var(--course-1,var(--ink-3))}.course-dot.c2{background:var(--course-2,var(--ink-3))}.course-dot.c3{background:var(--course-3,var(--ink-3))}.course-dot.c4{background:var(--course-4,var(--ink-3))}.course-dot.c5{background:var(--course-5,var(--ink-3))}.todo-t{align-items:center;gap:6px;display:flex}.todo-t>.todo-name{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;flex:auto;min-width:0;overflow:hidden}.todo-m{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stk-foot{color:var(--ink-3);margin:10px 2px 2px;font-size:13px}.this-week-course{align-items:center;gap:6px;display:inline-flex}.topbar-slot{flex:0 auto;align-items:center;min-width:0;margin-left:auto;display:flex}.campus-pill{border:1px solid var(--rule);background:var(--surface);max-width:min(64vw,360px);min-height:44px;color:var(--ink-2);font:inherit;cursor:pointer;border-radius:22px;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:inline-flex}.campus-pill .icon,.campus-pill svg{flex:none;width:16px;height:16px}.campus-pill-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.campus-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.campus-pill-inline{justify-content:flex-end;display:flex}.stk-check .m-stacked{text-align:left;flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.stk-check .m-source{color:var(--ink-3);font-size:13px}.day-box .day.rows .slot .body .what{color:var(--ink);font-size:16px;font-weight:400}.day-box .day.rows .slot.now .body .what,.day-box .day.rows .slot.tone-important .body .what{font-weight:600}.day-box .day.rows .slot.past .body .what{color:var(--ink-3)}.day-box .day.rows .slot .body .where,.day-box .day.rows .slot .body .slot-meta{font-size:13px;font-weight:400}.day-box .day.rows .slot.tone-study .body .slot-meta{color:var(--kind-study-ink)}.day-box .day.rows .slot.tone-yours .body .where{color:var(--kind-yours-ink)}.day-box .day.rows .slot.now .time{color:var(--accent-text,var(--accent));font-weight:600}.day-box .day.rows .slot.tone-study .body .what,.day-box .day.rows .slot.tone-important .body .what,.day-box .day.rows .slot.tone-yours .body .what,.day-box .day.rows .slot.tone-event .body .what{color:var(--ink)}.stk-check .check-answers .twin{flex-direction:column;gap:6px;display:flex}.stk-check .check-answers .ask-meta{color:var(--ink-3);order:-1;font-size:13px}.stk-check .check-answers .twins{margin:0}.today-page .greeting-line{font-family:var(--font-display);color:var(--ink);font-size:22px;font-weight:600;line-height:1.25}@media (min-width:1024px){.topbar-in>.topbar-slot{flex:none;width:100%;margin:0 0 10px}.topbar-in>.topbar-slot:empty{display:none}.topbar-slot .campus-pill{box-sizing:border-box;width:100%;max-width:100%}}
