:root{--brand: #0f766e;--brand-deep: #0b4f4a;--brand-bright: #14b8a6;--ink: #122025;--muted: #5a6f76;--line: #c5d2d6;--bg: #e8eef0;--surface: #f7fafb;--deep: #0f1719;--font: "Outfit", "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);background:var(--bg)}a{color:inherit;text-decoration:none}button,input{font:inherit}.mono{font-family:var(--mono)}.muted{color:var(--muted);font-size:13px}.spacer{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 16px;border-radius:8px;border:none;cursor:pointer;font-weight:600;font-size:14px}.btn.primary{background:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-deep)}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn.lg{height:48px;padding:0 22px;font-size:15px}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.mark{width:28px;height:28px;border-radius:8px;display:inline-block;background:linear-gradient(145deg,var(--brand-bright),var(--brand-deep))}.loading-screen{min-height:100vh;display:grid;place-content:center;gap:12px;text-align:center}.marketing{min-height:100vh;background:radial-gradient(1100px 560px at 8% -8%,rgba(20,184,166,.16),transparent 55%),radial-gradient(900px 480px at 100% 8%,rgba(11,79,74,.1),transparent 50%),linear-gradient(165deg,#d9e4e7,var(--bg) 42%,#d2e0e3)}.m-nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:24px;padding:14px 28px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7fafbe0;border-bottom:1px solid rgba(197,210,214,.6)}.m-brand{display:flex;align-items:center;gap:10px;font-size:18px}.m-nav nav{display:flex;gap:18px;color:var(--muted);font-size:14px}.m-nav nav a:hover{color:var(--brand-deep)}.m-actions{margin-left:auto;display:flex;gap:10px}.hero-bleed{position:relative;padding:0;max-width:none;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,rgba(15,23,25,.04),transparent 42%),repeating-linear-gradient(90deg,transparent,transparent 47px,rgba(15,118,110,.04) 48px),repeating-linear-gradient(0deg,transparent,transparent 47px,rgba(15,118,110,.04) 48px);pointer-events:none}.hero-inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:36px;max-width:1160px;margin:0 auto;padding:64px 28px 72px;align-items:center}.eyebrow{font-family:var(--mono);font-size:12px;color:var(--brand);letter-spacing:.05em;margin:0 0 14px}.hero h1{margin:0 0 18px;display:flex;flex-direction:column;gap:10px}.hero h1 .brand-line{font-size:clamp(40px,5.4vw,58px);line-height:1.05;letter-spacing:-.03em;color:var(--brand-deep)}.hero h1 .sub-line{font-size:clamp(22px,2.8vw,30px);font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--ink)}.lead{font-size:17px;line-height:1.65;color:var(--muted);margin:0 0 28px;max-width:36em}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.hint{font-size:13px;color:var(--muted);font-family:var(--mono)}.hero-fleet{width:100%;max-width:520px;margin-left:auto;animation:riseIn .7s ease both}.fleet-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 16px 40px rgba(15,23,25,.18))}.hub-pulse{animation:hubPulse 2.8s ease-in-out infinite;transform-origin:240px 210px}.pulse-path{stroke-dasharray:6 10;animation:dashMove 2.4s linear infinite}.pulse-path.d2{animation-delay:.3s}.pulse-path.d3{animation-delay:.6s}.pulse-path.d4{animation-delay:.9s}@keyframes hubPulse{0%,to{opacity:1}50%{opacity:.82}}@keyframes dashMove{to{stroke-dashoffset:-48}}@keyframes riseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.section{max-width:1120px;margin:0 auto;padding:64px 28px}.section.alt{background:#ffffff80;border-block:1px solid var(--line);max-width:none;padding-inline:max(28px,calc((100% - 1120px)/2 + 28px))}.section h2{margin:0 0 8px;font-size:30px;letter-spacing:-.02em}.section-lead{color:var(--muted);margin:0 0 28px;max-width:42em;line-height:1.6}.embodied-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px;align-items:start}.embodied-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.embodied-points li{display:grid;gap:4px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px}.embodied-points strong{font-size:15px}.embodied-points span{color:var(--muted);font-size:14px;line-height:1.5}.form-factor-panel{background:#0f1719;color:#e8f1f3;border-radius:16px;padding:22px;box-shadow:0 12px 36px #0f171929}.form-factor-panel h3{margin:0 0 18px;font-size:15px;color:#9bb0b7;font-weight:600;letter-spacing:.04em}.ff-row{display:grid;grid-template-columns:1fr 1.2fr auto;gap:10px;align-items:center;margin-bottom:14px}.ff-meta{display:flex;flex-direction:column;gap:2px}.ff-meta strong{font-size:14px}.ff-meta span{font-size:12px;color:#9bb0b7}.ff-bar{height:8px;background:#1c2b2f;border-radius:999px;overflow:hidden}.ff-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0f766e,#14b8a6);animation:barGrow 1.1s ease both}.ff-row em{font-style:normal;font-size:12px;color:#14b8a6}@keyframes barGrow{0%{width:0!important}}.ops-charts{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chart-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.chart-card.wide{grid-column:1 / -1}.chart-card figcaption{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.chart-card figcaption span{color:var(--muted);font-size:12px}.line-chart{width:100%;height:auto}.chart-line{stroke-dasharray:600;animation:drawLine 1.4s ease forwards}.chart-dot{animation:popIn .4s ease both}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes popIn{0%{opacity:0;r:0}to{opacity:1}}.chart-x{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:4px}.chart-note{margin:10px 0 0;font-size:12px;color:var(--muted)}.donut-wrap{display:flex;gap:18px;align-items:center}.donut{width:140px;height:140px;transform:rotate(-90deg)}.donut text{transform:rotate(90deg);transform-origin:60px 60px}.donut-seg{animation:donutIn 1s ease both}@keyframes donutIn{0%{opacity:0}to{opacity:1}}.donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--muted)}.donut-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:8px;vertical-align:middle}.bar-chart{display:flex;flex-direction:column;gap:14px;padding:8px 0}.bar-row{display:grid;grid-template-columns:72px 1fr 56px;gap:12px;align-items:center;font-size:14px}.bar-track{height:14px;background:#e8eef0;border-radius:999px;overflow:hidden}.bar-track i{display:block;height:100%;border-radius:999px;background:#8aa3aa;animation:barGrow 1s ease both}.bar-track i.accent{background:linear-gradient(90deg,#0f766e,#14b8a6)}.bar-row em{font-style:normal;font-size:12px;color:var(--brand-deep);text-align:right}.card-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card-row article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;transition:transform .2s ease,border-color .2s ease}.card-row article:hover{transform:translateY(-2px);border-color:#0f766e73}.cap-icon{font-size:22px;color:var(--brand);margin-bottom:10px}.card-row h3{margin:0 0 8px}.card-row p{margin:0;color:var(--muted);line-height:1.55}.scene-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.scene-cards article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;min-height:160px}.scene-tag{display:inline-block;font-size:11px;color:var(--brand-deep);background:#0f766e1a;padding:3px 8px;border-radius:4px;margin-bottom:12px}.scene-cards h3{margin:0 0 8px;font-size:17px}.scene-cards p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.cta-band{padding-top:24px}.cta-band-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:28px 32px;border-radius:16px;background:linear-gradient(120deg,#0b4f4a,#0f766e 55%,#127a72);color:#fff}.cta-band-inner h2{margin:0 0 8px;font-size:24px}.cta-band-inner p{margin:0;opacity:.88}.cta-band-inner .btn.primary{background:#fff;color:var(--brand-deep)}.m-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:24px 28px 40px;color:var(--muted);font-size:13px;max-width:1120px;margin:0 auto}.m-foot a:hover{color:var(--brand-deep)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(800px 400px at 80% 0%,rgba(20,184,166,.12),transparent 50%),var(--bg)}.auth-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 8px 28px #0f17190f}.auth-brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;margin-bottom:18px}.auth-card h1{margin:0 0 8px;font-size:24px}.auth-card .sub{margin:0 0 22px;color:var(--muted);font-size:14px}.auth-card label{display:block;font-size:13px;font-weight:600;margin-bottom:14px}.auth-card input{width:100%;margin-top:6px;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.code-row{display:flex;gap:8px;align-items:center}.code-row input{flex:1}.ok-hint{color:var(--brand);font-size:13px}.err-hint{color:#c0392b;font-size:13px}.foot-link{margin-top:18px;font-size:13px;color:var(--muted)}.shell{min-height:100vh;display:flex;flex-direction:column}.shell-bar{display:flex;align-items:center;gap:14px;padding:12px 20px;background:#fff;border-bottom:1px solid var(--line);font-size:14px}.shell-bar.dark{background:var(--deep);color:#e8f1f3;border-color:#2a3d42}.shell-bar a{color:var(--muted)}.shell-bar.dark a{color:#9bb0b7}.pill{font-family:var(--mono);font-size:11px;padding:3px 8px;border-radius:4px;background:#14b8a626;color:var(--brand-bright)}.shell-main{flex:1;padding:24px;max-width:1100px;width:100%;margin:0 auto}.shell-main.dark{max-width:none;background:#121c1f;color:#e8f1f3}.shell-main h1,.shell-main h2{margin-top:0}.list{display:flex;flex-direction:column;gap:8px}.row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-radius:10px;border:1px solid var(--line);background:#fff}.shell-main.dark .row{background:#162225;border-color:#2a3d42}.row.hot{border-color:#c0392b73}.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.kpi{padding:14px;border-radius:10px;border:1px solid #2a3d42;background:#162225}.kpi span{display:block;font-size:12px;color:#9bb0b7;margin-bottom:8px}.kpi b{font-size:28px;font-family:var(--mono);font-weight:500;color:var(--brand-bright)}.kpi b.sm{font-size:14px;line-height:1.4}@media(max-width:980px){.hero-inner,.embodied-grid,.card-row,.ops-charts,.scene-cards,.kpi-row{grid-template-columns:1fr}.chart-card.wide{grid-column:auto}.ff-row{grid-template-columns:1fr}.m-nav nav{display:none}.hero-fleet{margin:0 auto}}
