:root{--bg:#0b0e13;--panel:#191e27;--panel2:#1d232e;--line:#2a303b;--text:#f5eedf;--muted:#717886;--amber:#ffad21;--green:#39e57b;--pink:#ef68b1}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}body{overflow-x:hidden}
.topbar{height:112px;padding:18px 34px;display:flex;align-items:center;justify-content:space-between;background:#090c11;border-bottom:1px solid #252a32}.brand{display:flex;align-items:center;gap:18px}.crest{width:54px;height:62px;display:grid;place-items:center;background:#d71932;border:3px solid #fff;border-radius:15px 15px 24px 24px;font-weight:900;font-size:26px}.brand strong{display:block;color:var(--amber);font-size:29px;letter-spacing:2px}.brand span{display:block;color:#858b96;font-size:15px;letter-spacing:3px;margin-top:4px}.clock{text-align:right}.clock strong{display:block;color:#ffc14a;font-size:48px;letter-spacing:2px}.clock span{color:#8a909a;letter-spacing:2px;font-size:15px}.ticker{height:44px;background:var(--amber);color:#11151b;display:flex;align-items:center;font-weight:900;letter-spacing:2px;padding:0 22px;gap:12px}.ticker>div{font-weight:700;letter-spacing:.5px;margin-left:25px;opacity:.8}
main{padding-bottom:22px}.stop-header{height:132px;padding:24px 32px;display:flex;align-items:center;gap:24px;background:linear-gradient(#121720,#0e131b);border-bottom:1px solid #29303b}.bus-icon{width:66px;height:66px;border-radius:12px;background:var(--amber);color:#111;font-size:35px;font-weight:900;display:grid;place-items:center}.stop-header h1{font-size:48px;margin:0;flex:1;letter-spacing:-1px}.live-pill{border:1px solid #195d3a;background:#102a20;color:var(--green);padding:12px 17px;border-radius:6px;font-weight:800;letter-spacing:1px;display:flex;gap:10px;align-items:center}.live-pill i{width:10px;height:10px;border-radius:50%;background:currentColor}.live-pill.offline{color:#ffba45;border-color:#6e4b15;background:#2b2112}.legend{height:48px;border-bottom:1px solid #252b33;padding:0 32px;display:flex;align-items:center;gap:28px;color:#8d939d;letter-spacing:1.5px}.legend span{display:flex;align-items:center;gap:8px}.legend i{width:19px;height:19px;border-radius:4px}.legend .pink{background:var(--pink)}.legend .green{background:var(--green)}.legend .amber{background:var(--amber)}
.board{margin:28px 32px 0}.board-head{display:grid;grid-template-columns:140px 1fr 220px 220px;color:#777f8d;font-size:15px;font-weight:900;letter-spacing:3px;padding:0 22px 14px}.rows{border-top:1px solid #343b47}.row{min-height:106px;display:grid;grid-template-columns:140px 1fr 220px 220px;background:var(--panel);border-bottom:1px solid #242b35}.row:nth-child(even){background:var(--panel2)}.cell{display:flex;align-items:center;padding:20px 22px}.route-badge{min-width:86px;text-align:center;padding:12px 14px;border-radius:8px;background:var(--route-color,var(--pink));color:var(--route-text,#101318);font-size:31px;font-weight:900}.destination{font-size:29px;font-weight:800}.arrival{border-left:1px solid #2b323d;flex-direction:column;align-items:flex-start;justify-content:center}.arrival strong{font-size:39px;line-height:1}.arrival small{font-size:14px;letter-spacing:2px;color:var(--muted);margin-top:8px}.arrival.live strong,.arrival.live small{color:var(--green)}.empty{font-size:34px;color:#676e7a;align-items:center;justify-content:center}.loading,.error,.no-service{padding:55px;text-align:center;font-size:26px;background:var(--panel);color:#9ba2ad}
footer{border-top:1px solid #252b34;padding:22px 32px 15px;color:#6f7682;font-size:14px;line-height:1.6;display:grid;grid-template-columns:1fr 1fr;gap:20px}footer b{color:#969da8}.refresh{grid-column:1/-1;border-top:1px solid #222831;padding-top:12px;display:flex;justify-content:space-between}.refresh>b,.refresh span b{color:var(--amber)}
@media(max-width:900px){.brand span{display:none}.clock strong{font-size:32px}.stop-header h1{font-size:34px}.board{margin:18px 10px}.board-head,.row{grid-template-columns:100px 1fr 170px 170px}.board-head{padding-left:10px}.cell{padding:15px 10px}.destination{font-size:22px}.arrival strong{font-size:28px}.route-badge{min-width:70px;font-size:24px}.row{min-height:90px}}


.arrival.arriving strong {
  color: var(--amber);
  font-size: 31px;
  letter-spacing: 1px;
}

.arrival.arriving small {
  color: var(--amber);
}