:root{color-scheme:light dark;font-family:Inter,ui-rounded,SF Pro Rounded,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--color-text: #20201f;--color-text-muted: #6f6a63;--color-background: #f6f1e8;--color-background-deep: #ebe2d5;--color-surface: #fffdf8;--color-surface-raised: #ffffff;--color-accent: #e96d52;--color-accent-soft: #f7c7b8;--color-accent-ink: #7a2f24;--color-border: #ded2c3;--color-shadow: #4e38261f;--color-overlay: #211a164d;--color-on-accent: #fffdf8;--duration-exit: .42s;--duration-enter: .42s;background:var(--color-background);color:var(--color-text)}@media(prefers-color-scheme:dark){:root{--color-text: #f4eee5;--color-text-muted: #b8ada1;--color-background: #191816;--color-background-deep: #25211d;--color-surface: #27231f;--color-surface-raised: #302a25;--color-accent: #ff9b80;--color-accent-soft: #5f352c;--color-accent-ink: #ffd9ce;--color-border: #4d433b;--color-shadow: #00000052;--color-overlay: #080706a8;--color-on-accent: #20110d}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{min-width:320px;min-height:100vh;min-height:100dvh;overflow:hidden;background:var(--color-background)}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.app-shell{position:relative;isolation:isolate;display:grid;min-height:100vh;min-height:100dvh;overflow:hidden;padding:max(64px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:radial-gradient(circle at 12% 14%,var(--color-surface) 0 1px,transparent 2px),linear-gradient(155deg,var(--color-background),var(--color-background-deep));background-size:24px 24px,auto}.ambient{position:absolute;z-index:-1;width:210px;height:210px;border-radius:50%;background:var(--color-accent-soft);filter:blur(2px);opacity:.34;pointer-events:none}.ambient--one{top:-126px;left:-88px}.ambient--two{right:-142px;bottom:-104px;width:260px;height:260px;opacity:.2}.add-button,.close-button,.submit-button{display:grid;place-items:center;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);box-shadow:0 8px 24px var(--color-shadow);cursor:pointer;transition:transform .14s ease,background-color .14s ease}.add-button{position:absolute;top:max(64px,env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));z-index:2;font-size:30px;font-weight:400;line-height:34px}.add-button:active,.close-button:active,.submit-button:active{transform:scale(.91);background:var(--color-accent-soft)}.focus-stage{display:grid;place-items:center;width:100%;min-height:0}.task-card,.empty-card{position:relative;display:grid;place-items:center;width:min(100%,344px);min-height:clamp(300px,52vh,430px);overflow:hidden;padding:38px 30px;border:1px solid var(--color-border);border-radius:34px;background:var(--color-surface);box-shadow:0 28px 70px var(--color-shadow),0 3px 0 var(--color-surface-raised) inset;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;transform-origin:center}.task-card:active,.empty-card:active{transform:scale(.975);background:var(--color-surface-raised)}.task-card__text{position:relative;z-index:2;max-width:100%;overflow-wrap:anywhere;font-size:clamp(40px,13vw,62px);font-weight:740;line-height:1.1;letter-spacing:-.045em;text-align:center}.task-card__sweep{position:absolute;z-index:3;top:0;bottom:0;left:-45%;width:38%;background:var(--color-accent);opacity:0;transform:skew(-10deg)}.task-card__check{position:absolute;z-index:4;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;background:var(--color-accent);color:var(--color-on-accent);font-size:54px;font-weight:700;line-height:60px;opacity:0;visibility:hidden;transform:scale(.6) rotate(-8deg)}.task-card--done{animation:card-complete var(--duration-exit) cubic-bezier(.7,0,.25,1) both}.task-card--done .task-card__text{animation:text-complete var(--duration-exit) ease both}.task-card--done .task-card__sweep{animation:sweep-complete var(--duration-exit) ease both}.task-card--done .task-card__check{animation:check-complete var(--duration-exit) cubic-bezier(.2,.8,.2,1) both;visibility:visible}.task-card--later{animation:card-later var(--duration-exit) cubic-bezier(.55,0,.35,1) both}.task-card--enter{animation:card-enter var(--duration-enter) cubic-bezier(.2,.8,.2,1) both}.empty-card{background:radial-gradient(circle,var(--color-accent-soft) 0 2px,transparent 3px) center / 22px 22px,var(--color-surface)}.empty-card__halo{position:absolute;width:138px;height:138px;border-radius:50%;background:var(--color-accent-soft);transform:scale(.72);transition:transform .18s ease}.empty-card__plus{position:relative;z-index:1;color:var(--color-accent-ink);font-size:76px;font-weight:300;line-height:82px}.empty-card:active .empty-card__halo{transform:scale(.82)}.capture-backdrop{position:fixed;z-index:10;inset:0;display:grid;align-items:end;background:var(--color-overlay);animation:backdrop-in .18s ease both}.capture-sheet{position:relative;width:100%;max-height:min(78vh,650px);max-height:min(78dvh,650px);overflow-y:auto;padding:34px max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));border:1px solid var(--color-border);border-bottom:0;border-radius:32px 32px 0 0;background:var(--color-surface);box-shadow:0 -18px 60px var(--color-shadow);overscroll-behavior:contain;animation:sheet-in .22s cubic-bezier(.2,.8,.2,1) both;scrollbar-width:none}.capture-sheet::-webkit-scrollbar{display:none}.capture-sheet__handle{position:absolute;top:12px;left:50%;width:44px;height:4px;border-radius:999px;background:var(--color-border);transform:translate(-50%)}.close-button{margin:0 0 14px auto;color:var(--color-text-muted);font-size:30px;font-weight:300;line-height:34px;box-shadow:none}.chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.thing-chip{min-width:0;min-height:52px;padding:12px 14px;overflow:hidden;border:1px solid var(--color-border);border-radius:16px;background:var(--color-background);color:var(--color-text);font-size:16px;font-weight:650;line-height:22px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:transform .12s ease,background-color .12s ease,color .12s ease}.thing-chip:active{color:var(--color-on-accent);background:var(--color-accent);transform:scale(.96)}.capture-form{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:10px;margin-top:14px}.capture-form input{width:100%;min-width:0;min-height:52px;padding:13px 16px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-background);color:var(--color-text);font-size:16px;line-height:22px;caret-color:var(--color-accent)}.capture-form input::placeholder{color:var(--color-text-muted)}.submit-button{align-self:center;border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);font-size:25px;font-weight:700;line-height:30px;box-shadow:none}.submit-button:disabled{border-color:var(--color-border);background:var(--color-background-deep);color:var(--color-text-muted);cursor:default}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes card-complete{0%,64%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(-34%) rotate(-2deg)}}@keyframes text-complete{0%,20%{opacity:1}55%,to{opacity:0}}@keyframes sweep-complete{0%{left:-45%;opacity:0}12%,70%{opacity:1}to{left:112%;opacity:0}}@keyframes check-complete{0%,20%{opacity:0;transform:scale(.6) rotate(-8deg)}48%,80%{opacity:1;transform:scale(1) rotate(0)}to{opacity:0;transform:scale(.92) rotate(0)}}@keyframes card-later{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(30%) rotate(2deg)}}@keyframes card-enter{0%{opacity:0;transform:translate(24%) scale(.97)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes reduced-fade-out{0%{opacity:1}to{opacity:0}}@keyframes reduced-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){:root{--duration-exit: 90ms;--duration-enter: 90ms}.task-card--done,.task-card--later{animation-name:reduced-fade-out}.task-card--enter{animation-name:reduced-fade-in}.task-card--done .task-card__text,.task-card--done .task-card__sweep,.task-card--done .task-card__check{animation:none}.add-button,.close-button,.submit-button,.thing-chip,.empty-card__halo{transition-duration:1ms}.task-card:active,.empty-card:active,.add-button:active,.close-button:active,.submit-button:active,.thing-chip:active{transform:none}.capture-sheet{animation-name:reduced-fade-in;animation-duration:90ms}}@media(max-height:620px)and (min-width:560px)and (max-aspect-ratio:2.2/1){.app-shell{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}.add-button{top:max(24px,env(safe-area-inset-top))}.task-card,.empty-card{width:min(56vw,420px);min-height:min(76vh,310px)}.task-card__text{font-size:clamp(34px,8vw,54px)}}
