*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f1117;--surface:#1a1d27;--surface2:#242736;--border:#2e3148;--text:#e8eaf0;--text-dim:#7a7f9a;--accent:#5b7cf6;--accent-hover:#7a96ff;--danger:#e05c5c;--green:#3ecf8e;--yellow:#f5c842;--radius:8px;--radius-lg:12px}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}#root{width:100%;min-height:100vh}input,select,textarea,button{font-family:inherit;font-size:inherit}button{cursor:pointer;border-radius:var(--radius);border:none;padding:8px 16px;font-weight:500;transition:background .15s,opacity .15s}button:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-ghost{color:var(--text-dim);border:1px solid var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface2);color:var(--text)}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.btn-danger:hover:not(:disabled){background:#e05c5c1a}.btn-sm{padding:5px 10px;font-size:12px}input[type=text],input[type=number],select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);outline:none;width:100%;padding:7px 10px;transition:border-color .15s}input:focus,select:focus{border-color:var(--accent)}label{color:var(--text-dim);margin-bottom:4px;font-size:12px;display:block}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.tag{letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.tag-transit{color:var(--accent);background:#5b7cf633}.tag-drive{color:var(--yellow);background:#f5c84233}.p-badge{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:700;display:inline-flex}.p1-badge{color:gold;background:#ffd70033}.p2-badge{color:silver;background:#c0c0c033}.p3-badge{color:#cd8c52;background:#b0703a33}.divider{border:none;border-top:1px solid var(--border);margin:12px 0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
