:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f9f9f7;--surface-1:#fcfcfb;--surface-2:#f3f2ee;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#6f6d68;--grid:#e1e0d9;--axis:#c3c2b7;--border:#0b0b0b1a;--series-1:#2a78d6;--series-2:#eb6834;--accent:#01825a;--accent-ink:#fff;--accent-text:#01825a;--paid:#1c5cab;--secondary:#1f5fa8;--secondary-wash:#e3eefb;--positive:#006300;--positive-wash:#e6f4e6;--manual:#7a4b00;--manual-wash:#fff4d6;--estimated-wash:#eef3fb;--danger:#b42424;--danger-ink:#fff;--danger-wash:#fdeaea;--radius:10px;--shadow:0 1px 2px #0b0b0b0d;color:var(--text-primary);background:var(--page);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.45}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0d0d;--surface-1:#1a1a19;--surface-2:#232321;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#9a988f;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--series-1:#3987e5;--series-2:#d95926;--accent:#3ecf8e;--accent-ink:#06281a;--accent-text:#3ecf8e;--paid:#6da7ec;--secondary:#8fbcf5;--secondary-wash:#1a2c44;--positive:#0ca30c;--positive-wash:#10260f;--manual:#f5c451;--manual-wash:#332707;--estimated-wash:#16202c;--danger:#f07070;--danger-ink:#3a0d0d;--danger-wash:#3a1515;--shadow:none}}*{box-sizing:border-box}body{background:var(--page);margin:0;font-size:15px}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.6rem}h2{font-size:1.1rem}h3{font-size:.95rem}p{margin:0}.muted{color:var(--text-secondary)}.small{font-size:.85rem}.app{max-width:1320px;margin:0 auto;padding:24px 16px 64px}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.stack{gap:20px;display:grid}.split{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:20px;display:grid}.app-topbar{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:20px;display:flex}.app-brand{color:var(--text-primary);letter-spacing:-.01em;font-weight:650;text-decoration:none}.breadcrumb{color:var(--text-secondary);align-items:center;gap:8px;font-size:.88rem;display:flex}.breadcrumb a{color:var(--accent-text);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb [aria-current=page]{color:var(--text-primary)}.module-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:16px;display:grid}.module-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);align-content:start;gap:16px;padding:18px;transition:border-color .15s;display:grid;position:relative}.module-card:hover{border-color:var(--axis)}.module-card:has(.module-card__link:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.module-card__link{border-radius:var(--radius);position:absolute;inset:0}.module-card__link:focus-visible{outline:none}.module-card__header{align-items:flex-start;gap:12px;display:flex}.module-card__header p{margin-top:2px;font-size:.88rem}.module-card__icon{background:var(--secondary-wash);width:44px;height:44px;color:var(--secondary);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.module-card__content{gap:14px;display:grid}.module-card__figures{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:12px;margin:0;display:grid}.module-card__figures dt{color:var(--text-secondary);font-size:.78rem}.module-card__figures dd{margin:2px 0 0;font-size:1.05rem;font-weight:650}.module-card__cta{color:var(--accent-text);font-size:.88rem;font-weight:600}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex;overflow-x:auto}.tab{appearance:none;color:var(--text-secondary);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 14px;font-weight:500;text-decoration:none;display:inline-block}.tab[aria-current=page]{color:var(--text-primary);border-bottom-color:var(--accent)}.tab__badge{background:var(--danger);color:#fff;border-radius:999px;margin-left:6px;padding:0 7px;font-size:.75rem}.button{appearance:none;font:inherit;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer;white-space:nowrap;box-sizing:border-box;border-radius:8px;min-height:38px;padding:8px 14px;font-size:.9rem;font-weight:500}.button:hover:not(:disabled){background:var(--surface-2)}.button:disabled{opacity:.6;cursor:progress}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button--primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.button--danger{color:var(--danger)}.button--danger-solid{background:var(--danger);border-color:var(--danger);color:var(--danger-ink)}.button--danger-solid:hover:not(:disabled){background:var(--danger);filter:brightness(1.1)}.confirm-inline{color:var(--danger);flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.button--ghost{color:var(--accent-text);background:0 0;border-color:#0000}.button--icon{vertical-align:middle;color:var(--text-secondary);justify-content:center;align-items:center;display:inline-flex}.button--icon:hover:not(:disabled){color:var(--text-primary)}.button--small{min-height:28px;padding:4px 10px;font-size:.8rem}.field{color:var(--text-secondary);gap:4px;min-width:0;font-size:.85rem;display:grid}.field>span{align-items:center;gap:6px;min-height:20px;display:flex}fieldset.field{border:0;margin:0;padding:0}fieldset.field>legend{min-height:20px;margin-bottom:4px;padding:0}.check-group{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px 24px;font-size:.85rem;display:flex}.field--wide{flex:100%;grid-column:1/-1}.field--inline{align-items:center;gap:8px;min-height:38px;display:flex}input:not([type=checkbox]):not([type=radio]),select{box-sizing:border-box;height:38px}input[type=search]{appearance:none}select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 17px),calc(100% - 12px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:34px}input,select{font:inherit;color:var(--text-primary);background-color:var(--surface-1);border:1px solid var(--axis);border-radius:8px;min-width:0;padding:7px 10px;font-size:.95rem}input:focus-visible,select:focus-visible,.button:focus-visible,.tab:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input:disabled{opacity:.5}.form-row{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:12px 0 8px;display:flex}.form-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.form-actions{gap:8px;display:flex}.segmented{border:0;gap:0;margin:0;padding:0;display:flex}.segmented legend{margin-bottom:4px;padding:0}.segmented label{border:1px solid var(--axis);background:var(--surface-1);color:var(--text-primary);cursor:pointer;padding:7px 12px;font-size:.9rem}.segmented label:first-of-type{border-radius:8px 0 0 8px}.segmented label:last-of-type{border-left:0;border-radius:0 8px 8px 0}.segmented label.is-selected{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.month-picker{position:relative}.month-picker__trigger{box-sizing:border-box;min-width:150px;height:38px;font:inherit;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--axis);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;font-size:.95rem;display:flex}.month-picker__trigger svg{color:var(--text-secondary);flex:none}.month-picker__trigger:hover{border-color:var(--text-muted)}.month-picker__trigger[aria-expanded=true],.month-picker__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.month-picker__popover{z-index:20;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);width:272px;color:var(--text-primary);padding:12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 28px #00000029}.month-picker__header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.month-picker__nav{width:32px;height:32px;color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:1.3rem;line-height:1}.month-picker__nav:hover:not(:disabled){background:var(--surface-2)}.month-picker__nav:disabled{color:var(--axis);cursor:default}.month-picker__grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.month-picker__month{color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:9px 0;font-size:.9rem;position:relative}.month-picker__month:hover:not(:disabled){background:var(--surface-2)}.month-picker__month:focus-visible,.month-picker__nav:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.month-picker__month[aria-selected=true]{background:var(--accent);color:var(--accent-ink);font-weight:600}.month-picker__month:disabled{color:var(--axis);cursor:default}.month-picker__month.is-highlight:after,.month-picker__dot{content:"";background:var(--series-1);border-radius:50%;width:5px;height:5px;display:inline-block}.month-picker__month.is-highlight:after{position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.month-picker__month.is-highlight[aria-selected=true]:after{background:var(--accent-ink)}.month-picker__footer{border-top:1px solid var(--grid);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:8px;display:flex}.month-picker__legend{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:.78rem;display:flex}.segmented--compact label{padding:6px 12px;font-size:.85rem}.segmented--secondary label.is-selected{background:var(--secondary-wash);border-color:var(--secondary);color:var(--secondary);font-weight:600}.segmented--secondary label+label.is-selected,.segmented--secondary label.is-selected+label{border-left:1px solid var(--secondary)}.segmented--secondary label:first-of-type.is-selected+label{border-left:0}.plan-preview{background:var(--estimated-wash);border-radius:8px;margin:4px 0 6px;padding:8px 12px;font-size:.88rem}.panel,.stat-card,.chart-card,.hero{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{min-width:0;padding:18px}.panel__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.panel__header>div:first-child{gap:4px;max-width:820px;display:grid}.toolbar{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.panel__header:has(.toolbar){align-items:flex-end}.subheading{margin:20px 0 8px}.hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px;padding:20px 22px;display:flex}.hero__label{color:var(--text-secondary);font-weight:500}.hero__value{letter-spacing:-.02em;margin:2px 0 4px;font-size:2.4rem;font-weight:650}.hero__figures{flex-wrap:wrap;gap:16px 32px;display:flex}.hero__figure+.hero__figure{border-left:1px solid var(--grid);padding-left:32px}.hero__figure--paid .hero__value{color:var(--paid)}.hero__detail{color:var(--text-secondary);font-size:.85rem}.hero__progress{flex:280px;gap:14px;max-width:420px;display:grid}.progress-meter{gap:6px;display:grid}.progress{background:var(--surface-2);border-radius:999px;gap:2px;height:10px;display:flex;overflow:hidden}.progress__bar{background:var(--series-1);border-radius:999px;height:100%}.progress__bar--projected{background:repeating-linear-gradient(135deg, var(--series-1) 0 4px, color-mix(in srgb, var(--series-1) 45%, transparent) 4px 8px)}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px;display:grid}.stat-card{align-content:start;gap:4px;padding:14px 16px;display:grid}.stat-card__label{color:var(--text-secondary);font-size:.82rem;font-weight:500}.stat-card__value{letter-spacing:-.01em;font-size:1.45rem;font-weight:650}.stat-card--positive .stat-card__value{color:var(--positive)}.stat-card__detail{color:var(--text-secondary);font-size:.82rem}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:16px;display:grid}.chart-card{min-width:0;margin:0;padding:16px 16px 8px}.chart-card__header{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-bottom:12px;display:flex}.chart-card__header p{margin-top:2px;font-size:.82rem}.chart-legend{color:var(--text-secondary);flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;font-size:.82rem;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:flex}.chart-legend__swatch{background:var(--swatch);border-radius:2px;flex:none;width:14px;height:3px;display:inline-block}.chart-legend__swatch--dashed{background:repeating-linear-gradient(90deg, var(--swatch) 0 5px, transparent 5px 8px)}.chart-tooltip{background:var(--surface-1);border:1px solid var(--border);color:var(--text-primary);border-radius:8px;gap:4px;padding:8px 10px;font-size:.82rem;display:grid;box-shadow:0 4px 16px #0000001f}.chart-tooltip__row{color:var(--text-secondary);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.chart-tooltip__value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.table-scroll{max-width:100%;overflow:auto}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.86rem}.data-table th,.data-table td{text-align:right;border-bottom:1px solid var(--grid);white-space:nowrap;padding:7px 10px}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table th{color:var(--text-secondary);background:var(--surface-1);font-size:.78rem;font-weight:600}.schedule-table{font-size:.82rem}.schedule-table thead th{z-index:1;position:sticky;top:0}.schedule-table+*{margin-top:0}.panel .table-scroll:has(.schedule-table){max-height:70vh}.row-projected td{color:var(--text-secondary);background:var(--estimated-wash)}.divider-row td{color:var(--accent-text);border-bottom:2px solid var(--accent);background:var(--surface-1);padding-top:14px;font-size:.78rem;font-weight:600;text-align:left!important}.recalc-dot{color:var(--series-1);font-size:.7rem}.highlight{color:var(--positive);font-weight:600}.source-manual{color:var(--manual);font-weight:600}.is-manual td{background:var(--manual-wash)}.is-editing td{background:var(--estimated-wash)}.is-error td{background:var(--danger-wash)}.data-table td.actions{text-align:right}.actions .button+.button{margin-left:6px}.cell-input{text-align:right;font-variant-numeric:tabular-nums;width:7.5em;padding:4px 8px}.is-manual .cell-input{border-color:var(--manual);font-weight:600}.badge{background:var(--surface-2);color:var(--text-secondary);border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:600;display:inline-block}.badge--manual{background:var(--manual-wash);color:var(--manual);outline:1px solid var(--manual)}.badge--estimated{background:var(--estimated-wash);color:var(--secondary)}.badge--ok{background:var(--positive-wash);color:var(--positive);padding:4px 12px;font-size:.85rem}.badge--error{background:var(--danger-wash);color:var(--danger);padding:4px 12px;font-size:.85rem}.alert{border-radius:8px;margin-top:8px;padding:8px 12px;font-size:.85rem}.alert--warning{background:var(--manual-wash);color:var(--manual)}.alert--error{background:var(--danger-wash);color:var(--danger)}.empty{text-align:center;color:var(--text-secondary);padding:24px}.facts{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:.9rem;display:grid}.facts dt{color:var(--text-secondary)}.facts dd{margin:0}.backup{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.backup__message{font-size:.85rem}.backup__message--ok{color:var(--positive)}.backup__message--error{color:var(--danger)}@media (width<=640px){.hero__value{font-size:1.9rem}.hero__figure+.hero__figure{border-left:0;padding-left:0}.segmented{flex-wrap:wrap}}.tooltip{display:inline-block;position:relative}.tooltip__trigger{appearance:none;border:1px solid var(--border);color:var(--text-secondary);font:inherit;cursor:help;background:0 0;border-radius:999px;min-width:18px;height:18px;padding:0 4px;font-size:.75rem;line-height:1}.tooltip__bubble{z-index:20;border:1px solid var(--border);background:var(--surface-1);width:max-content;max-width:min(260px,80vw);color:var(--text-primary);text-align:left;border-radius:8px;padding:8px 10px;font-size:.8125rem;font-weight:400;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000026}.modal{z-index:50;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal__window{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;width:min(560px,100%);max-height:calc(100dvh - 32px);padding:18px 20px;overflow:auto;box-shadow:0 12px 40px #0000004d}.modal__header{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal__window .form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;display:grid}.modal__window .form-actions,.modal__window .alert{grid-column:1/-1}.income-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:12px 0;display:grid}.income-card{border:1px solid var(--border);border-radius:10px;align-content:start;gap:10px;min-width:0;margin:0;padding:12px 14px;display:grid}.income-card legend{padding:0 6px;font-weight:600}.share-list{flex-wrap:wrap;gap:4px 20px;margin:6px 0 0;padding:0;list-style:none;display:flex}.share-list--stacked{flex-direction:column}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.empty .button{margin-top:12px}a.button{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.data-table tr.is-over td{background:var(--danger-wash);color:var(--danger);font-weight:500}.data-table th.cell-wrap,.data-table td.cell-wrap{white-space:normal;text-align:left}.source-hint{color:var(--text-secondary);flex-wrap:wrap;gap:2px 14px;margin-top:4px;font-size:.78rem;display:flex}.source-hint strong{color:var(--text-primary);font-weight:500}.plain-fieldset{border:0;min-width:0;margin:0;padding:0}.app-account{color:var(--text-secondary);align-items:center;gap:10px;margin-left:auto;font-size:.9rem;display:flex}.notice{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 9%, var(--surface-1));border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding:10px 12px 10px 14px;font-size:.9rem;line-height:1.4;display:flex}.notice__close{appearance:none;width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:inline-grid}.notice__close:hover{background:var(--surface-2);color:var(--text-primary)}.notice__close:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chips{flex-wrap:wrap;gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--border);background:var(--surface-2);min-height:34px;color:var(--text-primary);border-radius:999px;align-items:center;gap:2px;padding:0 4px 0 12px;font-size:.9rem;display:inline-flex}.chip--archived{color:var(--text-secondary);background:0 0;border-style:dashed}.chip__label{appearance:none;font:inherit;color:inherit;cursor:text;background:0 0;border:0;padding:0}button.chip__label:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.chip__input{border-radius:999px;width:150px;height:28px;margin:3px 0;padding:0 8px}.chip__action{appearance:none;width:26px;height:26px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.chip__action:hover{background:var(--grid);color:var(--text-primary)}.chip__action:focus-visible,.chip__label:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:999px}.chips-add{flex-wrap:wrap;gap:8px;margin:4px 0 12px;display:flex}.chips-add input{flex:200px;max-width:320px}.member-status{flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.85rem;display:flex}.status-pill{border:1px solid var(--border);background:var(--surface-2);min-height:24px;color:var(--text-secondary);border-radius:999px;align-items:center;padding:0 10px;font-size:.8rem;font-weight:550;display:inline-flex}.status-pill--linked{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 12%, var(--surface-1));color:var(--accent-text)}.account-menu{margin-left:auto;position:relative}.account-menu__trigger{appearance:none;border:1px solid var(--border);background:var(--surface-1);min-height:38px;color:var(--text-primary);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 5px;display:inline-flex}.account-menu__trigger:hover{background:var(--surface-2)}.account-menu__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.account-menu__avatar{background:var(--accent);width:28px;height:28px;color:var(--accent-ink);border-radius:50%;place-items:center;font-size:.85rem;font-weight:650;display:inline-grid}.account-menu__name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.9rem;overflow:hidden}.account-menu__panel{z-index:30;border:1px solid var(--border);background:var(--surface-1);border-radius:12px;min-width:240px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #00000040}.account-menu__who{border-bottom:1px solid var(--border);gap:2px;margin-bottom:4px;padding:8px 10px 10px;font-size:.85rem;display:grid}.account-menu__item{appearance:none;width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 10px;font-size:.92rem;text-decoration:none;display:block}.account-menu__item:hover,.account-menu__item:focus-visible{background:var(--surface-2);outline:none}.auth-page{background:var(--page);min-height:100dvh;color:var(--text-primary);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);display:grid}.auth-splash{background:var(--page);place-content:center;justify-items:center;gap:20px;min-height:100dvh;display:grid}.auth-hero{--hero-from:var(--accent);--hero-to:#062f23;color:#fff;background:radial-gradient(900px 500px at 110% -10%, #ffffff38, transparent 60%), radial-gradient(700px 420px at -10% 110%, #00000047, transparent 60%), linear-gradient(150deg, var(--hero-from), var(--hero-to));flex-direction:column;justify-content:space-between;gap:32px;padding:clamp(28px,5vw,56px);display:flex;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.auth-hero{--hero-from:#17543b;--hero-to:#07201a}}.auth-hero:after{content:"";pointer-events:none;border:1px solid #ffffff2e;border-radius:50%;width:360px;height:360px;position:absolute;inset:auto -80px -120px auto;box-shadow:0 0 0 40px #ffffff0a,0 0 0 90px #ffffff08}.auth-hero__brand{letter-spacing:-.01em;align-items:center;gap:12px;font-size:2.8rem;font-weight:650;display:flex}.auth-hero .brand-mark rect:first-child{fill:#fff}.auth-hero .brand-mark rect:not(:first-child){fill:var(--hero-to)}.auth-hero__body{gap:18px;max-width:520px;display:grid}.auth-hero h1{letter-spacing:-.03em;font-size:clamp(2rem,3.6vw,3rem);font-weight:700;line-height:1.08}.auth-hero__body>p{color:#ffffffd9;font-size:1.05rem;line-height:1.55}.auth-hero__features{gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}.auth-hero__features li{color:#ffffffeb;align-items:center;gap:10px;display:flex}.auth-hero__features svg{color:#fff;flex:none}.auth-hero__preview{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:16px;gap:12px;width:min(100%,360px);margin:0;padding:16px 18px 14px;display:grid;position:relative}.auth-hero__preview figcaption{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb3;font-size:.72rem}.auth-preview__row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-preview__row strong{letter-spacing:-.02em;font-size:1.6rem}.auth-preview__row--small{color:#ffffffc7;font-size:.8rem}.auth-preview__bars{align-items:flex-end;gap:8px;height:56px;display:flex}.auth-preview__bars span{background:#ffffff8c;border-radius:5px 5px 2px 2px;flex:1}.auth-preview__bars span:last-child{background:#fff}.auth-main{place-items:center;padding:clamp(20px,4vw,48px);display:grid}.auth-card{gap:20px;width:min(100%,420px);display:grid}.auth-card__brand{align-items:center;gap:10px;font-size:1.1rem;font-weight:650;display:none}.auth-card header{gap:6px;display:grid}.auth-card header h2{letter-spacing:-.02em;font-size:1.65rem}.auth-card header p{color:var(--text-secondary)}.auth-invite{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 10%, var(--surface-1));border-radius:12px;padding:12px 14px;font-size:.92rem;line-height:1.4}.auth-tabs{background:var(--surface-2);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-tabs button{appearance:none;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:40px;padding:10px 12px;font-weight:550}.auth-tabs button.is-active{background:var(--surface-1);color:var(--text-primary);box-shadow:0 1px 3px #0000001f}.auth-form{gap:16px;display:grid}.auth-field{gap:6px;display:grid}.auth-field__top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-field label{font-size:.88rem;font-weight:550}.auth-field__control{display:flex;position:relative}.auth-field input{border:1px solid var(--axis);background:var(--surface-1);width:100%;height:46px;color:var(--text-primary);border-radius:12px;padding:0 14px;font-size:1rem}.auth-field input[type=password]{padding-right:84px}.auth-field__control:has(.auth-field__reveal) input{padding-right:84px}.auth-field input:hover{border-color:var(--text-muted)}.auth-field input:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:0;border-color:var(--accent)}.auth-field input[aria-invalid=true]{border-color:var(--danger)}.auth-field__reveal{appearance:none;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:.85rem;font-weight:550;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.auth-field__reveal:hover{background:var(--surface-2)}.auth-field__hint{color:var(--text-muted);font-size:.8rem}.auth-field__error{color:var(--danger);font-size:.82rem}.auth-strength{color:var(--text-secondary);align-items:center;gap:10px;font-size:.8rem;display:flex}.auth-strength__bars{flex:1;gap:4px;display:flex}.auth-strength__bars span{background:var(--grid);border-radius:3px;flex:1;height:5px}.auth-strength__bars .is-on.is-level-1{background:var(--danger)}.auth-strength__bars .is-on.is-level-2{background:var(--manual)}.auth-strength__bars .is-on.is-level-3,.auth-strength__bars .is-on.is-level-4{background:var(--accent)}.auth-link{appearance:none;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.86rem;font-weight:550}.auth-link:hover{text-decoration:underline}.auth-link--center{justify-self:center}.auth-submit{appearance:none;background:var(--accent);height:48px;color:var(--accent-ink);font:inherit;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;font-size:1rem;font-weight:650;transition:filter .15s,transform 50ms;display:inline-flex}.auth-submit:hover:not(:disabled){filter:brightness(1.06)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.75;cursor:progress}.auth-submit:focus-visible,.auth-tabs button:focus-visible,.auth-link:focus-visible,.auth-field__reveal:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.auth-banner{border-radius:12px;padding:11px 14px;font-size:.9rem;line-height:1.4}.auth-banner--error{color:var(--danger);background:var(--danger-wash);border:1px solid color-mix(in srgb, var(--danger) 40%, transparent)}.auth-banner--ok{color:var(--text-primary);background:color-mix(in srgb, var(--accent) 12%, var(--surface-1));border:1px solid color-mix(in srgb, var(--accent) 45%, transparent)}.auth-privacy{color:var(--text-muted);justify-content:center;align-items:center;gap:6px;font-size:.8rem;display:flex}.auth-spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite auth-spin}.auth-spinner--large{width:30px;height:30px;color:var(--accent)}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.auth-spinner{animation-duration:2s}}@media (width<=880px){.auth-page{grid-template-columns:minmax(0,1fr)}.auth-hero{display:none}.auth-card__brand{display:flex}.auth-main{align-items:start;padding-top:clamp(24px,8vw,56px)}}.verify-icon{background:color-mix(in srgb, var(--accent) 14%, var(--surface-1));width:56px;height:56px;color:var(--accent-text);border-radius:16px;place-items:center;display:grid}.auth-secondary{appearance:none;border:1px solid var(--axis);background:var(--surface-1);height:46px;color:var(--text-primary);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.auth-secondary:hover:not(:disabled){background:var(--surface-2)}.auth-secondary:disabled{opacity:.6;cursor:not-allowed}.auth-secondary:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}.auth-test-box{border:1px dashed var(--axis);color:var(--text-secondary);border-radius:12px;gap:10px;padding:12px 14px;font-size:.88rem;display:grid}.auth-privacy--left{justify-content:flex-start}
