:root{--bg:#13161B;--bg-2:#181C22;--surface:#1E2228;--surface-2:#252A31;--surface-3:#2C323A;--ink:#E8E2D8;--ink-soft:#A9A196;--ink-muted:#6E6860;--line:rgba(232,226,216,0.08);--line-strong:rgba(232,226,216,0.14);--line-glow:rgba(232,168,73,0.25);--accent:#E8A849;--accent-strong:#D4952E;--accent-soft:rgba(232,168,73,0.12);--accent-glow:rgba(232,168,73,0.25);--accent-2:#4EA8A6;--accent-2-glow:rgba(78,168,166,0.25);--accent-warm:#E8A849;--accent-warm-text:#E8A849;--accent-warm-soft:rgba(232,168,73,0.10);--accent-orange:#E8A849;--accent-orange-text:#E8A849;--accent-orange-soft:rgba(232,168,73,0.10);--ok:#34D399;--ok-text:#34D399;--ok-soft:rgba(52,211,153,0.12);--bad:#EF6461;--bad-text:#EF6461;--bad-soft:rgba(239,100,97,0.12);--warn:#F5B942;--warn-text:#F5B942;--warn-soft:rgba(245,185,66,0.12);--sp-1:4px;--sp-2:6px;--sp-3:8px;--sp-4:10px;--sp-5:12px;--sp-6:14px;--sp-7:16px;--sp-8:20px;--sp-9:24px;--sp-10:28px;--sp-12:36px;--sp-16:48px;--space-pad-sm:clamp(12px,1.2vw,16px);--space-pad-md:clamp(16px,2vw,28px);--space-pad-lg:clamp(24px,3vw,44px);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:16px;--radius-pill:999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.30),0 1px 2px rgba(0,0,0,0.20);--shadow-md:0 4px 16px rgba(0,0,0,0.35),0 1px 4px rgba(0,0,0,0.20);--shadow-lg:0 12px 40px rgba(0,0,0,0.45),0 4px 8px rgba(0,0,0,0.25);--shadow-glow:0 0 20px rgba(232,168,73,0.15),0 0 50px rgba(232,168,73,0.05);--shadow-focus:0 0 0 2px rgba(232,168,73,0.50);--font-body:'Inter','Plus Jakarta Sans','Segoe UI',system-ui,sans-serif;--font-heading:'Sora','Inter',sans-serif;--font-mono:'JetBrains Mono','SF Mono','Fira Code',monospace;--font-data:'JetBrains Mono','SF Mono',monospace;--control-xs:26px;--control-sm:32px;--control-md:36px;--control-lg:42px;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-spring-soft:cubic-bezier(0.34,1.25,0.64,1);--duration-micro:0.08s;--duration-fast:0.15s;--duration-normal:0.25s;--duration-slow:0.4s;--duration-entrance:0.5s;--duration-counter:1.2s;--stagger-sm:0.05s;--stagger-md:0.1s;--stagger-lg:0.15s;--glass-blur-sm:8px;--glass-blur-md:16px;--glass-blur-lg:32px;--glass-bg:rgba(30,34,40,0.75);--glass-bg-subtle:rgba(30,34,40,0.50);--glass-bg-strong:rgba(30,34,40,0.90);--glass-border:rgba(232,226,216,0.08);--glass-highlight:rgba(232,226,216,0.04);--glow-sm:0 0 8px rgba(232,168,73,0.10);--glow-md:0 0 16px rgba(232,168,73,0.18);--glow-lg:0 0 28px rgba(232,168,73,0.25);--glow-warm:0 0 20px rgba(232,168,73,0.15);--z-header:100;--z-overlay:200;--z-skip:9999;color-scheme:dark}[data-theme="light"]{--bg:#F0ECE4;--bg-2:#E8E2D8;--surface:#FFFFFF;--surface-2:#F8F5F0;--surface-3:#EDE8E0;--ink:#1C2127;--ink-soft:#4A5260;--ink-muted:#7A8290;--line:rgba(28,33,39,0.08);--line-strong:rgba(28,33,39,0.14);--line-glow:rgba(212,149,46,0.20);--accent:#C08420;--accent-strong:#A87018;--accent-soft:rgba(192,132,32,0.10);--accent-glow:rgba(192,132,32,0.20);--accent-2:#2D8A88;--accent-warm:#C08420;--accent-warm-text:#8B6212;--accent-warm-soft:rgba(192,132,32,0.10);--accent-orange:#C08420;--accent-orange-text:#8B6212;--accent-orange-soft:rgba(192,132,32,0.10);--ok:#1A8A5A;--ok-text:#157A4D;--ok-soft:rgba(26,138,90,0.10);--bad:#C83030;--bad-text:#B02828;--bad-soft:rgba(200,48,48,0.10);--warn:#B08015;--warn-text:#906810;--warn-soft:rgba(176,128,21,0.10);--shadow-sm:0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);--shadow-md:0 4px 12px rgba(0,0,0,0.08),0 1px 3px rgba(0,0,0,0.04);--shadow-lg:0 12px 32px rgba(0,0,0,0.10),0 2px 6px rgba(0,0,0,0.05);--shadow-glow:0 0 16px rgba(192,132,32,0.10);--shadow-focus:0 0 0 2px rgba(192,132,32,0.40);--glass-bg:rgba(255,255,255,0.70);--glass-bg-subtle:rgba(255,255,255,0.45);--glass-bg-strong:rgba(255,255,255,0.85);--glass-border:rgba(28,33,39,0.08);--glass-highlight:rgba(255,255,255,0.50);--glow-sm:0 0 8px rgba(192,132,32,0.08);--glow-md:0 0 16px rgba(192,132,32,0.14);--glow-lg:0 0 28px rgba(192,132,32,0.20);--glow-warm:0 0 16px rgba(192,132,32,0.12);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;font-size:15px}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 50% at 20% -5%,rgba(232,168,73,0.06),transparent 55%),radial-gradient(ellipse 50% 40% at 80% 10%,rgba(78,168,166,0.04),transparent 45%);z-index:0;animation:ambient-drift 12s ease-in-out infinite}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(circle,rgba(232,226,216,0.03) 1px,transparent 1px);background-size:24px 24px}[data-theme="light"] body::before{background:radial-gradient(ellipse 70% 50% at 20% -5%,rgba(192,132,32,0.04),transparent 55%),radial-gradient(ellipse 50% 40% at 80% 10%,rgba(45,138,136,0.03),transparent 45%)}[data-theme="light"] body::after{background-image:radial-gradient(circle,rgba(28,33,39,0.02) 1px,transparent 1px)}h1,h2,h3,h4{margin:0;font-family:var(--font-heading);line-height:1.15;color:var(--ink);font-weight:700}h1{font-size:clamp(1.5rem,4vw,2.2rem);letter-spacing:-0.03em}h2{font-size:clamp(1.1rem,2.5vw,1.45rem);letter-spacing:-0.02em}h3{font-size:clamp(0.95rem,2vw,1.15rem)}p{margin:0}a{color:inherit}img{display:block;max-width:100%}::selection{background:rgba(232,168,73,0.30);color:var(--ink)}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes slide-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}@keyframes rotate-in{from{opacity:0;transform:rotate(-6deg) scale(0.94)}to{opacity:1;transform:rotate(0) scale(1)}}@keyframes glow-pulse{0%,100%{box-shadow:var(--glow-sm)}50%{box-shadow:var(--glow-md)}}@keyframes ambient-drift{0%,100%{opacity:0.7}50%{opacity:1}}@keyframes chart-draw{from{stroke-dashoffset:var(--path-length,1000)}to{stroke-dashoffset:0}}@keyframes counter-pop{0%{opacity:0.5;transform:scale(0.9)}60%{transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}@keyframes shimmer-glass{0%{background-position:-200% 0}100%{background-position:200% 0}}@keyframes pulse-success{0%{transform:scale(0.95)}50%{transform:scale(1.06)}100%{transform:scale(1)}}@keyframes live-pulse{0%,100%{opacity:1}50%{opacity:0.4}}.page-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.container{width:calc(100vw - 10px);margin-inline:auto;min-width:0}.page-sections{display:grid;gap:var(--sp-4);padding:var(--sp-4) 0 var(--sp-8);min-width:0;align-items:start}.home-page,.data-page,.about-page,.partner-page,.timelapse-page{min-width:0}.home-page,.data-page,.timelapse-page{grid-template-columns:minmax(0,1fr);align-items:start}.home-top-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-6);align-items:start}.home-top-grid > .card{height:100%}.data-main-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-6);align-items:stretch}.data-main-grid > .card{height:100%}.data-export-card,.data-api-card{height:100%;align-content:start}.about-main-grid,.partner-main-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-6);align-items:start}.about-closing,.partner-cta{grid-column:1 / -1}.home-page > .hero-card,.home-page > .home-top-grid,.home-page > .section-history,.data-page > .hero-card,.data-page > .data-main-grid,.timelapse-page > .hero-card,.timelapse-page > .timelapse-shell{grid-column:1 / -1}.section-history{padding-top:var(--sp-6)}@media (min-width:461px){.container{width:calc(100vw - 14px)}.page-sections{gap:var(--sp-6);padding-bottom:var(--sp-10)}}@media (min-width:681px){.container{width:calc(100vw - clamp(14px,3vw,44px))}}@media (min-width:901px){.container{width:min(1680px,calc(100vw - clamp(14px,3vw,44px)))}.about-main-grid,.partner-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1200px){.home-top-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr)}.data-main-grid{grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr)}.timelapse-stage{grid-template-columns:minmax(0,1.2fr) minmax(280px,0.8fr)}}.site-header{position:sticky;top:0;z-index:var(--z-header,100);padding:var(--sp-3) 0 0 0;background:transparent}.site-header::before{content:"";position:absolute;top:0;left:0;right:0;height:var(--sp-3);background:var(--bg);z-index:0}.header-shell{position:relative;z-index:1;isolation:isolate;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);box-shadow:var(--shadow-lg);padding:clamp(10px,1.5vw,16px);display:grid;gap:var(--sp-3);transition:box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.header-shell.scrolled{box-shadow:var(--shadow-lg),var(--glow-sm);border-color:var(--line-glow)}.header-shell::after{content:"";position:absolute;bottom:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow) 25%,rgba(232,168,73,0.40) 50%,var(--accent-glow) 75%,transparent );pointer-events:none;border-radius:1px}.header-nav-accent{display:block !important;position:absolute;bottom:0;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow) 25%,rgba(232,168,73,0.40) 50%,var(--accent-glow) 75%,transparent );pointer-events:none}.header-shell > *{position:relative;z-index:1}.header-topline{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-4)}.brand-link{text-decoration:none;display:grid;gap:2px;min-width:0}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:0.18em;color:var(--accent);font-weight:800;font-family:var(--font-data)}.brand-title{font-size:clamp(1.2rem,3.4vw,1.8rem);overflow-wrap:anywhere;color:var(--ink);font-weight:700;font-family:var(--font-heading)}.header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);flex-wrap:nowrap}.status{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;font-family:var(--font-data);border-radius:var(--radius-pill);padding:4px var(--sp-3);min-height:var(--control-sm);display:inline-flex;align-items:center;border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-muted);white-space:nowrap;animation:scale-in var(--duration-entrance) var(--ease-spring-soft) both;animation-delay:0.3s}.status.ok{color:var(--ok);border-color:rgba(52,211,153,0.35);background:var(--ok-soft)}.status.ok::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok);margin-right:6px;animation:live-pulse 2s ease-in-out infinite}.status.offline{color:var(--bad);border-color:rgba(239,100,97,0.35);background:var(--bad-soft)}.status.connecting{color:var(--warn);border-color:rgba(245,185,66,0.35);background:var(--warn-soft)}.status.degraded{color:var(--warn);border-color:rgba(245,185,66,0.35);background:var(--warn-soft)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:var(--control-sm);height:var(--control-sm);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-2);cursor:pointer;color:var(--ink-soft);transition:color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-spring-soft),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.theme-toggle:hover{color:var(--accent);transform:rotate(15deg);background:var(--accent-soft);border-color:var(--accent)}[data-theme="light"] .theme-toggle:hover{transform:rotate(-15deg)}.theme-toggle:active{transform:scale(0.88)}[data-theme="dark"] .theme-icon-sun{display:none}[data-theme="light"] .theme-icon-moon,:root:not([data-theme="dark"]) .theme-icon-moon{display:none}.language-select{min-height:var(--control-sm);min-width:116px;max-width:148px;padding:4px 28px 4px 10px;font-size:12px;font-weight:700;color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-2);font-family:var(--font-body);transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.language-select:hover{border-color:var(--accent)}.language-select option{background:var(--surface);color:var(--ink)}.header-navline{display:grid;grid-template-columns:1fr;gap:var(--sp-3);position:relative}.main-nav{padding:2px 0 0;gap:var(--sp-7);border:0;background:transparent;display:flex;flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;justify-content:center;min-width:0}.main-nav::-webkit-scrollbar{display:none}.header-navline::before,.header-navline::after{content:"";position:absolute;top:0;bottom:0;width:24px;z-index:2;pointer-events:none;opacity:0;transition:opacity var(--duration-fast)}.header-navline::before{left:0;background:linear-gradient(to right,var(--surface),transparent)}.header-navline::after{right:0;background:linear-gradient(to left,var(--surface),transparent)}.header-navline.scroll-right::after,.header-navline.scroll-left::before{opacity:1}.main-nav a{text-decoration:none;font-weight:600;font-size:13px;color:var(--ink-muted);min-height:var(--control-md);display:inline-flex;align-items:center;border:0;border-bottom:none;background:transparent;padding:var(--sp-2) 0;flex:0 0 auto;white-space:nowrap;letter-spacing:0.02em;position:relative;transition:color var(--duration-fast) var(--ease-out)}.main-nav a::after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--accent);border-radius:1px;transition:width var(--duration-normal) var(--ease-spring-soft),left var(--duration-normal) var(--ease-spring-soft)}.main-nav a:hover{color:var(--ink-soft)}.main-nav a:hover::after{width:60%;left:20%}.main-nav a.active{color:var(--accent);font-weight:700}.main-nav a.active::after{width:100%;left:0;background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--accent);color:var(--bg);padding:0.75em 1.5em;border-radius:var(--radius-sm);z-index:var(--z-skip);font-weight:600;text-decoration:none;transition:top 0.2s}.skip-link:focus{top:0.5em}.icon-btn,.page-btn,.tl-btn,.chip,.data-btn,.range-select,.data-select,.data-copy-btn{font-family:var(--font-body)}.main-nav a,.chip,.data-btn,.tl-btn,.page-btn,.data-copy-btn{transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.chip:hover,.data-btn:hover,.tl-btn:hover,.page-btn:hover,.data-copy-btn:hover{transform:translateY(-1px)}.range-select:focus-visible,.data-select:focus-visible,.language-select:focus-visible,.main-nav a:focus-visible,.chip:focus-visible,.data-btn:focus-visible,.tl-btn:focus-visible,.page-btn:focus-visible,.icon-btn:focus-visible,.data-copy-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);padding:var(--space-pad-md);min-width:0;position:relative;transition:box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.card:hover{box-shadow:var(--shadow-lg);border-color:var(--line-strong)}.section-card{display:grid;gap:var(--space-pad-sm);align-content:start;position:relative}.section-card::before{display:none}.hero-card{display:grid;gap:var(--sp-3);border-top:2px solid var(--accent);padding:clamp(16px,2vw,28px);background:var(--surface);box-shadow:var(--shadow-lg),var(--glow-sm)}.hero-card h1{letter-spacing:-0.03em}.hero-card .muted{max-width:62ch}.hero-home,.hero-data,.hero-timelapse,.hero-about,.hero-partner{display:grid;grid-template-columns:1fr;gap:var(--sp-5);align-items:center}.hero-home-stats{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:var(--sp-3)}.hero-stat-pill{border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:6px 11px;font-size:11px;font-weight:800;letter-spacing:0.03em;font-family:var(--font-data);color:var(--accent);background:var(--accent-soft)}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-pad-sm);flex-wrap:wrap;padding-bottom:var(--sp-3);border-bottom:1px solid var(--line)}.section-copy{display:grid;gap:var(--sp-2);min-width:0;flex:1 1 280px}.section-actions{display:flex;align-items:center;gap:var(--sp-3);flex:0 1 auto;min-width:0}.image-frame{width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md);border:1px solid var(--line);overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow-md)}.image-frame img{width:100%;height:100%;object-fit:cover}.chip-bar{display:flex;flex-wrap:wrap;gap:var(--sp-3);min-width:0}.chip{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:var(--radius-pill);min-height:var(--control-md);padding:var(--sp-2) var(--sp-5);font-size:12.5px;font-weight:700;color:var(--ink-soft);cursor:pointer;max-width:100%;transition:all var(--duration-fast) var(--ease-out)}.chip:hover{background:var(--accent-soft);border-color:var(--accent-glow);color:var(--accent)}.chip:active{transform:scale(0.95)}.chip.active,.chip[aria-selected="true"],.chip[aria-pressed="true"]{color:var(--bg);border-color:var(--accent);background:var(--accent);box-shadow:0 2px 12px rgba(232,168,73,0.30);font-weight:800}[data-theme="light"] .chip.active,[data-theme="light"] .chip[aria-selected="true"],[data-theme="light"] .chip[aria-pressed="true"]{color:#fff}.icon-btn{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:var(--radius-sm);min-width:var(--control-lg);min-height:var(--control-md);cursor:pointer;color:var(--accent);transition:all var(--duration-fast) var(--ease-out)}.icon-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm),var(--glow-sm);background:var(--accent-soft);border-color:var(--accent)}.icon-btn:active{transform:scale(0.94);box-shadow:var(--shadow-sm)}.data-btn{border:1px solid var(--accent);border-radius:var(--radius-sm);min-height:var(--control-lg);padding:0 var(--sp-6);background:var(--accent);color:var(--bg);font-weight:700;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(232,168,73,0.25);transition:all var(--duration-fast) var(--ease-out)}.data-btn:hover{box-shadow:0 6px 20px rgba(232,168,73,0.35);transform:translateY(-2px);background:var(--accent-strong)}.data-btn:active{transform:scale(0.96);box-shadow:0 2px 6px rgba(232,168,73,0.20)}.data-btn--outline{background:transparent;color:var(--accent);border-color:var(--line-strong);box-shadow:none}.data-btn--outline:hover{background:var(--accent-soft);border-color:var(--accent)}.page-btn{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-2);min-width:36px;min-height:36px;cursor:pointer;color:var(--ink-soft)}.page-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.page-btn:active:not(:disabled){transform:scale(0.94)}.page-btn:disabled{opacity:0.4;cursor:default;transform:none}.data-copy-btn{border:1px solid var(--line-strong);border-radius:var(--radius-xs);background:var(--surface-2);min-height:var(--control-sm);min-width:var(--control-md);cursor:pointer;color:var(--ink-soft);transition:all var(--duration-fast) var(--ease-out)}.data-copy-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.data-copy-btn:active{transform:scale(0.92)}.data-copy-btn.copied{background:var(--ok-soft);border-color:var(--ok);color:var(--ok);animation:pulse-success 0.4s var(--ease-spring-soft)}.range-select,.data-select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-soft);font-weight:700;min-height:38px;padding:var(--sp-3) var(--sp-4);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.range-select:hover,.data-select:hover{border-color:var(--accent)}.range-select option,.data-select option{background:var(--surface);color:var(--ink)}#section-webcam .section-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--sp-3);border-bottom:none;padding-bottom:0}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:var(--space-pad-sm)}.kpi{min-width:0;perspective:1200px}.kpi-inner{min-height:clamp(188px,24vw,220px);position:relative;transform-style:preserve-3d;transition:transform var(--duration-slow) var(--ease-spring-soft)}.kpi.is-flipped .kpi-inner{transform:rotateY(180deg)}.kpi-front,.kpi-back{position:absolute;inset:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);padding:var(--space-pad-sm);display:grid;gap:var(--sp-4);align-content:start;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;box-shadow:var(--shadow-sm);transition:border-color var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out)}.kpi-front:hover,.kpi-back:hover{box-shadow:var(--shadow-md),var(--glow-sm);border-color:var(--line-glow)}.kpi-back{transform:rotateY(180deg);background:var(--surface-3)}.kpi-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink-muted);font-family:var(--font-data);transition:color 0.4s ease}.kpi-value-row{display:flex;align-items:baseline;gap:var(--sp-3)}.kpi-value-row strong{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1;color:var(--ink);font-weight:800;font-family:var(--font-data);letter-spacing:-0.02em;transition:color 0.4s ease}.kpi-value-row em{font-style:normal;color:var(--ink-muted);font-weight:700;font-family:var(--font-data);font-size:0.85em}.kpi-back h4{font-size:1rem;color:var(--ink)}.kpi-back p{color:var(--ink-soft);line-height:1.45}.kpi-wind-top{display:flex;justify-content:space-between;gap:var(--sp-3);align-items:baseline}.kpi-wind-dir{font-size:12px;color:var(--ink-muted);font-weight:700;font-family:var(--font-data)}.kpi-flip-btn{margin-top:auto;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-3);color:var(--accent);font-weight:700;min-height:var(--control-md);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.kpi-flip-btn:hover{background:var(--accent-soft);border-color:var(--accent);box-shadow:var(--glow-sm);transform:translateY(-1px)}.kpi-flip-btn:active{transform:scale(0.96)}.kpi-range-block{display:grid;gap:var(--sp-3)}.kpi-range-rail{height:6px;border-radius:var(--radius-pill);background:var(--surface-3);position:relative}.kpi-range-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width var(--duration-slow) var(--ease-spring-soft),background var(--duration-slow) ease;box-shadow:0 0 8px rgba(232,168,73,0.20)}.kpi-range-dot{width:12px;height:12px;border-radius:50%;background:var(--surface);border:3px solid var(--accent);position:absolute;top:50%;transform:translate(-50%,-50%);transition:left var(--duration-slow) var(--ease-spring-soft),border-color var(--duration-slow) ease;box-shadow:0 1px 4px rgba(0,0,0,0.25),0 0 6px rgba(232,168,73,0.20)}.kpi-range-extrema{display:flex;justify-content:space-between;gap:var(--sp-3);font-size:11px;font-family:var(--font-data);color:var(--ink-muted)}.kpi-air-scale{height:6px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.kpi-air-scale-fill{height:100%;border-radius:inherit;transition:width 0.5s ease,background 0.4s ease}.kpi-air-status{font-size:12px;font-weight:700;font-family:var(--font-data);transition:color 0.4s ease}.kpi-air-status.air-good{color:var(--ok)}.kpi-air-status.air-fair{color:var(--warn)}.kpi-air-status.air-poor{color:var(--accent)}.kpi-air-status.air-bad{color:var(--bad)}.kpi-air-status.air-unknown{color:var(--ink-muted)}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-60% 0}}.kpi-skeleton{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:var(--space-pad-sm)}.kpi-skel,.chart-skel{border-radius:var(--radius-md);background:linear-gradient(120deg,var(--surface-2) 15%,var(--surface-3) 45%,var(--surface-2) 75%);background-size:240% 100%;animation:shimmer 1.8s ease-in-out infinite;transition:opacity var(--duration-normal) var(--ease-out)}.kpi-skeleton.hidden .kpi-skel,.charts-skeleton.hidden .chart-skel{opacity:0}.kpi-skel{min-height:200px}.charts-skeleton{display:grid;gap:var(--sp-4);grid-template-columns:1fr}.chart-skel{min-height:220px}.history-toolbar{display:grid;gap:var(--sp-4)}.history-view{display:none}.history-view.active{display:block}.multi-chart-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-4)}.metric-chart-block{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);padding:var(--sp-5);min-width:0;box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.metric-chart-block:hover{box-shadow:var(--shadow-md);border-color:var(--line-strong)}.metric-chart-head{display:flex;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-3)}.chart-title-label{color:var(--ink-soft);font-weight:600}.chart-unit-badge,.chart-summary-pill{border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:3px var(--sp-3);font-size:11px;font-family:var(--font-data);color:var(--ink-muted);background:var(--surface-3)}.chart-wrap{position:relative}.metric-chart-svg{width:100%;height:auto}.chart-tooltip{position:absolute;transform:translate(-50%,-120%);border-radius:var(--radius-xs);padding:5px 7px;font-size:11px;font-weight:700;font-family:var(--font-data);color:var(--ink);background:var(--surface);border:1px solid var(--accent-glow);pointer-events:none;opacity:0;box-shadow:var(--shadow-md),var(--glow-sm);transition:opacity var(--duration-fast) var(--ease-out)}.chart-tooltip:not([hidden]){opacity:1}.chart-empty-msg{color:var(--ink-muted);font-size:13px}.wind-view-grid{display:grid;grid-template-columns:1fr;gap:var(--sp-5)}#wind-rose{width:100%;max-width:240px;height:auto;margin:0 auto;display:block}.wind-stats-panel{display:grid;gap:var(--sp-3);align-content:start}.wind-stat-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);padding:var(--sp-4);display:grid;gap:var(--sp-1);transition:box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.wind-stat-item:hover{box-shadow:var(--glow-sm);border-color:var(--line-glow)}.wind-stat-label{color:var(--ink-muted);font-size:11px;font-family:var(--font-data);text-transform:uppercase;letter-spacing:0.05em}.wind-stat-value{color:var(--ink);font-family:var(--font-data);font-weight:700}.history-table-meta{font-size:12px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.table-wrap table{width:100%;border-collapse:collapse;min-width:clamp(520px,80vw,720px)}.table-wrap th,.table-wrap td{border-bottom:1px solid var(--line);padding:var(--sp-4);text-align:left;font-size:13px}.table-wrap th{background:var(--surface-3);color:var(--ink-soft);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:0.04em;font-family:var(--font-data);position:sticky;top:0;z-index:1}.table-wrap td{font-family:var(--font-data);font-size:12px}.table-wrap tbody tr{transition:background var(--duration-fast) var(--ease-out)}.table-wrap tbody tr:hover{background:var(--accent-soft)}.history-table-pagination{margin-top:var(--sp-4);display:flex;justify-content:center;gap:var(--sp-4)}.page-label{font-size:12px;color:var(--ink-muted);font-family:var(--font-data)}.webcam-overlay{position:fixed;inset:0;z-index:var(--z-overlay,200);background:rgba(19,22,27,0.88);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;align-items:center;justify-content:center;padding:var(--sp-8);opacity:1;transition:opacity var(--duration-normal) var(--ease-out)}.webcam-overlay[hidden]{display:none}.webcam-overlay.overlay-enter{opacity:0}.webcam-overlay.overlay-enter-active{opacity:1}.webcam-overlay img{transition:transform var(--duration-normal) var(--ease-out)}.webcam-overlay.overlay-enter img{transform:scale(0.95)}.webcam-overlay.overlay-enter-active img{transform:scale(1)}.webcam-overlay img{max-width:min(95vw,1300px);max-height:92vh;border-radius:var(--radius-lg);border:1px solid var(--line-strong)}.webcam-overlay .webcam-close-btn{position:absolute;top:16px;right:16px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--ink);width:40px;height:40px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-out)}.webcam-overlay .webcam-close-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:scale(1.1)}.webcam-overlay .webcam-close-btn:active{transform:scale(0.92)}.timelapse-shell{padding:clamp(12px,1.8vw,20px);display:grid;gap:var(--sp-4)}#timelapse-frame{position:relative;border-radius:var(--radius-md);overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow-lg);border:1px solid var(--line)}#timelapse-img{display:block;width:100%;height:auto}.timelapse-loading{position:absolute;inset:0;display:grid;place-items:center;background:rgba(19,22,27,0.70);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink);font-weight:700;font-family:var(--font-data)}.timelapse-loading[hidden]{display:none}.timelapse-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.timelapse-transport{display:flex;align-items:center;gap:var(--sp-2)}.timelapse-info{display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap}.timelapse-timestamp{font-weight:700;color:var(--ink-soft);font-size:14px;font-family:var(--font-data)}.timelapse-counter{font-size:13px;font-family:var(--font-data);color:var(--ink-muted)}.tl-btn{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);min-height:var(--control-lg);min-width:var(--control-lg);padding:0 var(--sp-4);cursor:pointer;color:var(--accent);font-size:14px;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-out)}.tl-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);box-shadow:var(--glow-sm);transform:scale(1.06)}.tl-btn:active:not(:disabled){transform:scale(0.94)}.tl-btn:disabled{opacity:0.4;cursor:default}.tl-btn--play{min-width:52px;background:var(--accent);color:var(--bg);border-color:var(--accent);box-shadow:0 2px 10px rgba(232,168,73,0.30)}.tl-btn--play:hover:not(:disabled){background:var(--accent-strong);box-shadow:0 4px 20px rgba(232,168,73,0.40)}.tl-scrubber{width:100%;accent-color:var(--accent);cursor:pointer}.tl-scrubber::-webkit-slider-thumb{box-shadow:0 0 8px rgba(232,168,73,0.30)}.tl-scrubber:hover::-webkit-slider-thumb{box-shadow:0 0 14px rgba(232,168,73,0.45)}.timelapse-speed-row{display:flex;align-items:center;gap:var(--sp-3)}.data-export-controls,.data-api-list,.data-notes{display:grid;gap:var(--sp-5)}.data-export-row{display:flex;flex-wrap:wrap;gap:var(--sp-4)}.data-field{flex:1 1 240px;display:grid;gap:var(--sp-2)}.data-field-label{font-size:11px;font-weight:700;color:var(--ink-muted);text-transform:uppercase;letter-spacing:0.05em;font-family:var(--font-data)}.data-status{font-size:13px;font-family:var(--font-data)}.data-export-schema{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--line);display:grid;gap:var(--sp-4)}.data-export-card .table-wrap{margin-top:0;overflow-x:visible}.data-export-card .data-schema-table{min-width:0}.data-export-card .data-notes{gap:var(--sp-3)}.data-api-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);padding:var(--sp-5);display:grid;gap:var(--sp-4);min-width:0;box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.data-api-item:hover{box-shadow:var(--shadow-md);border-color:var(--line-strong)}.data-api-details{overflow-x:visible;max-width:100%}.data-api-header{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.data-api-method{border-radius:var(--radius-sm);background:var(--ok-soft);color:var(--ok);border:1px solid rgba(52,211,153,0.25);font-size:11px;font-weight:800;font-family:var(--font-data);padding:var(--sp-1) var(--sp-3);letter-spacing:0.04em}.data-api-path{font-weight:700;color:var(--ink-soft);overflow-wrap:anywhere;font-family:var(--font-mono);font-size:13px}.data-api-example{display:grid;gap:var(--sp-2)}.data-code-block{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-2);padding:var(--sp-3) var(--sp-4);display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);min-width:0}.data-code-block code{min-width:0;overflow-wrap:anywhere;word-break:break-word;color:var(--accent);font-family:var(--font-mono);font-size:12px}.data-api-guide-list{margin:0;padding-left:18px;display:grid;gap:var(--sp-2);color:var(--ink-soft)}.data-page .table-wrap{overflow-x:visible}.data-page table,.data-params-table,.data-schema-table{width:100%;min-width:0;table-layout:fixed}.data-params-table th,.data-params-table td,.data-schema-table th,.data-schema-table td{font-size:12px;font-family:var(--font-data)}.data-params-table th:nth-child(1),.data-params-table td:nth-child(1){width:18%}.data-params-table th:nth-child(2),.data-params-table td:nth-child(2){width:12%}.data-params-table th:nth-child(3),.data-params-table td:nth-child(3){width:12%}.data-params-table th:nth-child(4),.data-params-table td:nth-child(4){width:58%}.data-schema-table th:nth-child(1),.data-schema-table td:nth-child(1){width:18%}.data-schema-table th:nth-child(2),.data-schema-table td:nth-child(2){width:14%}.data-schema-table th:nth-child(3),.data-schema-table td:nth-child(3){width:14%}.data-schema-table th:nth-child(4),.data-schema-table td:nth-child(4){width:54%}.data-page td,.data-page th{overflow-wrap:anywhere;word-break:break-word;vertical-align:top}.data-page code{white-space:normal;overflow-wrap:anywhere;font-family:var(--font-mono)}.partner-grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.partner-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);padding:var(--sp-5);display:grid;gap:var(--sp-3);min-width:0;box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-out)}.partner-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--line-glow)}.partner-card a{color:var(--accent);text-decoration:none;font-weight:700;overflow-wrap:anywhere;transition:color var(--duration-fast) var(--ease-out)}.partner-card a:hover{text-decoration:underline}.about-role{font-size:10px;font-weight:800;letter-spacing:0.08em;color:var(--accent);text-transform:uppercase;display:inline-block;padding:3px var(--sp-3);border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--accent-glow);font-family:var(--font-data)}.about-list{margin:0;padding-left:18px;display:grid;gap:var(--sp-3);color:var(--ink-soft)}.about-contact-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--sp-3)}.about-contact-list li{display:flex;gap:var(--sp-2);flex-wrap:wrap;color:var(--ink-soft);font-size:13px;transition:transform var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.about-contact-list li:hover{transform:translateX(4px);color:var(--accent)}.about-contact-list strong{color:var(--ink);font-family:var(--font-data);font-size:11px;text-transform:uppercase;letter-spacing:0.04em}.about-subsection{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,var(--accent-glow),transparent) 1;padding-top:var(--sp-5);margin-top:var(--sp-3);display:grid;gap:var(--sp-3)}.about-subsection h3{font-size:1rem;font-weight:700;color:var(--ink)}.site-footer{border-top:1px solid var(--line);background:var(--surface);position:relative}.site-footer::before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow) 25%,rgba(232,168,73,0.35) 50%,var(--accent-glow) 75%,transparent );pointer-events:none}.footer-inner{display:grid;grid-template-columns:1fr;text-align:center;justify-items:center;gap:var(--sp-5);align-items:center;padding:var(--sp-8) 0 var(--sp-9);font-size:12px}.footer-title{font-weight:800;color:var(--ink-soft);font-family:var(--font-heading)}.footer-links{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.footer-links a{border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:var(--sp-2) var(--sp-4);text-decoration:none;font-weight:700;font-size:12px;color:var(--ink-muted);background:var(--surface-2);transition:all var(--duration-fast) var(--ease-out)}.footer-links a:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.muted{color:var(--ink-muted)}.hidden{display:none !important}.air-good{color:var(--ok)}.air-fair{color:var(--warn)}.air-poor{color:var(--accent)}.air-bad{color:var(--bad)}.air-unknown{color:var(--ink-muted)}.col-ref-good{color:var(--ok);font-weight:700}.col-ref-fair{color:var(--warn);font-weight:700}.col-ref-poor{color:var(--bad);font-weight:700}.empty-state{display:grid;gap:var(--sp-3);justify-items:center;text-align:center;padding:var(--sp-9) var(--sp-5);color:var(--ink-muted)}.empty-state[hidden]{display:none}.empty-state-icon{font-size:2rem;opacity:0.5}.empty-state-msg{font-weight:600;font-size:14px}.empty-state-hint{font-size:12px}.retry-btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-6);border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:13px;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.retry-btn:hover{background:var(--accent);color:var(--bg);transform:translateY(-1px)}.data-btn.is-loading{pointer-events:none;opacity:0.7}.data-btn.is-loading::after{content:"";display:inline-block;width:14px;height:14px;margin-left:var(--sp-2);border:2px solid rgba(19,22,27,0.3);border-top-color:var(--bg);border-radius:50%;animation:btn-spin 0.6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}@media print{body::before,body::after,.site-header,.site-footer,.webcam-overlay,.chip-bar,.history-toolbar,.data-export-controls,.kpi-flip-btn,.data-copy-btn,.icon-btn,.timelapse-controls-panel,.skip-link{display:none !important}body{background:#fff;color:#000;font-size:11pt}.card{box-shadow:none;border:1px solid #ccc;break-inside:avoid}.page-shell{display:block}.kpi-front{background:#fff !important;border-color:#ccc !important}.metric-chart-svg{max-width:100%}a[href]::after{content:" (" attr(href) ")";font-size:9pt;color:#666}}@font-face{font-family:'Plus Jakarta Sans';font-display:swap}@font-face{font-family:'Sora';font-display:swap}.anim-fade-in{animation:fade-in var(--duration-entrance) var(--ease-out) both}.anim-slide-up{animation:slide-up var(--duration-entrance) var(--ease-spring-soft) both}.anim-scale-in{animation:scale-in var(--duration-entrance) var(--ease-spring-soft) both}[data-animate="on-scroll"]{opacity:0;transform:translateY(16px)}[data-animate="on-scroll"].animate-in{animation:slide-up var(--duration-entrance) var(--ease-spring-soft) both}[data-stagger]{opacity:0;transform:translateY(12px)}[data-stagger].animate-in{animation:slide-up var(--duration-entrance) var(--ease-spring-soft) both}[data-animate="on-scroll"],[data-stagger]{will-change:transform,opacity}.animate-in{will-change:auto}@media (prefers-reduced-motion:reduce){[data-animate="on-scroll"],[data-stagger],.anim-fade-in,.anim-slide-up,.anim-scale-in{animation:none !important;opacity:1 !important;transform:none !important;will-change:auto !important}.status.ok::before{animation:none !important}body::before{animation:none !important}}.kpi-inner{transition:transform var(--duration-slow) var(--ease-spring-soft)}.kpi-front,.kpi-back{transition:border-color var(--duration-slow) var(--ease-out),box-shadow var(--duration-slow) var(--ease-out)}.kpi-range-fill{transition:width var(--duration-slow) var(--ease-spring-soft),background var(--duration-slow) var(--ease-out)}.kpi-range-dot{transition:left var(--duration-slow) var(--ease-spring-soft),border-color var(--duration-slow) var(--ease-out)}@supports not (backdrop-filter:blur(1px)){.header-shell{background:var(--surface)}}.header-shell{border-radius:var(--radius-xs)}.brand-link{gap:1px}.eyebrow{font-size:9px}.language-select{min-width:92px;max-width:122px;font-size:11px;padding-right:22px}.status{font-size:9px;padding:3px var(--sp-2);min-height:var(--control-xs)}.header-actions{gap:var(--sp-1);width:auto}.chip{min-height:44px;font-size:11.5px;padding:8px 12px}.range-select,.data-select{width:100%}.section-actions{width:100%;justify-content:flex-start}.card{padding:var(--sp-4)}.history-table-pagination{gap:var(--sp-2)}.page-btn{min-width:44px;min-height:44px}.data-export-row .data-btn{flex:1 1 100%}table{min-width:0}.table-wrap--card-xs thead{display:none}.table-wrap--card-xs tbody tr{display:grid;gap:var(--sp-1);padding:var(--sp-3);border-bottom:1px solid var(--line)}.table-wrap--card-xs tbody td{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-1) 0;border:none;font-size:12px}.table-wrap--card-xs tbody td::before{content:attr(data-label);font-weight:700;color:var(--ink-soft);font-size:11px;flex:0 0 auto;margin-right:var(--sp-3)}.timelapse-page #tl-speed-chips{gap:var(--sp-2)}.timelapse-page #tl-speed-chips .chip{min-height:36px;padding:5px var(--sp-3);font-size:10.5px}.timelapse-meta-grid{grid-template-columns:1fr}.timelapse-controls-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.timelapse-controls-row .tl-btn{width:100%;padding:0 var(--sp-2)}.history-toolbar .chip{width:100%;text-align:center}.kpi-grid{grid-template-columns:1fr}.kpi-inner{min-height:190px}.kpi-value-row strong{font-size:clamp(1.35rem,8vw,1.85rem)}.footer-inner{grid-template-columns:1fr;text-align:center;justify-items:center}@media (min-width:461px){.header-shell{border-radius:var(--radius-sm)}.brand-link{gap:2px}.eyebrow{font-size:10px}.language-select{min-width:116px;max-width:148px;font-size:12px;padding-right:28px}.status{font-size:10px;padding:4px var(--sp-3);min-height:var(--control-sm)}.header-actions{gap:var(--sp-2)}.chip{min-height:var(--control-md);font-size:12.5px;padding:var(--sp-2) var(--sp-5)}.range-select,.data-select{width:auto}table{min-width:460px}.table-wrap--card-xs thead{display:table-header-group}.table-wrap--card-xs tbody tr{display:table-row}.table-wrap--card-xs tbody td{display:table-cell;padding:var(--sp-4);border-bottom:1px solid var(--line)}.table-wrap--card-xs tbody td::before{content:none}.card{padding:var(--sp-5)}.page-btn{min-width:36px;min-height:36px}.history-table-pagination{gap:var(--sp-4)}.data-export-row .data-btn{flex:1 1 calc(50% - 5px)}.timelapse-meta-grid{grid-template-columns:repeat(2,1fr)}.timelapse-page #tl-speed-chips{gap:var(--sp-3)}.timelapse-page #tl-speed-chips .chip{min-height:var(--control-sm);padding:var(--sp-1) var(--sp-4);font-size:12px}.timelapse-controls-row{display:flex;justify-content:space-between;gap:var(--sp-3)}.timelapse-controls-row .tl-btn{width:auto;padding:0 var(--sp-4)}.tl-btn{min-width:0;min-height:38px}.timelapse-speed-row{grid-template-columns:1fr;align-items:stretch}.history-toolbar .chip{width:auto;text-align:left}.kpi-value-row strong{font-size:clamp(1.5rem,3vw,2.4rem)}.section-copy .muted{font-size:13px;line-height:1.35}#section-webcam .section-head{grid-template-columns:minmax(0,1fr) auto}.brand-title{font-size:clamp(1.15rem,4vw,1.45rem)}.main-nav{display:flex;justify-content:center}.site-header{padding:var(--sp-3) 0 0 0}}@media (min-width:681px){.card{padding:var(--space-pad-md)}.section-actions{width:auto;flex:0 1 auto}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-inner{min-height:clamp(188px,24vw,220px)}.data-export-row .data-btn{flex:0 1 auto}.data-api-item{padding:var(--sp-5)}.timelapse-speed-row{grid-template-columns:auto 1fr;align-items:center}.footer-inner{grid-template-columns:1fr auto;text-align:left;justify-items:start}.brand-title{font-size:clamp(1.2rem,3.4vw,1.8rem)}th,td{padding:var(--sp-4);font-size:13px}}@media (min-width:901px){.header-shell{border-radius:var(--radius-lg)}.hero-home,.hero-data,.hero-timelapse,.hero-about,.hero-partner{grid-template-columns:minmax(0,1fr) auto}.hero-home-stats{justify-content:flex-end}.header-topline{grid-template-columns:minmax(0,1fr) auto;align-items:center}.header-actions{width:auto;justify-content:flex-end}.main-nav{justify-content:center}.section-head{align-items:flex-start}.wind-view-grid{grid-template-columns:1fr minmax(220px,280px)}.charts-skeleton{grid-template-columns:repeat(2,1fr)}.history-toolbar .chip-bar{width:auto}.history-toolbar .chip{flex:0 1 auto}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.timelapse-stage{grid-template-columns:1.2fr minmax(280px,0.8fr)}}@media (min-width:1200px){.about-main-grid,.partner-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:no-preference){.card{animation:cardIn .45s ease both}.card:hover{transform:translateY(-2px);transition:transform .2s ease}@keyframes cardIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}