:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:oklch(16.5% .04 32);--bg-lit:oklch(25% .07 28);--bg-shade:oklch(9% .025 30/.75);--panel:oklch(20% .05 30);--surface:oklch(21% .05 30);--surface-raised:oklch(26% .06 28);--lacquer:oklch(23.5% .07 22);--lacquer-hi:oklch(27.5% .085 22);--border:oklch(34% .055 40);--border-strong:oklch(45% .07 60);--text:oklch(95.5% .025 82);--text-muted:oklch(79% .05 72);--text-faint:oklch(62% .05 58);--accent:oklch(56.3% .225 21);--accent-hover:oklch(61% .23 21);--accent-soft:oklch(56.3% .225 21/.16);--accent-ink:oklch(18% .03 21);--accent-on:oklch(98.5% .012 80);--accent-rim:oklch(43% .18 21);--accent-shade:oklch(30% .12 21);--ok:oklch(76% .16 145);--ok-soft:oklch(30% .08 150);--ok-rim:oklch(54% .13 145);--ok-ink:oklch(22% .04 145);--danger:oklch(72% .17 35);--danger-soft:oklch(30% .09 30);--danger-rim:oklch(56% .16 32);--focus:oklch(90% .11 90);--gold:oklch(80% .13 82);--gold-hi:oklch(96% .075 92);--gold-lo:oklch(52% .1 64);--gold-deep:oklch(36% .075 55);--trim-width:2px;--gold-stops:var(--gold-lo), var(--gold-hi) 18%, var(--gold) 36%, var(--gold-lo) 55%, var(--gold-hi) 78%, var(--gold) 100%;--trim:linear-gradient(135deg, var(--gold-stops));--trim-h:linear-gradient(90deg, var(--gold-stops));--trim-v:linear-gradient(180deg, var(--gold-stops));--trim-soft:linear-gradient(135deg, var(--gold-lo), var(--gold) 45%, var(--gold-deep) 70%, var(--gold-lo));--trim-inner:inset 0 0 0 4px var(--well), inset 0 0 0 5px oklch(80% .13 82/.7);--rule:linear-gradient(90deg, transparent, var(--gold-lo) 10%, var(--gold) 50%, var(--gold-lo) 90%, transparent);--row-edge:oklch(52% .1 64/.5);--bevel-hi:oklch(100% 0 0/.09);--bevel-lo:oklch(0% 0 0/.36);--sheen:linear-gradient(180deg, oklch(100% 0 0/.06), oklch(100% 0 0/0) 45%);--gloss:linear-gradient(180deg, oklch(100% 0 0/.26), oklch(100% 0 0/.07) 48%, oklch(100% 0 0/0) 52%);--well:oklch(13% .032 30);--surface-settled:oklch(18% .04 30);--surface-glass:oklch(17% .045 28/.86);--shadow-raised:inset 0 1px 0 var(--bevel-hi), inset 0 -1px 0 var(--bevel-lo), 0 1px 2px oklch(0% 0 0/.4), 0 6px 14px -6px oklch(0% 0 0/.55);--shadow-lifted:inset 0 1px 0 var(--bevel-hi), inset 0 -1px 0 var(--bevel-lo), 0 2px 3px oklch(0% 0 0/.4), 0 12px 22px -8px oklch(0% 0 0/.6);--shadow-pressed:inset 0 2px 4px oklch(0% 0 0/.45), inset 0 -1px 0 var(--bevel-hi);--shadow-well:inset 0 2px 6px oklch(0% 0 0/.5), inset 0 -1px 0 oklch(100% 0 0/.05);--shadow-frame:0 1px 0 oklch(100% 0 0/.04), 0 3px 6px oklch(0% 0 0/.45), 0 18px 36px -14px oklch(0% 0 0/.75);--candy-caramel:oklch(66% .19 47);--candy-caramel-rim:oklch(47% .16 42);--candy-caramel-ink:oklch(99% .005 47);--candy-lemon:oklch(80% .165 88);--candy-lemon-rim:oklch(58% .13 80);--candy-lemon-ink:oklch(28% .07 80);--candy-pistachio:oklch(70% .2 145);--candy-pistachio-rim:oklch(49% .15 145);--candy-pistachio-ink:oklch(20% .06 145);--candy-blueberry:oklch(58% .19 262);--candy-blueberry-rim:oklch(42% .17 262);--candy-blueberry-ink:oklch(99% .005 262);--candy-highlight:radial-gradient(circle at 35% 28%, oklch(100% 0 0/.5), oklch(100% 0 0/0) 45%);--choc-dark:oklch(29% .055 38);--choc-dark-rim:oklch(20% .04 38);--choc-milk:oklch(47% .085 52);--choc-milk-rim:oklch(33% .07 48);--choc-white:oklch(91% .035 85);--choc-white-rim:oklch(74% .05 80);--choc-ruby:oklch(50% .17 12);--choc-ruby-rim:oklch(36% .14 12);--choc-dust:oklch(50% .06 50);--choc-caramel:oklch(74% .13 70);--choc-shine:oklch(100% 0 0/.32);--cup:oklch(47% .075 62);--cup-pleat:oklch(39% .065 56);--cup-well:oklch(33% .055 52);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.005 0 0 0 0 0.0015 0 0 0 0 0.0008 0 0 0 0.95 -0.12'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--corner-tl:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fff1c4'/%3E%3Cstop offset='.35' stop-color='%23d9ac52'/%3E%3Cstop offset='.62' stop-color='%238c6024'/%3E%3Cstop offset='.85' stop-color='%23f1d48a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='' fill='none' stroke-linecap='round'%3E %3Cpath d='M4 4 H16 C12 5.5 9 8 7.2 11 C6 13 5.2 14.5 4 16 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.6'/%3E %3Cpath d='M14 5.6 C19 4 24 4.4 26.2 7 C27.8 9 26.4 11.4 24.2 10.9 C22.6 10.5 22.8 8.6 24.2 8.5' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M5.6 14 C4 19 4.4 24 7 26.2 C9 27.8 11.4 26.4 10.9 24.2 C10.5 22.6 8.6 22.8 8.5 24.2' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M8 8 Q13 9.4 14.6 14.6 Q9.4 13 8 8 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.5'/%3E %3Ccircle cx='16.8' cy='16.8' r='1.2' fill='url(%23g)'/%3E%3C/g%3E%3C/svg%3E");--corner-tr:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fff1c4'/%3E%3Cstop offset='.35' stop-color='%23d9ac52'/%3E%3Cstop offset='.62' stop-color='%238c6024'/%3E%3Cstop offset='.85' stop-color='%23f1d48a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(32 0) scale(-1 1)' fill='none' stroke-linecap='round'%3E %3Cpath d='M4 4 H16 C12 5.5 9 8 7.2 11 C6 13 5.2 14.5 4 16 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.6'/%3E %3Cpath d='M14 5.6 C19 4 24 4.4 26.2 7 C27.8 9 26.4 11.4 24.2 10.9 C22.6 10.5 22.8 8.6 24.2 8.5' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M5.6 14 C4 19 4.4 24 7 26.2 C9 27.8 11.4 26.4 10.9 24.2 C10.5 22.6 8.6 22.8 8.5 24.2' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M8 8 Q13 9.4 14.6 14.6 Q9.4 13 8 8 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.5'/%3E %3Ccircle cx='16.8' cy='16.8' r='1.2' fill='url(%23g)'/%3E%3C/g%3E%3C/svg%3E");--corner-bl:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fff1c4'/%3E%3Cstop offset='.35' stop-color='%23d9ac52'/%3E%3Cstop offset='.62' stop-color='%238c6024'/%3E%3Cstop offset='.85' stop-color='%23f1d48a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(0 32) scale(1 -1)' fill='none' stroke-linecap='round'%3E %3Cpath d='M4 4 H16 C12 5.5 9 8 7.2 11 C6 13 5.2 14.5 4 16 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.6'/%3E %3Cpath d='M14 5.6 C19 4 24 4.4 26.2 7 C27.8 9 26.4 11.4 24.2 10.9 C22.6 10.5 22.8 8.6 24.2 8.5' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M5.6 14 C4 19 4.4 24 7 26.2 C9 27.8 11.4 26.4 10.9 24.2 C10.5 22.6 8.6 22.8 8.5 24.2' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M8 8 Q13 9.4 14.6 14.6 Q9.4 13 8 8 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.5'/%3E %3Ccircle cx='16.8' cy='16.8' r='1.2' fill='url(%23g)'/%3E%3C/g%3E%3C/svg%3E");--corner-br:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fff1c4'/%3E%3Cstop offset='.35' stop-color='%23d9ac52'/%3E%3Cstop offset='.62' stop-color='%238c6024'/%3E%3Cstop offset='.85' stop-color='%23f1d48a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(32 32) scale(-1 -1)' fill='none' stroke-linecap='round'%3E %3Cpath d='M4 4 H16 C12 5.5 9 8 7.2 11 C6 13 5.2 14.5 4 16 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.6'/%3E %3Cpath d='M14 5.6 C19 4 24 4.4 26.2 7 C27.8 9 26.4 11.4 24.2 10.9 C22.6 10.5 22.8 8.6 24.2 8.5' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M5.6 14 C4 19 4.4 24 7 26.2 C9 27.8 11.4 26.4 10.9 24.2 C10.5 22.6 8.6 22.8 8.5 24.2' stroke='url(%23g)' stroke-width='1.4'/%3E %3Cpath d='M8 8 Q13 9.4 14.6 14.6 Q9.4 13 8 8 Z' fill='url(%23g)' stroke='%231d0905' stroke-width='.5'/%3E %3Ccircle cx='16.8' cy='16.8' r='1.2' fill='url(%23g)'/%3E%3C/g%3E%3C/svg%3E");--damask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='%23e2b866' fill-opacity='.03' stroke='%23e2b866' stroke-opacity='.045' stroke-width='1'%3E %3Cpath d='M48 4 L92 48 L48 92 L4 48 Z' fill='none'/%3E %3Cpath d='M48 28 C55 37 55 44 48 48 C41 44 41 37 48 28 Z M48 68 C55 59 55 52 48 48 C41 52 41 59 48 68 Z M28 48 C37 41 44 41 48 48 C44 55 37 55 28 48 Z M68 48 C59 41 52 41 48 48 C52 55 59 55 68 48 Z'/%3E %3Ccircle cx='48' cy='48' r='2'/%3E%3Ccircle cx='0' cy='0' r='3'/%3E%3Ccircle cx='96' cy='0' r='3'/%3E%3Ccircle cx='0' cy='96' r='3'/%3E%3Ccircle cx='96' cy='96' r='3'/%3E%3C/g%3E%3C/svg%3E");--flourish:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='16' viewBox='0 0 56 16'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23fff1c4'/%3E%3Cstop offset='.35' stop-color='%23d9ac52'/%3E%3Cstop offset='.62' stop-color='%238c6024'/%3E%3Cstop offset='.85' stop-color='%23f1d48a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='url(%23g)' stroke-width='1.3' stroke-linecap='round'%3E %3Cpath d='M2 10 C8 10 11 4.5 16 5 C20.5 5.5 20.5 11 17 11 C14.6 11 14.6 8.4 16.4 8.2'/%3E %3Cpath d='M16 5 C25 3.5 31 12.5 41 9.5 C45 8.3 48 6.5 54 8'/%3E %3Cpath d='M33 9.8 C35 13 38.5 13.5 40 12'/%3E%3C/g%3E%3Ccircle cx='27' cy='6.2' r='1.2' fill='url(%23g)'/%3E%3C/svg%3E");--frame-corners:var(--corner-tl) top left / 32px no-repeat, var(--corner-tr) top right / 32px no-repeat, var(--corner-bl) bottom left / 32px no-repeat, var(--corner-br) bottom right / 32px no-repeat;--font-display:"Fraunces", Georgia, serif;--font-sans:"Geist", "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;--radius-sm:8px;--radius-md:14px;--radius-lg:18px;--radius-full:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--sidebar-width:264px;--tabbar-height:64px;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.12s;--dur-med:.22s}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--sheen) padding-box, linear-gradient(var(--surface-raised), var(--surface-raised)) padding-box, var(--trim-soft) border-box;box-shadow:var(--shadow-raised);white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:filter var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:1px solid #0000;font-weight:500;display:inline-flex}.button:hover:not(:disabled){background:var(--sheen) padding-box, linear-gradient(var(--lacquer-hi), var(--lacquer-hi)) padding-box, var(--trim) border-box}.button:active:not(:disabled){box-shadow:var(--shadow-pressed);transform:translateY(1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button--primary{background:var(--gloss) padding-box, linear-gradient(var(--accent), var(--accent)) padding-box, var(--trim) border-box;color:var(--accent-on);font-family:var(--font-display);font-variation-settings:"SOFT" 100;letter-spacing:.01em;text-shadow:0 1px 0 oklch(from var(--accent-shade) l c h / .8);box-shadow:inset 0 0 0 1px oklch(from var(--accent-shade) l c h / .7), inset 0 2px 0 oklch(100% 0 0/.18), inset 0 -3px 0 oklch(from var(--accent-shade) l c h / .75), 0 2px 0 var(--gold-deep), 0 10px 18px -8px oklch(0% 0 0/.75);border-width:1.5px;font-size:16px;font-weight:600}.button--primary:hover:not(:disabled){background:var(--gloss) padding-box, linear-gradient(var(--accent-hover), var(--accent-hover)) padding-box, var(--trim) border-box}.button--primary:active:not(:disabled){box-shadow:inset 0 0 0 1px oklch(from var(--accent-shade) l c h / .7), inset 0 3px 6px oklch(from var(--accent-shade) l c h / .9), 0 1px 0 var(--gold-deep);transform:translateY(1px)}.button--sm{min-height:38px;padding:0 var(--space-3);gap:6px;font-size:14px}.button--primary.button--sm{min-height:40px;padding:0 var(--space-4);font-size:15px}.button--ghost{box-shadow:none;color:var(--text-muted);background:0 0;border-color:#0000}.button--ghost:hover:not(:disabled){background:oklch(from var(--gold) l c h / .08);color:var(--gold-hi);border-color:#0000}.button--danger{background:var(--gloss) padding-box, linear-gradient(var(--danger), var(--danger)) padding-box, var(--trim-soft) border-box;color:var(--accent-ink);font-weight:600}.button--danger:hover:not(:disabled){filter:brightness(1.08);background:var(--gloss) padding-box, linear-gradient(var(--danger), var(--danger)) padding-box, var(--trim) border-box}.icon-button{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-muted);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;place-items:center;padding:0;display:inline-grid}.icon-button:hover:not(:disabled){border-color:oklch(from var(--gold-lo) l c h / .7);background:var(--surface-raised);color:var(--gold-hi)}.icon-button:active:not(:disabled){box-shadow:var(--shadow-pressed)}.field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.field__label{color:var(--text-muted);font-size:14px;font-weight:500}.field__input{width:100%;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--row-edge);background:var(--well);box-shadow:var(--shadow-well);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);font-size:16px}.field__input:hover{border-color:var(--gold-lo)}.field__input:focus-visible{border-color:var(--focus);box-shadow:var(--shadow-well), 0 0 0 1px var(--focus);outline:none}.field__input[aria-invalid=true]{border-color:var(--danger)}textarea.field__input{min-height:80px;padding:var(--space-3);resize:vertical}select.field__input{appearance:none;padding-right:var(--space-6);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23d9ac52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:calc(100% - 12px);background-repeat:no-repeat}.field__hint{color:var(--danger);font-size:13px}.field__hint--quiet{color:var(--text-muted)}.switch{justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;min-height:44px;display:flex}.switch input{appearance:none;border-radius:var(--radius-full);background:var(--well);width:44px;height:26px;box-shadow:var(--shadow-well), inset 0 0 0 1px var(--row-edge);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);flex:none;margin:0;position:relative}.switch input:after{content:"";background:radial-gradient(circle at 35% 30%, oklch(100% 0 0), var(--text) 45%, oklch(80% .012 60));width:20px;height:20px;transition:transform var(--dur-med) var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px oklch(0% 0 0/.5)}.switch input:checked{background:var(--gloss), var(--accent);box-shadow:inset 0 1px 3px oklch(from var(--accent-shade) l c h / .7), inset 0 0 0 1px var(--gold)}.switch input:checked:after{transform:translate(18px)}.badge{align-items:center;gap:var(--space-1);padding:1px var(--space-2);border:1px solid oklch(from var(--gold-lo) l c h / .8);border-radius:var(--radius-full);white-space:nowrap;background:var(--sheen), var(--surface-raised);box-shadow:inset 0 1px 0 var(--bevel-hi), 0 1px 1px oklch(0% 0 0/.4);color:var(--gold);font-size:12px;font-weight:600;display:inline-flex}.badge--ok{background:var(--sheen), var(--ok-soft);color:var(--ok)}.badge--danger{background:var(--sheen), var(--danger-soft);color:var(--danger)}.banner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--danger-rim);border-radius:var(--radius-sm);background:var(--sheen), var(--danger-soft);box-shadow:var(--shadow-raised);color:var(--danger);display:flex}.frame{border:var(--trim-width) solid transparent;border-radius:var(--radius-md);background:var(--damask) padding-box, var(--sheen) padding-box, linear-gradient(var(--panel), var(--panel)) padding-box, var(--trim) border-box;box-shadow:var(--trim-inner), var(--shadow-frame);position:relative}.frame:before{content:"";z-index:1;border-radius:inherit;background:var(--frame-corners);pointer-events:none;position:absolute;inset:0}.frame-header{background:var(--rule) center bottom / calc(100% - 2 * var(--space-4)) 1px no-repeat}.page__header h1:after,.frame h2:after{content:"";vertical-align:.1em;background:var(--flourish) center / contain no-repeat;width:44px;height:13px;margin-left:10px;display:inline-block}.page__header h1:after{vertical-align:.15em;width:60px;height:18px;margin-left:14px}.medallion{border:var(--trim-width) solid transparent;background:var(--sheen) padding-box, linear-gradient(var(--lacquer), var(--lacquer)) padding-box, var(--trim) border-box;width:48px;height:48px;box-shadow:inset 0 0 0 3px var(--well), inset 0 0 0 4px oklch(80% .13 82/.55), 0 2px 4px oklch(0% 0 0/.5);color:var(--gold);border-radius:50%;flex:none;place-items:center;display:inline-grid}.medallion svg{filter:drop-shadow(0 1px oklch(0% 0 0/.6))}@media (width<=480px){.page__header h1:after{width:44px;height:13px;margin-left:10px}.frame h2:after{display:none}.medallion{width:38px;height:38px}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--grain), radial-gradient(ellipse 120% 90% at 50% 40%, transparent 45%, var(--bg-shade)), radial-gradient(ellipse 70% 55% at 58% 30%, var(--bg-lit), transparent 75%), var(--damask), var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-attachment:fixed;font-size:16px;line-height:1.5}*{scrollbar-width:thin;scrollbar-color:var(--gold-deep) transparent}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-family:var(--font-display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:600}p{margin:0}.money{font-family:var(--font-display);font-variant-numeric:lining-nums tabular-nums;font-variation-settings:"SOFT" 50;letter-spacing:0;font-weight:600}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.login{min-height:100dvh;padding:var(--space-5);place-items:center;display:grid}.login__form{gap:var(--space-4);width:min(400px,100%);padding:var(--space-7) var(--space-6) var(--space-6);border-radius:var(--radius-lg);flex-direction:column;display:flex}.login__brand{justify-content:center;align-items:center;gap:var(--space-3);margin:calc(var(--space-4) * -1) 0 var(--space-3);padding-bottom:var(--space-4);background:var(--rule) center bottom / 100% 1px no-repeat;display:flex}.login__brand h1{justify-content:center;width:100%;display:flex}.login__brand img{filter:drop-shadow(0 3px 3px oklch(0% 0 0/.6));width:100%;max-width:260px;height:auto}.login__key{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.login__or{align-items:center;gap:var(--space-3);color:var(--text-faint);font-size:13px;display:flex}.login__or:before,.login__or:after{content:"";background:var(--rule);flex:1;height:1px}.shell{min-height:100dvh}.shell__main{min-width:0;padding:var(--space-4) var(--space-4) calc(var(--tabbar-height) + var(--space-5) + env(safe-area-inset-bottom))}.shell__topbar{padding:calc(var(--space-2) + env(safe-area-inset-top)) var(--space-2) var(--space-2) var(--space-4);background:var(--rule) center bottom / calc(100% - 2 * var(--space-4)) 1px no-repeat;justify-content:space-between;align-items:center;display:flex}.shell__wordmark{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em;font-size:22px;font-weight:600;display:flex}.shell__wordmark img{filter:drop-shadow(0 2px 2px oklch(0% 0 0/.5))}.shell__brand{display:none}.shell__panel{display:contents}.shell__sidebar{z-index:10;height:calc(var(--tabbar-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--trim-h) top / 100% var(--trim-width) no-repeat, linear-gradient(var(--gold-lo), var(--gold-lo)) 0 5px / 100% 1px no-repeat, var(--surface-glass);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);position:fixed;inset:auto 0 0;box-shadow:0 -10px 24px -12px oklch(0% 0 0/.75)}.shell__nav{height:var(--tabbar-height);display:flex}.shell__link{border-radius:var(--radius-sm);min-height:44px;color:var(--text-faint);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding-top:4px;font-size:12px;font-weight:500;text-decoration:none;display:flex}.shell__link[aria-current=page]{color:var(--gold-hi);font-weight:600}.shell__link[data-wide-only],.shell__arrow{display:none}.shell__settings[aria-current=page]{color:var(--gold-hi)}.shell__candy{--candy:var(--accent);--candy-rim:var(--accent-rim);--candy-ink:var(--accent-on);--candy-setting:var(--gold-deep);border:1px solid var(--candy-rim);background:var(--candy-highlight), var(--candy);width:30px;height:30px;box-shadow:inset 0 -2px 0 oklch(from var(--candy-rim) l c h / .8), 0 0 0 2px var(--well), 0 0 0 3px var(--candy-setting), 0 2px 3px 1px oklch(0% 0 0/.5);color:var(--candy-ink);filter:saturate(.85)brightness(.88);transition:filter var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:inline-grid}.shell__candy[data-candy=caramel]{--candy:var(--candy-caramel);--candy-rim:var(--candy-caramel-rim);--candy-ink:var(--candy-caramel-ink)}.shell__candy[data-candy=lemon]{--candy:var(--candy-lemon);--candy-rim:var(--candy-lemon-rim);--candy-ink:var(--candy-lemon-ink)}.shell__candy[data-candy=pistachio]{--candy:var(--candy-pistachio);--candy-rim:var(--candy-pistachio-rim);--candy-ink:var(--candy-pistachio-ink)}.shell__candy[data-candy=blueberry]{--candy:var(--candy-blueberry);--candy-rim:var(--candy-blueberry-rim);--candy-ink:var(--candy-blueberry-ink)}.shell__candy[data-candy=cocoa]{--candy:var(--surface-raised);--candy-rim:var(--border-strong);--candy-ink:var(--gold)}.shell__link:hover .shell__candy,.shell__link:focus-visible .shell__candy,.shell__link[aria-current=page] .shell__candy{--candy-setting:var(--gold);filter:none}.shell__link:active .shell__candy{transform:scale(.9)}@media (width>=900px){.shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);display:grid}.shell__sidebar{height:100dvh;padding:var(--space-4) 0 var(--space-4) var(--space-4);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;display:flex;position:sticky;top:0}.shell__panel{gap:var(--space-2);min-width:0;padding:var(--space-6) var(--space-4) var(--space-7);border:var(--trim-width) solid transparent;border-radius:var(--radius-lg);background:var(--flourish) center bottom 22px / 72px 20px no-repeat padding-box, var(--damask) padding-box, var(--grain) padding-box, linear-gradient(180deg, var(--surface), var(--well)) padding-box, var(--trim) border-box;box-shadow:var(--trim-inner), var(--shadow-frame);flex-direction:column;flex:1;display:flex;position:relative}.shell__panel:before{content:"";border-radius:inherit;background:var(--frame-corners);pointer-events:none;position:absolute;inset:0}.shell__topbar{display:none}.shell__brand{margin:calc(var(--space-2) * -1) 0 var(--space-4);padding:0 0 var(--space-4);background:var(--rule) center bottom / 100% 1px no-repeat;justify-content:center;display:flex}.shell__brand img{filter:drop-shadow(0 3px 3px oklch(0% 0 0/.6));width:100%;max-width:170px;height:auto}.shell__nav{flex-direction:column;gap:6px;height:auto}.shell__link,.shell__link[data-wide-only]{justify-content:flex-start;gap:var(--space-3);min-height:50px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-family:var(--font-display);font-variation-settings:"SOFT" 100;border:1.5px solid #0000;flex-direction:row;flex:none;font-size:17px;display:flex}.shell__link:hover{color:var(--text);background:linear-gradient(oklch(from var(--gold) l c h / .07), oklch(from var(--gold) l c h / .07)) padding-box, linear-gradient(oklch(from var(--gold-lo) l c h / .45), oklch(from var(--gold-lo) l c h / .45)) border-box}.shell__link[aria-current=page],.shell__link[aria-current=page]:hover{color:var(--accent-on);text-shadow:0 1px 0 oklch(from var(--accent-shade) l c h / .8);background:var(--gloss) padding-box, linear-gradient(90deg, var(--accent-rim), var(--accent) 40%) padding-box, var(--trim) border-box;box-shadow:inset 0 0 0 1px oklch(from var(--accent-shade) l c h / .7), inset 0 -3px 0 oklch(from var(--accent-shade) l c h / .6), 0 2px 0 var(--gold-deep), 0 10px 18px -8px oklch(0% 0 0/.75);font-weight:600}.shell__link[aria-current=page] .shell__arrow{color:var(--gold-hi);margin-left:auto;display:block}.shell__main{padding:var(--space-6) var(--space-6) var(--space-7)}}.dialog{border-radius:var(--radius-lg);width:min(520px,100% - 32px);max-height:calc(100dvh - 64px);color:var(--text);padding:0;position:fixed;overflow:hidden}.dialog[open]{animation:dialog-in var(--dur-med) var(--ease-out);flex-direction:column;display:flex}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:oklch(9% .025 30/.78)}.dialog__body{min-height:0;padding:var(--space-6);overflow:auto}.dialog__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) var(--space-4) 0;padding-bottom:var(--space-3);background:var(--rule) center bottom / 100% 1px no-repeat;display:flex}.dialog__header h2{font-size:23px}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=640px){.dialog{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%;padding-bottom:env(safe-area-inset-bottom);border-bottom:0;margin:auto 0 0}.dialog__body{padding:var(--space-5)}.dialog[open]{animation-name:sheet-in}@keyframes sheet-in{0%{transform:translateY(100%)}}}.choc{--choc-fill:var(--choc-dark);--choc-rim:var(--choc-dark-rim);filter:drop-shadow(0 2px 1.5px oklch(0% 0 0/.5));display:block;overflow:visible}.choc[data-kind=caramel],.choc[data-kind=praline]{--choc-fill:var(--choc-milk);--choc-rim:var(--choc-milk-rim)}.choc[data-kind=dome]{--choc-fill:var(--choc-white);--choc-rim:var(--choc-white-rim)}.choc[data-kind=heart]{--choc-fill:var(--choc-ruby);--choc-rim:var(--choc-ruby-rim)}.choc__body{fill:var(--choc-fill);stroke:var(--choc-rim);stroke-width:1.5px}.choc__dust{fill:var(--choc-dust)}.choc[data-kind=praline] .choc__dust{fill:var(--choc-caramel)}.choc__ridge{fill:none;stroke:var(--choc-milk-rim);stroke-width:1.2px;stroke-linecap:round}.choc__drizzle{fill:none;stroke:var(--choc-caramel);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.choc__swirl{fill:none;stroke:var(--choc-white-rim);stroke-width:1.4px;stroke-linecap:round}.choc__cherry{fill:var(--accent);stroke:var(--accent-rim);stroke-width:1px}.choc__stem{fill:none;stroke:var(--candy-pistachio-rim);stroke-width:1.3px;stroke-linecap:round}.choc__shine{fill:var(--choc-shine)}.choc[data-kind=dome] .choc__shine{fill:oklch(100% 0 0/.7)}.choc-box__header{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);color:var(--gold);font-size:14px;font-weight:500;display:flex}.choc-box__header h2{color:var(--text);font-size:21px}.choc-box__grid{gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-5);grid-template-columns:repeat(auto-fill,minmax(112px,1fr));margin:0;list-style:none;display:grid}.piece__button{width:100%;min-width:0;padding:var(--space-3) var(--space-1) var(--space-2);border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--well);box-shadow:var(--shadow-well);color:inherit;cursor:pointer;touch-action:manipulation;transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);flex-direction:column;align-items:center;gap:2px;display:flex}.piece__button:hover:not(:disabled){border-color:var(--gold);background:var(--surface-settled)}.piece__button:disabled{cursor:default}.piece__cup{width:64px;height:64px;margin-bottom:var(--space-1);background:radial-gradient(circle, var(--cup-well) 0 54%, transparent 56%), repeating-conic-gradient(var(--cup) 0 7.5deg, var(--cup-pleat) 7.5deg 15deg);box-shadow:inset 0 2px 4px oklch(0% 0 0/.45), 0 1px 0 var(--bevel-hi);border-radius:50%;place-items:center;display:grid;position:relative}.piece__choc{width:48px;height:48px;transition:transform var(--dur-fast) var(--ease-out);grid-area:1/1}.piece__button:hover:not(:disabled) .piece__choc{transform:translateY(-2px)}.piece__button:active:not(:disabled) .piece__choc{transform:scale(.92)}.piece__check{color:var(--gold);opacity:0;transition:opacity var(--dur-med) var(--ease-out), transform var(--dur-med) var(--ease-out);grid-area:1/1;transform:scale(.6)}.piece[data-settled] .piece__check{opacity:.85;transition-delay:.26s;transform:none}.piece[data-settled] .piece__choc{opacity:0;pointer-events:none;transform:translateY(-26px)scale(.8)rotate(-10deg)}.piece[data-motion=out] .piece__choc{animation:choc-out .56s var(--ease-out) both}.piece[data-motion=in] .piece__choc{animation:choc-in .42s var(--ease-out) both}@keyframes choc-out{0%{opacity:1;transform:none}40%{opacity:1;transform:translateY(-14px)scale(1.12)rotate(-6deg)}to{opacity:0;transform:translateY(-26px)scale(.8)rotate(-10deg)}}@keyframes choc-in{0%{opacity:0;transform:translateY(-26px)scale(.8)rotate(-10deg)}70%{opacity:1;transform:translateY(2px)scale(1)}to{opacity:1;transform:none}}.piece__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:500;overflow:hidden}.piece__amount{color:var(--gold);font-size:14px}.piece[data-settled] .piece__name{color:var(--text-muted)}.piece[data-settled] .piece__amount{color:var(--text-faint)}.piece[data-late] .piece__amount{color:var(--danger)}@media (width<=480px){.choc-box__grid{gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-4);grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.piece__cup{width:58px;height:58px}.piece__choc{width:44px;height:44px}.choc-box__header{padding:var(--space-4) var(--space-4) var(--space-3)}.choc-box__header h2{font-size:19px}}.page{gap:var(--space-6);flex-direction:column;display:flex}.page__header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);display:flex}.page__header h1{letter-spacing:-.015em;text-shadow:0 2px oklch(0% 0 0/.5);font-size:clamp(32px,4.4vw,48px);font-weight:600;line-height:1.05}.page__sub{margin-top:var(--space-1);color:var(--text-muted)}.empty{padding:var(--space-6) var(--space-5);border:1px dashed var(--gold-lo);border-radius:var(--radius-md);background:var(--damask), var(--well);box-shadow:var(--shadow-well);color:var(--text-muted);text-align:center}.bill-list{gap:var(--space-2);padding:var(--space-4);margin:0;list-style:none;display:grid}.bill-row{align-items:center;gap:2px var(--space-3);width:100%;min-height:64px;padding:var(--space-3) var(--space-4);border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--sheen), var(--lacquer);box-shadow:var(--shadow-raised);text-align:left;cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name amount""next schedule";display:grid}.bill-row:hover{border-color:var(--gold);background:var(--sheen), var(--lacquer-hi);box-shadow:var(--shadow-lifted);transform:translateY(-1px)}.bill-row:active{background:var(--lacquer);box-shadow:var(--shadow-pressed);transform:translateY(1px)}.bill-row__name{font-family:var(--font-display);font-variation-settings:"SOFT" 100;text-overflow:ellipsis;white-space:nowrap;grid-area:name;font-size:17px;font-weight:600;overflow:hidden}.bill-row__amount{color:var(--gold);text-align:right;grid-area:amount;font-size:17px}.bill-row__next{color:var(--text-muted);grid-area:next;font-size:14px}.bill-row__schedule{justify-content:flex-end;align-items:center;gap:var(--space-2);color:var(--text-muted);white-space:nowrap;grid-area:schedule;font-size:14px;display:flex}.bill-row__chevron{color:var(--gold-lo);display:none}@media (width>=760px){.bill-row{gap:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(0,1.2fr) minmax(96px,auto) 18px;grid-template-areas:"name schedule next amount chevron";min-height:56px}.bill-row__schedule{justify-content:flex-start}.bill-row__next,.bill-row__schedule{font-size:15px}.bill-row__chevron{grid-area:chevron;display:block}}.archived{gap:var(--space-3);display:grid}.archived summary{align-items:center;gap:var(--space-2);width:fit-content;min-height:44px;color:var(--text-muted);cursor:pointer;font-weight:500;list-style:none;display:inline-flex}.archived summary::-webkit-details-marker{display:none}.archived summary:hover{color:var(--gold-hi)}.archived__chevron{transition:transform var(--dur-fast) var(--ease-out)}.archived[open] .archived__chevron{transform:rotate(90deg)}.archived__count{color:var(--text-faint)}.archived .bill-row{opacity:.7}.occurrence-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.occurrence{align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-2) var(--space-4) var(--space-2) var(--space-1);border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--sheen), var(--lacquer);box-shadow:var(--shadow-raised);transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-med) var(--ease-out), box-shadow var(--dur-med) var(--ease-out);grid-template-columns:44px minmax(0,1fr);display:grid}.occurrence:hover{border-color:var(--gold)}.occurrence[data-settled]{border-color:oklch(from var(--gold-lo) l c h / .25);background:var(--surface-settled);box-shadow:inset 0 1px 0 var(--bevel-hi)}.occurrence__toggle{color:#0000;cursor:pointer;touch-action:manipulation;background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;display:grid}.occurrence__toggle svg{box-sizing:content-box;border:1px solid var(--gold-lo);background:var(--well);box-shadow:var(--shadow-well);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:50%;padding:5px}.occurrence__toggle:hover:not(:disabled) svg{border-color:var(--gold);color:var(--gold)}.occurrence__toggle:active:not(:disabled) svg{transform:scale(.88)}.occurrence__toggle[aria-pressed=true] svg{border-color:var(--ok-rim);background:radial-gradient(circle at 35% 28%, oklch(100% 0 0/.55), oklch(100% 0 0/0) 42%), var(--ok);box-shadow:inset 0 -2px 0 var(--ok-rim), 0 1px 2px oklch(0% 0 0/.45);color:var(--ok-ink)}.occurrence__toggle[aria-pressed=true]:hover:not(:disabled) svg{border-color:var(--ok-rim);color:var(--ok-ink)}.occurrence__toggle:disabled{cursor:default}.occurrence__open{align-items:center;gap:var(--space-3);min-height:44px;color:inherit;text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;padding:0;display:grid}.occurrence__open:hover .occurrence__name{text-decoration:underline;-webkit-text-decoration-color:var(--gold-lo);text-decoration-color:var(--gold-lo);text-underline-offset:3px}.occurrence__main{flex-direction:column;min-width:0;display:flex}.occurrence__name{font-family:var(--font-display);font-variation-settings:"SOFT" 100;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.occurrence__meta{align-items:center;gap:var(--space-2);color:var(--text-muted);flex-wrap:wrap;font-size:14px;display:flex}.occurrence__amount{color:var(--text);font-size:17px}.occurrence[data-settled] .occurrence__name,.occurrence[data-settled] .occurrence__amount{color:var(--text-muted)}.pay-sheet__due{margin-top:calc(var(--space-3) * -1);color:var(--text-muted)}.bill-form{gap:var(--space-4);flex-direction:column;display:flex}.bill-form__row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.money-input{display:block;position:relative}.money-input>span{top:50%;left:var(--space-3);color:var(--text-faint);pointer-events:none;position:absolute;transform:translateY(-50%)}.money-input .field__input{padding-left:calc(var(--space-3) + 14px)}.bill-form__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.bill-form__actions .button--primary{min-width:120px}.choc-picker{gap:var(--space-2);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.choc-picker legend{padding:0}.choc-picker__current{margin-left:var(--space-1);color:var(--text)}.choc-picker__options{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.choc-picker__option{border:var(--trim-width) solid transparent;border-radius:var(--radius-sm);background:var(--well);min-height:52px;box-shadow:var(--shadow-well);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out);place-items:center;display:grid}.choc-picker__option .choc{width:34px;height:34px;transition:transform var(--dur-fast) var(--ease-out)}.choc-picker__option:hover .choc{transform:translateY(-2px)}.choc-picker__option:has(input:checked){background:linear-gradient(var(--lacquer), var(--lacquer)) padding-box, var(--trim) border-box}.choc-picker__option:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}@media (width<=380px){.choc-picker__options{grid-template-columns:repeat(3,minmax(0,1fr))}}.income-row__name{align-items:center;gap:var(--space-2);display:flex}.income-row__label{text-overflow:ellipsis;overflow:hidden}.income-row__kind{border:1px solid var(--candy-pistachio-rim);background:var(--candy-highlight), var(--candy-pistachio);width:24px;height:24px;box-shadow:inset 0 -2px 0 oklch(from var(--candy-pistachio-rim) l c h / .8);color:var(--candy-pistachio-ink);border-radius:50%;flex:none;place-items:center;display:inline-grid}.money[data-varies]{color:var(--text-muted);font-style:normal}.occurrence[data-income] .occurrence__amount:not([data-varies]){color:var(--candy-pistachio)}.occurrence[data-income] .occurrence__toggle[aria-pressed=true] svg{border-color:var(--candy-pistachio-rim);background:var(--candy-highlight), var(--candy-pistachio);box-shadow:inset 0 -2px 0 var(--candy-pistachio-rim), 0 1px 2px oklch(0% 0 0/.45);color:var(--candy-pistachio-ink)}.occurrence[data-income] .occurrence__toggle[aria-pressed=true]:hover svg{border-color:var(--candy-pistachio-rim);color:var(--candy-pistachio-ink)}.occurrence__kind{color:var(--text-faint)}.badge--income{background:var(--sheen), var(--ok-soft);color:var(--candy-pistachio)}.summary{gap:var(--space-5);padding:var(--space-6) var(--space-6) var(--space-5);flex-direction:column;display:flex}.summary__stats{gap:var(--space-5) var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.summary__stats>div{min-width:0;min-height:52px;padding-left:calc(48px + var(--space-3));flex-direction:column;justify-content:center;display:flex;position:relative}.summary__stats .medallion{position:absolute;top:50%;left:0;transform:translateY(-50%)}.summary__stats>div+div:before,.summary__stats>div+div:after{content:"";left:calc(var(--space-6) / -2);pointer-events:none;position:absolute}.summary__stats>div+div:before{background:linear-gradient(180deg, transparent, var(--gold-lo) 25%, var(--gold) 50%, var(--gold-lo) 75%, transparent);width:1px;top:-6px;bottom:-6px}.summary__stats>div+div:after{background:var(--trim);width:7px;height:7px;box-shadow:0 0 0 2px var(--panel);margin-left:-3px;top:50%;transform:translateY(-50%)rotate(45deg)}.summary__stats dt{color:var(--text-muted);font-size:14px;font-weight:500}.summary__stats dd{text-shadow:0 2px oklch(0% 0 0/.45);overflow-wrap:anywhere;margin:2px 0 0;font-size:clamp(22px,2.6vw,34px);line-height:1.1}.summary__left{color:var(--gold)}.summary__in{color:var(--candy-pistachio)}.summary__bar{border:1px solid var(--gold-lo);border-radius:var(--radius-full);background:var(--well);height:14px;box-shadow:var(--shadow-well), 0 1px 0 var(--bevel-hi);padding:2px;overflow:hidden}.summary__bar span{border-radius:inherit;background:var(--gloss), var(--ok);height:100%;box-shadow:inset 0 -1px 0 var(--ok-rim);transform-origin:0;transition:transform var(--dur-med) var(--ease-out);display:block}.home__sections{align-items:start;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));display:grid}.home-section__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);color:var(--text-muted);display:flex}.home-section__header h2{color:var(--text);font-size:21px}.home-section__header .money{color:var(--gold);font-size:17px}.home-section[data-tone=danger] .home-section__header h2,.home-section[data-tone=danger] .home-section__header .money{color:var(--danger)}.home-section .occurrence-list{padding:var(--space-3) var(--space-3) var(--space-4)}.home-section__empty{padding:var(--space-4) var(--space-5) var(--space-5);color:var(--text-muted)}@media (width<=1180px){.summary__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.summary__stats>div:nth-child(odd):before,.summary__stats>div:nth-child(odd):after{display:none}}@media (width<=480px){.summary{gap:var(--space-4);padding:var(--space-5) var(--space-4) var(--space-4)}.summary__stats{gap:var(--space-4)}.summary__stats>div{min-height:40px;padding-left:calc(38px + var(--space-2))}.summary__stats>div+div:before,.summary__stats>div+div:after{left:calc(var(--space-4) / -2)}.summary__stats dt{font-size:12px}.summary__stats dd{font-size:19px}.home-section__header{padding:var(--space-4) var(--space-4) var(--space-3)}.home-section__header h2{font-size:19px}}.calendar__header{flex-wrap:wrap;align-items:center}.calendar__header h1{white-space:nowrap}@media (width<=480px){.calendar__header h1{font-size:24px}}.calendar__nav{align-items:center;gap:var(--space-1);display:flex}.calendar__in{color:var(--candy-pistachio)}.calendar{align-items:start;gap:var(--space-5);display:grid}@media (width>=1100px){.calendar{grid-template-columns:minmax(0,1fr) minmax(320px,400px)}.calendar__day{top:var(--space-6);position:sticky}}.calendar__month{padding:var(--space-3);container-type:inline-size}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.month-grid__weekday{padding:var(--space-2) 0 var(--space-2);color:var(--gold);font-family:var(--font-display);text-align:center;font-size:13px;font-weight:600;text-decoration:none}.day{align-items:center;gap:var(--space-1);border:var(--trim-width) solid oklch(from var(--gold-lo) l c h / .3);border-radius:var(--radius-sm);background:var(--sheen), var(--lacquer);min-width:0;min-height:52px;box-shadow:var(--shadow-raised);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);flex-direction:column;padding:6px 2px;display:flex}.day:hover{border-color:oklch(from var(--gold) l c h / .7);background:var(--sheen), var(--lacquer-hi)}.day:active{box-shadow:var(--shadow-pressed);transform:translateY(1px)}.day[data-outside]{background:var(--surface-settled);box-shadow:inset 0 0 0 1px var(--bevel-hi);color:var(--text-faint);border-color:#0000}.day[data-outside] .day__dots,.day[data-outside] .day__amounts{opacity:.55}.day[aria-pressed=true]{background:var(--sheen) padding-box, linear-gradient(var(--lacquer-hi), var(--lacquer-hi)) padding-box, var(--trim) border-box;box-shadow:var(--shadow-lifted);color:var(--text);border-color:#0000}.day__number{border-radius:var(--radius-full);font-variant-numeric:tabular-nums;place-items:center;min-width:26px;height:26px;font-size:14px;line-height:1;display:inline-grid}.day[data-today] .day__number{background:var(--candy-highlight), var(--accent);box-shadow:inset 0 -2px 0 var(--accent-rim), 0 0 0 1.5px var(--gold);color:var(--accent-on);font-weight:600}.day__dots{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.day__dot{background:var(--gold);border-radius:50%;width:6px;height:6px}.day__dot[data-state=income]{background:var(--candy-pistachio)}.day__dot[data-state=late]{background:var(--danger)}.day__dot[data-state=settled]{background:var(--text-faint)}.day__amounts{display:none}@container (width>=620px){.day{min-height:92px;padding:var(--space-2);align-items:stretch}.day__number{align-self:flex-start}.day__dots{display:none}.day__amounts{font-family:var(--font-mono);text-align:right;flex-direction:column;gap:2px;margin-top:auto;font-size:12px;display:flex}.day__amounts>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day__in{color:var(--candy-pistachio)}.day__out{color:var(--gold)}.day__out[data-settled]{color:var(--text-faint)}.day__out[data-late]{color:var(--danger)}}.calendar__day-header{padding-right:var(--space-2);align-items:center}.calendar__day-header h2:after{display:none}.calendar__adds{gap:var(--space-1);flex:none;display:flex}.calendar__day .occurrence-list{padding:var(--space-3) var(--space-3) var(--space-4)}.money-page{align-items:start;gap:var(--space-5);display:grid}@media (width>=1100px){.money-page{grid-template-columns:repeat(2,minmax(0,1fr))}.money-tray--wide{grid-column:1/-1}}.money-tray{padding-bottom:var(--space-4)}.money-tray__header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:72px;margin-bottom:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3) var(--space-5);display:flex}.money-tray__header h2{font-size:21px}.money-tray__header--month{padding-left:var(--space-2);flex-wrap:wrap}.money-tray__empty{padding:0 var(--space-5) var(--space-3);color:var(--text-muted)}.money-tray__archived{margin:var(--space-3) 10px 0}.money-month{align-items:center;gap:var(--space-1);display:flex}.money-month h2{text-align:center;min-width:9.5em}.money-month h2:after{display:none}.money-filter{width:auto;min-width:0;max-width:100%}.money-totals{gap:var(--space-4);padding:0 var(--space-4) var(--space-3);color:var(--text-muted);font-size:14px;display:flex}.money-totals .money{color:var(--text)}.money-totals__in.money{color:var(--candy-pistachio)}.money-day+.money-day{margin-top:var(--space-3)}.money-day__label{padding:0 var(--space-4) var(--space-2);color:var(--gold);font-family:var(--font-display);font-size:14px;font-weight:600}.money-list{gap:var(--space-2);padding:0 var(--space-3);margin:0;list-style:none;display:grid}.money-row{align-items:center;gap:var(--space-3);width:100%;min-height:62px;padding:var(--space-2) var(--space-4);border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--sheen), var(--lacquer);box-shadow:var(--shadow-raised);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);display:flex}.money-row:hover{border-color:var(--gold);background:var(--sheen), var(--lacquer-hi);box-shadow:var(--shadow-lifted)}.money-row:active{box-shadow:var(--shadow-pressed)}.money-row__icon{color:var(--gold);flex:none}.money-row__main{flex-direction:column;flex:1;min-width:0;display:flex}.money-row__name{font-family:var(--font-display);font-variation-settings:"SOFT" 100;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.money-row__meta{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.money-row__meta:empty{display:none}.money-row__amount{flex:none;font-size:17px}.money-row__amount[data-in]{color:var(--candy-pistachio)}.money-row__amount[data-owed]{color:var(--text-muted)}.budget-row{padding-bottom:var(--space-4);position:relative}.budget-row[data-over] .budget-row__left{color:var(--danger)}.budget-bar{right:var(--space-4);bottom:9px;left:var(--space-4);background:var(--well);height:5px;box-shadow:var(--shadow-well);border-radius:999px;position:absolute;overflow:hidden}.budget-bar__fill{background:var(--gold);transform-origin:0;height:100%;transition:transform var(--dur-med) var(--ease-out);display:block}.budget-row[data-over] .budget-bar__fill{background:var(--danger)}.segmented{border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--well);box-shadow:var(--shadow-well);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.segmented button{border-radius:calc(var(--radius-sm) - 2px);min-height:40px;color:var(--text-muted);font:inherit;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;font-weight:500}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--gloss), var(--accent);box-shadow:inset 0 0 0 1px var(--gold), inset 0 -2px 0 oklch(from var(--accent-shade) l c h / .7), 0 2px 4px oklch(0% 0 0/.5);color:var(--accent-on);text-shadow:0 1px 0 oklch(from var(--accent-shade) l c h / .8)}.settings{align-items:start;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));display:grid}.settings-section{padding-bottom:var(--space-4)}.settings-section__header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:72px;margin-bottom:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3) var(--space-5);display:flex}.settings-section__header h2{font-size:21px}.settings-section__note{padding:0 var(--space-5) var(--space-3);color:var(--text-muted)}.settings-list{gap:var(--space-2);padding:0 var(--space-3);margin:0;list-style:none;display:grid}.settings-row{align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--row-edge);border-radius:var(--radius-sm);background:var(--sheen), var(--lacquer);box-shadow:var(--shadow-raised);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.settings-row__icon{color:var(--gold)}.settings-row__main{flex-direction:column;min-width:0;display:flex}.settings-row__name{font-family:var(--font-display);font-variation-settings:"SOFT" 100;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.settings-row__meta{color:var(--text-muted);font-size:14px}.settings-row .badge{margin-right:var(--space-2)}.reminders{gap:var(--space-3);padding:0 var(--space-5) var(--space-2);display:grid}.reminders__row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reminders__footer{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.reminders__note{color:var(--text-muted);font-size:14px}
