@import"https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600;700;800&display=swap";:root{--purple: #6A2BE0;--purple-600: #591fc7;--purple-700: #4a1aa8;--lilac-100: #efe8fc;--tint: #F8F6FC;--magenta: #AD3BBA;--ink: #170F2E;--ink-700: #2a2047;--muted: #6b6482;--line: #ece7f6;--white: #fff;--success: #15804a;--danger: #c23b53;--font: "Raleway", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--tint);-webkit-font-smoothing:antialiased}.hidden{display:none!important}.muted{color:var(--muted)}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:20px;letter-spacing:-.03em}.brand .logo{width:32px;height:32px;color:var(--purple)}.brand span,.brand .badge{background:var(--lilac-100);color:var(--purple-700);font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-weight:600;font-size:14px;padding:10px 16px;border:none;cursor:pointer;border-radius:999px;transition:all .15s ease}.btn-sm{font-size:13.5px;padding:9px 15px}.btn-block{width:100%;padding:13px;font-size:15px}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{background:var(--purple-600)}.btn-ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--purple);color:var(--purple)}.btn:disabled{opacity:.5;cursor:not-allowed}.login-screen,.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--tint)}.login-card{background:#fff;width:100%;max-width:390px;border-radius:22px;padding:36px 32px;box-shadow:0 18px 50px #170f2e1f;text-align:center}.login-card .brand{justify-content:center;margin-bottom:14px}.login-card .logo-big{width:56px;height:56px;color:var(--purple);margin:0 auto 16px;display:block}.login-card h1{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0 0 6px}.login-card p,.login-sub{text-align:center;color:var(--muted);font-size:14.5px;margin:0 0 22px}.login-card input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:15px;margin-bottom:14px;outline:none}.login-card input:focus{border-color:var(--purple);box-shadow:0 0 0 4px #6a2be01f}.login-error,.login-err{color:var(--danger);font-size:13.5px;text-align:center;margin-top:12px;min-height:18px}.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.topbar:not(:has(.topbar-in)){padding:14px 28px;display:flex;align-items:center;justify-content:space-between}.topbar-in{max-width:1160px;margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between}.topbar-actions,.topbar .right{display:flex;gap:10px}.topbar .btn{font-size:13.5px;padding:9px 15px}.dash-main,.wrap{max-width:1160px;margin:0 auto;padding:32px 28px 60px}.dash-main h1{font-size:28px;font-weight:800;letter-spacing:-.02em;margin:0 0 4px}.dash-main>.muted{margin:0 0 24px}.stats-row,.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:28px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}.stat-card .n{font-size:30px;font-weight:800;letter-spacing:-.03em}.stat-card .l{font-size:13px;color:var(--muted);margin-top:2px}.stat-card.accent{background:var(--purple);border:none;color:#fff}.stat-card.accent .l{color:#fffc}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.filters,.tabs{display:flex;gap:8px;flex-wrap:wrap}.chip,.tabs button{font-family:inherit;font-size:14px;font-weight:600;color:var(--muted);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:9px 16px;cursor:pointer;transition:all .15s ease}.chip:hover,.tabs button:hover{border-color:var(--purple);color:var(--purple)}.chip.active,.tabs button.active{background:var(--purple);color:#fff;border-color:var(--purple)}.toolbar-right,.tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar-right input,.tools .search input{padding:10px 14px;border:1.5px solid var(--line);border-radius:999px;font-family:inherit;font-size:14px;outline:none;min-width:240px}.toolbar-right input:focus,.tools .search input:focus{border-color:var(--purple);box-shadow:0 0 0 4px #6a2be01f}.table-wrap,.table-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.table-wrap,.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--tint);white-space:nowrap}tbody td{padding:15px 18px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:#faf9fe}.cell-name{font-weight:600}.cell-contact a{color:var(--purple);display:block}.cell-contact .sub{color:var(--muted);font-size:13px}.cat-badge{display:inline-block;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;text-transform:capitalize}.cat-badge.user{background:var(--lilac-100);color:var(--purple-700)}.cat-badge.driver{background:#e4f3ff;color:#1d6fb8}.cat-badge.service{background:#fdeef6;color:var(--magenta)}.detail-tags{display:flex;flex-wrap:wrap;gap:6px}.detail-tags span{font-size:12px;background:var(--tint);border:1px solid var(--line);color:var(--ink-700);padding:3px 9px;border-radius:8px}.detail-note{color:var(--muted);font-size:13px;max-width:300px;margin-top:4px}.detail-note a{color:var(--purple)}.empty-row td{padding:48px;text-align:center;color:var(--muted)}.time{white-space:nowrap;color:var(--muted);font-size:13px}.pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}.pager .info,.pager .muted{min-width:170px;text-align:center;color:var(--muted);font-size:14px}.pager .btns{display:flex;gap:10px}@media (max-width: 820px){.stats-row,.stats{grid-template-columns:repeat(2,1fr)}.toolbar-right input,.tools .search input{min-width:0;flex:1}}
