:root{--navy:#071827;--cyan:#16c7e8;--ink:#142332;--muted:#6d7b88;--line:#dfe7ec;--bg:#f5f8fa;--white:#fff;--good:#0c8a62;--warn:#a56a00;--bad:#b42318}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}header{height:72px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 34px}.brand{font-size:24px;font-weight:800;letter-spacing:1px}.brand span{color:var(--cyan)}.tag{font-size:12px;letter-spacing:1.4px;color:#a9bac8}main{max-width:1180px;margin:34px auto;padding:0 20px}h1{font-size:30px;margin:0 0 20px}h2{font-size:20px;margin:0 0 14px}h3{font-size:16px;margin:0 0 10px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;margin:16px 0;box-shadow:0 2px 8px #0718270a}.login{max-width:430px;margin:80px auto}.muted,.small{color:var(--muted)}.small{font-size:12px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:700;margin:0 0 6px}input,select,textarea{width:100%;padding:11px;border:1px solid #cfd9df;border-radius:8px;background:white;font:inherit}textarea{min-height:84px;resize:vertical}button{border:0;background:var(--navy);color:white;padding:10px 15px;border-radius:8px;font-weight:700;cursor:pointer}button.secondary{background:#eaf0f4;color:var(--ink)}button.cyan{background:var(--cyan);color:var(--navy)}button.danger{background:#fff0ee;color:var(--bad);border:1px solid #f3c3bd}.nav{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 20px}.row{display:flex;justify-content:space-between;gap:12px;align-items:center}.pill{font-size:11px;padding:5px 8px;border-radius:99px;background:#edf3f6}.statgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.stat b{font-size:24px}.booking{padding:15px 0;border-top:1px solid var(--line)}.booking:first-child{border-top:0}.money{font-variant-numeric:tabular-nums}.good{color:var(--good)}.warn{color:var(--warn)}.bad{color:var(--bad)}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:11px;text-transform:uppercase;color:var(--muted)}.right{text-align:right}.notice{padding:12px;border-radius:9px;background:#eef8fb;border:1px solid #c8edf5}.success{padding:12px;border-radius:9px;background:#ecf9f4;color:#075f47}.error{padding:12px;border-radius:9px;background:#fff0ee;color:#8d1d14}.two{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}@media(max-width:800px){.grid,.two,.statgrid{grid-template-columns:1fr}.tag{display:none}header{padding:0 18px}}

/* V11 supplier response + booking form polish */
.passenger-row{display:grid;grid-template-columns:110px 1fr 1fr;gap:12px;align-items:end;padding:12px 0;border-top:1px solid var(--line)}.passenger-row:first-child{border-top:0}.passenger-number{font-size:12px;font-weight:800;padding-bottom:12px}.response-wrap{max-width:600px;margin:70px auto}.response-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px;box-shadow:0 8px 30px #07182712;text-align:center}.response-card h1{margin:10px 0 14px}.response-card form{text-align:left;margin-top:24px}.response-kicker{font-size:12px;font-weight:800;letter-spacing:1.2px;color:var(--muted)}.response-icon{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;background:#ecf9f4;color:var(--good);font-size:28px;font-weight:800}.response-icon.error-icon{background:#fff0ee;color:var(--bad)}.response-close{color:var(--muted);font-size:13px;margin-top:26px}.response-actions{display:flex;gap:10px;margin-top:16px}.response-actions button{flex:1}.response-spinner{width:42px;height:42px;border:4px solid #dfe7ec;border-top-color:var(--cyan);border-radius:50%;margin:0 auto 22px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:800px){.passenger-row{grid-template-columns:1fr}.passenger-number{padding:8px 0 0}.response-wrap{margin:30px auto}.response-card{padding:24px}.response-actions{flex-direction:column}}


/* V11 client dashboard */
.client-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:8px}.client-hero h1{margin:4px 0 6px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--muted)}.hero-action{padding:13px 20px;font-size:14px}.dashboard-heading{align-items:flex-start}.dashboard-heading h2{margin-bottom:4px}.booking-tabs{display:flex;gap:6px;background:#eef3f6;padding:4px;border-radius:10px}.booking-tabs .tab{background:transparent;color:var(--muted);padding:8px 11px}.booking-tabs .tab.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px #07182712}.client-table td{vertical-align:middle}.client-table td:nth-child(3){white-space:normal;min-width:210px}.empty-state{text-align:center;padding:46px 20px}.empty-state p{margin:8px 0 18px}.booking-success{margin-top:18px}.success-actions{display:flex;gap:8px;margin-top:14px}.pill.status-provider_confirmed,.pill.status-agent_confirmed{background:#e6f7f2;color:#087253}.pill.status-awaiting_provider,.pill.status-new{background:#fff5db;color:#8b5d00}.pill.status-cancelled{background:#fff0ee;color:#8d1d14}@media(max-width:800px){.client-hero,.dashboard-heading{align-items:stretch;flex-direction:column}.hero-action{width:100%}.booking-tabs{width:100%}.booking-tabs .tab{flex:1}.success-actions{flex-direction:column}}

/* V12 client booking detail + urgent provider handling */
.click-row{cursor:pointer}.click-row:hover td{background:#f8fbfc}.urgency-text{margin-top:5px;color:var(--warn);font-weight:700}.urgent-call{background:#fff7e6;border:1px solid #efc56f;border-left:5px solid #d38b00;border-radius:12px;padding:20px 22px;margin:16px 0}.urgent-title{font-size:18px;font-weight:800;color:#7a4c00}.urgent-call p{margin:9px 0}.provider-contact{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff;border:1px solid #efd8a9;border-radius:9px;padding:13px 15px;margin:14px 0}.provider-contact a,.provider-phone{font-weight:800;color:#075f73;text-decoration:none}.provider-confirmed{background:#ecf9f4;border:1px solid #bde6d7;border-radius:12px;padding:20px 22px;margin:16px 0}.provider-confirmed h3{font-size:20px;margin:5px 0}.detail-top h1{margin:4px 0}.detail-grid{align-items:start}.journey-route{display:grid;grid-template-columns:1fr 35px 1fr;gap:10px;align-items:center;background:#f7fafb;border:1px solid var(--line);border-radius:11px;padding:16px;margin:18px 0}.journey-route span,.detail-pairs span{display:block;font-size:10px;font-weight:800;letter-spacing:1px;color:var(--muted);margin-bottom:4px}.route-arrow{text-align:center;font-size:20px;color:var(--cyan)}.detail-pairs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-pairs>div{padding:12px 0;border-bottom:1px solid var(--line)}.detail-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.detail-section p{white-space:pre-line}.detail-line{display:flex;justify-content:space-between;gap:18px;padding:9px 0;border-bottom:1px solid var(--line)}.detail-line:last-child{border-bottom:0}.detail-line span{color:var(--muted)}.full-button{width:100%}@media(max-width:800px){.provider-contact{align-items:flex-start;flex-direction:column}.journey-route{grid-template-columns:1fr}.route-arrow{text-align:left;transform:rotate(90deg);width:20px}.detail-pairs{grid-template-columns:1fr}.detail-line{align-items:flex-start;flex-direction:column;gap:3px}}

/* V13 cancellation workflow */
.pill.status-cancellation_requested{background:#fff5db;color:#8b5d00}.pill.status-cancellation_query{background:#fff0ee;color:#8d1d14}.cancellation-card{max-width:760px;margin:18px auto}.cancel-confirm{display:flex;gap:10px;align-items:flex-start;margin:16px 0}.cancel-confirm input{width:auto;margin-top:3px}.cancel-confirm label{font-weight:600;font-size:13px}.card hr{border:0;border-top:1px solid var(--line);margin:18px 0}
