:root{--background:#faf7fa;--surface:#fffffff0;--surface-soft:#fffafd;--ink:#251d27;--muted:#655b65;--muted-light:#887b87;--border:#eadfe6;--green:#4f8b65;--green-dark:#2f6548;--green-deep:#204a35;--green-pale:#eaf5ed;--green-wash:#f3faf5;--berry:#d91b78;--berry-dark:#aa145e;--berry-pale:#fff0f7;--plum:#5a2867;--plum-pale:#f6eef8;--blue:#376fc7;--blue-pale:#edf4ff;--amber:#b96e12;--amber-pale:#fff4df;--danger:#b53d4d;--danger-pale:#fff0f2;--font-ui:"Avenir Next", Avenir, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-display:Georgia, "Times New Roman", ui-serif, serif;--shadow-xs:0 5px 16px #49223f0d;--shadow-sm:0 14px 36px #49223f14;--shadow-md:0 26px 70px #49223f21;--radius-sm:12px;--radius-md:18px;--radius-lg:24px}*{box-sizing:border-box}html{background:var(--background);min-height:100%;font-size:16px}html,body{min-height:100%}body{background:radial-gradient(circle at 94% -6%, #e7d6f494, transparent 33rem), radial-gradient(circle at 5% 105%, #ffdceb8a, transparent 34rem), radial-gradient(circle at 58% 18%, #ddefe173, transparent 30rem), var(--background);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.58}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:transform .16s,box-shadow .16s,background-color .16s,border-color .16s}img{max-width:100%}a{color:inherit}svg{display:block}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #d91b783d}button:disabled{cursor:not-allowed}::selection{color:#fff;background:var(--berry)}*{scrollbar-width:thin;scrollbar-color:#cfb6c5 transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#cfb6c5 padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-track{background:0 0}.skip-link{z-index:999;color:#fff;background:var(--berry-dark);box-shadow:var(--shadow-md);border-radius:10px;padding:10px 14px;font-size:13px;font-weight:750;text-decoration:none;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.pwa-install-wrap{z-index:18;background:#fff;border:1px solid #d817703d;border-radius:999px;align-items:center;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 14px 38px #4d193f33}.pwa-install{color:#8b1d62;background:0 0;border:0;border-radius:999px 0 0 999px;align-items:center;gap:9px;padding:12px 17px;font-size:13px;font-weight:800;display:inline-flex}.pwa-install span{background:#fce9f2;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.pwa-install-dismiss{color:#8c7784;background:0 0;border:0;border-left:1px solid #f2dce7;border-radius:0 999px 999px 0;align-self:stretch;padding:0 13px;font-size:20px}.pwa-help-backdrop{z-index:1100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#22141f80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pwa-help{width:min(100%,370px);box-shadow:var(--shadow-md);text-align:center;background:#fff;border:1px solid #f0d8e4;border-radius:24px;padding:30px;position:relative}.pwa-help-mark{background:var(--berry-pale);width:52px;height:52px;color:var(--berry-dark);border-radius:16px;place-items:center;margin:0 auto 14px;font-size:25px;font-weight:850;display:grid}.pwa-help h2{font-family:var(--font-display);margin:0 0 8px;font-size:26px}.pwa-help p{color:var(--muted);margin:0}.pwa-help-close{color:var(--muted);background:0 0;border:0;font-size:24px;position:absolute;top:12px;right:14px}.pwa-help-done{background:var(--berry);color:#fff;border:0;border-radius:13px;width:100%;margin-top:22px;padding:12px 16px;font-weight:800}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:820px){.pwa-install-wrap{right:12px;bottom:calc(94px + env(safe-area-inset-bottom))}}@media (max-width:520px){body{font-size:15px}}
