@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Myanmar:wght@400;500;600;700;800&display=swap');

:root { --ink:#081528; --panel:#0d1e35; --panel2:#112641; --amber:#ffb51b; --cyan:#3de2dd; --muted:#9aacbe; --line:rgba(255,255,255,.11); --danger:#ff7777; }
* { box-sizing:border-box; }
html { min-height:100%; background:var(--ink); }
body { margin:0; min-height:100vh; color:#f7fafc; font-family:"Noto Sans Myanmar",system-ui,sans-serif; background:radial-gradient(circle at 12% 10%,#173655 0,transparent 34%),linear-gradient(145deg,#071321 0%,#0a1a2e 55%,#071423 100%); }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:40px 40px; mask-image:linear-gradient(to bottom,black,transparent 82%); }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
.app-shell { width:min(1180px,calc(100% - 40px)); min-height:100vh; margin:auto; display:flex; flex-direction:column; position:relative; z-index:1; }
.brand-bar { height:96px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:12px; color:white; text-decoration:none; }
.brand-mark { display:grid; place-items:center; width:52px; height:52px; border-radius:16px; background:var(--amber); box-shadow:0 12px 30px rgba(255,181,27,.22); }
.brand-mark svg { width:34px; fill:none; stroke:#0a1827; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.brand strong { display:block; font-size:1.15rem; letter-spacing:.02em; }
.brand small,.server-pill,.eyebrow,footer small,.status-grid small,.call-btn small { font-family:system-ui,sans-serif; font-weight:700; letter-spacing:.14em; }
.brand small { color:var(--amber); font-size:.62rem; }
.server-pill { display:flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid var(--line); border-radius:999px; color:#c9d3df; font-size:.7rem; letter-spacing:.08em; }
.server-pill i { width:7px;height:7px;border-radius:50%;background:#44e48f;box-shadow:0 0 12px #44e48f; }
.auth-layout { flex:1; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(40px,8vw,110px); align-items:center; padding:62px 0 70px; }
.welcome-panel { padding-left:clamp(0px,3vw,36px); }
.eyebrow { color:var(--cyan); font-size:.72rem; letter-spacing:.17em; margin:0 0 18px; }
.welcome-panel h1,.dash-top h1 { font-size:clamp(2.65rem,5.4vw,5rem); line-height:1.3; letter-spacing:-.045em; margin:0; }
.welcome-panel h1 span { color:var(--amber); }
.welcome-panel>p { max-width:500px; color:#b3c2d1; line-height:1.9; font-size:1rem; margin:25px 0 32px; }
.route-line { width:min(430px,90%); display:flex; align-items:center; }
.route-line span { height:1px; flex:1; background:linear-gradient(90deg,var(--amber),rgba(255,181,27,.12)); }
.route-line span:last-child { background:linear-gradient(90deg,rgba(61,226,221,.12),var(--cyan)); }
.route-line b { width:11px; height:11px; margin:0 4px; border:2px solid var(--cyan); border-radius:50%; box-shadow:0 0 12px var(--cyan); }
.trust-row { display:flex; gap:34px; margin-top:28px; }
.trust-row span { color:var(--muted); font-size:.78rem; }
.trust-row b { color:white; display:block; font-size:1.2rem; margin-bottom:3px; }
.auth-card { width:100%; max-width:510px; justify-self:end; background:linear-gradient(160deg,rgba(20,43,70,.97),rgba(10,27,47,.98)); border:1px solid rgba(255,255,255,.13); border-radius:24px; box-shadow:0 32px 80px rgba(0,0,0,.35); overflow:hidden; }
.tabs { display:grid; grid-template-columns:1fr 1fr; padding:7px; background:rgba(4,13,25,.45); border-bottom:1px solid var(--line); }
.tab { border:0; color:#8fa1b4; background:transparent; padding:16px 10px 14px; cursor:pointer; border-radius:12px; font-size:.9rem; font-weight:700; }
.tab.active { color:#091827; background:var(--amber); box-shadow:0 8px 22px rgba(255,181,27,.18); }
.form-panel { padding:34px 38px 30px; }
.form-heading { margin-bottom:25px; }
.form-heading h2 { margin:0 0 6px; font-size:1.7rem; }
.form-heading p,.dash-top p,.call-card p { color:var(--muted); margin:0; line-height:1.7; }
label { display:block; color:#cdd7e2; font-size:.82rem; font-weight:600; margin-bottom:16px; }
input { display:block; width:100%; margin-top:8px; border:1px solid rgba(255,255,255,.13); border-radius:11px; outline:none; color:white; background:rgba(5,17,31,.66); padding:13px 14px; font-size:.92rem; transition:.2s; }
textarea { display:block; width:100%; min-height:86px; resize:vertical; margin-top:8px; border:1px solid rgba(255,255,255,.13); border-radius:11px; outline:none; color:white; background:rgba(5,17,31,.66); padding:13px 14px; font:inherit; font-size:.92rem; transition:.2s; }
input::placeholder { color:#607388; }
textarea::placeholder { color:#607388; }
input:focus,textarea:focus { border-color:var(--cyan); box-shadow:0 0 0 3px rgba(61,226,221,.12); }
.password-wrap { position:relative; display:block; }
.password-wrap input { padding-right:58px; }
.eye { position:absolute; right:7px; top:15px; border:0; background:transparent; color:var(--cyan); font-size:.74rem; font-weight:700; cursor:pointer; }
.remember { display:flex; align-items:center; gap:9px; cursor:pointer; margin:2px 0 21px; font-size:.78rem; color:#aab9c8; }
.remember input { appearance:none; width:18px; height:18px; margin:0; padding:0; border-radius:5px; }
.remember input:checked { background:var(--amber); border-color:var(--amber); box-shadow:inset 0 0 0 4px var(--panel); }
.primary-btn { width:100%; border:0; border-radius:11px; padding:14px 18px; background:var(--amber); color:#0a1725; font-weight:800; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:10px; box-shadow:0 12px 28px rgba(255,181,27,.2); }
.primary-btn:hover { transform:translateY(-1px); filter:brightness(1.05); }
.primary-btn:disabled { opacity:.6; cursor:wait; }
.primary-btn span { font-family:system-ui; font-size:1.25rem; }
.switch-copy { text-align:center; color:var(--muted); font-size:.78rem; margin:21px 0 0; }
.switch-copy button { color:var(--cyan); border:0; background:none; font-weight:700; cursor:pointer; }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.form-section { color:var(--amber); font-size:.75rem; font-weight:800; letter-spacing:.04em; margin:26px 0 13px; padding-bottom:9px; border-bottom:1px solid rgba(255,181,27,.18); }
.form-heading + .form-section { margin-top:0; }
.file-field>input { position:absolute; opacity:0; pointer-events:none; width:1px; height:1px; }
.file-field>span { display:flex; min-height:82px; margin-top:8px; align-items:center; justify-content:center; flex-direction:column; gap:5px; border:1px dashed rgba(61,226,221,.35); border-radius:11px; color:var(--cyan); background:rgba(5,17,31,.46); cursor:pointer; text-align:center; padding:10px; }
.file-field>span:hover { border-color:var(--cyan); background:rgba(61,226,221,.06); }
.file-field b { font-family:system-ui; font-size:1.25rem; }
.file-field em { max-width:100%; overflow:hidden; text-overflow:ellipsis; font-style:normal; font-size:.72rem; color:#93a6ba; white-space:nowrap; }
.face-camera{padding:18px;border:1px solid rgba(61,226,221,.35);border-radius:14px;background:rgba(5,17,31,.46)}.face-camera h3{margin:0 0 7px;font-size:1rem}.face-camera p{line-height:1.8}.face-camera video,.face-camera img{display:block;width:min(100%,420px);max-height:420px;margin:14px auto;object-fit:cover;border:2px solid var(--cyan);border-radius:14px;background:#050d18;transform:none}.face-camera video{transform:scaleX(-1)}.camera-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.face-camera .message{text-align:center}
.privacy-note { margin:-4px 0 0; color:#7f94a9; font-size:.69rem; line-height:1.65; }
.registration-notice { color:#cbdce9; font-size:.875rem; line-height:1.9; padding:14px; border-left:3px solid var(--amber); background:rgba(255,181,27,.06); }
.admin-entry-link { color:var(--cyan); text-decoration:none; display:inline-block; }
.message { min-height:20px; margin-top:11px; color:var(--danger); font-size:.77rem; text-align:center; line-height:1.55; }
.message.success { color:#65e6a0; }
.hidden { display:none!important; }
.sync-status { align-self:flex-end; margin:12px 0 0; padding:7px 12px; border:1px solid #a88043; border-radius:9px; color:#ffd166; background:#211f20; font-size:.875rem; line-height:1.8; }
.sync-status[data-state=live] { color:#9ce7cb; border-color:#367e68; background:#102d29; }
.sync-status[data-state=offline] { color:#ffb6ac; border-color:#9e625d; background:#321f25; }
@media print { .sync-status { display:none!important; } }
footer { min-height:92px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:25px; color:#90a2b5; }
footer small { font-size:.6rem; color:#667b90; }
footer p { font-size:.76rem; margin:5px 0 0; }
.footer-contact { text-align:right; }
.dashboard { flex:1; padding:60px 0; }
.dash-top { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:36px; }
.dash-top h1 { font-size:clamp(2rem,4vw,3.5rem); margin-bottom:6px; }
.dash-top h1 span { color:var(--amber); }
.ghost-btn { color:#d2dce6; background:transparent; border:1px solid var(--line); border-radius:10px; padding:11px 16px; cursor:pointer; }
.status-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:18px; }
.status-grid article { display:flex; align-items:center; gap:14px; padding:20px; background:rgba(17,38,65,.72); border:1px solid var(--line); border-radius:15px; }
.status-icon { width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:rgba(68,228,143,.12);color:#44e48f; }
.status-icon.amber { background:rgba(255,181,27,.13);color:var(--amber);font-weight:800; }
.status-icon.cyan { background:rgba(61,226,221,.12);color:var(--cyan);font-weight:800; }
.status-grid small { display:block; color:#73879c; font-size:.58rem; margin-bottom:4px; }
.status-grid strong { font-size:.93rem; }
.booking-card { margin:18px 0; padding:32px; background:linear-gradient(150deg,rgba(16,38,65,.96),rgba(8,25,45,.98)); border:1px solid rgba(61,226,221,.18); border-radius:20px; }
.international-standard{margin:26px 0 20px;padding:22px;border:1px solid rgba(61,226,221,.3);border-radius:16px;background:rgba(61,226,221,.04)}.international-standard .booking-heading{margin-bottom:20px}.standard-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:760px){.international-standard{padding:16px}.standard-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.feedback-card{border-color:rgba(255,181,27,.3)}.feedback-card .primary-btn{max-width:360px}.feedback-categories{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:760px){.feedback-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-card{padding:22px}.feedback-card .primary-btn{max-width:none}}
.booking-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:26px; }
.booking-heading h2 { margin:4px 0 7px; font-size:1.65rem; }
.booking-heading p { color:var(--muted); margin:0; }
.live-badge { display:flex; align-items:center; gap:7px; color:#79e8ad; border:1px solid rgba(68,228,143,.25); background:rgba(68,228,143,.07); border-radius:999px; padding:8px 11px; font-family:system-ui,sans-serif; font-size:.58rem; font-weight:800; letter-spacing:.1em; white-space:nowrap; }
.live-badge i { width:6px; height:6px; border-radius:50%; background:#44e48f; box-shadow:0 0 9px #44e48f; }
.choice-section { min-width:0; margin:0 0 23px; padding:0; border:0; }
.choice-section legend { color:#cdd7e2; font-size:.82rem; font-weight:700; margin-bottom:10px; }
.passenger-types { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.choice-card { display:flex; align-items:center; gap:13px; min-height:82px; margin:0; padding:15px; border:1px solid var(--line); border-radius:13px; background:rgba(4,17,31,.52); cursor:pointer; transition:.2s; }
.choice-card input,.chip-grid input { position:absolute; opacity:0; pointer-events:none; }
.choice-card .choice-icon { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:10px; color:var(--amber); background:rgba(255,181,27,.11); font-family:system-ui; }
.choice-card.vip .choice-icon { color:var(--cyan); background:rgba(61,226,221,.1); }
.choice-card.commercial .choice-icon { color:#a9a3ff; background:rgba(169,163,255,.1); }
.choice-card b,.choice-card small { display:block; }
.choice-card small { color:#7f93a7; font-weight:500; margin-top:4px; line-height:1.5; }
.trip-fields { margin-bottom:4px; }
.location-field>label { margin-bottom:8px; }
.location-actions { display:flex; flex-wrap:wrap; gap:7px; margin:-2px 0 17px; }
.location-actions button { padding:7px 10px; color:var(--cyan); border:1px solid rgba(61,226,221,.22); border-radius:8px; background:rgba(61,226,221,.06); cursor:pointer; font-size:.68rem; font-weight:700; }
.location-actions button:hover { border-color:var(--cyan); }
.auto-location { display:flex; align-items:flex-start; gap:8px; margin:-7px 0 5px; color:#9fb2c4; font-size:.69rem; line-height:1.5; cursor:pointer; }
.auto-location input { width:16px; height:16px; flex:0 0 16px; margin:1px 0 0; accent-color:var(--cyan); }
.location-status { display:block; margin:0 0 17px; color:var(--cyan); font-size:.66rem; line-height:1.5; }
.add-stop-toggle { display:inline-flex; align-items:center; gap:9px; margin:2px 0 20px; color:#a9a3ff; cursor:pointer; }
.add-stop-toggle input { width:18px; height:18px; margin:0; accent-color:#a9a3ff; }
.additional-stop { margin:0 0 24px; padding:20px; border:1px solid rgba(169,163,255,.2); border-radius:14px; background:rgba(169,163,255,.04); }
.wait-section { margin-top:6px; }
.wait-grid { grid-template-columns:repeat(3,1fr); }
.map-modal { position:fixed; inset:0; z-index:50; display:grid; place-items:center; padding:20px; background:rgba(2,9,18,.78); backdrop-filter:blur(8px); }
.map-dialog { width:min(720px,100%); padding:24px; border:1px solid rgba(61,226,221,.25); border-radius:20px; background:#0d2038; box-shadow:0 30px 90px rgba(0,0,0,.55); }
.map-dialog-head { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:16px; }
.map-dialog-head small { color:var(--cyan); font:800 .6rem system-ui,sans-serif; letter-spacing:.15em; }
.map-dialog-head h2 { margin:4px 0 0; }
.map-dialog-head button { width:36px; height:36px; color:#b9c6d3; border:1px solid var(--line); border-radius:10px; background:transparent; cursor:pointer; font-size:1.3rem; }
.map-search { display:grid; grid-template-columns:1fr auto; gap:8px; margin-bottom:12px; }
.map-search input { margin:0; }
.map-search button { padding:0 18px; color:#071827; border:0; border-radius:10px; background:var(--cyan); font-weight:800; cursor:pointer; }
.map-dialog iframe { width:100%; height:360px; border:0; border-radius:13px; background:#071522; }
.map-help { color:#8ca0b4; font-size:.72rem; line-height:1.6; }
.map-dialog .primary-btn { max-width:300px; margin-left:auto; }
.live-tracking { margin:22px 0; padding:24px; border:1px solid rgba(61,226,221,.22); border-radius:18px; background:linear-gradient(145deg,rgba(13,32,56,.98),rgba(7,21,34,.98)); box-shadow:0 18px 55px rgba(0,0,0,.22); }
.tracking-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:17px; }
.tracking-head h2 { margin:4px 0 0; font-size:1.15rem; }
.tracking-badge { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; color:#80f7be; border:1px solid rgba(128,247,190,.25); border-radius:999px; background:rgba(128,247,190,.08); font:800 .66rem system-ui,sans-serif; letter-spacing:.08em; }
.tracking-badge i { width:8px; height:8px; border-radius:50%; background:#45e39b; box-shadow:0 0 0 5px rgba(69,227,155,.12); animation:trackingPulse 1.7s infinite; }
@keyframes trackingPulse { 50% { box-shadow:0 0 0 9px rgba(69,227,155,0); } }
.tracking-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(250px,.75fr); gap:16px; }
.tracking-layout iframe { width:100%; min-height:330px; border:0; border-radius:13px; background:#071522; }
.tracking-details { display:flex; flex-direction:column; gap:10px; }
.tracking-person { display:flex; align-items:center; gap:11px; padding:12px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); }
.tracking-person>span { width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:50%; color:#071827; background:var(--cyan); font-weight:900; }
.tracking-person.driver>span { background:var(--amber); }
.tracking-person small,.tracking-person b { display:block; }
.tracking-person small { margin-bottom:3px; color:#8196aa; font-size:.67rem; }
.tracking-person b { color:#e9f1f7; font-size:.75rem; line-height:1.45; }
.tracking-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.tracking-stats>div { padding:12px; border-radius:11px; background:rgba(61,226,221,.06); }
.tracking-stats small,.tracking-stats strong { display:block; }
.tracking-stats small { color:#8196aa; font-size:.65rem; }
.tracking-stats strong { margin-top:5px; color:var(--cyan); font-size:1rem; }
.tracking-mode { margin:3px 0 0; padding:10px 11px; color:#d7e2eb; border-left:3px solid var(--amber); background:rgba(255,181,27,.07); font-size:.7rem; line-height:1.55; }
.tracking-updated { color:#71879a; font-size:.65rem; }
.standard-alert { display:flex; gap:14px; margin:6px 0 24px; padding:17px 18px; color:#d9e3ec; background:rgba(255,181,27,.08); border:1px solid rgba(255,181,27,.25); border-radius:13px; }
.standard-alert>span { width:30px; height:30px; flex:0 0 30px; display:grid; place-items:center; border-radius:50%; color:#0a1828; background:var(--amber); font-weight:900; }
.standard-alert b { font-size:.82rem; }
.standard-alert p { margin:6px 0; color:#c0ccd8; line-height:1.65; font-size:.78rem; }
.standard-alert small { color:var(--amber); font-size:.69rem; line-height:1.55; }
.vip-options { margin:5px 0 21px; padding:22px; border:1px solid rgba(61,226,221,.18); border-radius:14px; background:rgba(61,226,221,.035); }
.choice-section.compact { margin-bottom:19px; }
.chip-grid { display:grid; gap:8px; }
.duration-grid { grid-template-columns:repeat(4,1fr); }
.quality-grid { grid-template-columns:repeat(4,1fr); }
.fuel-grid { grid-template-columns:repeat(5,1fr); }
.license-grid { grid-template-columns:repeat(3,1fr); }
.vehicle-grid { grid-template-columns:repeat(5,1fr); }
.commercial-options { margin:5px 0 21px; padding:22px; border:1px solid rgba(169,163,255,.2); border-radius:14px; background:rgba(169,163,255,.04); }
.commercial-heading { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.commercial-heading>span { width:38px; height:38px; display:grid; place-items:center; border-radius:10px; color:#a9a3ff; background:rgba(169,163,255,.11); }
.commercial-heading b,.commercial-heading small { display:block; }
.commercial-heading small { color:#8296aa; margin-top:3px; }
.commercial-grid { grid-template-columns:repeat(3,1fr); }
.license-color-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.license-color { margin:0; cursor:pointer; }
.license-color input { position:absolute; opacity:0; pointer-events:none; }
.license-color>span { display:flex; align-items:center; gap:12px; min-height:62px; padding:12px 15px; border:1px solid var(--line); border-radius:11px; background:rgba(4,17,31,.52); }
.license-color i { width:26px; height:26px; flex:0 0 26px; border-radius:8px; }
.license-color.red i { background:#e5484d; box-shadow:0 0 15px rgba(229,72,77,.25); }
.license-color.black i { background:#05070a; border:1px solid #4d5967; }
.license-color b,.license-color small { display:block; }
.license-color small { color:#7f93a7; margin-left:auto; }
.license-color input:checked+span { border-color:#a9a3ff; box-shadow:inset 0 0 0 1px rgba(169,163,255,.18); background:rgba(169,163,255,.07); }
.commercial-fuel-grid { grid-template-columns:repeat(4,1fr); }
.commercial-duration-grid { grid-template-columns:repeat(4,1fr); }
.commercial-entry { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; margin-bottom:18px; padding:20px 22px; color:white; text-decoration:none; border:1px solid rgba(169,163,255,.25); border-radius:17px; background:linear-gradient(120deg,rgba(169,163,255,.11),rgba(17,38,65,.76)); transition:.2s; }
.commercial-entry:hover { transform:translateY(-2px); border-color:#a9a3ff; }
.commercial-entry-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:12px; color:#0b1730; background:#a9a3ff; font-size:1.25rem; }
.commercial-entry small,.commercial-entry b,.commercial-entry em { display:block; }
.commercial-entry small { color:#a9a3ff; font-family:system-ui,sans-serif; font-size:.58rem; font-weight:800; letter-spacing:.12em; }
.commercial-entry b { margin:4px 0; font-size:1rem; }
.commercial-entry em { color:#8296aa; font-size:.72rem; font-style:normal; }
.commercial-entry>strong { color:#a9a3ff; font:700 1.45rem system-ui,sans-serif; }
.commercial-page { width:min(920px,calc(100% - 40px)); }
.commercial-main { flex:1; padding:48px 0 64px; }
.commercial-hero { display:flex; justify-content:space-between; gap:25px; align-items:flex-end; margin-bottom:26px; }
.commercial-hero h1 { margin:5px 0 8px; font-size:clamp(2rem,4.5vw,3.7rem); line-height:1.3; }
.commercial-hero h1 span { color:#a9a3ff; }
.commercial-hero p { margin:0; color:var(--muted); }
.back-link { display:inline-block; color:#cbd6e1; text-decoration:none; border:1px solid var(--line); border-radius:10px; padding:10px 14px; white-space:nowrap; }
.commercial-form { margin:0; border-color:rgba(169,163,255,.25); }
.commercial-form .booking-heading { margin-bottom:22px; }
.commercial-form .primary-btn { background:#a9a3ff; }
.commercial-result { margin-top:18px; }
.chip-grid label { margin:0; cursor:pointer; }
.chip-grid span { display:grid; place-items:center; min-height:43px; padding:8px; color:#aebdcc; border:1px solid var(--line); border-radius:9px; background:rgba(4,17,31,.52); text-align:center; font-size:.75rem; }
.chip-grid input:checked+span { color:#071827; border-color:var(--cyan); background:var(--cyan); font-weight:800; }
.admin-link-note { color:#7e93a8; font-size:.69rem; line-height:1.65; margin:10px 0 0; }
.booking-submit { max-width:360px; margin-left:auto; }
.latest-booking { display:grid; grid-template-columns:auto 1fr auto; gap:16px; align-items:center; margin:0 0 18px; padding:20px 22px; border:1px solid rgba(68,228,143,.25); border-radius:15px; background:rgba(68,228,143,.055); }
.booking-status-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#061c13; background:#44e48f; font-weight:900; }
.booking-result-main small { color:#70dca1; }
.booking-result-main h3 { margin:3px 0 6px; font-size:1rem; }
.booking-result-main p { margin:0; color:#90a4b7; font-size:.73rem; line-height:1.6; }
.booking-meta { text-align:right; }
.booking-meta span { display:block; color:var(--amber); font-size:.75rem; font-weight:800; }
.booking-meta small,.booking-meta time { display:block; color:#8397aa; font-size:.65rem; margin-top:5px; }
.call-card { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; padding:34px; background:linear-gradient(135deg,#142f50,#0c213c); border:1px solid rgba(255,181,27,.25); border-radius:20px; }
.call-card h2 { font-size:1.7rem; margin:5px 0 7px; }
.call-actions { display:grid; gap:11px; }
.call-btn { display:flex; gap:14px; align-items:center; text-decoration:none; color:#0b1826; padding:15px 18px; border-radius:13px; transition:.2s; }
.call-btn:hover { transform:translateX(3px); }
.call-btn>span { font-family:system-ui; width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:rgba(8,21,40,.15);font-size:1.1rem; }
.call-btn small { display:block; font-size:.56rem; opacity:.65; margin-bottom:3px; }
.call-btn b { font-size:.88rem; }
.call-btn.sip { background:var(--cyan); }
.call-btn.mobile { background:var(--amber); }
.account-note { display:flex; align-items:center; gap:13px; margin-top:18px; padding:18px 22px; border:1px solid var(--line); border-radius:14px; background:rgba(8,22,40,.56); }
.account-note>span { color:#44e48f; }
.account-note p { margin:0; color:#d8e0e9; }
.account-note small { color:var(--muted); }
.toast { position:fixed; left:50%; bottom:24px; transform:translate(-50%,20px); padding:12px 18px; border-radius:10px; color:#092019; background:#6ce5a2; box-shadow:0 15px 40px rgba(0,0,0,.35); opacity:0; pointer-events:none; transition:.25s; z-index:10; font-size:.85rem; }
.toast.show { opacity:1; transform:translate(-50%,0); }
@media (max-width:820px) {
  .app-shell { width:min(100% - 28px,620px); }
  .brand-bar { height:82px; }
  .auth-layout { grid-template-columns:1fr; gap:34px; padding:38px 0 48px; }
  .welcome-panel { text-align:center; padding:0; }
  .welcome-panel h1 { font-size:2.6rem; }
  .welcome-panel>p { margin:18px auto 24px; }
  .route-line { margin:auto; }
  .trust-row { justify-content:center; }
  .auth-card { justify-self:center; }
  .status-grid,.call-card { grid-template-columns:1fr; }
  .duration-grid { grid-template-columns:repeat(3,1fr); }
  .wait-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:520px) {
  .brand small,.server-pill { display:none; }
  .welcome-panel h1 { font-size:2.15rem; }
  .trust-row { gap:16px; }
  .form-panel { padding:28px 20px 24px; }
  .two-col { grid-template-columns:1fr; gap:0; }
  .dash-top { gap:20px; }
  .ghost-btn { padding:9px 11px; font-size:.72rem; white-space:nowrap; }
  .dashboard { padding:38px 0; }
  .call-card { padding:24px 19px; }
  .booking-card { padding:24px 18px; }
  .booking-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .passenger-types,.quality-grid { grid-template-columns:1fr; }
  .fuel-grid { grid-template-columns:repeat(2,1fr); }
  .license-grid { grid-template-columns:1fr; }
  .vehicle-grid { grid-template-columns:repeat(2,1fr); }
  .commercial-grid { grid-template-columns:repeat(2,1fr); }
  .license-color-grid { grid-template-columns:1fr; }
  .commercial-fuel-grid { grid-template-columns:repeat(2,1fr); }
  .commercial-duration-grid { grid-template-columns:repeat(2,1fr); }
  .commercial-entry { padding:17px; }
  .commercial-hero { align-items:flex-start; flex-direction:column; }
  .duration-grid { grid-template-columns:repeat(2,1fr); }
  .vip-options { padding:17px 13px; }
  .booking-submit { max-width:none; }
  .latest-booking { grid-template-columns:auto 1fr; }
  .booking-meta { grid-column:2; text-align:left; }
  .map-dialog { padding:18px; }
  .map-dialog iframe { height:300px; }
  .live-tracking { padding:18px 14px; }
  .tracking-layout { grid-template-columns:1fr; }
  .tracking-layout iframe { min-height:280px; }
  footer { align-items:flex-start; padding:22px 0; flex-direction:column; gap:12px; }
  .footer-contact { text-align:left; }
}
.otp-panel { margin:20px 0; padding:18px; background:#11253a; border:1px solid #365777; border-radius:14px; }
.otp-panel p,.otp-panel small { display:block; font-size:14px; line-height:1.9; color:#bed0e5; }
.otp-panel input { letter-spacing:.15em; }
.otp-panel button { margin:8px 0 16px; }
.settings-entry { display:inline-block; margin:12px 0; text-decoration:none; }
