@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");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-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");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-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");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-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");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-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,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 Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback,system-ui;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback",system-ui}:root{--paper:#FAF8F4;--ink:#1D1B17;--blue:#1E6FD9;--blink:#79B4FF;--hairline:#E4E0D6;--muted:#8A8477;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--nav-height:76px}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:#131312}body{font-family:var(--font-inter),system-ui,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}a,button,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer;border:0;background:none;color:inherit}button:disabled{cursor:default}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button:disabled:not(.calendar-cell):not(.core-row){opacity:.4}figure,h1,h2,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.05em}input{min-width:0;max-width:100%;border-radius:0;color:inherit;background:transparent;border:0;border-bottom:2px solid var(--hairline);outline:none}input:focus{border-color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.muted{color:var(--muted)}.app-shell{min-height:100svh;position:relative;background:var(--paper);color:var(--ink);padding-top:env(safe-area-inset-top);padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.app-shell.dark{--hairline:#2A2825;background:#131312;color:#EDE9E0}.app-shell.map-theme{background:#0E0F14}main{min-height:calc(100svh - var(--nav-height) - env(safe-area-inset-bottom));max-width:1440px;margin:0 auto}.settings-link{position:absolute;z-index:30;top:calc(20px + env(safe-area-inset-top));right:22px;color:var(--muted)}.icon-button{width:44px;height:44px;display:grid;place-items:center}.icon-button:hover{color:var(--blue)}nav{position:fixed;z-index:40;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;border-top:1px solid var(--hairline);background:var(--paper);height:calc(var(--nav-height) + env(safe-area-inset-bottom));padding:8px 14px calc(8px + env(safe-area-inset-bottom))}.dark nav{background:#131312}.map-theme nav{background:#0E0F14}nav a{min-width:76px;min-height:48px;display:flex;gap:7px;flex-direction:column;align-items:center;justify-content:center;font-size:10px;color:var(--muted)}nav a[aria-current=page]{color:var(--blue)}.dark nav a[aria-current=page]{color:#EDE9E0}nav a:hover{color:var(--blue)}.loading-mark{font-size:64px;letter-spacing:-.08em;padding:150px 30px}.loading-mark span{color:var(--blue)}.storage-error{position:relative;z-index:60;padding:20px 70px 20px 24px;background:var(--paper);color:#C0392B}.storage-error button{text-decoration:underline;display:block;margin-top:8px}.primary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:60px;width:100%;background:var(--blue);color:white;padding:18px 22px;font-size:15px;letter-spacing:-.025em;text-align:left}.primary:hover{background:#195fba}.primary span{font-size:22px}.outline-button{border:1px solid #57564f;min-height:50px;padding:14px 30px;font-family:var(--mono);font-size:12px}.outline-button:hover{border-color:#EDE9E0}.text-button{padding:18px 0;display:flex;justify-content:space-between;align-items:center;min-height:48px}.text-button:hover{color:var(--blue)}.onboarding-shell{padding-bottom:0}.onboarding-shell main{min-height:100svh}.onboarding{max-width:680px;margin:auto;padding:120px 28px 40px}.progress-line{position:absolute;left:0;right:0;top:env(safe-area-inset-top);height:2px;background:var(--hairline)}.progress-line span{height:100%;display:block;background:var(--blue);transition:width .35s}.stage{animation:fade-in .25s ease both}.stage h1{font-size:clamp(34px,8vw,48px);line-height:1.13;margin-bottom:45px;text-wrap:balance}.stage .opening{font-size:clamp(36px,9.5vw,60px);line-height:1.12;letter-spacing:-.065em;margin-bottom:85px}.opening span{color:var(--muted)}.stage-0{padding-top:max(150px,23svh)}.stage-0 .primary{margin-top:auto}.options{display:grid}.options button{display:flex;align-items:center;justify-content:space-between;padding:21px 0;border-bottom:1px solid var(--hairline);text-align:left;font-size:19px}.options button span{color:var(--muted);font-size:20px}.options button:hover{color:var(--blue)}.templates{display:grid;grid-gap:12px;gap:12px}.template{border:1px solid var(--hairline);padding:22px;text-align:left;display:flex;flex-direction:column;gap:7px}.template:hover{border-color:var(--blue)}.template strong{font-weight:500;font-size:20px;margin-bottom:8px;letter-spacing:-.03em}.template span{font-size:13px;line-height:1.4;color:var(--muted)}.blank-button{margin-top:10px;width:100%}.stage .primary.quiz-open{margin-top:0;min-height:84px}.quiz-open-copy{display:flex;flex-direction:column;gap:5px}.quiz-open strong{font-weight:500;font-size:19px;letter-spacing:-.03em}.quiz-open small{font-size:13px;line-height:1.4;opacity:.85}.quiz-open>span:last-child{font-size:22px}.templates-title{font-size:13px;font-weight:400;font-family:var(--mono);letter-spacing:-.04em;color:var(--muted);margin:26px 0 14px}.quiz{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.quiz h1:focus{outline:0}.stage .quiz h1{margin-bottom:14px}.quiz-count{font:12px var(--mono);letter-spacing:-.04em;color:var(--muted);margin-bottom:18px}.quiz-goals{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:26px}.quiz-goals button{min-height:60px;padding:12px 14px;border:1px solid var(--hairline);text-align:left;font-size:15px;letter-spacing:-.02em;line-height:1.25}.quiz-goals button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.quiz-goals button:hover:not(:disabled):not([aria-pressed=true]){border-color:var(--blue);color:var(--blue)}.stage .quiz .primary{margin-top:0}.quiz-back{justify-content:flex-start;gap:8px;color:var(--muted);margin-top:6px}.quiz-study{font:12px var(--mono);color:var(--muted);white-space:nowrap}.quiz-study:hover{color:var(--blue)}.quiz-picks{list-style:none;margin:0 0 26px;padding:0}.quiz-pick{position:relative;isolation:isolate;display:grid;grid-template-columns:25px minmax(0,1fr) auto;grid-gap:17px;gap:17px;align-items:start;padding:20px 0;border-top:1px solid var(--hairline);min-height:112px;animation:fade-in .25s ease both}.quiz-pick:last-child{border-bottom:1px solid var(--hairline)}.quiz-pick.waiting{animation:none}.quiz-pick .checkbox-square{margin-top:1px;background:var(--ink);border-color:var(--ink)}.quiz-pick .core-label{font-size:17px;letter-spacing:-.03em;line-height:1.3}.quiz-reason{display:block;font-size:14px;line-height:1.4}.quiz-pick .habit-why,.quiz-reason{margin-top:5px}.quiz-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.quiz-side .study-link{padding-top:3px}.quiz-swap{font:12px var(--mono);color:var(--muted);min-height:44px;padding:0 0 0 12px;white-space:nowrap}.quiz-swap:hover{color:var(--blue)}.quiz-live{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.three-inputs{display:grid;grid-gap:16px;gap:16px;margin-bottom:46px}.three-inputs input{font-size:20px;min-height:66px;letter-spacing:-.035em;padding:14px 0}.time-input{font-family:var(--mono);font-size:clamp(38px,12vw,60px);width:100%;padding:10px 0 24px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.reward-setup{display:grid;margin-bottom:48px}.reward-setup-row{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--hairline);min-height:72px}.reward-milestone-mark,.reward-setup-mark{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.06em}.reward-setup-mark{font-size:28px;width:52px;flex:0 0 auto}.reward-text{flex:1 1;min-width:0;text-align:left;font-size:16px;letter-spacing:-.03em;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.reward-setup-row .reward-text{font-size:18px;padding:14px 0}.reward-text:hover{color:var(--blue)}.shuffle{flex:0 0 44px;width:44px;height:44px;margin-left:auto;color:var(--muted);font-size:20px}.shuffle:hover{color:var(--blue)}.rewards-screen{max-width:580px;margin:auto;padding:130px 28px 65px}.reward-milestone{margin-bottom:56px}.reward-milestone-mark{font-size:clamp(64px,18vw,96px);font-weight:600;line-height:.95;margin:0 0 18px}.reward-row{display:flex;align-items:center;gap:14px;min-height:72px;border-top:1px solid var(--hairline);padding:10px 0}.reward-milestone .reward-row:last-of-type{border-bottom:1px solid var(--hairline)}.reward-row.locked .reward-text{color:var(--muted)}.reward-row.missed .reward-text{text-decoration:line-through}.reward-row .claimed-at,.reward-row .rate{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.reward-row .checkbox-square.filled{background:var(--ink);border-color:var(--ink)}.reward-row.tier-core .checkbox-square.filled{background:var(--blue);border-color:var(--blue)}.claim-square:hover{border-color:var(--blue)}.reward-rules{margin-top:48px}.reward-rules p{font-size:13px;color:var(--muted);line-height:1.65;margin-top:10px}.award-rewards{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-gap:8px;gap:8px}.award-rewards li{font-family:var(--mono);font-size:12px;text-align:center;line-height:1.45}.reward-picker{width:100%;max-width:100%;max-height:85svh;margin:auto 0 0;border:0;border-top:2px solid var(--hairline);padding:0;background:var(--paper);color:var(--ink);overflow:auto}.reward-picker::-webkit-backdrop{background:rgba(0,0,0,.6)}.reward-picker::backdrop{background:rgba(0,0,0,.6)}.picker-body{padding:20px 24px calc(24px + env(safe-area-inset-bottom))}.picker-custom{display:flex;align-items:center;gap:16px;padding-bottom:16px}.picker-custom input{flex:1 1;min-height:56px;font-size:18px;letter-spacing:-.03em}.picker-custom .use{flex:0 0 auto;min-height:44px;padding:0 4px;font-family:var(--mono);font-size:12px;color:var(--muted)}.picker-custom .use:hover{color:var(--blue)}.picker-kind{font:12px var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.055em;color:var(--muted);margin:18px 0 6px}.picker-row{display:flex;align-items:center;gap:14px;width:100%;text-align:left;min-height:56px;padding:12px 0;border-top:1px solid var(--hairline);font-size:16px;letter-spacing:-.03em;line-height:1.35}.picker-group .picker-row:last-child{border-bottom:1px solid var(--hairline)}.picker-row:hover{color:var(--blue)}.picker-row.used{opacity:.4}.picker-row .checkbox-square.filled,.picker-row.checked .checkbox-square{background:var(--ink);border-color:var(--ink)}.disclosure{font-size:13px;line-height:1.65;margin:24px 0 30px;max-width:350px}.reminder-permission{margin-bottom:24px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.segmented{display:flex;border:1px solid var(--hairline)}.segmented button{flex:1 1;min-height:64px;font-size:18px}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.length-toggle{margin:20px 0 64px}.length-toggle button{font-family:var(--mono);font-size:13px;min-height:52px}.start-action{justify-content:center;font-size:14px}.today-screen{position:relative;min-height:calc(100svh - var(--nav-height) - env(safe-area-inset-bottom));padding:108px 28px 55px;isolation:isolate;overflow:hidden}.today-content{max-width:540px;margin:auto}.day-number{font-size:clamp(96px,28vw,180px);font-weight:600;line-height:.94;letter-spacing:-.085em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:16px}.day-number>span{font-family:var(--mono);font-size:16px;letter-spacing:-.04em;font-weight:400;color:var(--muted)}.quote{margin-top:30px;margin-bottom:56px;max-width:430px}.quote blockquote{font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,5.5vw,25px);line-height:1.4;letter-spacing:-.025em;margin:0;text-wrap:pretty}.quote figcaption{font-family:var(--mono);font-size:10px;letter-spacing:.015em;margin-top:15px;color:var(--muted)}.core-rows,.item-stack{width:100%}.item-stack .core-rows+.core-rows{margin-top:10px;padding-top:10px;border-top:1px solid var(--hairline)}.item-stack .core-rows+.core-rows .core-row:first-child{border-top:0}.item-stack .core-rows:not(:last-child) .core-row:last-child{border-bottom:0}.core-row{position:relative;display:flex;gap:17px;align-items:center;min-height:80px;width:100%;text-align:left;border-top:1px solid var(--hairline);padding:18px 0;font-size:16px;letter-spacing:-.03em;line-height:1.45}.core-row:last-child{border-bottom:1px solid var(--hairline)}.checkbox-square{width:25px;height:25px;border:1px solid #666157;flex:0 0 25px;display:grid;place-items:center;transition:background .18s,border-color .18s}.checked .checkbox-square{background:var(--blue);border-color:var(--blue)}.tier-core .checkbox-square{border-color:var(--blue)}.tier-core .checked .checkbox-square{background:var(--blue);border-color:var(--blue)}.tier-bonus .checkbox-square{border-color:var(--muted)}.tier-bonus .checked .checkbox-square{background:var(--ink);border-color:var(--ink)}.dark .tier-bonus .checked .checkbox-square{background:#EDE9E0;border-color:#EDE9E0}.dark .tier-bonus .checked .checkbox-square svg{stroke:#1D1B17}.day-sheet .tier-bonus .checked .checkbox-square{background:var(--ink);border-color:var(--ink)}.day-sheet .tier-bonus .checked .checkbox-square svg{stroke:#fff}.checkbox-square svg{width:20px;height:20px;stroke:white;stroke-width:1.7;fill:none}.core-label{overflow-wrap:anywhere;flex:1 1}.core-row.checked .core-label{color:var(--muted)}.core-index{font-size:9px;color:#656053;letter-spacing:0}.core-index,.yesterday{font-family:var(--mono)}.yesterday{display:block;margin:38px auto 0;font-size:10px;color:var(--muted);min-height:44px;padding:12px;text-decoration:underline;text-underline-offset:5px}.today-calendar{margin-top:48px}.cracks{position:absolute;inset:0;width:100%;height:100%;z-index:5;pointer-events:none;overflow:visible;animation:crack-fade 2s ease-in-out 8s forwards}.cracks polyline{stroke:#fff;stroke-width:1.1;opacity:.4;fill:none;stroke-dasharray:1;stroke-dashoffset:1;animation:crack-grow .35s ease-out forwards}.cracks-2 polyline:nth-child(n+4){animation-delay:.06s}.shake{animation:shake .08s linear 5}.award-view{max-width:480px;margin:auto;position:relative;animation:award-reveal .7s ease both}.award-view .day-number{margin-bottom:45px}.stamp{animation:stamp .24s ease-out both}.broke-through{font-family:var(--mono);font-size:11px;letter-spacing:.19em;text-align:center;margin:30px 0 12px}.win-line{font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,5.5vw,25px);line-height:1.4;letter-spacing:-.025em;text-align:center;margin:0 auto 34px;max-width:430px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.award-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.award-actions .primary{min-height:52px;justify-content:center}.lightning{position:fixed;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible;--draw-delay:80ms;--fade-delay:430ms;animation:bolt-fade .22s ease-out var(--fade-delay) forwards}.lightning path{stroke-dasharray:1;stroke-dashoffset:1;animation:bolt-draw .35s ease-in var(--draw-delay) both}.lightning path.branch-a{animation-duration:.12s;animation-delay:calc(var(--draw-delay) + .16s)}.lightning path.branch-b{animation-duration:.12s;animation-delay:calc(var(--draw-delay) + .23s)}.screen-flash{background:#fff;z-index:3;opacity:0}.confetti,.screen-flash{position:fixed;inset:0;pointer-events:none}.confetti{width:100%;height:100%;z-index:28}.award-heat .heat-tile{animation-name:tile-scan;animation-duration:.12s}.award-heat .heat-tile.done{animation-fill-mode:both}.heat-map{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-gap:clamp(5px,1.7vw,10px);gap:clamp(5px,1.7vw,10px);width:100%;max-width:480px;margin-inline:auto}.heat-tile{aspect-ratio:1;background:#1A1C26;display:block;position:relative;animation:tile-scan .12s ease-out var(--delay) both}.heat-tile.done{background:#79B4FF;box-shadow:0 0 6px #4A90FF,0 0 12px rgba(74,144,255,.45)}.heat-tile.done.tier-2{background:#A6CBFF;box-shadow:0 0 8px #79B4FF,0 0 16px rgba(121,180,255,.55)}.heat-tile.done.tier-3{background:#DCEBFF;box-shadow:0 0 10px #A6CBFF,0 0 20px rgba(166,203,255,.6)}.heat-tile.missed{background:#2A1416;box-shadow:inset 0 0 0 1px #7A2E33}.heat-tile.excused{background:#1A1C26;box-shadow:inset 0 0 0 1px #3A3D4D}.heat-tile.today{background:var(--blue);animation:tile-scan .12s ease-out var(--delay) both,today-glow 2s ease-in-out .3s infinite}.heat-tile.milestone{outline:1.5px solid rgba(255,255,255,.55);outline-offset:1px}.map-screen{min-height:calc(100svh - var(--nav-height));padding:130px 28px 65px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:50px}.map-screen>.outline-button{min-width:120px}.calendar-screen{padding:115px 24px 60px;max-width:1160px;margin:auto}.calendar-pane{width:100%;max-width:520px;margin:auto}.calendar-header{justify-content:space-between;gap:8px;margin-bottom:40px}.calendar-header,.month-title{display:flex;align-items:center}.month-title{gap:12px;min-width:0}.month-title h1{font-family:var(--mono);font-size:14px;letter-spacing:-.055em;font-weight:400;white-space:nowrap}.token-dots{display:flex;gap:5px}.token-dots i{width:4px;height:4px;border-radius:50%;background:var(--ink)}.month-controls{display:flex}.month-controls button{width:32px;min-height:44px;font-size:28px;font-weight:300;color:var(--muted)}.month-controls button:hover{color:var(--blue)}.weekday-row{margin-bottom:15px;text-align:center;font:10px var(--mono);color:var(--muted)}.calendar-grid,.weekday-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.calendar-cell{aspect-ratio:1;min-width:0;font:12px var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:#F1EEE6;color:var(--muted);border:1.5px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0}.calendar-cell.done{background:var(--ink);color:white}.calendar-cell.missed{background:transparent;border-color:#C0392B;color:#C0392B}.calendar-cell.excused{background:transparent;border-style:dashed;border-color:var(--muted)}.calendar-cell.today{background:#EAF1FC;border-color:var(--blue);color:var(--blue)}.calendar-cell.milestone{box-shadow:0 0 0 2px var(--blue)}.calendar-cell.outside-month{opacity:.4}.cal-dots{display:flex;gap:3px;height:3px;min-height:3px}.cal-dots i{width:3px;height:3px;border-radius:50%;display:block}.dot-core{background:var(--blue)}.dot-bonus{background:var(--ink)}.calendar-cell.done .dot-core{background:#79B4FF}.calendar-cell.done .dot-bonus{background:#fff}.dark-cal .calendar-cell{background:#1C1B19;color:#6E6A62}.dark-cal .calendar-cell.done{background:#EDE9E0;color:#1D1B17}.dark-cal .calendar-cell.missed{background:transparent;border-color:#C0392B;color:#C0392B}.dark-cal .calendar-cell.excused{background:transparent;border-style:dashed;border-color:var(--muted)}.dark-cal .calendar-cell.today{background:transparent;border-color:var(--blue);color:var(--blue)}.dark-cal .dot-bonus{background:#EDE9E0}.dark-cal .calendar-cell.done .dot-core{background:var(--blue)}.dark-cal .calendar-cell.done .dot-bonus{background:#1D1B17}.calendar-map{display:none;background:#0E0F14;padding:32px;align-items:center;min-height:400px}.day-sheet{background:var(--paper);color:var(--ink);--hairline:#E4E0D6;border:0;padding:0;max-width:520px;width:calc(100% - 24px);margin:auto auto 12px;max-height:90svh}.confirm-dialog::-webkit-backdrop,.day-sheet::-webkit-backdrop{background:rgba(0,0,0,.6)}.confirm-dialog::backdrop,.day-sheet::backdrop{background:rgba(0,0,0,.6)}.sheet-content{position:relative;padding:58px 24px 26px}.sheet-close{position:absolute;top:8px;right:10px;color:var(--muted)}.sheet-content .primary{margin-top:24px;justify-content:center}.sheet-content .core-row{font-size:15px}.settings-screen{max-width:580px;margin:auto;padding:130px 28px 65px}.settings-screen>.text-button{border-bottom:1px solid var(--hairline);font-size:17px;margin-bottom:28px}.settings-screen .three-inputs{margin-bottom:30px}.settings-time{font-family:var(--mono);font-size:32px;padding:14px 0;width:100%;margin-bottom:12px}.settings-actions{display:grid}.settings-actions .text-button{border-bottom:1px solid var(--hairline);font-size:17px;padding:24px 0}.settings-disclosures{margin-top:62px;font-size:12px;line-height:1.7}.settings-disclosures p+p{margin-top:18px}.settings-sync{margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid var(--hairline)}.settings-sync-form{display:flex;align-items:center;gap:16px}.settings-sync-form input{flex:1 1;min-height:56px;font-family:var(--mono);font-size:16px}.settings-sync-form button{font-family:var(--mono);font-size:12px;min-height:44px;color:var(--muted);flex:0 0 auto}.settings-sync-form button:hover{color:var(--blue)}.sync-email,.sync-when{font-family:var(--mono);font-size:13px;letter-spacing:-.04em;padding:10px 0}.sync-when{color:var(--muted)}.settings-sync>.sync-help{padding:0 0 4px;font-size:13px}.sync-note{font-size:13px;padding:4px 0 14px}.captcha{min-height:65px;margin:2px 0 14px}.captcha-page{min-height:100svh;display:grid;place-items:center;padding:0 2px;background:var(--paper)}.captcha-page .captcha{width:100%;margin:0}.settings-sync .text-button{border-bottom:1px solid var(--hairline);font-size:17px}.settings-sync>.muted{padding:18px 0}.confirm-dialog{background:var(--paper);color:var(--ink);border:0;max-width:440px;width:calc(100% - 40px);padding:30px}.confirm-dialog h2{font-size:27px;line-height:1.25;margin-bottom:30px}.dialog-actions{display:flex;align-items:center;gap:25px}.dialog-actions .primary{width:auto;flex:1 1;justify-content:center}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes crack-grow{to{stroke-dashoffset:0}}@keyframes bolt-draw{0%{stroke-dashoffset:1;opacity:0}4%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes flash-white{0%{opacity:0;animation-timing-function:linear}13.333%{opacity:.85;animation-timing-function:ease-out}to{opacity:0}}@keyframes crack-fade{0%{opacity:1}to{opacity:0}}@keyframes bolt-fade{0%{opacity:1}to{opacity:0}}@keyframes veil-strike{0%{opacity:0;animation-timing-function:ease-out}20.55%{opacity:.22;animation-timing-function:linear}64.38%{opacity:.22;animation-timing-function:ease-out}to{opacity:0}}@keyframes veil-quiz{0%{opacity:0;animation-timing-function:ease-out}12.2%{opacity:.22;animation-timing-function:linear}78.86%{opacity:.22;animation-timing-function:ease-out}to{opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}@keyframes stamp{0%{transform:scale(1.15)}50%{transform:scale(.97)}to{transform:scale(1)}}@keyframes award-reveal{0%{opacity:0}35%{opacity:.2}to{opacity:1}}@keyframes tile-scan{0%{opacity:.15;transform:scale(.94);box-shadow:none;background:#1A1C26}to{opacity:1;transform:scale(1)}}@keyframes today-glow{0%,to{box-shadow:0 0 3px rgba(30,111,217,.25)}50%{box-shadow:0 0 13px rgba(30,111,217,.85)}}@media(min-width:744px){:root{--nav-height:0px}.app-shell{padding-left:112px;padding-bottom:0}.app-shell.onboarding-shell{padding-left:0}nav{inset:0 auto 0 0;width:112px;height:100svh;border-top:0;border-right:1px solid var(--hairline);flex-direction:column;justify-content:center;gap:28px;padding:20px 0}nav a{font-size:10px;gap:10px;min-height:70px;min-width:85px}.settings-link{top:30px;right:32px}.today-screen{padding:clamp(100px,16svh,170px) 55px 60px}.quote{margin-top:36px;margin-bottom:65px}.core-row{min-height:86px;font-size:19px}.core-index{font-size:10px}.day-number>span{font-size:20px}.onboarding{padding-top:135px;padding-bottom:70px}.stage-0{padding-top:24svh}.templates{grid-template-columns:1fr 1fr}.stage-2{max-width:810px}.stage h1{margin-bottom:50px}.two-pane{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;grid-gap:32px;gap:32px;min-height:100svh;padding:115px 30px 70px}.calendar-header{margin-bottom:30px;gap:2px}.month-title{gap:7px}.month-title h1{font-size:12px}.month-controls button{width:26px}.calendar-grid,.weekday-row{gap:6px}.calendar-cell{font-size:11px}.calendar-map{display:flex;padding:22px;min-height:320px}.calendar-map .heat-map{gap:5px}.map-screen{padding:95px 50px 60px;gap:48px}.day-sheet{margin:auto}.award-view{max-width:420px}.award-view .day-number{font-size:130px;margin-bottom:35px}.award-view .heat-map{max-width:360px}.rewards-screen,.settings-screen{padding-top:145px}.onboarding-shell .settings-link{right:32px}.reward-picker{width:min(520px,calc(100% - 48px));max-height:80svh;margin:auto;border:2px solid var(--hairline)}}@media(min-width:1100px){.two-pane{gap:64px;padding-inline:60px}.calendar-map{padding:38px;min-height:470px}.calendar-header{margin-bottom:45px}.month-title h1{font-size:15px}.month-title{gap:14px}.month-controls button{width:35px}.calendar-cell{font-size:13px}.calendar-grid,.weekday-row{gap:9px}.calendar-map .heat-map{gap:7px}}@media(max-width:359px){.today-screen{padding-inline:22px;padding-top:95px}.quote{margin-bottom:38px}.core-row{gap:12px;font-size:14px;min-height:76px}.core-index{display:none}.onboarding{padding-inline:24px}.calendar-screen{padding-inline:18px}.calendar-grid,.weekday-row{gap:6px}.month-title{gap:8px}.month-title h1{font-size:12px}.month-controls button{width:27px}.start-action{font-size:12px}.map-screen{padding-inline:24px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important}.shake{animation:fade-in .2s ease!important}.cracks polyline{animation:fade-in .2s ease both;stroke-dashoffset:0}.lightning path{stroke-dashoffset:0}.lightning path,.screen-flash{animation:fade-in .2s ease both!important}.screen-flash{opacity:1}.confetti{display:none!important}.award-heat .heat-tile,.award-view,.heat-tile,.heat-tile.today,.stamp{animation:fade-in .2s ease both!important;transform:none!important}.stage{animation:fade-in .2s ease}.progress-line span{transition:none}.checkbox-square.pop{animation:none!important}}.pick-three{margin-bottom:32px}.pick-three+.pick-three{padding-top:8px}.pick-three .core-row:disabled{opacity:.4}.pick-three .core-row.checked .core-label{color:inherit}.pick-three .core-row{min-height:64px}.add-own{width:100%;border-bottom:1px solid var(--hairline)}.custom-item{display:flex;align-items:center;gap:20px}.custom-item input{flex:1 1;width:100%;min-height:64px}.save-status{font-size:12px;margin-top:16px}.settings-disclosures a:hover{text-decoration:underline}.prose-screen{max-width:680px;margin:auto;padding:130px 28px 65px;line-height:1.7}.prose-screen h1{font-size:38px;margin-bottom:32px}.prose-screen h2{font-size:22px;margin:40px 0 8px}.prose-screen p+p{margin-top:22px}.prose-screen p a{text-decoration:underline}.prose-screen .science-habit p+p{margin-top:6px}.science-list{list-style:none;padding:0;margin:8px 0 0}.science-habit{padding:14px 0;border-top:1px solid var(--hairline)}.science-list .science-habit:last-child{border-bottom:1px solid var(--hairline)}.science-cite{font-family:var(--mono);font-size:12px;line-height:1.45;color:var(--muted)}.science-screen .text-button{margin-top:36px}.onboarding.stage-3,.onboarding.stage-4,.onboarding.stage-5{display:flex;flex-direction:column;min-height:100svh;padding-top:96px;padding-bottom:16px}.onboarding.stage-3 .stage,.onboarding.stage-4 .stage,.onboarding.stage-5 .stage{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column}.onboarding .stage h1:has(+.stage-note){margin-bottom:12px}.stage-note{color:var(--muted);font-size:15px;line-height:1.45;margin:0 0 22px;max-width:38em}.picker-form,.picker-form .habit-picker{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column}.picker-form .habit-results{flex:1 1 auto;min-width:0;min-height:0;overflow:auto}.picker-form .primary{position:-webkit-sticky;position:sticky;bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;margin-top:12px;flex:0 0 auto}.habit-picker{margin-bottom:8px;min-width:0;max-width:100%}.picker-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:20px 0 4px}.picker-head .picker-title{font-size:17px;font-weight:500}.picker-head .text-button{margin:0;padding:0}.habit-picker+.habit-picker{margin-top:28px}.picker-lead{font-size:13px;line-height:1.4;margin:0 0 14px}.picker-lead a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}.picker-lead a:hover{color:var(--blue)}.picked-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0;margin:0 0 14px}.picked-chip{display:inline-flex;align-items:center;gap:8px;max-width:100%;border:1px solid var(--hairline);padding:6px 8px;font-size:13px;line-height:1.3;text-align:left}.picked-chip span:first-child{overflow-wrap:anywhere}.count-pill{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.picked-empty{color:var(--muted);font-size:14px}.habit-search{width:100%;min-width:0;min-height:48px;font-size:16px;margin-bottom:12px}.category-row{display:flex;gap:8px;overflow-x:auto;min-width:0;max-width:100%;margin:0 0 8px;padding-bottom:4px}.category-chip{flex:0 0 auto;border:1px solid var(--hairline);min-height:36px;padding:6px 10px;font-size:13px}.category-chip span{font-family:var(--mono);font-size:11px;margin-left:6px;color:var(--muted)}.category-chip[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.category-chip[aria-pressed=true] span{color:inherit}.habit-cat{font:12px var(--mono);color:var(--muted);margin:16px 0 0;letter-spacing:-.04em}.habit-line{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:start;border-top:1px solid var(--hairline)}.habit-group .habit-line:last-child{border-bottom:1px solid var(--hairline)}.habit-picker .core-row{border:0;min-height:0;align-items:flex-start;padding:14px 0}.habit-picker .core-row:last-child{border:0}.habit-picker .core-row:disabled{opacity:.4}.habit-picker .core-row.checked .core-label{color:inherit}.habit-copy{display:flex;flex-direction:column;min-width:0;flex:1 1}.habit-popular{margin-top:4px;font-family:var(--mono);font-size:11px;letter-spacing:.02em}.habit-popular,.habit-why{display:block;color:var(--muted)}.habit-why{margin-top:2px;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.study-link{padding-top:16px;font:12px var(--mono);color:var(--muted);white-space:nowrap}.study-link:hover{color:var(--blue)}@keyframes checkbox-pop{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.checkbox-square.pop{animation:checkbox-pop .12s ease}.reminder-actions{display:flex;align-items:center;gap:18px}.reminder-actions .text-button{flex:0 0 auto}.reminder-actions .primary{flex:1 1}.habit-line{position:relative;isolation:isolate}.picker-strike{inset:0;overflow:hidden;pointer-events:none;z-index:2}.picker-strike,.picker-strike .lightning,.picker-strike .screen-flash{position:absolute}.beat{animation:beat .3s ease-in-out both}@keyframes beat{0%{opacity:1}25%{opacity:.35}50%{opacity:1}75%{opacity:.35}to{opacity:1}}.primary.beat{animation-name:beat-fill}@keyframes beat-fill{0%{background:var(--blue)}25%{background:var(--blink)}50%{background:var(--blue)}75%{background:var(--blink)}to{background:var(--blue)}}.option-row.beat,.options button.beat,.template.beat{animation-name:beat-card}@keyframes beat-card{0%{background:transparent}25%{background:var(--blink)}50%{background:transparent}75%{background:var(--blink)}to{background:transparent}}.beating,.picker-highlight{pointer-events:none}.picker-highlight{position:absolute;inset:0;z-index:-1;background:var(--blink);animation:picker-highlight .5s ease-out both}@keyframes picker-highlight{0%{opacity:.3}to{opacity:0}}@media(prefers-reduced-motion:reduce){.picker-strike,.strike-overlay{display:none}}.quiz-bar{display:flex;justify-content:flex-end;margin:-72px 0 8px}.quiz-choose{min-height:44px;width:auto;padding:10px 0 10px 16px}.option-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:60px;padding:18px 16px;border:1px solid var(--hairline);text-align:left;font-size:19px;margin-bottom:8px}.option-row span{color:var(--muted);font-size:20px}.quiz-fill,.row-hold,.row-pulse{position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--blink)}.row-hold{opacity:.3}.row-pulse{animation:row-pulse .6s ease-in-out .43s both}@keyframes row-pulse{0%{opacity:.3}25%{opacity:1}50%{opacity:.3}75%{opacity:1}to{opacity:.3}}.strike-overlay{position:fixed;inset:0;z-index:80;pointer-events:none}.strike-veil{position:absolute;inset:0;background:#000;animation:veil-strike .73s linear both}.strike-overlay .screen-flash{animation:flash-white .3s linear .43s both}.strike-overlay.quiz .strike-veil{animation-name:veil-quiz;animation-duration:1.23s}.strike-overlay.quiz .screen-flash,.strike-overlay.today .screen-flash{animation-delay:.35s}.strike-overlay.quiz .screen-flash{animation-delay:.93s}.quiz-fill{animation-fill-mode:both}.quiz-fill-0{animation:quiz-fill-0 1.73s linear both}.quiz-fill-1{animation:quiz-fill-1 1.73s linear both}.quiz-fill-2{animation:quiz-fill-2 1.73s linear both}@keyframes quiz-fill-0{0%,24.8%{opacity:0;animation-timing-function:linear}24.9%,71.1%{opacity:.3;animation-timing-function:ease-out}to{opacity:0}}@keyframes quiz-fill-1{0%,39.2%{opacity:0;animation-timing-function:linear}39.3%,71.1%{opacity:.3;animation-timing-function:ease-out}to{opacity:0}}@keyframes quiz-fill-2{0%,53.7%{opacity:0;animation-timing-function:linear}53.8%,71.1%{opacity:.3;animation-timing-function:ease-out}to{opacity:0}}.emergency{display:flex;align-items:center;gap:10px;min-height:44px;padding:12px 0;color:#FF7A6B;font-size:16px}.emergency svg{flex:0 0 auto}.emergency-dialog{width:100%;height:100%;max-width:100%;max-height:100%;margin:0;border:0;background:#131312;color:#EDE9E0}.emergency-dialog::-webkit-backdrop{background:#131312}.emergency-dialog::backdrop{background:#131312}.emergency-body{max-width:580px;margin:auto;padding:28px 24px 48px;position:relative}.emergency-body h2{font-size:clamp(34px,8vw,48px);line-height:1.13;margin:36px 0 20px}.emergency-line{font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,5.5vw,25px);line-height:1.4;margin:0 0 24px}.emergency-timer{border:1px solid #2a2825;padding:24px;display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:28px}.emergency-timer svg{width:150px;height:150px}.emergency-clock{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.emergency-timer{position:relative}.emergency-clock{position:static;width:auto;height:auto;overflow:visible;clip:auto;font-family:var(--mono);font-size:40px;letter-spacing:-.04em;margin-top:-108px}.emergency-cue{color:#A39E92;font-size:15px;margin-bottom:8px}.emergency-timer .primary{justify-content:center}.emergency-caption{font:12px var(--mono);color:#A39E92;margin:18px 0 8px}.emergency-actions{list-style:none;margin:0;padding:0;border:1px solid #2a2825}.emergency-actions li{min-height:44px;padding:14px 16px;border-top:1px solid #2a2825}.emergency-actions li:first-child{border-top:0}.emergency-evidence{font-size:13px;line-height:1.5;color:#A39E92}.emergency-dialog .study-link{display:inline-flex;align-items:center;min-height:44px;padding-top:0}.emergency-footer{font:12px var(--mono);color:#A39E92;margin-top:28px;line-height:1.5}.google-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;border:1px solid var(--hairline);margin:0 0 8px;font-size:16px}.google-button:hover{border-color:var(--blue);color:var(--blue)}.provider-notice{color:#C0392B;font-size:14px;line-height:1.4;margin:0 0 8px}.sync-or{color:var(--muted);font-size:14px;margin:4px 0 8px}.reminder-row{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:56px;border-bottom:1px solid var(--hairline);font-size:17px;margin:0 0 28px}.reminder-row span:last-child{color:var(--muted);font-family:var(--mono);font-size:14px}.habit-reminders h1{font-size:34px;margin-bottom:12px}.habit-reminders .note{color:var(--muted);font-size:14px;line-height:1.45;margin-bottom:24px}.habit-card{border:1px solid var(--hairline);margin-bottom:18px}.habit-card h2{font:12px var(--mono);font-weight:400;color:var(--muted);padding:12px 14px 0}.habit-card button{display:flex;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:12px 14px;text-align:left;border-top:1px solid var(--hairline);font-size:16px}.habit-card button span:last-child{color:var(--muted);font-family:var(--mono);font-size:14px}.habit-card-empty{color:var(--muted);padding:14px}.time-dialog{border:0;padding:24px;background:var(--paper);color:var(--ink);max-width:420px;width:calc(100% - 32px)}.time-dialog::-webkit-backdrop{background:rgba(0,0,0,.6)}.time-dialog::backdrop{background:rgba(0,0,0,.6)}.time-dialog-label{font-size:20px;margin-bottom:16px}.time-dialog input{width:100%;min-height:56px;font-family:var(--mono);font-size:28px}.time-dialog .primary{justify-content:center;margin-top:16px}.start-account{margin-top:20px}