@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap');:root { --brand:#0d4aa0;--bg:#f7f7fb;--card:#fff;--text:#222;--muted:#6b7280;} *{box-sizing:border-box} body{margin:0;font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;background:var(--bg);color:var(--text)} header{background:rgba(13,74,160,.98);color:#fff;position:sticky;top:0;z-index:1000;backdrop-filter:saturate(180%) blur(8px)} header .container{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:12px;flex-wrap:wrap} header h1{font-size:20px;margin:0} nav a{color:#fff;text-decoration:none;margin:0 6px;padding:6px 10px;border-radius:8px;opacity:.95} nav a.active,nav a:hover{background:rgba(255,255,255,.14);opacity:1} .container{max-width:1100px;margin:0 auto;padding:16px} .card{background:var(--card);border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:16px;margin:16px 0;transition:box-shadow .2s ease,transform .05s ease} .card:hover{box-shadow:0 10px 26px rgba(0,0,0,.08);transform:translateY(-1px)} #map{height:480px;border-radius:12px;overflow:hidden} .input{width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:10px;font-size:16px} .list{list-style:none;padding:0;margin:12px 0} .list li{padding:10px 8px;border-bottom:1px solid #f1f1f4} .list li:last-child{border-bottom:none} .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px} .grid .pill{display:block;background:#eef2ff;border:1px solid #e0e7ff;border-radius:12px;padding:12px;text-decoration:none;color:#1f2937} .grid .pill small{display:block;color:var(--muted)} .muted{color:var(--muted);font-size:14px} .btn{display:inline-block;background:var(--brand);color:#fff;border:none;border-radius:10px;padding:10px 12px;margin-top:6px} footer{padding:24px 0;color:#9ca3af} footer .container{padding:0 20px} @media (max-width:640px){#map{height:360px} .card{padding:14px}} :root[data-theme='dark']{ --brand:#7fb0ff;--bg:#0b1220;--card:#111827;--text:#e5e7eb;--muted:#9ca3af;} :root[data-theme='dark'] header{background:rgba(9,14,26,.95)} :root[data-theme='dark'] .grid .pill{background:#0e1628;border-color:#1f2a44;color:#d1d5db} :root[data-theme='dark'] .list li{border-bottom-color:#1f2937} :root[data-theme='dark'] .input{background:#0e1628;color:#e5e7eb;border-color:#1f2937} :root[data-theme='dark'] .btn{background:#3b82f6} #miniPlayer{ position:fixed;left:0;right:0;bottom:0;z-index:1001;background:var(--card);color:var(--text);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -6px 24px rgba(0,0,0,.2);padding:10px 14px;display:none;} #miniPlayer .row{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1100px;margin:0 auto;} #miniPlayer .title{font-weight:700} #miniPlayer .pill{background:#eef2ff;padding:6px 10px;border-radius:999px;font-weight:600} :root[data-theme='dark'] #miniPlayer .pill{background:#0e1628} .alerts {background:#fde68a;color:#5b3b00;border:1px solid #fbbf24;border-radius:12px;padding:12px;margin:16px 0;} .alerts h3{margin:0 0 6px 0;font-size:16px} .alerts ul{margin:0;padding-left:18px} :root[data-theme='dark'] .alerts{background:#3b2f06;color:#fde68a;border-color:#a16207} .routeTicker{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--card);border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;margin:16px 0} .routeTicker .eta{font-weight:700} :root[data-theme='dark'] .routeTicker{border-color:#1f2937} .select{padding:8px 10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff} :root[data-theme='dark'] .select{background:#0e1628;color:#e5e7eb;border-color:#1f2937} .printNote{font-size:14px;color:#6b7280;margin-top:6px}