.dt-workspace{--dt-mint:#13b997;--dt-blue:#3778fb;--dt-violet:#8b65db;--dt-amber:#c98b23;max-width:1600px;margin:auto}.dt-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.dt-scope{display:flex;align-items:center;gap:10px;color:#bf771e;font-size:19px}.dt-scope strong{font-size:13px;color:var(--text)}.dt-scope>span{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:12px}.dt-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.dt-period{display:flex;padding:4px;border:1px solid var(--line);border-radius:9px;background:#f5f7fc}.dt-period button{border:0;background:transparent;color:var(--muted);padding:7px 11px;border-radius:6px;font-size:12px}.dt-period .selected{background:white;color:#1b4bb3;box-shadow:0 1px 4px #172d5920}.dt-hero{position:relative;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at 92% 20%,#143c51 0%,transparent 53%),#0e1b2e;padding:32px 36px;display:grid;grid-template-columns:1.35fr 1fr;gap:30px;color:#fff}.dt-hero:after{content:'';width:360px;height:360px;border:1px solid #ffffff08;border-radius:50%;position:absolute;right:-140px;top:-160px;box-shadow:0 0 0 55px #ffffff03,0 0 0 110px #ffffff02;pointer-events:none}.dt-eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#82b5ca}.dt-hero h2{font-size:clamp(24px,2.5vw,36px);letter-spacing:-1px;line-height:1.23;margin:13px 0}.dt-hero h2 span{color:#85dccb}.dt-hero p{max-width:420px;color:#bccddd;font-size:12px;line-height:1.8;margin-bottom:20px}.dt-live-state{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11px;color:#bdd3df}.dt-live-state strong{color:white;font-weight:500}.dt-live-state>span{flex-basis:100%;padding-left:15px}.dt-live-state i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4bddb8;box-shadow:0 0 0 4px #4bddb811}.dt-live-state.warning i{background:#f4bc64;box-shadow:0 0 0 4px #f4bc6411}.dt-hero-stat{display:flex;flex-direction:column;justify-content:center;padding-left:30px;border-left:1px solid #ffffff17;position:relative;z-index:1}.dt-hero-stat>span:first-child{font-size:10px;letter-spacing:1.6px;color:#a0bed0}.dt-hero-stat>strong{font-size:clamp(43px,5.8vw,72px);letter-spacing:-3px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.4}.dt-hero-stat small{font-size:12px;color:#a6bdcb}.dt-hero-scale{display:flex;gap:5px;margin:23px 0 12px;max-width:280px}.dt-hero-scale i{height:4px;flex:1;border-radius:3px;background:#43d6b6;opacity:.7}.dt-hero-scale i:nth-child(n+6){opacity:.35}.dt-hero-scale i:nth-child(n+9){opacity:.12}.dt-reference-note{font-size:10px;color:#8ca6b8}.dt-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 24px}.dt-stat{border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0;position:relative;background:linear-gradient(135deg,#fff,#fafcfe)}.dt-stat:before{content:'';display:block;width:24px;height:3px;border-radius:2px;background:var(--dt-blue);margin-bottom:16px}.dt-stat.mint:before{background:var(--dt-mint)}.dt-stat.violet:before{background:var(--dt-violet)}.dt-stat.amber:before{background:var(--dt-amber)}.dt-stat>span{font-size:9px;letter-spacing:1.1px;color:var(--muted);font-weight:650;display:block}.dt-stat>strong{display:block;font-size:29px;line-height:1.7;font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-.8px}.dt-stat>small{font-size:10px;color:var(--muted);line-height:1.6;display:block}.dt-chart-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:18px;margin-bottom:18px}.dt-panel{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;min-width:0}.dt-panel-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:22px 22px 0}.dt-kicker{font-size:9px;letter-spacing:1.3px;color:var(--muted);font-weight:600}.dt-panel h3{font-size:16px;letter-spacing:-.3px;margin:7px 0;font-weight:600}.dt-panel-description{color:var(--muted);font-size:11px;line-height:1.6;margin:5px 22px 12px;min-height:35px}.dt-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:9px;color:var(--muted);justify-content:flex-end}.dt-legend span:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--dt-blue);margin-right:5px}.dt-legend .mint:before{background:var(--dt-mint)}.dt-legend .violet:before{background:var(--dt-violet)}.dt-legend .amber:before{background:var(--dt-amber)}.dt-chart{position:relative;min-height:180px;padding:0 16px 0 6px}.dt-chart svg{width:100%;height:230px;overflow:visible}.dt-chart text{font-size:10px;fill:#7e8b9f;font-family:inherit}.dt-gridline{stroke:#e9eef4;stroke-width:1;stroke-dasharray:3 4}.dt-line{fill:none;stroke:var(--dt-blue);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.dt-line.mint{stroke:var(--dt-mint)}.dt-line.violet{stroke:var(--dt-violet)}.dt-line.amber{stroke:var(--dt-amber)}.dt-point{fill:var(--dt-blue);stroke:white;stroke-width:1.5;transition:r .1s}.dt-point.mint{fill:var(--dt-mint)}.dt-point.violet{fill:var(--dt-violet)}.dt-point.amber{fill:var(--dt-amber)}.dt-point:hover,.dt-point:focus{r:6;outline:none;stroke:#17294c;stroke-width:2}.dt-chart-empty{position:absolute;inset:24px 20px 45px 60px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#ffffffc9}.dt-chart-empty>span{font-size:38px;line-height:1;color:#9badc5}.dt-chart-empty p{font-size:11px;color:var(--muted);max-width:230px;line-height:1.7}.dt-chart-foot{border-top:1px solid var(--line-soft);padding:13px 22px;display:flex;gap:10px;justify-content:space-between;color:var(--muted);font-size:10px;line-height:1.6}.dt-chart-foot strong{font-weight:500;color:var(--text)}.dt-mini-tag{font-size:10px;font-weight:500;padding:4px 7px;border:1px solid var(--line);border-radius:5px;color:var(--muted);white-space:nowrap}.dt-histogram{height:230px;padding:20px 22px 27px;display:flex;gap:12px;align-items:stretch}.dt-histogram>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.dt-histogram span{font-size:10px;font-variant-numeric:tabular-nums;color:var(--muted)}.dt-bar-track{width:100%;max-width:46px;background:#f5f8fc;flex:1;display:flex;align-items:flex-end;border-radius:5px 5px 0 0}.dt-bar{width:100%;background:linear-gradient(#43c9b0,#16a98d);border-radius:5px 5px 0 0;transition:height .3s}.dt-bar.warm{background:linear-gradient(#e7b063,#c98930)}.dt-histogram small{white-space:nowrap;font-size:9px;color:var(--muted)}.dt-health-list{padding:10px 22px 0}.dt-health-list>div{display:flex;gap:10px;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line-soft);font-size:10px;line-height:1.5}.dt-health-list>div>span{color:var(--muted)}.dt-health-list strong{font-weight:550;text-align:right}.dt-signal-icon{font-size:30px;color:var(--dt-mint);line-height:1}.dt-fast{color:#008466}.dt-slow{color:#a66b15}.dt-measurement-note{padding:17px 22px;color:var(--muted);font-size:10px;line-height:1.7}.dt-measurement-note strong{color:var(--text);font-weight:550}.dt-measurement-note p{margin:5px 0}.dt-measurement-note small{font-size:9px;color:#7b889d}.dt-arrivals .dt-panel-head{padding-bottom:18px}.dt-feed-status{font-size:10px;color:var(--muted);text-align:right}.dt-arrivals table{width:100%;min-width:830px}.dt-arrivals th{font-size:9px;text-transform:uppercase;letter-spacing:.7px;background:#f8fafd;padding:13px 22px;color:var(--muted);white-space:nowrap}.dt-arrivals td{padding:16px 22px;font-size:11px;vertical-align:middle;border-top:1px solid var(--line-soft);max-width:270px;overflow-wrap:anywhere}.dt-arrivals td strong{font-size:11px;font-weight:550;display:block}.dt-arrivals td small,.dt-arrivals td code{display:block;color:var(--muted);font-size:9px;margin-top:6px;line-height:1.5}.dt-route{border:1px solid var(--line);padding:4px 7px;border-radius:5px;color:var(--muted);font-size:10px}.dt-state{font-size:10px;color:#365582}.dt-empty-feed{padding:35px;text-align:center}.dt-empty-feed p{font-size:12px;color:var(--muted);line-height:1.7;max-width:450px;margin:10px auto}.dt-method{margin-top:18px;padding:17px 21px;border-radius:9px;background:#f7f9fd;font-size:11px;color:var(--muted);line-height:1.8}.dt-method summary{cursor:pointer;color:var(--text);font-weight:550}.dt-method a{color:var(--accent)}.dt-footer{font-size:9px;color:var(--muted);display:flex;justify-content:space-between;gap:14px;margin-top:18px;line-height:1.6}.dt-error{padding:14px 18px;border:1px solid #f0cf98;background:#fff7e8;color:#865815;border-radius:10px;margin-bottom:16px;font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.dt-error button{background:transparent;border:1px solid #c9aa77;color:inherit;padding:5px 10px;border-radius:5px}.dt-loading{min-height:450px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);text-align:center}.dt-loading h2{font-size:20px;color:var(--text)}.dt-loading p{font-size:13px}.dt-radar{width:48px;height:48px;border:1px solid #92cdbe;border-radius:50%;position:relative;box-shadow:0 0 0 12px #eaf6f1,0 0 0 24px #f4faf7;margin-bottom:40px}.dt-radar:after{content:'';position:absolute;background:#22ad8c;width:8px;height:8px;border-radius:50%;left:20px;top:20px}.dt-detail{padding:24px;line-height:1.7;font-size:12px;color:var(--muted)}.dt-detail-time{background:#0e1b2e;color:white;border-radius:10px;padding:24px;display:flex;flex-direction:column;gap:5px}.dt-detail-time strong{font-size:32px;font-weight:500}.dt-detail-time span{font-size:11px;color:#abd2cc}.dt-detail ol{list-style:none;padding:12px 0}.dt-detail li{padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;justify-content:space-between;font-size:11px}.dt-detail li strong{font-size:10px;color:var(--text);font-weight:500}.dt-detail label{display:block;margin:14px 0}.dt-detail code{display:block;font-size:10px;overflow-wrap:anywhere;color:var(--text)}
@media(max-width:1150px){.dt-chart-grid{grid-template-columns:minmax(0,1.45fr) minmax(270px,1fr)}.dt-panel-head{align-items:flex-start;flex-wrap:wrap}.dt-stats{gap:10px}.dt-stat{padding:17px}.dt-hero{padding:28px}.dt-scope>span{display:none}.dt-legend{justify-content:flex-start}}
@media(max-width:900px){.dt-chart-grid{grid-template-columns:1fr}.dt-stats{grid-template-columns:repeat(2,1fr)}.dt-hero{gap:20px}.dt-hero-stat{padding-left:20px}.dt-hero h2{font-size:25px}.dt-hero-stat>strong{font-size:48px}.dt-panel-head{flex-wrap:nowrap}.dt-chart svg{height:auto;min-height:180px}}
@media(max-width:600px){.dt-hero{grid-template-columns:1fr;padding:23px}.dt-hero-stat{border-left:0;border-top:1px solid #ffffff17;padding:20px 0 0}.dt-hero h2{font-size:27px}.dt-hero p{margin-bottom:15px}.dt-hero-scale{margin-top:13px}.dt-stats{gap:8px}.dt-stat{padding:14px}.dt-stat>strong{font-size:25px}.dt-stat>span{font-size:8px}.dt-controls{gap:7px;width:100%}.dt-controls>.subtle-button{font-size:10px;padding:9px}.dt-panel-head{padding:18px 16px 0;flex-wrap:wrap}.dt-panel-description{margin-left:16px;margin-right:16px}.dt-chart-foot{padding:12px 16px}.dt-footer{flex-direction:column}.dt-detail li{flex-direction:column;gap:3px}.dt-chart{padding-right:6px}.dt-chart-empty{inset:20px 15px 30px 55px}}
@media(prefers-reduced-motion:reduce){.dt-bar,.dt-point{transition:none}}

.toast.dt-visible{display:block;position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:90vw;padding:14px 20px;background:#132541;color:#fff;border-radius:8px;z-index:100}

.dt-arrivals .table-scroll{max-height:490px;overflow:auto;overscroll-behavior:contain}.dt-arrivals thead{position:sticky;top:0;z-index:1}.dt-arrival-count{margin:0;padding:12px 22px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
