:root{--paper: #f6e9e6;--ink: #2a1830;--ink-soft: #6d5470;--rule: rgba(214, 110, 170, .4);--ultramarine: #d6337f;--vermilion: #b0185a;--wet-ink: #3d1460;--sepia: #8a3a6e;--glass: rgba(253, 243, 246, .74);--glass-strong: rgba(254, 247, 249, .93);--edge: rgba(110, 40, 90, .16);--shadow: 0 10px 30px -12px rgba(80, 20, 60, .42);--slip: rgba(255, 249, 250, .86);--s-new: #7a3fd0;--s-planned: #2f8fc8;--s-doing: #d6337f;--s-done: #2f7a55;--hand: "Caveat", "Bradley Hand", cursive;--serif: "Cormorant Garamond", "Iowan Old Style", Georgia, serif;--type: "Special Elite", "Courier New", monospace;--line: 34px;color-scheme:light}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;min-height:100vh;color:var(--ink);font:19px/1.45 var(--serif);-webkit-font-smoothing:antialiased}#page{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:-1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}a{color:var(--ultramarine)}:focus-visible{outline:2px solid var(--ultramarine);outline-offset:3px;border-radius:6px}.glass{background:var(--glass);border:1px solid var(--edge);box-shadow:var(--shadow),inset 0 1px #ffffff40;backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2)}.nav{position:sticky;top:calc(env(safe-area-inset-top,0px) + 14px);z-index:10;display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center;width:max-content;max-width:calc(100vw - 32px);margin:14px auto 0;padding:6px 10px;border-radius:999px;animation:drop .6s cubic-bezier(.2,.8,.2,1) both}.nav .brand{font:italic 600 21px var(--serif);padding:0 10px 0 6px;color:var(--ink);text-decoration:none}.nav a:not(.brand),.pill{font:21px var(--hand);color:var(--ink);text-decoration:none;background:transparent;border:0;border-radius:999px;padding:1px 12px;cursor:pointer;white-space:nowrap;transition:background .2s,transform .2s}.nav a:not(.brand):hover,.pill:hover{background:color-mix(in srgb,var(--ink) 8%,transparent)}.nav a[aria-current=page]{background:color-mix(in srgb,var(--ink) 12%,transparent)}.nav .who{font:15px var(--type);color:var(--ink-soft);padding:0 8px}@keyframes drop{0%{opacity:0;transform:translateY(-12px)}}.wrap{padding-inline:16px;padding-block:28px 80px}.sheet{position:relative;max-width:680px;margin:0 auto}.title{font:italic 500 clamp(40px,7vw,62px)/1.02 var(--serif);margin:18px 0 6px;text-wrap:balance;letter-spacing:-.01em}.lede{font:25px/1.25 var(--hand);color:var(--ink-soft);margin:0 0 30px;max-width:34ch}.field{margin:0 0 22px}.field>label,.field>.label{display:block;font:23px/1.1 var(--hand);color:var(--sepia);margin-bottom:2px}.field .hint{font:18px var(--hand);color:var(--ink-soft);margin-left:8px}.lined,.field input[type=text],.field input[type=date],.field input[type=number]{width:100%;font:21px/var(--line) var(--serif);color:var(--ink);background:transparent;border:0;border-bottom:1.5px solid var(--rule);border-radius:0;padding:0 2px;height:var(--line)}.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--ultramarine)}.field textarea{width:100%;min-height:calc(var(--line) * 5);resize:vertical;padding:0 2px;border:0;color:var(--ink);font:21px/var(--line) var(--serif);background:repeating-linear-gradient(to bottom,transparent 0 calc(var(--line) - 1.5px),var(--rule) calc(var(--line) - 1.5px) var(--line));background-attachment:local}.field textarea:focus{outline:none}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 28px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.chip{font:18px/1.2 var(--serif);color:var(--ink);background:color-mix(in srgb,var(--slip) 70%,transparent);border:1px solid var(--edge);border-radius:999px;padding:6px 14px 6px 10px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:transform .15s,background .2s,border-color .2s}.chip:before{content:"";width:12px;height:12px;border-radius:50%;border:1.5px solid var(--ink-soft);flex:none;transition:background .2s,border-color .2s,box-shadow .2s}.chip:hover{transform:translateY(-1px)}.chip[aria-checked=true]{border-color:var(--ultramarine);background:color-mix(in srgb,var(--ultramarine) 10%,var(--slip))}.chip[aria-checked=true]:before{background:var(--ultramarine);border-color:var(--ultramarine);box-shadow:inset 0 -2px 3px #00000059}.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:30px}.file{font:600 26px var(--hand);color:#fff;background:linear-gradient(135deg,#ff6fae,#e0337f 55%,#c21f6e);border:0;border-radius:999px;padding:6px 26px 8px;cursor:pointer;box-shadow:0 10px 24px -10px #c21f6ebf,inset 0 -3px 6px #00000040;transition:transform .15s,filter .2s}.file:hover{transform:translateY(-1px) rotate(-.6deg);filter:brightness(1.06)}.file:disabled{opacity:.55;cursor:progress;transform:none}.file-wrap{position:relative;display:inline-flex}.file-note{position:absolute;left:calc(100% + 6px);bottom:70%;display:inline-flex;align-items:center;gap:4px;font:22px var(--hand);color:var(--ultramarine);white-space:nowrap;pointer-events:none;opacity:0;transform:translate(10px) rotate(-3deg);transition:opacity .25s,transform .35s cubic-bezier(.2,.8,.2,1)}.file-wrap:hover .file-note,.file:focus-visible+.file-note{opacity:1;transform:translate(0) rotate(-3deg)}.file-wrap:hover .file-note svg,.file:focus-visible+.file-note svg{animation:nudge .9s ease-in-out infinite}.file:disabled+.file-note{opacity:0}@keyframes nudge{50%{transform:translate(6px)}}@media(max-width:560px){.file-note{display:none}}.error{font:21px var(--hand);color:var(--vermilion);margin:0}.confirm{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font:21px var(--hand);color:var(--ink-soft)}.linklike{font:inherit;color:var(--ultramarine);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.pill.danger{color:var(--vermilion);border:1px solid color-mix(in srgb,var(--vermilion) 45%,transparent)}.stamp{display:inline-block;font:15px/1 var(--type);letter-spacing:.06em;color:var(--vermilion);border:1.5px solid currentColor;border-radius:4px;padding:4px 7px 3px;transform:rotate(-2deg);text-transform:uppercase;mix-blend-mode:multiply}.filed{text-align:left;animation:settle .9s cubic-bezier(.2,.8,.2,1) both}.filed .stamp.big{font-size:30px;padding:10px 14px 8px;transform:rotate(-4deg);animation:thunk .5s cubic-bezier(.3,1.6,.5,1) .35s both}@keyframes settle{0%{opacity:0;transform:translateY(10px)}}@keyframes thunk{0%{opacity:0;transform:rotate(-4deg) scale(1.6)}}.slip{position:relative;background:var(--slip);border:1px solid var(--edge);border-radius:3px;padding:12px 14px;box-shadow:0 1px #fff6 inset,0 8px 18px -12px #281e1480;text-align:left;width:100%;color:var(--ink);font:inherit}button.slip{cursor:pointer;transition:transform .15s,box-shadow .2s}button.slip:hover{transform:translateY(-2px) rotate(-.3deg);box-shadow:0 14px 24px -14px #281e1499}.slip h3{font:600 20px/1.2 var(--serif);margin:6px 0 4px}.slip .meta{font:14px var(--type);color:var(--ink-soft);display:flex;gap:10px;flex-wrap:wrap;align-items:center}.slip .details{font:17px/1.35 var(--serif);color:var(--ink-soft);margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.status{display:inline-flex;align-items:center;gap:6px;font:18px var(--hand);color:var(--c)}.status:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c);box-shadow:inset 0 -1px 2px #00000059}.s-new{--c: var(--s-new)}.s-planned{--c: var(--s-planned)}.s-doing{--c: var(--s-doing)}.s-done{--c: var(--s-done)}.track{display:flex;gap:4px;margin-top:10px}.track span{flex:1;height:4px;border-radius:2px;background:color-mix(in srgb,var(--ink) 12%,transparent)}.track span.on{background:var(--c)}.list{display:grid;gap:14px;max-width:640px}.desk{max-width:1240px;margin:0 auto}.desk-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:12px 0 18px}.desk-head .title{margin:0;font-size:clamp(36px,5vw,52px)}.counts{font:15px var(--type);color:var(--ink-soft);display:flex;gap:14px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.toolbar{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding:6px 8px;border-radius:999px;margin-bottom:18px;width:max-content;max-width:100%}.toolbar .sep{width:1px;align-self:stretch;margin:4px 2px;background:var(--edge)}.toolbar .pill[aria-pressed=true]{background:color-mix(in srgb,var(--ink) 12%,transparent)}.columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start}@media(max-width:980px){.columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.columns{grid-template-columns:minmax(0,1fr)}}.column h2{font:26px var(--hand);margin:0 0 8px;display:flex;justify-content:space-between;align-items:baseline;border-bottom:1.5px solid var(--rule)}.column h2 small{font:14px var(--type);color:var(--ink-soft)}.column .stack{display:grid;gap:10px;min-height:60px}.column .empty{font:19px var(--hand);color:var(--ink-soft);padding:10px 2px}.type-tag{font:13px var(--type);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.type-tag.request{color:var(--vermilion)}.scrim{position:fixed;inset:0;background:#140e0847;z-index:20;animation:fade .2s both}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);z-index:21;overflow-y:auto;background:var(--glass-strong);border-left:1px solid var(--edge);box-shadow:-20px 0 40px -20px #00000080;padding:calc(env(safe-area-inset-top,0px) + 22px) 24px calc(env(safe-area-inset-bottom,0px) + 40px);animation:slide .35s cubic-bezier(.2,.8,.2,1) both}.drawer .close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 12px);right:12px}.drawer h2{font:italic 500 34px/1.1 var(--serif);margin:10px 0 8px;text-wrap:balance}.drawer .facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;font-size:17px;margin:12px 0 18px}.drawer .facts dt{font:19px var(--hand);color:var(--sepia)}.drawer .facts dd{margin:0;min-width:0;overflow-wrap:anywhere}.drawer section{margin-top:22px}.drawer h3{font:23px var(--hand);color:var(--sepia);margin:0 0 6px;border-bottom:1.5px solid var(--rule)}.note{border-left:2px solid var(--rule);padding:2px 0 2px 12px;margin:10px 0}.note p{margin:0;white-space:pre-wrap;font-size:18px}.note .meta{font:13px var(--type);color:var(--ink-soft)}.linked{display:flex;flex-wrap:wrap;gap:6px}@keyframes slide{0%{transform:translate(40px);opacity:0}}@keyframes fade{0%{opacity:0}}.quiet{font:21px var(--hand);color:var(--ink-soft)}.notice{max-width:560px}.notice p{font-size:20px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.chain{position:fixed;top:0;right:clamp(18px,6vw,72px);z-index:30;width:34px;height:132px;padding:0;border:0;background:none;cursor:grab;touch-action:none;display:flex;flex-direction:column;align-items:center;transform-origin:50% 0;animation:sway 6s ease-in-out infinite}.chain:active{cursor:grabbing}.chain.dragging{animation:none}.chain .links{width:6px;flex:1;transition:height .2s;background:radial-gradient(circle at 50% 45%,#ffe3e6 0 1.2px,#d99a9a 1.9px,#8a4f55 2.9px,transparent 3.1px) 0 0 / 6px 7px repeat-y;filter:drop-shadow(1px 2px 1.5px rgba(30,20,10,.35))}.chain .pull{width:18px;height:26px;margin-top:-2px;border-radius:45% 45% 50% 50%/35% 35% 65% 65%;background:radial-gradient(circle at 35% 30%,#fff0f2,#e3a3a6 38%,#96565d 80%);box-shadow:0 6px 10px -4px #1e140a8c,inset 0 -3px 4px #3c230573}.chain .tag{position:absolute;top:calc(100% + 4px);white-space:nowrap;font:17px var(--hand);color:var(--ink-soft);opacity:0;transition:opacity .25s}.chain:hover .tag,.chain:focus-visible .tag{opacity:1}.chain.tug{animation:tug .45s cubic-bezier(.3,1.5,.5,1)}.chain:focus-visible{outline:none}.chain:focus-visible .pull{outline:2px solid var(--ultramarine);outline-offset:3px}@keyframes tug{35%{transform:translateY(20px)}70%{transform:translateY(-4px)}}@keyframes sway{50%{transform:rotate(1.4deg)}}@media(max-width:560px){.chain{height:96px;right:10px}}:root[data-lights=off]{--glass: rgba(240, 233, 218, .62);--slip: rgba(246, 240, 228, .8)}.rainbow{-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-inline:.04em .12em}.hand-title{font:600 clamp(44px,7.2vw,70px)/1.15 var(--hand);letter-spacing:0;padding-block:.06em;padding-inline:.06em .2em}.letter-ink .word{white-space:nowrap}.letter-ink .word span{display:inline-block;padding-inline:.12em;margin-inline:-.12em}.sheet .field input[type=text],.sheet .field textarea{font-family:var(--hand);font-size:27px;color:var(--wet-ink);text-shadow:0 0 .5px var(--wet-ink),.3px .4px 1.2px rgba(61,20,96,.28);transition:text-shadow 1.4s ease-out,color 1.4s ease-out}.sheet .field textarea{line-height:var(--line)}.sheet .field input.wet,.sheet .field textarea.wet{color:#5a1d8c;transition:none;text-shadow:0 0 .5px #5a1d8c,0 0 2.4px rgba(150,60,200,.45),0 -.6px 0 rgba(255,255,255,.55)}.sheet .field input::placeholder,.sheet .field textarea::placeholder{color:color-mix(in srgb,var(--wet-ink) 35%,transparent);text-shadow:none}.home{padding-top:48px}.home .hand-title{margin-bottom:34px}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}.choice{position:relative;display:flex;flex-direction:column;gap:8px;min-height:150px;padding:22px 24px 18px;color:var(--ink);text-decoration:none;background:var(--slip);border:1px solid var(--edge);border-radius:4px;box-shadow:0 1px #ffffff80 inset,0 14px 28px -18px #50143c8c;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s}.choice:nth-child(1){transform:rotate(-.6deg)}.choice:nth-child(2){transform:rotate(.5deg)}.choice:hover{transform:translateY(-3px) rotate(0);box-shadow:0 1px #ffffff80 inset,0 20px 34px -18px #50143ca6}.choice-title{font:600 34px/1.05 var(--hand)}.choice-ask .choice-title{color:var(--ultramarine)}.choice-status .choice-title{color:#7a3fd0}.choice-built .choice-title{color:#2f8fc8}.choice:nth-child(3){transform:rotate(-.3deg)}.choice-sub{font:19px/1.3 var(--serif);color:var(--ink-soft)}.choice-go{margin-top:auto;align-self:flex-end;transition:transform .25s}.choice-ask{color:var(--ultramarine)}.choice-status{color:#7a3fd0}.choice-built{color:#2f8fc8}.choice:hover .choice-go{transform:translate(6px)}.slip.built .summary{font:18px/1.4 var(--serif);color:var(--ink-soft);margin:4px 0 0}.stamp.done-stamp{color:var(--s-done)}
