.board{--board-pad:clamp(1rem, 2.5vw, 2.5rem);min-height:100dvh;padding:var(--board-pad);padding-bottom:var(--board-pad);background:var(--paper);grid-template-rows:auto auto 1fr;gap:clamp(.75rem,2vw,1.5rem);display:grid}body:has(.board){padding-bottom:0;padding-left:0}.board-head{align-items:center;gap:1rem;display:flex}.board-family{flex:1;min-width:0}.board-family h1{font-size:clamp(1.4rem,3vw,2.4rem)}.board-date{color:var(--muted);font-size:clamp(.95rem,1.6vw,1.3rem);font-weight:700}.board-date:first-letter{text-transform:uppercase}.board-clock{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:clamp(2.5rem,7vw,5.5rem);font-weight:800;line-height:1}.board-lock{border:1px solid var(--line);background:var(--card);width:clamp(3rem,5vw,4rem);height:clamp(3rem,5vw,4rem);color:var(--muted);border-radius:50%;place-items:center;display:grid}.board-lock svg{width:50%;height:50%}.board-stale{border-radius:var(--r-control);background:var(--bad-soft);padding:.5rem 1rem;font-weight:700}.board-body{grid-template-columns:minmax(16rem,1fr) 2.2fr;align-items:start;gap:clamp(.75rem,2vw,1.5rem);display:grid}@media (width<=760px),(orientation:portrait) and (width<=1000px){.board-body{grid-template-columns:1fr}}.board-agenda{align-content:start;gap:.5rem;display:grid}.board-agenda h2,.board-people h2{font-size:clamp(1.1rem,2vw,1.5rem)}.board-tomorrow{color:var(--muted);margin-top:.75rem}.board-quiet{color:var(--muted);font-size:clamp(.95rem,1.5vw,1.2rem);font-weight:600}.board-agenda ul,.board-detail ul{gap:.4rem;display:grid}.board-event{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--tone,var(--line));border-radius:16px;align-items:center;gap:.75rem;padding:.6rem .75rem .6rem .6rem;display:flex}.board-event-time{font-variant-numeric:tabular-nums;min-width:4.5rem;font-size:clamp(1rem,1.7vw,1.35rem);font-weight:800}.board-event-body{flex:1;min-width:0;display:grid}.board-event-title{font-size:clamp(1rem,1.7vw,1.35rem);font-weight:700}.board-event-where{color:var(--muted);font-size:clamp(.85rem,1.3vw,1.05rem);font-weight:600}.board-faces{gap:.15rem;display:flex}.board-people{grid-template-columns:repeat(auto-fit,minmax(clamp(14rem,22vw,20rem),1fr));align-items:start;gap:clamp(.75rem,1.5vw,1.25rem);display:grid}.board-person{text-align:left;border-radius:var(--r-card);background:var(--card);border:1px solid var(--line);border-top:7px solid var(--tone,var(--line));min-width:0;color:inherit;font:inherit;cursor:pointer;align-content:start;gap:.6rem;padding:clamp(.75rem,1.5vw,1.25rem);transition:transform 80ms;display:grid;overflow:hidden}.board-person:active{transform:scale(.985)}.board-person.child{background:linear-gradient(180deg, color-mix(in oklab, var(--tone,var(--line)) 9%, var(--card)), var(--card) 40%)}.board-person>*{min-width:0}.board-person-head{align-items:center;gap:.75rem;display:flex}.board-person-head .avatar{--size:clamp(3rem, 5vw, 4.5rem)}.board-person-name{flex:1;font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:800}.board-person .coin{font-size:clamp(1rem,1.7vw,1.3rem)}.board-chores{gap:.35rem;min-width:0;display:grid}.board-chore{background:var(--soft);border-radius:12px;align-items:center;gap:.5rem;min-width:0;min-height:2.5rem;padding:.35rem .6rem;font-size:clamp(.95rem,1.6vw,1.25rem);font-weight:700;display:flex}.board-chore.late{background:var(--bad-soft);color:color-mix(in oklab, var(--bad) 75%, var(--ink))}.board-chore.done{opacity:.6}.board-chore.done .board-chore-title{text-decoration:line-through}.board-ring{border:2.5px solid var(--tone,var(--muted));color:#fff;border-radius:50%;flex:none;place-items:center;width:1.5rem;height:1.5rem;display:grid}.board-ring.on{background:var(--ok);border-color:var(--ok)}.board-ring svg{width:70%;height:70%}.board-chore-icon{font-size:1.3em;line-height:1}.board-chore-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.board-chore-repeat{color:var(--muted);font-size:.85em;font-weight:600}.board-chore-due{color:var(--muted);white-space:nowrap;font-size:.85em;font-weight:600}.board-chore.late .board-chore-due{color:inherit}.board-more{color:var(--muted);padding-left:.5rem;font-weight:600}.board-detail-backdrop{z-index:30;background:#0a0e1480;place-items:center;padding:clamp(.5rem,3vw,2rem);display:grid;position:fixed;inset:0}.board-detail{border-radius:var(--r-card);background:var(--card);border-top:8px solid var(--tone,var(--line));gap:1rem;width:min(64rem,100%);max-height:100%;padding:clamp(1rem,2.5vw,2rem);display:grid;overflow-y:auto}.board-detail-head{align-items:center;gap:1rem;display:flex}.board-detail-title{flex:1;justify-items:start;gap:.5rem;display:grid}.board-detail-title h2{font-size:clamp(1.6rem,3vw,2.4rem)}.board-detail-body{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;display:grid}.board-detail-body h3{margin-bottom:.5rem;font-size:clamp(1.05rem,1.8vw,1.35rem)}.board-detail-body h3+ul{margin-bottom:1rem}@media (width<=760px){.board-detail-body{grid-template-columns:1fr}}.board.night{--paper:#0d1117;--card:#151b24;--ink:#d5dbe3;--muted:#7d8794;--line:#222b36;--soft:#1b232d;--coin-soft:#2e2510;--bad-soft:#3a1d1c;color:var(--ink);filter:brightness(.85)}.board.night .board-person.child{background:var(--card)}.board.night .board-clock{color:#fff}.board-person-badges{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:flex}.board-notes{grid-template-columns:1fr}.board-notes .note-body{font-size:clamp(1rem,1.7vw,1.3rem)}.cal-head{align-items:center;gap:.25rem;display:flex}.cal-head h1{text-align:center;white-space:nowrap;text-transform:capitalize;font-variant-numeric:tabular-nums;flex:1;font-size:1.15rem}.cal-flip svg{transform:scaleX(-1)}.cal-weekdays,.cal-grid{grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.cal-weekday{text-align:center;color:var(--muted);padding:.25rem 0;font-size:.78rem;font-weight:700}.cal-day{border:1.5px solid var(--line);background:var(--card);font-variant-numeric:tabular-nums;border-radius:12px;align-content:start;justify-items:center;gap:.2rem;min-height:3rem;padding:.3rem .15rem;font-size:1rem;font-weight:700;transition:transform 80ms;display:grid}.cal-day:active{transform:scale(.95)}.cal-day.outside{opacity:.4}.cal-day.is-today{border-color:var(--me);box-shadow:inset 0 0 0 1.5px var(--me);color:var(--me)}.cal-day.selected{background:var(--me-soft);border-color:var(--me)}.cal-day.selected.is-today{box-shadow:inset 0 0 0 1.5px var(--me)}.cal-dots{gap:.15rem;min-height:.45rem;display:flex}.cal-dot{background:var(--tone,var(--muted));border-radius:50%;width:.45rem;height:.45rem}.cal-dot.cancelled{opacity:.35}.cal-views{margin:.25rem 0 .5rem}.cal-week{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:.35rem;display:grid}.cal-week-day{gap:.35rem;min-width:0;display:grid}.cal-week-head{border:1.5px solid var(--line);background:var(--card);font-variant-numeric:tabular-nums;border-radius:12px;justify-items:center;gap:.1rem;padding:.35rem .15rem;transition:transform 80ms;display:grid}.cal-week-head:active{transform:scale(.95)}.cal-week-name{color:var(--muted);font-size:.78rem;font-weight:700}.cal-week-num{font-size:1.1rem;font-weight:800}.cal-week-day.is-today .cal-week-head{border-color:var(--me);box-shadow:inset 0 0 0 1.5px var(--me)}.cal-week-day.is-today .cal-week-num,.cal-week-day.is-today .cal-week-name{color:var(--me)}.cal-week-day.selected .cal-week-head{background:var(--me-soft);border-color:var(--me)}.cal-week-rows{gap:.35rem}.cal-week-row{border-left-width:4px;border-radius:12px;min-height:0;padding:.45rem .5rem .45rem .45rem}.cal-week-row .row-title{font-size:.92rem;line-height:1.2}.cal-week-row .row-meta{font-size:.78rem}@media (width<=699px){.cal-week{grid-template-columns:1fr;gap:.5rem}.cal-week-day{grid-template-columns:3.4rem minmax(0,1fr);align-items:start}.cal-week-head{padding:.45rem .15rem}.cal-week-rows:empty{min-height:3.2rem}}.cal-repeat{margin:0}.cal-repeat-text{color:var(--ink);font-weight:600}.cal-when{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;min-width:3.4rem;font-size:.95rem;font-weight:800}.cal-people{flex:none;display:flex}.cal-people .avatar+.avatar{margin-left:-.5rem}@media (width>=900px){.cal-day{gap:.35rem;min-height:4rem}.cal-dot{width:.55rem;height:.55rem}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:#f3f5f8;--card:#fff;--ink:#1a2230;--muted:#66707f;--line:#e1e5ec;--soft:#eaeef4;--me:#3b6fd9;--me-ink:#fff;--me-soft:color-mix(in oklab, var(--me) 14%, var(--card));--me-line:color-mix(in oklab, var(--me) 38%, var(--card));--coin:#f2b441;--coin-ink:#5c3d00;--coin-soft:#fff1d1;--ok:#2e9e6b;--ok-soft:#dff5ea;--bad:#d9534f;--bad-soft:#fbe3e2;--r-control:14px;--r-card:22px;--tab-h:4.25rem;-webkit-text-size-adjust:100%;padding-top:env(safe-area-inset-top,0px);font-family:Nunito,Nunito Sans,ui-rounded,SF Pro Rounded,system-ui,sans-serif;font-size:17px;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#12171f;--card:#1b222c;--ink:#eef2f6;--muted:#97a1ae;--line:#2a3340;--soft:#232c37;--coin-soft:#3d2f10;--ok-soft:#173a2b;--bad-soft:#43201f}}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);min-height:100dvh;padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom,0px));margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:800;line-height:1.15}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1.05rem}p{margin:0}ul{margin:0;padding:0;list-style:none}:focus-visible{outline:3px solid var(--me);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.page{align-content:start;gap:1rem;max-width:42rem;margin:0 auto;padding:1.25rem 1rem 2rem;display:grid}.page-head{align-items:center;gap:.75rem;display:flex}.page-head h1{flex:1}.section{gap:.5rem;display:grid}.section-title{align-items:baseline;gap:.5rem;padding:.5rem 0 0;display:flex}.section-title h2{flex:1}.section-title .count{color:var(--muted);font-weight:700}.tabbar{z-index:10;padding:.35rem .5rem calc(.35rem + env(safe-area-inset-bottom,0px));background:color-mix(in oklab, var(--card) 92%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{border-radius:var(--r-control);max-width:7.5rem;min-height:3.5rem;color:var(--muted);background:0 0;border:0;flex:1;justify-items:center;gap:.15rem;padding:.4rem .25rem;font-size:.78rem;font-weight:700;display:grid}.tab svg{width:1.6rem;height:1.6rem}.tab[aria-current=page]{color:var(--me);background:var(--me-soft)}.tab-badge{background:var(--bad);color:#fff;text-align:center;border-radius:999px;min-width:1.25rem;height:1.25rem;padding:0 .3rem;font-size:.72rem;font-weight:800;line-height:1.25rem;position:absolute;transform:translate(1.1rem,-.25rem)}.tab{position:relative}@media (width>=900px){body{padding-bottom:0;padding-left:8.5rem}.tabbar{border-top:0;border-right:1px solid var(--line);flex-direction:column;justify-content:flex-start;gap:.35rem;width:8.5rem;padding:1.25rem .75rem;top:0;bottom:0;right:auto}.tab{width:100%;max-width:none;font-size:.9rem}.page{max-width:46rem;padding:2rem 1.5rem 3rem}}.avatar{--size:2.5rem;width:var(--size);height:var(--size);background:color-mix(in oklab, var(--tone,var(--me)) 22%, var(--card));box-shadow:inset 0 0 0 2px color-mix(in oklab, var(--tone,var(--me)) 55%, transparent);font-size:calc(var(--size) * .55);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;line-height:1;display:grid}.avatar.lg{--size:4.5rem}.avatar.xl{--size:6rem}.avatar.sm{--size:1.75rem}.chip{background:var(--soft);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;min-height:2.25rem;padding:.25rem .75rem .25rem .35rem;font-size:.9rem;font-weight:700;display:inline-flex}.chip .avatar{--size:1.6rem}.chip.tone{background:color-mix(in oklab, var(--tone,var(--me)) 16%, var(--card))}.coin{background:var(--coin-soft);color:var(--coin-ink);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .6rem .15rem .4rem;font-weight:800;display:inline-flex}.coin:before{content:"";background:radial-gradient(circle at 35% 35%, #ffe08a, var(--coin) 60%, #c98a12);border-radius:50%;width:1rem;height:1rem;box-shadow:inset 0 0 0 1.5px #0000001f}.coin.big{gap:.6rem;padding:.35rem 1.25rem .35rem .75rem;font-size:2.75rem}.coin.big:before{width:2.25rem;height:2.25rem}@media (prefers-color-scheme:dark){.coin{color:#ffd98a}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);padding:1rem}.hero{border-radius:var(--r-card);background:linear-gradient(135deg, var(--me-soft), var(--card) 70%);border:1px solid var(--me-line);grid-template-columns:auto 1fr;align-items:center;gap:1rem;padding:1.25rem;display:grid}.hero-text{gap:.25rem;min-width:0;display:grid}.hero-text h1{font-size:1.6rem}.hero-sub{color:var(--muted);font-weight:600}.hero-stats{flex-wrap:wrap;grid-column:1/-1;gap:.5rem;display:flex}.btn{border:1px solid var(--line);border-radius:var(--r-control);background:var(--card);justify-content:center;align-items:center;gap:.5rem;min-height:3.25rem;padding:.6rem 1.25rem;font-size:1rem;font-weight:800;transition:transform 80ms;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55}.btn.primary{background:var(--me);color:var(--me-ink);border-color:var(--me)}.btn.ghost{background:0 0}.btn.danger{color:var(--bad);border-color:color-mix(in oklab, var(--bad) 40%, var(--line))}.btn.wide{width:100%}.btn.small{min-height:2.5rem;padding:.35rem .9rem;font-size:.9rem}.btn.icon{min-width:3.25rem;padding:.6rem}.fab{right:max(1rem, env(safe-area-inset-right,0px));bottom:calc(var(--tab-h) + 1rem + env(safe-area-inset-bottom,0px));z-index:9;background:var(--me);min-height:3.5rem;color:var(--me-ink);box-shadow:0 10px 24px color-mix(in oklab, var(--me) 45%, transparent);border:0;border-radius:999px;align-items:center;gap:.5rem;padding:0 1.4rem 0 1.1rem;font-size:1.05rem;font-weight:800;display:inline-flex;position:fixed}.fab svg{width:1.4rem;height:1.4rem}@media (width>=900px){.fab{bottom:1.5rem}}.seg{border-radius:var(--r-control);background:var(--soft);scrollbar-width:none;gap:.25rem;padding:.25rem;display:flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{border-radius:calc(var(--r-control) - 4px);min-height:2.5rem;color:var(--muted);white-space:nowrap;background:0 0;border:0;flex:1 0 auto;padding:.35rem .9rem;font-weight:700}.seg button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #00000014}.rows{gap:.5rem;display:grid}.row{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--tone,var(--line));border-radius:18px;align-items:center;gap:.75rem;min-height:4rem;padding:.6rem .75rem .6rem .6rem;display:flex}.row-body{flex:1;gap:.15rem;min-width:0;display:grid}.row-title{overflow-wrap:anywhere;font-size:1.05rem;font-weight:700}.row-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;font-size:.88rem;font-weight:600;display:flex}.row-meta .late{color:var(--bad)}.row-icon{text-align:center;flex:none;width:2.25rem;font-size:1.75rem;line-height:1}.row.done{opacity:.6}.row.done .row-title{text-decoration:line-through}.row.cancelled .row-title{color:var(--muted);text-decoration:line-through}.row.tappable{cursor:pointer}.check{--size:3.5rem;width:var(--size);height:var(--size);border:3px solid var(--me-line);background:var(--card);color:var(--me-ink);border-radius:50%;flex:none;place-items:center;transition:background .12s,border-color .12s,transform .1s;display:grid}.check svg{opacity:0;width:55%;height:55%;transition:opacity .12s,transform .16s cubic-bezier(.2,1.4,.5,1);transform:scale(.6)}.check:hover,.check:focus-visible{border-color:var(--me)}.check:active{transform:scale(.92)}.check.on,.check[aria-checked=true]{background:var(--ok);border-color:var(--ok);color:#fff}.check.on svg,.check[aria-checked=true] svg{opacity:1;transform:scale(1)}.check:disabled{opacity:.6}.check.busy{border-style:dashed;animation:1.2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.pop{animation:.5s cubic-bezier(.2,1.4,.5,1) both pop}@keyframes pop{0%{opacity:0;transform:translateY(.4rem)scale(.8)}to{opacity:1;transform:none}}.empty{text-align:center;color:var(--muted);justify-items:center;gap:.5rem;padding:2.5rem 1rem;font-weight:600;display:grid}.empty-icon{font-size:3rem;line-height:1}.empty h3{color:var(--ink)}.error,.notice{border-radius:var(--r-control);padding:.75rem 1rem;font-weight:600}.error{background:var(--bad-soft);color:color-mix(in oklab, var(--bad) 75%, var(--ink))}.notice{background:var(--soft)}.muted{color:var(--muted)}.ok-text{color:var(--ok)}.sheet-backdrop{z-index:20;background:#0a0e1473;place-items:end center;padding:0;display:grid;position:fixed;inset:0}.sheet{background:var(--card);border-radius:var(--r-card) var(--r-card) 0 0;width:100%;max-width:40rem;max-height:92dvh;padding:1rem 1rem calc(1.25rem + env(safe-area-inset-bottom,0px));gap:.9rem;animation:.22s ease-out both rise;display:grid;overflow-y:auto}@keyframes rise{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:none}}@media (width>=900px){.sheet-backdrop{align-items:center;padding:1rem}.sheet{border-radius:var(--r-card)}}.sheet-head{align-items:center;gap:.75rem;display:flex}.sheet-head h2{flex:1}.field{color:var(--muted);gap:.3rem;font-size:.92rem;font-weight:700;display:grid}.field>input,.field>select,.field>textarea{border:1.5px solid var(--line);border-radius:var(--r-control);background:var(--paper);min-height:3.25rem;color:var(--ink);padding:.6rem .85rem;font-size:1.05rem;font-weight:600}.field>textarea{resize:vertical;min-height:5rem}.field>input:focus,.field>select:focus,.field>textarea:focus{border-color:var(--me);outline:none}.field-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.field-check{align-items:center;gap:.6rem;min-height:3rem;font-weight:700;display:flex}.field-check input{width:1.5rem;height:1.5rem;accent-color:var(--me)}.form-buttons{gap:.5rem;display:flex}.form-buttons .btn{flex:1}.people{flex-wrap:wrap;gap:.5rem;display:flex}.person{border:2px solid var(--line);background:var(--card);border-radius:999px;align-items:center;gap:.5rem;min-height:3rem;padding:.3rem .9rem .3rem .3rem;font-weight:700;display:inline-flex}.person[aria-pressed=true]{border-color:var(--tone,var(--me));background:color-mix(in oklab, var(--tone,var(--me)) 14%, var(--card))}.options{flex-wrap:wrap;gap:.4rem;display:flex}.option{border:2px solid var(--line);border-radius:var(--r-control);background:var(--card);min-width:3rem;min-height:3rem;padding:.4rem .7rem;font-size:1.05rem;font-weight:800}.option.emoji{font-size:1.5rem}.option[aria-pressed=true]{border-color:var(--me);background:var(--me-soft)}.signin{min-height:calc(100dvh - var(--tab-h));align-content:center;gap:1.5rem;display:grid}.signin h1{text-align:center;font-size:2rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem;display:grid}.tile{border:2px solid var(--line);border-radius:var(--r-card);background:var(--card);place-items:center;gap:.5rem;min-height:8.5rem;padding:1.1rem .5rem;font-size:1.05rem;font-weight:800;transition:transform 80ms;display:grid}.tile:hover,.tile:focus-visible{border-color:var(--tone,var(--me))}.tile:active{transform:scale(.97)}.tile-emoji{font-size:3rem;line-height:1}.pinpad{grid-template-columns:repeat(3,1fr);gap:.6rem;max-width:19rem;margin:0 auto;display:grid}.pinpad button{border:1.5px solid var(--line);border-radius:var(--r-control);background:var(--card);min-height:4.25rem;font-size:1.6rem;font-weight:800}.pinpad button:active{background:var(--me-soft)}.pin-dots{letter-spacing:.4rem;text-align:center;min-height:2.5rem;font-size:1.9rem}.pin-advice{text-align:center;color:var(--muted);font-weight:600}.pin-submit{width:100%;max-width:19rem;margin:0 auto;display:block}.task{border-bottom:1px solid var(--line);align-items:center;gap:.75rem;padding:.9rem 0;display:flex}.task.done .task-title{color:var(--muted);text-decoration:line-through}.task-title{flex:1;font-size:1.05rem}.task-points{color:var(--muted)}.complete-button,.reward-button,.decide-button,.save-button,.grade-button,.new-event-button,.history-toggle,.event-cancel,.agenda-clear,.close-button,.retry-button,.sign-out-button,.month-nav{border:1px solid var(--line);border-radius:var(--r-control);background:var(--card);min-height:3.25rem;padding:.6rem 1.25rem;font-weight:800}.complete-button,.save-button,.new-event-button{background:var(--me);color:var(--me-ink);border-color:var(--me)}.complete-button:disabled,.reward-button:disabled,.decide-button:disabled,.save-button:disabled,.grade-button:disabled,.event-cancel:disabled{opacity:.55}.sign-out-button{background:0 0;margin-top:1.5rem}.history-toggle{width:100%;margin-top:1rem}.balance{text-align:center;margin:.5rem 0;font-size:3.5rem;font-weight:800}.goal{margin:0 0 1rem}.goal-bar{width:100%;height:1rem;accent-color:var(--coin);display:block}.goal-text{text-align:center;margin:.5rem 0 0;font-weight:600}.rewards{gap:.5rem;display:grid}.reward{background:var(--card);border:1px solid var(--line);border-radius:18px;align-items:center;gap:.9rem;padding:.75rem;display:flex}.reward.short{opacity:.7}.reward-icon{font-size:2.5rem;line-height:1}.reward-body{flex:1;display:grid}.reward-name{font-size:1.05rem;font-weight:700}.reward-cost{color:var(--muted);font-weight:600}.reward-waiting{text-align:center;border:1.5px dashed var(--line);border-radius:var(--r-control);color:var(--muted);padding:.5rem .75rem;font-weight:700}.ledger{gap:0;margin-top:.75rem;display:grid}.ledger-entry{border-bottom:1px solid var(--line);align-items:baseline;gap:.75rem;padding:.6rem 0;display:flex}.ledger-delta{font-variant-numeric:tabular-nums;min-width:3.5rem;font-weight:800}.ledger-delta.earn{color:var(--ok)}.ledger-delta.spend{color:var(--bad)}.ledger-reason{flex:1}.ledger-date{font-size:.88rem}.review-list{gap:.75rem;display:grid}.review-task,.review-redemption{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1rem}.review-task-head{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:0 0 .75rem;display:flex}.review-task-title{flex:1;font-size:1.05rem;font-weight:700}.grades{grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));gap:.5rem;display:grid}.grade-button{gap:.1rem;padding:.5rem;display:grid}.grade-points{color:var(--muted);font-size:.85rem}.decisions{gap:.5rem;display:flex}.decide-button{flex:1}.month-bar{align-items:center;gap:.5rem;display:flex}.month-name{text-align:center;text-transform:capitalize;flex:1;font-size:1.3rem}.month-nav{min-width:3rem;padding:0;font-size:1.5rem;line-height:1}.weekdays,.month-grid{grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.weekday{text-align:center;color:var(--muted);padding:.25rem 0;font-size:.8rem;font-weight:700}.day-cell{border:1px solid var(--line);background:var(--card);border-radius:12px;align-content:start;justify-items:center;gap:.2rem;min-height:3.25rem;padding:.3rem .2rem;display:grid}.day-cell.outside{opacity:.45}.day-cell.is-today{border-color:var(--me);color:var(--me);font-weight:800}.day-cell.selected{background:var(--me-soft);border-color:var(--me)}.day-number{font-variant-numeric:tabular-nums;font-size:1rem}.day-dots{gap:.15rem;min-height:.5rem;display:flex}.day-dot{background:var(--muted);border-radius:50%;width:.4rem;height:.4rem}.day-dot.cancelled{opacity:.4}.agenda-head{align-items:baseline;gap:.75rem;margin:1rem 0 .25rem;display:flex}.agenda-title{text-transform:capitalize;flex:1;font-size:1.1rem}.agenda{gap:.5rem;display:grid}.event{background:var(--card);border:1px solid var(--line);border-radius:18px;align-items:center;gap:.75rem;padding:.7rem .75rem;display:flex}.event.cancelled{opacity:.55}.event.cancelled .event-title{text-decoration:line-through}.event-stripe{background:var(--line);border-radius:.15rem;align-self:stretch;width:.3rem}.event-when{min-width:4.5rem;display:grid}.event-date{font-variant-numeric:tabular-nums;font-size:.9rem}.event-time{font-variant-numeric:tabular-nums;font-weight:800}.event-body{flex:1;display:grid}.event-title{font-weight:700}.event-location{color:var(--muted);font-size:.9rem}.event-form{gap:.75rem;margin-top:1rem;display:grid}.participants{border:1px solid var(--line);border-radius:var(--r-control);gap:.5rem;padding:.75rem;display:grid}.participant{align-items:center;gap:.5rem;min-height:2.5rem;display:flex}.balance-card{justify-items:center;gap:.75rem;display:grid}.balance-line{margin:0}.goal{gap:.4rem;width:100%;margin:0;display:grid}.meter{background:var(--soft);border-radius:999px;height:1rem;overflow:hidden}.meter>span{background:linear-gradient(90deg, #ffd166, var(--coin));border-radius:999px;height:100%;transition:width .4s;display:block}.row-icon.big{width:2.75rem;font-size:2.25rem}.row.retired{opacity:.55}.family{gap:.75rem;display:grid}.member-card{border-radius:var(--r-card);background:var(--card);border:1px solid var(--line);border-top:5px solid var(--tone,var(--line));grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem 1rem;padding:1rem;display:grid}.member-name{font-size:1.2rem;font-weight:800}.member-meta{color:var(--muted);flex-wrap:wrap;gap:.25rem .6rem;font-size:.92rem;font-weight:600;display:flex}.member-meta .late{color:var(--bad)}.member-tasks{grid-column:1/-1;gap:.35rem;display:grid}.member-task{background:var(--soft);border-radius:12px;align-items:center;gap:.5rem;min-height:2.25rem;padding:.25rem .5rem;font-weight:600;display:flex}.member-task .row-icon{width:1.6rem;font-size:1.25rem}.member-task .title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.member-task.done{opacity:.55;text-decoration:line-through}.member-task.late{color:var(--bad)}@media (width>=900px){.family{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));align-items:start}}.review-task,.review-redemption{border-left:5px solid var(--tone,var(--line))}.review-task-head{align-items:center;gap:.6rem;margin:0 0 .75rem;display:flex}.review-task-title{flex:1;min-width:0;font-size:1.05rem;font-weight:700;display:grid}.review-who{font-size:.88rem;font-weight:600}.decisions .btn{flex:1}.avatar.robot{background:var(--soft);box-shadow:inset 0 0 0 2px var(--line)}.activity-row.ai{--tone:#7c3aed}.activity-row.system{--tone:var(--muted)}.notes{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.6rem;display:grid}.note{background:color-mix(in oklab, var(--note,#fde68a) 55%, var(--card));border:1px solid color-mix(in oklab, var(--note,#fde68a) 70%, var(--line));min-height:6rem;color:var(--ink);font:inherit;text-align:left;border-radius:16px;align-content:space-between;gap:.5rem;padding:.8rem .9rem;display:grid}.note.tappable{cursor:pointer}.note.pinned{box-shadow:0 4px 12px color-mix(in oklab, var(--note,#fde68a) 40%, transparent)}.note-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.05rem;font-weight:700}.note-foot{color:var(--muted);align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.note-pin{margin-left:auto}.option.swatch{border-color:#0000;width:3rem;min-width:3rem;padding:0}.option.swatch[aria-pressed=true]{border-color:var(--ink)}.streak{color:#7a3a00;background:#ffe4cc;border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .7rem .15rem .45rem;font-weight:800;display:inline-flex}.streak.cold{background:var(--soft);color:var(--muted)}@media (prefers-color-scheme:dark){.streak{color:#ffc48a;background:#4a2a10}}.badges{flex-wrap:wrap;gap:.4rem;display:flex}.badge{background:var(--card);border:1px solid var(--line);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem .25rem .4rem;font-size:.9rem;font-weight:700;display:inline-flex}.badge .badge-icon{font-size:1.2rem;line-height:1}
