.splash{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);padding:var(--space-6);background-color:var(--color-dark);color:var(--color-on-dark);text-align:center}.splash__brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.splash__wordmark{font-size:40px;font-weight:var(--font-weight-bold);letter-spacing:-.01em;color:var(--color-on-dark)}.splash__accent{color:var(--color-brand-accent)}.splash__tagline{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-brand-accent)}.splash__loading,.splash__timeout{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.splash__message{margin:0;font-size:var(--font-size-body);color:#ffffffd9}.splash__spinner{width:32px;height:32px;border-radius:50%;border:3px solid rgba(255,255,255,.25);border-top-color:var(--color-brand-accent);animation:splash-spin .9s linear infinite}@keyframes splash-spin{to{transform:rotate(360deg)}}.splash__retry{min-height:var(--button-height);padding:0 var(--space-5);border:none;border-radius:var(--radius-input);background-color:var(--color-brand-accent);color:var(--color-on-accent);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold)}.splash__retry:active{background-color:var(--color-brand-accent-alt)}.offline-indicator{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;max-height:48px;padding:var(--space-2) var(--space-4);background-color:var(--color-dark);color:var(--color-on-dark);font-size:var(--font-size-meta);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.offline-indicator svg{flex:0 0 auto}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/montserrat-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/montserrat-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-brand-accent: #ff5b5a;--color-brand-accent-alt: #fe6f61;--color-ink: #333333;--color-ink-secondary: #69727d;--color-surface: #ffffff;--color-surface-warm: #fffbf5;--color-surface-warm-2: #fbf8f4;--color-surface-warm-3: #f7f2ee;--color-surface-subtle: #f5f5f5;--color-border: #d0d0d0;--color-dark: #2b2a2b;--color-dark-2: #303030;--color-dark-3: #323232;--color-info-soft: #b6cce1;--color-success: #1e8e3e;--color-warning: #b26a00;--color-error: #c62828;--color-info: #6fb5fa;--color-on-accent: #ffffff;--color-on-dark: #ffffff;--font-family-base: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-family-serif-report: "PT Serif", Georgia, "Times New Roman", serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-size-meta: 14px;--font-size-body: 16px;--font-size-body-lg: 18px;--font-size-section: 20px;--font-size-screen: 24px;--font-size-kpi: 32px;--line-height-tight: 1.4;--line-height-normal: 1.5;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--radius-input: 8px;--radius-card: 12px;--radius-badge: 999px;--touch-target-min: 48px;--control-height: 48px;--button-height: 48px;--button-height-lg: 56px;--shadow-card: 0 1px 3px rgba(43, 42, 43, .08), 0 1px 2px rgba(43, 42, 43, .06)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-family-base);font-size:var(--font-size-body);line-height:var(--line-height-normal);color:var(--color-ink);background-color:var(--color-surface-warm);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-size-adjust:100%}button,[role=button],input,select,textarea{font-family:inherit;font-size:inherit}button,[role=button]{min-height:var(--touch-target-min);min-width:var(--touch-target-min);cursor:pointer}a{color:var(--color-brand-accent)}:focus-visible{outline:2px solid var(--color-brand-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
