:root{--glass-bg:rgba(248,250,252,0.72);--glass-bg-strong:rgba(248,250,252,0.88);--glass-soft:rgba(248,250,252,0.58);--glass-border:rgba(15,23,42,0.14);--glass-text:#0f172a;--glass-muted:#475569;--glass-shadow:0 18px 44px rgba(15,23,42,0.16);--bg:#f8fafc;--bg-image:radial-gradient(circle at 12% 0%,rgba(20,184,166,0.18),transparent 28%),radial-gradient(circle at 88% 8%,rgba(245,158,11,0.14),transparent 24%),linear-gradient(180deg,#eef7f7,#f8fafc 46%,#eef2ff);--panel:rgba(248,250,252,0.9);--panel-soft:rgba(248,250,252,0.86);--text:#0f172a;--muted:#64748b;--border:rgba(148,163,184,0.24);--accent:#14b8a6;--accent-text:#0f766e;--danger:#ef4444;--shadow:0 18px 50px rgba(15,23,42,0.1);--header-bg:rgba(226,232,240,0.96);--header-border:rgba(148,163,184,0.42)}:root[data-theme=dark]{--glass-bg:rgba(10,16,30,0.68);--glass-bg-strong:rgba(10,16,30,0.8);--glass-soft:rgba(10,16,30,0.55);--glass-border:rgba(148,163,184,0.24);--glass-text:#e5edf6;--glass-muted:#94a3b8;--glass-shadow:0 18px 44px rgba(2,6,23,0.45);--bg:#101827;--bg-image:radial-gradient(circle at 12% 0%,rgba(20,184,166,0.22),transparent 28%),radial-gradient(circle at 88% 8%,rgba(245,158,11,0.16),transparent 24%),linear-gradient(180deg,#07111f,#101827 48%,#171923);--panel:rgba(15,23,42,0.82);--panel-soft:rgba(15,23,42,0.68);--text:#e5edf6;--muted:#a6b4c7;--border:rgba(148,163,184,0.2);--accent:#14b8a6;--accent-text:#5eead4;--danger:#ef4444;--shadow:0 18px 50px rgba(0,0,0,0.28);--header-bg:rgba(8,13,23,0.96);--header-border:rgba(148,163,184,0.2)}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background-color:var(--bg);background-image:var(--bg-image);background-attachment:fixed;background-repeat:no-repeat;background-size:cover;color:var(--text);font-family:Roboto,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.page{min-height:100vh;display:flex;flex-direction:column}.leaflet-container{isolation:isolate}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:1200;border-bottom:1px solid var(--header-border);background:color-mix(in srgb,var(--header-bg) 88%,transparent);backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);box-shadow:none}.topbar-inner{max-width:1440px;margin:0 auto;padding:.75rem 1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.75rem;gap:.75rem;align-items:center}.brand{display:flex;min-width:0;align-items:center;gap:.7rem}.brand-mark{width:2.25rem;height:2.25rem;display:grid;place-items:center;border-radius:8px;background:var(--accent);color:#06231f}.brand-title{margin:0;font-size:1.05rem;line-height:1.2;font-weight:750}.brand-subtitle{margin:.1rem 0 0;color:var(--muted);font-size:.82rem}.header-actions{display:flex;align-items:center;gap:.45rem}.icon-button{width:2.4rem;height:2.4rem;display:inline-grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease}.icon-button:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.flt-brand-button:focus-visible,.flt-title-button:focus-visible,.icon-button:focus-visible,a.flt-lang:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.flt-header-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);position:relative}.flt-header-grid[data-root]{grid-template-columns:minmax(0,1fr) auto}.flt-header-brand{position:relative;display:flex;min-width:0}.flt-brand-button{border:0;background:none;padding:0;color:inherit;cursor:pointer;text-align:left;font:inherit}.brand-text{display:flex;flex-direction:column;min-width:0}.flt-caret{flex-shrink:0;opacity:.7}.flt-header-title{position:relative;display:flex;justify-content:center;align-items:center;min-width:0}.flt-title-button{display:inline-flex;align-items:center;gap:.3rem;border:0;background:none;padding:.3rem .5rem;border-radius:8px;color:inherit;font:inherit;font-weight:650;cursor:pointer}.flt-title-button:hover{background:var(--panel)}.flt-title-text{max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flt-header-actions{position:relative;justify-content:flex-end;min-width:0}.flt-header-actions,.flt-header-desktop-actions{display:flex;align-items:center;gap:.45rem}.flt-lang-switch{display:flex;align-items:center;gap:.15rem;padding:.15rem;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.flt-lang{padding:.25rem .45rem;border-radius:6px;font-size:.78rem;font-weight:650;color:var(--muted);text-decoration:none}.flt-lang[data-active=true]{background:var(--accent);color:#06231f}a.flt-lang:hover{color:var(--text)}.flt-header-burger{display:none}.flt-menu{position:absolute;top:calc(100% + .4rem);z-index:1210;display:flex;flex-direction:column;gap:.1rem;min-width:230px;max-height:75vh;overflow:auto;padding:.35rem;border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-bg-strong);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);box-shadow:var(--glass-shadow);color:var(--glass-text);animation:flt-menu-in .16s ease-out}@keyframes flt-menu-in{0%{opacity:0}to{opacity:1}}.flt-app-menu{left:0}.flt-page-menu{left:50%;transform:translateX(-50%)}.flt-mobile-menu{right:0}.flt-menu-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:9px;color:var(--glass-text);font-size:.9rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .15s ease}.flt-menu-item:hover{background:color-mix(in srgb,var(--glass-text) 10%,transparent)}.flt-menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.flt-menu-item[data-active=true]{opacity:.55;pointer-events:none}.flt-menu-icon{display:inline-grid;place-items:center;width:1.6rem;flex-shrink:0}.flt-menu-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.2rem;padding:.5rem .6rem;border-top:1px solid var(--glass-border)}.flt-menu-label{font-size:.82rem;font-weight:600;color:var(--glass-muted)}.flt-menu-backdrop{position:fixed;inset:0;z-index:1205;border:0;padding:0;background:transparent;cursor:default}@media (max-width:42rem){.flt-header-desktop-actions{display:none}.flt-header-burger{display:inline-grid}.flt-header-grid,.flt-header-grid[data-root]{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) auto;gap:.5rem}.flt-header-grid[data-root]{grid-template-columns:minmax(0,1fr) auto}.brand-subtitle{display:none}.brand-title{font-size:.95rem;max-width:36vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-mark{width:2rem;height:2rem}.flt-title-text{max-width:34vw;font-size:.92rem}}.content{width:100%;max-width:1440px;margin:0 auto;padding:1rem;flex:1 1}.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.app-tile,.card{border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.app-tile{min-height:6.4rem;padding:.85rem;display:flex;flex-direction:column;justify-content:space-between;gap:.7rem}.app-tile svg{color:var(--tile-accent,var(--accent))}.app-tile strong{display:block;font-size:.98rem}.app-tile span{color:var(--muted);font-size:.8rem}.tabs{display:flex;gap:.45rem;overflow-x:auto;padding:.15rem 0 .85rem;scrollbar-width:thin}.tab{white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:.45rem .75rem;background:var(--panel);color:var(--muted);font-size:.86rem}.tab[data-active=true]{color:var(--text);border-color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:.85rem;gap:.85rem}.utility-grid{margin-top:.85rem}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.card{padding:1rem;min-width:0}.card h2,.card h3{margin:0 0 .75rem;font-size:1.2rem;font-weight:600;line-height:1.15}.card p{margin:0;color:var(--muted);line-height:1.5}.page-heading{margin:0 0 .85rem}.page-heading h2{margin:0;font-size:1.25rem;line-height:1.2}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.85rem;gap:.85rem}.metric{padding:.85rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--panel-soft);min-height:5rem;display:flex;flex-direction:column;gap:.2rem}.metric-value{display:block;order:2;font-size:1.4rem;font-weight:800;line-height:1.1;overflow-wrap:anywhere}.metric-label{display:block;order:1;color:var(--muted);font-size:.78rem;font-weight:700;line-height:1.15}.metric-detail{order:3;display:flex;align-items:center;gap:.35rem;margin-top:.3rem;color:var(--muted);font-size:.72rem;min-width:0}.metric-dot{width:.6rem;height:.6rem;border-radius:999px;flex:0 0 auto}.control-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:.75rem;gap:.75rem;align-items:end}.control-form label{display:grid;grid-gap:.32rem;gap:.32rem;min-width:0}.control-form label span{color:var(--muted);font-size:.78rem}.control-form input,.control-form select{min-height:2.4rem;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--panel-soft);color:var(--text);padding:.45rem .55rem}.control-form button{min-height:2.4rem;border:1px solid color-mix(in oklab,var(--accent) 80%,var(--border));border-radius:8px;background:var(--accent);color:white;font-weight:720;cursor:pointer}.control-form .check-row{display:flex;flex-direction:row;align-items:center;gap:.5rem;min-height:2.4rem}.control-form .check-row input{width:1rem;min-height:1rem}.status{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:999px;background:var(--panel-soft);color:var(--muted);font-size:.78rem;margin-bottom:.65rem}.status[data-status=error]{color:var(--danger)}.chart-box,.map-box{width:100%;height:320px;min-height:320px;overflow:hidden}.chart-box-tall{height:380px;min-height:380px}.station-chart{width:100%;height:300px;min-height:300px}.station-chart-large{height:420px;min-height:420px}.fuel-history-layout{display:grid;grid-template-columns:minmax(190px,260px) minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:stretch}.fuel-stat-column{min-width:0}.fuel-title-row{display:flex;align-items:center;gap:.65rem;margin-bottom:.65rem}.fuel-title-row h3{margin:0}.fuel-swatch{width:1.35rem;height:1.35rem;border-radius:999px;border:1px solid var(--border);flex:0 0 auto}.fuel-stats{display:grid;grid-gap:0;gap:0;margin:0}.fuel-stats div{display:flex;justify-content:space-between;gap:.65rem;padding:.42rem 0;border-bottom:1px solid var(--border)}.fuel-stats dt{color:var(--muted);font-size:.82rem}.fuel-stats dd{margin:0;text-align:right;font-size:.86rem;font-weight:700}.map-box .leaflet-container{width:100%;height:100%;border-radius:8px}.page-full{min-height:100vh;height:100vh;display:flex;flex-direction:column}.content-full{flex:1 1 auto;min-height:0;padding:0;margin:0;width:100%;max-width:none;display:flex}.price-map-full{position:relative;flex:1 1 auto;width:100%;height:100%}.price-map-canvas{position:absolute;inset:0}.price-map-canvas .leaflet-container{width:100%;height:100%;background:var(--panel-soft)}:root[data-theme=dark] .price-map-canvas .leaflet-tile,:root[data-theme=dark] .rail-journey-map .leaflet-tile,:root[data-theme=dark] .rail-station-plan-map .leaflet-tile{filter:invert(1) hue-rotate(180deg) saturate(.72) brightness(.78) contrast(1.08)}.pm-country-rail,.pm-fuel-rail{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.4rem;z-index:800;padding:.5rem;border-radius:16px;background:var(--glass-bg);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.pm-fuel-rail{left:.75rem}.pm-country-rail{right:.75rem}.pm-fuel-btn{min-width:92px;border:0;border-radius:999px;padding:.5rem .9rem;font-weight:800;font-size:.82rem;cursor:pointer;box-shadow:0 6px 16px rgba(2,6,23,.28),inset 0 1px 0 rgba(255,255,255,.32);opacity:.55;transition:opacity .18s ease,transform .18s ease,box-shadow .18s ease}.pm-fuel-btn:hover{opacity:.85;transform:translateY(-1px)}.pm-fuel-btn[data-active=true]{opacity:1;transform:scale(1.05);outline:2px solid color-mix(in srgb,var(--glass-text) 88%,transparent);outline-offset:1px;box-shadow:0 10px 24px rgba(2,6,23,.35),inset 0 1px 0 rgba(255,255,255,.38)}.pm-country-btn{min-width:108px;border:1px solid var(--glass-border);border-radius:999px;padding:.5rem .9rem;font-weight:700;font-size:.82rem;cursor:pointer;background:color-mix(in srgb,var(--glass-text) 7%,transparent);color:var(--glass-text);transition:background .18s ease,border-color .18s ease,transform .18s ease}.pm-country-btn:hover:not([data-active=true]){background:color-mix(in srgb,var(--glass-text) 14%,transparent);border-color:color-mix(in srgb,var(--glass-text) 32%,transparent);transform:translateY(-1px)}.pm-country-btn[data-active=true]{background:var(--glass-text);border-color:var(--glass-text);color:var(--glass-bg-strong)}.pm-controls{position:absolute;top:.75rem;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center;padding:.45rem .7rem;border-radius:16px;background:var(--glass-bg);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);z-index:800;max-width:min(92vw,900px)}.pm-control-group{display:inline-flex;align-items:center;gap:.3rem}.pm-control-label{color:var(--glass-muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-right:.15rem}.pm-chip{border:0;border-radius:999px;padding:.28rem .6rem;font-size:.76rem;font-weight:700;cursor:pointer;background:transparent;color:var(--glass-muted);transition:background .18s ease,color .18s ease}.pm-chip:hover:not([data-active=true]){background:color-mix(in srgb,var(--glass-text) 10%,transparent);color:var(--glass-text)}.pm-chip[data-active=true]{background:var(--glass-text);color:var(--glass-bg-strong)}.pm-chip:focus-visible,.pm-country-btn:focus-visible,.pm-date:focus-visible,.pm-fuel-btn:focus-visible,.pm-q-switch:focus-visible{outline:2px solid var(--fuel-accent,#f59e0b);outline-offset:2px}.rail-journey-map{height:360px;width:100%;border-radius:12px;overflow:hidden}.rail-journey-map .leaflet-container{height:100%;width:100%;background:#0b1220}.pm-date{border:1px solid var(--glass-border);border-radius:999px;padding:.24rem .55rem;font-size:.76rem;background:var(--glass-soft);color:var(--glass-text);transition:border-color .18s ease}.pm-date:hover{border-color:color-mix(in srgb,var(--glass-text) 32%,transparent)}.pm-info{position:absolute;top:.75rem;right:.75rem;max-width:20rem;padding:.55rem .8rem;border-radius:14px;background:var(--glass-bg);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);border:1px solid var(--glass-border);color:var(--glass-text);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;z-index:800;box-shadow:var(--glass-shadow)}.pm-info-sub{color:var(--glass-muted);font-size:.74rem;margin-top:.15rem}.pm-info-error{color:color-mix(in srgb,var(--danger) 78%,var(--glass-text));font-weight:600}.pm-legend{position:absolute;bottom:.85rem;left:.75rem;display:flex;flex-direction:column;gap:.35rem;padding:.55rem .7rem;border-radius:14px;background:var(--glass-bg);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);border:1px solid var(--glass-border);color:var(--glass-text);font-size:.74rem;z-index:800;box-shadow:var(--glass-shadow)}.pm-legend-row{display:flex;align-items:center;gap:.4rem}.pm-legend-bar{width:4.5rem;height:.55rem;border-radius:999px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--glass-text) 14%,transparent)}.pm-legend-stale{width:1.1rem;height:.55rem;border-radius:3px;border:1px dashed color-mix(in srgb,var(--glass-text) 65%,transparent)}.pm-legend-dot{width:.7rem;height:.7rem;border-radius:999px;border:1px solid rgba(15,23,42,.35)}.station-detail{display:flex;flex-direction:column;gap:1rem}.station-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1rem;gap:1rem;align-items:start}.station-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.station-head h2{margin:0}.station-window{margin:.2rem 0 0}.station-id,.station-window{color:var(--muted);font-size:.85rem}.station-id{font-weight:700}.chip-row{display:flex;flex-wrap:wrap;gap:.4rem}.toggle-chip{border:1px solid var(--border);border-radius:999px;padding:.3rem .7rem;font-size:.8rem;font-weight:600;cursor:pointer;background:var(--panel);color:var(--text)}.toggle-chip[data-active=true]{background:var(--accent);border-color:var(--accent);color:#06231f}.station-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:1rem;gap:1rem;margin-top:1rem}.station-profile-grid h4{margin:0 0 .35rem}.rail-embed-map{position:relative;width:100%;height:560px;border-radius:8px;overflow:hidden}.rail-mode-toggle{display:inline-flex;gap:.3rem;align-self:end}.rail-mode-toggle button{border:1px solid var(--border);border-radius:999px;padding:.3rem .7rem;font-size:.8rem;font-weight:700;cursor:pointer;background:var(--panel);color:var(--text)}.rail-mode-toggle button[data-active=true]{background:#2563eb;border-color:#2563eb;color:#fff}.rail-train-head{display:flex;align-items:center;gap:.9rem}.rail-train-head h2{margin:0}.rail-train-pill-lg{font-size:1rem;padding:.25rem .9rem}.rail-journey{list-style:none;margin:.5rem 0 0;padding:0}.rail-journey-stop{display:grid;grid-template-columns:1rem 5.5rem minmax(0,1fr) auto;align-items:center;grid-gap:.75rem;gap:.75rem;padding:.5rem .25rem;border-bottom:1px solid var(--border);position:relative}.rail-journey-dot{width:.7rem;height:.7rem;border-radius:999px;background:var(--accent);border:2px solid var(--panel);box-shadow:0 0 0 2px var(--accent)}.rail-journey-stop[data-cancelled=true] .rail-journey-name{text-decoration:line-through;opacity:.55}.rail-journey-times{display:flex;flex-direction:column;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-journey-time{font-weight:800}.rail-journey-delayed{font-size:.8rem;font-weight:800}.rail-journey-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-journey-platform{color:var(--muted);font-size:.82rem;white-space:nowrap}.rail-station-board{--rail-board-row-height:5.55rem;display:flex;flex-direction:column;min-width:0;height:34rem;padding:0;overflow:hidden;border:0;color:#f8fafc}@media (max-width:42rem){.rail-station-board{--rail-board-row-height:6.45rem;height:34rem}}@media (max-width:25.5rem){.rail-station-board{--rail-board-row-height:6.7rem;height:34.5rem}}.rail-station-board--departure{--rail-board-platform-fg:#0751c8;background:linear-gradient(160deg,#0a3aa0,#0751c8 42%,#063f9c)}.rail-station-board--arrival{--rail-board-platform-fg:#007f5f;background:linear-gradient(160deg,#04543c,#007f5f 44%,#045c46)}.rail-station-board--direction{--rail-board-platform-fg:#0751c8;background:linear-gradient(160deg,#0a3aa0,#0751c8 42%,#063f9c)}.rail-board-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem 1rem;background:rgba(2,6,23,.28);border-bottom:1px solid rgba(255,255,255,.12)}.rail-board-header-title{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.rail-board-header-icon{font-weight:900;letter-spacing:-.05em;opacity:.9}.rail-board-title{font-size:.95rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rail-board-tools{gap:.6rem}.rail-board-tools,.rail-past-toggle{display:inline-flex;align-items:center}.rail-past-toggle{gap:.45rem;border:0;background:transparent;color:#e2e8f0;font-size:.74rem;font-weight:600;cursor:pointer;padding:0}.rail-past-label{white-space:nowrap}@media (max-width:25.5rem){.rail-past-label{display:none}}.rail-past-switch{position:relative;width:2.1rem;height:1.1rem;border-radius:999px;background:rgba(255,255,255,.24);transition:background .15s ease;flex:none}.rail-past-switch:after{content:"";position:absolute;top:.13rem;left:.13rem;width:.84rem;height:.84rem;border-radius:999px;background:#fff;transition:transform .15s ease}.rail-past-toggle[data-active=true] .rail-past-switch{background:rgba(255,255,255,.85)}.rail-past-toggle[data-active=true] .rail-past-switch:after{transform:translateX(1rem);background:#0f172a}.rail-board-count{min-width:1.7rem;text-align:center;border-radius:999px;padding:.1rem .5rem;background:rgba(255,255,255,.18);color:#fff;font-size:.82rem;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-board-rows{display:flex;flex-direction:column;align-content:flex-start;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.rail-board-rows:after{content:"";display:block;min-height:1.25rem}.rail-board-rows::-webkit-scrollbar{width:.55rem}.rail-board-rows::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(248,250,252,.36)}.rail-board-row{border-bottom:1px solid rgba(255,255,255,.1)}.rail-board-body{display:grid;grid-template-columns:5rem minmax(0,1fr) minmax(2.6rem,max-content);align-items:center;grid-gap:.34rem .85rem;gap:.34rem .85rem;padding:.65rem 1rem}.rail-board-time-stack{min-width:0}.rail-board-time{color:#f8fafc;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:900;line-height:1}.rail-board-delay-row{display:inline-flex;align-items:center;gap:.3rem;margin-top:.28rem}.rail-board-delayed-time{color:#fdba74;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:900;line-height:1}.rail-board-delay{display:inline-block;padding:.09rem .45rem;border-radius:999px;color:#fff;font-size:.68rem;font-weight:800;line-height:1.3;white-space:nowrap}.rail-board-main{min-width:0}.rail-board-destination{display:block;color:#f8fafc;font-size:1.5rem;font-weight:900;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-board-meta-row{display:flex;align-items:center;gap:.4rem;margin-top:.32rem;min-width:0}.rail-mode-badge{align-items:center;gap:.28rem;font-size:.72rem;padding:.14rem .42rem}.rail-board-train-pill,.rail-mode-badge{display:inline-flex;font-weight:800;color:#e2e8f0;background:rgba(15,23,42,.55);border-radius:6px;white-space:nowrap;text-decoration:none}.rail-board-train-pill{max-width:min(11rem,100%);padding:.12rem .5rem;font-size:.74rem;overflow:hidden;text-overflow:ellipsis}.rail-board-platform-col{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.rail-board-platform{display:inline-flex;align-items:center;justify-content:center;flex:0 0 2.25rem;width:2.25rem;height:2.25rem;min-width:2.25rem;min-height:2.25rem;max-width:2.25rem;max-height:2.25rem;aspect-ratio:1/1;border-radius:5px;background:#f8fafc;color:var(--rail-board-platform-fg,#0751c8);padding:0;font-size:1rem;font-weight:950;line-height:1;overflow-wrap:anywhere;overflow:hidden;text-align:center;box-shadow:0 1px 0 rgba(15,23,42,.1),inset 0 0 0 1px rgba(15,23,42,.1)}.rail-board-platform[data-estimated=true]{color:#fff;opacity:.92;box-shadow:0 0 0 2px rgba(248,250,252,.22),inset 0 0 0 1px rgba(15,23,42,.16)}.rail-board-platform[data-long=true]{flex-basis:auto;width:auto;min-width:2.25rem;max-width:5.6rem;aspect-ratio:auto;padding:0 .34rem;font-size:.6rem;line-height:1.1;white-space:normal;overflow-wrap:normal;text-align:center}.rail-board-platform-alternatives{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.16rem;max-width:7rem;overflow:hidden}.rail-board-platform-alt{display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.18rem;width:1.18rem;height:1.18rem;min-width:1.18rem;min-height:1.18rem;max-width:1.18rem;max-height:1.18rem;aspect-ratio:1/1;border-radius:4px;color:#fff;padding:0;font-size:.56rem;font-weight:950;line-height:1;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}.rail-board-platform-alt[data-long=true]{flex-basis:auto;width:auto;min-width:1.18rem;max-width:3.8rem;aspect-ratio:auto;padding:0 .24rem;font-size:.5rem}.rail-board-delay-reason-band{padding:.28rem 1rem;background:linear-gradient(90deg,#c2410c,#ea580c);color:#fff;font-size:.74rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-board-empty{padding:1.4rem 1rem;color:rgba(248,250,252,.75);font-size:.85rem}.rail-board-row[data-cancelled=true] .rail-board-destination{text-decoration:line-through;opacity:.6}.rail-board-row[data-past=true]{opacity:.62}.rail-toolbar-row{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}.rail-toolbar-stack{justify-content:space-between}.rail-toolbar-group{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.rail-toolbar-label{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.rail-panel-toggle,.rail-seg-toggle{display:inline-flex;gap:.3rem}.rail-panel-chip,.rail-seg-toggle button{border:1px solid var(--border);border-radius:999px;padding:.3rem .85rem;font-size:.8rem;font-weight:700;cursor:pointer;background:var(--panel);color:var(--text)}.rail-seg-toggle button[data-active=true]{background:#2563eb;border-color:#2563eb;color:#fff}.rail-panel-chip--dep[data-active=true]{background:#0751c8;border-color:#0751c8;color:#fff}.rail-panel-chip--arr[data-active=true]{background:#007f5f;border-color:#007f5f;color:#fff}.rail-search-form{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.rail-search-form label{display:grid;grid-gap:.32rem;gap:.32rem;min-width:0}.rail-search-form label>span{color:var(--muted);font-size:.78rem}.rail-search-form input{min-height:2.5rem;width:100%;border:1px solid var(--border);border-radius:8px;background:var(--panel-soft);color:var(--text);padding:.45rem .6rem}.rail-search-field{flex:1 1 26rem}.rail-instant-field{flex:0 0 12rem}.rail-search-input{position:relative}.rail-search-input input{padding-right:2rem}.rail-search-clear{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);font-size:1.2rem;line-height:1;cursor:pointer;padding:0}.rail-search-form>button[type=submit]{min-height:2.5rem;padding:0 1.4rem;border:1px solid color-mix(in oklab,var(--accent) 80%,var(--border));border-radius:8px;background:var(--accent);color:#06231f;font-weight:800;cursor:pointer}.rail-at-clear{min-height:2.5rem;padding:0 .9rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);font-weight:700;cursor:pointer}.rail-station-plan-map{height:340px;width:100%;border-radius:12px;overflow:hidden;margin-top:.5rem}.rail-station-plan-map .leaflet-container{height:100%;width:100%}.rail-lines-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.rail-dot{display:inline-block;width:.6rem;height:.6rem;border-radius:999px;margin-right:.35rem;vertical-align:middle}.rail-hero{display:flex;flex-direction:column;gap:.55rem}.rail-hero-kicker{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.rail-hero-row{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;min-width:0}.rail-hero-row h2{margin:0;font-size:1.65rem;line-height:1.1;overflow-wrap:anywhere}.rail-hero-sub{margin:0;color:var(--muted);font-size:.85rem}.rail-hero-actions{margin-left:auto;display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}@media (max-width:42rem){.rail-hero-actions{margin-left:0}}.rail-action-chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--text);font-size:.8rem;font-weight:700;line-height:1.2;padding:.38rem .85rem;cursor:pointer;white-space:nowrap;text-decoration:none;transition:transform .15s ease,border-color .15s ease,background .15s ease}.rail-action-chip:hover{border-color:color-mix(in srgb,var(--accent) 65%,var(--border));transform:translateY(-1px)}.rail-action-chip--sm{font-size:.74rem;padding:.26rem .65rem}.rail-board-row{transition:background .15s ease}.rail-board-row:hover{background:rgba(255,255,255,.07)}a.rail-board-train-pill,a.rail-mode-badge{transition:filter .15s ease}a.rail-board-train-pill:hover,a.rail-mode-badge:hover{filter:brightness(1.14)}.rail-table tbody tr{transition:background .12s ease}.rail-table tbody tr:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.rail-table .rail-num{text-align:right}.rail-table .rail-num,.rail-table td,.rail-table th{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-at-clear,.rail-mode-toggle button,.rail-panel-chip,.rail-seg-toggle button{transition:background .15s ease,color .15s ease,border-color .15s ease}.rail-mode-toggle button:hover:not([data-active=true]),.rail-panel-chip:hover:not([data-active=true]),.rail-seg-toggle button:hover:not([data-active=true]){border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.rail-action-chip:focus-visible,.rail-mode-toggle button:focus-visible,.rail-panel-chip:focus-visible,.rail-past-toggle:focus-visible,.rail-search-clear:focus-visible,.rail-search-form button:focus-visible,.rail-seg-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rail-collapse>summary{cursor:pointer;font-weight:700;font-size:.92rem;list-style:none;display:flex;align-items:center;gap:.45rem}.rail-collapse>summary::-webkit-details-marker{display:none}.rail-collapse>summary:before{content:"";width:.45rem;height:.45rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .15s ease;flex:0 0 auto}.rail-collapse[open]>summary:before{transform:rotate(45deg)}.rail-scope{--rail-accent:var(--accent)}.rail-scope .card{position:relative;border-radius:15px;padding:1.15rem 1.25rem;border-color:color-mix(in srgb,var(--rail-accent) 13%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04);transition:border-color .18s ease,box-shadow .18s ease}@keyframes rail-card-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.rail-scope .card,.rail-scope .metrics{animation:rail-card-in .25s ease-out backwards}.rail-scope .card:nth-child(2),.rail-scope .metrics:nth-child(2){animation-delay:.04s}.rail-scope .card:nth-child(3),.rail-scope .metrics:nth-child(3){animation-delay:.08s}.rail-scope .card:nth-child(4),.rail-scope .metrics:nth-child(4){animation-delay:.12s}.rail-scope .card:nth-child(5),.rail-scope .metrics:nth-child(5){animation-delay:.16s}.rail-scope .card:nth-child(n+6),.rail-scope .metrics:nth-child(n+6){animation-delay:.2s}.rail-live-dot{display:inline-block;flex:0 0 auto;width:.55rem;height:.55rem;border-radius:999px;background:#22c55e;animation:rail-live-pulse 2s ease-out infinite}@keyframes rail-live-pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.45)}70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}to{box-shadow:0 0 0 0 rgba(34,197,94,0)}}.rail-scope .rail-hero{overflow:hidden}.rail-scope .rail-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--rail-accent) 0,color-mix(in srgb,var(--rail-accent) 45%,transparent) 48%,transparent 85%)}.rail-scope .rail-hero-kicker{font-size:.68rem;letter-spacing:.14em;color:color-mix(in srgb,var(--rail-accent) 42%,var(--muted))}.rail-scope .rail-hero-row h2{font-size:1.75rem;font-weight:950;letter-spacing:-.02em}.rail-scope .rail-hero .rail-badge-idfm-icon{height:2.2rem;max-width:11rem}.rail-scope .rail-hero .rail-badge-idfm-mode-icon{width:2.2rem;height:2.2rem}.rail-scope .rail-hero .rail-badge-icon-wrap{min-width:2.2rem;min-height:2.2rem}.rail-scope .rail-hero .rail-badge-line,.rail-scope .rail-hero .rail-badge-mode{min-height:2.2rem;font-size:.95rem}.rail-scope .rail-hero .rail-badge-code{height:2.2rem;min-width:2.2rem;font-size:1.05rem}.rail-scope .metric{position:relative;overflow:hidden;border-radius:13px;padding:.95rem 1.05rem .95rem 1.2rem;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.rail-scope .metric:before{content:"";position:absolute;left:0;top:.75rem;bottom:.75rem;width:2px;border-radius:999px;background:color-mix(in srgb,var(--rail-accent) 70%,transparent)}.rail-scope .metric:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--rail-accent) 38%,var(--border));box-shadow:0 12px 28px color-mix(in srgb,var(--rail-accent) 10%,rgba(2,6,23,.18))}.rail-scope .metric-value{font-size:1.5rem;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-scope .metric-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.rail-remote-map .map-box,.rail-scope .rail-embed-map,.rail-scope .rail-journey-map,.rail-scope .rail-station-plan-map{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 16px 38px rgba(2,6,23,.22)}.rail-remote-map .map-box:after,.rail-scope .rail-embed-map:after,.rail-scope .rail-journey-map:after,.rail-scope .rail-station-plan-map:after{content:"";position:absolute;inset:0;z-index:640;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rail-accent,var(--accent)) 24%,var(--border));background:radial-gradient(120% 120% at 50% 42%,transparent 64%,rgba(2,6,23,.1) 100%)}:root[data-theme=dark] .rail-remote-map .map-box:after,:root[data-theme=dark] .rail-scope .rail-embed-map:after,:root[data-theme=dark] .rail-scope .rail-journey-map:after,:root[data-theme=dark] .rail-scope .rail-station-plan-map:after{background:radial-gradient(120% 120% at 50% 42%,transparent 58%,rgba(2,6,23,.3) 100%)}.rail-scope .card.rail-station-board{padding:0;border:0;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.07)}.rail-scope .rail-station-board--departure,.rail-scope .rail-station-board--direction{background:linear-gradient(168deg,#082e85,#0751c8 46%,#04306f)}.rail-scope .rail-station-board--arrival{background:linear-gradient(168deg,#033a2a,#007f5f 46%,#023c2e)}.rail-scope .rail-station-board:after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}.rail-scope .rail-board-rows{overflow-x:hidden}.rail-scope .rail-board-row{border-bottom:1px solid rgba(255,255,255,.13);transition:background .18s ease,transform .18s ease}.rail-scope .rail-board-row:hover{background:rgba(255,255,255,.09);transform:translateX(2px)}.rail-scope .rail-board-delay{box-shadow:0 0 12px color-mix(in srgb,currentColor 25%,transparent)}@keyframes rail-delay-pulse{0%,to{box-shadow:0 0 6px color-mix(in srgb,currentColor 18%,transparent)}50%{box-shadow:0 0 14px color-mix(in srgb,currentColor 45%,transparent)}}.rail-scope .rail-board-delay[data-delayed=true]{animation:rail-delay-pulse 2.4s ease-in-out infinite}.rail-scope .rail-status-lg{font-size:.82rem;font-weight:900;letter-spacing:.02em;padding:.4rem .85rem}.rail-scope .rail-action-chip{border-color:color-mix(in srgb,var(--rail-accent) 35%,var(--border));background:color-mix(in srgb,var(--rail-accent) 12%,var(--panel))}.rail-scope .rail-action-chip:hover{border-color:color-mix(in srgb,var(--rail-accent) 55%,var(--border));background:color-mix(in srgb,var(--rail-accent) 20%,var(--panel))}.rail-scope .control-form input,.rail-scope .control-form select,.rail-scope .rail-search-form input{min-height:2.55rem;border-radius:10px;transition:border-color .18s ease,box-shadow .18s ease}.rail-scope .control-form input:focus-visible,.rail-scope .control-form select:focus-visible,.rail-scope .rail-search-form input:focus-visible{outline:none;border-color:color-mix(in srgb,var(--rail-accent) 60%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--rail-accent) 22%,transparent)}.rail-scope .control-form button{border-radius:10px;transition:background .18s ease,border-color .18s ease,transform .18s ease}.rail-scope .control-form button[type=button]{background:var(--panel);color:var(--text);border:1px solid var(--border);font-weight:700}.rail-scope .control-form button:hover{transform:translateY(-1px)}.rail-scope .control-form button[type=button]:hover{border-color:color-mix(in srgb,var(--rail-accent) 45%,var(--border));background:color-mix(in srgb,var(--rail-accent) 10%,var(--panel))}.rail-input-icon{position:relative}.rail-input-icon>svg{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.rail-input-icon>input{width:100%;padding-left:2.15rem}.rail-scope .rail-journey-stop{border-bottom:0;border-radius:10px;padding:.55rem .25rem;transition:background .18s ease}.rail-scope .rail-journey-stop:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.rail-scope .rail-journey-stop:before{content:"";position:absolute;left:calc(.75rem - 1px);top:0;bottom:0;width:2px;background:color-mix(in srgb,var(--rail-accent) 45%,transparent)}.rail-scope .rail-journey-stop:first-child:before{top:50%}.rail-scope .rail-journey-stop:last-child:before{bottom:50%}.rail-scope .rail-journey-dot{position:relative;z-index:1;justify-self:center;width:.74rem;height:.74rem;background:var(--rail-accent);border:2px solid var(--panel);box-shadow:0 0 0 2px var(--rail-accent)}.rail-scope .rail-journey-stop[data-state=future] .rail-journey-dot{background:var(--panel);box-shadow:0 0 0 2px color-mix(in srgb,var(--rail-accent) 55%,transparent)}.rail-scope .rail-journey-stop[data-state=next] .rail-journey-dot{animation:rail-journey-next 2s ease-out infinite}@keyframes rail-journey-next{0%{box-shadow:0 0 0 2px var(--rail-accent),0 0 0 2px color-mix(in srgb,var(--rail-accent) 45%,transparent)}70%{box-shadow:0 0 0 2px var(--rail-accent),0 0 0 9px color-mix(in srgb,var(--rail-accent) 0%,transparent)}to{box-shadow:0 0 0 2px var(--rail-accent),0 0 0 2px color-mix(in srgb,var(--rail-accent) 0%,transparent)}}.rail-count-cell{display:inline-flex;align-items:center;justify-content:flex-end;gap:.55rem;min-width:0}.rail-count-bar{flex:0 0 auto;width:5.2rem;height:.38rem;border-radius:999px;background:color-mix(in srgb,var(--text) 9%,transparent);overflow:hidden}.rail-count-bar>span{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--rail-accent,var(--accent))}.rail-scope .rail-lines-list .rail-mode-badge{transition:transform .18s ease,filter .18s ease}.rail-scope .rail-lines-list .rail-mode-badge:hover{transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.rail-live-dot,.rail-scope .card,.rail-scope .metrics,.rail-scope .rail-board-delay[data-delayed=true],.rail-scope .rail-journey-stop[data-state=next] .rail-journey-dot{animation:none}.rail-scope .card,.rail-scope .control-form button,.rail-scope .metric,.rail-scope .rail-action-chip,.rail-scope .rail-board-row,.rail-scope .rail-lines-list .rail-mode-badge{transition:none}.rail-scope .control-form button:hover,.rail-scope .metric:hover,.rail-scope .rail-board-row:hover,.rail-scope .rail-lines-list .rail-mode-badge:hover{transform:none}}.fuel-scope{--fuel-accent:#f59e0b}.fuel-scope .card{position:relative;border-radius:15px;padding:1.15rem 1.25rem;border-color:color-mix(in srgb,var(--fuel-accent) 13%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04);transition:border-color .18s ease,box-shadow .18s ease}@keyframes fuel-card-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.fuel-scope .card{animation:fuel-card-in .25s ease-out backwards}.fuel-scope .card:nth-child(2){animation-delay:.04s}.fuel-scope .card:nth-child(3){animation-delay:.08s}.fuel-scope .card:nth-child(4){animation-delay:.12s}.fuel-scope .card:nth-child(5){animation-delay:.16s}.fuel-scope .card:nth-child(n+6){animation-delay:.2s}.fuel-scope .card>h3,.fuel-scope .em-chart-head h3,.fuel-scope .maps-map-head h3{position:relative;padding-bottom:.55rem}.fuel-scope .card>h3:after,.fuel-scope .em-chart-head h3:after,.fuel-scope .maps-map-head h3:after{content:"";position:absolute;left:0;bottom:0;width:3.2rem;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--fuel-accent),color-mix(in srgb,var(--fuel-accent) 35%,transparent) 70%,transparent)}.fuel-scope .fuel-history-card{overflow:hidden}.fuel-scope .fuel-history-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--fuel-accent) 0,color-mix(in srgb,var(--fuel-accent) 45%,transparent) 48%,transparent 85%)}.fuel-scope .fuel-history-card:hover{border-color:color-mix(in srgb,var(--fuel-accent) 32%,var(--border))}.fuel-scope .fuel-swatch{border-color:color-mix(in srgb,var(--fuel-accent) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--fuel-accent) 18%,transparent),0 0 14px color-mix(in srgb,var(--fuel-accent) 40%,transparent)}.fuel-scope .fuel-title-row h3{font-weight:800;letter-spacing:-.01em}.fuel-scope .fuel-stats dd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fuel-scope .fuel-stats div{border-bottom-color:color-mix(in srgb,var(--fuel-accent) 14%,var(--border));transition:background .18s ease}.fuel-scope .fuel-stats div:hover{background:color-mix(in srgb,var(--fuel-accent) 7%,transparent)}.fuel-scope .fuel-stats div[data-hero=true] dt{font-weight:700}.fuel-scope .fuel-stats div[data-hero=true] dd{font-size:1.18rem;font-weight:900;color:color-mix(in srgb,var(--fuel-accent) 62%,var(--text))}.fuel-scope .control-form input:not([type=checkbox]),.fuel-scope .control-form select,.fuel-scope .maps-field input:not([type=checkbox]),.fuel-scope .maps-field select{min-height:2.55rem;border-radius:10px;border:1px solid var(--border);background:var(--panel-soft);color:var(--text);padding:.45rem .55rem;transition:border-color .18s ease,box-shadow .18s ease}.fuel-scope .control-form input:not([type=checkbox]):focus-visible,.fuel-scope .control-form select:focus-visible,.fuel-scope .maps-field input:not([type=checkbox]):focus-visible,.fuel-scope .maps-field select:focus-visible{outline:none;border-color:color-mix(in srgb,var(--fuel-accent) 60%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--fuel-accent) 22%,transparent)}.fuel-scope .check-row input:focus-visible,.fuel-scope .eh-default-btn:focus-visible,.fuel-scope .eh-q-switch:focus-visible,.fuel-scope .em-q-switch:focus-visible,.fuel-scope .em-retry:focus-visible,.fuel-scope .esx-retry:focus-visible{outline:2px solid var(--fuel-accent);outline-offset:2px}.fuel-scope .maps-filters{position:-webkit-sticky;position:sticky;top:4.35rem;max-height:calc(100vh - 5.2rem);overflow-y:auto;scrollbar-width:thin;background:var(--glass-bg);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);border-color:var(--glass-border)}@media (max-width:60rem){.fuel-scope .maps-filters{position:static;max-height:none;overflow-y:visible}}.fuel-scope .maps-map-box{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 16px 38px rgba(2,6,23,.22)}.fuel-scope .maps-map-box:after{content:"";position:absolute;inset:0;z-index:640;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fuel-accent) 24%,var(--border));background:radial-gradient(120% 120% at 50% 42%,transparent 64%,rgba(2,6,23,.1) 100%)}:root[data-theme=dark] .fuel-scope .maps-map-box:after{background:radial-gradient(120% 120% at 50% 42%,transparent 58%,rgba(2,6,23,.3) 100%)}.fuel-scope .maps-legend-bar{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 14%,transparent)}.fuel-scope{--card-bg:var(--glass-bg-strong)}.fuel-scope .velib-station-cb-row{position:relative}.fuel-scope .velib-station-cb-row:before{content:"";position:absolute;left:.7rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;pointer-events:none;background:var(--muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center /contain no-repeat}.fuel-scope .control-form .velib-station-cb-row input:not([type=checkbox]),.fuel-scope .velib-station-cb-row input{padding-left:2.15rem}.fuel-scope .velib-station-cb-list{border-radius:12px;border-color:var(--glass-border);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);box-shadow:var(--glass-shadow);color:var(--glass-text)}@media (prefers-reduced-motion:reduce){.fuel-scope .card{animation:none}.fuel-scope .card,.fuel-scope .control-form input,.fuel-scope .control-form select,.fuel-scope .fuel-stats div,.fuel-scope .maps-field input,.fuel-scope .maps-field select,.pm-chip,.pm-country-btn,.pm-date,.pm-fuel-btn{transition:none}.pm-country-btn:hover:not([data-active=true]),.pm-fuel-btn:hover{transform:none}}.tax-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:1rem;gap:1rem;align-items:end}.tax-amount input{font-size:1.6rem;font-weight:800;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);width:100%}.tax-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:1rem;gap:1rem}.tax-country-card{display:flex;flex-direction:column;gap:.6rem}.tax-country-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.tax-country-head h3{margin:0}.tax-net{display:flex;flex-direction:column;align-items:flex-end;font-size:1.35rem;font-weight:800;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tax-net small{font-size:.7rem;font-weight:600;color:var(--muted)}.velib-activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:1rem;gap:1rem}.velib-activity-card{display:flex;flex-direction:column;gap:.6rem}.data-launcher-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,8.5rem));grid-gap:.75rem;gap:.75rem;justify-content:center;justify-items:center;margin-bottom:1rem}.data-launcher-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;aspect-ratio:1/1;width:100%;max-width:8.5rem;gap:.5rem;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);color:var(--tile-accent,var(--accent));text-decoration:none;transition:transform .16s ease,border-color .16s ease}.data-launcher-tile span{color:var(--text);font-size:.75rem;font-weight:600;line-height:1.2}.data-launcher-tile:hover{border-color:rgba(20,184,166,.58);transform:translateY(-1px)}.data-cards-masonry{columns:35rem;column-gap:1rem}@media (max-width:60rem){.data-cards-masonry{columns:1}}.data-card{display:inline-flex;width:100%;break-inside:avoid;page-break-inside:avoid;margin:0 0 1.25rem;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow);flex-direction:column;gap:.72rem}.data-card-error{border-color:rgba(248,113,113,.45)}.data-card-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;grid-gap:.7rem;gap:.7rem}.data-card-icon{display:inline-flex}.data-card-heading{min-width:0}.data-card-heading h3{margin:0;font-size:1.2rem}.data-card-meta{color:var(--muted);font-size:.75rem}.data-status{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--muted)}.data-status-dot{width:.68rem;height:.68rem;border-radius:999px}.data-card-summary{margin:0;font-size:.9rem;color:var(--muted)}.data-card-err-note{margin:0;font-size:.85rem;font-weight:600;color:#ef4444}.data-fuel-controls{display:flex;flex-wrap:wrap;gap:.75rem}.data-fuel-group{display:inline-flex;gap:.3rem}.data-fuel-group button{border:1px solid color-mix(in oklab,var(--accent) 55%,var(--border));border-radius:8px;padding:.2rem .55rem;font-size:.75rem;font-weight:700;cursor:pointer;background:var(--panel);color:var(--accent)}.data-fuel-group button[data-active=true]{background:var(--accent);color:#06231f}.data-sparkline{width:100%;border-radius:8px;border:1px solid rgba(148,163,184,.2);background:rgba(255,255,255,.34);padding:.75rem}:root[data-theme=dark] .data-sparkline{background:rgba(2,6,23,.22);border-color:rgba(148,163,184,.18)}.data-sparkline-title{margin:0 0 .3rem;font-size:.875rem;font-weight:700}.data-insight-visuals{display:flex;flex-direction:column;gap:1.25rem;width:100%;margin-top:.28rem}.data-insight-echart{height:270px;min-height:270px}.data-insight-echart-sm{height:242px;min-height:242px}.data-insight-heatmap{height:294px;min-height:294px}@media (max-width:42rem){.data-insight-echart{height:250px;min-height:250px}.data-insight-echart-sm{height:232px;min-height:232px}.data-insight-heatmap{height:286px;min-height:286px}}.data-mode-toggle{display:inline-flex;gap:.3rem;flex-wrap:wrap}.data-mode-toggle button{border:1px solid color-mix(in oklab,var(--accent) 55%,var(--border));border-radius:8px;padding:.22rem .6rem;font-size:.76rem;font-weight:700;cursor:pointer;background:var(--panel);color:var(--accent-text)}.data-mode-toggle button[data-active=true]{background:var(--accent);border-color:var(--accent);color:#06231f}.data-badge-distribution{display:grid;grid-gap:.62rem;gap:.62rem}.data-badge-distribution-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.65rem;gap:.65rem}.data-bike-info-badge{--data-badge-fill:0%;--data-badge-color:#0891b2;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.34rem;min-width:6.05rem;min-height:1.82rem;overflow:hidden;border-radius:8px;border:1px solid color-mix(in srgb,var(--data-badge-color) 36%,rgba(100,116,139,.28));background:rgba(248,250,252,.76);color:var(--text);padding:.26rem .5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:root[data-theme=dark] .data-bike-info-badge{border-color:rgba(148,163,184,.26);background:rgba(15,23,42,.52);color:#f8fafc}.data-bike-info-badge:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--data-badge-fill);background:var(--data-badge-color);opacity:.15}.data-bike-info-badge>*{position:relative;z-index:1}.data-bike-rating-stars{display:inline-flex;align-items:center;color:#f59e0b;white-space:nowrap;font-size:.92rem;line-height:1}.data-bike-star--empty{color:#cbd5e1}:root[data-theme=dark] .data-bike-star--empty{color:#64748b}.data-bike-battery-icon{color:var(--data-badge-color);display:inline-flex}.data-bike-info-value{font-size:.78rem;font-weight:850;line-height:1;white-space:nowrap}.data-badge-distribution-main{min-width:0;display:grid;grid-gap:.26rem;gap:.26rem}.data-badge-distribution-label{font-size:.8rem;font-weight:800;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-badge-distribution-track{height:.5rem;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden}.data-badge-distribution-fill{height:100%;border-radius:999px;background:var(--data-badge-color)}.data-badge-distribution-side{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;min-width:4.6rem}.data-badge-distribution-value{font-size:.84rem;font-weight:900;line-height:1;white-space:nowrap}.data-badge-distribution-detail{color:var(--muted);font-size:.7rem;font-weight:700;line-height:1;white-space:nowrap}.viz-block{width:100%}.viz-title{margin:0 0 .35rem;font-size:.9rem}.cmp-bars{gap:.6rem}.cmp-bars,.cmp-row{display:flex;flex-direction:column}.cmp-row{gap:.25rem}.cmp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem}.cmp-label{color:var(--muted);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-value{font-weight:700;font-size:.88rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.cmp-track{width:100%;height:.62rem;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden}:root[data-theme=dark] .cmp-track{background:rgba(148,163,184,.16)}.cmp-fill{height:100%;min-width:.62rem;border-radius:999px;box-shadow:0 0 24px rgba(20,184,166,.28)}.cmp-detail{color:var(--muted);font-size:.72rem}.velib-dash-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,460px);grid-gap:1rem;gap:1rem;align-items:stretch}.velib-embed-map{width:100%;height:420px;min-height:420px;border-radius:8px;overflow:hidden}.velib-embed-map .leaflet-container{width:100%;height:100%;border-radius:8px;background:var(--panel-soft)}:root[data-theme=dark] .velib-embed-map .leaflet-tile{filter:invert(1) hue-rotate(180deg) saturate(.72) brightness(.78) contrast(1.08)}.best-list{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.best-row{display:flex;align-items:center;gap:.6rem;padding:.45rem .5rem;border-radius:8px;text-decoration:none;color:var(--text)}.best-row:hover{background:var(--panel-soft)}.best-dot{width:.7rem;height:.7rem;border-radius:999px;flex:0 0 auto}.best-name{font-weight:600;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.best-metrics{color:var(--muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:0 0 auto}@media (max-width:60rem){.velib-dash-grid{grid-template-columns:1fr}.best-metrics{display:none}}@media (max-width:48rem){.pm-country-btn,.pm-fuel-btn{min-width:0;padding:.4rem .6rem;font-size:.72rem}.pm-controls{gap:.35rem;padding:.35rem .45rem}}.maps-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:start}.maps-filters{gap:.85rem}.maps-field,.maps-filters{display:flex;flex-direction:column}.maps-field{gap:.3rem}.maps-field span{font-size:.78rem;color:var(--muted);font-weight:600}.maps-field select{padding:.45rem .55rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);font-size:.9rem}.maps-map-card{display:flex;flex-direction:column;gap:.6rem}.maps-map-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.maps-map-head h3{margin:0}.maps-metric{color:var(--muted);font-size:.82rem}.maps-map-box{width:100%;height:560px;min-height:560px;border-radius:8px;overflow:hidden}.maps-map-box .leaflet-container{width:100%;height:100%;border-radius:8px;background:var(--panel-soft)}:root[data-theme=dark] .maps-map-box .leaflet-tile{filter:invert(1) hue-rotate(180deg) saturate(.72) brightness(.78) contrast(1.08)}.maps-legend{display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.maps-legend-bar{width:5rem;height:.55rem;border-radius:999px}@media (max-width:60rem){.maps-layout{grid-template-columns:1fr}.maps-map-box{height:440px;min-height:440px}}.empty-state,.map-empty{min-height:10rem;display:grid;place-items:center;grid-gap:.35rem;gap:.35rem;border:1px dashed var(--border);border-radius:8px;background:var(--panel-soft);color:var(--muted);text-align:center;padding:1rem}.bounded-skeleton{min-height:3rem;display:grid;place-items:center;border-radius:8px;background:linear-gradient(90deg,var(--panel-soft),color-mix(in oklab,var(--panel-soft) 72%,var(--panel)),var(--panel-soft));color:var(--muted);margin-bottom:.65rem}.remote-panel{display:grid;grid-gap:.65rem;gap:.65rem}.empty-state strong{color:var(--text)}.empty-state p{max-width:42rem}.table-wrap{overflow-x:auto}.simple-table{width:100%;border-collapse:collapse;min-width:520px}.simple-table td,.simple-table th{padding:.55rem;border-bottom:1px solid var(--border);text-align:left;font-size:.86rem}.simple-table th{color:var(--muted);font-weight:650}.table-note{margin-top:.65rem;color:var(--muted);font-size:.82rem}.table-pager{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;margin-top:.55rem}.table-pager button{min-width:1.9rem;min-height:1.9rem;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);cursor:pointer;line-height:1}.table-pager button:disabled{opacity:.4;cursor:default}.table-pager-status{color:var(--muted);font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:0 .35rem}.has-tooltip{position:relative;cursor:help}.has-tooltip:focus-visible:after,.has-tooltip:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:max-content;max-width:20rem;white-space:normal;padding:.45rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:.74rem;line-height:1.4;text-align:left;box-shadow:var(--shadow);pointer-events:none;z-index:60}.metiers-history-chart{width:100%;min-height:360px;height:42vh;max-height:520px;overflow:hidden}@media (max-width:42rem){.metiers-history-chart{height:min(390px,76vh);min-height:min(390px,76vh)}}.metiers-comparison-list{display:grid;grid-gap:.75rem;gap:.75rem;width:100%;margin-top:.75rem}.metiers-profile-row{display:grid;grid-template-columns:minmax(12rem,.75fr) minmax(0,1.25fr);grid-gap:1rem;gap:1rem;align-items:center;padding:.9rem;border:1px solid rgba(148,163,184,.24);border-radius:8px;background:rgba(255,255,255,.72)}:root[data-theme=dark] .metiers-profile-row{background:rgba(15,23,42,.68);border-color:rgba(148,163,184,.2)}.metiers-profile-title{display:flex;align-items:center;gap:.55rem;min-width:0}.metiers-profile-name{font-size:1rem;font-weight:600}.metiers-profile-detail{display:block;color:var(--muted);font-size:.75rem;margin-top:.25rem}.metiers-dot{width:.65rem;height:.65rem;border-radius:999px;flex:0 0 auto}.metiers-country-bars{display:grid;grid-gap:.55rem;gap:.55rem;min-width:0}.metiers-country-bar{display:grid;grid-template-columns:minmax(6rem,.45fr) minmax(0,1fr) minmax(5.5rem,auto);grid-gap:.65rem;gap:.65rem;align-items:center;min-width:0}.metiers-bar-name{color:var(--muted);font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metiers-bar-value{font-size:.875rem;font-weight:600;text-align:right;white-space:nowrap}.metiers-track{height:.72rem;border-radius:999px;overflow:hidden;background:rgba(148,163,184,.18);min-width:4rem}:root[data-theme=dark] .metiers-track{background:rgba(148,163,184,.22)}.metiers-fill{height:100%;border-radius:999px;min-width:2px}.metiers-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem;margin-top:.75rem}.metiers-region-row{display:grid;grid-template-columns:minmax(8rem,.75fr) minmax(0,1fr) minmax(4.8rem,auto);grid-gap:.65rem;gap:.65rem;align-items:center;padding:.65rem .75rem;border:1px solid rgba(148,163,184,.22);border-radius:8px;background:rgba(248,250,252,.74)}:root[data-theme=dark] .metiers-region-row{background:rgba(15,23,42,.68);border-color:rgba(148,163,184,.2)}.metiers-term-row{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center;margin-top:.55rem}.metiers-term{display:inline-flex;align-items:center;border-bottom:1px dotted;cursor:help;color:var(--accent-text);font-size:.78rem;font-weight:700;line-height:1.2;padding-bottom:1px}@media (max-width:68rem){.metiers-country-bar,.metiers-profile-row{grid-template-columns:1fr;gap:.5rem}.metiers-region-grid{grid-template-columns:1fr}}.meteo-chart{width:100%;height:330px;min-height:330px;overflow:hidden}.meteo-chart-sm{width:100%;height:280px;min-height:280px;overflow:hidden}@media (max-width:42rem){.meteo-chart{height:285px;min-height:285px}.meteo-chart-sm{height:250px;min-height:250px}}.metiers-inflation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem;margin-top:.75rem}.metiers-inflation-country{border:1px solid var(--border);border-radius:8px;background:var(--panel-soft);padding:.8rem;min-width:0}.metiers-inflation-name{display:block;font-size:.88rem;font-weight:700}.metiers-inflation-ref{display:block;color:var(--muted);font-size:.74rem;margin-bottom:.35rem}.metiers-inflation-row{display:grid;grid-template-columns:minmax(5rem,.8fr) minmax(4rem,auto) minmax(6rem,auto);grid-gap:.55rem;gap:.55rem;align-items:baseline;padding:.22rem 0}.metiers-inflation-year{color:var(--muted);font-size:.74rem}.metiers-inflation-index{color:var(--muted);font-size:.86rem}.metiers-inflation-factor{font-size:.86rem;font-weight:700;text-align:right}@media (max-width:900px){.metiers-inflation-grid,.metiers-inflation-row{grid-template-columns:1fr}.metiers-inflation-row{gap:.1rem}}.link-list{margin:0;padding-left:1.1rem;color:var(--muted)}.link-list li+li{margin-top:.45rem}.download-row{display:flex;flex-wrap:wrap;gap:.5rem}.footer{max-width:1440px;width:100%;margin:0 auto;padding:1rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:1rem;gap:1rem;background:transparent;box-shadow:none;color:var(--muted);font-size:.82rem}.footer .footer-made{text-align:center}.footer .footer-flag{height:.8em;width:auto;display:inline-block;vertical-align:-.04em;border-radius:1px}.footer .footer-sources{justify-self:end;text-align:right}.error-note{color:var(--danger)}@media (max-width:900px){.grid{grid-template-columns:1fr}.span-12,.span-4,.span-6,.span-8{grid-column:span 1}.content{padding:.75rem}.footer{grid-template-columns:1fr;justify-items:center;text-align:center}.footer .footer-sources{justify-self:center;text-align:center}.fuel-history-layout{grid-template-columns:1fr}.station-chart,.station-chart-large{height:300px;min-height:300px}}.mod-scope{--module-accent:var(--accent);--card-bg:var(--glass-bg-strong)}.mod-scope .card{position:relative;border-radius:15px;padding:1.15rem 1.25rem;border-color:color-mix(in srgb,var(--module-accent) 13%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04);transition:border-color .18s ease,box-shadow .18s ease}@keyframes mod-card-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.mod-scope .card,.mod-scope .data-card,.mod-scope .data-launcher-tile,.mod-scope .metrics{animation:mod-card-in .25s ease-out backwards}.mod-scope .card:nth-child(2),.mod-scope .data-card:nth-child(2),.mod-scope .data-launcher-tile:nth-child(2),.mod-scope .metrics:nth-child(2){animation-delay:.04s}.mod-scope .card:nth-child(3),.mod-scope .data-card:nth-child(3),.mod-scope .data-launcher-tile:nth-child(3),.mod-scope .metrics:nth-child(3){animation-delay:.08s}.mod-scope .card:nth-child(4),.mod-scope .data-card:nth-child(4),.mod-scope .data-launcher-tile:nth-child(4),.mod-scope .metrics:nth-child(4){animation-delay:.12s}.mod-scope .card:nth-child(5),.mod-scope .data-card:nth-child(5),.mod-scope .data-launcher-tile:nth-child(5),.mod-scope .metrics:nth-child(5){animation-delay:.16s}.mod-scope .card:nth-child(n+6),.mod-scope .data-card:nth-child(n+6),.mod-scope .data-launcher-tile:nth-child(n+6),.mod-scope .metrics:nth-child(n+6){animation-delay:.2s}.mod-scope .card>h2,.mod-scope .card>h3{position:relative;padding-bottom:.55rem}.mod-scope .card>h2:after,.mod-scope .card>h3:after{content:"";position:absolute;left:0;bottom:0;width:3.2rem;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--module-accent),color-mix(in srgb,var(--module-accent) 35%,transparent) 70%,transparent)}.page-kicker{display:block;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--module-accent,var(--accent)) 42%,var(--muted));margin-bottom:.3rem}.mod-scope .page-heading{position:relative;padding-bottom:.6rem}.mod-scope .page-heading:after{content:"";position:absolute;left:0;bottom:0;width:3.2rem;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--module-accent),color-mix(in srgb,var(--module-accent) 35%,transparent) 70%,transparent)}.mod-scope .page-heading h2{font-size:1.5rem;font-weight:900;letter-spacing:-.02em}.mod-scope .tab{transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.mod-scope .tab:hover{border-color:color-mix(in srgb,var(--module-accent) 45%,var(--border));color:var(--text);transform:translateY(-1px)}.mod-scope .tab[data-active=true]{border-color:color-mix(in srgb,var(--module-accent) 60%,var(--border));background:color-mix(in srgb,var(--module-accent) 10%,var(--panel));color:var(--text);font-weight:700}.mod-scope .metric{position:relative;overflow:hidden;border-radius:13px;padding:.95rem 1.05rem .95rem 1.2rem;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.mod-scope .metric:before{content:"";position:absolute;left:0;top:.75rem;bottom:.75rem;width:2px;border-radius:999px;background:color-mix(in srgb,var(--module-accent) 70%,transparent)}.mod-scope .metric:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--module-accent) 38%,var(--border));box-shadow:0 12px 28px color-mix(in srgb,var(--module-accent) 10%,rgba(2,6,23,.18))}.mod-scope .metric-value{font-size:1.5rem;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mod-scope .metric-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.mod-scope .control-form input:not([type=checkbox]):not([type=hidden]),.mod-scope .control-form select,.mod-scope .maps-field input:not([type=checkbox]),.mod-scope .maps-field select{min-height:2.55rem;border-radius:10px;border:1px solid var(--border);background:var(--panel-soft);color:var(--text);padding:.45rem .55rem;transition:border-color .18s ease,box-shadow .18s ease}.mod-scope .control-form input:not([type=checkbox]):focus-visible,.mod-scope .control-form select:focus-visible,.mod-scope .maps-field input:not([type=checkbox]):focus-visible,.mod-scope .maps-field select:focus-visible{outline:none;border-color:color-mix(in srgb,var(--module-accent) 60%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--module-accent) 22%,transparent)}.mod-scope .control-form button{border-radius:10px;border:1px solid color-mix(in srgb,var(--module-accent) 80%,var(--border));background:var(--module-accent);color:#04121f;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.mod-scope .control-form button:hover{transform:translateY(-1px);box-shadow:0 10px 22px color-mix(in srgb,var(--module-accent) 25%,transparent)}.mod-scope .toggle-chip{border-color:color-mix(in srgb,var(--module-accent) 35%,var(--border));background:color-mix(in srgb,var(--module-accent) 7%,var(--panel));transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.mod-scope .toggle-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--module-accent) 55%,var(--border));background:color-mix(in srgb,var(--module-accent) 14%,var(--panel))}.mod-scope .toggle-chip[data-active=true]{background:var(--module-accent);border-color:var(--module-accent);color:#04121f;box-shadow:0 6px 16px color-mix(in srgb,var(--module-accent) 30%,transparent)}.mod-scope .table-pager button{transition:border-color .15s ease,background .15s ease}.mod-scope .table-pager button:hover:not(:disabled){border-color:color-mix(in srgb,var(--module-accent) 45%,var(--border));background:color-mix(in srgb,var(--module-accent) 8%,var(--panel))}.mod-scope a:focus-visible,.mod-scope button:focus-visible,.mod-scope input[type=checkbox]:focus-visible,.mod-scope summary:focus-visible{outline:2px solid var(--module-accent);outline-offset:2px}.mod-scope .simple-table td,.mod-scope .simple-table th{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mod-scope .simple-table th{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.mod-scope .simple-table tbody tr{transition:background .12s ease}.mod-scope .simple-table tbody tr:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.mod-scope .map-box,.mod-scope .maps-map-box,.mod-scope .tax-map,.mod-scope .velib-embed-map,.mod-scope .velib-mvt-map{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 16px 38px rgba(2,6,23,.22)}.mod-scope .map-box:after,.mod-scope .maps-map-box:after,.mod-scope .tax-map:after,.mod-scope .velib-embed-map:after,.mod-scope .velib-mvt-map:after{content:"";position:absolute;inset:0;z-index:640;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--module-accent) 24%,var(--border));background:radial-gradient(120% 120% at 50% 42%,transparent 64%,rgba(2,6,23,.1) 100%)}:root[data-theme=dark] .mod-scope .map-box:after,:root[data-theme=dark] .mod-scope .maps-map-box:after,:root[data-theme=dark] .mod-scope .tax-map:after,:root[data-theme=dark] .mod-scope .velib-embed-map:after,:root[data-theme=dark] .mod-scope .velib-mvt-map:after{background:radial-gradient(120% 120% at 50% 42%,transparent 58%,rgba(2,6,23,.3) 100%)}:root[data-theme=dark] .mod-scope .map-box .leaflet-tile,:root[data-theme=dark] .mod-scope .tax-map .leaflet-tile,:root[data-theme=dark] .mod-scope .velib-mvt-map .leaflet-tile{filter:invert(1) hue-rotate(180deg) saturate(.72) brightness(.78) contrast(1.08)}.mod-scope .empty-state,.mod-scope .map-empty{border-radius:13px;border-color:color-mix(in srgb,var(--module-accent) 28%,var(--border))}.mod-scope .bounded-skeleton{border-radius:13px;background:linear-gradient(100deg,var(--panel-soft) 40%,color-mix(in srgb,var(--module-accent) 9%,var(--panel-soft)) 50%,var(--panel-soft) 60%);background-size:200% 100%;animation:mod-skeleton 1.4s ease-in-out infinite}@keyframes mod-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.mod-scope .velib-station-cb-row{position:relative}.mod-scope .velib-station-cb-row:before{content:"";position:absolute;left:.7rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;pointer-events:none;background:var(--muted);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center /contain no-repeat}.mod-scope .maps-field .velib-station-cb-row input,.mod-scope .velib-station-cb .velib-station-cb-row input{padding-left:2.15rem}.mod-scope .velib-station-cb-list{border-radius:12px;border-color:var(--glass-border);background:var(--glass-bg-strong);backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);box-shadow:var(--glass-shadow);color:var(--glass-text)}.mod-scope .velib-station-cb-option[data-active=true]{background:color-mix(in srgb,var(--module-accent) 16%,transparent)}.mod-scope .best-dot{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 16%,transparent),0 0 12px color-mix(in srgb,currentColor 55%,transparent)}.mod-scope .best-row{border-radius:10px;transition:background .15s ease,transform .15s ease}.mod-scope .best-row:hover{transform:translateX(2px)}.mod-scope .velib-hero-fact:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--module-accent) 40%,var(--border))}.mod-scope .velib-hero-fact-icon{box-shadow:0 0 0 4px color-mix(in srgb,currentColor 12%,transparent),0 0 14px color-mix(in srgb,currentColor 45%,transparent)}.mod-scope .velib-hero-fact-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mod-scope .link-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-gap:.55rem;gap:.55rem}.mod-scope .link-list li{min-width:0;color:var(--text);border:1px solid color-mix(in srgb,var(--module-accent) 22%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--module-accent) 5%,var(--panel-soft));padding:.6rem .75rem;transition:transform .18s ease,border-color .18s ease,background .18s ease}.mod-scope .link-list li+li{margin-top:0}.mod-scope .link-list li:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--module-accent) 45%,var(--border));background:color-mix(in srgb,var(--module-accent) 9%,var(--panel-soft))}.mod-scope .link-list li a{font-weight:700;font-size:.88rem;overflow-wrap:anywhere}.mod-scope .link-list li .table-note{margin-top:.3rem}.mod-scope .data-launcher-tile{border-radius:14px;border-color:color-mix(in srgb,var(--tile-accent,var(--accent)) 16%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.mod-scope .data-launcher-tile:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--tile-accent,var(--accent)) 55%,var(--border));box-shadow:0 16px 34px color-mix(in srgb,var(--tile-accent,var(--accent)) 20%,rgba(2,6,23,.16)),inset 0 1px 0 rgba(255,255,255,.06)}.mod-scope .data-launcher-tile svg{transition:transform .18s ease}.mod-scope .data-launcher-tile:hover svg{transform:scale(1.12)}.mod-scope .data-card{position:relative;overflow:hidden;border-radius:15px;border-color:color-mix(in srgb,var(--card-accent,var(--accent)) 16%,var(--border));box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.04);transition:border-color .18s ease}.mod-scope .data-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--card-accent,var(--accent)) 0,color-mix(in srgb,var(--card-accent,var(--accent)) 45%,transparent) 48%,transparent 85%)}.mod-scope .data-card:hover{border-color:color-mix(in srgb,var(--card-accent,var(--accent)) 34%,var(--border))}.mod-scope .data-card-error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.mod-scope .data-card-error:before{background:linear-gradient(90deg,var(--danger) 0,color-mix(in srgb,var(--danger) 45%,transparent) 48%,transparent 85%)}.mod-scope .data-card-heading h3{letter-spacing:-.01em}.mod-scope .data-status-dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 15%,transparent),0 0 10px color-mix(in srgb,var(--danger) 55%,transparent)}.mod-scope .data-sparkline{border-radius:12px}.mod-scope .data-fuel-group button,.mod-scope .data-mode-toggle button{border-radius:999px;border-color:color-mix(in srgb,var(--card-accent,var(--module-accent,var(--accent))) 50%,var(--border));color:color-mix(in srgb,var(--card-accent,var(--module-accent,var(--accent))) 62%,var(--text));transition:transform .15s ease,background .15s ease,border-color .15s ease,color .15s ease}.mod-scope .data-fuel-group button:hover:not([data-active=true]),.mod-scope .data-mode-toggle button:hover:not([data-active=true]){transform:translateY(-1px);background:color-mix(in srgb,var(--card-accent,var(--module-accent,var(--accent))) 10%,var(--panel))}.mod-scope .data-fuel-group button[data-active=true],.mod-scope .data-mode-toggle button[data-active=true]{background:var(--card-accent,var(--module-accent,var(--accent)));border-color:var(--card-accent,var(--module-accent,var(--accent)));color:#04121f}@media (prefers-reduced-motion:reduce){.flt-menu,.mod-scope .bounded-skeleton,.mod-scope .card,.mod-scope .data-card,.mod-scope .data-launcher-tile,.mod-scope .metrics{animation:none}.flt-menu-item,.icon-button,.mod-scope .best-row,.mod-scope .card,.mod-scope .control-form button,.mod-scope .control-form input,.mod-scope .control-form select,.mod-scope .data-card,.mod-scope .data-fuel-group button,.mod-scope .data-launcher-tile,.mod-scope .data-launcher-tile svg,.mod-scope .data-mode-toggle button,.mod-scope .link-list li,.mod-scope .maps-field input,.mod-scope .maps-field select,.mod-scope .metric,.mod-scope .simple-table tbody tr,.mod-scope .tab,.mod-scope .table-pager button,.mod-scope .toggle-chip,.mod-scope .velib-hero-fact{transition:none}.mod-scope .best-row:hover,.mod-scope .control-form button:hover,.mod-scope .data-fuel-group button:hover:not([data-active=true]),.mod-scope .data-launcher-tile:hover,.mod-scope .data-launcher-tile:hover svg,.mod-scope .data-mode-toggle button:hover:not([data-active=true]),.mod-scope .link-list li:hover,.mod-scope .metric:hover,.mod-scope .tab:hover,.mod-scope .toggle-chip:hover,.mod-scope .velib-hero-fact:hover{transform:none}}