:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#fff;--text:#000;--muted:#8e8e93;--placeholder:#a1a1a6;--line:#e5e5ea;--pill:#ececee;--pill-press:#dddde1;--field:#f2f2f7;--icon:#6c6c70;--icon-hover:#f2f2f7;--blue:#007aff;--green:#248a3d;--green-bg:#34c75924;--purple:#8944ab;--purple-bg:#af52de21;--red:#ff3b30;--key:#e9e9ec;--key-press:#cfcfd4;--sheet:#fff;--backdrop:#0000004d;--primary:#000;--primary-text:#fff;--toast:#1c1c1e;--toast-text:#fff;--toast-action:#64d2ff;--lift:0 1px 2px #0000000a, 0 4px 14px #00000012;--popover-shadow:0 14px 36px #00000024, 0 0 0 1px #0000000d;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#000;--text:#fff;--muted:#8e8e93;--placeholder:#636366;--line:#262628;--pill:#1c1c1e;--pill-press:#2c2c2e;--field:#2c2c2e;--icon:#aeaeb2;--icon-hover:#1c1c1e;--blue:#0a84ff;--green:#30d158;--green-bg:#30d15829;--purple:#d08ef5;--purple-bg:#bf5af233;--red:#ff453a;--key:#2c2c2e;--key-press:#48484a;--sheet:#1c1c1e;--backdrop:#0009;--primary:#fff;--primary-text:#000;--toast:#2c2c2e;--lift:0 4px 14px #00000073, 0 0 0 1px #ffffff12;--popover-shadow:0 14px 36px #0009, 0 0 0 1px #ffffff14}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);min-height:100dvh;color:var(--text)}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.55}input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.page{--gutter:16px;max-width:560px;padding:calc(env(safe-area-inset-top) + 56px) var(--gutter) calc(env(safe-area-inset-bottom) + 120px);margin:0 auto}@media (width>=640px){.page{padding-top:96px}}.title{letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font-size:clamp(32px,9vw,40px);font-weight:700;line-height:1.1}.pills{grid-auto-columns:1fr;grid-auto-flow:column;gap:10px;margin-top:18px;display:grid}.pill{background:var(--pill);border-radius:999px;height:40px;font-size:15px;font-weight:500;transition:background-color .15s}a.pill{color:inherit;-webkit-tap-highlight-color:transparent;place-items:center;text-decoration:none;display:grid}.pill:active{background:var(--pill-press)}@media (hover:hover){.pill:hover{background:var(--pill-press)}}.section{margin-top:24px}.new-todo{border-bottom:1px solid var(--line);align-items:flex-start;gap:6px;display:flex}.new-todo-plus{width:16px;height:16px;color:var(--placeholder);flex:none;margin-top:19px}.new-todo textarea{resize:none;background:0 0;border:0;outline:none;flex:1;min-width:0;margin:0;padding:16px 0;font-size:16px;line-height:22px;display:block;overflow:hidden}.new-todo textarea::placeholder{color:var(--placeholder)}.new-todo-add{height:32px;color:var(--primary-text);background:var(--primary);border-radius:999px;flex:none;align-self:center;margin-left:6px;padding:0 14px;font-size:14px;font-weight:600;animation:.14s pop-in}.rows{margin:0;padding:0;list-style:none;position:relative}.row{background:var(--bg);border-bottom:1px solid var(--line);align-items:center;min-height:60px;padding:15px 0;display:flex;position:relative}.row-body{flex:1;min-width:0}.row-text{overflow-wrap:anywhere;cursor:text;margin:0;font-size:16px;font-weight:500;line-height:22px}.row.is-done .row-text{color:var(--muted);cursor:default;font-weight:400}.row-strike{background:linear-gradient(currentColor,currentColor) 0 58%/0 1.5px no-repeat}.row.is-done .row-strike,.row.is-finishing .row-strike{background-size:100% 1.5px}.row.is-finishing .row-text{color:var(--muted);font-weight:400;transition:color .3s,font-weight .3s}.row.is-finishing .row-strike{transition:background-size .3s cubic-bezier(.45,0,.2,1)}.row-edit{resize:none;background:0 0;border:0;outline:none;width:100%;margin:0;padding:0;font-size:16px;font-weight:500;line-height:22px;display:block;overflow:hidden}.assignee{color:var(--muted);align-items:center;gap:4px;margin-top:5px;font-size:12px;display:inline-flex}.assignee svg{width:11px;height:11px}@media (hover:hover){button.assignee:hover{color:var(--text)}}.actions{background:linear-gradient(to right, transparent, var(--bg) 48px);opacity:0;pointer-events:none;align-items:center;gap:2px;padding-left:56px;transition:opacity .12s;display:flex;position:absolute;top:0;bottom:0;right:0}@media (hover:hover){.row:hover .actions{opacity:1;pointer-events:auto}}.row.is-active .actions,.row:focus-within .actions{opacity:1;pointer-events:auto}.row.is-editing .row-body{padding-right:166px}.row.is-editing .actions{opacity:1;pointer-events:auto;background:0 0;padding-left:0}.row.is-finishing .actions{opacity:0;pointer-events:none}.icon-btn{width:38px;height:38px;color:var(--icon);border-radius:10px;place-items:center;display:grid}.icon-btn svg{width:19px;height:19px}.icon-btn:active{background:var(--icon-hover)}@media (hover:hover){.icon-btn:hover{color:var(--text);background:var(--icon-hover)}}.handle{cursor:grab;touch-action:none}.row.can-swipe{touch-action:pan-y pinch-zoom}.row.can-swipe .row-text,.row.can-swipe .assignee{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#root:has(.is-swiping){overflow-x:clip}.row.is-swiping{box-shadow:calc(-1 * var(--gutter)) 0 0 var(--bg), var(--gutter) 0 0 var(--bg)}.swipe-reveal{width:100vw;color:var(--icon);background:var(--pill);align-items:center;padding:0 20px;transition:background-color .15s,color .15s;display:flex;position:absolute;top:0;bottom:-1px}.swipe-reveal svg{width:22px;height:22px;transition:transform .18s cubic-bezier(.3,1.6,.5,1);transform:scale(.82)}.swipe-reveal.is-armed svg{transform:scale(1)}.swipe-reveal-left{right:calc(100% + var(--gutter));justify-content:flex-end}.swipe-reveal-right{left:calc(100% + var(--gutter));justify-content:flex-start}.swipe-toggle.is-armed{color:var(--primary-text);background:var(--primary)}.swipe-delete.is-armed{color:#fff;background:var(--red)}.row.is-dragging>*,.row.is-landing>*{visibility:hidden}.row.is-dragging,.row.is-landing{border-bottom-color:#0000}.row-lifted{isolation:isolate;cursor:grabbing;background:0 0;border-bottom-color:#0000;animation:.18s ease-out both lift-in}.row-lifted:before,.row-lifted:after{content:"";border-radius:14px;position:absolute;inset:0 -12px}.row-lifted:before{z-index:-1;background:var(--bg)}.row-lifted:after{z-index:-2;box-shadow:var(--lift);animation:.18s ease-out both fade-in}.row-lifted .handle{cursor:grabbing}.is-dropping .row-lifted{animation:.22s cubic-bezier(.2,.9,.25,1) both lift-out}.is-dropping .row-lifted:after{animation:.22s both fade-out}@keyframes lift-in{0%{transform:scale(1)}to{transform:scale(1.012)}}@keyframes lift-out{0%{transform:scale(1.012)}to{transform:scale(1)}}@keyframes fade-out{to{opacity:0}}.row.is-raised{z-index:10}.popover{z-index:20;background:var(--sheet);width:min(260px,100%);box-shadow:var(--popover-shadow);border-radius:14px;padding:6px;animation:.14s pop-in;position:absolute;top:calc(100% - 8px);right:0}.popover-input{background:var(--field);border:0;border-radius:9px;outline:none;width:100%;height:40px;padding:0 10px;font-size:16px}.popover-input::placeholder{color:var(--placeholder)}.popover-list{max-height:228px;margin:6px 0 0;padding:0;list-style:none;overflow-y:auto}.option{text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;height:38px;padding:0 10px;font-size:15px;display:flex}.option svg{width:14px;height:14px;color:var(--muted);flex:none}.option-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.option.is-highlighted{background:var(--field)}.option .option-check{color:var(--blue);margin-left:auto}.option-danger{color:var(--red);margin-top:4px}.person{--person-bg:var(--sheet);border-radius:8px;position:relative}.person.is-highlighted{--person-bg:var(--field);background:var(--person-bg)}.person-actions{background:linear-gradient(to right, transparent, var(--person-bg) 20px);opacity:0;pointer-events:none;border-radius:0 8px 8px 0;align-items:center;gap:2px;padding:0 4px 0 24px;transition:opacity .12s;display:flex;position:absolute;top:0;bottom:0;right:0}.person:hover .person-actions,.person:focus-within .person-actions{opacity:1;pointer-events:auto}@media (hover:none),(pointer:coarse){.person-actions{opacity:1;pointer-events:auto;background:0 0;padding-left:0}.person .option{padding-right:72px}}.person-action{width:30px;height:30px;color:var(--icon);border-radius:7px;place-items:center;display:grid}.person-action svg{width:16px;height:16px}@media (hover:hover){.person-action:hover{color:var(--text)}.person-remove:hover{color:var(--red)}}.person-rename{position:relative}.person-name{background:var(--field);width:100%;height:38px;box-shadow:inset 0 0 0 1.5px var(--text);border:0;border-radius:8px;outline:none;padding:0 40px 0 10px;font-size:16px;display:block}.person-save{width:28px;height:28px;color:var(--text);place-items:center;animation:.14s pop-in;display:grid;position:absolute;top:5px;right:5px}.person-save svg{stroke-width:2.2px;width:18px;height:18px}.toast-region{right:0;bottom:calc(env(safe-area-inset-bottom) + 24px);z-index:200;pointer-events:none;justify-content:center;padding:0 16px;display:flex;position:fixed;left:0}.toast{max-width:100%;color:var(--toast-text);overflow-wrap:anywhere;pointer-events:auto;background:var(--toast);border-radius:999px;align-items:center;gap:16px;padding:11px 18px;font-size:14px;font-weight:500;animation:.2s toast-in;display:flex;box-shadow:0 8px 24px #0000002e}.toast button{color:var(--toast-action);flex:none;font-weight:600}.backdrop{z-index:100;background:var(--backdrop);justify-content:center;align-items:flex-end;animation:.2s fade-in;display:flex;position:fixed;inset:0}.sheet{width:100%;height:calc(100dvh - max(env(safe-area-inset-top), 12px) - 10px);padding:20px 20px calc(env(safe-area-inset-bottom) + 24px);background:var(--sheet);border-radius:28px 28px 0 0;outline:none;flex-direction:column;animation:.34s cubic-bezier(.2,.9,.25,1) slide-up;display:flex;position:relative;overflow-y:auto}@media (width>=640px){.backdrop{align-items:center;padding:24px}.sheet{border-radius:24px;max-width:440px;height:auto;max-height:min(780px,100dvh - 48px);animation:.22s pop-in}.sheet-passcode{min-height:min(680px,100dvh - 48px)}.sheet-rename{min-height:min(600px,100dvh - 48px)}}.sheet-close{z-index:1;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:14px;left:14px}.sheet-close svg{width:20px;height:20px}@media (hover:hover){.sheet-close:hover{background:var(--field)}}.sheet-title{text-align:center;margin:8px 0 0;font-size:17px;font-weight:600}.sheet-intro{color:var(--muted);margin:26px 0 16px;font-size:15px;line-height:1.4}.passcode{text-align:center;flex-direction:column;flex:1;align-items:center;padding-top:52px;display:flex}.passcode-lock{width:46px;height:46px;color:var(--text)}.passcode-title{margin:22px 0 0;font-size:17px;font-weight:600}.passcode-message{max-width:300px;color:var(--muted);overflow-wrap:anywhere;margin:10px 0 0;font-size:15px;line-height:1.35}.dots{gap:24px;margin-top:30px;display:flex}.dot{border:1.5px solid var(--text);border-radius:50%;width:14px;height:14px;transition:background-color 80ms}.dot.is-filled{background:var(--text)}.dots.is-shaking{animation:.45s shake}.passcode-error{min-height:20px;color:var(--red);margin:14px 0 0;font-size:14px}.keypad{grid-template-columns:repeat(3,76px);gap:16px 26px;margin-top:auto;padding-top:28px;display:grid}.key{background:var(--key);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:76px;height:76px;transition:background-color .1s;display:flex}.key:active{background:var(--key-press);transition:none}.key-digit{font-size:32px;font-weight:400;line-height:1}.key-letters{letter-spacing:.14em;margin-top:2px;font-size:10px;font-weight:600}.key-blank{visibility:hidden}.key-delete{background:0 0}.key-delete:active{background:var(--field)}.key-delete svg{width:28px;height:28px}@media (height<=700px){.keypad{grid-template-columns:repeat(3,66px);gap:12px 24px}.key{width:66px;height:66px}.passcode{padding-top:36px}}.gate{max-width:440px;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 32px) 16px calc(env(safe-area-inset-bottom) + 32px);flex-direction:column;justify-content:center;margin:0 auto;display:flex}.gate .passcode{flex:none;padding-top:0}.gate .keypad{margin-top:20px}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-14px)}30%{transform:translate(12px)}45%{transform:translate(-9px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}}.rename,.checkout{flex-direction:column;flex:1;display:flex}.host{color:var(--muted);font-weight:500}.name-field{background:var(--field);cursor:text;border-radius:14px;align-items:center;height:52px;padding:0 6px 0 14px;font-size:17px;display:flex}.name-field:focus-within{box-shadow:inset 0 0 0 2px var(--blue)}.name-field input{background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%;padding:0;font-size:17px;font-weight:600}.name-field input::placeholder{color:var(--placeholder);font-weight:500}.name-field-clear{width:36px;height:36px;color:var(--placeholder);flex:none;place-items:center;display:grid}.name-field-clear svg{width:18px;height:18px}.results{margin-top:6px;transition:opacity .15s}.results.is-searching{opacity:.5}.results-heading{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;margin:24px 0 0;font-size:13px;font-weight:600}.name-list{margin:0;padding:0;list-style:none}.name-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:62px;padding:10px 0;display:flex}.name-row.is-featured{min-height:78px}.name-row-main{flex:1;min-width:0}.name-row-name{overflow-wrap:anywhere;font-size:16px;font-weight:600;display:block}.name-row.is-featured .name-row-name{font-size:19px}.name-row.is-dim .name-row-name{color:var(--muted)}.name-row-meta{min-height:18px;color:var(--muted);align-items:center;gap:6px;margin-top:4px;font-size:12px;display:flex}.available{color:var(--green);font-weight:600}.name-row-side{flex:none;align-items:center;gap:12px;display:flex}.price{font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.buy{height:34px;color:var(--primary-text);background:var(--primary);border-radius:999px;padding:0 16px;font-size:14px;font-weight:600}.buy-secondary{color:var(--text);background:var(--pill)}.muted-note{color:var(--muted);font-size:14px}.badge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;height:18px;padding:0 7px;font-size:10px;font-weight:700;display:inline-flex}.badge-premium{color:var(--purple);background:var(--purple-bg)}.badge-taken{color:var(--muted);background:var(--field)}.badge-yours{color:var(--green);background:var(--green-bg)}.hint{color:var(--muted);margin:16px 2px 0;font-size:14px;line-height:1.45}.error{color:var(--red);margin:14px 0 0;font-size:14px}.admin-link{align-items:center;gap:10px;margin-top:14px;display:flex}.admin-link-url{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;background:var(--field);-webkit-user-select:all;user-select:all;border-radius:10px;flex:1;margin:0;padding:8px 12px;font-size:13px;line-height:18px;overflow:hidden}.rename-admin{margin-top:auto;padding-top:32px}.rename-admin .hint{margin-top:8px}.sheet-owner{height:auto}.owner{text-align:center;flex-direction:column;align-items:center;padding:28px 4px 0;display:flex}.owner-check{width:56px;height:56px;color:var(--primary-text);background:var(--primary);border-radius:50%;place-items:center;animation:.3s pop-in;display:grid}.owner-check svg{stroke-width:2.4px;width:28px;height:28px}.owner-title{letter-spacing:-.01em;overflow-wrap:anywhere;margin:18px 0 0;font-size:22px;font-weight:700;line-height:1.2}.owner-intro{color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.45}.owner-intro strong{color:var(--text);overflow-wrap:anywhere;font-weight:600}.owner-done{align-self:stretch;margin-top:28px}.checkout{padding-top:40px}.back{color:var(--text);align-self:flex-start;align-items:center;gap:2px;margin:0 0 24px -4px;font-size:16px;display:inline-flex}.back svg{width:18px;height:18px}.eyebrow{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;margin:0;font-size:13px;font-weight:600}.checkout-name{letter-spacing:-.02em;overflow-wrap:anywhere;margin:8px 0 0;font-size:30px;font-weight:700;line-height:1.15}.checkout-badge{align-self:flex-start;margin-top:10px}.checkout-price{letter-spacing:-.02em;margin:20px 0 0;font-size:34px;font-weight:700}.checkout-price span{letter-spacing:0;color:var(--muted);margin-left:8px;font-size:15px;font-weight:500}.perks{gap:12px;margin:24px 0 0;padding:0;list-style:none;display:grid}.perks li{overflow-wrap:anywhere;gap:10px;font-size:15px;line-height:1.4;display:flex}.perks svg{width:18px;height:18px;color:var(--green);flex:none;margin-top:1px}.checkout-actions{flex-direction:column;margin-top:auto;padding-top:32px;display:flex}.checkout-actions .error{text-align:center;margin:0 0 12px}.primary{height:52px;color:var(--primary-text);background:var(--primary);border-radius:999px;padding:0 24px;font-size:17px;font-weight:600}.fine{color:var(--muted);text-align:center;margin:12px 0 0;font-size:13px}.notfound p{color:var(--muted);margin:14px 0 28px;font-size:17px}@keyframes fade-in{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(100%)}}@keyframes pop-in{0%{opacity:0;transform:scale(.97)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
