@font-face{font-family:geistSans;src:url(../media/geist_latin-s.p.3rd3ws2mg35i0.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistSans;src:url(../media/geist_latin_ext-s.p.3mmlhcns4y7c0.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistSans Fallback;src:local(Arial);ascent-override:100.5%;descent-override:29.5%;line-gap-override:0.0%;size-adjust:100.0%}.geistsans_4f1d8ade-module__9VMOxa__className{font-family:geistSans,geistSans Fallback}.geistsans_4f1d8ade-module__9VMOxa__variable{--font-geist-sans:"geistSans", "geistSans Fallback"}
@font-face{font-family:geistMono;src:url(../media/geist_mono_latin-s.p.3f30ggp2vw8zj.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistMono;src:url(../media/geist_mono_latin_ext-s.p.1gs2b75ghgmeb.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistMono Fallback;src:local(Arial);ascent-override:100.5%;descent-override:29.5%;line-gap-override:0.0%;size-adjust:100.0%}.geistmono_560796d4-module__FsGE_W__className{font-family:geistMono,geistMono Fallback}.geistmono_560796d4-module__FsGE_W__variable{--font-geist-mono:"geistMono", "geistMono Fallback"}
@font-face{font-family:inter;src:url(../media/inter_latin-s.p.0gsaq8ukbf34m.woff2)format("woff2");font-display:swap}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.inter_f6b4a64c-module__fT0DVG__className{font-family:inter,inter Fallback}.inter_f6b4a64c-module__fT0DVG__variable{--font-inter:"inter", "inter Fallback"}
@font-face{font-family:poppins;src:url(../media/poppins_latin_600-s.p.14nztc_w4mkh_.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:poppins;src:url(../media/poppins_latin_700-s.p.3raw8inii9jva.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:poppins Fallback;src:local(Arial);ascent-override:90.85%;descent-override:30.28%;line-gap-override:8.65%;size-adjust:115.57%}.poppins_9ca61e18-module__hOp_eW__className{font-family:poppins,poppins Fallback}.poppins_9ca61e18-module__hOp_eW__variable{--font-poppins:"poppins", "poppins Fallback"}
@font-face{font-family:jbMono;src:url(../media/jbmono_latin-s.p.013tcyr58qp0n.woff2)format("woff2");font-display:swap}@font-face{font-family:jbMono Fallback;src:local(Arial);ascent-override:77.57%;descent-override:22.82%;line-gap-override:0.0%;size-adjust:131.49%}.jbmono_e309e2e1-module__ktSjLW__className{font-family:jbMono,jbMono Fallback}.jbmono_e309e2e1-module__ktSjLW__variable{--font-mono-jb:"jbMono", "jbMono Fallback"}
:root{--brand-primary:#2563eb;--brand-primary-rgb:37, 99, 235;--brand-secondary:#0f172a;--brand-accent:var(--brand-primary);--color-on-primary:#fff;--color-page:#f8fafc;--color-surface:#fff;--color-surface-recess:#f1f5f9;--color-surface-raised:#fff;--color-border:#e2e8f0;--color-border-strong:#cbd5e1;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-text-disabled:#94a3b8;--color-success:#16a34a;--color-warning:#d97706;--color-error:#dc2626;--color-info:#2563eb;--status-idle-signal:#64748b;--status-idle-bg:#f1f5f9;--status-idle-ink:#334155;--status-authorized-signal:#b45309;--status-authorized-bg:#fef3c7;--status-authorized-ink:#92400e;--status-fueling-signal:#2563eb;--status-fueling-bg:#eaf1ff;--status-fueling-ink:#1d4ed8;--status-ready-to-pay-signal:#ea580c;--status-ready-to-pay-bg:#ffedd5;--status-ready-to-pay-ink:#9a3412;--status-out-of-service-signal:#dc2626;--status-out-of-service-bg:#fee2e2;--status-out-of-service-ink:#991b1b;--status-completed-signal:#15803d;--status-completed-bg:#dcfce7;--status-completed-ink:#166534;--status-alarm-signal:#dc2626;--status-alarm-bg:#fee2e2;--status-alarm-ink:#991b1b;--font-sans:var(--font-geist-sans), "Geist", var(--font-inter), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans Khmer", sans-serif;--font-display:var(--font-geist-sans), "Geist", var(--font-poppins), system-ui, -apple-system, sans-serif;--font-mono:var(--font-geist-mono), "Geist Mono", var(--font-mono-jb), "JetBrains Mono", ui-monospace, SFMono-Regular, "Menlo", monospace;--font-numeric:var(--font-geist-sans), "Geist", var(--font-inter), ui-sans-serif, system-ui, sans-serif;--font-size-data:32px;--font-size-h1:24px;--font-size-h2:20px;--font-size-h3:16px;--font-size-body:14px;--font-size-body-lg:16px;--font-size-small:13px;--font-size-caption:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-card:12px;--radius-button:8px;--radius-badge:6px;--radius-pill:12px;--shadow-card:0 1px 2px #0f172a0f, 0 4px 16px #0f172a0d;--shadow-overlay:0 12px 32px #0f172a1a, 0 24px 60px #0f172a1f;--motion-micro:.12s;--motion-transition:.2s;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--topbar-height:70px;--sidebar-width:248px;--sidebar-collapsed-width:86px;--focus-ring:0 0 0 2px var(--color-surface), 0 0 0 4px var(--brand-primary)}[data-theme=dark]{--brand-primary:#3b82f6;--brand-primary-rgb:59, 130, 246;--brand-primary-fill:#2563eb;--color-on-primary:#fff;--color-page:#0a0f1d;--color-surface:#0f172a;--color-surface-recess:#070a13;--color-surface-raised:#1e293b;--color-border:#1f2d44;--color-border-strong:#172030;--color-text-primary:#f3f4f6;--color-text-secondary:#9ca3af;--color-text-tertiary:#64748b;--color-text-disabled:#4b5563;--color-success:#4ade80;--color-warning:#fbbf24;--color-error:#f87171;--color-info:#60a5fa;--status-idle-signal:#94a3b8;--status-idle-bg:#94a3b829;--status-idle-ink:#cbd5e1;--status-authorized-signal:#fbbf24;--status-authorized-bg:#fbbf242e;--status-authorized-ink:#fcd34d;--status-fueling-signal:#60a5fa;--status-fueling-bg:#3b82f62e;--status-fueling-ink:#93c5fd;--status-ready-to-pay-signal:#fb923c;--status-ready-to-pay-bg:#fb923c2e;--status-ready-to-pay-ink:#fdba74;--status-out-of-service-signal:#f87171;--status-out-of-service-bg:#f871712e;--status-out-of-service-ink:#fca5a5;--status-completed-signal:#4ade80;--status-completed-bg:#4ade802e;--status-completed-ink:#86efac;--status-alarm-signal:#f87171;--status-alarm-bg:#f871712e;--status-alarm-ink:#fca5a5;--shadow-card:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-overlay:0 12px 32px #0006, 0 24px 60px #00000080;--focus-ring:0 0 0 2px var(--color-surface), 0 0 0 4px var(--brand-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.tnum,[data-numeric]{font-family:var(--font-numeric);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1, "zero" 1;letter-spacing:-.01em}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-button);outline:none}@keyframes jass-alarm-blink{0%,49%{opacity:1}50%,to{opacity:.35}}@keyframes jass-tick{0%{opacity:1}50%{opacity:.85}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
:root{--background:var(--color-surface);--foreground:var(--color-text-primary);--border:var(--color-border)}html{height:100%}html,body{scrollbar-width:none;-ms-overflow-style:none;max-width:100vw;overflow-x:hidden}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}::-webkit-scrollbar{width:0;height:0;display:none}*{scrollbar-width:none;-ms-overflow-style:none}body{min-height:100%;color:var(--color-text-primary);background:var(--color-page);font-family:var(--font-sans);font-size:var(--font-size-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;line-height:1.55;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::-webkit-scrollbar-track{background:0 0}button,a,input,select,textarea,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation;font-family:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-text-primary);line-height:1.3}.fm-login-shell{background:linear-gradient(#f7f9fc 0%,#eef3f9 100%)}[data-theme=dark] .fm-login-shell{background:var(--color-page)}
