:root{--brand: #0b5394;--brand-dark: #083b6b;--brand-accent: #f5a623;--ink: #1a1a1a;--muted: #6b7280;--bg: #f7f8fa;--surface: #ffffff;--border: #e5e7eb;--danger: #b91c1c;--danger-bg: #fef2f2;--radius: 8px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);font-family:system-ui,Segoe UI,Roboto,Noto Sans Telugu,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg)}.app{display:flex;flex-direction:column;height:100%}.app-header{display:flex;align-items:center;gap:24px;padding:0 16px;min-height:56px;background:var(--brand);color:#fff;flex-wrap:wrap}.brand{display:flex;align-items:baseline;gap:10px}.brand-mark{font-weight:800;letter-spacing:1px}.brand-title{font-weight:500;opacity:.95}.app-nav{display:flex;gap:4px;margin-right:auto}.nav-link{color:#dbeafe;text-decoration:none;padding:8px 12px;border-radius:6px;font-size:14px}.nav-link:hover{background:#ffffff1f;color:#fff}.nav-link.active{background:#ffffff2e;color:#fff;font-weight:600}.app-actions{display:flex;align-items:center;gap:12px}.who{font-size:12px;opacity:.9}.app-main-content{flex:1;min-height:0;overflow:auto}.lang-switch{display:inline-flex;border:1px solid rgba(255,255,255,.4);border-radius:6px;overflow:hidden}.lang-btn{background:transparent;color:#dbeafe;border:0;padding:6px 10px;cursor:pointer;font-size:13px}.lang-btn[aria-pressed=true]{background:#fff;color:var(--brand);font-weight:700}.btn{border:0;border-radius:6px;padding:8px 14px;font-size:14px;cursor:pointer;font-weight:600}.btn-primary{background:var(--brand-accent);color:#1a1a1a}.btn-primary:hover{filter:brightness(.96)}.btn-ghost{background:transparent;color:inherit;border:1px solid currentColor}.btn:focus-visible{outline:2px solid #fff;outline-offset:2px}.page{padding:20px;max-width:1100px;margin:0 auto}.page h1{font-size:20px;margin:0 0 16px}.muted{color:var(--muted);font-size:13px;line-height:1.5}.dashboard{padding:20px;max-width:1100px;margin:0 auto}.filter{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter label{font-size:13px;color:var(--muted)}.input{padding:8px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px;min-width:200px}.input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.stat-value{font-size:24px;font-weight:800;color:var(--brand-dark)}.stat-unit{font-size:13px;font-weight:500;color:var(--muted)}.stat-label{margin-top:4px;font-size:13px;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.card-title{font-size:15px;margin:0 0 10px}.spinner{display:flex;align-items:center;gap:10px;color:var(--muted);padding:16px}.spinner-dot{width:14px;height:14px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca;border-radius:6px;padding:12px 14px;font-size:14px}.error-block{display:flex;align-items:center;gap:12px}.route-status{padding:24px;color:var(--muted)}.route-forbidden{margin:24px;padding:16px;background:var(--danger-bg);color:var(--danger);border:1px solid #fecaca;border-radius:6px}.workbench{display:grid;grid-template-columns:320px 1fr;height:100%;min-height:0}.panel{padding:16px;background:var(--surface);border-right:1px solid var(--border);overflow:auto}.panel h2{font-size:16px;margin:0 0 8px}.map{height:100%;width:100%}@media(max-width:720px){.workbench{grid-template-columns:1fr;grid-template-rows:auto 1fr}.app-header{gap:12px}}@media(prefers-reduced-motion:reduce){.spinner-dot{animation:none}}
