:root{--bg:#f7f7f8;--surface:#ffffff;--surface-2:#efeff1;--border:#dcdce1;--border-strong:#c2c2c9;--text:#111114;--text-muted:#55555e;--text-faint:#6b6b75;--accent:#c8102e;--accent-strong:#a30d25;--accent-contrast:#ffffff;--accent-soft:#fceaed;--present:#12704a;--present-soft:#e3f2ea;--absent:#1e1e23;--absent-soft:#e9e9ed;--pending:#7d5200;--pending-soft:#faf0d8;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px rgb(17 17 20/6%),0 4px 12px rgb(17 17 20/4%);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0b0d;--surface:#151519;--surface-2:#1d1d23;--border:#2a2a31;--border-strong:#3b3b45;--text:#eeeef2;--text-muted:#a8a8b3;--text-faint:#90909b;--accent:#ff5f74;--accent-strong:#ff8e9c;--accent-contrast:#151519;--accent-soft:#34141a;--present:#4fc98a;--present-soft:#0f2f1e;--absent:#d5d5dd;--absent-soft:#26262d;--pending:#e3b64a;--pending-soft:#2d2510;--shadow:0 1px 2px rgb(0 0 0/45%),0 4px 14px rgb(0 0 0/32%);color-scheme:dark}}*{box-sizing:border-box}input,select,textarea{min-width:0;max-width:100%}[data-slot],input,select,textarea{scroll-margin-top:76px}img,svg,video{max-width:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:calc(64px + env(safe-area-inset-bottom))}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes fhp-pulse{0%,to{opacity:1}50%{opacity:.55}}.fhp-skeleton{background:var(--surface-2);border-radius:var(--radius-sm);animation:fhp-pulse 1.6s ease-in-out infinite}@keyframes fhp-spin{to{transform:rotate(1turn)}}.fhp-spinner{display:inline-block;width:1em;height:1em;border:2px solid;border-top:2px solid transparent;border-radius:50%;animation:fhp-spin .7s linear infinite;flex-shrink:0}@media (prefers-reduced-motion:reduce){.fhp-skeleton,.fhp-spinner{animation:none}.fhp-spinner{opacity:.7}}