@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#09090d;--text:#f4f4f8;--muted:#a9a9bc;--faint:#6e6e82;--grip:#4a4a58;--error:#ff4d4d;--done:#3fd78b;--card:#ffffff0a;--card-line:#ffffff14;--line:#ffffff1a;--panel-line:#ffffff1f;--c0:#3fd78b;--c1:#b38bf2;--accent:#3fd78b;--display:"Space Grotesk Variable", "Space Grotesk", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{background:var(--bg);margin:0}html{scrollbar-color:#fff3 transparent}body{color:var(--text);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;font-family:Inter Variable,Inter,system-ui,sans-serif}a{color:var(--text);text-decoration:none}a:hover{color:#fff}input,button{font-family:inherit}button{-webkit-tap-highlight-color:transparent}input::placeholder{color:var(--faint)}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--text);outline-offset:2px}input:not([type=range]):focus-visible{outline:none}.page{box-sizing:border-box;background:radial-gradient(700px 420px at 8% -5%, color-mix(in srgb, var(--c0) 10%, transparent), transparent 60%), radial-gradient(700px 420px at 95% 15%, color-mix(in srgb, var(--c1) 10%, transparent), transparent 60%), var(--bg);min-height:100dvh;position:relative}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.wide-only{display:none}.avatar{width:var(--size);height:var(--size);flex:0 0 var(--size);color:var(--bg);font-family:var(--display);font-weight:700;font-size:calc(var(--size) * .385);border-radius:50%;justify-content:center;align-items:center;line-height:1;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.round-button{box-sizing:border-box;border:1px solid var(--line);background:var(--card);width:44px;height:44px;color:var(--text);cursor:pointer;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;padding:0;display:inline-flex}.round-button:disabled{opacity:.35;cursor:default}.primary-button{background:var(--text);width:100%;height:52px;color:var(--bg);cursor:pointer;border:0;border-radius:12px;font-size:16px;font-weight:700}.primary-button:disabled{opacity:.6;cursor:default}.quiet-button{border:1px solid var(--panel-line);height:40px;color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:0 14px;font-size:14px;font-weight:600}.quiet-button:hover{color:var(--text)}.passcode-input{box-sizing:border-box;-webkit-backdrop-filter:blur(24px);width:100%;height:56px;color:var(--text);letter-spacing:.3em;text-align:center;background:#ffffff0d;border:1.5px solid #ffffff24;border-radius:12px;outline:none;padding:0 18px;font-size:22px}.passcode-input:focus-visible{border-color:#ffffff80}.passcode-input[aria-invalid=true]{border-color:var(--error);background:#ff4d4d1f}.shake{animation:.4s cubic-bezier(.36,.07,.19,.97) both shake}.shake.again{animation-name:shake-again}.start-failed{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@keyframes shake-again{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-6px)}40%,60%{transform:translate(6px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@media (width>=900px){.page{background:radial-gradient(900px 520px at 8% -5%, color-mix(in srgb, var(--c0) 10%, transparent), transparent 60%), radial-gradient(900px 520px at 95% 15%, color-mix(in srgb, var(--c1) 10%, transparent), transparent 60%), var(--bg)}.wide-only{display:inline}.narrow-only{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after,::backdrop{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.nav-bar{z-index:6;padding:10px 24px max(26px, env(safe-area-inset-bottom));border-top:1px solid var(--card-line);-webkit-backdrop-filter:blur(24px);background:#09090db8;justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-todos{width:48px;height:48px;color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.nav-todos[aria-current=page],.nav-todos[aria-current=page]:hover{color:var(--accent)}.nav-avatar{border-radius:50%;display:inline-flex}.nav-floating{z-index:6;border:2px solid #ffffff2e;border-radius:50%;display:inline-flex;position:fixed;bottom:28px;left:28px;box-shadow:0 8px 24px #00000073}.sheet{width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.sheet[open]{flex-direction:column;justify-content:flex-end;display:flex}.sheet::backdrop{background:#00000080}.sheet-panel{box-sizing:border-box;background:var(--bg);border:1px solid var(--panel-line);max-height:100%;padding:12px 24px max(36px, env(safe-area-inset-bottom));border-bottom:0;border-radius:20px 20px 0 0;flex-direction:column;animation:.22s cubic-bezier(.2,.8,.2,1) both sheet-up;display:flex}.sheet-grabber{background:#fff3;border-radius:3px;flex:0 0 5px;align-self:center;width:40px;height:5px}.ask{gap:26px}.ask form{flex-direction:column;gap:26px;display:flex}.ask-head{align-items:center;gap:12px;display:flex}.ask-head h2{font-family:var(--display);letter-spacing:-.02em;font-size:22px;font-weight:700}.ask-close{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:0 0 44px;justify-content:center;align-items:center;margin-left:auto;padding:0;display:inline-flex}.ask .primary-button{height:56px}.ask-problem{text-align:center;color:#ff8a8a;min-height:20px;margin:-14px 0;font-size:14px;line-height:20px}.ask-problem:empty{display:none}.toast-region{z-index:20;pointer-events:none;justify-content:center;padding:0 20px;display:flex;position:fixed;bottom:110px;left:0;right:0}.toast{border:1px solid var(--panel-line);background:#1b1b22;border-radius:12px;max-width:420px;padding:12px 16px;font-size:14px;line-height:1.4;animation:.18s ease-out both fade-up;box-shadow:0 16px 40px #00000080}@media (width>=900px){.sheet[open]{box-sizing:border-box;justify-content:center;align-items:center;padding:40px 24px}.sheet::backdrop{background:#09090db3}.sheet-panel{border:1px solid var(--panel-line);border-radius:20px;width:100%;max-width:520px;padding:28px 32px 32px;animation:.18s ease-out both fade-up;box-shadow:0 30px 80px #0009}.sheet-grabber{display:none}.ask-head h2{font-size:24px}.ask .primary-button{height:52px}.toast-region{bottom:40px}}.settings{padding:60px 20px 110px}.settings-main{flex-direction:column;gap:20px;max-width:560px;margin:0 auto;display:flex}.settings-head{align-items:center;gap:12px;display:flex}.settings-head h1{font-family:var(--display);letter-spacing:-.02em;font-size:22px;font-weight:700}.settings-out{margin-left:auto}.settings-people{background:var(--card);border:1px solid var(--card-line);-webkit-backdrop-filter:blur(24px);border-radius:16px;flex-direction:column;gap:24px;padding:20px;display:flex}.settings-person{flex-direction:column;align-items:center;gap:16px;display:flex}.settings-person+.settings-person{border-top:1px solid var(--card-line);padding-top:24px}.settings-avatar{display:inline-flex;position:relative}.settings-avatar button{border:2px solid var(--bg);background:var(--text);width:32px;height:32px;color:var(--bg);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;bottom:-4px;right:-4px}.settings-avatar button:after{content:"";position:absolute;inset:-8px}.settings-fields{flex-direction:column;align-items:stretch;gap:12px;width:100%;max-width:260px;display:flex}.settings-name{box-sizing:border-box;border:1px solid var(--line);height:44px;color:var(--text);text-align:center;background:#0000004d;border-radius:10px;outline:none;padding:0 14px;font-size:16px}.settings-name:focus-visible{border-color:#ffffff80}.settings-passcode{height:36px;color:var(--text);border-radius:8px;align-self:center;padding:0 12px;font-size:13px}input.hue{appearance:none;background:var(--track);cursor:pointer;border-radius:7px;outline:none;align-self:center;width:100%;max-width:240px;height:14px;margin:8px 0}input.hue::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);border:3px solid var(--bg);border-radius:50%;width:28px;height:28px;box-shadow:0 0 0 1px #ffffff4d}input.hue::-moz-range-thumb{background:var(--text);border:3px solid var(--bg);border-radius:50%;width:22px;height:22px;box-shadow:0 0 0 1px #ffffff4d}input.hue::-moz-range-track{background:var(--track);border-radius:7px;height:14px}input.hue:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--text)}input.hue:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--text)}@media (width>=900px){.settings{padding:48px 48px 120px}.settings-main{gap:24px;max-width:760px}.settings-head{gap:14px}.settings-head h1{letter-spacing:-.03em;font-size:32px;line-height:1}.settings-people{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:28px;display:grid}.settings-person+.settings-person{border-top:0;padding-top:0}.settings-avatar button{border-width:3px;width:40px;height:40px;bottom:0;right:0}.settings-avatar button:after{inset:-2px}.settings-fields{gap:16px;max-width:240px}}.signin{flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.signin-people{gap:44px;animation:.18s ease-out both fade-up;display:flex}.signin-person{cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:8px;font-size:14px;font-weight:500;display:flex}.signin-back{-webkit-backdrop-filter:blur(24px);animation:.18s ease-out both fade-up;position:absolute;top:56px;left:20px}.signin-form{flex-direction:column;align-items:center;gap:20px;width:100%;max-width:280px;animation:.18s ease-out both fade-up;display:flex}.signin-field{width:100%}.signin-problem{text-align:center;color:#ff8a8a;margin:-8px 0;font-size:14px;line-height:1.4}.signin-signing{flex-direction:column;align-items:center;gap:12px;font-size:14px;font-weight:500;animation:.18s ease-out both fade-up;display:flex}.signin-ring{justify-content:center;align-items:center;width:88px;height:88px;display:inline-flex;position:relative}.signin-ring svg{width:100%;height:100%;animation:.9s linear infinite spin;position:absolute;inset:0}@media (width>=900px){.signin{padding:48px 24px}.signin-people{gap:64px}.signin-person{gap:14px;font-size:15px}.signin-back{top:28px;left:28px}.signin-form{max-width:300px}.signin-signing{font-size:15px}.signin-ring{width:96px;height:96px}}@media (prefers-reduced-motion:reduce){.signin-ring svg{animation-duration:4s!important;animation-iteration-count:infinite!important}}.checkin-value{font-family:var(--display);letter-spacing:-.05em;color:var(--accent);text-align:center;font-variant-numeric:tabular-nums;font-size:120px;font-weight:700;line-height:.9;display:block}.checkin-slider{flex-direction:column;gap:8px;display:flex}.checkin-slider input{width:100%;height:44px;accent-color:var(--accent);cursor:pointer;margin:0}.checkin-ends{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}@media (width>=900px){.checkin-value{font-size:128px}}.today{padding:44px 20px 110px}.today-main{flex-direction:column;gap:20px;max-width:560px;margin:0 auto;display:flex}.day-nav{justify-content:space-between;align-items:center;min-height:96px;margin-bottom:-8px;display:flex}.day-title{flex-direction:column;align-items:center;gap:2px;display:flex}.day-title h1{font-family:var(--display);letter-spacing:-.02em;font-size:22px;font-weight:700}.day-today{color:var(--muted);font-size:12px}.day-back,.day-back:hover{color:var(--accent);font-size:12px;font-weight:600}.numbers{flex-direction:column;gap:12px;display:flex}.number-card{background:var(--card);border:1px solid var(--card-line);-webkit-backdrop-filter:blur(24px);border-radius:14px;justify-content:space-between;align-items:center;padding:16px;display:flex;position:relative;overflow:hidden}a.number-card{transition:background-color .15s ease-out,border-color .15s ease-out}a.number-card:hover{background:#ffffff14;border-color:#fff3}a.number-card:active{background:#ffffff1c}.number-area{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.number-name{font-family:var(--display);letter-spacing:-.02em;font-size:20px;font-weight:700;position:relative}.number-value{font-family:var(--display);letter-spacing:-.04em;color:var(--text);font-size:44px;font-weight:700;line-height:1;position:relative}.number-value.none{color:var(--faint)}.day-failed{color:var(--muted);flex-direction:column;align-items:center;gap:12px;padding:24px 0;font-size:14px;display:flex}.people{flex-direction:column;gap:20px;display:flex}.person{flex-direction:column;gap:14px;padding-top:8px;display:flex}.section{flex-direction:column;gap:2px;display:flex}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-bottom:4px;font-size:12px;font-weight:600}.items{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.item{border-bottom:1px solid #ffffff0f;align-items:center;gap:4px;height:48px;display:flex;position:relative}.item:focus-within{border-bottom-color:#ffffff59}.item.dragging{opacity:.3}.item-lifted{border:1px solid var(--panel-line);cursor:grabbing;background:#15151b;border-radius:10px;padding-right:12px;box-shadow:0 12px 30px #00000080}.item-lifted .item-text{white-space:nowrap;text-overflow:ellipsis;line-height:44px;overflow:hidden}.item-grip{width:20px;height:44px;color:var(--grip);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:6px;flex:0 0 20px;justify-content:center;align-items:center;padding:0;display:inline-flex}.item-marker{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:22px;line-height:1;display:inline-flex}button.item-marker:hover,.item-marker[aria-expanded=true]{background:#ffffff0f}.item-text{min-width:0;height:44px;color:var(--text);background:0 0;border:0;outline:none;flex:1;padding:0 2px;font-size:16px}.item-text.done{color:var(--faint);text-decoration:line-through}.item-remove{width:36px;height:44px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:0 0 36px;justify-content:center;align-items:center;padding:0;display:inline-flex}.item-remove:hover{color:var(--text)}.add{border-bottom:1px solid #0000;align-items:center;gap:4px;height:48px;display:flex;position:relative}.add:focus-within{border-bottom-color:#ffffff59}.add-plus{flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:44px;display:inline-flex}.item-marker.blank:before{content:"";border:1.5px dashed #ffffff38;border-radius:50%;width:20px;height:20px}.add:focus-within .item-marker.blank:before,.item-marker.blank:hover:before{border-color:#ffffff73}.picker-sheet{padding:12px 16px max(28px, env(safe-area-inset-bottom));gap:14px;max-height:min(560px,100%)}.picker-top{align-items:center;gap:12px;display:flex}.picker-search{box-sizing:border-box;border:1px solid var(--line);min-width:0;height:44px;color:var(--text);background:#0000004d;border-radius:10px;outline:none;flex:1;padding:0 14px;font-size:16px}.picker-search:focus-visible{border-color:#ffffff80}.picker-done{height:40px;color:var(--faint);cursor:pointer;background:#ffffff0f;border:0;border-radius:10px;flex:none;padding:0 16px;font-size:14px;font-weight:700}.picker-done.on{background:var(--done);color:var(--bg)}.picker-groups{overscroll-behavior:contain;scrollbar-width:thin;outline:none;flex-direction:column;gap:12px;min-height:0;display:flex;overflow-y:auto}.picker-group{flex-direction:column;gap:4px;display:flex}.picker-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.picker-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;display:grid}.picker-grid button{cursor:pointer;background:0 0;border:0;border-radius:8px;height:44px;padding:0;font-size:24px;line-height:1}.picker-grid button:hover{background:#ffffff14}.picker-none{color:var(--muted);padding:12px 0;font-size:14px}@media (width>=900px){.today{padding:0 48px 120px}.today-main{gap:28px;max-width:1040px}.day-nav{justify-content:center;gap:20px;min-height:128px;margin-bottom:-12px}.day-title{gap:4px;min-width:300px}.day-title h1{letter-spacing:-.03em;font-size:30px;line-height:1}.day-today,.day-back,.day-back:hover{font-size:13px}.numbers{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.number-card{border-radius:16px;padding:20px 24px}.number-name{font-size:24px}.number-value{font-size:48px}.people{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}.person{background:var(--card);border:1px solid var(--card-line);-webkit-backdrop-filter:blur(24px);border-radius:16px;gap:20px;padding:22px 24px;position:relative}.person:has(.picker-popover){z-index:1}.picker-popover{z-index:10;box-sizing:border-box;background:var(--bg);border:1px solid var(--panel-line);border-radius:14px;flex-direction:column;gap:12px;width:400px;padding:12px;animation:.15s ease-out both fade-up;display:flex;position:absolute;top:50px;left:0;box-shadow:0 24px 60px #0000008c}.picker-search{border-radius:8px;height:40px;padding:0 12px;font-size:14px}.picker-groups{gap:10px;max-height:320px}.picker-group{gap:2px}.picker-grid button{font-size:22px}}
