@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/LibreBaskerville.woff2) format("woff2")}@font-face{font-family:Work Sans;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/WorkSans.woff2) format("woff2")}:root{--ink: #0e2e4a;--ink-rgb: 14, 46, 74;--navy: #134060;--accent: oklch(.6 .1 163);--accent-light: oklch(.8 .055 163);--accent-bg: oklch(.95 .028 163);--accent-tile: oklch(.9 .05 163);--accent-dot: oklch(.65 .11 163);--accent-glow: oklch(.72 .09 163);--page: #f2f0ec;--card: #fffefc;--sheet: #f6f5f2;--danger: oklch(.48 .16 28);--danger-bg: oklch(.955 .025 35);--danger-border: oklch(.88 .05 35);--danger-ink: oklch(.44 .12 32);--amber-bg: oklch(.955 .028 65);--amber-dot: oklch(.68 .13 60);--amber-ink: oklch(.44 .07 50);--chart-warn: oklch(.68 .13 60);--off-track: rgba(var(--ink-rgb), .16);--ink-50: rgba(var(--ink-rgb), .5);--ink-45: rgba(var(--ink-rgb), .45);--ink-42: rgba(var(--ink-rgb), .42);--ink-30: rgba(var(--ink-rgb), .3);--hair: rgba(var(--ink-rgb), .07);--on-ink: #fffefc;--on-accent: #fffefc;--knob: #fffefc;--seg-active: #fffefc;--admin-border: oklch(.88 .05 163);--stripe-a: #d5d3ce;--stripe-b: #cbc9c3;--stripe-c: #e2e0da;--stripe-d: #d8d5ce;--fade-rgb: 255, 254, 252;--pill-bg: rgba(255, 253, 250, .94);--flash-bg: oklch(.96 .03 40);--scrim: rgba(var(--ink-rgb), .45);--serif: "Libre Baskerville", serif;--sans: "Work Sans", system-ui, sans-serif;--card-shadow: 0 1px 2px rgba(14, 46, 74, .05);--card-shadow-lg: 0 1px 2px rgba(14, 46, 74, .05), 0 12px 26px -20px rgba(14, 46, 74, .45);--safe-top: env(safe-area-inset-top, 0px);color-scheme:light}[data-theme=granite]{--ink-50: rgba(var(--ink-rgb), .66);--ink-45: rgba(var(--ink-rgb), .6);--ink-42: rgba(var(--ink-rgb), .56);--ink-30: rgba(var(--ink-rgb), .42);--hair: rgba(var(--ink-rgb), .12);--ink: #e6e8ea;--ink-rgb: 230, 232, 234;--navy: #b9cddb;--accent: oklch(.66 .1 168);--accent-light: oklch(.44 .055 168);--accent-bg: oklch(.29 .032 175);--accent-tile: oklch(.45 .075 168);--accent-dot: oklch(.72 .11 168);--accent-glow: oklch(.77 .1 168);--page: #14181c;--card: #1e242a;--sheet: #191e23;--danger: oklch(.64 .15 28);--danger-bg: oklch(.26 .05 30);--danger-border: oklch(.36 .07 30);--danger-ink: oklch(.79 .09 32);--amber-bg: oklch(.28 .042 70);--amber-dot: oklch(.73 .12 65);--amber-ink: oklch(.84 .075 72);--chart-warn: oklch(.74 .13 62);--on-ink: #171c21;--on-accent: #12181c;--knob: #e6e8ea;--seg-active: #2e353c;--admin-border: oklch(.4 .05 168);--stripe-a: #2a3037;--stripe-b: #232931;--stripe-c: #2d343b;--stripe-d: #272d34;--fade-rgb: 20, 24, 28;--pill-bg: rgba(24, 29, 34, .92);--flash-bg: oklch(.34 .05 55);--scrim: rgba(0, 0, 0, .62);--card-shadow: 0 1px 2px rgba(0, 0, 0, .45);--card-shadow-lg: 0 1px 2px rgba(0, 0, 0, .45), 0 12px 26px -20px rgba(0, 0, 0, .85);color-scheme:dark}[data-theme=green-marble]{--ink-50: rgba(var(--ink-rgb), .66);--ink-45: rgba(var(--ink-rgb), .6);--ink-42: rgba(var(--ink-rgb), .56);--ink-30: rgba(var(--ink-rgb), .42);--hair: rgba(var(--ink-rgb), .12);--ink: #eae6d9;--ink-rgb: 234, 230, 217;--navy: #a8ccb4;--accent: oklch(.68 .12 152);--accent-light: oklch(.45 .07 152);--accent-bg: oklch(.3 .045 155);--accent-tile: oklch(.47 .09 152);--accent-dot: oklch(.74 .13 152);--accent-glow: oklch(.79 .12 152);--page: #101a15;--card: #18251e;--sheet: #131e18;--danger: oklch(.66 .15 30);--danger-bg: oklch(.27 .055 32);--danger-border: oklch(.37 .075 32);--danger-ink: oklch(.81 .09 34);--amber-bg: oklch(.29 .05 75);--amber-dot: oklch(.75 .12 68);--amber-ink: oklch(.86 .08 78);--chart-warn: oklch(.76 .13 72);--on-ink: #101a14;--on-accent: #0d1a12;--knob: #eae6d9;--seg-active: #26362c;--admin-border: oklch(.42 .06 152);--stripe-a: #23332a;--stripe-b: #1d2b23;--stripe-c: #26362c;--stripe-d: #202f26;--fade-rgb: 16, 26, 21;--pill-bg: rgba(19, 31, 24, .92);--flash-bg: oklch(.35 .055 60);--scrim: rgba(4, 12, 8, .62);--card-shadow: 0 1px 2px rgba(0, 0, 0, .45);--card-shadow-lg: 0 1px 2px rgba(0, 0, 0, .45), 0 12px 26px -20px rgba(0, 0, 0, .85);color-scheme:dark}[data-theme=rose-quartz]{--ink: #4a2a35;--ink-rgb: 74, 42, 53;--navy: #6d3d4c;--accent: oklch(.62 .12 25);--accent-light: oklch(.82 .06 25);--accent-bg: oklch(.95 .028 25);--accent-tile: oklch(.88 .055 25);--accent-dot: oklch(.66 .13 25);--accent-glow: oklch(.73 .11 25);--page: #f5eeeb;--card: #fffbfa;--sheet: #f8f2f0;--danger: oklch(.5 .17 15);--danger-bg: oklch(.95 .03 15);--danger-border: oklch(.87 .055 15);--danger-ink: oklch(.45 .14 15);--amber-bg: oklch(.955 .03 62);--amber-dot: oklch(.7 .13 58);--amber-ink: oklch(.46 .075 48);--chart-warn: oklch(.55 .11 250);--on-ink: #fffbfa;--on-accent: #fffbfa;--knob: #fffbfa;--seg-active: #fffbfa;--admin-border: oklch(.86 .06 25);--stripe-a: #ded1cd;--stripe-b: #d4c5c1;--stripe-c: #e8dcd8;--stripe-d: #ded0cc;--fade-rgb: 255, 251, 250;--pill-bg: rgba(255, 251, 250, .94);--flash-bg: oklch(.95 .035 40);--scrim: rgba(var(--ink-rgb), .45);--card-shadow: 0 1px 2px rgba(74, 42, 53, .06);--card-shadow-lg: 0 1px 2px rgba(74, 42, 53, .06), 0 12px 26px -20px rgba(74, 42, 53, .45);color-scheme:light}[data-theme=blue-onyx]{--ink: #16304a;--ink-rgb: 22, 48, 74;--navy: #1b4a66;--accent: oklch(.58 .1 210);--accent-light: oklch(.79 .055 210);--accent-bg: oklch(.945 .03 210);--accent-tile: oklch(.87 .06 210);--accent-dot: oklch(.63 .11 210);--accent-glow: oklch(.7 .1 210);--page: #eceff3;--card: #fbfcfe;--sheet: #f1f4f7;--danger: oklch(.48 .16 28);--danger-bg: oklch(.95 .028 32);--danger-border: oklch(.87 .05 32);--danger-ink: oklch(.44 .13 30);--amber-bg: oklch(.95 .03 68);--amber-dot: oklch(.68 .13 62);--amber-ink: oklch(.44 .075 52);--chart-warn: oklch(.62 .15 40);--on-ink: #fbfcfe;--on-accent: #fbfcfe;--knob: #fbfcfe;--seg-active: #fbfcfe;--admin-border: oklch(.85 .055 210);--stripe-a: #cdd3da;--stripe-b: #c3cad2;--stripe-c: #dae0e6;--stripe-d: #ced5dc;--fade-rgb: 251, 252, 254;--pill-bg: rgba(251, 252, 254, .94);--flash-bg: oklch(.95 .03 45);--scrim: rgba(var(--ink-rgb), .45);--card-shadow: 0 1px 2px rgba(22, 48, 74, .06);--card-shadow-lg: 0 1px 2px rgba(22, 48, 74, .06), 0 12px 26px -20px rgba(22, 48, 74, .45);color-scheme:light}*{box-sizing:border-box}*{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}html,body{height:100%}html{touch-action:manipulation}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--sans);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button{font-family:inherit;border:0;background:none;padding:0;cursor:pointer;color:inherit}input{font-family:inherit}img{display:block}@keyframes gsa-shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes gsa-pulse{0%,to{opacity:.35}50%{opacity:.9}}@keyframes gsa-flash{0%{background:var(--flash-bg)}to{background:transparent}}@keyframes gsa-rise{0%{transform:translateY(24px);opacity:.4}to{transform:translateY(0);opacity:1}}@keyframes gsa-spin{to{transform:rotate(360deg)}}#app{max-width:430px;margin:0 auto;min-height:100dvh;min-height:100lvh;display:flex;flex-direction:column;position:relative}.shimmer-line{height:3px;border-radius:99px;background:linear-gradient(90deg,rgba(var(--ink-rgb),.06) 0%,var(--accent-glow) 50%,rgba(var(--ink-rgb),.06) 100%);background-size:200px 100%;animation:gsa-shimmer 1s linear infinite}.skeleton{background:linear-gradient(90deg,rgba(var(--ink-rgb),.05),rgba(var(--ink-rgb),.1),rgba(var(--ink-rgb),.05));background-size:200px 100%;animation:gsa-shimmer 1.2s linear infinite}.card{background:var(--card);border-radius:15px;box-shadow:var(--card-shadow)}.hairline{height:1px;background:var(--hair)}.sheet-scrim{position:fixed;inset:0;background:var(--scrim);z-index:50;overscroll-behavior:contain;touch-action:none}.sheet-scrim [data-sheet-scroll]{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sheet-scrim [data-sheet-scroll-x]{touch-action:pan-x;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sheet-scrim [data-sheet-scroll-both]{touch-action:pan-x pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}html.sheet-open,body.sheet-open{overflow:hidden;touch-action:none}body.sheet-open{position:fixed;left:0;right:0;width:100%}.press{transition:opacity .12s}.press:active{opacity:.7}
