:root{--red-500: #d31145;--red-400: #db406a;--red-200: #ed9fb4;--red-100: #f6cfd9;--charcoal-600: #333d47;--charcoal-500: #5b636b;--charcoal-400: #848a90;--charcoal-300: #adb1b5;--charcoal-200: #d6d8da;--charcoal-100: #eef0f2;--charcoal-50: #f6f7f8;--white: #ffffff;--salmon: #e8a090;--purple: #7b6b9b;--warm-grey: #c4b8a8;--success: #2f6f4e;--warning: #9a6b1f;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--space-7: 64px;--radius: 8px;--shadow: 0 1px 2px rgba(51, 61, 71, .06), 0 8px 24px rgba(51, 61, 71, .06);--font: "Open Sans", "Noto Sans", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);color:var(--charcoal-600);background:var(--white);line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.02em;color:var(--charcoal-600)}p{margin:0}button{font-family:inherit}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr auto}.banner{background:var(--charcoal-50);color:var(--charcoal-500);font-size:12px;padding:8px 24px;border-bottom:1px solid var(--charcoal-200)}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 24px;border-bottom:1px solid var(--charcoal-200)}.brand{display:flex;align-items:center;gap:12px}.brand-bar{width:4px;height:28px;background:var(--red-500);border-radius:2px}.brand-name{font-weight:700;font-size:16px}.brand-sub{font-size:12px;color:var(--charcoal-400)}.nav{display:flex;flex-wrap:wrap;gap:8px}.nav a{padding:8px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--charcoal-500)}.nav a.active,.nav a:hover{color:var(--red-500);background:var(--red-100)}.main{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:32px 0 64px}.footer{border-top:1px solid var(--charcoal-200);padding:16px 24px;font-size:12px;color:var(--charcoal-400)}.hero{display:grid;gap:16px;margin-bottom:40px}.kicker{color:var(--red-500);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.hero h1{font-size:clamp(28px,4vw,44px);line-height:1.15;max-width:18ch}.lede{font-size:18px;color:var(--charcoal-500);max-width:52ch}.tagline{display:grid;gap:8px;padding:24px 0}.tagline p{font-size:20px;font-weight:600}.grid-3{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.card{background:var(--white);border:1px solid var(--charcoal-200);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.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 h3{font-size:18px;margin-bottom:8px}.muted{color:var(--charcoal-500);font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border-radius:8px;border:1px solid transparent;font-weight:700;font-size:14px;cursor:pointer}.btn-primary{background:var(--red-500);color:var(--white)}.btn-primary:hover{background:#b80e3b}.btn-secondary{background:var(--white);color:var(--charcoal-600);border-color:var(--charcoal-300)}.btn-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--charcoal-100);color:var(--charcoal-500)}.chip-red{background:var(--red-100);color:var(--red-500)}.status{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.status-ready{color:var(--success)}.status-watch{color:var(--warning)}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.kpi{padding:16px;background:var(--charcoal-50);border-radius:8px}.kpi .value{font-size:28px;font-weight:700}.kpi .label{font-size:12px;color:var(--charcoal-400)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:12px;color:var(--charcoal-400);font-weight:700;padding:8px 0;border-bottom:1px solid var(--charcoal-200)}.table td{padding:12px 0;border-bottom:1px solid var(--charcoal-100)}.row-click{cursor:pointer}.row-click:hover,.row-click.selected{background:var(--red-100)}.tabs{display:flex;gap:8px;margin:16px 0 24px}.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:8px 4px;font-weight:700;color:var(--charcoal-400);cursor:pointer}.tabs button.active{color:var(--red-500);border-bottom-color:var(--red-500)}.check-list{display:grid;gap:12px}.check-item{display:grid;grid-template-columns:16px 1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--charcoal-200);border-radius:8px}.slider-row{display:grid;gap:4px;margin:12px 0}.slider-row input{accent-color:var(--red-500);width:100%}.scene-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:24px}.alert{padding:16px;border-radius:8px;background:var(--charcoal-50);border-left:4px solid var(--red-500)}.kpi-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.channel{padding:16px;border:1px solid var(--charcoal-200);border-radius:8px;cursor:pointer;text-align:left;background:var(--white)}.channel.selected{border-color:var(--red-500);box-shadow:inset 0 0 0 1px var(--red-500)}.bar{height:8px;background:var(--charcoal-200);border-radius:99px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--red-500)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes growX{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes draw{0%{stroke-dashoffset:800}to{stroke-dashoffset:0}}@keyframes rise{0%{height:0}}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.hero,.card,.kpi,.check-item,.channel{animation:fadeUp .55s ease both}.tagline p{animation:fadeUp .6s ease both}.tagline p:nth-child(1){animation-delay:.05s}.tagline p:nth-child(2){animation-delay:.15s}.tagline p:nth-child(3){animation-delay:.25s}.tagline p:nth-child(4){animation-delay:.35s}.kpi-row>*:nth-child(1){animation-delay:.05s}.kpi-row>*:nth-child(2){animation-delay:.1s}.kpi-row>*:nth-child(3){animation-delay:.15s}.kpi-row>*:nth-child(4){animation-delay:.2s}.chart{width:100%;height:auto}.draw-line{stroke-dasharray:800;animation:draw 1.2s ease forwards}.hbar{display:grid;gap:10px}.hbar-row{display:grid;grid-template-columns:140px 1fr 72px;gap:8px;align-items:center;font-size:13px}.hbar-track{height:10px;background:var(--charcoal-100);border-radius:99px;overflow:hidden}.hbar-fill{display:block;height:100%;border-radius:99px;transform-origin:left;animation:growX .9s ease both}.hbar-val{font-weight:700;text-align:right}.donut{display:flex;justify-content:center}.donut-ring{transition:stroke-dasharray .8s ease}.mini-bars{display:flex;align-items:flex-end;gap:3px;height:40px}.mini-bars span{flex:1;border-radius:2px 2px 0 0;animation:rise .7s ease both}.chart-card{margin-top:16px}.metric-delta{font-size:12px;font-weight:700}.metric-delta.up{color:var(--success)}.metric-delta.down{color:var(--red-500)}.play-hint{font-size:12px;color:var(--charcoal-400)}.two-col{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;margin-top:24px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.channel-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.legend{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 4px;font-size:12px;color:var(--charcoal-400)}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-item i{width:10px;height:10px;border-radius:2px}.grouped-track{display:grid;gap:4px}.grouped-track .hbar-fill{height:8px}.hbar-track.stacked{display:flex}.hbar-fill.static{animation:growX .9s ease both}.hbar-label{color:var(--charcoal-500)}.chart-dot{opacity:0;animation:pop .35s ease forwards}.vbar{transform:scaleY(0);animation:growY .7s ease forwards}@keyframes growY{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.waterfall{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:8px;min-height:180px;align-items:end}.wf-col{display:grid;gap:6px;text-align:center}.wf-track{position:relative;height:140px;background:var(--charcoal-50);border-radius:4px;overflow:hidden}.wf-bar{position:absolute;left:0;right:0;transform-origin:bottom;animation:growY .7s ease both}.wf-val{font-size:11px;font-weight:700}.wf-lab{font-size:10px;color:var(--charcoal-400)}.heat{display:grid;gap:6px}.heat-row{display:grid;grid-template-columns:120px repeat(3,1fr);gap:6px;align-items:center}.heat-lab{font-size:12px;color:var(--charcoal-400)}.heat-cell{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:6px;font-size:13px;font-weight:700;color:var(--charcoal-600);animation:pop .45s ease both}.alert{animation:fadeUp .45s ease both}.kpi-row>.kpi:nth-child(5){animation-delay:.25s}.card:nth-child(1){animation-delay:.04s}.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.16s}.check-item:nth-child(1){animation-delay:.05s}.check-item:nth-child(2){animation-delay:.1s}.check-item:nth-child(3){animation-delay:.15s}.check-item:nth-child(4){animation-delay:.2s}.check-item:nth-child(5){animation-delay:.25s}.check-item:nth-child(6){animation-delay:.3s}.section-title{margin:40px 0 8px;font-size:20px}.ask-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 28px;padding:12px 16px;border:1px solid var(--charcoal-200);border-radius:8px;background:var(--charcoal-50);animation:fadeUp .45s ease both}.ask-strip .chip{cursor:pointer;border:0;font-family:inherit}.agent-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:24px}.copilot-layout{display:grid;grid-template-columns:1.5fr .9fr;gap:16px;align-items:start}.chat-card{min-height:640px;display:flex;flex-direction:column}.chat{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.chat-log{display:grid;gap:12px;max-height:480px;overflow:auto;padding-right:4px}.chat-compact .chat-log{max-height:280px}.bubble{padding:12px 14px;border-radius:8px;animation:fadeUp .35s ease both}.bubble-assistant{background:var(--charcoal-50);border:1px solid var(--charcoal-200)}.bubble-user{background:var(--red-100);justify-self:end}.chat-bullets{margin:8px 0 0;padding-left:18px;font-size:14px}.chat-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;margin-top:12px}.chat-metrics .label{font-size:11px;color:var(--charcoal-400)}.tool-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.tool-pill{font-size:11px;font-weight:700;padding:3px 8px;border-radius:99px;background:var(--white);color:var(--charcoal-500);border:1px solid var(--charcoal-200)}.tool-pill.running{color:var(--red-500);border-color:var(--red-200);animation:pop .4s ease both}.follow-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.follow-row .chip{cursor:pointer;border:0;font-family:inherit}.chat-form{display:flex;gap:8px;margin-top:8px}.chat-form input{flex:1;min-height:40px;border:1px solid var(--charcoal-300);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:14px}.typing{font-size:13px;color:var(--charcoal-400);animation:fadeUp .4s ease both}.exception{display:grid;gap:4px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--charcoal-100);padding:12px 0;cursor:pointer;font-family:inherit;color:inherit}.exception:hover{background:var(--red-100)}.log-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:12px}.log-list li{display:grid;grid-template-columns:64px 1fr;gap:8px;align-items:start}.dock{position:fixed;right:24px;bottom:24px;z-index:40;display:grid;justify-items:end;gap:8px}.dock-panel{width:min(420px,calc(100vw - 32px));background:var(--white);border:1px solid var(--charcoal-200);border-radius:12px;box-shadow:var(--shadow);padding:12px 0;animation:fadeUp .35s ease both}.dock-head{display:flex;justify-content:space-between;align-items:center;padding:4px 16px 8px}.dock-panel .chat{padding:0 12px}.dock-fab{min-height:44px;padding:10px 18px;border:0;border-radius:99px;background:var(--red-500);color:var(--white);font-weight:700;cursor:pointer;box-shadow:var(--shadow)}.copilot-rail{display:grid;gap:16px}@media(max-width:1100px){.channel-grid,.agent-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.two-col,.three-col,.channel-grid,.agent-grid,.copilot-layout{grid-template-columns:1fr}.span-3,.span-4,.span-6,.span-8{grid-column:span 12}.header{flex-direction:column;align-items:flex-start}.heat-row{grid-template-columns:80px repeat(3,1fr)}}
