@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-ext-400-normal-Twk1CgKs.woff2) format("woff2"),url(/assets/sora-latin-ext-400-normal-BmhJC382.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-400-normal-CRt88UEn.woff2) format("woff2"),url(/assets/sora-latin-400-normal-OW7qkl5a.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-ext-500-normal-B5KKQIFO.woff2) format("woff2"),url(/assets/sora-latin-ext-500-normal-DwxUJRqY.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-500-normal-01eiPEn0.woff2) format("woff2"),url(/assets/sora-latin-500-normal-w58xtEt9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-ext-600-normal-Cue1zdhl.woff2) format("woff2"),url(/assets/sora-latin-ext-600-normal-DLOJK0Ta.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2) format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,html[data-theme=light]{color-scheme:light;--canvas: #f7f7f6;--rail: #efeff0;--desk: #f9f9fa;--paper: #ffffff;--paper-2: #fbfbfa;--ink: #1c1c1c;--ink-2: #6c6c6c;--ink-3: #8a8a8a;--ink-4: #b9b9b7;--line: rgba(28, 28, 28, .08);--line-2: rgba(28, 28, 28, .15);--fill: rgba(28, 28, 28, .04);--fill-2: rgba(28, 28, 28, .07);--scrim: rgba(247, 247, 246, .6);--attn: #9a5a0b;--attn-fill: rgba(196, 128, 32, .09);--risk: #a13b2c;--risk-fill: rgba(161, 59, 44, .07);--good: #139f6b;--good-soft: rgba(19, 159, 107, .16);--info: #2f6fc0;--info-fill: rgba(47, 111, 192, .1);--focus: #6f78cf;--paper-raised: var(--paper);--tip: var(--ink);--tip-ink: var(--paper);--tip-shadow: none;--send: #2f6fc0;--send-down: #2a64ae;--send-edge: #2961a9;--send-ledge: #1f4f8c;--key-face: #ffffff;--key-face-down: #f9fafb;--key-border: #e5e7eb;--key-ledge: #e5e7eb;--key-glyph: #4b5563;--shadow-rest: 0 0 0 1px var(--line), 0 1px 2px rgba(0, 0, 0, .03);--shadow-lift: 0 0 0 1px var(--line-2), 0 10px 24px -14px rgba(0, 0, 0, .22);--shadow-float: 0 0 0 1px var(--line), 0 2px 6px rgba(0, 0, 0, .04), 0 22px 48px -22px rgba(0, 0, 0, .3);--shadow-composer: 0 0 0 1px rgba(0, 0, 0, .075), 0 1px 1px rgba(0, 0, 0, .015);--shadow-composer-focus: 0 0 0 1px rgba(0, 0, 0, .12), 0 1px 1px rgba(0, 0, 0, .02)}html[data-theme=dark]{color-scheme:dark;--canvas: #161616;--rail: #09090a;--desk: #121213;--paper: #222221;--paper-2: #1c1c1b;--ink: #f2f1ed;--ink-2: #a4a29b;--ink-3: #7b7a74;--ink-4: #54534f;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .15);--fill: rgba(255, 255, 255, .045);--fill-2: rgba(255, 255, 255, .085);--scrim: rgba(22, 22, 22, .62);--attn: #e2a653;--attn-fill: rgba(226, 166, 83, .1);--risk: #ec8a7c;--risk-fill: rgba(236, 138, 124, .09);--good: #3ccf94;--good-soft: rgba(60, 207, 148, .18);--info: #7fb0ef;--info-fill: rgba(127, 176, 239, .12);--focus: #8b93e6;--paper-raised: #282827;--tip: #2f2f2e;--tip-ink: #dcdbd6;--tip-shadow: 0 0 0 1px rgba(255, 255, 255, .08), 0 8px 24px -6px rgba(0, 0, 0, .55);--send: #3b7bd4;--send-down: #3570c2;--send-edge: #4785da;--send-ledge: #1f4478;--key-face: #2c2c2b;--key-face-down: #292928;--key-border: #3b3b39;--key-ledge: #141413;--key-glyph: #d9d8d3;--shadow-rest: 0 0 0 1px var(--line), 0 1px 2px rgba(0, 0, 0, .2);--shadow-lift: 0 0 0 1px var(--line-2), 0 12px 26px -14px rgba(0, 0, 0, .6);--shadow-float: 0 0 0 1px var(--line), 0 2px 6px rgba(0, 0, 0, .25), 0 24px 52px -20px rgba(0, 0, 0, .7);--shadow-composer: 0 0 0 1px rgba(255, 255, 255, .09);--shadow-composer-focus: 0 0 0 1px rgba(255, 255, 255, .15)}:root{--font: "Sora", ui-sans-serif, -apple-system, system-ui, sans-serif;--font-read: "Inter", -apple-system, system-ui, sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--r-key: 9px;--r-sm: 10px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--out: cubic-bezier(.16, 1, .3, 1);--spring: cubic-bezier(.34, 1.56, .64, 1);--std: cubic-bezier(.2, 0, 0, 1);--fast: .14s;--med: .26s;--glide: .38s;--slow: .52s;--iridescent: linear-gradient(100deg, #818cf8, #a78bfa, #e879f9, #f472b6, #fcd34d, #5eead4, #38bdf8)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--rail);color:var(--ink);font-family:var(--font);font-size:13.5px;line-height:20px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit;color:inherit}button{appearance:none;margin:0;padding:0;border:0;background:none;text-align:inherit;cursor:pointer}button:disabled{cursor:default}::selection{background:color-mix(in srgb,var(--ink) 14%,transparent)}.t-hero{margin:0;font-size:44px;line-height:50px;font-weight:600;letter-spacing:-.03em}.t-title{margin:0;font-size:26px;line-height:32px;font-weight:600;letter-spacing:-.022em}.t-h2{margin:0;font-size:15px;line-height:20px;font-weight:600;letter-spacing:-.01em}.t-body{margin:0;color:var(--ink)}.t-sub{margin:0;font-size:13px;line-height:19px;color:var(--ink-2)}.t-small{font-size:12px;line-height:17px;color:var(--ink-2)}.t-micro{font-size:10.5px;line-height:14px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);text-wrap:balance}.t-num{font-variant-numeric:tabular-nums;letter-spacing:-.02em}.t-code{font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.t-faint{color:var(--ink-3)}.t-muted{color:var(--ink-2)}.paper{background:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow-rest)}.paper-quiet{background:var(--paper-2);border-radius:var(--r-lg);box-shadow:inset 0 0 0 1px var(--line)}.lift{transition:box-shadow var(--med) var(--std),transform var(--med) var(--out)}.lift:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.is-selected{box-shadow:0 0 0 2px var(--ink),0 10px 24px -14px #00000038!important}.hairline{height:1px;background:var(--line);border:0;margin:0}.key{appearance:none;position:relative;display:inline-grid;place-items:center;min-width:34px;height:32px;padding:0 9px;border:1px solid var(--key-border);border-radius:var(--r-key);background:var(--key-face);box-shadow:0 2px 0 0 var(--key-ledge);color:var(--key-glyph);cursor:pointer;transition:transform 90ms var(--std),box-shadow 90ms var(--std),background 90ms var(--std)}.key:active,.key.is-down{transform:translateY(2px);box-shadow:0 0 0 0 var(--key-ledge);background:var(--key-face-down)}.key svg{width:18px;height:18px}.key-lg{min-width:42px;height:40px;border-radius:11px}.key-lg svg{width:20px;height:20px}.kbd{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border:1px solid var(--key-border);border-radius:5px;background:var(--key-face);box-shadow:0 1px 0 0 var(--key-ledge);color:var(--ink-2);font-family:var(--font);font-size:10.5px;font-weight:500;line-height:1}.kbd+.kbd{margin-left:3px}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:32px;padding:0 14px;border:0;border-radius:999px;background:var(--paper);box-shadow:0 0 0 1px var(--line),0 1px 2px #0000000a;color:var(--ink);font-size:12.5px;font-weight:500;white-space:nowrap;text-decoration:none;cursor:pointer;transition:box-shadow var(--fast) var(--std),opacity var(--fast) var(--std),background var(--fast) var(--std),transform 90ms var(--std)}.btn:hover{box-shadow:0 0 0 1px var(--line-2),0 1px 3px #0000000f}.btn:active{transform:scale(.98)}.btn svg{width:15px;height:15px}.btn-primary{background:var(--ink);box-shadow:none;color:var(--paper)}.btn-primary:hover{box-shadow:none;opacity:.88}.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.btn-danger{background:var(--risk);box-shadow:none;color:var(--paper)}.btn-danger:hover{box-shadow:none;opacity:.88}.btn-ghost{background:transparent;box-shadow:none;color:var(--ink-2)}.btn-ghost:hover{background:var(--fill);box-shadow:none;color:var(--ink)}.btn-lg{height:40px;padding:0 20px;font-size:13px}.btn-sm{height:26px;padding:0 10px;font-size:12px}.btn-icon{width:32px;padding:0}.btn:disabled{opacity:.4;cursor:default}.link{appearance:none;padding:0;border:0;background:none;color:var(--ink);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none}.link:hover{text-decoration:underline;text-underline-offset:3px}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:999px;background:var(--fill-2);color:var(--ink-2);font-size:11.5px;font-weight:500;white-space:nowrap}.pill-outline{background:transparent;box-shadow:inset 0 0 0 1px var(--line-2)}.pill-ink{background:var(--ink);color:var(--paper)}.pill-attn{background:var(--attn-fill);color:var(--attn)}.pill-risk{background:var(--risk-fill);color:var(--risk)}.seg{position:relative;display:inline-flex;padding:3px;border-radius:999px;background:var(--fill-2)}.seg-thumb{position:absolute;top:3px;bottom:3px;left:0;border-radius:999px;background:var(--paper);box-shadow:0 0 0 1px var(--line),0 1px 3px #00000014;transition:transform .38s var(--spring),width .38s var(--spring)}.seg-item{appearance:none;position:relative;z-index:1;height:26px;padding:0 13px;border:0;border-radius:999px;background:none;color:var(--ink-2);font-size:12.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:color var(--fast) var(--std)}.seg-item.is-on{color:var(--ink)}.seg-sm .seg-item{height:22px;padding:0 9px;font-size:11.5px}.field{display:flex;flex-shrink:0;align-items:center;gap:10px;height:40px;padding:0 14px;border-radius:var(--r-sm);background:var(--paper);box-shadow:0 0 0 1px var(--line-2);transition:box-shadow var(--fast) var(--std)}.field:focus-within{box-shadow:0 0 0 1px var(--focus)}.field input{flex:1;min-width:0;height:100%;border:0;outline:none;background:none;font-size:13px}.field input::placeholder{color:var(--ink-3)}.field>svg{width:16px;height:16px;color:var(--ink-3);flex-shrink:0}.field-lg{height:52px;padding:0 18px;border-radius:999px}.field-lg input{font-size:15px}.list{display:flex;flex-direction:column}.row{appearance:none;display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 16px;border:0;background:none;text-align:left;cursor:default}button.row,a.row{cursor:pointer;color:inherit;text-decoration:none;transition:background var(--fast) var(--std)}button.row:hover,a.row:hover{background:var(--fill)}.list>.row+.row{box-shadow:inset 0 1px 0 var(--line)}.paper>.list>.row:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0}.paper>.list>.row:last-child{border-radius:0 0 var(--r-lg) var(--r-lg)}.row-main{display:flex;flex-direction:column;min-width:0;flex:1}a.row-main{color:inherit;text-decoration:none}.row-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{font-size:12px;line-height:17px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-meta{display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--ink-2);font-size:12px}.mark{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-2);color:var(--paper)}.mark svg{display:block;width:66%;height:66%}.mark-done{background:var(--ink);box-shadow:none}.mark-confirmed{box-shadow:inset 0 0 0 1.5px var(--ink);color:var(--ink)}.mark-now{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%);box-shadow:inset 0 0 0 1.5px var(--ink)}.mark-planned{box-shadow:inset 0 0 0 1.5px var(--ink-3)}.mark-planned:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink-3)}.mark-verify{box-shadow:inset 0 0 0 1.5px var(--attn);color:var(--attn)}.mark-risk{background:var(--risk);box-shadow:none}.meter{display:flex;gap:2px;height:6px;border-radius:999px;overflow:hidden;background:var(--fill-2)}.meter>span{height:100%;transform-origin:left;animation:meter-in .9s var(--out) backwards}.meter .m-done{background:var(--ink)}.meter .m-now{background:color-mix(in srgb,var(--ink) 45%,transparent)}.meter .m-confirmed,.cbar-confirmed{background:repeating-linear-gradient(90deg,var(--ink) 0 3px,color-mix(in srgb,var(--ink) 55%,transparent) 3px 5px)}.meter .m-planned{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink) 30%,transparent) 0 2px,transparent 2px 4px)}@keyframes meter-in{0%{transform:scaleX(0)}}.cells{display:flex;flex-wrap:wrap;gap:8px 14px}.cells-group{display:grid;grid-template-columns:repeat(5,16px);gap:5px}.cell{width:16px;height:16px;border-radius:5px;box-shadow:inset 0 0 0 1.5px var(--line-2);animation:cell-in .62s var(--spring) backwards;animation-delay:calc(var(--i, 0) * 14ms + .2s)}.cell.c-done{background:var(--ink);box-shadow:none}.cell.c-now{background:color-mix(in srgb,var(--ink) 42%,transparent);box-shadow:none}.cell.c-planned{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink) 28%,transparent) 0 2px,transparent 2px 4.5px);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ink) 22%,transparent)}@keyframes cell-in{0%{opacity:0;transform:scale(.4)}}.legend{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12px;color:var(--ink-2)}.legend>span{display:inline-flex;align-items:center;gap:7px}.legend-v{margin-left:-2px;color:var(--ink);font-weight:500}.legend .cell{width:10px;height:10px;border-radius:3px;animation:none}.ring{--p: 0;width:14px;height:14px;flex-shrink:0;border-radius:50%;background:conic-gradient(var(--ink) calc(var(--p) * 1%),var(--fill-2) 0);-webkit-mask:radial-gradient(circle,transparent 3.5px,#000 4px);mask:radial-gradient(circle,transparent 3.5px,#000 4px)}.callout{display:flex;gap:12px;padding:14px 16px;border-radius:var(--r-md);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line)}.callout-body{display:flex;flex-direction:column;gap:2px;min-width:0}.callout-title{font-weight:500}.callout-text{font-size:12.5px;line-height:18px;color:var(--ink-2)}.callout-close{flex:none;margin:-6px -8px 0 auto}.callout-actions{display:flex;gap:14px;margin-top:8px}.callout-attn{background:var(--attn-fill);box-shadow:none}.callout-risk{background:var(--risk-fill);box-shadow:none}.callout-success{position:relative;overflow:hidden;background:var(--paper);box-shadow:var(--shadow-rest)}.callout-success:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--iridescent);opacity:.9}.scrim{position:fixed;inset:0;z-index:40;background:var(--scrim);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade-in .22s var(--std) backwards}.sheet{position:fixed;left:50%;top:50%;z-index:41;width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow:auto;border-radius:var(--r-xl);background:var(--paper);box-shadow:var(--shadow-float);transform:translate(-50%,-50%);animation:sheet-in .46s var(--out) backwards}@keyframes sheet-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.985);filter:blur(4px)}}.pop{position:absolute;z-index:30;min-width:220px;padding:6px;border-radius:14px;background:var(--paper);box-shadow:var(--shadow-float);animation:pop-in .2s var(--out) backwards}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px) scale(.97)}}.pop-fixed{position:fixed;z-index:45}body:has(>.sheet)>.pop-fixed{z-index:39}.pop>.menu-item+.menu-item,.pop>.menu-item+.tt-result,.pop>.tt-result+.menu-item{margin-top:2px}.menu-item{appearance:none;display:flex;align-items:center;gap:10px;width:100%;height:32px;padding:0 10px;border:0;border-radius:8px;background:none;color:var(--ink);font-size:12.5px;text-align:left;cursor:pointer}.menu-item:hover,.menu-item.is-active,.menu-item[data-tour-point]{background:var(--fill-2)}.menu-item svg{width:15px;height:15px;color:var(--ink-2)}.menu-item .menu-end{margin-left:auto;color:var(--ink-3);font-size:11.5px}.menu-sep{height:1px;margin:5px 4px;background:var(--line)}.menu-label{padding:8px 10px 4px}.menu-empty{margin:0;padding:2px 10px 6px;color:var(--ink-3)}.panel{position:fixed;top:12px;right:12px;bottom:12px;z-index:35;display:flex;flex-direction:column;width:min(400px,calc(100vw - 24px));border-radius:var(--r-xl);background:var(--paper);box-shadow:var(--shadow-float);animation:panel-in .52s var(--out) backwards}@keyframes panel-in{0%{opacity:0;transform:translate(24px)}}.panel-head{display:flex;align-items:flex-start;gap:12px;padding:20px 20px 16px}.panel-body{flex:1;overflow:auto;padding:0 20px 20px}.tip{position:absolute;z-index:50;display:inline-flex;align-items:center;gap:8px;padding:5px 9px;border-radius:8px;background:var(--tip);box-shadow:var(--tip-shadow);color:var(--tip-ink);font-size:11.5px;font-weight:500;white-space:nowrap;pointer-events:none;animation:tip-in .16s var(--out) backwards}.tip-anchor{position:fixed;z-index:1000;pointer-events:none}.tip.tip-wrap{width:max-content;max-width:240px;white-space:pre-line;line-height:16px}.tip .kbd{border-color:color-mix(in srgb,var(--tip-ink) 22%,transparent);background:color-mix(in srgb,var(--tip-ink) 12%,transparent);box-shadow:none;color:var(--tip-ink)}@keyframes tip-in{0%{opacity:0;transform:translateY(3px)}}.skel{position:relative;overflow:hidden;border-radius:6px;background:var(--fill-2)}.skel:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--paper) 70%,transparent) 50%,transparent 80%);transform:translate(-100%);animation:sweep 1.4s var(--std) infinite}@keyframes sweep{to{transform:translate(100%)}}.thinking{background:linear-gradient(100deg,var(--ink-3) 30%,var(--ink) 50%,var(--ink-3) 70%) 0 0 / 250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:text-sweep 1.8s linear infinite}@keyframes text-sweep{0%{background-position:100% 0}to{background-position:-150% 0}}.reveal>*{animation:rise .76s var(--out) backwards;animation-delay:calc(var(--i, 0) * 70ms)}.rise{animation:rise .76s var(--out) backwards;animation-delay:calc(var(--i, 0) * 70ms)}@keyframes rise{0%{opacity:0;transform:translateY(10px);filter:blur(5px)}}@keyframes fade-in{0%{opacity:0}}.expand{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:0fr;transition:grid-template-rows .42s var(--out)}.expand>*{overflow:hidden}.expand.is-open{grid-template-rows:1fr}.expand.is-open>*{animation:expand-unclip .42s forwards}@keyframes expand-unclip{0%,99%{overflow:hidden}to{overflow:visible}}.pop-check{animation:pop-check .46s var(--spring) backwards}@keyframes pop-check{0%{transform:scale(.5)}}.mark-na{box-shadow:inset 0 0 0 1.5px var(--line)}.mark-na:after{content:"";width:7px;height:1.5px;border-radius:1px;background:var(--ink-4)}.mark-info{box-shadow:inset 0 0 0 1.5px var(--line-2);color:var(--ink-3)}.seg-lg{padding:4px}.seg-lg .seg-thumb{top:4px;bottom:4px}.seg-lg .seg-item{height:32px;padding:0 20px;font-size:13px}.seg-ico{display:inline-flex;align-items:center;gap:6px}.seg-ico svg{width:13px;height:13px}.seg-count{--glyph-box: 16px;min-width:16px;padding-inline:4px;border-radius:999px;background:var(--fill-2);color:var(--ink-2);font-size:10.5px}.seg-item.is-on .seg-count{background:var(--ink);color:var(--paper)}.pill-xs{height:18px;padding:0 7px;font-size:10.5px}.pill-btn{appearance:none;border:0;cursor:pointer;gap:4px}.pill-btn svg{width:12px;height:12px}.btn-quiet{color:var(--ink-2)}.btn.is-on{box-shadow:0 0 0 1px var(--ink-2)}.link-quiet{display:inline-flex;align-items:center;gap:5px;color:var(--ink-2)}.link-quiet:hover{color:var(--ink)}.link svg{width:13px;height:13px}.field-sm{height:34px;padding:0 10px}.field-btn{appearance:none;width:100%;margin-top:10px;border:0;color:var(--ink-3);font-size:13px;text-align:left;cursor:pointer}.field-btn:hover{color:var(--ink)}.select{appearance:none;height:40px;padding:0 32px 0 14px;border:0;border-radius:var(--r-sm);background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238a8a8a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") right 10px center / 14px no-repeat;box-shadow:0 0 0 1px var(--line-2);font-size:13px;cursor:pointer}.select:focus{outline:none;box-shadow:0 0 0 1px var(--ink-2),0 0 0 4px color-mix(in srgb,var(--ink) 6%,transparent)}.select-sm{height:30px;padding:0 28px 0 10px;border-radius:8px;font-size:12.5px}.row-tight{min-height:40px;padding:8px 12px}.menu-item:disabled{opacity:.4;cursor:default}.menu-risk,.menu-risk svg{color:var(--risk)!important}.menu-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-text:has(.menu-sub){display:flex;flex-direction:column;gap:2px;white-space:normal}.menu-item:has(.menu-sub){align-items:flex-start;height:auto;min-height:32px;padding:8px 10px 9px}.menu-item:has(.menu-sub)>svg{flex:none;margin-top:2px}.menu-sub{color:var(--ink-3);font-size:11.5px;font-weight:400;line-height:15px}a.menu-item{text-decoration:none}.tile{--glyph-border: 1px;flex-shrink:0;border:1px solid var(--key-border);background:var(--key-face);box-shadow:0 1.5px 0 var(--key-ledge);color:var(--ink);font-weight:600;transition:background var(--fast) var(--std),color var(--fast) var(--std),border-color var(--fast) var(--std)}.tile-xs{--glyph-box: 18px;width:18px;border-radius:5px;font-size:9.5px}.tile-sm{--glyph-box: 20px;width:20px;border-radius:6px;font-size:10.5px}.tile-md{--glyph-box: 28px;width:28px;border-radius:8px;font-size:12.5px}.tile-lg{--glyph-box: 40px;width:40px;border-radius:11px;font-size:16px}.tile-tone{--glyph-border: 0px;border:0;background:var(--hue);box-shadow:inset 0 0 0 1px color-mix(in srgb,#000 8%,transparent);color:#fff}.tone-indigo{--hue: oklch(.55 .16 275)}.tone-teal{--hue: oklch(.6 .1 185)}.tone-plum{--hue: oklch(.55 .15 345)}.tone-green{--hue: oklch(.6 .12 145)}.tone-sky{--hue: oklch(.62 .11 235)}.tone-violet{--hue: oklch(.55 .16 305)}.tone-slate{--hue: oklch(.52 .03 255)}.tone-degree{--hue: oklch(.42 .1 262)}.tile>svg{width:64%;height:64%}.flag{appearance:none;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:none;color:var(--ink-3);cursor:pointer;opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std),color var(--fast) var(--std)}.flag svg{width:14px;height:14px}.flag:hover{background:var(--fill-2);color:var(--ink)}.flag:focus-visible,.flag.is-on,*:hover>.row-flag .flag,*:hover>.inline-flag .flag,*:hover>.alert-end .flag,.course-actions .flag{opacity:1}.flag.is-on{color:var(--attn)}.flag.is-on svg path{fill:color-mix(in srgb,var(--attn) 22%,transparent)}.row-flag{position:absolute;top:50%;right:44px;transform:translateY(-50%)}.icon-btn{appearance:none;position:relative;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:9px;background:none;color:var(--ink-2);cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.icon-btn:hover,.icon-btn.is-on{background:var(--fill-2);color:var(--ink)}.icon-btn svg{width:16px;height:16px}.toggle-row{position:relative;display:flex;align-items:center;gap:12px;font-size:12.5px;cursor:pointer}.toggle-row>span:first-child{flex:1}.toggle-row input{position:absolute;opacity:0;pointer-events:none}.switch{position:relative;width:30px;height:18px;flex-shrink:0;border-radius:999px;background:var(--fill-2);box-shadow:inset 0 0 0 1px var(--line);transition:background var(--med) var(--std)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--paper);box-shadow:0 1px 2px #0000002e;transition:transform .32s var(--spring)}.switch.is-on{background:var(--ink)}.switch.is-on:after{transform:translate(12px)}.toggle-row input:focus-visible+.switch{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink-3)}:focus-visible{outline:2px solid color-mix(in srgb,var(--ink) 55%,transparent);outline-offset:2px}:root{scrollbar-color:var(--line-2) transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-delay:0ms!important;transition-duration:1ms!important}}.seg-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1}.seg-sm .seg-item{height:24px;padding:0 11px}.seg-ico{gap:6px;line-height:1}.seg-ico svg{display:block;flex:none}.seg-count{--glyph-box: 17px;min-width:17px;padding-inline:5px;font-size:10.5px;font-weight:600}.seg-sm .seg-count{--glyph-box: 16px;min-width:16px;padding-inline:4.5px;font-size:10px}.cbar{position:relative;padding:2px 0}.cbar-track{position:relative;display:flex;height:10px;overflow:hidden;border-radius:999px;background:var(--fill-2)}.cbar-seg{height:100%;transform-origin:left;animation:meter-in .9s var(--out) backwards;transition:opacity var(--fast) var(--std)}.cbar-seg+.cbar-seg{box-shadow:inset 2px 0 0 var(--paper)}.cbar-seg.is-dim{opacity:.45}.cbar-tick{position:absolute;top:0;bottom:0;width:1.5px;margin-left:-.75px;background:var(--paper);opacity:.55;pointer-events:none}.cbar-done{background:var(--ink)}.cbar-now{background:color-mix(in srgb,var(--ink) 45%,transparent)}.cbar-planned{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--ink) 34%,transparent) 0 2px,transparent 2px 4px)}.cbar-need{background:transparent}.cbar-tip{position:absolute;bottom:calc(100% + 8px);transform:translate(-50%);width:auto;white-space:nowrap}.swatch{width:10px;height:10px;flex:none;border-radius:3px}.swatch.cbar-need{box-shadow:inset 0 0 0 1.5px var(--line-2)}.chart-box{position:relative}.chart-box svg{display:block;cursor:crosshair}.chart-guide{position:absolute;left:0;width:1px;background:color-mix(in srgb,var(--ink) 22%,transparent);pointer-events:none;transition:transform .16s var(--out)}.chart-dot{position:absolute;top:0;left:0;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2.5px var(--paper),0 1px 4px #0003;pointer-events:none;transition:transform .16s var(--out)}.chart-tip{position:absolute;left:0;z-index:5;display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:var(--paper);box-shadow:var(--shadow-float);font-size:12px;line-height:17px;pointer-events:none;transition:transform .16s var(--out);animation:tip-in .16s var(--out) backwards}.chart-tip b{font-size:13px;font-weight:600}.chart-tip-head{color:var(--ink-3);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.chart-tip-codes{margin-top:2px;color:var(--ink-2);font-size:11px;font-weight:600;letter-spacing:-.005em}.pace-tick.is-hover{fill:var(--ink)}.ea{display:block;width:210px;height:145px;margin:0 auto 14px;overflow:visible}.ea .ea-paper{fill:var(--key-face);stroke:var(--key-border);stroke-width:1;filter:drop-shadow(0 1.5px 0 var(--key-ledge))}.ea .ea-line{fill:color-mix(in srgb,var(--ink) 16%,transparent)}.ea .ea-line-soft{fill:color-mix(in srgb,var(--ink) 9%,transparent)}.ea .ea-ring{fill:none;stroke:color-mix(in srgb,var(--ink) 28%,transparent);stroke-width:1.4}.ea .ea-fill,.ea .ea-fill-static{fill:var(--ink)}.ea .ea-check{fill:none;stroke:var(--paper);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:10}.ea .ea-pole{stroke:var(--ink-2);stroke-width:1.3;stroke-linecap:round}.ea .ea-banner{fill:var(--ink)}.ea .ea-cursor{fill:var(--ink);stroke:var(--paper);stroke-width:1.1;stroke-linejoin:round}.ea .ea-band{fill:color-mix(in srgb,var(--ink) 5%,var(--key-face))}.ea .ea-slot{fill:none;stroke:color-mix(in srgb,var(--ink) 18%,transparent);stroke-width:1;stroke-dasharray:3 3}.ea .ea-grid{stroke:color-mix(in srgb,var(--ink) 7%,transparent);stroke-width:1}.ea .ea-block-face{fill:color-mix(in srgb,#3b73d9 16%,var(--key-face));stroke:#3b73d9;stroke-width:1}.ea .ea-glass{fill:color-mix(in srgb,var(--key-face) 70%,transparent);stroke:var(--ink);stroke-width:2}.ea .ea-handle{stroke:var(--ink);stroke-width:2.6;stroke-linecap:round}.ea g,.ea circle,.ea path,.ea rect{transform-box:fill-box}.ea-todos .ea-card{animation:ea-rise 5.6s var(--out) infinite}.ea-todos .ea-card-1{animation-delay:90ms}.ea-todos .ea-card-2{animation-delay:.18s}.ea-todos .ea-fill{transform-origin:center;animation:ea-fill 5.6s var(--spring) infinite}.ea-todos .ea-check{animation:ea-draw 5.6s var(--out) infinite}.ea-todos .ea-flag{transform-origin:0% 100%;animation:ea-flag 5.6s var(--spring) infinite}.ea-todos .ea-pointer{animation:ea-point-todo 5.6s var(--std) infinite}.ea-plan .ea-chip{animation:ea-drop 5s var(--std) infinite}.ea-plan .ea-pointer{animation:ea-point-plan 5s var(--std) infinite}.ea-calendar .ea-block{animation:ea-block 5s var(--std) infinite}.ea-calendar .ea-pointer{animation:ea-point-cal 5s var(--std) infinite}.ea-search .ea-lens{animation:ea-sweep 4.8s var(--std) infinite}.ea-search .ea-row-1{animation:ea-dim 4.8s var(--std) infinite}.ea-search .ea-row-2{animation:ea-dim 4.8s var(--std) .6s infinite}@keyframes ea-rise{0%{opacity:0;transform:translateY(7px)}10%,86%{opacity:1;transform:none}96%,to{opacity:0;transform:translateY(-3px)}}@keyframes ea-fill{0%,34%{opacity:0;transform:scale(.3)}42%,86%{opacity:1;transform:scale(1)}96%,to{opacity:0;transform:scale(1)}}@keyframes ea-draw{0%,38%{stroke-dashoffset:10;opacity:0}39%{opacity:1}48%,86%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@keyframes ea-flag{0%,50%{opacity:0;transform:translateY(4px) scaleY(.4)}58%,86%{opacity:1;transform:none}96%,to{opacity:0;transform:none}}@keyframes ea-point-todo{0%,12%{opacity:0;transform:translate(150px,104px)}18%{opacity:1}32%{transform:translate(37px,30px)}34%{transform:translate(37px,30px) scale(.86)}38%{transform:translate(37px,30px) scale(1)}50%{opacity:1;transform:translate(52px,46px)}60%,to{opacity:0;transform:translate(60px,56px)}}@keyframes ea-drop{0%,12%{opacity:0;transform:translate(34px,-34px)}18%,28%{opacity:1;transform:translate(34px,-34px)}44%,84%{opacity:1;transform:none}94%,to{opacity:0;transform:none}}@keyframes ea-point-plan{0%,10%{opacity:0;transform:translate(150px,8px)}18%{opacity:1;transform:translate(124px,24px)}28%{transform:translate(124px,24px) scale(.88)}44%{opacity:1;transform:translate(90px,58px) scale(.88)}48%{transform:translate(90px,58px)}58%,to{opacity:0;transform:translate(98px,70px)}}@keyframes ea-block{0%,12%{opacity:0;transform:translateY(-16px)}18%,32%{opacity:1;transform:translateY(-16px)}44%,84%{opacity:1;transform:none}94%,to{opacity:0;transform:none}}@keyframes ea-point-cal{0%,10%{opacity:0;transform:translate(150px,100px)}18%{opacity:1}30%{transform:translate(66px,42px)}32%{transform:translate(66px,42px) scale(.88)}44%{opacity:1;transform:translate(66px,58px) scale(.88)}48%{transform:translate(66px,58px)}58%,to{opacity:0;transform:translate(76px,70px)}}@keyframes ea-sweep{0%{transform:translate(44px,40px)}30%{transform:translate(118px,54px)}60%{transform:translate(60px,76px)}to{transform:translate(44px,40px)}}@keyframes ea-dim{0%,20%,to{opacity:1}35%{opacity:.35}}@media(prefers-reduced-motion:reduce){.ea *{animation:none!important}.ea .ea-pointer{opacity:0}}.ea .ea-field{fill:color-mix(in srgb,var(--ink) 5%,var(--key-face));stroke:var(--key-border);stroke-width:1}.ea .ea-prow-bg{fill:transparent}.ea .ea-tile-0{fill:#3b73d9}.ea .ea-tile-1{fill:#1f9e8a}.ea .ea-tile-2{fill:#8a55c9}.ea .ea-check-static{stroke-dasharray:none}.ea-programs .ea-prow{animation:ea-rise 5.2s var(--out) infinite}.ea-programs .ea-prow-1{animation-delay:80ms}.ea-programs .ea-prow-2{animation-delay:.16s}.ea-programs .ea-prow-1 .ea-prow-bg{animation:ea-row-pick 5.2s var(--std) infinite}.ea-programs .ea-picked{transform-origin:center;animation:ea-fill 5.2s var(--spring) infinite}.ea-programs .ea-pointer{animation:ea-point-prog 5.2s var(--std) infinite}@keyframes ea-row-pick{0%,33%{fill:transparent}40%,86%{fill:color-mix(in srgb,var(--ink) 7%,transparent)}96%,to{fill:transparent}}@keyframes ea-point-prog{0%,12%{opacity:0;transform:translate(154px,110px)}18%{opacity:1}31%{transform:translate(96px,70px)}34%{transform:translate(96px,70px) scale(.86)}38%{transform:translate(96px,70px) scale(1)}50%{opacity:1;transform:translate(110px,86px)}60%,to{opacity:0;transform:translate(118px,96px)}}.seg-count,.avatar,.tile,.goal,.ai-ask-key{display:inline-block;height:var(--glyph-box);padding-block:.05em 0;line-height:calc(var(--glyph-box) - 2 * var(--glyph-border, 0px) - .05em);text-align:center;font-variant-numeric:proportional-nums;white-space:nowrap}:is(.seg-count,.bell-count,.avatar,.tile,.goal,.ai-ask-key):has(>svg){display:inline-flex;align-items:center;justify-content:center;padding-block:0}.nav,.seg-item,.pill{line-height:normal}.seg{max-width:100%;overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg.has-after{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 40px),transparent)}.seg.has-before{-webkit-mask-image:linear-gradient(to right,transparent,#000 40px);mask-image:linear-gradient(to right,transparent,#000 40px)}.seg.has-before.has-after{-webkit-mask-image:linear-gradient(to right,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(to right,transparent,#000 40px,#000 calc(100% - 40px),transparent)}.is-clamped{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:var(--clamp, 2)}.clamp-more{appearance:none;position:relative;z-index:1;align-self:flex-start;margin-top:1px;padding:0;border:0;background:none;color:var(--ink-3);font-size:12px;font-weight:500;line-height:17px;cursor:pointer}.clamp-more:hover{color:var(--ink)}.handle-true-blue{background-image:linear-gradient(90deg,#0a2a6b,#1e5bff 14%,#2aa8ff 30%,#5ce1ff,#2aa8ff,#1e5bff,#1640c8,#0a2a6b);background-size:200% 100%;background-repeat:repeat-x;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-weight:650;animation:true-blue 3.2s linear infinite}:root[data-theme=dark] .handle-true-blue{background-image:linear-gradient(90deg,#2f6bff,#3d8bff 14%,#2aa8ff 30%,#7ae8ff,#2aa8ff,#3d8bff,#2f5dff,#2f6bff)}@keyframes true-blue{0%{background-position-x:200%}to{background-position-x:0%}}.sheet-handle{display:block;margin-top:2px;font-size:13px;line-height:18px}@media(prefers-reduced-motion:reduce){.handle-true-blue{animation:none}}.app{display:grid;grid-template-columns:252px minmax(0,1fr);height:100vh;overflow:hidden}.app.is-bare{grid-template-columns:minmax(0,1fr)}.app{transition:grid-template-columns .32s var(--std)}.app.is-rail{grid-template-columns:60px minmax(0,1fr)}.side :is(.nav-meta,.side-label>*,.side-cta>b,.me>svg,.side-top-full){transition:opacity .12s var(--std) .16s,visibility 0ms linear .16s}.side.is-rail :is(.nav-meta,.side-label>*,.side-cta>b,.me>svg,.side-top-full){opacity:0;visibility:hidden;transition-delay:0ms}.side :is(.nav-label,.me-text){text-overflow:clip;-webkit-mask-image:linear-gradient(to left,transparent,#000 12px);mask-image:linear-gradient(to left,transparent,#000 12px)}.side .me-text>*{text-overflow:clip}.side-top{position:relative}.side-top-full{display:flex;flex:1;align-items:center;gap:8px;min-width:0;white-space:nowrap}.side-expand{appearance:none;position:absolute;top:1px;left:0;display:grid;place-items:center;width:38px;height:34px;border:0;border-radius:var(--r-sm);background:none;color:var(--ink);cursor:pointer;opacity:0;visibility:hidden;transition:background var(--fast) var(--std),opacity .18s var(--std),visibility 0ms linear .18s}.side.is-rail .side-expand{opacity:1;visibility:visible;transition-delay:0ms,.14s,0ms}.side-expand:hover,.side-expand:focus-visible{background:var(--fill)}.side-mark{display:block;width:20px;height:20px;background:linear-gradient(115deg,currentColor 0 36%,color-mix(in srgb,currentColor 30%,var(--paper)) 50%,currentColor 64% 100%) 100% 0 / 300% 100% no-repeat;-webkit-mask:url(/brand/atlas-mark.svg) center / contain no-repeat;mask:url(/brand/atlas-mark.svg) center / contain no-repeat}.side-mark.is-shining{animation:side-mark-shine .9s var(--std)}@keyframes side-mark-shine{to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.side-mark.is-shining{animation-duration:1ms}}.side .nav,.side .side-cta{white-space:nowrap}.side-label{position:relative}.side-label:after{content:"";position:absolute;top:50%;left:10px;width:18px;height:1px;background:var(--line-2);opacity:0;transition:opacity .18s var(--std)}.side.is-rail .side-label:after{opacity:1;transition-delay:.14s}.nav-icon{position:relative}.nav.has-dot .nav-icon:after{content:"";position:absolute;top:-2px;right:-3px;width:6px;height:6px;border-radius:50%;background:var(--ink-2);box-shadow:0 0 0 2px var(--rail);opacity:0;transition:opacity .18s var(--std)}.side.is-rail .nav.has-dot .nav-icon:after{opacity:1;transition-delay:.14s}.side :is(.side-foot>.nav,.me){padding-left:4px}.side-tip{position:fixed;z-index:1000;transform:translateY(-50%);animation-name:side-tip-in}@keyframes side-tip-in{0%{opacity:0;transform:translate(-3px,-50%)}}.side{display:flex;flex-direction:column;min-height:0;padding:10px 10px 10px 12px;overflow:hidden;animation:fade-in .4s var(--std) backwards}.side-scroll{flex:1;min-height:0;margin:0 -10px;padding:0 10px 16px;overflow:hidden auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent)}.side-top{display:flex;align-items:center;gap:8px;height:36px;padding-left:10px;margin-bottom:14px}.brand{color:var(--ink);font-size:19px;font-weight:600;letter-spacing:-.03em;text-decoration:none}.goal{--glyph-box: 20px;appearance:none;padding-inline:7px;border:0;border-radius:999px;background:var(--fill-2);color:var(--ink-2);font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.goal.is-unset{color:var(--ink-3)}.goal:hover,.goal.is-open{background:color-mix(in srgb,var(--ink) 12%,transparent);color:var(--ink)}.side-group{display:flex;flex-direction:column;gap:2px}.side-group+.side-group{margin-top:22px}.side-label{display:flex;align-items:center;justify-content:space-between;height:20px;margin-bottom:6px;padding:0 6px 0 10px}.side-label .icon-btn{width:22px;height:22px;border-radius:6px;color:var(--ink-3)}.side-label .icon-btn svg{width:14px;height:14px}.side-label{cursor:pointer}.side.is-rail .side-label{cursor:default}.side-fold{appearance:none;display:inline-flex;align-items:center;gap:4px;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.side-fold svg{width:12px;height:12px;color:var(--ink-3);visibility:hidden}.side-group:hover .side-fold svg,.side-fold:focus-visible svg,.side-group.is-folded .side-fold svg{visibility:visible}.side-group.is-folded .side-fold svg{transform:rotate(-90deg)}@media(hover:hover){.side-label .side-add{opacity:0;transition:opacity var(--fast) var(--std)}.side-label:hover .side-add,.side-label .side-add:focus-visible{opacity:1}}.side-items{display:flex;flex-direction:column;gap:2px}.side-items[hidden],.side-sub[hidden]{display:none}.side-group.is-folded+.side-group{margin-top:14px}.nav{appearance:none;display:flex;align-items:center;gap:10px;width:100%;height:34px;padding:0 10px;border:0;border-radius:var(--r-sm);background:none;color:var(--ink-2);font-size:13.5px;font-weight:400;text-align:left;text-decoration:none;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.nav:hover{background:var(--fill);color:var(--ink)}.nav.is-active,.nav.is-active:hover{background:var(--fill-2);color:var(--ink);font-weight:500}.nav-icon{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;color:var(--ink-2)}.nav.is-active .nav-icon,.nav:hover .nav-icon{color:var(--ink)}.nav-icon svg{width:16px;height:16px}.nav-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-meta{color:var(--ink-3);font-size:11.5px;font-variant-numeric:tabular-nums}.nav-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ink);color:var(--paper);font-size:11px;font-weight:600;line-height:1}.side-kbd{color:var(--ink-4);font-size:11.5px;font-weight:600;letter-spacing:.02em}.nav-prog{gap:10px;padding-left:7px;padding-right:8px}.side-prog-head:is(:hover,:focus-within) .nav-label,.side-prog-head:has(.row-menu.is-open) .nav-label{-webkit-mask-image:linear-gradient(to left,transparent 24px,#000 40px);mask-image:linear-gradient(to left,transparent 24px,#000 40px)}.nav-prog.is-renaming{background:var(--fill);box-shadow:inset 0 0 0 1px var(--line-2);cursor:text}.side-rename{flex:1;min-width:0;height:24px;padding:0;border:0;outline:none;background:transparent;color:var(--ink);font:inherit}.side .tile-sm{--glyph-box: 22px;width:22px;font-size:11px}.side-prog+.side-prog{margin-top:4px}.side-prog-head{position:relative}.row-menu{appearance:none;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:7px;background:none;color:var(--ink-3);cursor:pointer;opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std)}.row-menu svg{width:14px;height:14px}.side-prog-head .row-menu{margin-top:1px}.side-prog-head:hover .row-menu,.row-menu.is-open,.row-menu:focus-visible{opacity:1}.row-menu:hover,.row-menu.is-open{background:var(--fill-2);color:var(--ink)}.side-views{display:grid;grid-template-rows:1fr;transition:grid-template-rows .32s var(--std),opacity .16s var(--std) .12s,visibility 0ms linear}.side.is-rail .side-views{grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .32s var(--std),opacity .12s var(--std),visibility 0ms linear .32s}.side-sub{position:relative;display:flex;flex-direction:column;gap:2px;min-height:0;margin:-2px -4px -2px 14px;padding:4px 4px 4px 14px;overflow:hidden}.side.is-rail .side-sub{margin-block:-4px}.side-sub:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:1px;background:var(--line-2)}.nav-sub{height:28px;font-size:13px}.side-foot{display:flex;flex-direction:column;gap:2px;flex-shrink:0;padding-top:8px;box-shadow:inset 0 1px 0 var(--line)}.side-foot>.nav{height:42px;padding:7px 10px;font-size:13px}.side-foot>.nav .nav-icon{width:28px;height:28px;border-radius:50%;background:var(--fill-2)}.side-foot>.nav.is-active .nav-icon{background:var(--paper)}.me{appearance:none;display:flex;align-items:center;gap:10px;width:100%;margin-top:2px;padding:7px 10px;border:0;border-radius:var(--r-md);background:none;text-align:left;cursor:pointer;transition:background var(--fast) var(--std)}.me:hover,.me.is-open{background:var(--fill)}.me>svg{width:14px;height:14px;color:var(--ink-3)}.avatar{--glyph-box: 28px;width:28px;flex-shrink:0;border-radius:50%;background:var(--ink);color:var(--paper);font-size:11px;font-weight:600}.me-text{display:flex;flex-direction:column;flex:1;min-width:0}.me-name{font-size:13px;font-weight:500}.me-text>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desk-wrap{display:flex;flex-direction:column;min-width:0;min-height:0;padding:10px 10px 0 0}.app.is-bare .desk-wrap{padding-left:10px}.desk{position:relative;display:flex;flex:1;min-height:0;container:desk / inline-size}.canvas{container:frame / inline-size;position:relative;display:flex;flex:1;flex-direction:column;min-width:0;overflow:hidden;border-radius:18px;background:var(--desk);box-shadow:var(--shadow-rest)}.canvas-head{position:relative;z-index:5;display:flex;align-items:center;gap:8px;height:50px;flex-shrink:0;padding:0 12px 0 16px;background:color-mix(in srgb,var(--desk) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.canvas-mark{display:grid;place-items:center;width:22px;height:22px;color:var(--ink-2)}.canvas-mark svg{width:16px;height:16px}.crumbs{display:flex;align-items:center;min-width:0;font-size:13px}.crumb-wrap{display:inline-flex;align-items:center;min-width:0}.crumb-wrap:not(:last-child) .crumb{min-width:4ch}.crumb-wrap:not(:last-child){flex-shrink:1000}.crumb{overflow:hidden;color:var(--ink-3);text-decoration:none;text-overflow:ellipsis;white-space:nowrap}a.crumb:hover{color:var(--ink)}.crumb-button{margin:0 -7px;padding:3px 7px;border:0;border-radius:7px;background:none;font:inherit;cursor:pointer;transition:background var(--fast) var(--std)}.crumb-button:hover,.crumb-button:focus-visible{background:var(--fill)}.crumb.is-current{color:var(--ink);font-weight:500}.crumb-sep{margin:0 8px;color:var(--ink-4)}@container frame (max-width: 560px){.canvas-head .seg-ico-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.canvas-head .plan-history>:not(:last-child){display:none!important}}.canvas-scroll{position:relative;container:canvas / inline-size;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;scrollbar-gutter:stable;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10px);mask-image:linear-gradient(to bottom,transparent,#000 10px)}.canvas-scroll.is-snug{overflow-y:hidden}.page-enter{min-height:100%;animation:fade-in .26s var(--std) backwards}.page{position:relative;isolation:isolate;max-width:1020px;margin:0 auto;padding:26px 56px 48px}.page-narrow{max-width:820px}.page-wide-tt{max-width:1240px}.page-wide{--edge: max(56px, calc((100% - 1020px)/2 + 56px) );max-width:none;padding-left:var(--edge);padding-right:0}.page-wide>:not(.section-board){max-width:908px;margin-right:var(--edge)}.section-board>.section-head,.section-board>.board-hint{max-width:908px;margin-right:var(--edge)}.page>.sphere{z-index:-1}.page-head{position:relative;margin-bottom:26px}.page-head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-head-below{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-top:20px}.page-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}@container canvas (max-width: 640px){.page{padding:20px 20px 40px}.page-wide{--edge: 20px}.page-head-row{flex-direction:column;align-items:stretch;gap:14px}.page-actions{flex-wrap:wrap;flex-shrink:1}}.section{position:relative;margin-top:36px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:12px}.section-meta{display:flex;align-items:center;gap:8px}.card-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px}.chips{display:flex;flex-wrap:wrap;gap:6px}.view-enter{animation:fade-in .24s var(--std) backwards}.title-switch{appearance:none;display:inline-flex;align-items:center;gap:8px;margin-left:-8px;padding:2px 8px;border:0;border-radius:10px;background:none;cursor:pointer;transition:background var(--fast) var(--std)}.title-switch:hover,.title-switch.is-open{background:var(--fill)}.title-switch svg{color:var(--ink-3)}.sphere{position:absolute;left:50%;transform:translate(-50%);pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--ink) 5.5%,transparent),color-mix(in srgb,var(--ink) 3%,transparent) 50%);-webkit-mask:url(/brand/atlas-mark.svg) center / contain no-repeat,linear-gradient(to bottom,#000 30%,rgba(0,0,0,.5) 52%,transparent 70%);-webkit-mask-composite:source-in;mask:url(/brand/atlas-mark.svg) center / contain no-repeat,linear-gradient(to bottom,#000 30%,rgba(0,0,0,.5) 52%,transparent 70%);mask-composite:intersect;animation:sphere-in 1.6s var(--out) backwards}@keyframes sphere-in{0%{opacity:0;transform:translate(-50%) scale(1.04)}}.util{position:relative;flex-shrink:0;width:0;overflow:hidden;overflow:clip;border-radius:18px;background:var(--paper);transition:width .46s var(--out),margin-left .46s var(--out),box-shadow .46s var(--out)}.util.is-open{width:var(--util-w, 392px);margin-left:8px;box-shadow:var(--shadow-rest)}.util.is-resizing,.util.is-resizing .util-inner{transition:none}.util-resize{position:absolute;top:0;bottom:0;left:0;z-index:6;width:7px;cursor:col-resize;outline:none}.util-resize:after{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:transparent;transition:background var(--fast) var(--std)}.util-resize:hover:after,.util-resize:focus-visible:after,.util.is-resizing .util-resize:after{background:var(--line-2)}body.is-resizing-util{cursor:col-resize;-webkit-user-select:none;user-select:none}.util-inner{display:flex;flex-direction:column;width:var(--util-w, 392px);height:100%;opacity:0;transform:translate(16px);transition:opacity .26s var(--std),transform .46s var(--out)}.util.is-open .util-inner{opacity:1;transform:none;transition-delay:60ms}.util-head{display:flex;align-items:center;gap:4px;height:50px;flex-shrink:0;padding:0 10px 0 12px}.util-head>.seg{flex:none}@container desk (max-width: 839px){.util{position:absolute;top:0;right:0;bottom:0;z-index:20;background:var(--paper);box-shadow:none}.util.is-open{margin-left:0;box-shadow:var(--shadow-rest),-24px 0 48px -20px color-mix(in srgb,var(--ink) 22%,transparent)}.util.is-open,.util-inner{width:min(var(--util-w, 392px),calc(100cqw - 36px))}}.util-body{display:flex;flex:1;flex-direction:column;min-height:0;animation:fade-in .22s var(--std) backwards}.util-scroll{display:flex;flex:1;flex-direction:column;gap:14px;min-height:0;padding:6px 16px 24px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.util-lede{margin:0}.util-label{margin:4px 4px -6px}.util-back{align-self:flex-start;margin-left:-2px}.lookup-list .row{padding-left:14px;border-radius:10px}.ai{display:flex;flex:1;flex-direction:column;min-height:0}.ai-scroll{flex:1;min-height:0;padding:4px 18px 12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.ai-empty{position:relative;display:flex;flex-direction:column;align-items:center;padding:48px 4px 16px;text-align:center}.ai-empty .t-sub{text-wrap:balance}.ai-orb{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--key-border);border-radius:14px;background:var(--key-face);box-shadow:0 3px 0 var(--key-ledge);color:var(--key-glyph)}.ai-orb-sm{width:24px;height:24px;flex-shrink:0;border-radius:7px;box-shadow:0 1.5px 0 var(--key-ledge)}.ai-suggest{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:24px}.suggest{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 14px;border:0;border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-rest);font-size:12.5px;line-height:17px;text-align:left;cursor:pointer;transition:box-shadow var(--med) var(--std),transform var(--med) var(--out)}.suggest svg{flex-shrink:0;color:var(--ink-4);transition:transform var(--med) var(--out),color var(--med) var(--std)}.suggest:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.suggest:hover svg{color:var(--ink);transform:translate(2px)}.ai-thread{display:flex;flex-direction:column;gap:28px;padding:8px 0 60px}.ai-turn{display:flex;flex-direction:column;gap:14px}.ai-q{align-self:flex-end;max-width:86%;padding:8px 14px;border-radius:16px;background:var(--fill-2);font-size:13px;line-height:19px}.ai-thinking{display:flex;align-items:center;gap:10px;font-size:13px}.ai-answer{display:flex;flex-direction:column;gap:12px}.read{margin:0;font-family:var(--font-read);font-size:13.5px;line-height:21px;letter-spacing:-.003em}.ai-list{display:flex;flex-direction:column;gap:6px;padding-left:18px}.ai-list b{font-weight:600}.ai-card{padding:14px 14px 6px}.ai-card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.ai-row{min-height:36px;padding:6px 0}.ai-card .row+.row{box-shadow:inset 0 1px 0 var(--line)}.ai-row .row-title{font-size:12.5px}.ai-source{margin:0}.ai-actions{display:flex;gap:8px}.ai-change{display:flex;flex-direction:column;gap:7px;font-family:var(--font-read)}.ai-change-status{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-2);font-size:12.5px;line-height:18px}.ai-change-act{display:inline-flex;align-items:center;gap:5px;height:22px;margin-right:-6px;padding:0 6px;border-radius:7px;color:var(--ink-3);font-size:12px;transition:color var(--fast) var(--std),background var(--fast) var(--std)}.ai-change-act:hover{background:var(--fill-2);color:var(--ink)}.ai-change-act svg{width:12px;height:12px}.ai-change-card,.ai-offer{position:relative;padding:11px 13px;border-radius:12px;background:var(--paper);box-shadow:var(--shadow-rest)}.ai-change.is-off .ai-change-card{opacity:.55}.ai-change-title{overflow:hidden;font-size:13.5px;font-weight:600;line-height:19px;letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap}.ai-change-course{color:var(--ink-2);font-weight:400}.ai-change-aside{margin-left:8px;color:var(--ink-3);font-weight:450}.ai-change-facts{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:9px;padding-top:9px;box-shadow:inset 0 1px 0 var(--line)}.ai-fact{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:12.5px;line-height:18px}.ai-fact svg{width:13px;height:13px;color:var(--ink-3)}.ai-fact.is-plain{color:var(--ink-3)}.ai-change-rows{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.ai-change-title+.ai-change-rows{margin-top:9px;padding-top:9px;box-shadow:inset 0 1px 0 var(--line)}.ai-change-rows li{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;min-width:0;font-size:12.5px;line-height:18px}.ai-change-glyph{display:grid;flex:none;align-self:center;color:var(--ink-3)}.ai-change-glyph svg{width:12px;height:12px}.ai-change-label{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.ai-change-detail{flex:0 1 auto;min-width:0;margin-left:auto;color:var(--ink-3);text-align:right}.ai-change-check{margin-top:9px;padding-top:9px;box-shadow:inset 0 1px 0 var(--line)}.ai-change-check-head{display:flex;align-items:center;gap:8px;width:100%;color:var(--ink-2);font-size:12.5px;line-height:18px;text-align:left}.ai-change-check-head:disabled{cursor:default}.ai-change-check-head>span:not(.mark){flex:1;min-width:0}.ai-change-check-head>svg{width:12px;height:12px;color:var(--ink-3);transition:transform var(--fast) var(--std)}.ai-change-check-head[aria-expanded=true]>svg{transform:rotate(180deg)}.ai-change-check.is-risk .ai-change-check-head{color:var(--risk)}.ai-change-notes{display:flex;flex-direction:column;gap:4px;margin:6px 0 0 22px;padding:0;color:var(--ink-2);font-size:12px;line-height:17px;list-style:none}.ai-change-note{margin:0;color:var(--ink-2);font-size:12px;line-height:17px}.ai-card-actions{position:relative;display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.ai-offer{font-family:var(--font-read)}.ai-offer-q{margin:0;font-size:13.5px;font-weight:600;line-height:19px;letter-spacing:-.005em;text-wrap:pretty}.ai-offer-answer{display:flex;align-items:center;gap:6px;margin:8px 0 0;color:var(--ink-3);font-size:12.5px}.ai-offer-answer.is-yes{color:var(--ink-2)}.ai-offer-answer svg{width:13px;height:13px}.ai-offer.is-settled .ai-card-actions{opacity:.45}.ai-prose{font-family:var(--font-read);font-size:13.5px;line-height:21px;letter-spacing:-.003em}.ai-prose>:first-child{margin-top:0}.ai-prose>:last-child{margin-bottom:0}.ai-prose p{margin:0 0 10px}.ai-prose ul,.ai-prose ol{display:flex;flex-direction:column;gap:6px;margin:0 0 10px;padding-left:18px}.ai-prose strong{font-weight:600}.ai-prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:2px}.code-link{display:inline;color:var(--ink);font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ink) 25%,transparent);text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-color var(--fast) var(--std)}.code-link:hover{text-decoration-color:var(--ink)}.code-link.is-program{font-weight:inherit;letter-spacing:inherit;font-variant-numeric:normal}.ai-steps{display:flex;flex-direction:column;gap:4px}.ai-steps-toggle{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;height:22px;margin-left:-6px;padding:0 6px;border-radius:7px;color:var(--ink-3);font-size:12px;transition:color var(--fast) var(--std),background var(--fast) var(--std)}.ai-steps-toggle:hover{background:var(--fill-2);color:var(--ink-2)}.ai-steps-toggle svg{width:12px;height:12px;transition:transform .16s ease}.ai-steps-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.ai-steps-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.ai-step{display:flex;align-items:center;gap:8px;color:var(--ink-2);font-size:12.5px}.ai-step.is-failed{color:var(--ink-3)}.ai-step-mark{display:inline-grid;place-items:center;width:14px;height:14px;color:var(--ink-3)}.ai-step-mark svg{width:12px;height:12px}.spinner{width:11px;height:11px;border:1.5px solid var(--line-2);border-top-color:var(--ink-2);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ai-changes{display:flex;flex-direction:column;gap:10px}.ai-ask{padding:11px 7px 7px;border-radius:12px;font-family:var(--font-read)}.ai-ask.is-answered{opacity:.7}.ai-ask-prompt{margin:0 6px 8px;font-size:13.5px;font-weight:600;line-height:19px;letter-spacing:-.005em}.ai-ask-option{width:100%;border-radius:10px;text-align:left;cursor:pointer}.ai-ask-option:hover:not(:disabled){background:var(--fill)}.ai-ask-option.is-picked{background:var(--fill-2)}.ai-ask-key{--glyph-box: 20px;width:20px;border-radius:6px;background:var(--fill-2);color:var(--ink-2);font-size:11px}.ai-ask-other{display:flex;gap:8px;padding:4px 6px}.composer{display:flex;flex-direction:column;gap:6px;margin:0 12px 12px;padding:10px 10px 8px 14px;border-radius:16px;background:var(--paper-raised);box-shadow:var(--shadow-composer);transition:box-shadow var(--med) var(--std)}.composer:focus-within{box-shadow:var(--shadow-composer-focus)}.composer textarea{width:100%;min-height:40px;border:0;outline:none;background:none;font-size:13.5px;line-height:20px;resize:none}.composer textarea::placeholder{color:var(--ink-3)}.composer-foot{display:flex;align-items:center;justify-content:flex-end;gap:6px}.composer-mic{appearance:none;position:relative;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:none;color:var(--ink-2);cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.composer-mic svg{width:16px;height:16px}.composer-mic:hover{background:var(--fill-2);color:var(--ink)}.composer-mic.is-on{background:var(--risk-fill);color:var(--risk)}.composer-mic.is-on:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 1px var(--risk);animation:composer-mic-ring 1.6s var(--std) infinite}.composer-mic.is-writing{color:var(--ink-2);cursor:progress;animation:composer-mic-writing 1.2s var(--std) infinite alternate}@keyframes composer-mic-writing{to{opacity:.35}}@keyframes composer-mic-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}@media(prefers-reduced-motion:reduce){.composer-mic.is-on:after{animation:none;opacity:.6}.composer-mic.is-writing{animation:none;opacity:.5}}.ai-signin{margin:0 12px 8px;padding:0 4px;color:var(--ink-3);font-size:12px;line-height:17px}.ai-signin .link{font-size:12px}.composer .key{min-width:32px;height:30px}.composer .key:disabled{opacity:.45;cursor:default}.composer .key-send:not(:disabled){border-color:var(--send-edge);background:var(--send);box-shadow:0 2px 0 0 var(--send-ledge);color:#fff}.composer .key-send:not(:disabled):is(:active,.is-down){background:var(--send-down);box-shadow:0 0 0 0 var(--send-ledge)}.alert-row{position:relative;display:flex;align-items:flex-start;gap:12px;padding:11px 8px 11px 10px;border-radius:10px;transition:background var(--fast) var(--std)}.alert-row:hover{background:var(--fill)}.alert-row+.alert-row{box-shadow:inset 0 1px 0 var(--line)}.alert-row:hover+.alert-row,.alert-row:hover{box-shadow:none}.alert-hit{appearance:none;position:absolute;inset:0;border:0;border-radius:10px;background:none;cursor:pointer}.alert-glyph{display:grid;place-items:center;width:18px;height:18px;margin-top:1px;color:var(--ink-3)}.alert-glyph.tone-attn{color:var(--attn)}.alert-glyph.tone-risk{color:var(--risk)}.alert-title{font-size:13px;font-weight:500;line-height:18px}.alert-text{margin-top:2px;color:var(--ink-2);font-size:12px;line-height:17px}.alert-end{position:relative;z-index:1;display:flex;align-items:center;margin:-4px -2px 0 0}*:hover>.alert-end .flag,.alert-row:focus-within>.alert-end .flag,.alert-end .flag.is-open{opacity:1}.alert-row:not(.is-dismissed)>.alert-end{position:absolute;top:7px;right:6px;margin:0;padding-left:18px;border-radius:0 9px 9px 0}.alert-row:not(.is-dismissed):focus-within>.alert-end,.alert-row:not(.is-dismissed)>.alert-end:has(.flag.is-open){background:linear-gradient(to right,transparent,var(--paper) 18px)}.alert-row:not(.is-dismissed):hover>.alert-end{background:linear-gradient(to right,transparent,var(--fill) 18px),linear-gradient(to right,transparent,var(--paper) 18px)}.alert-row:not(.is-dismissed)>.alert-end .flag:not(.is-on,.is-open){pointer-events:none}.alert-row:not(.is-dismissed):is(:hover,:focus-within)>.alert-end .flag{pointer-events:auto}.alert-row:not(.is-dismissed):has(>.alert-end .flag.is-on)>.row-main{padding-right:52px}.alert-glyph.tone-exception{width:18px;height:18px;border-radius:6px;background:var(--info-fill);color:var(--info)}.alert-glyph.tone-exception svg{width:11px;height:11px}.alert-row.is-dismissed .alert-title,.alert-row.is-dismissed .alert-text{color:var(--ink-3)}.alert-restore{margin-top:2px}.agroups{display:flex;flex-direction:column;gap:8px}.agroup{border-radius:12px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.agroup-head{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 12px 10px 14px;border-radius:12px;text-align:left;transition:background var(--fast) var(--std)}.agroup-head:hover{background:var(--fill)}.agroup.is-open .agroup-head{border-radius:12px 12px 0 0}.agroup-dot{flex:none;width:8px;height:8px;margin-inline:5px 7px;border-radius:50%;background:var(--ink-4)}.agroup-dot.tone-risk{background:var(--risk)}.agroup-dot.tone-attn{background:var(--attn)}.agroup-dot.tone-info{background:var(--ink-3)}.agroup-dot.tone-quiet{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink-4)}.agroup-text{display:flex;flex:1;flex-direction:column;min-width:0}.agroup-label{font-size:13px;font-weight:600;line-height:18px}.agroup-sum{overflow:hidden;color:var(--ink-3);font-size:12px;line-height:17px;text-overflow:ellipsis;white-space:nowrap}.agroup-count{flex:none;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--fill-2);color:var(--ink-2);font-size:11px;font-weight:600;line-height:20px;text-align:center}.agroup-body{padding:4px;box-shadow:inset 0 1px 0 var(--line)}.alert-bundle+.alert-row,.alert-row+.alert-bundle,.alert-bundle+.alert-bundle{box-shadow:inset 0 1px 0 var(--line)}.alert-bundle-head{width:100%;text-align:left;cursor:pointer}.alert-bundle-head .pr-chev{margin-top:1px}.alert-bundle-body{margin:0 0 4px 30px;border-left:1px solid var(--line)}.alert-fixes{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.alert-fixes .btn{justify-content:flex-start;min-width:0;max-width:100%;white-space:nowrap}.alert-fix-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.alert-fix-cost{display:inline-flex;flex:none;align-items:center;gap:3px;margin-right:-2px;padding-left:7px;box-shadow:inset 1px 0 color-mix(in srgb,currentColor 25%,transparent);font-size:11px;opacity:.85}.alert-fix-cost svg{width:11px;height:11px}.course{gap:16px}.course-code{margin-top:6px;font-size:24px;line-height:30px}.course-actions{display:flex;align-items:center;gap:8px}.course-block{display:flex;flex-direction:column;gap:8px}.course-block .t-small{margin:0}.course-outside{margin:8px 0 0;padding:8px 10px;border-radius:var(--r-sm);background:var(--fill);color:var(--ink-2);text-wrap:pretty}.course-last-printed .brow-facts{grid-template-columns:minmax(0,1fr);gap:2px}.course-last-printed .brow-facts dd+dt{margin-top:8px}.course-last-printed .brow-desc{font-size:13px;line-height:20px}.course-fact{font-weight:400;white-space:normal;text-overflow:clip;text-wrap:pretty}.course-fact+.clamp-more{margin-top:2px}.standing{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--r-md);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);font-weight:500}.standing{flex-wrap:wrap}.standing-source{margin-left:auto;color:var(--ink-3);font-weight:400}.standing-action{margin-left:auto;font-size:12.5px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:16px}.facts>div{display:flex;flex-direction:column;gap:4px;font-size:12.5px}.atlas-bar{display:flex;align-items:center;justify-content:flex-end;gap:2px;height:40px;flex-shrink:0;padding:0 0 0 12px}.atlas-tabs{display:flex;justify-content:flex-end;gap:2px;min-width:0;overflow:hidden}.atlas-tab{position:relative;display:flex;align-items:center;flex:0 1 180px;min-width:88px;height:28px;border-radius:8px;color:var(--ink-2);transition:background var(--fast) var(--std),color var(--fast) var(--std)}.atlas-tab:hover{background:var(--fill);color:var(--ink)}.atlas-tab.is-active{background:var(--fill-2);color:var(--ink)}.atlas-tab-label{appearance:none;flex:1;min-width:0;height:100%;padding:0 10px;overflow:hidden;border:0;background:none;color:inherit;font-size:12px;font-weight:500;text-align:left;white-space:nowrap;cursor:pointer;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent)}.atlas-tab:is(:hover,:focus-within) .atlas-tab-label{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent calc(100% - 28px));mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent calc(100% - 28px))}.atlas-tab-close{appearance:none;position:absolute;top:2px;right:2px;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:none;color:var(--ink-3);cursor:pointer;opacity:0;transition:opacity var(--fast) var(--std),color var(--fast) var(--std)}.atlas-tab:is(:hover,:focus-within) .atlas-tab-close{opacity:1}.atlas-tab-close:hover{color:var(--ink)}.atlas-tab-close:focus-visible{outline:none;color:var(--ink)}.atlas-tab-close svg{width:14px;height:14px}.atlas-ai{appearance:none;display:inline-flex;align-items:center;gap:6px;flex-shrink:0;height:28px;margin-left:2px;padding:0 12px 0 10px;border:0;border-radius:8px;background:transparent;color:var(--ink-2);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std),transform 90ms var(--std)}.atlas-ai svg{width:14px;height:14px}.atlas-ai:hover,.atlas-ai.is-active{background:var(--fill-2);color:var(--ink)}.atlas-ai.is-down{transform:scale(.96)}.atlas-bar .icon-btn{width:28px;height:28px;border-radius:8px}.chats-pop{padding:0;border-radius:16px}.chats-head{position:sticky;top:0;z-index:1;display:block;width:100%;margin:0;padding:14px 18px 13px;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:none;background:var(--paper);color:var(--ink);font:inherit;font-size:13.5px;caret-color:var(--ink);appearance:none}.chats-head::placeholder{color:var(--ink-2);font-weight:500;opacity:1}.chats-head::-webkit-search-cancel-button{appearance:none}.chats-head:disabled{cursor:default}html[data-theme=dark] .chats-head{caret-color:#0a84ff}.chats-group{padding:6px}.chats-group+.chats-group{border-top:1px solid var(--line)}.chats-label{padding:8px 12px 6px;color:var(--ink-3);font-size:12.5px;font-weight:500}.chats-row{appearance:none;display:flex;align-items:center;gap:16px;width:100%;height:38px;padding:0 12px;border:0;border-radius:9px;background:none;color:var(--ink);font-size:13.5px;text-align:left;cursor:pointer}.chats-row+.chats-row{margin-top:2px}.chats-row:hover,.chats-row:focus-visible,.chats-row.is-active{outline:none;background:var(--fill-2)}.chats-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chats-age{flex-shrink:0;color:var(--ink-3);font-size:12.5px}.chats-empty{margin:0;padding:10px 12px 6px;color:var(--ink-3);font-size:13px}.palette{position:fixed;left:50%;top:13vh;z-index:41;display:flex;flex-direction:column;width:min(620px,calc(100vw - 32px));max-height:66vh;overflow:hidden;border-radius:var(--r-xl);background:var(--paper);box-shadow:var(--shadow-float);transform:translate(-50%);animation:palette-in .36s var(--out) backwards}@keyframes palette-in{0%{opacity:0;transform:translate(-50%) translateY(-6px) scale(.985)}}.palette-input{display:flex;align-items:center;gap:12px;height:56px;flex-shrink:0;padding:0 18px;box-shadow:inset 0 -1px 0 var(--line)}.palette-input>svg{width:18px;height:18px;color:var(--ink-3)}.palette-input input{flex:1;height:100%;border:0;outline:none;background:none;font-size:15px}.palette-input input::placeholder{color:var(--ink-3)}.palette-recents{display:flex;gap:6px;flex-shrink:0;padding:12px 14px 4px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent)}.recent{appearance:none;display:inline-flex;align-items:center;gap:7px;flex-shrink:0;height:30px;padding:0 12px 0 8px;border:0;border-radius:999px;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);font-size:12px;font-weight:500;cursor:pointer;transition:box-shadow var(--fast) var(--std),background var(--fast) var(--std)}.recent:hover{background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-2)}.palette-list{flex:1;overflow:auto;padding:4px 8px 8px}.palette-label{padding:12px 10px 6px}.cmd{appearance:none;display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:6px 10px;border:0;border-radius:12px;background:none;text-align:left;cursor:pointer}.cmd.is-active{background:var(--fill-2)}.cmd-icon{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border:1px solid var(--key-border);border-radius:8px;background:var(--key-face);box-shadow:0 1.5px 0 var(--key-ledge);color:var(--key-glyph)}.cmd-icon svg{width:15px;height:15px}.cmd-icon:has(.tile-tone){border:0;box-shadow:none;background:none}.cmd-hint{display:flex;flex-shrink:0}.palette-foot{display:flex;align-items:center;gap:16px;height:40px;flex-shrink:0;padding:0 16px;box-shadow:inset 0 1px 0 var(--line);color:var(--ink-3);font-size:11.5px}.palette-foot>span{display:inline-flex;align-items:center;gap:6px}.toast{position:fixed;left:50%;bottom:60px;z-index:60;display:flex;align-items:center;gap:12px;min-width:320px;max-width:480px;padding:10px 10px 10px 14px;border-radius:14px;background:var(--paper);box-shadow:var(--shadow-float);transform:translate(-50%);animation:toast-in .52s var(--out) backwards}.toast-text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.toast-actions{display:inline-flex;flex:none;gap:2px;margin-left:auto}.toast-actions:empty{display:none}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px);filter:blur(4px)}}.toast.is-leaving{pointer-events:none;animation:toast-out .26s var(--std) forwards}@keyframes toast-out{to{opacity:0;transform:translate(-50%) translateY(6px);filter:blur(2px)}}.drop{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;background:color-mix(in srgb,var(--canvas) 72%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-align:center;animation:fade-in .18s var(--std) backwards;pointer-events:none}.drop-key{display:grid;place-items:center;width:60px;height:60px;margin-bottom:14px;border-radius:16px;background:var(--ink);box-shadow:0 3px color-mix(in srgb,var(--ink) 55%,#000),0 14px 30px -12px #00000073;color:var(--paper)}.drop-key svg{width:24px;height:24px}.drop-title{font-size:22px;font-weight:650;letter-spacing:-.02em}.drop .t-small{max-width:380px;text-wrap:balance}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 8px}.sheet-body{display:flex;flex-direction:column;gap:18px;padding:16px 24px 24px}.sheet-foot{display:flex;align-items:center;gap:8px;padding:14px 20px 18px 24px;box-shadow:inset 0 1px 0 var(--line)}.field-group{display:flex;flex-direction:column;gap:8px}.bug-note{width:100%;min-height:120px;padding:10px 14px;border:0;border-radius:var(--r-sm);outline:none;background:var(--paper);box-shadow:0 0 0 1px var(--line-2);font-size:13.5px;line-height:20px;resize:vertical;transition:box-shadow var(--fast) var(--std)}.bug-note::placeholder{color:var(--ink-3)}.bug-note:focus{box-shadow:0 0 0 1px var(--focus)}.bug-add{display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border-radius:var(--r-sm);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink-2);font-size:13px;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.bug-add:hover,.bug-add:focus-visible{outline:none;background:var(--fill-2);color:var(--ink)}.bug-add svg{width:15px;height:15px}.bug-add .t-small{color:var(--ink-3)}.bug-shot{position:relative;overflow:hidden;border-radius:var(--r-sm);box-shadow:0 0 0 1px var(--line-2)}.bug-shot img{display:block;width:100%;max-height:200px;object-fit:cover;object-position:top}.bug-shot-open{appearance:none;display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}.bug-shot-open:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.bug-shot-wait{display:grid;place-items:center;width:100%;max-height:200px;aspect-ratio:var(--shot-ratio, 16 / 10);border-radius:var(--r-sm)}.bug-shot-wait-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;color:var(--ink-3);font-size:12.5px}.bug-zoom{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:32px;background:#0009;cursor:zoom-out;animation:fade-in .18s var(--std) backwards}.bug-zoom img{max-width:100%;max-height:100%;border-radius:var(--r-md);box-shadow:var(--shadow-lift);animation:rise .26s var(--out) backwards}.bug-shot-tag{position:absolute;top:8px;left:8px;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--paper) 88%,transparent);box-shadow:var(--shadow-rest);color:var(--ink-2);font-size:11.5px;font-weight:500}.bug-shot-x{position:absolute;top:8px;right:8px;box-shadow:var(--shadow-rest)}.bug-optional{margin-left:4px;color:var(--ink-4);font-weight:500;letter-spacing:0;text-transform:none}.bug-help{margin:2px 0 0;color:var(--ink-3)}.bug-error{margin:-6px 0 0;color:var(--risk);font-size:13px}.account-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-row-icon{display:grid;place-items:center;width:16px;height:16px;color:var(--ink-3)}.account-row-icon svg{width:15px;height:15px}.account-delete{color:var(--risk)}.privacy-summary{display:flex;flex-direction:column;gap:6px;padding:16px 2px 0;border-top:1px solid var(--line)}.privacy-note{margin:0;font-size:12px;line-height:17px;color:var(--ink-3);text-wrap:pretty}.privacy-foot{display:flex;align-items:center;gap:6px;font-size:11.5px;line-height:16px;color:var(--ink-3)}.privacy-foot .link{color:inherit;font-size:inherit}.privacy-foot .link:hover{color:var(--ink)}.burst-anchor{position:absolute;width:0;height:0;pointer-events:none;z-index:60}.burst{position:absolute;left:-60px;top:-60px;width:120px;height:120px;overflow:visible}@media(max-width:1180px){.util.is-open,.util-inner{width:min(var(--util-w, 340px),calc(100cqw - 36px))}.page{padding-left:36px;padding-right:36px}}.side-cta{display:flex;align-items:center;gap:10px;height:34px;padding:0 8px 0 7px;border-radius:var(--r-sm);color:var(--ink-2);font-size:13.5px;text-decoration:none;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.side-cta-slot{display:grid;flex:none;place-items:center;width:22px;height:22px;border:1px dashed var(--ink-4);border-radius:6px;color:var(--ink-3);transition:border-color var(--fast) var(--std),color var(--fast) var(--std)}.side-cta-slot svg{width:12px;height:12px}.side-cta b{overflow:hidden;font-weight:400;text-overflow:clip}.side.is-rail .side-cta>b{position:absolute}.side-cta:hover{background:var(--fill);color:var(--ink)}.side-cta.is-active{background:var(--fill-2);color:var(--ink)}.side-cta.is-active b{font-weight:500}.side-cta:is(:hover,.is-active) .side-cta-slot{border-color:var(--ink-3);color:var(--ink)}.menu-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 6px 8px 10px}.menu-legal{display:flex;gap:12px;padding:8px 10px 4px;font-size:11.5px}.menu-legal a{color:var(--ink-3);text-decoration:none}.menu-legal a:hover{color:var(--ink)}.row-chev{display:grid;color:var(--ink-4);transition:transform var(--med) var(--out),color var(--fast) var(--std)}.row:hover .row-chev{color:var(--ink-2);transform:translate(2px)}.req-chev{display:grid;width:16px;color:var(--ink-3);transition:transform .36s var(--spring)}.req-chev-empty{visibility:hidden}.pad{padding:16px;margin:0}.chip{appearance:none;display:inline-flex;align-items:center;gap:7px;max-width:100%;height:30px;padding:0 10px 0 9px;border:0;border-radius:9px;background:var(--paper);box-shadow:var(--shadow-rest);color:var(--ink);font-size:12.5px;text-align:left;cursor:pointer;transition:box-shadow var(--fast) var(--std),transform var(--med) var(--out),background var(--fast) var(--std)}.chip:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.chip.is-active{box-shadow:0 0 0 1.5px var(--ink)}.chip-code{flex-shrink:0}.chip-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.chip-term,.chip-note{flex-shrink:0;color:var(--ink-3);font-size:11px;font-variant-numeric:tabular-nums}.chip-more{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2)}.chip-slot{border:1px dashed var(--ink-4);background:transparent;box-shadow:none;color:var(--ink-3);cursor:default}.chip-slot svg{width:13px;height:13px}.chip-slot:hover{transform:none;box-shadow:none}.degree-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.status,.proj{display:flex;flex-direction:column;padding:20px 22px 14px}.status-num{display:flex;align-items:baseline;gap:10px;margin-top:12px}.status-big{font-size:48px;line-height:50px;font-weight:600;letter-spacing:-.04em}.status-of{color:var(--ink-3);font-size:15px;font-weight:500}.status-cells{margin-top:18px}.status-cells .cells{gap:10px}.status-cells .cells-group{grid-template-columns:repeat(5,13px);gap:4px}.status-cells .cell{width:13px;height:13px;border-radius:4px}.status-cells .legend .cell{width:10px;height:10px}.status-rows{margin:14px -10px 0}.status-row,.paper>.list.status-rows>.row{min-height:40px;padding:8px 10px;border-radius:10px}.status-row,.list.status-rows>.row+.row{position:relative;box-shadow:none}.status-row+.status-row:before{content:"";position:absolute;top:0;right:10px;left:10px;height:1px;background:var(--line)}.status-row:hover:before,.status-row:hover+.status-row:before{display:none}.status-row .row-meta{color:var(--ink)}.proj-head{display:flex;align-items:center;justify-content:space-between}.proj-info{display:grid;color:var(--ink-3);cursor:help}.proj-term{margin-top:12px;font-size:40px;line-height:46px;font-weight:600;letter-spacing:-.035em}.proj-late{margin:4px 0 0;color:var(--attn);font-size:12.5px;line-height:18px}.proj-legend{display:flex;gap:16px;margin-top:16px;color:var(--ink-2);font-size:11.5px}.proj-legend>span{display:inline-flex;align-items:center;gap:7px}.lg-line{width:16px;height:2px;border-radius:2px;background:var(--ink)}.lg-line:not(.lg-dash){background:var(--good)}.lg-dash{background:repeating-linear-gradient(90deg,var(--ink-3) 0 3px,transparent 3px 6px)}.pace,.overtime{display:block;width:100%;height:auto;margin-top:8px;overflow:visible}.pace-goal{stroke:var(--line-2);stroke-dasharray:2 4}.pace-label{fill:var(--ink-3);font-size:10px;font-weight:500}.pace-target{stroke:var(--line-2);stroke-dasharray:3 3}.pace-target.is-late{stroke:color-mix(in srgb,var(--attn) 55%,transparent)}.pace-target-label{letter-spacing:.14em;font-size:9px;font-weight:600}.pace-target-label.is-late{fill:var(--attn)}.pace-line{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.4s var(--out) .3s forwards}.chart-box{width:100%;margin-top:8px}.chart-box .pace,.chart-box .overtime{margin-top:0}.pace-dash{stroke:var(--ink-3);stroke-width:1.6;stroke-dasharray:3 4;stroke-dashoffset:0;animation:fade-in .9s var(--std) .4s backwards}.pace-now{stroke-width:3}.pace-start{fill:var(--good);stroke:none;animation:pop-check .52s var(--spring) .3s backwards;transform-box:fill-box;transform-origin:center}.lg-dot{width:8px;height:8px;border-radius:50%;background:var(--good)}@keyframes draw{to{stroke-dashoffset:0}}.pace-dot{fill:var(--paper);stroke:var(--ink);stroke-width:2;animation:pop-check .52s var(--spring) 1.2s backwards;transform-box:fill-box;transform-origin:center}.pace-tick{fill:var(--ink-3);font-size:10px;font-variant-numeric:tabular-nums}.pace-tick.is-target{font-weight:600}.pace-tick.is-late{fill:var(--attn)}.pace-tick.is-end{fill:var(--ink);font-weight:600}.facts-rows{display:flex;flex-direction:column;margin-top:12px}.facts-rows>div{display:flex;align-items:baseline;justify-content:space-between;padding:7px 0;font-size:12.5px;font-weight:500}.facts-rows>div+div{box-shadow:inset 0 1px 0 var(--line)}.dreqs{overflow:hidden}.dreq+.dreq{box-shadow:inset 0 1px 0 var(--line)}.dreq-line{position:relative}.dreq-head{gap:12px;min-height:48px;padding:11px 12px 11px 14px;transition:background var(--fast) var(--std)}.dreq-head{align-items:flex-start}.dreq-head>.req-n,.dreq-head>.dreq-value{margin-top:4px}.dreq-head>.mark{margin-top:6px}.dreq-head>.req-text{margin-top:5px}.dreq-head>.req-chev{margin-top:2px}.dreq-head.is-toggle{cursor:pointer}.dreq-head.is-toggle:hover{background:var(--fill)}.dreq-value{display:inline-flex;flex:none;justify-content:flex-end;min-width:56px;font-size:12.5px;white-space:nowrap}.inline-flag{display:inline-flex;flex:none}.dreq-head .req-chev{display:grid;flex:none;place-items:center;width:24px;height:24px;margin-left:-4px;border-radius:7px}button.req-chev:hover{background:var(--fill-2);color:var(--ink)}.req-n{width:18px;flex-shrink:0;color:var(--ink-4);font-size:11px}.req-text{flex:1;min-width:0;font-size:13px;line-height:18px}.dreq.is-open .req-chev,.req.is-open .req-chev{transform:rotate(180deg)}.dreq.is-open .dreq-head{background:var(--paper-2)}.dreq-body{padding:4px 16px 16px 76px;background:var(--paper-2)}.breadth{display:flex;flex-direction:column;gap:6px}.br{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--r-sm);background:var(--paper);box-shadow:var(--shadow-rest);font-size:12.5px}.br-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-2)}.pcard{position:relative;display:flex;flex-direction:column;gap:18px;min-height:210px;padding:16px 18px}.pcard-hit{appearance:none;position:absolute;inset:0;z-index:0;border:0;border-radius:var(--r-lg);background:none;cursor:pointer}.pcard-top{display:flex;align-items:center;justify-content:space-between;pointer-events:none}.pcard-id{display:flex;flex-direction:column;gap:3px;pointer-events:none}.pcard-name{font-size:18px;line-height:23px;font-weight:600;letter-spacing:-.02em}.pcard-foot{display:flex;flex-direction:column;gap:9px;margin-top:auto}.pcard-line{display:flex;align-items:baseline;justify-content:space-between;gap:8px;pointer-events:none}.pcard-actions{position:relative;z-index:1;display:flex;gap:16px;padding-top:10px;box-shadow:inset 0 1px 0 var(--line)}.pcard-actions .link{font-size:12px}.psum{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:28px;padding:20px 22px}.psum-left{display:flex;flex-direction:column;gap:16px}.summary-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:14px}.datum{display:flex;flex-direction:column;gap:6px}.datum-num{font-size:30px;line-height:34px;font-weight:600;letter-spacing:-.035em}.datum-note{display:inline-flex;align-items:center;gap:6px;margin-top:-2px;white-space:nowrap}.datum-link{border-radius:6px}.datum-link:hover .datum-num{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-color:var(--line-2)}.psum-foot{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.psum-foot>.t-small{flex:none;white-space:nowrap;line-height:18px}.psum-foot .legend{flex:1 1 auto;flex-wrap:wrap;min-width:0}.psum-right{display:flex;flex-direction:column;padding-left:24px;box-shadow:inset 1px 0 0 var(--line)}.ot-done{animation:fade-in .9s var(--std) .2s backwards}.ot-stop-top{stop-color:var(--good);stop-opacity:.32}.ot-stop-bottom{stop-color:var(--good);stop-opacity:.03}.ot-plan{fill:color-mix(in srgb,var(--good) 7%,transparent);animation:fade-in .9s var(--std) .4s backwards}.ot-line,.pace-plan,.pace-now{stroke:var(--good)}.ot-dash{stroke:color-mix(in srgb,var(--good) 60%,var(--ink-3))}.ot-dot{fill:var(--paper);stroke:var(--good);stroke-width:2}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.two-col .section{margin-top:30px}.grow-row{align-items:flex-start;min-height:60px;padding:12px 14px}.grow-row .mark{margin-top:1px}.grow-row :is(.row-title,.row-sub),.req-head .row-title{white-space:normal;text-wrap:pretty}.grow-row .row-meta{flex-direction:column;align-items:flex-end;gap:6px}.reqs{overflow:hidden}.req+.req{box-shadow:inset 0 1px 0 var(--line)}.req-line{position:relative}.req-head{align-items:flex-start;min-height:60px;padding:12px 18px}.req-head>.mark{margin-top:1px}.req-head .row-meta{gap:14px;min-height:20px}.req.is-open .req-head{background:var(--paper-2)}.req-body{display:flex;flex-direction:column;gap:14px;padding:4px 18px 18px 48px;background:var(--paper-2)}.limits{display:flex;flex-direction:column;border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-rest)}.limit{display:flex;align-items:center;gap:10px;padding:9px 12px;font-size:12.5px}.limit+.limit{box-shadow:inset 0 1px 0 var(--line)}.limit-text{flex:1}.wording summary{display:inline-flex;align-items:center;gap:4px;color:var(--ink-2);font-size:12px;font-weight:500;cursor:pointer;list-style:none}.wording summary::-webkit-details-marker{display:none}.wording summary:before{content:"";flex:none;width:11px;height:11px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='2.5 2.5 11 11' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 4 4 4-4 4'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='2.5 2.5 11 11' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 4 4 4-4 4'/%3E%3C/svg%3E") center / contain no-repeat;transition:transform var(--med) var(--spring)}.wording[open] summary:before{transform:rotate(90deg)}.wording summary:hover{color:var(--ink)}.wording p{margin:8px 0 0;padding:10px 12px;border-radius:var(--r-sm);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);font-family:var(--font-read);font-size:12.5px;line-height:19px;animation:rise .42s var(--out) backwards}.seg-ico-md svg{width:14px;height:14px}.seg-lg .seg-item:has(.seg-ico-md){padding:0 14px}.subject-groups{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;width:100%}.subject-name{margin-bottom:8px;font-size:12.5px;font-weight:600;letter-spacing:-.005em}.choose-card.is-wide{grid-column:1 / -1}.choose-title{appearance:none;padding:0;border:0;background:none;text-align:left;cursor:pointer}.choose-title:hover{text-decoration:underline;text-decoration-color:var(--ink-4);text-underline-offset:3px}.disclosure-head{appearance:none;display:inline-flex;align-items:center;gap:8px;margin:0 0 0 -4px;padding:4px 8px 4px 4px;border:0;border-radius:8px;background:none;cursor:pointer;transition:background var(--fast) var(--std)}.disclosure-head:hover{background:var(--fill)}.disclosure-chev{display:grid;color:var(--ink-3);transition:transform .32s var(--spring)}.disclosure-head[aria-expanded=true] .disclosure-chev{transform:rotate(90deg)}.disclosure-body{padding-top:12px}.notes{display:flex;flex-direction:column;gap:8px;margin:0;padding:14px 18px 14px 34px;border-radius:var(--r-lg);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);font-family:var(--font-read);font-size:12.5px;line-height:19px}.engine-note{margin-top:28px;color:var(--ink-3)}.pool-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-rest);color:var(--ink);font-size:12.5px;text-decoration:none;transition:box-shadow var(--fast) var(--std)}.pool-link>svg:first-child{width:14px;height:14px;color:var(--ink-3)}.pool-link>span:nth-child(2){flex:1}.pool-go{color:var(--ink-2);font-weight:500}.pool-link:hover{box-shadow:var(--shadow-lift)}.ccards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.ccard{appearance:none;display:flex;align-items:flex-start;gap:12px;padding:14px;border:0;color:inherit;text-align:left;cursor:pointer}.ccard .row-main{gap:2px}.ccard-title{display:-webkit-box;overflow:hidden;font-size:12.5px;line-height:17px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ccard .t-small{margin-top:4px;color:var(--ink-3)}.ccard-ico{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;border-radius:50%;background:var(--fill-2);color:var(--ink-2)}.ccard-ico svg{width:14px;height:14px}.ccard-ico.is-now{background:var(--ink);color:var(--paper)}.ccard-ico.is-locked,.ccard-ico.is-needs{background:var(--risk-fill);color:var(--risk)}.ccard-ico.is-uncertain{background:var(--attn-fill);color:var(--attn)}.choose{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.choose-card{display:flex;flex-direction:column;gap:16px;padding:18px}.choose-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.count-row{align-items:flex-start;padding:14px 16px}.plan-progs{display:flex;flex-wrap:wrap;gap:6px}.prog-chip{appearance:none;display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 4px 0 5px;border:0;border-radius:999px;background:var(--paper);box-shadow:var(--shadow-rest);font-size:12px;font-weight:500}.prog-chip a{color:var(--ink);text-decoration:none}.prog-chip a:hover{text-decoration:underline;text-underline-offset:3px}.prog-chip button{appearance:none;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:none;color:var(--ink-3);cursor:pointer}.prog-chip button:hover{background:var(--fill-2);color:var(--ink)}.prog-chip button svg{width:11px;height:11px}.prog-add{padding:0 12px 0 10px;background:transparent;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink-2);cursor:pointer}.prog-add svg{width:13px;height:13px}.prog-add:hover{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink-3)}.plan-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}.plan-sum,.plan-look{display:flex;flex-direction:column;padding:18px 20px}.plan-sum-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.plan-status{margin:14px 0 6px;font-size:20px;line-height:26px;font-weight:600;letter-spacing:-.02em}.plan-sum .t-sub{font-size:12.5px}.plan-cells{margin-top:16px}.plan-cells .cells{gap:9px}.plan-cells .cells-group{grid-template-columns:repeat(5,12px);gap:4px}.plan-cells .cell{width:12px;height:12px;border-radius:4px}.plan-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;color:var(--ink-2);font-size:12px}.plan-legend>span{display:inline-flex;align-items:center;gap:6px}.plan-legend b{color:var(--ink);font-weight:600}.plan-legend .cell{width:10px;height:10px;border-radius:3px;animation:none}.checks{display:flex;flex-direction:column;margin:16px -8px 0;padding-top:8px;box-shadow:inset 0 1px 0 var(--line)}.check{appearance:none;display:flex;align-items:center;gap:10px;min-height:34px;padding:6px 8px;border:0;border-radius:9px;background:none;text-align:left;cursor:pointer;transition:background var(--fast) var(--std)}.check:hover{background:var(--fill)}.check-glyph{display:grid;color:var(--attn)}.check-glyph.tone-risk{color:var(--risk)}.check-glyph svg{width:14px;height:14px}.check-title{flex:1;min-width:0;overflow:hidden;font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.check-term{flex-shrink:0;color:var(--ink-3)}.check:hover .row-chev{color:var(--ink-2);transform:translate(2px)}.insights{display:flex;flex-direction:column;margin:8px -8px 0}.insight{display:flex;align-items:flex-start;gap:10px;padding:10px 8px;border-radius:10px}.insights>*+*{box-shadow:inset 0 1px 0 var(--line)}.insight-dot{width:7px;height:7px;flex-shrink:0;margin-top:6px;border-radius:50%;background:var(--ink-3)}.insight-dot.tone-attn{background:var(--attn)}.insight-dot.tone-risk{background:var(--risk)}.insight-dot.tone-ink{background:var(--ink)}.insight-title{font-size:13px;font-weight:500;line-height:18px}.insight-text{margin-top:2px;color:var(--ink-2);font-size:12px;line-height:17px}.insight-action{flex-shrink:0;max-width:130px;padding-top:1px;text-align:right}.insight-action .link{font-size:12px}.term-pick{display:flex;align-items:center;gap:10px}.term-sheet{overflow:hidden;border-radius:16px}.term-sheet .note-band{border-radius:0}.term-warns{display:flex;flex-direction:column;gap:8px;padding:14px 16px 0}.term-row{gap:12px;min-height:56px;padding:10px 12px 10px 16px}.list>.term-row+.term-row{box-shadow:inset 0 1px 0 var(--line)}.term-row-main{appearance:none;border:0;background:none;text-align:left;cursor:pointer;padding:0}.term-row-main:hover .row-title{text-decoration:underline;text-decoration-color:var(--ink-4);text-underline-offset:3px}.term-foot{display:flex;align-items:flex-end;gap:24px;padding:16px;box-shadow:inset 0 1px 0 var(--line)}.term-foot .add-slot{width:auto}.unplaced{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px;border-radius:var(--r-lg);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line)}.unplaced .chip-slot .t-faint{margin-left:2px}.dropzone{appearance:none;display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;padding:8px 20px 26px;border:0;border-radius:var(--r-lg);background:var(--paper-2);box-shadow:inset 0 0 0 1.5px var(--line-2);text-align:left;cursor:pointer;transition:background var(--med) var(--std),box-shadow var(--med) var(--std)}.dropzone:hover{background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--ink-3)}.dropzone-art{display:grid;place-items:center;height:150px;overflow:hidden}.dropzone-art .ob-demo-art{transform:translateY(-14%)}.dropzone-wide{flex-direction:row;gap:24px;padding:6px 28px 6px 12px}.dropzone-wide .dropzone-art{width:180px;height:128px;flex-shrink:0}.dropzone-text{display:flex;flex-direction:column;gap:4px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}@container canvas (max-width: 640px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat{appearance:none;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px;border:0;text-align:left;cursor:pointer;transition:box-shadow var(--med) var(--std),transform var(--med) var(--out)}.stat:hover{box-shadow:var(--shadow-lift)}.stat.is-on{box-shadow:0 0 0 2px var(--ink),0 10px 24px -14px #00000038}.stat-num{font-size:30px;line-height:34px;font-weight:600;letter-spacing:-.035em}.rec-head{display:flex;align-items:center;justify-content:space-between;margin:26px 0 8px}.rec-add{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.rec-add .tt-search{margin-top:0}.rec-add .btn{height:40px;padding:0 18px}.rec-term{margin-top:18px}.rec-term:first-of-type{margin-top:4px}.grade{display:grid;place-items:center;min-width:34px;height:24px;padding:0 7px;border-radius:7px;background:var(--fill-2);color:var(--ink);font-size:12px;font-weight:600}.grade-now{background:transparent;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink-3);font-weight:500}html[data-hide-grades] .private{filter:blur(max(5px,.32em));transition:filter .16s var(--ease, ease),opacity .16s var(--ease, ease)}html[data-hide-grades] .private-chart{filter:blur(16px) saturate(0);opacity:.5}html[data-capturing] .private{filter:blur(max(5px,.32em))!important;transition:none!important}html[data-capturing] .private-chart{filter:blur(16px) saturate(0)!important;opacity:.5!important;transition:none!important}html[data-hide-grades] .private:hover,html[data-hide-grades] .private:focus-within,html[data-hide-grades] .private:focus{filter:none;opacity:1}@media(prefers-reduced-motion:reduce){html[data-hide-grades] .private{transition:none}}.facts-card{padding:4px 18px}.fact-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;font-size:13px;font-weight:500}.fact-row+.fact-row{box-shadow:inset 0 1px 0 var(--line)}.fact-switch{appearance:none;display:inline-flex;align-items:center;gap:6px;min-width:0;margin:-4px -8px -4px 0;padding:4px 8px;border:0;border-radius:8px;background:none;color:var(--ink);font:inherit;text-align:right;cursor:pointer;transition:background var(--fast) var(--std)}.fact-switch>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fact-switch svg{flex:none;width:14px;height:14px;color:var(--ink-3)}.fact-switch:hover,.fact-switch.is-open{background:var(--fill)}.dir-search{display:flex;align-items:center;gap:10px}.dir-search .btn-lg{height:52px;padding:0 18px}.fits{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.fit{appearance:none;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:108px;padding:14px 16px;border:0;text-align:left;cursor:pointer}.fit-name{font-size:13.5px;font-weight:600;letter-spacing:-.01em;line-height:18px}.fit-foot{display:flex;flex-direction:column;gap:8px}.dir-row{min-height:56px}.counts{display:inline-flex;align-items:baseline;gap:2px;font-size:12px;white-space:nowrap}.counts b{font-size:20px;line-height:24px;font-weight:600;letter-spacing:-.03em}.counts-lg b{font-size:30px;line-height:34px}.dir-facets{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.dir-counts{color:var(--ink-2)}.dir-planned{color:var(--attn)}.dir-retry{display:flex;align-items:center;gap:10px}.dir-code{width:82px;flex-shrink:0}.dir-state{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2)}.browse-count{margin:12px 2px 0}.browse-paper{margin-top:16px;overflow:hidden}.browse-list+.browse-list{box-shadow:inset 0 1px 0 var(--line)}.browse-part+.browse-part{margin-top:24px}.browse-part-head{margin:20px 2px 0}.browse-part-head+.browse-paper{margin-top:10px}.browse-group{padding:16px 16px 4px;color:var(--ink-3)}.brow+.brow{box-shadow:inset 0 1px 0 var(--line)}.brow-head{min-height:52px}.brow-credits{width:28px;text-align:right}.brow.is-open .req-chev{transform:rotate(180deg)}.brow-body{display:flex;flex-direction:column;gap:14px;padding:2px 16px 18px 110px}.brow-desc{max-width:70ch;margin:0;color:var(--ink-2);font-family:var(--font-read);font-size:13.5px;line-height:21px;text-wrap:pretty}.brow-facts{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px 16px;margin:0}.brow-facts dt{padding-top:3px;color:var(--ink-3)}.brow-facts dd{margin:0;font-size:13px;line-height:19px}.brow-acts{display:flex;align-items:center;gap:14px}.brow-outside{max-width:70ch;margin:0;color:var(--ink-2)}.brow-outside-tag{padding:1px 8px;border-radius:999px;background:var(--fill-2);color:var(--ink-2);white-space:nowrap}@container canvas (max-width: 640px){.brow-body{padding-left:16px}.brow-facts{grid-template-columns:minmax(0,1fr);gap:2px}.brow-facts dd+dt{margin-top:8px}}.dprog-fit{margin-top:20px;padding:16px 18px}.page-enter:has(>.ai-page){display:flex;height:100%}.ai-page{--ai-col: 720px;width:100%}.ai-page .ai-scroll{padding:0 24px;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent)}.ai-page .ai-thread{max-width:var(--ai-col);margin:0 auto;padding:28px 0 136px;gap:36px}.ai-page .ai-q{max-width:76%;padding:10px 16px;border-radius:20px;font-size:14.5px;line-height:22px}.ai-page .read{font-size:15px;line-height:25px}.ai-page .ai-dock{width:100%;max-width:calc(var(--ai-col) + 48px);margin:0 auto;padding:0 24px 14px}.ai-page .composer{gap:10px;margin:0;padding:16px 12px 10px 20px;border-radius:20px}.ai-page .composer textarea{min-height:24px;padding:0;font-size:15px;line-height:24px}.ai-page .composer .key{min-width:36px;height:34px;border-radius:11px}.ai-page .ai-signin{margin:10px 0 0;text-align:center}.ai-page.is-blank .ai-scroll{display:flex;flex:1 1 0;flex-direction:column;justify-content:flex-end;-webkit-mask-image:none;mask-image:none}.ai-page.is-blank .ai-dock{display:flex;flex:1.3 1 0;flex-direction:column}.ai-page.is-blank .ai-signin{margin-top:auto}.ai-hero{max-width:var(--ai-col);margin:0 auto 30px;text-align:center}.ai-greeting{margin:0;font-size:30px;line-height:38px;font-weight:600;letter-spacing:-.026em;text-wrap:balance}.ai-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.ai-chip{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 15px 0 13px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink-2);font-size:13px;font-weight:500;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.ai-chip:hover{background:var(--fill);color:var(--ink)}.ai-chip svg{width:15px;height:15px;color:var(--ink-3);transition:color var(--fast) var(--std)}.ai-chip:hover svg{color:var(--ink)}.todo-add .field{padding-right:8px}.todo-row{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 10px 12px 14px}.list>.todo-row+.todo-row{box-shadow:inset 0 1px 0 var(--line)}.todo-mark{position:relative;display:grid}.todo-cycle{appearance:none;display:grid;place-items:center;width:22px;height:22px;margin:-2px 0 0 -2px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}.todo-cycle:hover .mark{box-shadow:inset 0 0 0 1.5px var(--ink-2)}.todo-cycle:hover .mark-done,.todo-cycle:hover .mark-now{box-shadow:inset 0 0 0 1.5px var(--ink)}.todo-title{font-size:13px;font-weight:500;line-height:18px;transition:color var(--med) var(--std)}.todo-row.is-done .todo-title{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-4)}.todo-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:3px;color:var(--ink-3);font-size:11.5px}.todo-x{opacity:0;transition:opacity var(--fast) var(--std)}.todo-row:hover .todo-x,.todo-x:focus-visible{opacity:1}.page-board{max-width:1180px}.todo-add{margin-bottom:18px}.todo-filters{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:999px;background:var(--fill-2);width:fit-content;max-width:100%}.todo-pill{appearance:none;display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 12px;border:0;border-radius:999px;background:none;color:var(--ink-2);font-size:12.5px;font-weight:500;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std),box-shadow var(--fast) var(--std)}.todo-filter-bar{position:relative;width:100%;min-width:0}.todo-filter-bar .todo-filters{flex-wrap:nowrap}.todo-filters.todo-filters-measure{position:absolute;top:0;left:0;width:max-content;max-width:none;visibility:hidden;pointer-events:none}.todo-pill{white-space:nowrap}.todo-pill-more svg{width:12px;height:12px;margin-left:-2px;color:var(--ink-3);transition:transform var(--fast) var(--std)}.todo-pill-more.is-open{color:var(--ink)}.todo-pill-more.is-open svg{transform:rotate(180deg)}.todo-pill .t-num{color:var(--ink-3);font-size:11.5px}.todo-pill:hover{color:var(--ink)}.todo-pill.is-on{background:var(--paper);box-shadow:0 0 0 1px var(--line),0 1px 3px #00000014;color:var(--ink)}.cat-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--hue)}.todo-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start;margin-top:30px}.todo-board.is-wide{grid-template-columns:repeat(var(--cols, 7),minmax(236px,1fr));overflow-x:auto;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.todo-col{display:flex;flex-direction:column;min-height:160px;margin:-6px;padding:6px;border-radius:var(--r-lg);transition:background var(--med) var(--std),box-shadow var(--med) var(--std)}.todo-col.is-over{background:var(--fill);box-shadow:inset 0 0 0 1.5px var(--line-2)}.todo-col-head{display:flex;align-items:center;gap:8px;height:34px;padding:0 2px 0 4px}.todo-col-label{margin:0;font-size:13px;font-weight:600;letter-spacing:-.01em}.todo-col-count{color:var(--ink-3);font-size:12px}.todo-col-add{width:26px;height:26px;border-radius:7px}.todo-col-add svg{width:14px;height:14px}.todo-col-body{display:flex;flex:1;flex-direction:column;gap:12px;padding-top:8px}.todo-col-empty{margin:4px;color:var(--ink-3);font-size:12px}.todo-card{display:flex;flex-direction:column;gap:10px;padding:14px 12px 16px 16px;border-radius:12px;background:var(--paper);box-shadow:var(--shadow-rest);cursor:grab;transition:box-shadow var(--med) var(--std),transform var(--med) var(--out)}.todo-card:hover{box-shadow:var(--shadow-lift)}.todo-card:active{cursor:grabbing}.todo-card-top{display:flex;align-items:center;gap:8px;min-height:20px}.todo-id{flex-shrink:0;color:var(--ink-3);font-size:11px;font-weight:500;letter-spacing:.02em}.todo-origin{flex:1;min-width:0;overflow:hidden;color:var(--ink-3);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}.todo-source{appearance:none;display:inline-flex;align-items:center;gap:4px;max-width:100%;margin:-2px -5px;padding:2px 5px;border:0;border-radius:5px;background:none;color:inherit;font:inherit;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.todo-origin:has(>.todo-source){margin:-3px 0 -3px -5px;padding:3px 0 3px 5px}.todo-source>svg{flex:none;width:11px;height:11px;opacity:0;transform:translate(-2px);transition:opacity var(--fast) var(--std),transform var(--fast) var(--out)}.todo-source:hover,.todo-source:focus-visible{outline:none;background:var(--fill-2);color:var(--ink)}.todo-source:hover>svg,.todo-source:focus-visible>svg{opacity:1;transform:none}.todo-atlas{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;border-radius:5px;background:var(--ink);color:var(--paper);font-size:10.5px;font-weight:600}.todo-atlas svg{width:10px;height:10px}.todo-more{appearance:none;display:grid;place-items:center;width:24px;height:24px;margin-left:auto;border:0;border-radius:7px;background:none;color:var(--ink-3);cursor:pointer;opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std)}.todo-more svg{width:14px;height:14px}.todo-card:hover .todo-more,.todo-line:hover .todo-more,.todo-more.is-open,.todo-more:focus-visible{opacity:1}.todo-more:hover,.todo-more.is-open{background:var(--fill-2);color:var(--ink)}.todo-card-main{display:flex;align-items:flex-start;gap:8px}.todo-card-title,.todo-line-title{flex:1;min-width:0;font-size:13.5px;font-weight:500;line-height:20px;outline:none;cursor:text;border-radius:4px}.todo-title-edit:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--ink) 8%,transparent)}.is-done .todo-card-title,.is-done .todo-line-title{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-4)}.todo-card-meta{display:flex;flex-wrap:wrap;gap:8px;padding-left:28px}.todo-tag{appearance:none;display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border:0;border-radius:6px;background:var(--fill-2);color:var(--ink-2);font-size:11.5px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.todo-tag:hover,.todo-tag.is-open{background:color-mix(in srgb,var(--ink) 11%,transparent);color:var(--ink)}.todo-tag svg{width:12px;height:12px}.todo-due{display:inline-flex;align-items:center;height:22px;color:var(--ink-3);font-size:11.5px;font-weight:500;white-space:nowrap}.todo-due.is-late{color:var(--risk)}.todo-inline input{width:100%;height:38px;padding:0 12px;border:0;border-radius:10px;outline:none;background:var(--paper);box-shadow:0 0 0 1px var(--ink-2),0 0 0 4px color-mix(in srgb,var(--ink) 6%,transparent);font-size:13px}.todo-list{display:flex;flex-direction:column;gap:24px;margin-top:22px}.todo-group .todo-inline{margin:4px 0 8px}.todo-lines{margin:4px 0 0;padding:0;overflow:hidden;border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--shadow-rest);list-style:none}.todo-line{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px 8px 14px}.todo-line+.todo-line{box-shadow:inset 0 1px 0 var(--line)}.todo-lines:empty{display:none}.todo-empty{display:flex;flex-direction:column;align-items:center;max-width:460px;margin:56px auto 0;text-align:center}.todo-empty .ea{margin-bottom:18px}.todo-hints{display:flex;flex-direction:column;gap:10px;margin:18px 0 0;padding:0;list-style:none;text-align:left}.todo-hints li{display:flex;gap:10px;color:var(--ink-2);font-size:13px;line-height:19px}.todo-hints svg{flex-shrink:0;margin-top:2px;color:var(--ink-3)}.todo-display{display:flex;flex-direction:column;gap:12px;padding:8px}.todo-modes{display:grid;grid-template-columns:1fr 1fr;gap:6px}.todo-mode{appearance:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 10px;border:0;border-radius:10px;background:var(--fill);color:var(--ink-2);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--fast) var(--std),box-shadow var(--fast) var(--std),color var(--fast) var(--std)}.todo-mode.is-on{background:var(--paper);box-shadow:0 0 0 1.5px var(--ink);color:var(--ink)}.todo-display-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px}.howto{display:flex;flex-direction:column;gap:10px;max-width:440px;text-align:left}.howto>div{display:flex;gap:10px;color:var(--ink-2);font-size:12.5px;line-height:18px}.howto svg{flex-shrink:0;margin-top:1px;color:var(--ink-3)}.gpa-hero{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:end;gap:40px;padding:24px 26px}.gpa-block{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.gpa-num{font-size:56px;line-height:58px;font-weight:600;letter-spacing:-.04em}.gpa-num-sm{font-size:40px;line-height:44px;color:var(--ink-2)}.gpa-side{display:flex;justify-content:flex-end}.gpa-side-text{flex-direction:column;justify-content:flex-end;align-self:stretch}.dist{display:flex;align-items:flex-end;gap:10px;height:96px;margin-top:10px}.dist-col{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.dist-track{position:relative;flex:1;width:18px;overflow:hidden;border-radius:5px;background:var(--fill-2)}.dist-fill{position:absolute;left:0;right:0;bottom:0;border-radius:5px;background:var(--ink);transform-origin:bottom;animation:bar-in .9s var(--out) backwards}@keyframes bar-in{0%{transform:scaleY(0)}}.gpa-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}.gpa-card{padding:18px 20px}.contrib{gap:12px;padding:8px 0}.list>.contrib+.contrib{box-shadow:inset 0 1px 0 var(--line)}.contrib .t-code{width:76px;font-size:12.5px}.contrib-bar{position:relative;flex:1;height:6px;overflow:hidden;border-radius:999px;background:var(--fill-2)}.contrib-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--ink);transform-origin:left;animation:meter-in .9s var(--out) backwards}.contrib-fill.is-down{background:color-mix(in srgb,var(--ink) 35%,transparent)}.gpa-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gpa-table{padding:6px 12px 4px}.gpa-tr{display:grid;grid-template-columns:minmax(0,1fr) auto 84px 32px;align-items:center;gap:12px;padding:6px 0}.gpa-th{padding:8px 0 4px}.gpa-tr+.gpa-tr{box-shadow:inset 0 1px 0 var(--line)}.gpa-th+.gpa-tr{box-shadow:none}.gpa-tr .field{box-shadow:none;background:transparent;padding-left:4px}.gpa-tr .field:focus-within{box-shadow:0 0 0 1px var(--ink-2);background:var(--paper)}.gpa-tr .field input{flex:1 1 96px;min-width:96px;font-weight:600;font-variant-numeric:tabular-nums}.gpa-tr .field:has(.gpa-course-title) input{flex:0 0 96px}.gpa-tr .field input::placeholder{font-weight:400}.gpa-course-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gpa-tfoot{display:flex;align-items:center;padding:6px 0 8px;box-shadow:inset 0 1px 0 var(--line)}.session-name{appearance:none;display:inline-flex;align-items:center;gap:8px;margin:-3px 0 -3px -8px;padding:3px 8px;border:0;border-radius:8px;background:none;cursor:text;transition:background var(--fast) var(--std)}.session-name svg{width:13px;height:13px;color:var(--ink-3);opacity:0;transition:opacity var(--fast) var(--std)}.session-name:hover{background:var(--fill)}.session-name:hover svg,.session-name:focus-visible svg{opacity:1}.session-input{width:220px;height:28px;margin:-4px 0 -4px -8px;padding:0 8px;border:0;border-radius:8px;outline:none;background:var(--paper);box-shadow:0 0 0 1px var(--ink-2),0 0 0 4px color-mix(in srgb,var(--ink) 6%,transparent);font-size:15px;font-weight:600;letter-spacing:-.01em}.session-delete{margin-left:auto;color:var(--ink-3)}.session-delete:hover{background:color-mix(in srgb,var(--risk) 8%,transparent);color:var(--risk)}.session.has-potential{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.session-col{min-width:0}.session.has-potential .gpa-course-title{display:none}.session-col-potential{animation:potential-in .38s var(--out) backwards}@keyframes potential-in{0%{opacity:0;transform:translate(-12px)}}.gpa-table-potential{background:color-mix(in srgb,var(--info) 3%,var(--paper));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--info) 20%,transparent),var(--shadow-rest)}.session-potential.is-on{background:var(--info-fill);color:var(--info);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--info) 28%,transparent)}.gpa-hero.has-potential{grid-template-columns:auto auto auto minmax(0,1fr)}.session .section-head{align-items:center;min-height:32px}.select.is-empty{color:var(--ink-3)}.pill-good{background:var(--good-soft);color:color-mix(in srgb,var(--good) 80%,var(--ink))}.gpa-actions{display:flex;align-items:center;gap:8px;margin-top:18px}.target{display:flex;flex-direction:column;gap:16px;padding:20px 22px 22px}.target-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.target-ahead{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.target-ahead-field{width:50px;padding:0 8px}.target-ahead-field input{text-align:center;font-variant-numeric:tabular-nums}.range{width:100%;accent-color:var(--ink)}.week-nav{display:flex;align-items:center;gap:2px;height:32px;padding:0 3px;border-radius:999px;background:var(--fill-2)}.week-label{min-width:108px;font-size:12.5px;font-weight:500;text-align:center}.tt-main{min-width:0}.tt-head{display:flex;align-items:center;justify-content:space-between;gap:16px;height:44px;margin-bottom:18px}.tt-controls{display:flex;align-items:center;gap:8px}.tt-side{padding-top:62px}.tt-side-label{display:grid;align-content:center;row-gap:1px;height:42px;margin-bottom:-3px;padding:0 4px}.tt-side-label>.t-micro{line-height:15.625px}.tt-side-spacer{visibility:hidden}.tt-section{appearance:none;display:flex;align-items:center;gap:8px;width:100%;height:34px;padding:0 10px 0 12px;border:0;border-radius:var(--r-sm);background:var(--fill);color:var(--ink);font-size:12.5px;text-align:left;cursor:pointer;transition:background var(--fast) var(--std)}.tt-section:hover,.tt-section.is-open{background:var(--fill-2)}.tt-section .t-code{flex-shrink:0}.tt-section{height:auto;min-height:34px;padding-block:7px}.tt-section-times{display:flex;flex:1;flex-direction:column;min-width:0;line-height:17px}.tt-section-option .tt-section-times{color:var(--ink-3);font-size:12px}.tt-clash-note{color:var(--risk);font-size:11.5px;line-height:16px}.tt-section-option.is-clash .menu-end,.tt-section-option.is-clash .menu-end svg{color:var(--risk)}.tt-section svg{width:14px;height:14px;color:var(--ink-3)}.show-all{display:flex;margin:12px auto 0}.skel-card{gap:12px}.tt-course-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%}.tt-course-top .tt-course-head{flex:1;width:auto;min-width:0}.tt-course-top>:not(.tt-course-head){flex:none}.tt-search{position:relative;margin-top:10px}.tt-search .field{background:var(--paper)}.tt-side>.tt-search{z-index:5;margin:0 0 12px}.tt-results{left:0;right:0;top:calc(100% + 6px);max-height:340px;overflow-y:auto}.tt-result{height:auto;min-height:44px;padding:6px 10px}.tt-result .row-sub{white-space:normal}.tt-add{display:flex;flex-direction:column;gap:10px;padding:10px}.tt-add>.seg{display:flex}.tt-add>.seg .seg-item{flex:1 1 0;min-width:0}.tt-add-empty{margin:0;color:var(--ink-2)}.tt-add-times{display:flex;align-items:center;gap:8px}.tt-add-times .select{flex:1}.tt{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.tt-grid-wrap{overflow:hidden;padding-bottom:10px}.tt-days{display:grid;grid-template-columns:56px repeat(5,minmax(0,1fr));height:42px;align-content:center;row-gap:1px;box-shadow:inset 0 -1px 0 var(--line)}.tt-day{min-width:0;font-size:12.5px;font-weight:500;line-height:1.25;text-align:center}.tt-day-span{min-width:0}.tt-day-note{width:100%;min-width:0;padding:0 6px;overflow:hidden;color:var(--ink-3);font-size:10.5px;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}.tt-day-note.is-off{color:var(--attn)}.tt-grid{position:relative;display:grid;grid-template-columns:56px repeat(5,minmax(0,1fr));margin-top:18px}.tt-hours{position:relative}.tt-hours span{position:absolute;right:10px;transform:translateY(-50%);color:var(--ink-3);font-size:10.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.tt-col{position:relative;box-shadow:inset 1px 0 0 var(--line)}.tt-col.is-off{background:repeating-linear-gradient(135deg,transparent 0 7px,var(--fill-2) 7px 8px)}.tt-line{position:absolute;left:0;right:0;height:1px;background:var(--line)}.tt-block{appearance:none;position:absolute;left:4px;right:4px;display:flex;flex-direction:column;gap:1px;overflow:hidden;padding:6px 8px;border:0;border-radius:9px;background:color-mix(in srgb,var(--ink) 5%,var(--paper));box-shadow:inset 2px 0 0 var(--ink),inset 0 0 0 1px var(--line);color:var(--ink);text-align:left;animation:rise .62s var(--out) backwards;transition:box-shadow var(--fast) var(--std),transform var(--med) var(--out)}.tt-block.is-open{cursor:pointer}.tt-block-hit{appearance:none;position:absolute;inset:0;padding:0;border:0;border-radius:inherit;background:none;cursor:inherit}.tt-block-place{position:relative;z-index:1;color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:2px}.tt-block-place:hover{color:var(--ink);text-decoration-color:currentColor}.tt-block.is-open:hover{transform:translateY(-1px);box-shadow:inset 2px 0 0 var(--ink),0 0 0 1px var(--line-2),0 8px 18px -12px #0000004d}.tt-block-title{font-size:11.5px;font-weight:600;letter-spacing:-.005em}.tt-block-sub{color:var(--ink-2);font-size:10.5px;line-height:14px}.tt-block.is-personal{background:var(--ink);box-shadow:none;color:var(--paper);cursor:default}.tt-block.is-personal .tt-block-sub{color:color-mix(in srgb,var(--paper) 72%,transparent)}.tt-block.is-conflict{background:var(--risk-fill);box-shadow:inset 2px 0 0 var(--risk),inset 0 0 0 1px color-mix(in srgb,var(--risk) 30%,transparent)}.tt-block-flag{margin-top:auto;color:var(--risk);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tt-side{position:sticky;top:12px}.tt-courses{display:flex;flex-direction:column;gap:8px}.tt-course{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px}.tt-course.is-conflict{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--risk) 45%,transparent)}.tt-course.is-quiet{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line)}.tt-course-head{appearance:none;display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer}.tt-course-title{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.tt-dot{width:10px;height:10px;flex-shrink:0;border-radius:3px;background:var(--ink)}.tt-todo-link{color:inherit;text-decoration:none}.tt-todo-link:hover .row-title{text-decoration:underline;text-decoration-color:var(--ink-4);text-underline-offset:2px}.tt-dot.is-todo{background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--ink-2)}.tt-dot[class*=tone-]{background:var(--hue)}.tt-side-list>.row{gap:7px;padding-inline:14px}.tt-side-list .tt-dot{width:8px;height:8px}.tt-course-exam{display:grid;gap:2px;width:100%;padding-top:2px;color:var(--ink-2)}.tt-course-exam span{display:inline-flex;align-items:center;gap:6px}.tt-course-exam svg{width:13px;height:13px;flex:none;color:var(--ink-3)}.tt-block.is-exam[class*=tone-]{background:color-mix(in srgb,var(--hue) 24%,var(--paper));box-shadow:inset 4px 0 0 var(--hue),inset 0 0 0 1px color-mix(in srgb,var(--hue) 45%,transparent)}.empty{display:flex;flex-direction:column;align-items:center;padding:44px 24px 48px;text-align:center}.empty .t-sub{margin-top:6px}.empty-mark{width:60px;height:60px;margin-bottom:16px;background:color-mix(in srgb,var(--ink) 12%,transparent);-webkit-mask:url(/brand/atlas-mark.svg) center / contain no-repeat,linear-gradient(to bottom,#000 35%,transparent 90%);-webkit-mask-composite:source-in;mask:url(/brand/atlas-mark.svg) center / contain no-repeat,linear-gradient(to bottom,#000 35%,transparent 90%);mask-composite:intersect}.pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pick{appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;min-height:84px;padding:14px 44px 14px 16px;border:0;text-align:left;cursor:pointer}.pick-code{font-size:15px;line-height:20px;font-weight:600;letter-spacing:-.01em}.pick-check{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-2);color:transparent;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.pick-check svg{width:12px;height:12px}.pick-check.is-on{background:var(--ink);box-shadow:none;color:var(--paper);animation:pop-check .42s var(--spring) backwards}@container canvas (max-width: 840px){.degree-top,.plan-top,.two-col,.gpa-pair,.psum{grid-template-columns:minmax(0,1fr)}.psum-right{padding-left:0;box-shadow:none}.tt{grid-template-columns:1fr}.tt-head{flex-wrap:wrap;row-gap:10px;height:auto;min-height:44px}.tt-controls{flex-wrap:wrap}.tt-side{position:static;padding-top:0}.gpa-hero,.gpa-hero.has-potential{grid-template-columns:auto auto}.session.has-potential{grid-template-columns:minmax(0,1fr)}.session.has-potential .gpa-course-title{display:revert}.gpa-side{grid-column:1 / -1;justify-content:flex-start}.page{padding-left:40px;padding-right:40px}}.imp-files{display:flex;flex-direction:column;gap:12px}.imp-file{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.imp-file-row{display:flex;align-items:center;gap:12px}.imp-thumb{display:grid;flex:none;place-items:center;width:44px;height:44px;overflow:hidden;border-radius:10px;background:var(--fill);color:var(--ink-3)}.imp-thumb img{width:100%;height:100%;object-fit:cover}.imp-stack{display:inline-flex;flex:none}.imp-stack .imp-thumb{box-shadow:0 0 0 2px var(--paper)}.imp-stack .imp-thumb+.imp-thumb{margin-left:-30px}.imp-batch{display:flex;flex-direction:column;padding-top:6px;box-shadow:inset 0 1px 0 var(--line)}.imp-batch-row{display:flex;align-items:center;gap:10px;min-height:32px}.imp-batch-name{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.imp-batch-meta{flex:none;margin-left:auto;color:var(--ink-3)}.imp-actions{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.imp-bad{margin:0;color:var(--risk)}.imp-warn{margin:0;color:var(--ink-2)}.imp-review{display:flex;flex-direction:column;gap:10px;padding-top:10px;box-shadow:inset 0 1px 0 var(--line)}.imp-line{display:flex;align-items:baseline;gap:10px;margin:0;font-size:13px}.imp-drop{display:flex;align-items:center;gap:6px;margin-top:8px;cursor:pointer}.plan-settings-chip{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.plan-settings-chip:hover,.plan-settings-chip.is-open{background:var(--fill)}.sheet-check{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2);cursor:pointer}.sheet-check input{accent-color:var(--ink)}.plan-history{display:inline-flex;gap:2px;margin-right:4px}.plan-history .is-idle{opacity:.35;pointer-events:none}.plan-redo svg{transform:scaleX(-1)}.history-menu{display:grid;gap:2px;max-height:min(440px,70vh);overflow-y:auto;padding:4px}.history-head{padding:6px 8px 4px}.history-row{display:flex;align-items:center;gap:4px;padding:6px 4px 6px 8px;border-radius:9px}.history-row:hover{background:var(--fill)}.history-row.is-undone .history-label{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-2)}.history-main{display:grid;flex:1;gap:1px;min-width:0}.history-label{overflow-wrap:anywhere;font-size:13px;line-height:1.35}.history-row .btn{flex:none}.history-empty{margin:0;padding:4px 8px 8px}.plan-title{display:inline-flex;align-items:center;gap:6px;cursor:text}.plan-title-edit{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:var(--ink-3);opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std),color var(--fast) var(--std)}.plan-title-edit svg{width:14px;height:14px}.plan-title:hover .plan-title-edit,.plan-title-edit:focus-visible{opacity:1}.plan-title-edit:hover{background:var(--fill);color:var(--ink)}.plan-title-input{field-sizing:content;min-width:4ch;max-width:100%;margin:0 -6px;padding:0 6px;border:0;border-radius:8px;outline:none;background:var(--fill);box-shadow:inset 0 0 0 1.5px var(--line-2);color:inherit;font:inherit;letter-spacing:inherit}.place-first{text-decoration:underline dotted;text-decoration-color:var(--ink-3);text-underline-offset:3px}.place-first-note{margin:6px 2px 0;color:var(--ink-3)}.plan-settings{display:flex;flex-direction:column;padding:4px 6px}.plan-setting{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:11px 6px}.plan-setting+.plan-setting{box-shadow:inset 0 1px 0 var(--line)}.plan-setting-text{display:flex;flex-direction:column;gap:1px;min-width:0}.plan-setting-name{font-size:13px;font-weight:500;white-space:nowrap}.plan-setting-hint{color:var(--ink-3);font-size:11.5px;line-height:15px}.plan-setting .select{width:136px}.tt-block[class*=tone-]{background:color-mix(in srgb,var(--hue) 13%,var(--paper));box-shadow:inset 2.5px 0 0 var(--hue),inset 0 0 0 1px color-mix(in srgb,var(--hue) 22%,transparent)}.tt-block[class*=tone-]:hover{box-shadow:inset 2.5px 0 0 var(--hue),0 0 0 1px color-mix(in srgb,var(--hue) 40%,transparent),0 8px 18px -12px #0000004d}.tt-block[class*=tone-] .tt-block-title{color:color-mix(in srgb,var(--hue) 62%,var(--ink))}.tt-block[class*=tone-].is-planned,.tt-key-planned{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--hue, var(--ink-3)) 14%,transparent) 0 2px,transparent 2px 7px),color-mix(in srgb,var(--hue, var(--ink-3)) 5%,var(--paper));box-shadow:inset 2px 0 color-mix(in srgb,var(--hue, var(--ink-3)) 55%,transparent);outline:1px dashed color-mix(in srgb,var(--hue, var(--ink-3)) 45%,transparent);outline-offset:-1px}.tt-block[class*=tone-].is-planned .tt-block-title{color:color-mix(in srgb,var(--hue) 45%,var(--ink-2))}.tt-key{display:flex;align-items:center;gap:8px;margin:-2px 2px 12px;color:var(--ink-3)}.tt-key-planned{flex:none;width:14px;height:14px;border-radius:4px}.tt-block.is-suggested{opacity:.6}.tt-block.is-suggested:hover,.tt-block.is-suggested.is-open{opacity:1}.tt-key-suggested{flex:none;width:14px;height:14px;border-radius:4px;background:color-mix(in srgb,var(--ink-3) 16%,var(--paper));box-shadow:inset 2px 0 color-mix(in srgb,var(--ink-3) 50%,transparent);opacity:.7}.tt-section.is-asking{background:var(--attn-fill);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--attn) 35%,transparent)}.tt-section-ask{flex:1;color:var(--attn);font-weight:550}.tt-section-tag{flex:none;padding:1px 6px;border-radius:999px;background:var(--fill-2);color:var(--ink-3);font-size:10.5px;line-height:15px}.tt-course-tip>.tt-course{flex:1;min-width:0}.imp-what{display:grid;gap:8px;padding-bottom:0}.imp-what .t-small{color:var(--ink-3)}.dropzone-key{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--fill-2);color:var(--ink-2)}.dropzone-key svg{width:20px;height:20px}.ti-drop{margin-top:12px}.ti-paste{width:100%;margin-top:12px;padding:10px 12px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);font:12.5px/1.5 var(--mono);resize:vertical}.ti-fine{margin-top:10px;color:var(--ink-3)}.ti-reading{padding:24px 0;text-align:center}.ti-review{display:grid;gap:16px}.ti-term{display:grid;gap:2px}.ti-term>.t-micro{margin-bottom:4px}.ti-row{display:flex;align-items:flex-start;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.ti-row .row-main{display:grid;flex:1;gap:4px;min-width:0}.ti-title{color:var(--ink-3);font-weight:400}.ti-secs{display:flex;flex-wrap:wrap;gap:6px}.ti-sec{padding:2px 7px;border-radius:6px;background:var(--fill);color:var(--ink-2);font:500 11.5px/17px var(--mono)}.ti-sec.is-set{background:var(--good-soft);color:color-mix(in srgb,var(--good) 70%,var(--ink))}.ti-sec.is-odd,.ti-sec.is-missing{background:var(--attn-fill);color:var(--attn)}.ti-state{flex:none;padding-top:3px;color:var(--ink-3)}.ti-note{color:var(--ink-3)}html[data-theme=dark] .tt-block[class*=tone-]{background:color-mix(in srgb,var(--hue) 22%,var(--paper))}html[data-theme=dark] .tt-block[class*=tone-] .tt-block-title{color:color-mix(in srgb,var(--hue) 35%,var(--ink))}.tt-block.is-conflict{background:var(--risk-fill);box-shadow:inset 2.5px 0 0 var(--risk),inset 0 0 0 1px color-mix(in srgb,var(--risk) 30%,transparent)}.tt-block.is-todo{background:var(--paper);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink)}.tt-block.is-todo .tt-block-sub{color:var(--ink-2)}.tt-course-code{display:inline-flex;align-items:center;gap:7px}.tt-swatch{width:8px;height:8px;flex:none;border-radius:3px;background:var(--hue, var(--ink-3))}.tt-empty{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;pointer-events:none}.tt-empty .ea{margin-bottom:8px}.status-cells,.plan-cells{margin-top:16px}.program-foot{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:36px;padding-top:18px;box-shadow:inset 0 1px 0 var(--line)}.program-foot .engine-note{margin:0}.create{display:flex;flex-direction:column;max-width:760px}.create-head{display:flex;flex-direction:column;align-items:center;text-align:center}.create-head .ea{margin-bottom:18px}.create-head .t-title{margin-top:6px}.create-head .t-sub{max-width:440px;margin-top:6px}.create-body{display:flex;flex-direction:column;gap:16px;margin-top:30px}.create-search{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.create-search .field{flex:1 1 240px;background:var(--paper)}.create-fields{display:flex;flex-direction:column;gap:18px;width:100%;max-width:520px;margin:0 auto}.create-fields .field{background:var(--paper)}.create-none{padding:24px 0;text-align:center}.create-foot{position:sticky;z-index:1;bottom:0;display:flex;align-items:center;gap:10px;margin-top:12px;padding:24px 0 20px}.create-foot:before{content:"";position:absolute;inset:0 -16px;z-index:-1;background:linear-gradient(to bottom,transparent,var(--desk) 24px);pointer-events:none}.create:has(.create-fields) .create-foot{width:100%;max-width:520px;margin-inline:auto}.guide-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 32px;padding:20px 22px}.guide-top-main{display:flex;flex-direction:column;gap:8px}.guide-lede{margin:0;font-size:17px;line-height:25px;letter-spacing:-.01em;text-wrap:pretty}.guide-lede b{font-weight:600}.guide-met{color:var(--ink-2)}.guide-keys{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;color:var(--ink-2);font-size:12px;line-height:17px}.guide-keys li{display:flex;align-items:flex-start;gap:10px}.guide-key{flex-shrink:0;min-width:34px;padding:1px 6px;border-radius:6px;background:var(--fill-2);color:var(--ink);font-size:11px;text-align:center}.guide-legend{flex-wrap:wrap;gap:6px 14px!important;padding-top:4px}.guide-legend>span{display:inline-flex;align-items:center;gap:6px}@container canvas (max-width: 760px){.guide-top{grid-template-columns:1fr}}.gsteps{overflow:hidden}.gstep+.gstep{box-shadow:inset 0 1px 0 var(--line)}.gstep-head{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 18px;color:inherit;text-align:left}.gstep-head .mark{margin-top:1px}button.gstep-head{cursor:pointer;transition:background var(--fast) var(--std)}.gstep{transition:background var(--fast) var(--std)}.gstep.is-expandable:hover,.gstep.is-open{background:var(--paper-2)}.gstep.is-expandable .gstep-rules{cursor:pointer}.gstep-main{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.gstep-name{color:var(--ink-3);font-size:11.5px;font-weight:500}.gstep-say{font-size:14px;line-height:20px;font-weight:500;text-wrap:pretty}.gstep-sub{color:var(--ink-2);font-size:12.5px;line-height:18px;text-wrap:pretty}.gstep-act{align-self:flex-start;margin-top:2px;font-size:12px;font-weight:500}.gstep-sub .gstep-act{margin-top:0}.gstep-note{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:-6px 18px 12px 48px;padding:9px 12px;border-radius:var(--r-sm);background:var(--paper-2);color:var(--ink-2);line-height:18px;text-wrap:pretty}.gstep.is-expandable:hover .gstep-note:not(.is-mine,.is-ask),.gstep.is-open .gstep-note:not(.is-mine,.is-ask){background:var(--paper)}.gstep-note b{color:var(--ink);font-weight:600}.gstep-note.is-ask{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--attn) 40%,transparent);background:color-mix(in srgb,var(--attn) 6%,transparent)}.gstep-note.is-mine{box-shadow:inset 0 0 0 1px var(--line-2);background:transparent}.gstep-note-acts{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.gstep-note-acts .gstep-act{margin-top:0}.choose-acts{display:inline-flex;flex:none;align-items:center;align-self:flex-start;gap:10px;margin:-5px -6px -5px 0}.choose-exc{width:28px;height:28px;border-radius:8px;color:var(--ink-3)}.gstep-meta{flex-shrink:0;padding-top:1px;color:var(--ink-2);font-size:12.5px;white-space:nowrap}.gstep-head .req-chev{align-self:flex-start;height:20px;place-items:center}.gstep.is-open .req-chev{transform:rotate(180deg)}.gstep-rules{display:flex;flex-direction:column;gap:12px;padding:0 18px 14px 48px}.gstep-body{display:flex;flex-direction:column;gap:14px;padding:2px 18px 18px 48px}.glimits{display:flex;flex-direction:column;gap:8px}.glimits ul{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.glimit{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;line-height:18px}.glimit .mark{margin-top:2px}.glimit-dot{flex-shrink:0;width:14px;height:14px;margin-top:2px;background:radial-gradient(circle,var(--ink-3) 0 2px,transparent 2.5px)}.glimit-text{flex:1;min-width:0;text-wrap:pretty}.glimit.is-check .glimit-text{color:var(--ink-2)}.chip.chip-approval{height:auto;min-height:30px;padding:6px 11px 6px 9px;background:var(--attn-fill);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--attn) 38%,transparent);line-height:17px;cursor:help}.chip.chip-approval:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--attn) 60%,transparent);transform:none}.chip.chip-approval .mark{flex-shrink:0;align-self:flex-start;margin-top:1.5px}.chip.chip-approval.is-row{width:100%;justify-content:flex-start}.chip-approval-text{min-width:0}.subject.is-approvals{grid-column:1 / -1}.gcourses{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.gcourse-credits{margin-left:auto;padding-left:8px;color:var(--ink-3)}.gslots{display:flex;flex-direction:column;gap:8px}.gpath{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.gpath-plus,.gpath-or{color:var(--ink-3);font-size:12px}.gpath-plus{padding:0 2px;font-weight:600}.goptions{display:flex;flex-direction:column}.goption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 12px;border-radius:var(--r-md);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.goption.is-used{box-shadow:inset 0 0 0 1.5px var(--ink)}.goption.is-block{flex-direction:column;align-items:stretch}.goption.is-block>.chip{align-self:flex-start}.goption-say{font-size:13px;font-weight:500}.goptions-or{display:flex;align-items:center;gap:10px;padding:6px 12px;color:var(--ink-3);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.goptions-or:after{content:"";flex:1;height:1px;background:var(--line)}.gbranches{display:flex;flex-direction:column;gap:18px}.gbranch{display:flex;flex-direction:column;gap:10px}.gbranch-label{font-size:12.5px;font-weight:600}.gbranch-open{margin:0;color:var(--ink-2);font-size:12.5px;line-height:18px}.gquote{margin:0;padding:10px 14px;border-radius:var(--r-md);background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);font-family:var(--font-read);font-size:12.5px;line-height:19px}.gnotes{display:flex;flex-direction:column;gap:6px;margin:12px 0 0;padding:14px 18px 14px 34px;border-radius:var(--r-lg);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);font-family:var(--font-read);font-size:12.5px;line-height:19px}.gnotes-page{margin:0}.gwording{margin-top:16px}.gwide{padding:16px 18px}.choose-titles{display:flex;flex-direction:column;gap:7px;min-width:0}.choose-say{font-size:14px;line-height:20px;font-weight:500}.gchips{display:flex;flex-direction:column;gap:8px}.glimit-codes{display:block;margin-top:8px}.glimit-codes .chip{height:26px;font-size:12px}.gsubjects{display:flex;flex-wrap:wrap;gap:6px}.gsubject{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 9px;border-radius:8px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);font-size:12px}.gsubject-name{color:var(--ink-2)}a.gsubject{color:var(--ink);text-decoration:none;transition:background var(--fast) var(--std),box-shadow var(--fast) var(--std)}a.gsubject:hover{background:var(--fill);box-shadow:inset 0 0 0 1px var(--line-2)}.gpath-slot{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.choose-head .link{flex-shrink:0;white-space:nowrap}.gstep-quote{font-family:var(--font-read)}.goption.is-block{gap:10px}.pbar{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}.pbar-scroll{display:flex;min-width:0}.pbar-item{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.pbar-item .tile{margin-left:-5px}.pbar-tag{padding:0 5px;border-radius:5px;background:var(--fill-2);color:var(--ink-3);font-size:10.5px;font-weight:500;line-height:16px}.pbar-edit{flex:none}.pmenu{display:flex;flex-direction:column}.pmenu-search{margin:6px 6px 4px}.pmenu-row{display:flex;align-items:center;gap:10px;padding:7px 6px 7px 10px;border-radius:8px}.pmenu-row:hover{background:var(--fill)}.pmenu-text{display:flex;flex:1;flex-direction:column;min-width:0}.pmenu-name{overflow:hidden;font-size:13px;font-weight:500;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.pmenu-sub{color:var(--ink-3);font-size:11.5px;line-height:16px}.pmenu-row.is-out .tile{opacity:.55}.pmenu-row.is-out .pmenu-name{color:var(--ink-2)}.pmenu-empty{padding:8px 10px 6px;color:var(--ink-3)}.plan-cmp-with{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.plan-meter{position:relative;display:inline-flex;width:44px;height:4px;overflow:hidden;border-radius:2px;background:color-mix(in srgb,var(--ink) 8%,transparent)}.plan-meter i{flex:none;height:100%;transition:width var(--slow) var(--out)}.plan-meter .is-done{background:var(--ink)}.plan-meter .is-planned{background:color-mix(in srgb,var(--ink) 48%,transparent)}.plan-head-stack{display:flex;flex-direction:column;align-items:flex-start;gap:14px;width:100%;min-width:0;margin-top:-12px}.plan-facts{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-left:-10px}.plan-fact{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;border-radius:999px;color:var(--ink-2);font-size:12.5px;white-space:nowrap;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.plan-fact b{color:var(--ink);font-weight:600}.plan-fact:hover{background:var(--fill);color:var(--ink)}.plan-fact.is-attn b{color:var(--attn)}.plan-fact.is-risk,.plan-fact.is-risk b{color:var(--risk)}.plan-fact.is-done{color:var(--good);font-weight:500}.plan-fact svg{width:13px;height:13px}.plan-board{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.plan-side{display:flex;flex-direction:column;max-height:calc(100dvh - 190px)}.plan-side-head,.plan-side-hint{flex:none}.plan-side .ps{flex:0 1 auto;min-height:0}.pg{overflow:hidden}.pg-row{display:grid;grid-template-columns:92px repeat(2,minmax(0,1fr)) minmax(0,.8fr);box-shadow:inset 0 -1px 0 var(--line)}.pg>.pg-row:last-child{box-shadow:none}.pg-year{display:flex;flex-direction:column;gap:1px;padding:12px 10px 12px 16px}.pg-year-name{font-size:12.5px;font-weight:600}.pg-year-sub{color:var(--ink-3);font-size:11px;line-height:15px}.pg-cell{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;min-height:76px;padding:8px;box-shadow:inset 1px 0 0 var(--line);transition:background var(--fast) var(--std)}.pg-cell.is-now{background:color-mix(in srgb,var(--ink) 2.5%,transparent)}.pg-cell.is-empty>div:last-child{margin-bottom:auto}.pg-cell:after{content:"";position:absolute;inset:4px;border:1.5px dashed transparent;border-radius:10px;pointer-events:none;transition:border-color var(--fast) var(--std)}.pg.is-dragging .pg-cell.is-open:after{border-color:var(--line-2)}.pg-cell.is-over{background:var(--fill)}.pg.is-dragging .pg-cell.is-over:after{border-color:var(--ink-3)}.pg-cell-top{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0;min-height:18px;padding:0 2px 0 3px}.pg-cell-tt{display:grid;place-items:center;width:20px;height:18px;border-radius:5px;color:var(--ink-3);opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std),color var(--fast) var(--std)}.pg-cell-tt svg{width:12px;height:12px}.pg-cell:hover .pg-cell-tt,.pg-cell-tt:focus-visible{opacity:1}.pg-cell-tt:hover{background:var(--fill-2);color:var(--ink)}.pg-cell-term{flex:none;color:var(--ink-3);font-size:11px;font-weight:500;letter-spacing:0}.pg-cell.is-now .pg-cell-term,.pg-cell.is-open:hover .pg-cell-term{color:var(--ink-2)}.pg-cell-top .pill{flex:none;padding:0 6px}.pg-cell-top .pg-cell-term{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pg-cell-credits{display:inline-flex;align-items:center;gap:4px;margin-left:auto;color:var(--ink-3);font-size:11px}.pg-cell-credits.is-heavy{color:var(--attn)}.pg-cell-credits svg{width:12px;height:12px}.pg-cell-due{display:inline-flex;align-self:flex-start;align-items:center;gap:4px;margin:-2px 0 0 3px;color:var(--ink-3);font-size:11px;transition:color var(--fast) var(--std)}.pg-cell-due svg{width:11px;height:11px}.pg-cell-due:hover{color:var(--ink)}.pg-cell-due.is-soon{color:var(--attn)}.pg-block{position:relative;display:flex;min-width:0;border-radius:9px;background:color-mix(in srgb,var(--hue, var(--ink-4)) 9%,var(--paper));box-shadow:inset 2.5px 0 0 var(--hue, var(--ink-4)),inset 0 0 0 1px color-mix(in srgb,var(--hue, var(--ink-4)) 20%,transparent);animation:rise .52s var(--out) backwards;transition:box-shadow var(--fast) var(--std),transform var(--med) var(--out)}.pg-block.is-checking{animation:rise .52s var(--out) backwards,pg-checking 1.2s var(--std) .3s infinite alternate;pointer-events:none}@keyframes pg-checking{to{opacity:.5}}.pg-block:hover{transform:translateY(-1px);box-shadow:inset 2.5px 0 0 var(--hue, var(--ink-4)),0 0 0 1px color-mix(in srgb,var(--hue, var(--ink-4)) 40%,transparent),0 8px 18px -12px #0000004d}.pg-block-hit{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0;padding:6px 8px 7px 11px;text-align:left}.pg-block-code{display:flex;align-items:center;gap:5px;min-width:0;color:color-mix(in srgb,var(--hue, var(--ink-4)) 62%,var(--ink));font-size:11.5px;line-height:16px}.pg-block-code svg{flex:none;width:12px;height:12px}.pg-block-hues{display:inline-flex;gap:3px}.pg-block-hues .tt-swatch{width:6px;height:6px;border-radius:2px}.pg-block-alert{display:grid;margin-left:auto;color:var(--attn);transition:opacity var(--fast) var(--std)}.pg-block.is-risk .pg-block-alert{color:var(--risk)}.pg-block-sub{max-width:100%;overflow:hidden;color:var(--ink-2);font-size:10.5px;line-height:14px;text-overflow:ellipsis;white-space:nowrap}.pg-block.is-attn .pg-block-sub{color:var(--attn)}.pg-block.is-risk .pg-block-sub{color:var(--risk)}.pg-block.is-done{background:var(--paper-2);box-shadow:inset 2.5px 0 color-mix(in srgb,var(--hue, var(--ink-4)) 45%,transparent),inset 0 0 0 1px var(--line)}.pg-block.is-done .pg-block-code{color:var(--ink-2)}.pg-block.is-done .pg-block-code svg{color:var(--ink-3)}html[data-theme=dark] .pg-block:not(.is-done){background:color-mix(in srgb,var(--hue, var(--ink-4)) 22%,var(--paper))}html[data-theme=dark] .pg-block:not(.is-done) .pg-block-code{color:color-mix(in srgb,var(--hue, var(--ink-4)) 35%,var(--ink))}.pg-block-x{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--paper);box-shadow:0 0 0 1px var(--line);color:var(--ink-3);opacity:0;transition:opacity var(--fast) var(--std),color var(--fast) var(--std)}.pg-block-x svg{width:12px;height:12px}.pg-block:hover .pg-block-x,.pg-block-x:focus-visible{opacity:1}.pg-block:has(.pg-block-x):hover .pg-block-alert{opacity:0}.pg-block-act{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--paper);box-shadow:0 0 0 1px var(--line);color:var(--ink-3);opacity:0;transition:opacity var(--fast) var(--std),color var(--fast) var(--std)}.pg-block-act svg{width:12px;height:12px}.pg-block:hover .pg-block-act,.pg-block-act:focus-visible,.pg-block-act.is-open{opacity:1}.pg-block-act:hover,.pg-block-act.is-open{color:var(--ink)}.pg.has-focus .pg-block{transition:opacity var(--fast) var(--std),box-shadow var(--fast) var(--std)}.pg.has-focus .pg-block:not(.is-focus){opacity:.32}.pg.has-focus .pg-block.is-focus{box-shadow:inset 2.5px 0 0 var(--hue, var(--ink-4)),0 0 0 1.5px color-mix(in srgb,var(--hue, var(--ink-3)) 70%,transparent)}.pr-group+.pr-group{box-shadow:inset 0 1px 0 var(--line)}.pr-head{display:flex;align-items:center;gap:6px;width:100%;padding:11px 12px 9px 26px;text-align:left}.pr-name{flex:1;min-width:0;overflow:hidden;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.pr-count{color:var(--ink-3);font-size:11.5px}.pr-chev{display:grid;color:var(--ink-3);transition:transform var(--med) var(--out)}.pr-chev svg{width:13px;height:13px}.pr-chev:not(.is-open){transform:rotate(-90deg)}.pr-note{margin:0 12px 4px 40px;color:var(--ink-3);font-size:11.5px;line-height:15px}.pr-row{display:flex;align-items:flex-start;gap:6px;width:calc(100% - 20px);margin:0 6px 0 14px;padding:6px 8px 6px 6px;border-radius:8px;text-align:left;transition:background var(--fast) var(--std)}.pr-row:hover,.pr-row:focus-visible{background:var(--fill)}.pr-row:last-child{margin-bottom:8px}.pr-row .mark{flex:none;margin-top:1px}.pr-text{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.pr-sub{overflow:hidden;color:var(--ink-3);font-size:11.5px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.pr-label{display:-webkit-box;min-width:0;overflow:hidden;color:var(--ink-2);font-size:12.5px;line-height:17px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.pr-meta{flex:none;color:var(--ink-3);font-size:11.5px;line-height:17px}.pg-block-lock{display:grid;color:var(--ink-3)}.pg-block-lock svg{width:10px;height:10px}.plan-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.plan-option{display:flex;flex-direction:column;gap:4px;padding:16px}.plan-option.is-best{box-shadow:0 0 0 1.5px var(--ink),var(--shadow-rest)}.plan-option-name{font-size:13.5px;font-weight:600}.plan-option-finish{margin-top:14px;font-size:22px;font-weight:600;letter-spacing:-.02em}.plan-option-goal{display:flex;align-items:center;gap:6px}.plan-options-note{margin:14px 2px 0;color:var(--ink-3)}.plan-option-facts{display:flex;flex-direction:column;gap:6px;margin:14px 0 16px;padding-top:12px;box-shadow:inset 0 1px 0 var(--line)}.plan-option-facts>div{display:flex;justify-content:space-between;font-size:12.5px}.plan-option-facts dt{color:var(--ink-3)}.plan-option-facts dd{margin:0}.plan-option .btn{margin-top:auto;justify-content:center}.pg-block.is-continued{box-shadow:inset 2.5px 0 color-mix(in srgb,var(--hue, var(--ink-4)) 45%,transparent),inset 0 0 0 1px var(--line);background-image:repeating-linear-gradient(135deg,transparent 0 6px,color-mix(in srgb,var(--hue, var(--ink-4)) 7%,transparent) 6px 7px)}.pg-block.is-dropped{background:none;box-shadow:none;outline:1px dashed var(--line-2);outline-offset:-1px;animation:none}.pg-block.is-dropped:hover{transform:none;box-shadow:none}.pg-block.is-dropped .pg-block-code{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-4)}.pg-block.is-dropped .pg-block-sub{color:var(--ink-3)}.pg-block.is-dropped .pg-block-x{opacity:1;background:none;box-shadow:none;top:50%;transform:translateY(-50%)}.pg-block.is-dropped .pg-block-x:hover{background:var(--fill)}.pg-block-x:hover{color:var(--ink)}.pg-add{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:28px;border-radius:8px;color:var(--ink-3);font-size:12px;opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std),color var(--fast) var(--std)}.pg-add svg{width:13px;height:13px}.pg-cell:hover .pg-add,.pg-add:focus-visible,.pg-add.is-open{opacity:1}.pg-add:hover,.pg-add.is-open{background:var(--fill);color:var(--ink)}.pg.is-dragging .pg-add{opacity:0!important}.pg-add-field{gap:8px;height:30px;margin:2px 2px 6px;padding:0 9px;border-radius:8px;background:var(--fill);box-shadow:none}.pg-add-field svg{width:13px;height:13px;color:var(--ink-3)}.pg-add-field input{font-size:12.5px}.pg-add-field:focus-within{background:var(--paper);box-shadow:0 0 0 1px var(--line-2)}.pg-add-note{padding:10px}.pg-earlier{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 16px;box-shadow:inset 0 -1px 0 var(--line);color:var(--ink-2);font-size:12px;transition:background var(--fast) var(--std),color var(--fast) var(--std)}.pg-earlier:hover{background:var(--fill);color:var(--ink)}.pg-earlier svg{width:13px;height:13px;transition:transform var(--med) var(--out)}.pg-earlier.is-open svg{transform:rotate(90deg)}.pg-earlier.is-focus{background:var(--fill);color:var(--ink)}.pg-earlier-focus{margin-left:auto;color:var(--ink);font-weight:500}.plan-side{position:sticky;top:12px}.plan-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;height:42px}.plan-side-head .seg{flex:none}.ps{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:auto;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;transition:box-shadow var(--fast) var(--std)}.plan-side.is-over .ps{box-shadow:0 0 0 1.5px var(--ink-3),var(--shadow-rest)}.ps>*+*{box-shadow:inset 0 1px 0 var(--line)}.plan-side-hint{margin:10px 4px 0;color:var(--ink-3)}.ps-course{display:flex;align-items:center;gap:6px;min-height:48px;padding:6px 8px 6px 6px;cursor:grab;transition:background var(--fast) var(--std)}.ps-course:hover{background:var(--fill)}.ps-course:active{cursor:grabbing}.ps-grip{display:grid;place-items:center;width:14px;flex:none;color:var(--ink-4);opacity:0;transition:opacity var(--fast) var(--std)}.ps-grip svg{width:14px;height:14px}.ps-course:hover .ps-grip{opacity:1}.ps-course-main{display:flex;flex-direction:column;flex:1;gap:1px;min-width:0;text-align:left}.ps-course-code{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}.ps-required .ps-course-code:before{content:"";width:8px;height:8px;flex:none;border-radius:3px;background:var(--hue, var(--ink-3))}.ps-course-title{overflow:hidden;color:var(--ink-2);font-size:11.5px;line-height:15px;text-overflow:ellipsis;white-space:nowrap}.ps-required .ps-course-title{padding-left:14px}.ps-lock{display:grid;color:var(--ink-3)}.ps-lock svg{width:12px;height:12px}.ps-place{opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std)}.ps-course:hover .ps-place,.ps-place:focus-visible{opacity:1}.ps-course.is-placing{background:var(--fill);cursor:progress}.ps-course.is-placing .ps-place{opacity:1;cursor:progress}.ps-course.is-placing .ps-course-title{color:var(--ink-3)}.ps-choice-head{display:flex;align-items:flex-start;gap:6px;width:100%;padding:11px 12px 11px 26px;text-align:left;transition:background var(--fast) var(--std)}.ps-choice-head:hover{background:var(--fill)}.ps-choice-head .tt-swatch{margin-top:4.5px}.ps-choice-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ps-choice-name{font-size:12.5px;font-weight:550;line-height:17px}.ps-choice-say{color:var(--ink-2);font-size:11.5px;line-height:15px}.ps-choice-preview{overflow:hidden;color:var(--ink-3);font-size:11.5px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.ps-choice-chev{display:grid;margin-top:1px;color:var(--ink-3);transition:transform var(--med) var(--out)}.ps-choice-chev svg{width:14px;height:14px}.ps-choice.is-open .ps-choice-chev{transform:rotate(180deg)}.ps-choice-body{display:flex;flex-direction:column;padding:4px 0 8px 14px}.ps-choice-body .ps-course{min-height:44px;margin-right:6px;border-radius:8px}.ps-choice-group{display:flex;flex-direction:column}.ps-choice-group-label{margin:6px 14px 2px 26px;color:var(--ink-2)}.ps-choice-or{margin:6px 0 0 26px;color:var(--ink-3)}.ps-filter{flex:none;margin:0 14px 6px 26px}.ps-more{align-self:flex-start;margin:4px 0 2px 26px;font-size:12px}.ps-note{margin:0;padding:14px 16px}.impact-title{white-space:normal;text-wrap:pretty}.impact-sub{white-space:normal;text-overflow:clip}.impact-sub+.clamp-more{margin-top:0}@container canvas (max-width: 840px){.plan-board{grid-template-columns:minmax(0,1fr)}.plan-side{position:static;max-height:none}}@container canvas (max-width: 620px){.pg{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.pg>*{min-width:560px}.pg-row{grid-template-columns:64px repeat(3,minmax(164px,1fr))}}.plan-prog{position:relative;transition:background var(--fast) var(--std)}.plan-prog:hover{background:var(--fill)}.plan-prog-link{color:inherit;text-decoration:none}.plan-prog-link:after{content:"";position:absolute;inset:0}.plan-prog-x{opacity:0;transition:opacity var(--fast) var(--std)}a.plan-degree-row:hover{background:var(--fill)}.plan-prog:hover .plan-prog-x,.plan-prog-x:focus-visible{opacity:1}.plan-degree-row{align-items:flex-start;padding:11px 14px}.plan-wrap{font-weight:400;white-space:normal}.plan-cmp{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:baseline;padding:11px 16px}.plan-cmp.is-head{padding-bottom:8px}.plan-cmp-cell{font-size:13px;font-weight:600;text-wrap:pretty}.plan-cmp.is-same .plan-cmp-cell{color:var(--ink-3);font-weight:400}.rule-clause{align-items:flex-start;padding-block:9px}.rule-clause>.mark,.rule-clause>.row-meta{margin-top:2px}.rule-clause .row-main{gap:7px}.rule-single{display:flex;flex-direction:column;min-width:0}.rule-lead{color:var(--ink-2);font-size:12.5px;font-weight:500}.rule-group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;max-width:100%;padding:3px;border-radius:11px;background:var(--fill)}.rule-group .chip{gap:5px;padding:0 8px 0 7px}.rule-group-part{display:inline-flex;align-items:center;gap:3px;min-width:0}.rule-join{padding:0 2px;color:var(--ink-3);font-size:11.5px}.rule-words{display:inline-flex;align-items:center;min-height:30px;color:var(--ink-2);font-size:12.5px}.rule-sentence{padding:8px 12px;color:var(--ink-3);font-size:12.5px;line-height:28px}.rule-sentence .chip{height:22px;margin:0 3px;padding:0 6px;gap:4px;border-radius:6px;font-size:11.5px;vertical-align:middle}.rule-sentence .chip .mark{width:12px;height:12px}.gstep-planned{color:var(--ink-3);font-size:12px;font-weight:400}.rule-other{color:var(--ink-3);font-size:11.5px}.rule-note{margin-top:6px;color:var(--ink-3)}.rule-other-toggle{appearance:none;align-self:flex-start;padding:0;border:0;background:none;color:var(--ink-3);font-size:12px;cursor:pointer}.rule-other-toggle:hover{color:var(--ink)}.pg-block-tip{flex:1;min-width:0}.pg-block-tip>.pg-block-hit{width:100%}.exc-body{display:flex;flex-direction:column;gap:16px}.exc-field{display:flex;flex-direction:column;gap:6px;min-width:0}.exc-field>.seg{align-self:flex-start}.exc-label{color:var(--ink-2);font-weight:500}.exc-hint{min-height:17px;color:var(--ink-3)}.field.is-locked{background:var(--fill)}.exc-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.exc-arrow{display:grid;place-items:center;margin-bottom:17px;color:var(--ink-3)}.exc-arrow svg{width:14px;height:14px}.exc-kinds{display:flex;flex-direction:column;gap:8px}.exc-kind{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:12px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);text-align:left;transition:box-shadow var(--fast) var(--std),background var(--fast) var(--std)}.exc-kind:hover{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line-2)}.exc-kind-title{font-size:13.5px;font-weight:600}.exc-aside{margin:6px 2px 0;color:var(--ink-3)}.exc-part{align-items:flex-start;min-height:0;padding-block:11px;cursor:pointer}.exc-part input{margin-top:2px;accent-color:var(--ink)}.exc-part-label{font-size:13px;line-height:18px;text-wrap:pretty}.exc-glyph{display:grid;flex:none;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--info-fill);color:var(--info)}.exc-glyph svg{width:12px;height:12px}.legal-page{position:fixed;inset:0;overflow-y:auto;background:var(--desk);color:var(--ink)}.legal{max-width:680px;margin:0 auto;padding:56px 24px 96px;font-size:15px;line-height:25px}.legal-back{color:var(--ink-3);font-size:13px;text-decoration:none}.legal-back:hover{color:var(--ink)}.legal h1{margin:28px 0 6px;font-size:34px;font-weight:650;letter-spacing:-.02em;line-height:40px}.legal-updated{margin:0 0 32px;color:var(--ink-3);font-size:13px}.legal h2{margin:36px 0 8px;font-size:18px;font-weight:600;line-height:26px}.legal h3{margin:20px 0 4px;font-size:15px;font-weight:600}.legal p,.legal ul{margin:0 0 12px;color:var(--ink-2)}.legal ul{padding-left:20px}.legal li+li{margin-top:4px}.legal a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.legal-foot{display:flex;flex-wrap:wrap;gap:18px;margin-top:56px;padding-top:20px;border-top:1px solid var(--line);font-size:13px}.legal-foot a{color:var(--ink-3);text-decoration:none}.legal-foot a:hover{color:var(--ink)}.site-foot{margin-top:40px;padding-top:16px;border-top:1px solid var(--line);color:var(--ink-3);font-size:12px;line-height:1.5}@supports not (scrollbar-color: auto){.canvas-scroll,.util-scroll,.ai-scroll,.todo-board.is-wide,.ps,.pg{scrollbar-width:auto}::-webkit-scrollbar{width:11px;height:11px;background:transparent}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:var(--line-2) padding-box}}.dates-filters{display:flex;align-items:center;gap:8px;margin-left:auto}.dates-for-you{margin-top:28px}.dates-month{margin-top:24px}.dates-month-name{margin:0 0 8px 2px}.date-row{align-items:center;gap:16px;min-height:56px;padding:10px 16px}.date-row .row-main{align-self:center}.date-day{display:flex;flex:none;flex-direction:column;align-items:flex-start;width:68px;line-height:1}.date-day .t-micro{color:var(--ink-3);white-space:nowrap}.date-day b{margin-top:5px;font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}.date-day.is-estimate b{font-weight:500;color:var(--ink-2)}.date-day-icon{justify-content:center;color:var(--ink-3)}.date-day-icon svg{width:18px;height:18px}.date-label{font-weight:500;line-height:19px;text-wrap:pretty}.date-note{display:block;margin-top:3px;color:var(--ink-3);text-wrap:pretty}.date-changed{margin-left:8px;vertical-align:1px;color:var(--attn);border-color:color-mix(in srgb,var(--attn) 40%,transparent)}.date-end{display:flex;flex:none;align-items:center;gap:10px;margin-left:auto}.date-flag{display:inline-flex;width:28px;justify-content:center}.date-row:hover .flag,.date-row:focus-within .flag{opacity:1}.date-watch{flex:none;width:92px}.date-watch{opacity:0;transition:opacity var(--fast) var(--std),background var(--fast) var(--std),color var(--fast) var(--std),box-shadow var(--fast) var(--std)}.date-watch svg{width:14px;height:14px}.date-row:hover .date-watch,.date-row:focus-within .date-watch,.date-watch.is-on{opacity:1}.date-watch.is-on{background:transparent;box-shadow:0 0 0 1px color-mix(in srgb,var(--info) 35%,transparent);color:var(--info)}.date-row.is-watched{background:var(--info-fill)}.date-row.is-watched .date-day :is(.t-micro,b){color:var(--info)}.date-badge-slot{display:inline-flex;flex:none;justify-content:flex-end;min-width:84px}.date-badge{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-sub-row{min-height:48px}.date-pct{flex:none;min-width:56px;text-align:right;font-size:20px;font-weight:600;letter-spacing:-.01em}.date-pct.is-quiet{color:var(--ink-4, var(--ink-3));font-weight:400}.dates-refund+.dates-refund{margin-top:12px}.date-suggest.paper{margin:18px 0}.date-row.is-past .date-label,.date-day.is-past b{color:var(--ink-3);font-weight:400}.dates-foot{margin-top:32px}.section-toggle{all:unset;display:inline-flex;align-items:center;gap:6px;margin:-4px 0 -4px -8px;padding:4px 8px;cursor:pointer;border-radius:8px;transition:background var(--fast) var(--std)}.section-toggle:hover{background:var(--fill)}.section-toggle:focus-visible{outline:2px solid var(--focus, var(--ink-3));outline-offset:2px}.section-toggle svg{width:16px;height:16px;color:var(--ink-3);transition:transform .16s ease}.section-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.imp-added-foot{padding-top:8px;border-top:1px solid var(--line)}.cw-add{margin-top:24px}.cw-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:16px}.cw-course{padding:4px 16px}.cw-head{display:flex;align-items:center;gap:4px;min-height:52px}.cw-course-name{appearance:none;display:flex;flex:1;align-items:baseline;gap:10px;min-width:0;margin-left:-8px;padding:4px 8px;border:0;border-radius:8px;background:none;color:inherit;text-align:left;cursor:pointer;transition:background var(--fast) var(--std)}.cw-course-name:hover{background:var(--fill)}.cw-course-name .t-code{font-weight:600}.cw-course-title{min-width:0;overflow:hidden;color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap}.cw-tr{display:grid;grid-template-columns:minmax(0,1.2fr) 104px minmax(0,1fr) 28px;align-items:baseline;gap:16px;padding:9px 0;box-shadow:inset 0 1px 0 var(--line)}.cw-th{padding:2px 0 4px;box-shadow:none;color:var(--ink-3)}.cw-tr>[data-tip]{min-width:0}.cw-name{display:grid;gap:2px;min-width:0}.cw-tr.is-part .cw-name{padding-left:16px}.cw-item{font-weight:500;text-wrap:pretty}.cw-rule{color:var(--ink-3);text-wrap:pretty}.cw-due{min-width:0;text-wrap:pretty}.cw-tr.is-past .cw-item,.cw-tr.is-past .cw-weight,.cw-tr.is-past .cw-due{color:var(--ink-3);font-weight:400}:is(.cw-weight,.cw-due,.cw-total,.cw-read).is-attn{color:var(--attn)}.cw-flag{display:inline-flex;align-self:center;align-items:center;justify-content:center;height:0}.cw-tr:hover .flag,.cw-tr:focus-within .flag{opacity:1}.cw-rules{margin:0;padding:9px 0 9px 18px;box-shadow:inset 0 1px 0 var(--line);color:var(--ink-2)}.cw-rules li+li{margin-top:4px}.cw-tfoot{display:flex;align-items:center;gap:8px;min-height:40px;padding:4px 0;box-shadow:inset 0 1px 0 var(--line)}.cw-source{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-total{flex:none;font-size:13px;font-weight:600}.cw-table.is-editing .cw-tr{grid-template-columns:minmax(0,1.2fr) 112px minmax(0,1fr) 32px;align-items:start;gap:10px;padding:4px 0}.cw-table.is-editing .cw-th{padding:2px 0 4px}.cw-table.is-editing .cw-tr>.btn-icon{margin-top:4px}.cw-table.is-editing .cw-th>.t-micro{padding-left:6px}.cw-table.is-editing .cw-rule-row{grid-template-columns:minmax(0,1fr) 32px}.cw-table.is-editing .field{gap:6px;padding:0 6px;background:transparent;box-shadow:none}.cw-table.is-editing .field:hover{background:var(--fill)}.cw-table.is-editing .field:focus-within{background:var(--paper);box-shadow:0 0 0 1px var(--focus)}.cw-table.is-editing .field input{flex:1;min-width:0}.cw-table.is-editing .cw-weight{width:100%}.cw-table.is-editing .cw-rule-field input{color:var(--ink-2)}.cw-table.is-editing .cw-tfoot{margin-top:4px}.cw-mark{flex:none}.cw-pick{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:4px 0 2px 6px}.cw-pick .cw-read{margin:0 2px 0 0}.cw-actions{display:flex;justify-content:flex-end;gap:8px;padding:8px 0 12px}.cw-none{display:flex;gap:8px;padding:0 0 14px}@container canvas (max-width: 560px){.cw-tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}.cw-name{flex:1 1 100%}.cw-tr>:nth-child(3){flex:1;min-width:0}.cw-tr.is-part{padding-left:16px}.cw-tr.is-part .cw-name{padding-left:0}.cw-table.is-editing .cw-tr{display:grid;grid-template-columns:88px minmax(0,1fr) 32px;gap:2px 8px}.cw-table.is-editing .cw-tr>:first-child{grid-column:1 / 3}.cw-table.is-editing .cw-tr>:last-child{grid-column:3;grid-row:1}.cw-table.is-editing .cw-tr.cw-rule-row{grid-template-columns:minmax(0,1fr) 32px}.cw-table.is-editing .cw-tr.cw-rule-row>:first-child{grid-column:1}.cw-table.is-editing .cw-tr.cw-rule-row>:last-child{grid-column:2}.cw-table .cw-tr.cw-th,.cw-tr .is-none{display:none}}.si-review{display:grid;gap:14px}.si-target{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.si-warn{color:var(--attn)}.si-changes{margin:0;color:var(--ink-2)}.tt-due{display:grid;grid-template-columns:56px repeat(5,minmax(0,1fr));align-items:start;padding:6px 0;box-shadow:inset 0 -1px 0 var(--line)}.tt-due-label{padding-top:4px;color:var(--ink-3);text-align:center}.tt-due-day{display:grid;gap:3px;min-width:0;padding:0 4px}.tt-due-chip{appearance:none;display:block;width:100%;min-width:0;overflow:hidden;padding:3px 7px;border:0;border-radius:6px;background:color-mix(in srgb,var(--hue) 13%,var(--paper));box-shadow:inset 2.5px 0 0 var(--hue);color:var(--ink);font-size:10.5px;line-height:14px;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:background var(--fast) var(--std)}.tt-due-chip:hover{background:color-mix(in srgb,var(--hue) 22%,var(--paper))}.tt-due-chip b{color:color-mix(in srgb,var(--hue) 62%,var(--ink));font-weight:600}.date-course{color:var(--ink-2)}.ob{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px 96px;box-sizing:border-box;background:var(--canvas);color:var(--ink)}.ob-col{display:flex;flex-direction:column;align-items:center;width:100%;max-width:360px;text-align:center}.ob-col-wide{max-width:560px}.ob-col-xwide{max-width:720px}.ob-form{display:contents}.ob-mark{display:block;background:var(--ink);-webkit-mask:url(/brand/atlas-mark.svg) center / contain no-repeat;mask:url(/brand/atlas-mark.svg) center / contain no-repeat}.ob-title{margin:20px 0 0;font-size:17px;line-height:24px;font-weight:500;letter-spacing:-.01em}.ob-title-lg{margin:0;font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.02em}.ob-sub{margin:6px 0 0;font-size:13px;line-height:19px;color:var(--ink-muted)}.ob-title-lg+.ob-sub{margin-top:8px}.ob-body{margin:8px 0 0;font-size:13px;line-height:20px;color:var(--ink-muted);text-wrap:balance}.ob-body b{font-weight:500;color:var(--ink);overflow-wrap:anywhere}.ob-stack{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:24px}.ob-auth{padding-top:88px}.ob-bar{position:absolute;top:0;right:0;left:0;display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 24px;box-sizing:border-box}.ob-bar-switch{display:flex;align-items:center;gap:12px;margin:0;color:var(--ink-muted);font-size:13px}.ob-pill{appearance:none;height:30px;padding:0 14px;border:0;border-radius:999px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #0000000a;color:var(--ink);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease)}.ob-pill:hover{box-shadow:0 0 0 1px var(--line-strong),0 1px 3px #0000000f}.ob-bar-back{appearance:none;display:inline-flex;align-items:center;gap:4px;height:30px;margin-left:-8px;padding:0 12px 0 8px;border:0;border-radius:999px;background:none;color:var(--ink-muted);font:inherit;font-size:13px;cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.ob-bar-back:hover{background:var(--hover-fill);color:var(--ink)}.ob-foot{position:absolute;right:0;bottom:28px;left:0;padding:0 24px;color:var(--ink-faint);font-size:12px;line-height:18px;text-align:center;text-wrap:balance}.ob-foot a{color:var(--ink-muted);text-decoration:none;transition:color var(--dur-fast) var(--ease)}.ob-foot a:hover,.ob-foot-link:hover:not(:disabled){color:var(--ink);text-decoration:underline;text-underline-offset:2px}.ob-foot-link{appearance:none;padding:0;border:0;background:none;color:var(--ink-muted);font:inherit;cursor:pointer;transition:color var(--dur-fast) var(--ease)}.ob-foot-link:disabled{opacity:.5;cursor:default}.ob-skip{margin:20px 0 0;font-size:13px;line-height:18px;text-align:center}.ob-google{display:flex;justify-content:center;min-height:44px;color-scheme:light}.ob-stack-form{gap:20px;margin-top:28px}.ob-actions{display:flex;justify-content:center;width:100%}.ob-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:100%;height:40px;padding:0 18px;border:0;border-radius:999px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #0000000a;color:var(--ink);font:inherit;font-size:13px;font-weight:500;text-decoration:none;box-sizing:border-box;cursor:pointer;transition:background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease)}.ob-btn:hover:not(:disabled){box-shadow:0 0 0 1px var(--line-strong),0 1px 3px #0000000f}.ob-btn-primary{background:var(--ink);box-shadow:none;color:var(--panel-solid)}.ob-btn-primary:hover:not(:disabled){box-shadow:none;opacity:.88}.ob-btn:disabled{opacity:.45;cursor:default}.ob-btn-primary:disabled{background:transparent;box-shadow:0 0 0 1px var(--line);color:var(--ink-faint);opacity:1}.ob-input{width:100%;height:40px;padding:0 14px;box-sizing:border-box;border:0;border-radius:10px;outline:none;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line-strong);color:var(--ink);font:inherit;font-size:13px}.ob-input:focus{box-shadow:0 0 0 1px var(--ink-muted),0 0 0 4px color-mix(in srgb,var(--ink) 6%,transparent)}.ob-input::placeholder{color:var(--ink-faint)}.ob-code{text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;letter-spacing:.14em}.ob-code::placeholder{font-family:var(--font-inter, inherit);font-size:13px;letter-spacing:0}.ob-error{margin:14px 0 0;font-size:12.5px;color:var(--incomplete)}.ob-signing .ob-mark{animation:ob-signing-breathe 1.8s ease-in-out infinite}.ob-signing-bar{position:relative;display:block;width:120px;height:2px;margin-top:22px;overflow:hidden;border-radius:999px;background:var(--line-strong)}.ob-signing-bar:after{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;border-radius:inherit;background:var(--ink);animation:ob-signing-run 1.3s cubic-bezier(.65,0,.35,1) infinite}@keyframes ob-signing-run{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes ob-signing-breathe{0%,to{opacity:1}50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.ob-signing .ob-mark,.ob-signing-bar:after{animation:none}}.ob-back{appearance:none;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:12.5px;font-weight:500;text-decoration:none;cursor:pointer}.ob-back{margin-top:18px;font-weight:400}.ob-back:hover{text-decoration:underline;text-underline-offset:3px}.ob-tile{width:88px;height:88px;border-radius:20px;box-shadow:0 12px 30px #0000002e,0 0 0 1px #0000000f}.ob-hero{margin:28px 0 0;font-size:44px;line-height:52px;font-weight:600;letter-spacing:-.025em}.ob-lede{margin:16px 0 0;font-size:14px;line-height:22px;color:var(--ink-muted)}.ob-btn-cta{width:232px;margin-top:28px}.ob-stage{display:flex;justify-content:center;width:100%;animation:ob-in .36s var(--ease) both}@keyframes ob-in{0%{opacity:0;transform:translateY(6px)}}.ob-enter>*{animation:ob-rise .82s cubic-bezier(.16,1,.3,1) both}.ob-enter>:nth-child(1){animation-name:ob-rise-tile;animation-duration:.96s}.ob-enter>:nth-child(2){animation-delay:.14s}.ob-enter>:nth-child(3){animation-delay:.26s}.ob-enter>:nth-child(4){animation-delay:.38s}@keyframes ob-rise{0%{opacity:0;transform:translateY(12px);filter:blur(6px)}}@keyframes ob-rise-tile{0%{opacity:0;transform:translateY(8px) scale(.9);filter:blur(8px)}}.ob-backdrop{position:fixed;inset:0;overflow:hidden;pointer-events:none;opacity:0;transition:opacity 1.4s cubic-bezier(.16,1,.3,1);--ob-fade: linear-gradient( to bottom, #000 6%, rgba(0, 0, 0, .86) 20%, rgba(0, 0, 0, .64) 32%, rgba(0, 0, 0, .42) 43%, rgba(0, 0, 0, .24) 53%, rgba(0, 0, 0, .11) 62%, rgba(0, 0, 0, .035) 70%, transparent 77% );-webkit-mask-image:var(--ob-fade);mask-image:var(--ob-fade)}.ob-backdrop.is-on{opacity:1}.ob-backdrop-mark{position:absolute;left:50%;top:6vh;width:min(100vh,130vw);aspect-ratio:1;background:linear-gradient(to bottom,color-mix(in srgb,var(--ink) 6%,transparent),color-mix(in srgb,var(--ink) 3.5%,transparent) 50%);-webkit-mask:url(/brand/atlas-mark.svg) center / contain no-repeat;mask:url(/brand/atlas-mark.svg) center / contain no-repeat;transform:translate(-50%) scale(1.04);transition:transform 1.8s cubic-bezier(.16,1,.3,1)}.ob-backdrop.is-on .ob-backdrop-mark{transform:translate(-50%)}.ob-stage{position:relative}@media(prefers-reduced-motion:reduce){.ob-enter>*,.ob-stage{animation:none}.ob-backdrop,.ob-backdrop-mark{transition:none}}.ob-dots{position:absolute;left:50%;bottom:40px;display:flex;gap:12px;transform:translate(-50%)}.ob-dot{appearance:none;width:6px;height:6px;padding:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--ink) 18%,transparent);cursor:pointer}.ob-dot:disabled{cursor:default}.ob-dot.is-on{background:var(--ink-muted)}.ob-themes{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;margin-top:28px}.ob-theme{appearance:none;display:flex;flex-direction:column;gap:10px;padding:0;border:0;background:none;color:var(--ink-muted);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.ob-theme.is-on{color:var(--ink)}.ob-theme-preview{display:flex;height:150px;padding:8px;gap:6px;box-sizing:border-box;border-radius:14px;box-shadow:0 0 0 1px var(--line);transition:box-shadow var(--dur-fast) var(--ease)}.ob-theme.is-on .ob-theme-preview{box-shadow:0 0 0 2px var(--ink)}.ob-theme-light{background:#efeff0}.ob-theme-dark{background:#161616}.ob-theme-side{width:26%}.ob-theme-canvas{flex:1;display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:9px}.ob-theme-light .ob-theme-canvas{background:#f9f9fa}.ob-theme-dark .ob-theme-canvas{background:#222221}.ob-theme-card{height:38%;border-radius:6px}.ob-theme-card-short{height:24%;width:70%}.ob-theme-light .ob-theme-card{background:#fff;box-shadow:0 0 0 1px #0000000f}.ob-theme-dark .ob-theme-card{background:#2c2c2b}.ob-theme-label{text-align:center}.ob-card-placeholder{background:color-mix(in srgb,var(--ink) 4%,var(--panel-solid));box-shadow:0 0 0 1px var(--line);animation:ob-card-wait 1.4s ease-in-out infinite}@keyframes ob-card-wait{50%{opacity:.55}}.ob-cards{display:grid;grid-template-columns:repeat(var(--ob-cols, 3),minmax(0,1fr));gap:12px;width:100%;margin-top:32px}.ob-card{appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:6px;min-height:156px;padding:18px;border:0;border-radius:16px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #00000008;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease),transform .24s cubic-bezier(.16,1,.3,1)}.ob-card:hover{box-shadow:0 0 0 1px var(--line-strong),0 10px 24px -14px #00000038;transform:translateY(-1px)}.ob-card.is-on{box-shadow:0 0 0 2px var(--ink),0 10px 24px -14px #00000038}.ob-card-code{font-size:28px;line-height:32px;font-weight:600;letter-spacing:-.025em}.ob-card-name{font-size:12.5px;line-height:17px;color:var(--ink-muted)}.ob-card-check{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-strong);color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.ob-card-check svg{width:12px;height:12px}.ob-card.is-on .ob-card-check{background:var(--ink);box-shadow:none;color:var(--panel-solid)}.ob-demos{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;margin:32px 0 0;padding:0}.ob-demo{display:flex;flex-direction:column;overflow:hidden;border-radius:16px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #00000008;text-align:left}.ob-demo-stage{position:relative;display:grid;place-items:center;height:200px;overflow:hidden;background:color-mix(in srgb,var(--ink) 2.5%,transparent);box-shadow:inset 0 -1px 0 var(--line)}.ob-demo-art[data-demo=import]{transform:translateY(-18%)}.ob-demo-text{display:flex;flex-direction:column;gap:3px;padding:14px 16px 16px}.ob-demo-title{font-size:13.5px;line-height:18px;font-weight:500}.ob-demo-hint{font-size:12px;line-height:17px;color:var(--ink-muted)}@media(max-width:720px){.ob-demos,.ob-cards{grid-template-columns:1fr}.ob-card{min-height:0}}.ob-grad{display:flex;justify-content:center;width:100%;margin-top:28px}.ob-term{--cell: 2em;--r: calc(var(--cell) * 1.539);--window: 2.65em;position:relative;display:flex;align-items:stretch;width:312px;max-width:100%;height:var(--window);border-radius:16px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #0000000a,0 12px 28px -20px #0000004d;font-size:21px}.ob-term-seg{--seg: var(--panel-solid);position:relative;display:flex;align-items:center;gap:6px;padding:0 7px 0 20px;background:var(--seg);transition:background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.ob-term-seg.is-season{flex:1;border-radius:16px 0 0 16px}.ob-term-seg.is-season .ob-lock-box{flex:1}.ob-term-seg.is-year{border-radius:0 16px 16px 0}.ob-term-seg:hover{--seg: color-mix(in srgb, var(--ink) 2.5%, var(--panel-solid))}.ob-term-seg:after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;box-shadow:inset 0 0 0 2px var(--ink);opacity:0;pointer-events:none}.ob-term-seg:has(.ob-lock-box:focus-visible):after{opacity:1}.ob-term-rule{flex:none;width:1px;margin:12px 0;background:var(--line)}.ob-lock-box{position:relative;display:flex;height:100%;overflow:hidden;color:var(--ink);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1;cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none;outline:none}.ob-lock-box:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(var(--seg) 10%,color-mix(in srgb,var(--seg) 55%,transparent) 21%,transparent 32%,transparent 68%,color-mix(in srgb,var(--seg) 55%,transparent) 79%,var(--seg) 90%)}.ob-lock-drums{display:flex;height:100%}.ob-lock-wheel{position:relative;height:100%}.ob-lock-season .ob-lock-wheel{width:4.6em}.ob-lock-season .ob-lock-face{justify-items:start}.ob-lock-year .ob-lock-wheel{width:.62em}@property --turn{syntax: "<angle>"; inherits: true; initial-value: 0deg;}.ob-lock-drum{position:absolute;inset:0;transition:--turn .44s linear(0,.048,.165,.315,.474,.623,.752,.858,.938,.996,1.033,1.054,1.062,1.062,1.057,1.048,1.038,1.028,1.019,1.012,1.006,1.002,.999,.997,.996,.996,.996,.997,1)}@supports not (transition-timing-function: linear(0,1)){.ob-lock-drum{transition-timing-function:cubic-bezier(.3,1.3,.5,1)}}.ob-lock-face{--a: calc(var(--turn) + var(--face));position:absolute;left:0;right:0;top:50%;display:grid;place-items:center;height:var(--cell);margin-top:calc(var(--cell) / -2);transform:translateY(calc(sin(var(--a)) * var(--r) * -1)) scaleY(max(cos(var(--a)),0))}@supports not (transform: scaleY(cos(0deg))){.ob-lock-face{opacity:0}.ob-lock-face.is-front{opacity:1}}.ob-stepper{display:flex;flex:none;flex-direction:column;gap:2px}.ob-stepper button{appearance:none;display:grid;place-items:center;width:28px;height:20px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.ob-stepper button:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink)}.ob-stepper button svg{transition:transform .16s cubic-bezier(.16,1,.3,1)}.ob-stepper .is-up:active:not(:disabled) svg{transform:translateY(-1.5px)}.ob-stepper .is-down:active:not(:disabled) svg{transform:translateY(1.5px)}.ob-stepper button:disabled{opacity:.3;cursor:default}.ob-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion:reduce){.ob-lock-drum{transition:none}}.ob-drop{appearance:none;display:flex;flex-direction:column;align-items:center;width:100%;margin-top:28px;padding:26px 24px 24px;border:0;border-radius:20px;background:color-mix(in srgb,var(--ink) 3%,var(--canvas));box-shadow:inset 0 0 0 1px var(--line),inset 0 1px 3px #0000000a;color:var(--ink);font:inherit;cursor:pointer;transition:background var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.ob-drop:hover{background:color-mix(in srgb,var(--ink) 4.5%,var(--canvas));box-shadow:inset 0 0 0 1px var(--line-strong),inset 0 1px 3px #0000000a}.ob-drop.is-over{background:color-mix(in srgb,var(--ink) 6%,var(--canvas));box-shadow:inset 0 0 0 1.5px var(--ink),inset 0 1px 3px #0000000a}.ob-drop:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.ob-drop-art{position:relative;width:220px;height:128px;margin-bottom:16px}.ob-drop-art:after{content:"";position:absolute;left:42px;right:42px;bottom:0;height:14px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.16),transparent);transition:transform .52s cubic-bezier(.16,1,.3,1),opacity .52s cubic-bezier(.16,1,.3,1)}.ob-drop:hover .ob-drop-art:after{transform:scaleX(1.12);opacity:.8}.ob-drop.is-over .ob-drop-art:after{transform:scaleX(.86);opacity:1}.ob-paper{position:absolute;left:50%;top:46%;transition:transform .56s cubic-bezier(.16,1,.3,1)}.ob-paper-body{position:relative;display:block;overflow:hidden;border-radius:9px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #0000000d,0 16px 28px -18px #00000057;animation:ob-float 6s ease-in-out infinite}.ob-paper.is-shot{transform:translate(-50%,-50%) translate(-36px,6px) rotate(-7deg)}.ob-paper.is-shot .ob-paper-body{width:124px;height:86px}.ob-paper.is-pdf{z-index:1;transform:translate(-50%,-50%) translate(40px,-2px) rotate(6deg)}.ob-paper.is-pdf .ob-paper-body{width:82px;height:106px;border-radius:7px;animation-delay:-3s}.ob-drop:hover .ob-paper.is-shot{transform:translate(-50%,-50%) translate(-46px,1px) rotate(-10deg)}.ob-drop:hover .ob-paper.is-pdf{transform:translate(-50%,-50%) translate(50px,-8px) rotate(9deg)}.ob-drop.is-over .ob-paper.is-shot{transform:translate(-50%,-50%) translate(-24px,12px) rotate(-3deg)}.ob-drop.is-over .ob-paper.is-pdf{transform:translate(-50%,-50%) translate(26px,8px) rotate(3deg)}.ob-paper-bar{position:absolute;inset:0 0 auto;height:15px;box-shadow:inset 0 -1px 0 var(--line)}.ob-paper-bar:before{content:"";position:absolute;top:5.5px;left:8px;width:4px;height:4px;border-radius:50%;background:color-mix(in srgb,var(--ink) 18%,transparent);box-shadow:7px 0 color-mix(in srgb,var(--ink) 18%,transparent),14px 0 color-mix(in srgb,var(--ink) 18%,transparent)}.ob-paper-ring{position:absolute;top:30px;left:13px;width:38px;height:38px;border-radius:50%;background:conic-gradient(var(--ink) 0 64%,color-mix(in srgb,var(--ink) 10%,transparent) 0);-webkit-mask:radial-gradient(closest-side,transparent 66%,#000 68%);mask:radial-gradient(closest-side,transparent 66%,#000 68%)}.ob-paper-lines,.ob-paper-rows{position:absolute;display:flex;flex-direction:column}.ob-paper-lines{top:34px;left:62px;right:13px;gap:7px}.ob-paper-lines i,.ob-paper-rows i{display:block;height:5px;border-radius:3px;background:color-mix(in srgb,var(--ink) 10%,transparent)}.ob-paper-lines i:first-child,.ob-paper-rows i:first-child{background:color-mix(in srgb,var(--ink) 24%,transparent)}.ob-paper-lines i:nth-child(2){width:72%}.ob-paper-lines i:nth-child(3){width:86%}.ob-paper-rows{top:16px;left:10px;right:10px;gap:7px}.ob-paper-rows i:first-child{width:62%}.ob-paper-rows i:not(:first-child){background:linear-gradient(90deg,color-mix(in srgb,var(--ink) 10%,transparent) 0 56%,transparent 56% 76%,color-mix(in srgb,var(--ink) 10%,transparent) 76%)}.ob-paper-tag{position:absolute;left:9px;bottom:9px;padding:2px 5px;border-radius:4px;background:var(--ink);color:var(--panel-solid);font-size:8.5px;line-height:11px;font-weight:700;letter-spacing:.06em}@keyframes ob-float{50%{transform:translateY(-3px)}}.ob-drop-title{font-size:15px;line-height:21px;font-weight:600;letter-spacing:-.01em}.ob-drop-hint{margin-top:2px;font-size:12.5px;line-height:18px;color:var(--ink-muted)}@media(prefers-reduced-motion:reduce){.ob-paper-body{animation:none}.ob-paper,.ob-drop-art:after{transition:none}}.ob-imp{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:28px;text-align:left}.ob-files{list-style:none;display:flex;flex-direction:column;margin:0;padding:0;overflow:hidden;border-radius:16px;background:var(--panel-solid);box-shadow:0 0 0 1px var(--line),0 1px 2px #00000008}.ob-file{display:flex;align-items:center;gap:12px;padding:10px 12px;animation:ob-file-in .32s cubic-bezier(.16,1,.3,1) backwards}.ob-file+.ob-file{box-shadow:inset 0 1px 0 var(--line)}@keyframes ob-file-in{0%{opacity:0;transform:translateY(4px)}}.ob-file-thumb{display:grid;flex:none;place-items:center;width:36px;height:36px;overflow:hidden;border-radius:8px;background:color-mix(in srgb,var(--ink) 5%,transparent);box-shadow:inset 0 0 0 1px var(--line)}.ob-file-thumb img{width:100%;height:100%;object-fit:cover;object-position:top left}.ob-file-doc{font-size:9px;font-weight:650;letter-spacing:.04em;color:var(--ink-muted)}.ob-file-text{display:flex;flex:1;flex-direction:column;min-width:0}.ob-file-name{overflow:hidden;font-size:13px;line-height:18px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.ob-file-sub{font-size:12px;line-height:17px;color:var(--ink-muted)}.ob-file.is-failed .ob-file-sub,.ob-file.is-rejected .ob-file-sub{color:var(--incomplete, #a13b2c)}.ob-file-acts{display:inline-flex;flex:none;align-items:center;gap:8px}.ob-file-x,.ob-file-done{appearance:none;display:grid;flex:none;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink-muted)}.ob-file-x{cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.ob-file-x:hover{background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink)}.ob-file-x svg,.ob-file-done svg{width:12px;height:12px}.ob-file-done{background:var(--ink);color:var(--panel-solid);width:20px;height:20px}.ob-file-spin{flex:none;width:16px;height:16px;margin:4px;border-radius:50%;border:1.5px solid var(--line-strong);border-top-color:var(--ink);animation:ob-spin .8s linear infinite}@keyframes ob-spin{to{transform:rotate(360deg)}}.ob-found{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border-radius:16px;background:color-mix(in srgb,var(--ink) 3%,transparent);box-shadow:inset 0 0 0 1px var(--line);animation:ob-file-in .36s cubic-bezier(.16,1,.3,1) backwards}.ob-found-head{margin:0;font-size:15px;line-height:21px;font-weight:600;letter-spacing:-.01em}.ob-found-line,.ob-found-note{margin:0;font-size:12.5px;line-height:18px;color:var(--ink-muted)}.ob-found-note{margin-top:4px}.ob-link{appearance:none;padding:0;border:0;background:none;color:var(--ink-muted);font:inherit;font-size:12.5px;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}.ob-link:hover{color:var(--ink)}.ob-imp-more{align-self:center}.ob-imp-more.is-over{color:var(--ink)}@media(prefers-reduced-motion:reduce){.ob-file,.ob-found{animation:none}}.ob-design-note{margin:12px 0 0;font-size:11px;color:var(--ink-faint);text-align:center}.ob-design-note-fixed{position:fixed;top:14px;left:0;right:0;margin:0}.ob-scope,.ob-demo-art{--panel-solid: var(--paper);--ink-muted: var(--ink-2);--ink-faint: var(--ink-3);--line-strong: var(--line-2);--dur-fast: var(--fast);--ease: var(--std)}.ob-demo-art{display:block}.ob-demo-art svg{display:block;width:100%;height:100%}.account-page{--ink-muted: var(--ink-2);--ink-faint: var(--ink-3);--panel-solid: var(--paper);--panel-muted: var(--paper-2);--line-strong: var(--line-2);--dur-fast: var(--fast);--ease: var(--std);--hover-fill: var(--fill);--font-inter: var(--font);--bg0: var(--canvas);--incomplete: var(--risk);position:fixed;inset:0;overflow-y:auto;background:var(--canvas);color:var(--ink)}:root{--tour-dim: color-mix(in srgb, var(--canvas) 74%, transparent)}html[data-theme=dark]{--tour-dim: color-mix(in srgb, #0c0c0c 64%, transparent)}[data-tour],#degree-programs,#program-options,#program-required,#records-import{scroll-margin:28px}.tour-hole,.tour-ring{position:fixed;top:0;left:0;z-index:38;pointer-events:none}.tour-hole{box-shadow:0 0 0 200vmax var(--tour-dim);animation:tour-fade .32s var(--std) backwards;transition:opacity .36s var(--std)}.tour-ring{box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 13%,transparent),0 16px 36px -20px #0000004d;animation:tour-fade .32s var(--std) backwards;transition:opacity .24s var(--std)}.tour-hole.is-gliding,.tour-ring.is-gliding{transition:left var(--glide) var(--out),top var(--glide) var(--out),width var(--glide) var(--out),height var(--glide) var(--out),border-radius var(--glide) var(--out),opacity .24s var(--std)}.tour-ring.is-off{opacity:0}.tour-hole.is-opening{animation:tour-open var(--glide) var(--out) both}.tour-ring.is-opening{animation:tour-open var(--glide) var(--out) both,tour-fade .24s var(--std) both}.tour-ring.is-action:before,.tour-ring.is-hint:before{content:"";position:absolute;inset:-1px;border-radius:inherit;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--ink) 34%,transparent),0 0 0 3px color-mix(in srgb,var(--ink) 5%,transparent);opacity:0;animation:tour-breathe 2.8s var(--std) infinite}.tour-ring-ack{position:absolute;inset:-1px;border-radius:inherit;box-shadow:0 0 0 2px var(--ink);animation:tour-ack .72s var(--out) forwards}.tour.is-complete .tour-hole,.tour.is-complete .tour-ring,.tour.is-leaving .tour-hole,.tour.is-leaving .tour-ring{opacity:0}.tour.is-complete .tour-hole{transition:opacity .52s var(--std)}.tour-callout{position:fixed;top:0;left:0;z-index:39;outline:none;transition:opacity .24s var(--std)}.tour-callout.is-gliding{transition:transform var(--glide) var(--out),opacity .24s var(--std)}.tour.is-leaving .tour-callout{opacity:0}.tour-callout.is-away{opacity:0;pointer-events:none;transition:opacity .16s var(--std)}.tour-callout[data-side]:after,.tour-hint[data-side]:after{content:"";position:absolute;width:10px;height:10px;background:var(--paper);transform:rotate(45deg);animation:tour-fade .32s var(--out) backwards;pointer-events:none}.tour-callout.is-gliding[data-side]:after{transition:left var(--glide) var(--out),top var(--glide) var(--out)}:is(.tour-callout,.tour-hint)[data-side=bottom]:after{top:-5px;left:calc(var(--arrow) - 5px);box-shadow:-1px -1px 0 0 var(--line)}:is(.tour-callout,.tour-hint)[data-side=top]:after{bottom:-5px;left:calc(var(--arrow) - 5px);box-shadow:1px 1px 0 0 var(--line)}:is(.tour-callout,.tour-hint)[data-side=right]:after{left:-5px;top:calc(var(--arrow) - 5px);box-shadow:-1px 1px 0 0 var(--line)}:is(.tour-callout,.tour-hint)[data-side=left]:after{right:-5px;top:calc(var(--arrow) - 5px);box-shadow:1px -1px 0 0 var(--line)}.tour-box{position:relative;overflow:hidden;padding:14px 16px 12px;border-radius:14px;background:var(--paper);box-shadow:var(--shadow-float);animation:tour-in .32s var(--out) backwards}.tour-callout:focus-visible .tour-box{box-shadow:0 0 0 2px color-mix(in srgb,var(--ink) 40%,transparent),var(--shadow-float)}.tour-top{display:flex;align-items:center;gap:8px;height:16px;margin-bottom:10px}.tour-steps{display:inline-flex;gap:4px}.tour-steps i{width:6px;height:3px;border-radius:2px;background:var(--line-2);transition:width var(--med) var(--out),background var(--med) var(--std)}.tour-steps i.is-past{background:color-mix(in srgb,var(--ink) 42%,transparent)}.tour-steps i.is-on{width:16px;background:var(--ink)}.tour-ack{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--ink);color:var(--paper);animation:tour-ack-in 1.5s var(--out) forwards}.tour-ack svg{width:10px;height:10px}.tour-count{margin-left:auto;color:var(--ink-3);font-size:11px}.tour-content{animation:tour-swap .28s var(--out) backwards}.tour-title{margin:0;font-size:14.5px;line-height:20px;font-weight:600;letter-spacing:-.012em}.tour-body{margin:4px 0 0;color:var(--ink-2);font-size:12.5px;line-height:18px;text-wrap:pretty}.tour-action{display:flex;align-items:center;gap:8px;margin:11px 0 0;font-size:12px;font-weight:500}.tour-action-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--ink);animation:tour-dot 2.8s var(--std) infinite}.tour-foot{display:flex;align-items:center;gap:6px;margin-top:14px;transition:opacity .16s var(--std)}.tour-box.is-between .tour-content,.tour-box.is-between .tour-foot{opacity:.55;transition:opacity .18s var(--std) .14s}.tour-gap{flex:1}.tour-skip{font-size:12px}.tour-lens{margin-top:12px;border-radius:10px;background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line)}.tour-lens-row{display:flex;align-items:flex-start;gap:9px;padding:8px 11px}.tour-lens-row+.tour-lens-row{box-shadow:inset 0 1px 0 var(--line)}.tour-lens-row .mark{margin-top:1.5px}.tour-lens-row>span{display:flex;flex-direction:column;min-width:0}.tour-lens-row b{font-size:12px;font-weight:600;line-height:17px}.tour-lens-row>span>span{color:var(--ink-2);font-size:11.5px;line-height:15px}.tour-lens-row.is-plan b{color:var(--ink-2)}.tour-box.is-done{animation:tour-settle .42s var(--out)}.tour-box.is-done:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,color-mix(in srgb,var(--ink) 5%,transparent) 50%,transparent 70%);transform:translate(-110%);animation:tour-sheen 1.1s .16s var(--out) forwards;pointer-events:none}.tour-done{display:flex;flex-direction:column}.tour-done-mark{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;margin-bottom:12px}.tour-done-mark .mark{width:30px;height:30px}.tour-done-mark svg path{stroke-dasharray:16;stroke-dashoffset:16;animation:tour-draw .42s .14s var(--out) forwards}.tour-paused{position:fixed;bottom:4px;left:262px;z-index:39;display:flex;align-items:center;gap:8px;height:32px;padding:0 3px 0 11px;border-radius:999px;background:var(--paper);box-shadow:var(--shadow-rest),0 6px 16px -10px #00000040;font-size:12px;animation:tour-pill .36s var(--out) backwards}body:has(.app.is-bare) .tour-paused{left:12px}.tour-paused-icon{display:grid;color:var(--ink-2)}.tour-paused-icon svg{width:14px;height:14px}.tour-paused-x{width:26px}.tour-paused-x svg{width:12px;height:12px}.tour-ring.is-hint{z-index:37;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--ink) 20%,transparent);animation:tour-fade .26s var(--std) backwards}.tour-hint{position:fixed;top:0;left:0;z-index:39}.tour-hint-card{display:flex;flex-direction:column;gap:3px;padding:12px 14px 10px;border-radius:12px;background:var(--paper);box-shadow:var(--shadow-float);animation:tour-in .28s var(--out) backwards}.tour-hint-card .t-micro{margin-bottom:3px}.tour-hint-title{font-size:13px;font-weight:600;line-height:18px}.tour-hint-body{color:var(--ink-2);font-size:12px;line-height:17px;text-wrap:pretty}.tour-hint-foot{display:flex;justify-content:flex-end;margin-top:8px}.tour-tip{transition:opacity .18s var(--std)}.tour-tip.is-leaving,.tour-tip.is-waiting{opacity:0}.tour-card{position:relative;flex-shrink:0;margin:8px 0 10px;overflow:hidden;border-radius:var(--r-md);background:linear-gradient(to bottom,color-mix(in srgb,var(--info) 5%,var(--paper)),var(--paper) 75%);box-shadow:var(--shadow-rest);animation:rise .62s var(--out) .2s backwards}.tour-card-art{display:block;width:100%;height:84px;overflow:hidden;background:radial-gradient(120% 110% at 78% 0%,color-mix(in srgb,var(--info) 14%,transparent),transparent 70%),color-mix(in srgb,var(--info) 4%,var(--paper-2));box-shadow:inset 0 -1px color-mix(in srgb,var(--info) 10%,var(--line))}.tour-card .ta-ring{stroke:var(--info)}.tour-card-x{position:absolute;top:8px;right:8px;width:24px;height:24px}.tour-card-x svg{width:12px;height:12px}.tour-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 13px 13px}.tour-card-title{margin:0;font-size:13px;line-height:18px;font-weight:600}.tour-card-sub{margin:0;color:var(--ink-2);font-size:11.5px;line-height:16px;text-wrap:pretty}.tour-card-go{display:inline-flex;align-items:center;gap:5px;margin-top:8px}.tour-card-go svg{transition:transform var(--fast) var(--out)}.tour-card-go:hover svg{transform:translate(2px)}@media(max-height:700px){.tour-card-art{display:none}.tour-card-x{top:6px;right:6px}}.ta{display:block;width:100%;height:100%}.ta-win{fill:var(--key-face);stroke:var(--key-border);stroke-width:1;filter:drop-shadow(0 1.5px 0 var(--key-ledge))}.ta-side{fill:color-mix(in srgb,var(--ink) 3%,var(--key-face))}.ta-line{fill:color-mix(in srgb,var(--ink) 16%,transparent)}.ta-soft{fill:color-mix(in srgb,var(--ink) 9%,transparent)}.ta-field{fill:color-mix(in srgb,var(--ink) 4%,var(--key-face));stroke:var(--key-border);stroke-width:1}.ta-ring{fill:none;stroke:var(--ink);stroke-width:1.3}.ta-cursor{fill:var(--ink);stroke:var(--paper);stroke-width:1.1;stroke-linejoin:round}.ta g,.ta rect,.ta path{transform-box:view-box}.ta-ring{animation:ta-ring 7.2s var(--out) infinite}.ta-row-0{animation:ta-row-0 7.2s var(--out) infinite}.ta-row-1{animation:ta-row-1 7.2s var(--out) infinite}.ta-row-2{animation:ta-row-2 7.2s var(--out) infinite}.ta-pointer{animation:ta-point 7.2s var(--std) infinite}@keyframes ta-ring{0%,18%{opacity:0;transform:translateY(0)}24%,44%{opacity:1;transform:translateY(0)}51%,72%{opacity:1;transform:translateY(20px)}79%,88%{opacity:1;transform:translateY(40px)}94%,to{opacity:0;transform:translateY(40px)}}@keyframes ta-row-0{0%,44%,94%,to{opacity:1}51%,88%{opacity:.34}}@keyframes ta-row-1{0%,18%,51%,72%,94%,to{opacity:1}24%,44%,79%,88%{opacity:.34}}@keyframes ta-row-2{0%,18%,79%,88%,94%,to{opacity:1}24%,72%{opacity:.34}}@keyframes ta-point{0%,8%{opacity:0;transform:translate(214px,62px)}15%{opacity:1;transform:translate(194px,32px) scale(1)}18%{transform:translate(194px,32px) scale(.86)}21%,33%{transform:translate(194px,32px) scale(1)}41%{transform:translate(194px,52px) scale(1)}44%{transform:translate(194px,52px) scale(.86)}47%,61%{transform:translate(194px,52px) scale(1)}69%{transform:translate(194px,72px) scale(1)}72%{transform:translate(194px,72px) scale(.86)}75%,86%{opacity:1;transform:translate(194px,72px) scale(1)}94%,to{opacity:0;transform:translate(204px,86px) scale(1)}}@keyframes tour-fade{0%{opacity:0}}@keyframes tour-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}@keyframes tour-swap{0%{opacity:0;transform:translateY(3px)}}@keyframes tour-open{0%{transform:scale(.94)}}@keyframes tour-settle{0%{transform:scale(.98)}}@keyframes tour-pill{0%{opacity:0;transform:translateY(6px)}}@keyframes tour-breathe{0%,to{opacity:0}50%{opacity:1}}@keyframes tour-dot{0%,to{box-shadow:0 0 color-mix(in srgb,var(--ink) 28%,transparent)}60%{box-shadow:0 0 0 5px color-mix(in srgb,var(--ink) 0%,transparent)}}@keyframes tour-ack{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.035)}}@keyframes tour-ack-in{0%{opacity:0;transform:scale(.5)}14%,80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes tour-sheen{to{transform:translate(110%)}}@keyframes tour-draw{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.tour-hole,.tour-ring,.tour-box,.tour-content,.tour-hint-card,.tour-paused,.tour-card{animation:tour-fade .16s linear backwards!important}.tour-hole,.tour-ring,.tour-callout,.tour-tip{transition:opacity .16s linear!important}.tour-ring.is-action:before,.tour-ring.is-hint:before,.tour-ring-ack,.tour-action-dot,.tour-box.is-done:after,.ta *{animation:none!important}.tour-ack{animation:tour-fade .16s linear both!important}.tour-done-mark svg path{animation:none!important;stroke-dashoffset:0}.tour-steps i{transition:none!important}}.help-item{scroll-margin-top:64px}.help-list>.help-item+.help-item{box-shadow:inset 0 1px 0 var(--line)}.help-item:first-child>.help-row{border-radius:var(--r-lg) var(--r-lg) 0 0}.help-item:last-child:not(.is-open)>.help-row{border-radius:0 0 var(--r-lg) var(--r-lg)}.help-row{padding-top:12px;padding-bottom:12px}.help-row .row-sub{white-space:normal}.help-ico{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:8px;background:var(--fill);color:var(--ink-2)}.help-ico svg,.help-chev svg{width:16px;height:16px}.help-chev{display:grid;color:var(--ink-3);transition:transform var(--med) var(--out)}.help-item.is-open .help-chev{transform:rotate(180deg)}.help-fold{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s var(--out)}.help-item.is-open .help-fold{grid-template-rows:1fr}.help-fold-inner{min-height:0;overflow:hidden}.help-detail{display:flex;flex-direction:column;gap:16px;padding:4px 16px 18px 60px;opacity:0;transform:translateY(-4px);transition:opacity .22s var(--std),transform .32s var(--out)}.help-item.is-open .help-detail{opacity:1;transform:none;transition-delay:60ms}.help-side{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;min-width:0}.help-steps{display:flex;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;list-style:none;counter-reset:step}.help-steps li{position:relative;padding-left:28px;font-size:13px;line-height:19px;color:var(--ink);counter-increment:step}.help-steps li:before{content:counter(step);position:absolute;top:0;left:0;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--fill-2);color:var(--ink-2);font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums}.help-go{flex-shrink:0}.help-go svg{width:14px;height:14px}@container canvas (max-width: 720px){.help-detail{padding-left:16px}.help-side{flex-direction:column;align-items:flex-start}}.hd{position:relative;width:100%;aspect-ratio:1160 / 680;max-height:560px;overflow:hidden;border-radius:var(--r-md);background:var(--rail);box-shadow:0 0 0 1px var(--line),0 12px 32px -18px #00000047;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .36s var(--std);contain:layout paint}.hd.is-resetting{opacity:0}.hd-frame{position:absolute;top:0;left:0;transform-origin:0 0;overflow:hidden;background:var(--rail);color:var(--ink);font-family:var(--font);font-size:13.5px;line-height:20px;-webkit-font-smoothing:antialiased}.hd .app{height:100%}.hd .palette{top:13%;width:min(620px,calc(100% - 32px));max-height:66%}.hd .sheet{max-height:calc(100% - 64px)}.hd .history-menu{max-height:min(440px,70%)}.hd .plan-side{max-height:none}.hd .page-enter,.hd .view-enter{animation-delay:0ms}.hd-pointer{position:absolute;top:0;left:0;z-index:30;width:0;height:0;transition:opacity .2s var(--std);will-change:transform}.hd-pointer.is-hidden{opacity:0}.hd-pointer-tip{position:absolute;top:-1px;left:-1px;display:block;transform-origin:1px 1px;transition:transform .12s var(--std)}.hd-pointer-tip.is-down{transform:scale(.88)}.hd-pointer svg{display:block;overflow:visible;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.35))}.hd-pointer path{fill:#111;stroke:#fff;stroke-width:1.2;stroke-linejoin:round}.hd-tap{position:absolute;z-index:29;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:color-mix(in srgb,var(--info) 30%,transparent);animation:hd-tap .42s var(--out) forwards}@keyframes hd-tap{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.4)}}.hd-carry{position:absolute;top:0;left:0;z-index:28;transform-origin:0 0;will-change:transform}.hd-ghost{width:168px;margin:-18px 0 0 -40px;opacity:.86;box-shadow:var(--shadow-lift)}.hd .pg-block.hd-lifted{opacity:.35}.hd-file{display:flex;flex-direction:column;align-items:center;gap:6px;margin:-34px 0 0 -46px;width:92px}.hd-file-icon{position:relative;display:grid;place-items:center;width:44px;height:54px;border-radius:4px 12px 4px 4px;background:#fff;box-shadow:0 0 0 1px #0000001f,0 6px 14px #00000038;color:#c0392b}.hd-file-icon svg{width:20px;height:20px;margin-top:-6px}.hd-file-icon span{position:absolute;bottom:6px;font-size:9px;font-weight:700;letter-spacing:.04em}.hd-file-name{padding:1px 6px;border-radius:4px;background:#2f6fde;color:#fff;font-size:11px;line-height:15px;white-space:nowrap}.hd-keys{position:absolute;bottom:18px;left:50%;z-index:31;display:flex;gap:8px;transform:translate(-50%);animation:hd-keys-in .2s var(--out)}@keyframes hd-keys-in{0%{opacity:0;transform:translate(-50%,6px)}}.hd-input{display:inline-flex;flex:1;align-items:center;min-width:0;height:100%;overflow:hidden;font-size:13px;white-space:pre}.hd .field-lg .hd-input,.hd .palette-input .hd-input{font-size:15px}.hd .composer .hd-input,.hd .bug-note .hd-input{display:block;height:auto;font-size:13.5px;line-height:20px;white-space:pre-wrap}.hd-input-text{color:var(--ink)}.hd-ph{color:var(--ink-3)}.hd-caret{display:inline-block;width:1.5px;height:1.15em;margin:0 -1.5px 0 0;vertical-align:-.2em;background:var(--ink);animation:hd-caret 1s steps(1) infinite}@keyframes hd-caret{50%{opacity:0}}.hd .field:has(.hd-input.is-focused){box-shadow:0 0 0 1px var(--focus)}.hd .composer:has(.hd-input.is-focused){box-shadow:var(--shadow-composer-focus)}.hd .hd-textarea{display:block;width:100%;min-height:44px}.hd span.bug-note{display:block}.hd .bug-note:has(.hd-input.is-focused){box-shadow:0 0 0 1px var(--focus)}.hd button.row[data-hover],.hd a.row[data-hover],.hd .dreq-head.is-toggle[data-hover],.hd .nav[data-hover],.hd .plan-fact[data-hover],.hd .me[data-hover],.hd .btn-ghost[data-hover],.hd .menu-item[data-hover],.hd .tt-result[data-hover]{background:var(--fill)}.hd .icon-btn[data-hover],.hd .row-menu[data-hover],.hd .tt-section[data-hover],.hd .atlas-ai[data-hover],.hd .composer-mic[data-hover],.hd .todo-cycle[data-hover]{background:var(--fill-2);color:var(--ink)}.hd .btn[data-hover]:not(.btn-ghost):not(.btn-primary){box-shadow:0 0 0 1px var(--line-2),0 1px 3px #0000000f}.hd .btn-primary[data-hover]{opacity:.88}.hd .lift[data-hover],.hd .chip[data-hover],.hd .suggest[data-hover],.hd .pick[data-hover]{box-shadow:var(--shadow-lift);transform:translateY(-1px)}.hd .goal[data-hover]{background:color-mix(in srgb,var(--ink) 12%,transparent)}.hd .exc-kind[data-hover]{background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--line-2)}.hd .row[data-hover] .row-chev{color:var(--ink-2);transform:translate(2px)}.hd .side-label:has([data-hover]) .side-add{opacity:1}.hd .dropzone[data-hover]{background:var(--paper);box-shadow:inset 0 0 0 1.5px var(--ink-3)}.hd .flag[data-hover]{background:var(--fill-2);color:var(--ink)}.hd .cw-tr:has([data-hover]) .flag{opacity:1}.hd .date-row[data-hover] .date-flag,.hd .date-row[data-hover] .date-watch,.hd .date-row:has([data-hover]) .date-flag,.hd .date-row:has([data-hover]) .date-watch,.hd .date-row.is-watched .date-watch{opacity:1}.hd .dreq-head:has([data-hover]) .inline-flag{opacity:1}.hd .btn[data-press]{transform:scale(.98)}.hd .key[data-press]{transform:translateY(2px);box-shadow:0 0 0 0 var(--key-ledge);background:var(--key-face-down)}.hd-native{z-index:40;min-width:96px;padding:5px;border-radius:7px;background:color-mix(in srgb,var(--paper) 96%,transparent);box-shadow:0 0 0 .5px #0000002e,0 10px 28px #0003;font-size:13px;line-height:20px}.hd-native-item{display:flex;align-items:center;gap:4px;padding:1px 10px 1px 4px;border-radius:4px;color:var(--ink)}.hd-native-item[data-hover]{background:#2f6fde;color:#fff}.hd-native-check{display:grid;width:14px}.hd-native-check svg{width:12px;height:12px}.hd-shot{position:relative;width:100%;aspect-ratio:1400 / 900;overflow:hidden}.hd-shot-page{position:absolute;top:0;left:0;width:1160px;height:746px;transform:scale(var(--shot-scale, .4));transform-origin:0 0}.hd .private{transition:filter .16s var(--std)}.hd [data-hide-grades] .private{filter:blur(max(5px,.32em))}.hd [data-hide-grades] .private-chart{filter:blur(16px) saturate(0);opacity:.5}.hd.is-still .hd-caret{display:none}@media(max-width:640px),(pointer:coarse)and (max-height:500px){.app{height:100dvh;transition:none}.desk-wrap,.app.is-bare .desk-wrap{padding:6px 6px 0}.canvas,.util{border-radius:14px}.canvas-head{gap:4px;padding:0 6px}.crumbs{flex:1;padding-left:2px}.canvas-head .crumb-wrap:not(:last-child,:has(.crumb-button)),.canvas-head .crumb-sep{display:none}.canvas-head .crumb-wrap:has(.crumb-button):not(:last-child):after{content:"/";margin:0 8px;color:var(--ink-4)}.side-scrim{position:fixed;inset:0;z-index:48;background:var(--scrim);animation:fade-in .2s var(--std) backwards}.side.is-drawer{position:fixed;top:0;bottom:0;left:0;z-index:49;width:min(300px,calc(100vw - 56px));padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom));background:var(--rail);box-shadow:24px 0 48px -24px color-mix(in srgb,var(--ink) 30%,transparent);animation:drawer-in .32s var(--out) backwards}@keyframes drawer-in{0%{transform:translate(-100%)}}.side.is-drawer :is(.nav,.side-cta){height:40px}.side.is-drawer .side-kbd{display:none}.util.is-open,.util-inner{width:100cqw}.util.is-open{box-shadow:var(--shadow-rest)}.util-resize{display:none}.atlas-bar{padding:0 2px 0 6px;padding-bottom:env(safe-area-inset-bottom);height:calc(44px + env(safe-area-inset-bottom))}.toast{bottom:calc(52px + env(safe-area-inset-bottom));width:calc(100vw - 24px);min-width:0;max-width:none}.pop{max-width:calc(100vw - 16px)}.sheet{max-height:calc(100dvh - 32px)}input:not([type=checkbox],[type=radio],[type=range]),textarea,select{font-size:16px}.page{padding:18px 16px 40px}.page-wide{--edge: 16px}.page .seg{max-width:100%;overflow-x:auto;scrollbar-width:none}.page .seg-item{flex:none}.field input{min-width:0}.tt-grid-wrap{overflow-x:auto;scrollbar-width:thin}.tt-grid-wrap>:is(.tt-days,.tt-grid){min-width:540px}.tt-days,.tt-grid{grid-template-columns:44px repeat(5,minmax(0,1fr))}.todo-board{grid-template-columns:minmax(0,1fr);gap:22px}.date-suggest{flex-wrap:wrap}.date-suggest .row-main{flex:1 1 calc(100% - 56px)}.date-suggest .date-end{margin-left:auto}.gpa-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.target-top{flex-wrap:wrap;gap:10px}.target-ahead-field{width:64px}:is(.ps-place,.ps-grip,.pg-add,.pg-cell-tt,.pg-block-act,.row-menu,.todo-x,.todo-more,.plan-title-edit,.plan-prog-x,.date-watch,.atlas-tab-close){opacity:1}}
