@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-20c4,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_d8ebd1{font-family:Inter,Inter Fallback;font-style:normal}.__variable_d8ebd1{--font-inter:"Inter","Inter Fallback"}:root{color-scheme:light dark;--gray-25:#fcfcfc;--gray-50:#f9f9f9;--gray-100:#f2f2f2;--gray-200:#e8e8e8;--gray-300:#d4d4d4;--gray-400:#a0a0a0;--gray-500:#737373;--gray-600:#525252;--gray-700:#3f3f3f;--gray-800:#262626;--gray-900:#171717;--gray-950:#0a0a0a;--bg:#ffffff;--bg-subtle:var(--gray-50);--surface:#ffffff;--surface-raised:var(--gray-50);--border:var(--gray-200);--border-strong:var(--gray-300);--text:var(--gray-900);--text-secondary:var(--gray-600);--text-tertiary:var(--gray-500);--text-placeholder:var(--gray-400);--solid:var(--gray-900);--solid-hover:var(--gray-800);--solid-text:#ffffff;--day-credited:var(--gray-900);--day-backfilled:var(--gray-400);--day-empty:var(--gray-300);--shadow-xs:0 1px 2px 0 rgb(10 10 10/0.05);--shadow-sm:0 1px 3px 0 rgb(10 10 10/0.1),0 1px 2px 0 rgb(10 10 10/0.06);--shadow-md:0 4px 8px -2px rgb(10 10 10/0.1),0 2px 4px -2px rgb(10 10 10/0.06);--shadow-lg:0 12px 16px -4px rgb(10 10 10/0.08),0 4px 6px -2px rgb(10 10 10/0.03);--ring:rgb(10 10 10/0.09);--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:16px}@media (prefers-color-scheme:dark){:root{--gray-25:#131313;--gray-50:#1a1a1a;--gray-100:#212121;--gray-200:#2b2b2b;--gray-300:#3a3a3a;--gray-400:#6b6b6b;--gray-500:#8f8f8f;--gray-600:#ababab;--gray-700:#c7c7c7;--gray-800:#e0e0e0;--gray-900:#f2f2f2;--gray-950:#fbfbfb;--bg:#0e0e0e;--surface:var(--gray-50);--surface-raised:var(--gray-100);--solid-text:#0e0e0e;--shadow-xs:none;--shadow-sm:0 1px 3px 0 rgb(0 0 0/0.4);--shadow-md:0 4px 8px -2px rgb(0 0 0/0.45);--shadow-lg:0 12px 16px -4px rgb(0 0 0/0.5);--ring:rgb(255 255 255/0.14)}}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-inter),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}.page{max-width:720px;margin:0 auto;padding:40px 24px 96px}.card{max-width:400px;margin:10vh auto;display:grid;grid-gap:20px;gap:20px;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm)}.wordmark{margin:0 0 -4px;font-size:13px;line-height:18px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}h1{font-size:30px;line-height:38px;letter-spacing:-.02em}h1,h2{font-weight:600;margin:0}h2{font-size:18px;line-height:28px;letter-spacing:-.01em}.muted{color:var(--text-secondary);font-size:14px;line-height:20px;margin:0}a{color:inherit}.error,.success{display:flex;gap:8px;align-items:baseline;font-size:14px;line-height:20px;font-weight:500;margin:0}.error{color:var(--text)}.error:before{content:"⚠\FE0E";flex:none;font-weight:600}.success{color:var(--text-secondary)}.success:before{content:"✓";flex:none;color:var(--text);font-weight:600}.banner,.notice{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);padding:16px;font-size:14px;line-height:20px;color:var(--text-secondary);margin:0}.banner{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:24px;border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.banner>span{color:var(--text);font-weight:500}.form{display:grid;grid-gap:16px;gap:16px}.field{display:grid;grid-gap:6px;gap:6px}.field>input,.field>select,.field>textarea{min-width:0}.field>span{font-size:14px;line-height:20px;font-weight:500;color:var(--text)}.field small{font-size:13px;line-height:18px;color:var(--text-tertiary)}input:where(:not([type=checkbox],[type=radio],[type=range],[type=file])),select,textarea{width:100%;padding:10px 14px;font-size:16px;line-height:24px;font-family:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:box-shadow .12s ease,border-color .12s ease}::placeholder{color:var(--text-placeholder)}textarea{line-height:1.7;resize:vertical;min-height:120px}input:disabled,select:disabled,textarea:disabled{background:var(--bg-subtle);color:var(--text-tertiary);box-shadow:none}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gray-400);box-shadow:var(--shadow-xs),0 0 0 4px var(--ring)}:focus-visible{outline:none;box-shadow:0 0 0 4px var(--ring)}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:14px;line-height:20px;font-weight:600;padding:10px 16px;min-height:40px;border-radius:var(--radius-md);border:1px solid var(--solid);background:var(--solid);color:var(--solid-text);box-shadow:var(--shadow-xs);cursor:pointer;transition:background .12s ease,border-color .12s ease}button:hover:not(:disabled){background:var(--solid-hover);border-color:var(--solid-hover)}button:focus-visible{box-shadow:var(--shadow-xs),0 0 0 4px var(--ring)}button:disabled{background:var(--gray-100);border-color:var(--border);color:var(--text-placeholder);box-shadow:none;cursor:default}button.secondary{background:var(--surface);color:var(--text-secondary);border-color:var(--border-strong)}button.secondary:hover:not(:disabled){background:var(--bg-subtle);border-color:var(--border-strong);color:var(--text)}button.plain{background:none;border:none;box-shadow:none;color:var(--text-secondary);text-decoration:underline;text-underline-offset:3px;font-weight:500;padding:4px;min-height:0;justify-content:flex-start;justify-self:start}button.plain:hover:not(:disabled){background:none;color:var(--text)}.progress{display:flex;gap:8px;list-style:none;padding:0;margin:0;font-size:12px;line-height:18px;font-weight:500;color:var(--text-tertiary);flex-wrap:wrap}.progress li{padding:4px 10px;border-radius:9999px;border:1px solid var(--border);background:var(--surface);white-space:nowrap}.progress li.done{border-color:var(--border-strong);color:var(--text-secondary)}.progress li[aria-current=step]{background:var(--solid);border-color:var(--solid);color:var(--solid-text)}.topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:32px}.streak{font-size:48px;line-height:56px;font-weight:600;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.actions{flex-wrap:wrap}.actions,.monthnav{display:flex;gap:8px}.monthnav{align-items:center;justify-content:center;margin-bottom:16px}.monthnav select{width:auto;padding:8px 12px;font-size:14px;line-height:20px;font-weight:500}.monthnav button{padding:8px 14px;min-height:36px}.monthnav button:last-of-type{background:none;border-color:transparent;box-shadow:none;color:var(--text-secondary)}.monthnav button:last-of-type:hover:not(:disabled){background:var(--bg-subtle);border-color:transparent;color:var(--text)}.monthnav button:last-of-type:disabled{background:none;border-color:transparent;color:var(--text-placeholder)}.grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.weekday{text-align:center;font-size:12px;line-height:18px;font-weight:500;color:var(--text-tertiary);padding:6px 0}.day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid transparent;border-radius:var(--radius-md);background:none;box-shadow:none;cursor:pointer;padding:0;min-height:0}.day:hover:not(:disabled){background:var(--bg-subtle);border-color:transparent}.day .num{font-size:12px;line-height:18px;font-weight:500;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mark{display:inline-block;vertical-align:.02em;box-sizing:border-box;width:7px;height:7px;border-radius:50%;background-color:transparent}.day[data-state=credited] .mark,.mark[data-state=credited]{background-color:var(--day-credited)}.day[data-state=backfilled] .mark,.mark[data-state=backfilled]{border:1.5px solid var(--day-backfilled)}.day[data-state=empty] .mark,.mark[data-state=empty]{width:3px;height:3px;background-color:var(--day-empty)}.day[aria-current=date]{border-color:var(--border-strong)}.day.selected{background:var(--solid);border-color:var(--solid)}.day.selected .num{color:var(--solid-text)}.day.selected[data-state=credited] .mark{background-color:var(--solid-text)}.day.selected[data-state=backfilled] .mark{border-color:var(--solid-text)}.day.selected[data-state=empty] .mark{background-color:var(--solid-text);opacity:.5}.day.selected:hover{background:var(--solid-hover);border-color:var(--solid-hover)}.legend{display:flex;align-items:center;gap:16px;list-style:none;padding:0;margin:16px 0 0;font-size:12px;line-height:18px;color:var(--text-tertiary);flex-wrap:wrap}.editor{display:grid;grid-gap:16px;gap:16px;margin-top:40px}.editorhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.editorhead h2{font-size:14px;line-height:20px;font-weight:600;letter-spacing:0;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.savestate{font-size:12px;line-height:18px;color:var(--text-tertiary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.daytitle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--radius-md);box-shadow:none;background-color:transparent;width:calc(100% + 20px);margin:-2px -10px 2px;padding:4px 10px;font-size:19px;line-height:28px;font-weight:600;letter-spacing:-.015em;min-height:0;overflow:hidden;resize:none;transition:box-shadow .12s ease}.daytitle::placeholder{font-weight:inherit;letter-spacing:inherit;color:var(--text-placeholder)}.daytitle:hover:not(:disabled):not(:focus){box-shadow:inset 0 -1px 0 0 var(--border-strong)}.daytitle:focus{border-color:transparent;box-shadow:0 0 0 4px var(--ring)}.daytitle:disabled{background-color:transparent;color:var(--text-tertiary)}.section{display:grid;grid-gap:10px;gap:10px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}.sectionhead{display:flex;gap:12px;align-items:center}.sectionhead .heading{border:none;box-shadow:none;padding:0;font-weight:600;font-size:16px;line-height:24px;background:none}.sectionhead .heading:focus{box-shadow:none;border-color:transparent}.sectionhead .heading:disabled{color:var(--text-tertiary);background:none}.sectionhead .plain{flex:none}.section textarea{border:none;box-shadow:none;padding:0;background:none;font-size:16px;min-height:80px}.section textarea:focus{box-shadow:none;border-color:transparent}.shots{list-style:none;padding:0;margin:4px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:8px;gap:8px}.shots li{position:relative;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-raised);aspect-ratio:4/3}.shots img{width:100%;height:100%;object-fit:cover;display:block}.shotremove{position:absolute;top:6px;right:6px;width:26px;height:26px;min-height:0;padding:0;border:none;border-radius:999px;background:rgb(10 10 10/.62);color:#ffffff;font-size:17px;line-height:1;box-shadow:none;outline-offset:2px}.shotremove:after{content:"";position:absolute;inset:-8px}.shotremove:hover:not(:disabled){background:rgb(10 10 10/.82);border-color:transparent}.shotloading{display:block;width:100%;height:100%;background:linear-gradient(100deg,var(--gray-100) 30%,var(--gray-200) 50%,var(--gray-100) 70%);background-size:250% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}@media (prefers-reduced-motion:reduce){.shotloading{animation:none}}.progressbar{height:8px;background:var(--gray-200);border-radius:9999px;overflow:hidden;margin-bottom:8px}.progressbar span{display:block;height:100%;background:var(--solid);border-radius:9999px;transition:width .2s ease}.panel{border:1px solid var(--border);border-radius:var(--radius-2xl);padding:24px;margin-bottom:24px;display:grid;grid-gap:20px;gap:20px;background:var(--surface);box-shadow:var(--shadow-xs)}.panel h2{margin-bottom:-6px}.checkrow{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:20px;color:var(--text-secondary)}.checkrow input{width:16px;min-width:16px;height:16px;margin-top:2px;accent-color:var(--solid)}.inline{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.inline .field{flex:1 1;min-width:140px}.inline input[type=number]{max-width:120px}.inline .muted{padding-bottom:10px}.menuhead{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:32px;flex-wrap:wrap}.backlink{font-size:14px;line-height:20px;font-weight:500;color:var(--text-secondary);text-decoration:none}.backlink:hover{color:var(--text)}.menulink{display:inline-flex;align-items:center;min-height:40px;padding:10px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);color:var(--text-secondary);font-size:14px;line-height:20px;font-weight:600;text-decoration:none}.menulink:hover{background:var(--bg-subtle);color:var(--text)}.phrasegrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;background:var(--surface-raised);border:1px solid var(--border);padding:16px;border-radius:var(--radius-xl);list-style:none;counter-reset:word;margin:0}.phrasegrid li{counter-increment:word;display:flex;gap:8px;align-items:baseline;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:14px;line-height:20px}.phrasegrid li:before{content:counter(word);color:var(--text-placeholder);font-size:11px;min-width:14px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:560px){.page{padding:24px 16px 64px}.card{margin:4vh auto;padding:24px;border-radius:var(--radius-xl)}h1{font-size:24px;line-height:32px}.streak{font-size:40px;line-height:48px}.topbar{align-items:flex-start}.actions{width:auto}.monthnav{flex-wrap:wrap;gap:4px}.monthnav select{padding-left:10px;padding-right:24px}.monthnav select:first-of-type{flex:0 1 auto;min-width:116px}.monthnav select:last-of-type{flex:0 0 auto;padding-left:8px;padding-right:22px}.monthnav button{padding:8px 10px}.monthnav button:last-of-type{padding:8px 6px}.grid{gap:3px}.day{font-size:13px;border-radius:var(--radius-sm)}.phrasegrid{grid-template-columns:repeat(2,1fr)}.legend{gap:12px}.panel{padding:20px;border-radius:var(--radius-xl)}}