:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-page:#0b0e10;--color-bg:#0f1418;--color-surface:#161c21;--color-surface-2:#1d252b;--color-surface-3:#232b31;--color-ink:#edeeea;--color-muted:#8a9299;--color-faint:#7c868d;--color-dim:#5f696f;--color-border:#edeeea12;--color-border-strong:#edeeea24;--color-accent:#e39a2b;--color-accent-text:#e39a2b;--color-on-accent:#0f1418;--color-accent-border:#e39a2b47;--color-accent-surface:#1b2329;--color-track:#2a343b;--color-avatar:#2a343b;--color-danger:#c8553d;--color-danger-text:#e0a092;--color-check-border:#edeeea47;--nav-height:4.5rem;--header-height:3.25rem;--space:1.25rem;--radius-card:18px;--radius-row:14px;--radius-control:12px;color:var(--color-ink);background-color:var(--color-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Archivo,system-ui,-apple-system,Segoe UI,sans-serif;font-weight:400;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (prefers-color-scheme:light){:root{--color-page:#e9e9e3;--color-bg:#f4f4f0;--color-surface:#fff;--color-surface-2:#edede7;--color-surface-3:#e3e3dd;--color-ink:#0f1418;--color-muted:#6b7378;--color-faint:#7a8288;--color-dim:#9ba1a5;--color-border:#0f141814;--color-border-strong:#0f141824;--color-accent-text:#c4831f;--color-accent-border:#e39a2b80;--color-accent-surface:#fff;--color-track:#dcdcd6;--color-avatar:#e3e3dd;--color-danger:#b0492f;--color-danger-text:#b0492f;--color-check-border:#0f141838}}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;min-height:100%;margin:0;overflow-x:hidden}body{min-width:320px}h1{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.375rem;font-weight:800;line-height:1.25}p{color:var(--color-muted);margin:0 0 1rem}a{color:var(--color-accent-text);text-decoration:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button{font:inherit;cursor:pointer}button:disabled{cursor:default}.tick-strip{height:16px;position:relative}.tick-strip--slim{height:12px}.tick-strip__layer{background-image:repeating-linear-gradient(to right, var(--tick-color,var(--color-track)) 0 1.07%, transparent 1.07% 1.334%);position:absolute;inset:0}.tick-strip__layer--fill{--tick-color:var(--color-accent);clip-path:inset(0 var(--tick-remainder,100%) 0 0)}.app-shell{grid-template-rows:var(--header-height) 1fr var(--nav-height);background:var(--color-bg);width:100%;max-width:40rem;min-height:100dvh;margin:0 auto;display:grid}.app-shell__header{padding:0 var(--space);align-items:center;display:flex}.app-shell__brand{color:var(--color-ink);align-items:center;margin:0;display:flex}.app-shell__brand svg{width:auto;height:1.125rem;display:block}.app-shell__main{padding:.25rem var(--space) var(--space);overflow-y:auto}.app-shell__nav{border-top:1px solid var(--color-border-strong);background:var(--color-bg)}.app-shell__nav-list{grid-auto-columns:1fr;grid-auto-flow:column;height:100%;margin:0;padding:.5rem .5rem 0;list-style:none;display:grid}.app-shell__nav-link{letter-spacing:.04em;text-align:center;height:100%;color:var(--color-dim);flex-direction:column;justify-content:flex-start;align-items:center;gap:.4rem;padding:.375rem .25rem;font-size:.6875rem;font-weight:600;display:flex}.app-shell__nav-link svg{width:18px;height:18px;display:block}.app-shell__nav-link--active{color:var(--color-accent-text);font-weight:700}.app-shell__nav-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px;border-radius:8px}.today__header{flex-direction:column;gap:.125rem;margin-bottom:.875rem;display:flex}.today__header h1{letter-spacing:0;color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:600}.day-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);flex-direction:column;gap:.875rem;margin-bottom:.875rem;padding:1.125rem 1.125rem 1rem;display:flex}.day-card--grace{background:var(--color-accent-surface);border-color:#e39a2b6b}.day-card--closed{border-color:var(--color-accent-border)}.day-card__top{justify-content:space-between;align-items:flex-end;gap:.75rem;display:flex}.day-card__count{align-items:baseline;gap:.375rem;margin:0;display:flex}.day-card__kicker{letter-spacing:.16em;text-transform:uppercase;color:var(--color-faint);margin-right:.25rem;font-size:.6875rem;font-weight:700}.day-card__number{letter-spacing:-.03em;color:var(--color-ink);font-size:3.25rem;font-weight:800;line-height:.85}.day-card__total{color:var(--color-dim);font-size:1.125rem;font-weight:700}.day-card .daily-progress{text-align:right;flex-direction:column;align-items:flex-end;gap:.1875rem;margin:0;display:flex}.daily-progress__track{background:var(--color-track);border-radius:999px;width:3.5rem;height:4px;overflow:hidden}.daily-progress__fill{background:var(--color-accent);height:100%;transition:width .15s ease-out}.daily-progress__label{color:var(--color-accent-text);white-space:nowrap;order:-1;margin:0;font-size:1.125rem;font-weight:800;line-height:1}.today__status{color:var(--color-ink);background:0 0;border:0;margin:0;padding:0;font-size:.8125rem;font-weight:600}.today__status--grace{color:var(--color-accent-text)}.today__status--closed{color:var(--color-muted)}.today h2{text-transform:uppercase;letter-spacing:.16em;color:var(--color-faint);margin:var(--space) 0 .625rem;font-size:.6875rem;font-weight:700}.today__tasks{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.task-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-row);gap:.25rem;padding:.75rem .875rem;display:grid}.task-row--open{background:var(--color-accent-surface);border-color:var(--color-accent-border)}.task-row__head{justify-content:space-between;align-items:center;gap:.8125rem;display:flex}.task-row__title{color:var(--color-ink);flex:1;align-items:center;min-height:2.75rem;font-size:.9375rem;font-weight:600;display:flex}.task-row--done .task-row__title{color:var(--color-muted);text-decoration:line-through}.task-row__status{color:var(--color-faint);white-space:nowrap;font-size:.75rem;font-weight:600}.task-row__status--done{color:var(--color-accent-text);font-weight:700}.task-row__description,.task-row__private,.task-row__saving,.task-row__error{color:var(--color-faint);margin:0;font-size:.75rem}.task-row__private{color:var(--color-muted)}.task-row__saving{color:var(--color-faint)}.task-row__error{color:var(--color-danger-text)}.task-row__checkbox{appearance:none;border:1.5px solid var(--color-check-border);cursor:pointer;background:0 0;border-radius:8px;flex:none;place-content:center;width:26px;height:26px;margin:0;display:inline-grid}.task-row__checkbox:checked{border-color:var(--color-accent);background-color:var(--color-accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%230F1418' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:16px 16px}.task-row__checkbox:disabled{opacity:.55;cursor:default}.task-row__checkbox:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.task-row__action button{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface-2);width:100%;min-height:2.75rem;color:var(--color-ink);font:inherit;font-size:.8125rem;font-weight:700}.task-row__action button:disabled{color:var(--color-dim);background:var(--color-surface)}.evidence-form{border:1px solid var(--color-border-strong);border-radius:var(--radius-row);background:var(--color-surface-2);text-align:left;gap:.75rem;margin-top:.75rem;padding:.875rem;display:grid}.evidence-form__title{color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:700}.evidence-form__field{border:0;gap:.25rem;margin:0;padding:0;display:grid}.evidence-form__field legend,.evidence-form__field>label,.evidence-picker__label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-faint);font-size:.6875rem;font-weight:700}.evidence-form__field label:has(input[type=radio]){letter-spacing:0;text-transform:none;min-height:2.75rem;color:var(--color-ink);align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;display:flex}.evidence-form__field input[type=radio]{accent-color:var(--color-accent);width:1.125rem;height:1.125rem}.evidence-form__field input[type=text],.evidence-form__field input[type=time],.evidence-form__field input[type=number]{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);min-height:2.75rem;color:var(--color-ink);font:inherit;padding:0 .75rem;font-size:1rem}.evidence-form__field input:focus-visible{border-color:#e39a2b80;outline:none}.evidence-form__field-error,.evidence-form__error{color:var(--color-danger-text);margin:0;font-size:.8125rem}.evidence-form__progress{color:var(--color-muted);margin:0;font-size:.8125rem}.evidence-form__actions{gap:.5rem;display:flex}.evidence-form__actions button{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);min-height:2.75rem;color:var(--color-ink);font:inherit;background:0 0;flex:1;font-size:.875rem;font-weight:700}.evidence-form__actions button[type=submit]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);font-weight:800}.evidence-form__actions button:disabled{color:var(--color-dim);background:var(--color-surface-3);border-color:#0000}.evidence-picker{gap:.375rem;display:grid}.evidence-picker input[type=file]{color:var(--color-muted);font-size:.875rem}.evidence-picker__preview{gap:.25rem;margin:0;display:grid}.evidence-picker__preview img{object-fit:contain;border-radius:var(--radius-control);background:var(--color-track);width:100%;max-height:14rem}.evidence-picker__preview figcaption,.evidence-picker__status{color:var(--color-muted);margin:0;font-size:.75rem}.evidence-picker__error{color:var(--color-danger-text);margin:0;font-size:.8125rem}.metric-form{background:var(--color-surface-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-row);gap:.75rem;margin-top:.5rem;padding:.875rem;display:grid}.metric-form__title{color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:700}.metric-form__privacy{color:var(--color-muted);margin:0;font-size:.75rem}.metric-form__field{gap:.25rem;display:grid}.metric-form__field label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-faint);font-size:.6875rem;font-weight:700}.metric-form__field input,.metric-form__field select{font:inherit;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);padding:.625rem .75rem;font-size:1rem}.metric-form__field input:focus-visible,.metric-form__field select:focus-visible{border-color:#e39a2b80;outline:none}.metric-form__field select:disabled{color:var(--color-dim);background:var(--color-surface-3)}.metric-form__error{color:var(--color-danger-text);margin:0;font-size:.8125rem}.metric-form__actions{gap:.5rem;display:flex}.metric-form__actions button{min-height:2.75rem;font:inherit;border-radius:var(--radius-control);border:1px solid var(--color-border-strong);color:var(--color-ink);background:0 0;flex:1;padding:.5rem .875rem;font-size:.875rem;font-weight:700}.metric-form__actions button[type=submit]{color:var(--color-on-accent);background:var(--color-accent);border-color:var(--color-accent);font-weight:800}.metric-form__actions button:disabled{color:var(--color-dim);background:var(--color-surface-3);border-color:#0000}.progress{gap:.875rem;display:grid}.progress__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem .75rem;display:flex}.progress__header h1{flex:none;margin:0;font-size:1.375rem}.progress__privacy{flex-basis:100%;order:3}.progress__privacy,.progress__empty{color:var(--color-muted);margin:0;font-size:.8125rem}.progress__badge{letter-spacing:.1em;text-transform:uppercase;color:var(--color-faint);border:1px solid var(--color-border-strong);border-radius:20px;padding:.3125rem .625rem;font-size:.6875rem;font-weight:700}.metric-chart{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);gap:.625rem;padding:1rem;display:grid}.metric-chart__header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.metric-chart__header h3{letter-spacing:.16em;text-transform:uppercase;color:var(--color-faint);margin:0;font-size:.6875rem;font-weight:700}.metric-chart__percent{font-variant-numeric:tabular-nums;color:var(--color-ink);margin:0;font-size:1rem;font-weight:800}.metric-chart__percent--down{color:var(--color-accent-text)}.metric-chart__percent--up{color:var(--color-muted)}.metric-chart__note{color:var(--color-muted);margin:0;font-size:.75rem}.metric-chart__canvas{width:100%}.metric-chart__table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;color:var(--color-ink);font-size:.8125rem}.metric-chart__caption{text-align:left;color:var(--color-muted);padding-bottom:.25rem;font-size:.75rem}.metric-chart__table th,.metric-chart__table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.25rem .5rem .25rem 0}.metric-chart__table thead th{color:var(--color-muted);font-weight:600}.group__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.group__header h1{margin:0}.group__date{color:var(--color-muted);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.group__date input{font:inherit;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-border-strong);color-scheme:inherit;border-radius:10px;padding:.375rem .5rem}.group__members{gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.member-day{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-row);grid-template-columns:auto 1fr;align-items:start;gap:.5rem .75rem;padding:.8125rem .875rem;display:grid}.member-day--viewer{background:var(--color-accent-surface);border-color:var(--color-accent-border)}.member-day__avatar{background:var(--color-avatar);width:34px;height:34px;color:var(--color-ink);border-radius:50%;grid-column:1;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.member-day--viewer .member-day__avatar{background:var(--color-accent);color:var(--color-on-accent);font-weight:800}.member-day__body{grid-column:2;gap:.375rem;min-width:0;display:grid}.member-day__head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.member-day__name{color:var(--color-ink);margin:0;font-size:.875rem;font-weight:700}.member-day__state{color:var(--color-muted);white-space:nowrap;font-size:.75rem;font-weight:600}.member-day__state--done{color:var(--color-accent-text)}.member-day__state--reset{color:var(--color-danger-text)}.member-day__day,.member-day__completion,.member-day__privacy{color:var(--color-muted);margin:0;font-size:.75rem}.member-day__completion--done{color:var(--color-accent-text);font-weight:700}.member-day__pips{flex-wrap:wrap;gap:5px;display:flex}.member-day__pip{background:var(--color-track);border-radius:3px;width:11px;height:11px}.member-day__pip--done{background:var(--color-accent)}.member-day__privacy{color:var(--color-dim);font-size:.6875rem}.member-day__metrics{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.25rem .75rem;margin:0;font-size:.75rem;display:grid}.member-day__metric{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:.5rem;padding-bottom:.125rem;display:flex}.member-day__metric dt{color:var(--color-faint)}.member-day__metric dd{font-variant-numeric:tabular-nums;color:var(--color-ink);margin:0;font-weight:600}.member-day__percent--down{color:var(--color-accent-text)}.member-day__percent--up{color:var(--color-muted)}.member-day__photos{border:1px solid var(--color-border-strong);color:var(--color-ink);background:0 0;border-radius:10px;justify-self:start;padding:.4375rem .8125rem;font-size:.8125rem;font-weight:700}.gallery{gap:.5rem;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.gallery__item{flex:none}.gallery__image{object-fit:cover;border-radius:var(--radius-control);background:var(--color-track);border:1px solid var(--color-border);width:8rem;height:8rem}.gallery__empty{color:var(--color-muted);margin:0;font-size:.8125rem}.reactions{gap:.5rem;display:flex}.reactions__button{border:1px solid var(--color-border-strong);color:var(--color-ink);background:0 0;border-radius:999px;align-items:center;gap:.25rem;padding:.3125rem .6875rem;font-size:.875rem;display:inline-flex}.reactions__button--on{border-color:var(--color-accent);color:var(--color-accent-text);font-weight:700}.reactions__count{font-variant-numeric:tabular-nums}.admin__notice,.admin__empty{color:var(--color-muted);margin:.5rem 0;font-size:.875rem}.admin__reviews{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.review{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);gap:.75rem;padding:1rem;display:grid}.review__header{gap:.25rem;display:grid}.review__member{color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:700}.review__day{color:var(--color-muted);align-items:baseline;gap:.5rem;margin:0;font-size:.8125rem;display:flex}.review__date{font-variant-numeric:tabular-nums}.review__count{color:var(--color-ink);margin:0;font-size:.875rem}.review__missing{background:var(--color-accent-surface);border:1px solid var(--color-accent-border);border-radius:11px;padding:.625rem .75rem}.review__missing h4{text-transform:uppercase;letter-spacing:.1em;color:var(--color-faint);margin:0 0 .25rem;font-size:.6875rem;font-weight:700}.review__missing ul{color:var(--color-ink);margin:0;padding-left:1.125rem;font-size:.875rem}.review__photos-toggle{border:1px solid var(--color-border-strong);color:var(--color-ink);background:0 0;border-radius:999px;justify-self:start;padding:.3125rem .75rem;font-size:.8125rem;font-weight:600}.review__actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.review__warning{color:var(--color-muted);flex-basis:100%;margin:0;font-size:.8125rem}.review__action{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);min-height:2.75rem;color:var(--color-ink);background:0 0;flex:1;padding:.5rem .875rem;font-size:.875rem;font-weight:700}.review__action:disabled{opacity:.6}.review__action--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);font-weight:800}.review__action--danger{border-color:var(--color-danger);color:var(--color-danger-text)}.timezone-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--space);gap:.5rem;padding:1rem;display:grid}.timezone-form h2{color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:700}.timezone-form__note{color:var(--color-muted);margin:0;font-size:.8125rem}.timezone-form label{color:var(--color-muted);gap:.25rem;font-size:.8125rem;font-weight:600;display:grid}.timezone-form select{font:inherit;color:var(--color-ink);background:var(--color-surface-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);padding:.5rem .625rem;font-size:1rem}.timezone-form button{border:1px solid var(--color-accent);border-radius:var(--radius-control);background:var(--color-accent);color:var(--color-on-accent);justify-self:start;padding:.5625rem 1rem;font-size:.875rem;font-weight:800}.timezone-form button:disabled{opacity:.6}.group__history-link,.admin__history-link a{color:var(--color-accent-text);font-size:.8125rem;font-weight:600}.admin__history-link{margin:var(--space) 0 0}.history__entries{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.history__entry{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-row);gap:.375rem;padding:.8125rem .875rem;display:grid}.history__headline{color:var(--color-ink);margin:0;font-size:.875rem;font-weight:600}.history__meta{color:var(--color-muted);margin:0;font-size:.75rem}.history__missing{color:var(--color-muted);margin:0;padding-left:1.125rem;font-size:.8125rem}.history__empty{color:var(--color-muted);font-size:.875rem}.sign-in-page,.profile-setup,.invite-page{background:var(--color-bg);width:100%;max-width:40rem;min-height:100dvh;padding:2.5rem var(--space) 1.75rem;margin:0 auto}.sign-in-page{flex-direction:column;display:flex}.sign-in-page__brand{color:var(--color-ink);margin-bottom:1.375rem}.sign-in-page__brand svg{width:min(210px,60%);height:auto;display:block}.sign-in-page h1{margin:0 0 .25rem;font-size:1.0625rem;font-weight:700}.sign-in-page__tagline{color:var(--color-muted);max-width:280px;margin:0 0 1.25rem;font-size:1.0625rem;line-height:1.5}.sign-in-page .tick-strip{max-width:280px;margin-bottom:2rem}.sign-in-page__hint{color:var(--color-muted);margin:0 0 .75rem;font-size:.8125rem}.sign-in-page form{gap:.4375rem;margin-top:auto;display:grid}.sign-in-page label,.profile-setup label,.invite-member-form label{letter-spacing:.14em;text-transform:uppercase;color:var(--color-faint);font-size:.6875rem;font-weight:700}.sign-in-page input,.profile-setup input,.invite-member-form input,.profile-setup select,.invite-member-form select{border:1px solid var(--color-border-strong);border-radius:var(--radius-row);background:var(--color-surface);min-height:3.25rem;color:var(--color-ink);font:inherit;margin-bottom:.5rem;padding:0 1rem;font-size:1rem;font-weight:600}.sign-in-page input:focus-visible,.profile-setup input:focus-visible,.invite-member-form input:focus-visible{border-color:#e39a2b80;outline:none}.sign-in-page button[type=submit],.profile-setup button[type=submit],.invite-member-form button[type=submit],.invite-page button{border-radius:var(--radius-row);background:var(--color-accent);min-height:3.375rem;color:var(--color-on-accent);font:inherit;border:0;margin-top:.375rem;font-size:.9375rem;font-weight:800}.sign-in-page button[type=submit]:disabled,.profile-setup button[type=submit]:disabled,.invite-member-form button[type=submit]:disabled,.invite-page button:disabled{background:var(--color-surface-3);color:var(--color-dim)}.sign-in-page [role=alert],.profile-setup [role=alert],.invite-page [role=alert],.invite-member-form [role=alert]{color:var(--color-danger-text);margin:.75rem 0 0;font-size:.875rem}.profile-setup h1,.invite-page h1{letter-spacing:-.02em;font-size:1.625rem}.profile-setup form,.invite-member-form form,.invite-member-form{gap:.4375rem;display:grid}
