:root{--bg: #F2F4F8;--surface: #FFFFFF;--surface-2: #F6F7FA;--ink: #141821;--muted: #687083;--faint: #9AA1B1;--line: #E5E8EF;--accent: #2F5BD3;--accent-ink: #FFFFFF;--accent-soft: #E8EEFC;--hero: #2F5BD3;--hero-ink: #FFFFFF;--hero-muted: rgba(255,255,255,.78);--hero-btn: rgba(255,255,255,.16);--late: #C42F2F;--late-bg: #FDECEC;--ok: #1E8048;--ok-bg: #E4F4EA;--shadow: 0 1px 2px rgba(20,24,33,.04), 0 6px 20px rgba(20,24,33,.06);--f: "Manrope", "Avenir Next", "Segoe UI", system-ui, -apple-system, sans-serif;--gut-l: max(16px, env(safe-area-inset-left, 0px));--gut-r: max(16px, env(safe-area-inset-right, 0px));color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0D1015;--surface: #171B23;--surface-2: #1D222C;--ink: #E8EBF2;--muted: #9BA3B3;--faint: #6B7383;--line: #262C37;--accent: #86A2FF;--accent-ink: #0D1015;--accent-soft: #1D2949;--hero: #1B2A5C;--hero-muted: rgba(255,255,255,.72);--hero-btn: rgba(255,255,255,.12);--late: #FF8F8F;--late-bg: #3A1C1F;--ok: #72D49C;--ok-bg: #16301F;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px rgba(0,0,0,.25);color-scheme:dark}}:root[data-theme=dark]{--bg: #0D1015;--surface: #171B23;--surface-2: #1D222C;--ink: #E8EBF2;--muted: #9BA3B3;--faint: #6B7383;--line: #262C37;--accent: #86A2FF;--accent-ink: #0D1015;--accent-soft: #1D2949;--hero: #1B2A5C;--hero-muted: rgba(255,255,255,.72);--hero-btn: rgba(255,255,255,.12);--late: #FF8F8F;--late-bg: #3A1C1F;--ok: #72D49C;--ok-bg: #16301F;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 6px 20px rgba(0,0,0,.25);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top,0px)}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}[hidden]{display:none!important}.wrap{max-width:640px;margin:0 auto;padding-left:var(--gut-l);padding-right:var(--gut-r)}.card{background:var(--surface);border-radius:20px;box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;font-size:15px;white-space:nowrap}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:disabled{opacity:.6;cursor:progress}.btn-quiet{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;font-weight:700;color:var(--muted)}.input{width:100%;font:inherit;font-size:16px;font-weight:600;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:11px 13px;min-height:48px}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input[type=date].input,input[type=time].input{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;min-width:0;max-width:100%;height:48px;line-height:24px;text-align:left}input[type=date].input::-webkit-date-and-time-value,input[type=time].input::-webkit-date-and-time-value{text-align:left;margin:0}select.input{height:48px}.link{color:var(--accent);font-weight:700;text-decoration:none;min-height:40px}.note{font-size:13px;color:var(--muted);margin:0}.alert{padding:12px 14px;border-radius:14px;font-size:14px;font-weight:600}.alert-error{background:var(--late-bg);color:var(--late)}.alert-ok{background:var(--ok-bg);color:var(--ok)}.auth{min-height:100%;display:flex;flex-direction:column}.auth-hero{background:var(--hero);color:var(--hero-ink);padding-block:40px 72px}.auth-hero h1{margin:0;font-size:30px;font-weight:800;letter-spacing:-.02em;text-wrap:balance}.auth-hero p{margin:6px 0 0;color:var(--hero-muted);font-weight:600}.auth-card{margin-top:-48px;padding:22px;display:flex;flex-direction:column;gap:16px}.auth-card h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.02em}.auth-switch{text-align:center;font-size:14px;color:var(--muted)}.hero{background:var(--hero);color:var(--hero-ink);padding-block:18px 64px}.hero-row{display:flex;align-items:center;gap:12px}.hero h1{margin:0;font-size:26px;font-weight:800;letter-spacing:-.02em;flex:1}.hero .date{margin:0 0 2px;font-size:13px;font-weight:600;color:var(--hero-muted)}.hero-btn{height:40px;padding:0 14px;border-radius:999px;background:var(--hero-btn);color:var(--hero-ink);font-weight:700;font-size:14px}.lift{margin-top:-48px;display:flex;flex-direction:column;gap:14px;padding-bottom:28px}.pad{padding:18px}.pad h2{margin:0 0 6px;font-size:16px;font-weight:800}.status{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:700;background:var(--ok-bg);color:var(--ok)}.center{min-height:100%;display:grid;place-items:center;color:var(--muted);font-weight:600}:root{--faint-2: #9AA1B1;--soon: #965F00;--soon-bg: #FFF3D9;--scrim: rgba(12,15,22,.45);--lift-shadow: 0 16px 36px rgba(20,24,33,.18);--c-life:#8A3FA0;--c-life-bg:#F4E8F8;--c-home:#2D7A3E;--c-home-bg:#E3F3E6;--c-family:#B5590E;--c-family-bg:#FCEBDC;--c-money:#1E62A8;--c-money-bg:#E1EDF9;--c-health:#B3334F;--c-health-bg:#FBE5EA;--c-personal:#5A48C4;--c-personal-bg:#ECE9FB;--c-car:#4A5866;--c-car-bg:#E6EAEE;--c-business:#2B4C7E;--c-business-bg:#E4EAF4;--c-travel:#0F7471;--c-travel-bg:#DDF2F1;--c-restaurants:#B8462A;--c-restaurants-bg:#FBE7E1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--soon:#F4C66B;--soon-bg:#33291A;--scrim: rgba(0,0,0,.6);--lift-shadow: 0 16px 36px rgba(0,0,0,.55);--c-life:#DAA9E8;--c-life-bg:#33203A;--c-home:#9CD4A5;--c-home-bg:#1C2F20;--c-family:#F2B37C;--c-family-bg:#3A2615;--c-money:#9DC5EF;--c-money-bg:#172A3D;--c-health:#F1A1B5;--c-health-bg:#3A1A23;--c-personal:#BAAFF6;--c-personal-bg:#262142;--c-car:#B6C2CC;--c-car-bg:#232A30;--c-business:#A9C0E6;--c-business-bg:#1A2436;--c-travel:#8FD8D3;--c-travel-bg:#13302F;--c-restaurants:#F3A891;--c-restaurants-bg:#3A1F17}}:root[data-theme=dark]{--soon:#F4C66B;--soon-bg:#33291A;--scrim: rgba(0,0,0,.6);--lift-shadow: 0 16px 36px rgba(0,0,0,.55);--c-life:#DAA9E8;--c-life-bg:#33203A;--c-home:#9CD4A5;--c-home-bg:#1C2F20;--c-family:#F2B37C;--c-family-bg:#3A2615;--c-money:#9DC5EF;--c-money-bg:#172A3D;--c-health:#F1A1B5;--c-health-bg:#3A1A23;--c-personal:#BAAFF6;--c-personal-bg:#262142;--c-car:#B6C2CC;--c-car-bg:#232A30;--c-business:#A9C0E6;--c-business-bg:#1A2436;--c-travel:#8FD8D3;--c-travel-bg:#13302F;--c-restaurants:#F3A891;--c-restaurants-bg:#3A1F17}svg{display:block}body{overflow:hidden}.app{height:100%;display:flex;flex-direction:column}.screen{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.hero-btn{display:inline-flex;align-items:center;gap:6px}.hero-btn svg{width:16px;height:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px 6px}.card-head h2{margin:0;font-size:16px;font-weight:800;letter-spacing:-.01em}.see{font-size:13px;font-weight:700;color:var(--accent);min-height:32px;display:inline-flex;align-items:center;gap:2px}.see svg{width:14px;height:14px}.sum-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sum-label{margin:0;font-size:13px;font-weight:600;color:var(--muted)}.sum-big{margin:2px 0 0;font-size:34px;font-weight:800;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}.sum-big small{font-size:16px;font-weight:700;color:var(--muted);letter-spacing:0;margin-left:4px}.status svg{width:14px;height:14px}.status.late{background:var(--late-bg);color:var(--late)}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.day .dw{font-size:11px;font-weight:700;color:var(--faint);text-transform:uppercase;letter-spacing:.04em}.day .dn{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}.day.past .dn{color:var(--faint)}.day.today .dn{background:var(--accent);color:var(--accent-ink)}.dots{display:flex;gap:3px;height:8px;align-items:center}.dots i{width:7px;height:7px;border-radius:50%;display:block}.dots b{font-size:10px;font-weight:800;color:var(--muted);line-height:1}.rows{list-style:none;margin:0;padding:4px 0 8px}.rows li+li>.row{box-shadow:inset 0 1px 0 var(--line)}.row{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 18px;min-height:60px;width:100%;text-align:left}.row-btn{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-align:left;min-height:44px}.ico{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center}.ico svg{width:19px;height:19px}.row-main{flex:1;min-width:0;display:block}.row-title{display:block;font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{display:block;margin-top:1px;font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub .late{color:var(--late);font-weight:700}.row-end{display:flex;align-items:center;gap:8px;flex:0 0 auto;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}.chev{width:16px;height:16px;color:var(--faint)}.tick{width:30px;height:30px;flex:0 0 30px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;color:transparent;transition:border-color .15s,color .15s}.tick svg{width:15px;height:15px}.tick:hover,.tick:focus-visible{border-color:var(--ok);color:var(--ok)}.prog{display:block;height:5px;border-radius:3px;background:var(--surface-2);margin-top:7px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}.prog span{display:block;height:100%;background:var(--accent);border-radius:3px}.due{font-size:13px;font-weight:700;white-space:nowrap}.due.late{color:var(--late)}.due.soon{color:var(--soon)}.due.plain{color:var(--muted)}.cat-life{color:var(--c-life);background:var(--c-life-bg)}.cat-home{color:var(--c-home);background:var(--c-home-bg)}.cat-family{color:var(--c-family);background:var(--c-family-bg)}.cat-money{color:var(--c-money);background:var(--c-money-bg)}.cat-health{color:var(--c-health);background:var(--c-health-bg)}.cat-personal{color:var(--c-personal);background:var(--c-personal-bg)}.cat-car{color:var(--c-car);background:var(--c-car-bg)}.cat-business{color:var(--c-business);background:var(--c-business-bg)}.cat-travel{color:var(--c-travel);background:var(--c-travel-bg)}.cat-restaurants{color:var(--c-restaurants);background:var(--c-restaurants-bg)}.dot-life{background:var(--c-life)}.dot-home{background:var(--c-home)}.dot-family{background:var(--c-family)}.dot-money{background:var(--c-money)}.dot-health{background:var(--c-health)}.dot-personal{background:var(--c-personal)}.dot-car{background:var(--c-car)}.dot-business{background:var(--c-business)}.dot-travel{background:var(--c-travel)}.dot-restaurants{background:var(--c-restaurants)}.chips{display:flex;gap:8px;overflow-x:auto;padding:14px 18px 4px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;height:34px;padding:0 13px;border-radius:999px;background:var(--surface-2);font-size:13px;font-weight:700;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.chip[aria-pressed=true]{background:var(--ink);color:var(--surface);box-shadow:none}.empty{padding:22px 18px 24px;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:12px}.empty p{margin:0}.welcome{padding:20px;display:flex;flex-direction:column;gap:12px}.welcome h2{margin:0;font-size:18px;font-weight:800}.welcome p{margin:0;color:var(--muted)}.bar{padding-block:14px 12px;background:var(--surface);box-shadow:0 1px 0 var(--line)}.bar-in{display:flex;align-items:center;gap:10px}.bar h1{margin:0;font-size:20px;font-weight:800;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar .grow{flex:1;min-width:0}.kicker{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;margin-bottom:2px}.icon-btn{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.icon-btn svg{width:19px;height:19px}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.count{font-size:12px;font-weight:800;color:var(--muted);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;padding:2px 9px;font-variant-numeric:tabular-nums}.section-label{margin:18px 4px 8px;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.section-label.late{color:var(--late)}.hint{margin:0;padding-block:10px 8px;font-size:12.5px;color:var(--muted);font-weight:600}.board{flex:1;min-height:0;display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding-block:2px 14px;padding-left:var(--gut-l);padding-right:var(--gut-r);scroll-padding-left:var(--gut-l)}.board.dragging{scroll-snap-type:none}.board-end{flex:0 0 1px}.col{flex:0 0 min(84vw,310px);display:flex;flex-direction:column;background:var(--surface);border-radius:20px;box-shadow:var(--shadow);max-height:100%;scroll-snap-align:start;outline:2px solid transparent;outline-offset:-2px;transition:outline-color .12s}.col.over{outline-color:var(--accent)}.col-head{display:flex;align-items:center;gap:8px;padding:14px 16px 6px}.col-head h2{margin:0;font-size:15px;font-weight:800;flex:1;min-width:0;overflow-wrap:anywhere}.col-head .link{min-height:30px;font-size:12.5px}.col-body{flex:1;min-height:70px;overflow-y:auto;padding:6px 10px;display:flex;flex-direction:column;gap:8px}.col-empty{display:grid;place-items:center;height:64px;border:1.5px dashed var(--line);border-radius:14px;color:var(--faint);font-size:13px;font-weight:600}.add-card{margin:2px 10px 12px;min-height:44px;border-radius:12px;color:var(--accent);font-weight:700;text-align:left;padding:0 10px;display:flex;align-items:center;gap:6px}.add-card svg{width:16px;height:16px}.add-card:hover{background:var(--accent-soft)}.tcard{width:100%;background:var(--surface-2);border-radius:14px;display:flex;align-items:stretch;box-shadow:inset 0 0 0 1px var(--line);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;flex:0 0 auto}.tcard-main{flex:1;min-width:0;text-align:left;padding:12px 4px 12px 13px;display:flex;flex-direction:column;gap:6px;border-radius:14px}.grip{flex:0 0 44px;display:grid;place-items:center;color:var(--faint);touch-action:none;cursor:grab;border-radius:0 14px 14px 0}.grip svg{width:18px;height:18px}.grip:hover{color:var(--muted);background:var(--line)}.tcard-title{font-weight:700;font-size:14.5px;line-height:1.3;overflow-wrap:anywhere}.tcard.done .tcard-title{color:var(--faint);text-decoration:line-through}.tcard-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);font-weight:600}.tcard-meta span{display:inline-flex;align-items:center;gap:4px}.tcard-meta svg{width:13px;height:13px}.tcard-meta .late{color:var(--late)}.tcard-meta .soon{color:var(--soon)}.tcard-meta .ok{color:var(--ok)}.placeholder{border-radius:14px;border:1.5px dashed var(--accent);background:var(--accent-soft);flex:0 0 auto}.ghost{position:fixed;left:0;top:0;z-index:60;pointer-events:none;background:var(--surface);box-shadow:var(--lift-shadow);margin:0}body.is-dragging,body.is-dragging *{cursor:grabbing!important}.tabbar{flex:0 0 auto;background:var(--surface);box-shadow:0 -1px 0 var(--line);padding-top:6px;padding-bottom:max(6px,env(safe-area-inset-bottom,0px));padding-left:var(--gut-l);padding-right:var(--gut-r)}.tabs{max-width:480px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr)}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:50px;justify-content:center;color:var(--faint);font-size:11.5px;font-weight:700}.tab svg{width:22px;height:22px}.tab[aria-current=page]{color:var(--accent)}.tab .plus{width:38px;height:38px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;margin-top:-2px}.tab .plus svg{width:20px;height:20px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--scrim);display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--surface);width:min(560px,100%);max-height:90%;overflow-y:auto;border-radius:24px 24px 0 0;padding-block:10px calc(20px + env(safe-area-inset-bottom,0px));padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:16px}.grab{width:40px;height:5px;border-radius:3px;background:var(--line);margin:0 auto}@media(min-width:700px){.overlay{align-items:center}.sheet{border-radius:24px;padding-bottom:20px}.grab{display:none}}.sheet-head{display:flex;align-items:center;gap:10px}.sheet-head h2{margin:0;font-size:20px;font-weight:800;letter-spacing:-.02em;flex:1}.field>.lbl{font-size:12.5px;font-weight:700;color:var(--muted)}select.input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}textarea.input{min-height:96px;resize:vertical;font-weight:500;line-height:1.4;field-sizing:content;max-height:260px}.two{display:flex;gap:10px}.two>*{flex:1;min-width:0}.opts{display:flex;flex-wrap:wrap;gap:8px}.opt{height:36px;padding:0 13px;border-radius:999px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);font-size:13.5px;font-weight:700;color:var(--muted)}.opt[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);box-shadow:none}.tpl{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.tpl button{text-align:left;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);border-radius:14px;padding:11px 12px;display:flex;flex-direction:column;gap:2px;min-height:60px}.tpl button b{font-weight:800;font-size:14.5px}.tpl button span{font-size:12.5px;color:var(--muted);font-weight:600}.tpl button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.stage-row{display:flex;gap:8px;align-items:center}.stage-row .input{flex:1}.btn svg{width:17px;height:17px}.btn-danger{color:var(--late);box-shadow:inset 0 0 0 1.5px var(--late)}.btn-danger.armed{background:var(--late);color:var(--surface)}.actions{display:flex;gap:10px}.actions .btn{flex:1}hr{border:0;border-top:1px solid var(--line);margin:0}.calbox{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.calbtn{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 14px;border-radius:12px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);font-weight:700;text-decoration:none}.calbtn svg{width:18px;height:18px;color:var(--accent)}.calbtn .ext{margin-left:auto;font-size:12px;color:var(--faint);font-weight:600}.calbtn[aria-disabled=true]{opacity:.45;pointer-events:none}.toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:70;background:var(--ink);color:var(--surface);padding:12px 16px;border-radius:14px;font-size:14px;font-weight:700;max-width:calc(100% - 32px);text-align:center;pointer-events:none;animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}@media(prefers-reduced-motion:reduce){.toast{animation:none}.col,.tick{transition:none}}.add-menu{display:flex;flex-direction:column;gap:10px}.add-opt{display:flex;align-items:center;gap:14px;text-align:left;padding:14px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);min-height:72px}.add-opt b{display:block;font-size:16px;font-weight:800}.add-opt small{display:block;font-size:13px;color:var(--muted);font-weight:600;margin-top:2px}.add-opt.primary{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.add-ico{width:44px;height:44px;flex:0 0 44px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--accent)}.add-opt.primary .add-ico{background:var(--accent);color:var(--accent-ink)}.add-ico svg{width:22px;height:22px}.mic{width:88px;height:88px;border-radius:50%;margin:4px auto 0;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);box-shadow:0 8px 24px #2f5bd359}.mic svg{width:36px;height:36px}.mic.on{background:var(--late);box-shadow:0 0 #c42f2f73}@media(prefers-reduced-motion:no-preference){.mic.on{animation:mic-pulse 1.4s ease-out infinite}}@keyframes mic-pulse{0%{box-shadow:0 0 #c42f2f73}to{box-shadow:0 0 0 22px #c42f2f00}}.examples{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:13.5px;color:var(--muted);font-weight:600}.draft{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.draft .input{background:var(--surface)}.lang-pick .opts{justify-content:center}.extras-add{display:flex;gap:8px;flex-wrap:wrap}.extras-add .opt{display:inline-flex;align-items:center;gap:6px;height:40px}.extras-add .opt svg{width:15px;height:15px}.extras-add .opt:before{content:"+";font-weight:800;margin-right:-2px}.maps-link{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;min-height:40px;color:var(--accent);font-weight:700;text-decoration:none}.maps-link svg{width:16px;height:16px}.tcard-loc{min-width:0;max-width:100%}.tcard-meta .tcard-loc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-flex}.due-time{display:block;font-size:12px;font-weight:700;color:var(--muted);text-align:right}.loc-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.stage-row:has(.loc-wrap){align-items:flex-start}.loc-list{list-style:none;margin:0;padding:4px;border-radius:14px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line),var(--shadow)}.loc-list button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:8px 10px;min-height:52px;border-radius:10px}.loc-list button:hover,.loc-list button:focus-visible{background:var(--accent-soft)}.loc-ico{width:32px;height:32px;flex:0 0 32px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--accent)}.loc-ico svg{width:16px;height:16px}.loc-text{min-width:0;display:flex;flex-direction:column}.loc-text b{font-weight:700;font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc-text small{font-size:12.5px;color:var(--muted);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loc-status{padding:12px;font-size:13px;color:var(--muted);font-weight:600}.avatar{display:inline-grid;place-items:center;border-radius:50%;font-weight:800;flex:0 0 auto;letter-spacing:.02em;line-height:1}.avatars{display:inline-flex}.avatars .avatar{box-shadow:0 0 0 2px var(--surface)}.avatars .avatar+.avatar{margin-left:-8px}.members{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.member{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.member-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.member-main b{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-main small{font-size:12.5px;color:var(--muted);font-weight:600}.role-select{align-self:flex-start;font:inherit;font-size:13px;font-weight:700;color:var(--accent);background:transparent;border:0;padding:2px 0}.btn-sm{min-height:36px;padding:0 12px;font-size:13px;border-radius:10px}.invite-box{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:16px;background:var(--accent-soft)}.invite-box .lbl{font-size:12.5px;font-weight:700;color:var(--muted)}.invite-box .input{background:var(--surface);font-size:14px}.invite-box .opt{background:var(--surface)}.invite-box .opt[aria-pressed=true]{background:var(--accent)}.invite-box .btn-quiet{background:var(--surface);text-decoration:none;color:var(--ink)}.invite-box .link{align-self:flex-start}.pending{display:flex;flex-direction:column;gap:4px;margin-top:4px}.pending-row{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;font-weight:600}.tcard-who{margin-left:auto}.shared-tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--accent)}.shared-tag svg{width:13px;height:13px}.read-block{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.read-block h3{margin:0;font-size:18px;font-weight:800}.read-block p{margin:0;color:var(--muted);font-weight:600;font-size:14px}.invite-banner{display:flex;gap:12px;align-items:center;padding:14px;border-radius:16px;background:var(--accent-soft);color:var(--ink);font-weight:600}.invite-banner svg{width:22px;height:22px;color:var(--accent);flex:0 0 auto}.icon-btn.is-shared{color:var(--accent);background:var(--accent-soft);box-shadow:none}.tcard-meta{align-items:center}.opt-person{display:inline-flex;align-items:center;gap:6px;padding-left:6px}.seg{display:inline-flex;padding:3px;border-radius:999px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);margin-left:auto}.seg-btn{height:30px;padding:0 12px;border-radius:999px;font-size:12.5px;font-weight:800;color:var(--muted)}.seg-btn[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.card-head .seg+.see{margin-left:4px}.col,.col-body,.tcard,.tcard-main,.tcard-meta{min-width:0}.tcard{max-width:100%}.tcard-meta .tcard-loc{flex:1 1 100%;min-width:0;max-width:100%;display:inline-flex;overflow:visible}.tcard-loc .ell{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tcard-loc svg{flex:0 0 auto}.avatar-img{object-fit:cover;display:inline-block;background:var(--surface-2)}.avatar-all{color:var(--muted);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.assign-link{min-height:28px;font-size:13px;align-self:flex-start;padding:0;order:3}.assign-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.assign-row{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}.assign-row input{width:22px;height:22px;accent-color:var(--accent);flex:0 0 auto}.assign-title{flex:1;min-width:0;font-weight:700;overflow-wrap:anywhere}.assign-now{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);font-weight:600;flex:0 0 auto}.photo-row{display:flex;align-items:center;gap:16px}.photo-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.photo-actions .btn{cursor:pointer}.hero-btn.hero-photo{padding:0;width:40px;height:40px;border-radius:50%;overflow:hidden;background:transparent;box-shadow:0 0 0 2px #ffffffb3}:root{--p-red:#C0352B;--p-red-bg:#FCE6E3;--p-orange:#B85A0C;--p-orange-bg:#FDEBDA;--p-yellow:#8A6A00;--p-yellow-bg:#FFF4C9;--p-green:#2D7A3E;--p-green-bg:#E3F3E6;--p-teal:#0F7471;--p-teal-bg:#DDF3F1;--p-blue:#1E62A8;--p-blue-bg:#E1EDF9;--p-purple:#5A48C4;--p-purple-bg:#ECE9FB;--p-pink:#B42F7A;--p-pink-bg:#FBE4F1;--p-gray:#4A5866;--p-gray-bg:#E6EAEE}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--p-red:#F4A39A;--p-red-bg:#3B1B18;--p-orange:#F5B57A;--p-orange-bg:#3A2614;--p-yellow:#EED46A;--p-yellow-bg:#332A0E;--p-green:#9CD4A5;--p-green-bg:#1C2F20;--p-teal:#86D5CF;--p-teal-bg:#14302E;--p-blue:#9DC5EF;--p-blue-bg:#172A3D;--p-purple:#BAAFF6;--p-purple-bg:#262142;--p-pink:#F2A3CF;--p-pink-bg:#3A1A2D;--p-gray:#B6C2CC;--p-gray-bg:#232A30}}:root[data-theme=dark]{--p-red:#F4A39A;--p-red-bg:#3B1B18;--p-orange:#F5B57A;--p-orange-bg:#3A2614;--p-yellow:#EED46A;--p-yellow-bg:#332A0E;--p-green:#9CD4A5;--p-green-bg:#1C2F20;--p-teal:#86D5CF;--p-teal-bg:#14302E;--p-blue:#9DC5EF;--p-blue-bg:#172A3D;--p-purple:#BAAFF6;--p-purple-bg:#262142;--p-pink:#F2A3CF;--p-pink-bg:#3A1A2D;--p-gray:#B6C2CC;--p-gray-bg:#232A30}.pc-red{color:var(--p-red);background:var(--p-red-bg)}.pc-orange{color:var(--p-orange);background:var(--p-orange-bg)}.pc-yellow{color:var(--p-yellow);background:var(--p-yellow-bg)}.pc-green{color:var(--p-green);background:var(--p-green-bg)}.pc-teal{color:var(--p-teal);background:var(--p-teal-bg)}.pc-blue{color:var(--p-blue);background:var(--p-blue-bg)}.pc-purple{color:var(--p-purple);background:var(--p-purple-bg)}.pc-pink{color:var(--p-pink);background:var(--p-pink-bg)}.pc-gray{color:var(--p-gray);background:var(--p-gray-bg)}.ico-emoji{line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.bar .ico{flex:0 0 40px}.look-top{display:flex;align-items:center;gap:14px}.look-top>.ico{border-radius:16px}.swatches{display:flex;flex-wrap:wrap;gap:2px;flex:1;min-width:0}.swatch{width:44px;height:44px;display:grid;place-items:center;background:transparent!important}.swatch span{width:28px;height:28px;border-radius:50%;background:currentColor;box-shadow:0 0 0 2px var(--surface)}.swatch[aria-pressed=true] span{box-shadow:0 0 0 2px var(--surface),0 0 0 4px currentColor}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;margin-top:10px;max-height:196px;overflow-y:auto;padding:2px}.emoji-grid button{height:44px;border-radius:12px;font-size:22px;display:grid;place-items:center;color:var(--muted);font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.emoji-grid button svg{width:20px;height:20px}.emoji-grid button[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.emoji-own{margin-top:10px}.opt-tag{font-weight:600;color:var(--muted);font-size:12px;margin-left:4px}.cd-tag{color:var(--accent);font-weight:700}.cd-sub{margin:1px 0 0;font-size:12.5px;font-weight:700;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.countdown{padding:6px;display:flex;flex-direction:column}.cd-main{display:flex;align-items:center;gap:14px;padding:10px 12px;text-align:left;width:100%;min-height:72px}.cd-main>.ico{border-radius:16px}.cd-text{flex:1;min-width:0;display:flex;flex-direction:column}.cd-name{font-weight:800;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cd-when{font-size:13px;color:var(--muted);font-weight:600}.cd-big{font-size:34px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:4px;color:var(--accent)}.cd-big small{font-size:13px;font-weight:700;color:var(--muted)}.cd-big small.cd-today{font-size:18px;font-weight:800;color:var(--accent)}.cd-more{display:flex;align-items:center;gap:10px;padding:6px 12px;min-height:44px;text-align:left;width:100%;box-shadow:inset 0 1px 0 var(--line)}.cd-more .cd-name{flex:1;min-width:0;font-size:14.5px;font-weight:700}.cd-more b{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}.cd-more .ico{border-radius:9px}.swatch,.swatch[aria-pressed]{box-shadow:none!important}.swatch-auto span{background:transparent;box-shadow:inset 0 0 0 2px currentColor;border:2px dashed var(--surface)}.swatch-auto[aria-pressed=true] span{box-shadow:inset 0 0 0 2px currentColor,0 0 0 2px var(--surface),0 0 0 4px currentColor}.swatch,.emoji-grid button{-webkit-tap-highlight-color:transparent}.lang-seg{display:inline-flex;margin-left:0}.see{white-space:nowrap}.lang-seg .seg-btn{min-height:40px;padding:0 16px}.auth-lang{margin-top:14px}label.add-opt{cursor:pointer}.snap-thumb{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);margin-bottom:12px}.snap-wait{display:flex;align-items:center;gap:10px;justify-content:center}.spin{width:18px;height:18px;border-radius:50%;border:2.5px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite;flex:0 0 auto}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation-duration:2.4s}}.remind{display:flex;flex-direction:column;gap:10px}.remind-row{display:flex;align-items:center;gap:12px}.remind-row label{flex:1;min-width:0;font-weight:700;font-size:15px}.remind-row select{width:auto;min-width:140px;flex:0 0 auto}.remind-help{background:var(--accent-soft);border-radius:14px;padding:12px 14px;font-size:14.5px}.remind-help p{margin:0 0 6px}.remind-help ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}.share-ico{display:inline-flex;vertical-align:-4px;color:var(--accent)}.share-ico svg{width:18px;height:18px}.btn svg{width:18px;height:18px}.remind-on{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:700;font-size:15px}.remind-on svg{width:20px;height:20px;color:var(--accent);flex:0 0 auto}.remind-on span{flex:1;min-width:0}.remind-switch{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 12px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}.remind-switch input{order:2}.remind-switch.is-off{cursor:default;opacity:.75}.remind-switch-text{display:flex;flex-direction:column;min-width:0;flex:1}.remind-switch-text small{color:var(--muted);font-size:13px;line-height:1.35}.remind-switch-text small .link{font-size:13px;min-height:0;padding:0}.remind-sms{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}.remind-sms small{color:var(--muted);font-size:13px;line-height:1.4}.remind-sms small .link{font-size:13px}.remind-sms-btns{display:flex;gap:8px}.remind-sms-btns .btn{flex:1;min-height:44px}.alarm-switch{margin-bottom:14px}.remind-switch.off{opacity:.55}.toggle,.remind-switch input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;position:relative;width:51px;height:31px;margin:0;border-radius:999px;background:color-mix(in srgb,var(--muted) 35%,transparent);cursor:pointer;transition:background .2s}.toggle:after,.remind-switch input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000047;transition:transform .2s}.toggle:checked,.remind-switch input[type=checkbox]:checked{background:var(--ok)}.toggle:checked:after,.remind-switch input[type=checkbox]:checked:after{transform:translate(20px)}.toggle:disabled,.remind-switch input[type=checkbox]:disabled{opacity:.45;cursor:default}.toggle:focus-visible,.remind-switch input[type=checkbox]:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.set-group{display:flex;flex-direction:column;gap:8px}.set-title{margin:6px 4px 0;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.set-list{background:var(--surface-2);border-radius:16px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.set-row{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 14px;color:var(--ink);text-decoration:none}.set-row+.set-row{border-top:1px solid var(--line)}.set-row.tappable{cursor:pointer}.set-link:active{background:var(--accent-soft)}.set-ico{flex:0 0 auto;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:18px}.set-ico svg{width:20px;height:20px}.set-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.set-text b{font-size:15.5px;font-weight:700}.set-text small{color:var(--muted);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.set-text small.multi{white-space:normal}.set-text small .link{font-size:13px;min-height:0;padding:0}.set-chev{color:var(--faint);display:grid}.set-chev svg{width:18px;height:18px}.set-select{width:auto;flex:0 0 auto;max-width:50%;min-height:44px;height:44px;padding:0 10px;font-size:15px}.set-note{margin:0 4px;line-height:1.45}.set-expand{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.set-expand-head{display:flex;align-items:center;gap:12px}.set-expand-head b{font-size:15.5px}.set-expand small{color:var(--muted);font-size:13px;line-height:1.4}.set-expand small .link{font-size:13px}.pick-row{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:8px 12px 8px 14px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);text-align:left;color:var(--ink);margin-bottom:14px}.pick-label{flex:1;min-width:0;font-weight:700;font-size:15px}.pick-value{color:var(--muted);font-weight:600;font-size:14.5px;text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.pick-chev{color:var(--faint);display:grid}.pick-chev svg{width:16px;height:16px}.menu-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0a0e162e}.menu-card{position:fixed;width:min(300px,calc(100vw - 32px));max-height:calc(100vh - 24px);overflow-y:auto;padding:6px 0;border-radius:18px;background:var(--surface);box-shadow:0 12px 40px #0a0e1638,0 0 0 1px var(--line);animation:menu-in .16s ease-out;transform-origin:top right}@keyframes menu-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.menu-item{display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 18px 0 12px;font-size:16px;font-weight:500;color:var(--ink);text-align:left}.menu-item:active{background:var(--surface-2)}.menu-check{width:22px;display:grid;place-items:center;color:var(--accent)}.menu-check svg{width:16px;height:16px}.menu-sep{height:1px;margin:4px 16px;background:var(--line)}.menu-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;padding:8px 16px 4px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}.menu-foot .link{font-size:15px;min-height:44px;padding:0 4px}.tcard.held{transform:scale(1.02);box-shadow:0 10px 28px #0a0e162e,inset 0 0 0 1.5px var(--accent);position:relative;z-index:1001;transition:transform .15s}.menu-title{padding:8px 16px 6px;font-size:13px;font-weight:700;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-ico{width:22px;display:grid;place-items:center;color:var(--muted)}.menu-ico svg{width:18px;height:18px}.menu-ico.ok{color:var(--ok)}.menu-more{margin-left:auto;color:var(--faint);display:grid}.menu-more svg{width:16px;height:16px}.menu-item.danger,.menu-item.danger .menu-ico{color:var(--late)}.menu-item:disabled{color:var(--muted);cursor:default}.menu-back-btn{font-weight:700}.undo-bar{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:80;display:flex;align-items:center;gap:14px;width:min(420px,calc(100% - 32px));padding:6px 6px 6px 16px;border-radius:14px;background:var(--ink);color:var(--surface);font-size:14px;font-weight:700;animation:toast-in .2s ease-out}.undo-bar .ell{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.undo-bar button{min-height:40px;padding:0 14px;border-radius:10px;color:var(--accent-soft);font-weight:800}.set-btn{flex:0 0 auto;min-height:40px;padding:0 14px}.rows>li{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.rows>li.held{position:relative;z-index:1001;background:var(--surface);border-radius:14px;box-shadow:0 10px 28px #0a0e162e,inset 0 0 0 1.5px var(--accent)}.menu-confirm{margin:4px 16px 10px;font-size:14.5px;line-height:1.4;color:var(--ink)}.menu-confirm-btns{display:flex;gap:8px;padding:0 12px 8px}.menu-confirm-btns .btn{flex:1;min-height:44px}.invites{display:flex;flex-direction:column;padding:6px 0}.invite-card{display:flex;align-items:center;gap:12px;padding:12px 14px 12px 16px;flex-wrap:wrap}.invite-card+.invite-card{border-top:1px solid var(--line)}.invite-text{flex:1;min-width:150px;display:flex;flex-direction:column;gap:2px}.invite-text b{font-size:15.5px}.invite-text small{color:var(--muted);font-size:13.5px}.invite-btns{display:flex;gap:8px;margin-left:auto}.invite-btns .btn{min-height:44px}.known{display:flex;flex-direction:column;gap:8px;margin-bottom:4px}.welcome{height:100%;overflow-y:auto;display:flex;flex-direction:column;background:var(--surface);padding-bottom:max(16px,env(safe-area-inset-bottom,0px));box-sizing:border-box}.welcome-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--gut-r) 0 var(--gut-l);max-width:640px;width:100%;margin:0 auto}.welcome-lang{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;border-radius:999px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);font-weight:800;font-size:15px;color:var(--ink)}.welcome-lang-chev{display:grid;transform:rotate(90deg);color:var(--muted)}.welcome-lang-chev svg{width:14px;height:14px}.welcome-brand{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--muted)}.welcome-logo{display:inline-flex;gap:2px;padding:5px;border-radius:8px;background:var(--hero)}.welcome-logo i{width:5px;height:12px;border-radius:2px;background:#fff}.welcome-logo i:nth-child(2){height:9px}.welcome-logo i:last-child{height:7px;background:#9fe3b5}.welcome-track{flex:1;min-height:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.welcome-track::-webkit-scrollbar{display:none}.welcome-slide{flex:0 0 100%;scroll-snap-align:center;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:12px var(--gut-r) 8px var(--gut-l);max-width:640px;margin:0 auto;box-sizing:border-box}.welcome-art{align-self:center;width:min(72vw,280px);aspect-ratio:1;max-width:100%;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;margin-bottom:18px;overflow:hidden}.welcome-h{margin:0;font-size:clamp(28px,7.6vw,36px);line-height:1.08;font-weight:800;letter-spacing:-.03em;text-wrap:balance}.welcome-h span{color:var(--ok)}.welcome-p{margin:0;font-size:17px;line-height:1.55;color:var(--muted);max-width:34ch}.welcome-dots{display:flex;justify-content:center;gap:2px;padding:8px 0 14px}.welcome-dots button{width:28px;height:28px;display:grid;place-items:center}.welcome-dots button:after{content:"";width:8px;height:8px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--muted);transition:background .2s,width .2s}.welcome-dots button.on:after{background:var(--ink);box-shadow:none;width:18px;border-radius:99px}.welcome-actions{display:flex;flex-direction:column;gap:10px;padding:0 var(--gut-r) 0 var(--gut-l);max-width:640px;width:100%;margin:0 auto;box-sizing:border-box}.welcome-signup,.welcome-login{width:100%;min-height:54px;border-radius:14px;font-size:16.5px;font-weight:800}.welcome-signup{background:var(--ink);color:var(--surface)}.welcome-login{background:transparent;color:var(--ink);border:1.5px solid var(--ink);box-shadow:none}.auth-back{width:44px;height:44px;margin:-6px 0 8px -10px;display:grid;place-items:center;border-radius:50%;color:var(--hero-ink);background:var(--hero-btn)}.auth-back svg{width:22px;height:22px}.art{width:78%;display:flex;flex-direction:column;gap:10px;align-items:stretch;font-size:13px}.art-board{flex-direction:row;justify-content:center;align-items:flex-start;gap:9px;width:70%}.art-col{flex:1;min-height:46%;aspect-ratio:.42;display:flex;flex-direction:column;gap:7px;padding:9px 7px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.art-col:nth-child(2){aspect-ratio:.55}.art-col b{height:9px;border-radius:9px;background:var(--accent-soft)}.art-col b.short{width:60%}.art-col.done{aspect-ratio:.75;background:var(--ok-bg);display:grid;place-items:center;color:var(--ok);font-size:30px;font-weight:800}.art-bubble{align-self:flex-start;max-width:92%;padding:10px 13px;border-radius:16px 16px 16px 4px;background:var(--surface);box-shadow:var(--shadow);font-weight:700;color:var(--ink)}.art-mic{align-self:center;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-size:22px}.art-card{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--surface);box-shadow:var(--shadow);font-weight:800;color:var(--ink)}.art-card small{margin-left:auto;font-weight:700;color:var(--muted);font-size:12px;white-space:nowrap}.art-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:0 0 auto}.art-dot.green{background:var(--ok)}.art-note{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink)}.art-note>span:first-child{font-size:20px;flex:0 0 auto}.art-note>span:last-child{flex:1;min-width:0}.art-note b{display:block;font-size:13px}.art-note small{color:var(--muted);font-size:11.5px}.art-note.two{margin-left:8%}.art-faces{display:flex;justify-content:center;margin-bottom:2px}.art-faces span{width:46px;height:46px;margin:0 -5px;border-radius:50%;display:grid;place-items:center;font-size:24px;background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft),var(--shadow)}.setup{height:100%;overflow-y:auto;display:flex;flex-direction:column;background:var(--surface);padding-bottom:max(16px,env(safe-area-inset-bottom,0px));box-sizing:border-box}.setup-top,.setup-body,.setup-actions{width:100%;max-width:560px;margin:0 auto;padding-left:var(--gut-l);padding-right:var(--gut-r);box-sizing:border-box}.setup-top{display:flex;align-items:center;gap:12px;min-height:56px}.setup-progress{flex:1;display:flex;gap:6px}.setup-progress i{flex:1;height:5px;border-radius:5px;background:var(--line)}.setup-progress i.on{background:var(--accent)}.setup-skip{min-height:44px;padding:0 4px;font-weight:800}.setup-body{flex:1;display:flex;flex-direction:column;gap:12px;padding-top:18px;padding-bottom:18px}.setup-body h1{margin:0;font-size:clamp(26px,7vw,32px);line-height:1.12;font-weight:800;letter-spacing:-.03em;text-wrap:balance}.setup-ico{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:32px;background:var(--accent-soft);margin-bottom:4px}.setup-p{margin:0 0 8px;font-size:16px;line-height:1.5;color:var(--muted);max-width:40ch}.setup-note{margin:0 4px}.setup-on{display:inline-flex;align-items:center;gap:5px;color:var(--ok);font-weight:800;font-size:14px}.setup-on svg{width:18px;height:18px}.setup-picks{display:flex;flex-direction:column;gap:8px}.setup-pick{display:flex;align-items:center;gap:12px;min-height:60px;padding:10px 14px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);text-align:left;color:var(--ink)}.setup-pick[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.setup-pick-emoji{font-size:26px;width:36px;text-align:center}.setup-pick-text{flex:1;min-width:0;display:flex;flex-direction:column}.setup-pick-text b{font-size:15.5px}.setup-pick-text small{color:var(--muted);font-size:13px}.setup-pick-check{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 2px var(--line);color:var(--accent-ink)}.setup-pick[aria-pressed=true] .setup-pick-check{background:var(--accent);box-shadow:none}.setup-pick-check svg{width:15px;height:15px}.setup-tips{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.setup-tips li{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:var(--surface-2);font-weight:600}.setup-tips span{font-size:22px}.setup-cta{min-height:54px;font-size:16.5px;border-radius:14px}.carousel{display:flex;flex-direction:column;min-width:0}.carousel.compact{margin:0 calc(-1 * var(--gut-r)) 0 calc(-1 * var(--gut-l))}.carousel.compact .welcome-art{width:min(52vw,200px);margin-bottom:8px}.carousel.compact .welcome-h{font-size:clamp(24px,6.6vw,30px)}.carousel.compact .welcome-p{font-size:15.5px}.carousel.compact .welcome-dots{padding:2px 0 8px}.art-sms{width:84%;gap:6px}.art-sms-head{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ink)}.art-sms-head small{margin-left:auto;color:var(--muted)}.art-sms-head .welcome-logo{padding:3px;border-radius:6px}.art-sms-head .welcome-logo i{width:3px;height:8px}.art-sms-head .welcome-logo i:nth-child(2){height:6px}.art-sms-head .welcome-logo i:last-child{height:5px}.art-sms-bubble{padding:10px 12px;border-radius:16px 16px 16px 4px;background:var(--surface);box-shadow:var(--shadow);font-weight:700;color:var(--ink);line-height:1.35}.art-pick{width:74%;gap:6px}.art-pick .art-card{padding:7px 10px;font-size:12px}.art-pick .art-card small{font-size:11px}.art-on{color:var(--ok)!important}.art-contact{width:80%;align-items:center;text-align:center;gap:3px;color:var(--ink)}.art-avatar{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--hero);margin-bottom:4px}.art-contact b{font-size:13.5px}.art-contact small{color:var(--muted);font-weight:700}.art-stop{margin-top:6px;padding:4px 10px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-size:11px;font-weight:800;color:var(--late)}body:has(.welcome),body:has(.setup),body:has(.auth2){background:var(--surface)}.welcome>.carousel{flex:1;min-height:0}.welcome-art{width:min(72vw,280px,34vh)}.auth2{height:100%;overflow-y:auto;display:flex;flex-direction:column;background:var(--surface);padding-bottom:max(16px,env(safe-area-inset-bottom,0px));box-sizing:border-box}.auth2-back{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink)}.auth2-back svg{width:22px;height:22px}.auth2-body{flex:1;width:100%;max-width:480px;margin:0 auto;box-sizing:border-box;padding:28px var(--gut-r) 0 var(--gut-l);display:flex;flex-direction:column;gap:16px}.auth2-body .welcome-h{margin-bottom:4px}.auth2-fields{display:flex;flex-direction:column;gap:14px}.auth2-input{min-height:54px;font-size:16.5px;border-radius:14px;padding:0 16px}.auth2-input::placeholder{color:var(--faint);font-weight:500}.auth2-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.auth2-forgot{font-size:13.5px;min-height:32px;padding:0}.auth2-pass{position:relative}.auth2-pass .auth2-input{padding-right:76px}.auth2-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);min-height:44px;padding:0 12px;border-radius:10px;font-weight:800;font-size:14px;color:var(--accent)}.auth2-actions{margin-top:auto;padding-top:24px;display:flex;flex-direction:column;gap:6px}.auth2-actions .welcome-signup{min-height:56px}.auth2-switch{margin:6px 0 0;text-align:center;font-size:15px;color:var(--muted)}.auth2-switch .link{font-weight:800;font-size:15px}.welcome-brand{white-space:nowrap;min-width:0;overflow:hidden}@media(max-width:380px){.welcome-brand{font-size:12.5px}}:root{--tone-sun: #FFE6A6;--tone-rose: #FFD9D2;--tone-night: #12151C;--tone-sky: var(--accent-soft);--tone-mint: var(--ok-bg)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--tone-sun: #3A3015;--tone-rose: #3E2024;--tone-night: #07090D}}:root[data-theme=dark]{--tone-sun: #3A3015;--tone-rose: #3E2024;--tone-night: #07090D}.carousel:not(.compact) .welcome-slide{justify-content:flex-start;gap:14px;padding-top:8px}.carousel:not(.compact) .welcome-art{width:100%;max-width:100%;aspect-ratio:auto;height:clamp(190px,34vh,320px);border-radius:28px;margin:0}.welcome-slide.tone-sun .welcome-art{background:var(--tone-sun)}.welcome-slide.tone-rose .welcome-art{background:var(--tone-rose)}.welcome-slide.tone-night .welcome-art{background:var(--tone-night)}.welcome-slide.tone-sky .welcome-art{background:var(--tone-sky)}.welcome-slide.tone-mint .welcome-art{background:var(--tone-mint)}.slide-copy{display:flex;flex-direction:column;gap:8px;min-width:0}.slide-kicker{margin:0;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.slide-points{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.slide-points li{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:650;line-height:1.3;color:var(--ink)}.slide-points li span{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:var(--surface-2);font-size:16px}.carousel:not(.compact) .welcome-p{font-size:16px}@keyframes pop-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-5px) rotate(-1deg)}40%{transform:translate(5px) rotate(1deg)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.welcome-slide .a1,.welcome-slide .a2,.welcome-slide .a3,.welcome-slide .a4,.welcome-slide .slide-copy>*,.welcome-slide .slide-points li{opacity:0}.welcome-slide.active .a1{animation:pop-in .45s .1s ease-out both}.welcome-slide.active .a2{animation:pop-in .45s .7s ease-out both}.welcome-slide.active .a3{animation:pop-in .45s 1.3s ease-out both}.welcome-slide.active .a4{animation:pop-in .45s 1.9s ease-out both}.welcome-slide.active .slide-copy>*{animation:pop-in .4s .15s ease-out both}.welcome-slide.active .slide-copy>*:nth-child(2){animation-delay:.25s}.welcome-slide.active .slide-copy>*:nth-child(3){animation-delay:.35s}.welcome-slide.active .slide-points li{animation:pop-in .35s ease-out both}.carousel.compact .welcome-slide .slide-copy>*{opacity:1;animation:none}@media(prefers-reduced-motion:reduce){.welcome-slide *{animation:none!important;opacity:1!important}}@keyframes dot-fill{0%{background-size:0% 100%}to{background-size:100% 100%}}.welcome-dots button:after{width:8px;height:6px;border-radius:6px;box-shadow:none;background:var(--line)}.welcome-dots button.past:after{background:var(--ink)}.welcome-dots button.on:after{width:28px;height:6px;background:linear-gradient(var(--ink),var(--ink)) no-repeat left / 0% 100%,var(--line);animation:dot-fill var(--dur, 6s) linear forwards}.welcome-dots button.on[style*="--dur: 0s"]:after{animation:none;background-size:100% 100%}.art-snooze{width:86%;max-width:360px;gap:8px;position:relative}.snz-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink)}.snz-card:nth-child(2){margin-left:6%}.snz-card:nth-child(3){margin-left:12%}.snz-ico{font-size:20px}.snz-card>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}.snz-card b{font-size:13.5px}.snz-card small{font-size:11.5px;color:var(--muted)}.snz-card em{font-style:normal;font-size:11px;font-weight:800;color:var(--late);background:var(--late-bg);padding:3px 7px;border-radius:99px;white-space:nowrap}.snz-zzz{position:absolute;right:-4px;top:-22px;font-size:34px}.welcome-slide.active .snz-zzz{animation:pop-in .45s 1.9s ease-out both,float 2.4s 2.4s ease-in-out infinite}.art-nag{width:88%;max-width:360px;gap:8px}.nag-note{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:18px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow);color:var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.nag-app .welcome-logo{padding:5px;border-radius:9px}.nag-text{flex:1;min-width:0;display:flex;flex-direction:column}.nag-text b{font-size:13.5px}.nag-text small{font-size:12px;color:var(--muted)}.nag-time{align-self:flex-start;font-size:11px;color:var(--muted);font-weight:700}.nag-note.a3{box-shadow:0 0 0 2px var(--late),var(--shadow)}.nag-note.a3 .nag-text b{color:var(--late)}.welcome-slide.active .nag-note.a3{animation:pop-in .45s 1.3s ease-out both,shake .5s 1.8s ease-in-out 2}.art-alarm{width:100%;height:100%;position:relative;display:grid;place-items:center}.alm-phone{height:90%;width:auto;aspect-ratio:.52;max-width:52%;border-radius:26px;background:#000;box-shadow:0 0 0 4px #2a2d33,0 18px 40px #00000073;display:flex;flex-direction:column;align-items:center;padding:10px 10px 12px;box-sizing:border-box;color:#fff}.alm-island{width:38%;height:11px;border-radius:12px;background:#1b1d22;margin-bottom:10%;flex:0 0 auto}.alm-label{font-size:10.5px;font-weight:700;color:#fffc}.alm-time{font-size:clamp(26px,7.6vw,38px);font-weight:800;letter-spacing:-.03em;line-height:1.05}.alm-app{font-size:9px;color:#ffffff8c;margin-bottom:auto}.alm-btn{width:100%;text-align:center;font-size:10px;font-weight:800;padding:6px 0;border-radius:99px;margin-top:5px}.alm-btn.snooze{background:#f5a524;color:#1a1206}.alm-btn.stop{background:#2a2d33;color:#fff}.alm-pop{position:absolute;padding:7px 11px;border-radius:99px;background:#fff;color:#141821;font-size:12px;font-weight:800;box-shadow:0 8px 20px #00000059;white-space:nowrap}.alm-pop.p1{left:6%;top:18%}.alm-pop.p2{right:6%;top:34%}.alm-pop.p3{left:9%;bottom:18%}.welcome-slide.tone-night .slide-points li span{background:var(--surface-2)}.art-voice{max-width:340px}.art-voice .art-card.a4 small{color:var(--ok)}.art-family{max-width:340px}.art-family s{color:var(--muted);text-decoration-thickness:2px}.art-plus{background:var(--accent)!important;color:var(--accent-ink);font-weight:800;font-size:22px!important}.carousel:not(.compact) .welcome-art{flex-shrink:0;height:clamp(150px,31vh,320px)}.carousel:not(.compact) .welcome-slide{overflow-y:auto;scrollbar-width:none}.carousel:not(.compact) .welcome-slide::-webkit-scrollbar{display:none}@media(max-height:700px){.carousel:not(.compact) .welcome-h{font-size:26px}.slide-points li{font-size:14px}.slide-points li span{width:26px;height:26px}.carousel:not(.compact) .welcome-p{font-size:15px}}.rs-ico{flex:0 0 auto;width:36px;height:36px;border-radius:11px;display:grid;place-items:center}.rs-ico svg{width:20px;height:20px}.ico-bell{background:#fff1d6;color:#b86e00}.ico-text{background:var(--ok-bg);color:var(--ok)}.ico-alarm{background:var(--late-bg);color:var(--late)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ico-bell{background:#3a2c12;color:#ffc266}}:root[data-theme=dark] .ico-bell{background:#3a2c12;color:#ffc266}.remind-switch{align-items:center;gap:12px}.pick-row{gap:12px;padding:10px 12px;min-height:60px}.pick-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;text-align:left}.pick-text b{font-size:15.5px;font-weight:700}.pick-text small{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-row.on .pick-text small{color:var(--accent);font-weight:700}.menu-group{padding:6px 16px 2px;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.menu-opt-ico{width:20px;display:grid;place-items:center;color:var(--muted)}.menu-opt-ico svg{width:17px;height:17px}.menu-item.muted{color:var(--muted)}.calbox .calbtn+.calbtn{margin-top:8px}.calbtn.cal-apple svg{color:var(--late)}button.calbtn{width:100%;text-align:left;font:inherit;font-weight:700}.hero-bell{position:relative;width:40px;padding:0;justify-content:center}.hero-bell svg{width:20px;height:20px}.bell-badge{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font-size:11px;font-weight:800;line-height:19px;text-align:center;box-shadow:0 0 0 2px var(--hero)}.notes{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column}.note-row{display:flex;flex-direction:column;gap:8px;padding:10px 8px;border-radius:14px}.note-row+.note-row{border-top:1px solid var(--line)}.note-row.new{background:var(--accent-soft, rgba(47,91,211,.08))}.note-main{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;text-align:left;background:none;color:inherit;padding:0}.note-main:disabled{opacity:1;cursor:default}.note-who{position:relative;flex-shrink:0}.note-dot{display:block;width:36px;height:36px;border-radius:50%;background:var(--line)}.note-kind{position:absolute;right:-4px;bottom:-4px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;background:#6b7280;box-shadow:0 0 0 2px var(--surface)}.note-kind.k-done{background:#1f9d55}.note-kind.k-added{background:#2f5bd3}.note-kind.k-assigned{background:#8b5cf6}.note-kind.k-invite{background:#f59e0b;font-size:10px}.note-text{display:flex;flex-direction:column;gap:2px;min-width:0}.note-text b{font-size:15px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.note-text small{font-size:13px;color:var(--muted)}.note-btns{padding-left:48px}.notes-clear{display:block;margin:4px auto 0;min-height:44px}.notes-empty{text-align:center;padding:24px 8px 12px;display:flex;flex-direction:column;align-items:center;gap:6px}.notes-empty span{font-size:36px}.notes-empty b{font-size:17px}.notes-empty p{margin:0;color:var(--muted);max-width:34ch;line-height:1.45}.del-ask{display:flex;flex-direction:column;gap:8px;padding:14px;margin-bottom:12px;border-radius:16px;background:var(--late-bg)}.del-ask b{font-size:15px}.del-ask .link{min-height:44px}.menu-two{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-two small{font-size:12.5px;font-weight:500;color:var(--muted)}.acct-page{display:flex;flex-direction:column;gap:14px;padding-bottom:8px}.acct-hero,.acct-lead{margin:2px 0 0;font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-.02em;color:var(--ink);text-wrap:balance}.acct-lead{font-size:26px}.acct-sub{margin:-6px 0 2px;color:var(--muted);font-size:16px}.acct-card{display:flex;align-items:center;gap:14px;width:100%;padding:18px;border-radius:22px;background:var(--accent-soft);color:var(--ink);text-align:left;min-height:44px}.acct-card-text,.acct-row-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.acct-card-text b{font-size:18px;font-weight:750}.acct-card-text small,.acct-row-text small{font-size:14.5px;color:var(--muted);overflow-wrap:anywhere}.acct-list{display:flex;flex-direction:column}.acct-row{display:flex;align-items:center;gap:16px;width:100%;padding:16px 0;background:none;color:var(--ink);text-align:left;min-height:72px}.acct-row+.acct-row{border-top:1px solid var(--line)}.acct-row-text b{font-size:17px;font-weight:700}.acct-ico{flex-shrink:0;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.acct-ico svg{width:24px;height:24px}.acct-chev{flex-shrink:0;color:var(--accent);display:grid}.acct-chev svg{width:18px;height:18px}.acct-signout{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;margin-top:6px;border-radius:16px;background:var(--surface-2);color:var(--ink);font-size:16px;font-weight:700}.acct-signout svg{width:20px;height:20px}.acct-back{align-self:flex-start;display:flex;align-items:center;gap:10px;min-height:44px;padding:0;background:none;color:var(--ink);font-size:16px;font-weight:700}.acct-back-ico{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.acct-back-ico svg{width:20px;height:20px}.overlay.from-top{align-items:flex-start;justify-content:flex-end;padding:calc(env(safe-area-inset-top,0px) + 8px) max(10px,env(safe-area-inset-right,0px)) 0 max(10px,env(safe-area-inset-left,0px))}.overlay.from-top .sheet{width:min(440px,100%);max-height:calc(100% - 16px);border-radius:26px;padding-block:14px 20px;box-shadow:0 18px 50px #00000047;transform-origin:top right;animation:drop-tr .24s cubic-bezier(.2,.9,.3,1.1)}@keyframes drop-tr{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.overlay.from-top .sheet{animation:none}}.acct-row .toggle{flex-shrink:0}a.acct-row{text-decoration:none}.acct-danger{display:flex;flex-direction:column;gap:8px;padding-top:18px;border-top:1px solid var(--line)}.acct-danger b{font-size:17px}.acct-danger p{margin:0;color:var(--muted);line-height:1.45}.acct-del{align-self:flex-start;min-height:48px}.acct-del-confirm{display:flex;flex-direction:column;gap:8px}.acct-del-confirm label{font-size:13px;font-weight:700;color:var(--muted)}.acct-foot{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:8px;border-top:1px solid var(--line)}.acct-signout-link{min-height:44px;font-size:16px;font-weight:700;color:var(--ink)}.check-row{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:600}.ai-ask{display:flex;flex-direction:column;gap:10px}.ai-ask-ico{font-size:34px}.ai-ask p{margin:0;font-size:16px;line-height:1.45}.ai-ask ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--muted);line-height:1.4}html.holding,html.holding *{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.menu-back,.menu-back *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.tabbar{position:relative}.plus-tip{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%);width:min(300px,calc(100vw - 32px));z-index:20;background:var(--ink);color:var(--surface);border-radius:18px;padding:14px 14px 12px;box-shadow:0 12px 30px #00000040;display:grid;grid-template-columns:1fr auto;gap:8px 10px;align-items:center;animation:tip-in .25s ease-out}.plus-tip:after{content:"";position:absolute;left:50%;bottom:-7px;width:14px;height:14px;background:var(--ink);transform:translate(-50%) rotate(45deg);border-radius:3px}.plus-tip p{grid-column:1 / -1;margin:0;padding-right:30px;font-size:15.5px;font-weight:700;line-height:1.35}.plus-tip-x{position:absolute;top:4px;right:4px;width:44px;height:44px;display:grid;place-items:center;background:none;color:inherit;opacity:.7}.plus-tip-x svg{width:18px;height:18px}.plus-tip-check{display:flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:600;opacity:.9}.plus-tip-check input{width:20px;height:20px;accent-color:var(--accent)}.plus-tip-ok{min-height:40px;background:var(--accent);color:var(--accent-ink)}@keyframes tip-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.plus-tip{animation:none}}.inbox{display:flex;flex-direction:column;gap:12px}.inbox-back{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;min-height:44px}.inbox-back svg{width:18px;height:18px}.inbox-lead{margin:0;font-size:16px}.inbox-addr{padding:16px;border-radius:16px;background:var(--accent-soft);color:var(--ink);font:700 16px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all;text-align:center;-webkit-user-select:all;user-select:all}.inbox .btn svg{width:18px;height:18px;margin-right:6px}.inbox-tips{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--muted);line-height:1.4}.inbox-reset{display:flex;flex-direction:column;gap:8px}.inbox-reset p{margin:0;color:var(--muted)}.link-help{display:flex;flex-direction:column;gap:8px}.link-help-ico{font-size:36px}.link-help p{margin:0;font-size:16px;line-height:1.45}label.btn svg,.btn svg{flex-shrink:0}.kind-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}.kind-switch button{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;text-align:left;min-height:52px;padding:8px 12px;border-radius:14px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);font-weight:700;font-size:15px}.kind-switch button svg{width:18px;height:18px;grid-row:span 2}.kind-switch button small{grid-column:2;font-size:12px;font-weight:500}.kind-switch button[aria-checked=true]{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.kind-switch button:disabled{opacity:.5}.ev-dot-slot{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center}.ev-dot{width:12px;height:12px;border-radius:50%}.ev-tag{display:inline-block;padding:1px 7px;margin-right:6px;border-radius:999px;font-size:11.5px;font-weight:700;line-height:1.5;vertical-align:1px}.colors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.color-tile{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line),var(--shadow);text-align:left;min-height:44px;transition:transform .12s ease,box-shadow .15s ease}.color-tile:active{transform:scale(.97)}.color-tile.on{box-shadow:0 0 0 2.5px var(--tile-accent),var(--shadow)}.color-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 11px 14px;background:var(--tile-hero);color:#fff;min-height:46px}.color-name{font-weight:800;font-size:15px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.color-check{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:#ffffff40;display:grid;place-items:center}.color-check svg{width:15px;height:15px}.color-body{display:flex;align-items:center;gap:10px;padding:13px 12px 14px 14px}.color-ring{flex-shrink:0;width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--tile-accent)}.color-lines{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.color-lines i{display:block;height:6px;border-radius:3px;background:var(--line)}.color-lines i:last-child{width:55%}.color-chip{flex-shrink:0;width:26px;height:16px;border-radius:8px;background:var(--tile-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tile-accent) 25%,transparent)}.cal-page{flex-shrink:0;display:flex;flex-direction:column;border-radius:22%;overflow:hidden;background:#fff;box-shadow:0 0 0 1px #1418211a,0 1px 3px #1418211f}.cal-page-top{flex:0 0 30%;display:grid;place-items:center;background:#f2453d;color:#fff;font-size:.2em;font-weight:800;text-transform:uppercase;letter-spacing:.04em;line-height:1}.cal-page-num{flex:1;display:grid;place-items:center;color:#1c1c1e;font-size:.44em;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.apple-tag{display:inline-flex;align-items:center;width:fit-content;padding:1px 7px;margin-right:6px;border-radius:999px;font-size:11.5px;font-weight:750;line-height:1.5;vertical-align:1px;color:#d2332b;background:#fde9e8}:root[data-theme=dark] .apple-tag{color:#ff8a82;background:#3a1d1c}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .apple-tag{color:#ff8a82;background:#3a1d1c}}.cd-text .apple-tag,.pe-text .apple-tag{margin:0 0 3px}.pe-sheet{display:flex;flex-direction:column;gap:12px;padding-bottom:8px}.pe-head{display:flex;align-items:center;gap:14px}.pe-text{display:flex;flex-direction:column;gap:2px;min-width:0}.pe-text b{font-size:19px;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.pe-text small{font-size:14.5px;color:var(--muted)}.pe-line{display:flex;align-items:center;gap:10px;margin:0;font-size:15px;font-weight:600;overflow-wrap:anywhere}.pe-line svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.pe-cal{width:12px;height:12px;border-radius:50%;flex:0 0 12px;margin:0 3px}.pe-pick{padding:0;border-radius:16px;background:var(--surface-2);max-height:50vh;overflow-y:auto}.pe-pick .row:disabled{opacity:.6}.cal-ask{display:flex;gap:14px;padding:16px;margin-top:14px}.cal-ask-ico{flex:0 0 44px;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.cal-ask-ico svg{width:22px;height:22px}.cal-ask-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.cal-ask-text b{font-size:16px;font-weight:800}.cal-ask-text small{font-size:14px;color:var(--muted)}.cal-ask-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:8px;flex-wrap:wrap}.cal-warn{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;border-radius:16px;background:var(--late-bg)}.cal-warn b{color:var(--late);font-size:15px}.cal-warn small{color:var(--ink);font-size:14px}.cal-group{display:flex;flex-direction:column;background:var(--surface-2);border-radius:16px;padding:4px 14px}.cal-group+.cal-group{margin-top:10px}.cal-acct{margin:10px 0 2px;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}.cal-pick{display:flex;align-items:center;gap:10px;min-height:48px;font-weight:650;font-size:16px}.cal-pick+.cal-pick{border-top:1px solid var(--line)}.cal-pick input{width:20px;height:20px;margin:0;flex-shrink:0}.cal-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dots i.dot-cal{border-radius:2px}.calbtn.cal-auto svg{color:var(--ok)}.cal-src{margin-left:auto;font-size:12.5px;color:var(--faint);font-weight:600;white-space:nowrap}.fold{display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:0 14px 0 16px;border-radius:16px;background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);text-align:left;color:var(--ink)}.fold-title{font-weight:750;font-size:16px;flex-shrink:0}.fold-value{margin-left:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:600;font-size:14.5px}.fold-chev{display:grid;color:var(--accent);transition:transform .18s ease}.fold-chev svg{width:18px;height:18px}.fold.open .fold-chev{transform:rotate(90deg)}.fold+.cal-group{margin-top:2px}.cal-ico svg{width:46%;height:46%;stroke-width:2.2}.wk-nav{display:flex;align-items:center;gap:4px;margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.wk-arrow{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:var(--muted);flex:none}.wk-arrow svg{width:18px;height:18px;transform:rotate(180deg)}.wk-arrow.next svg{transform:none}.wk-arrow:active{background:var(--line)}.wk-title{flex:1;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2}.wk-title small{font-size:12px;font-weight:600;color:var(--muted)}.wk-title b{font-size:15px;font-weight:800}.wk-viewport{overflow:hidden;touch-action:pan-y;margin:0 -4px;padding:0 4px}.wk-viewport .week{margin-top:4px;padding-top:0;border-top:0;transition:transform .2s ease}button.day{padding:4px 0 6px;border-radius:12px;min-height:44px;-webkit-tap-highlight-color:transparent}.day.sel:not(.today) .dn{box-shadow:inset 0 0 0 2px var(--accent);color:var(--accent)}.day.sel{background:color-mix(in srgb,var(--accent) 8%,transparent)}@keyframes wk-from-right{0%{transform:translate(40%);opacity:0}to{transform:none;opacity:1}}@keyframes wk-from-left{0%{transform:translate(-40%);opacity:0}to{transform:none;opacity:1}}.wk-slide.from-right{animation:wk-from-right .22s ease-out}.wk-slide.from-left{animation:wk-from-left .22s ease-out}.wk-day{touch-action:pan-y;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);min-height:64px}.wk-day-name{margin:0 0 2px;font-size:13px;font-weight:700;color:var(--muted)}.wk-day .rows{margin:0 -18px -18px}.wk-free{margin:10px 0 4px;color:var(--muted);font-size:14px}@media(prefers-reduced-motion:reduce){.wk-slide.from-right,.wk-slide.from-left{animation:none}.wk-viewport .week{transition:none}}.view-seg{display:flex;margin:14px 0 4px;width:100%}.view-seg .seg-btn{flex:1;height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px}.view-seg .seg-btn svg{width:16px;height:16px}.mv{margin-top:12px}.mv-nav{margin-top:0;padding-top:0;border-top:0}.mv-title{font-size:19px!important;letter-spacing:-.01em}.mv-head{display:grid;grid-template-columns:repeat(7,1fr);margin-top:6px;text-align:center;font-size:11px;font-weight:700;color:var(--faint);text-transform:uppercase;letter-spacing:.04em}.mv-grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px;margin-top:4px;transition:transform .2s ease}.mv-day{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:50px;padding:4px 0 2px;border-radius:12px;min-width:0}.mv-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:750;font-size:15px;font-variant-numeric:tabular-nums}.mv-day.past .mv-num{color:var(--faint)}.mv-day.out{opacity:.38}.mv-day.today .mv-num{background:var(--accent);color:var(--accent-ink)}.mv-day.sel:not(.today) .mv-num{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.mv-day:active{background:var(--surface-2)}.mv-day .dots{height:7px}.mv-day .dots i{width:6px;height:6px}.mv-day .dots b{font-size:9px}.tick.on{background:var(--ok);border-color:var(--ok);color:#fff;animation:tick-pop .28s ease-out}@keyframes tick-pop{0%{transform:scale(.7)}60%{transform:scale(1.15)}to{transform:scale(1)}}li.ticked .row-title{text-decoration:line-through;text-decoration-thickness:2px;color:var(--muted)}li.ticked .row-btn{opacity:.6;transition:opacity .3s ease}@media(prefers-reduced-motion:reduce){.tick.on{animation:none}}.auth2-legal{margin:10px 0 0;text-align:center;font-size:13px;line-height:1.45;color:var(--muted)}.auth2-legal a{color:var(--accent);font-weight:700}.age-gate{min-height:100dvh;display:grid;place-items:center;background:var(--bg);padding:max(24px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.age-gate-card{width:100%;max-width:420px;display:flex;flex-direction:column;gap:12px;text-align:center;background:var(--surface);border-radius:24px;padding:28px 22px;box-shadow:var(--shadow)}.age-gate-ico{font-size:44px}.age-gate-card h1{margin:0;font-size:24px;font-weight:850;text-wrap:balance}.age-gate-card p{margin:0 0 6px;color:var(--muted);font-size:15.5px;line-height:1.5}.age-gate-help{display:block;font-size:14px;margin:2px 0}.warn-note{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;padding:10px 12px;border-radius:12px;background:var(--late-bg);color:var(--late);font-size:13.5px;font-weight:700;line-height:1.35}.warn-note svg{flex:0 0 auto;width:18px;height:18px;margin-top:1px}.changed-by{display:flex;align-items:center;gap:8px;margin:-4px 0 12px;font-size:12.5px;color:var(--muted)}.board-note{margin-top:6px}.board-note.shared{color:var(--accent);font-weight:700}.del-board-ico{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:20px;background:var(--surface-2)}
