:root{--a2zff-orange:#14b8a6;--a2zff-orange-dark:#087f78;--a2zff-navy:#071a2b;--a2zff-ink:#172027;--a2zff-muted:#687680;--a2zff-soft:#f3f6f8;--a2zff-line:#dfe6ea;--a2zff-white:#fff;--a2zff-shadow:0 18px 45px rgba(23,36,46,.09)}
.portal-form{display:grid;gap:1rem}
.portal-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:760px;background:var(--a2zff-soft);border:1px solid var(--a2zff-line);border-radius:24px;overflow:hidden;box-shadow:var(--a2zff-shadow)}
.portal-nav{display:flex;flex-direction:column;min-width:0;padding:1.4rem 1rem;background:linear-gradient(180deg,#071a2b 0%,#04111c 100%);color:#fff}
.portal-brand{display:flex;align-items:center;gap:.75rem;margin:.1rem .45rem 1.8rem;color:#fff;text-decoration:none}.portal-brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#22d3ee,var(--a2zff-orange));color:#151515;font-size:.9rem;font-weight:950;box-shadow:0 8px 22px rgba(20,184,166,.25)}.portal-brand>span:last-child{display:grid;line-height:1.1}.portal-brand strong{font-size:1.22rem;letter-spacing:.04em}.portal-brand small{margin-top:.25rem;color:#aebbc3;font-size:.68rem;letter-spacing:.05em}
.portal-nav-label{margin:0 .65rem .5rem;color:#81929d;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-nav nav{display:grid;gap:.22rem}.portal-nav nav a{position:relative;padding:.72rem .85rem .72rem 1rem;border-radius:10px;color:#d7e0e5;font-size:.88rem;font-weight:650;text-decoration:none;transition:.18s ease}.portal-nav nav a:before{content:"";position:absolute;left:0;top:50%;width:3px;height:0;border-radius:5px;background:var(--a2zff-orange);transform:translateY(-50%);transition:.18s ease}.portal-nav nav a:hover{background:rgba(255,255,255,.07);color:#fff;transform:translateX(2px)}.portal-nav nav a.active{background:rgba(20,184,166,.15);color:#fff}.portal-nav nav a.active:before{height:22px}
.portal-sidebar-footer{display:grid;gap:.4rem;margin-top:auto;padding:1.1rem .65rem .2rem;border-top:1px solid rgba(255,255,255,.09);font-size:.72rem}.portal-sidebar-footer span{color:#82939e;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-sidebar-footer a{overflow-wrap:anywhere;color:#dbe4e9;text-decoration:none}.portal-sidebar-footer .portal-logout{margin-top:.7rem;padding:.62rem .75rem;border:1px solid rgba(255,255,255,.17);border-radius:9px;text-align:center;font-weight:800}.portal-sidebar-footer .portal-logout:hover{border-color:var(--a2zff-orange);color:#fff}
.portal-main{min-width:0}.portal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:78px;padding:1rem 1.65rem;background:#fff;border-bottom:1px solid var(--a2zff-line)}.portal-toolbar>div:first-child{display:grid}.portal-toolbar-eyebrow{color:var(--a2zff-muted);font-size:.67rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.portal-toolbar>div:first-child strong{color:var(--a2zff-ink);font-size:1.05rem}.portal-user{display:flex;align-items:center;gap:.65rem}.portal-user>span:last-child{display:grid;line-height:1.2}.portal-user small{color:var(--a2zff-muted);font-size:.68rem}.portal-user strong{font-size:.84rem}.portal-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e8fbf8;color:var(--a2zff-orange-dark);font-weight:900}
.portal-main>section{margin:1.5rem}.portal-dashboard{padding:.1rem}.portal-page-heading,.portal-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.portal-page-heading h1,.portal-panel h2{margin:.2rem 0 .35rem;color:var(--a2zff-ink);font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.15}.portal-page-heading p,.portal-section-heading p,.portal-panel>p{margin:0;color:var(--a2zff-muted)}.portal-kicker{color:var(--a2zff-orange-dark);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.portal-status-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.42rem .72rem;border:1px solid #cfe8d8;border-radius:999px;background:#eef9f2;color:#19713c;font-size:.72rem;font-weight:800;white-space:nowrap}.portal-status-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:#27a75a;box-shadow:0 0 0 3px rgba(39,167,90,.12)}
.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.metric-grid article,.portal-panel{background:#fff;border:1px solid var(--a2zff-line);border-radius:16px;box-shadow:0 9px 26px rgba(26,39,48,.045)}.metric-grid article{position:relative;display:grid;gap:.28rem;min-height:138px;padding:1.15rem 1.2rem;overflow:hidden}.metric-grid article:after{content:"";position:absolute;right:-28px;bottom:-40px;width:95px;height:95px;border-radius:50%;background:#e8fbf8}.metric-grid article span{position:relative;z-index:1;color:var(--a2zff-muted);font-size:.77rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.metric-grid article strong{position:relative;z-index:1;color:var(--a2zff-ink);font-size:1.72rem;line-height:1.15}.metric-grid article small{position:relative;z-index:1;color:#8b969d;font-size:.72rem}.portal-panel{padding:clamp(1rem,2vw,1.45rem)}.demo-note{margin-top:1rem;padding:.9rem 1rem;border:1px solid #f6d6bb;border-left:4px solid var(--a2zff-orange);border-radius:10px;background:#f0fdfa;color:#725039}.danger-zone{border-color:#efc5c5!important}.danger{background:#b71c1c!important;color:#fff!important}
.portal-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.portal-form-grid label,.report-filters label,.rate-json-editor label,.portal-panel>label{display:grid;gap:.38rem;color:#35434c;font-size:.82rem;font-weight:750}.portal-form-grid input,.portal-form-grid select,.portal-form-grid textarea,.report-filters input,.report-filters select,.rate-json-editor textarea,.portal-panel>label input{width:100%;padding:.72rem .78rem;border:1px solid #cbd5da;border-radius:9px;background:#fff;color:var(--a2zff-ink);font:inherit;transition:.18s}.portal-form-grid input:focus,.portal-form-grid select:focus,.portal-form-grid textarea:focus,.report-filters input:focus,.report-filters select:focus,.rate-json-editor textarea:focus,.portal-panel>label input:focus{border-color:var(--a2zff-orange);outline:3px solid rgba(20,184,166,.13)}.portal-form-grid .wide{grid-column:1/-1}.portal-actions{display:flex;flex-wrap:wrap;gap:.6rem}.portal-actions button,.portal-panel button,.button-like{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.65rem .9rem;border:0;border-radius:9px;background:var(--a2zff-orange);color:#1a1715;font-weight:850;cursor:pointer;transition:.18s}.portal-actions button:hover,.portal-panel button:hover,.button-like:hover{background:#0f9488;transform:translateY(-1px)}.portal-panel button:disabled{opacity:.55;cursor:not-allowed;transform:none}
[data-portal-list]{margin-top:1.15rem;border:1px solid var(--a2zff-line);border-radius:12px;overflow:hidden}.portal-table{display:block;width:100%;overflow:auto;border-collapse:collapse;font-size:.8rem}.portal-table thead{background:#f5f7f8}.portal-table th,.portal-table td{padding:.72rem .76rem;border-bottom:1px solid #e7ecef;text-align:left;vertical-align:middle;white-space:nowrap}.portal-table th{color:#61717c;font-size:.68rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.portal-table tbody tr{transition:.15s}.portal-table tbody tr:hover{background:#f0fdfa}.portal-table tbody tr:last-child td{border-bottom:0}.portal-table td button{margin:.05rem;padding:.4rem .6rem;min-height:32px}.portal-table td select{margin-right:.35rem;padding:.38rem;border:1px solid #ccd5da;border-radius:7px}.demo-badge,.live-badge,.portal-table .status-badge{display:inline-block;padding:.22rem .5rem;border-radius:999px;font-size:.65rem;font-weight:900;text-transform:uppercase}.demo-badge{background:#fff0c2;color:#714d00}.live-badge{background:#d9f6e4;color:#0a5d2a}.portal-table .status-badge{background:#eef2f4;color:#3c4a53}.portal-table .status-confirmed,.portal-table .status-delivered{background:#dff5e7;color:#126234}.portal-table .status-pending,.portal-table .status-for_booking{background:#fff0df;color:#9c4d09}.portal-table .status-cancelled{background:#fbe4e4;color:#971f1f}
.rate-json-editor{display:grid;gap:.7rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--a2zff-line)}.report-filters{display:flex;flex-wrap:wrap;align-items:end;gap:.7rem;margin-top:1rem}.report-output{margin-top:1.2rem}.report-signatures{display:flex;justify-content:space-between;gap:1rem;margin-top:2.5rem}.warning{padding:.8rem;border-left:4px solid #e5a100;background:#fff3cd}.empty-state{margin:0;padding:2.5rem;text-align:center;color:var(--a2zff-muted)}
.fleet-settings-panel{border-top:4px solid var(--a2zff-orange)}.fleet-form{display:grid;gap:1rem;margin-top:1rem;padding:1rem;border:1px solid #e0e7ea;border-radius:13px;background:#f8fafb}.fleet-directory{margin-top:1rem;border:1px solid var(--a2zff-line);border-radius:12px;overflow:hidden}.fleet-directory .portal-table{margin:0}.fleet-table td:nth-child(3){font-weight:850;letter-spacing:.035em}.fleet-table td:nth-child(4){color:var(--a2zff-orange-dark);font-weight:800}
.personnel-settings-panel{border-top:4px solid #243b4a}.personnel-form{margin-top:1rem;padding:1rem;border:1px solid #dfe6ea;border-radius:13px;background:#f8fafb}.personnel-role-note{padding:.8rem .9rem;border-left:4px solid var(--a2zff-orange);border-radius:8px;background:#effdfb;color:#604a3b;font-size:.78rem;line-height:1.5}.personnel-directory{margin-top:1rem;border:1px solid var(--a2zff-line);border-radius:12px;overflow:hidden}.personnel-directory .portal-table{margin:0}.personnel-table td:nth-child(2){font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#455761}.personnel-table td:nth-child(4){color:var(--a2zff-orange-dark);font-weight:850}.personnel-form input[readonly]{background:#eef2f4;color:#6d7980;cursor:not-allowed}
.quote-calculation-method small{color:var(--a2zff-muted);font-size:.7rem;line-height:1.4}.quote-calculation-method small.is-automatic{color:#285d91}.quote-calculation-method small.is-manual{color:#9a4a12}.quote-mode-preview{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem;padding:.72rem .9rem;border-radius:9px;font-size:.76rem}.quote-mode-preview.is-automatic{border:1px solid #cde0f5;background:#eef6ff;color:#285d91}.quote-mode-preview.is-manual{border:1px solid #f0cfb8;background:#effdfb;color:#91430f}
.booking-detail-section [data-booking-driver-select]{border-color:#e6a06d;background:#fffaf6}
.portal-login{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);min-height:620px;border:1px solid var(--a2zff-line);border-radius:24px;background:#fff;box-shadow:var(--a2zff-shadow);overflow:hidden}.portal-login-visual{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4.2rem);background:linear-gradient(135deg,rgba(16,29,38,.96),rgba(28,44,55,.94)),linear-gradient(45deg,#071a2b,#14b8a6);color:#fff;overflow:hidden}.portal-login-visual:after{content:"";position:absolute;right:-120px;bottom:-140px;width:380px;height:380px;border:80px solid rgba(20,184,166,.12);border-radius:50%}.portal-login-mark{position:relative;z-index:1;display:grid;place-items:center;width:58px;height:58px;margin-bottom:2rem;border-radius:16px;background:var(--a2zff-orange);color:#171717;font-size:1.05rem;font-weight:950}.portal-login-visual .portal-kicker{position:relative;z-index:1;color:#67e8f9}.portal-login-visual h1{position:relative;z-index:1;max-width:570px;margin:.55rem 0 1rem;font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.02;letter-spacing:-.035em}.portal-login-visual>p{position:relative;z-index:1;max-width:580px;color:#cdd7dd;font-size:1rem}.portal-login-trust{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2rem}.portal-login-trust span{padding:.43rem .65rem;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.06);color:#e4ebef;font-size:.72rem;font-weight:750}
.portal-login-card{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,4rem)}.portal-login-card h2{margin:.35rem 0 .4rem;color:var(--a2zff-ink);font-size:1.75rem}.portal-login-card>p{margin:0 0 1.5rem;color:var(--a2zff-muted)}.portal-login-card #loginform{display:grid;gap:.95rem;margin:0}.portal-login-card #loginform p{display:grid;gap:.4rem;margin:0}.portal-login-card #loginform label{color:#35434c;font-size:.82rem;font-weight:800}.portal-login-card #loginform input[type=text],.portal-login-card #loginform input[type=password]{width:100%;padding:.82rem;border:1px solid #c8d2d8;border-radius:10px;background:#fbfcfd;font:inherit}.portal-login-card #loginform input:focus{border-color:var(--a2zff-orange);outline:3px solid rgba(20,184,166,.14)}.portal-login-card .login-remember label{display:flex!important;align-items:center;gap:.5rem;font-weight:600!important}.portal-login-card #wp-submit{width:100%;padding:.82rem;border:0;border-radius:10px;background:var(--a2zff-orange);font:inherit;font-weight:900;cursor:pointer}.portal-login-card #wp-submit:hover{background:#0f9488}.portal-forgot{margin-top:.8rem;color:var(--a2zff-orange-dark);font-size:.83rem;font-weight:750;text-decoration:none}.portal-login-help{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--a2zff-line);color:var(--a2zff-muted);font-size:.76rem}.portal-login-help a{color:var(--a2zff-ink);overflow-wrap:anywhere}
@media(max-width:1000px){.portal-shell{grid-template-columns:210px 1fr}.portal-form-grid{grid-template-columns:1fr 1fr}.portal-login{grid-template-columns:1fr}.portal-login-visual{min-height:300px}.portal-login-card{padding:2rem}}
@media(max-width:760px){.portal-shell{grid-template-columns:1fr;border-radius:16px}.portal-nav{padding:1rem}.portal-brand{margin-bottom:1rem}.portal-nav-label{display:none}.portal-nav nav{display:flex;gap:.35rem;padding-bottom:.35rem;overflow:auto}.portal-nav nav a{flex:0 0 auto;padding:.58rem .75rem}.portal-nav nav a:before{display:none}.portal-sidebar-footer{display:none}.portal-toolbar{min-height:66px;padding:.8rem 1rem}.portal-user small{display:none}.portal-main>section{margin:1rem}.portal-page-heading,.portal-section-heading{display:grid}.portal-status-chip{width:max-content}.portal-form-grid{grid-template-columns:1fr}.report-signatures{display:grid}.portal-login{min-height:0}.portal-login-visual{min-height:280px;padding:2rem}.portal-login-trust{margin-top:1rem}}
@media(max-width:480px){.portal-toolbar-eyebrow,.portal-user>span:last-child{display:none}.portal-main>section{margin:.75rem}.portal-panel{padding:1rem}.metric-grid{grid-template-columns:1fr 1fr;gap:.7rem}.metric-grid article{min-height:120px;padding:1rem}.metric-grid article strong{font-size:1.32rem}.portal-login-visual h1{font-size:2.2rem}.portal-login-card{padding:1.5rem}}
.button-secondary{border:1px solid #cbd5da!important;background:#fff!important;color:#34434c!important}.button-secondary:hover{border-color:var(--a2zff-orange)!important;background:#f0fdfa!important}.button-success{background:#21864b!important;color:#fff!important}.button-success:hover{background:#176b3b!important}.button-danger{background:#b52a2a!important;color:#fff!important}.button-danger:hover{background:#941e1e!important}.table-actions{display:flex;gap:.35rem}.portal-message.is-loading,.portal-message.is-success,.portal-message.is-error{margin:.8rem 0 0;padding:.7rem .85rem;border-radius:9px;font-weight:750}.portal-message.is-loading{background:#edf3f7;color:#40525e}.portal-message.is-success{border:1px solid #bfe5cd;background:#eaf8ef;color:#176638}.portal-message.is-error{border:1px solid #efc2c2;background:#fff0f0;color:#962626}

/* Branded Portal Login logo. */
.portal-login-mark{display:block;width:190px;height:170px;margin-bottom:1.35rem;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#404449;box-shadow:0 18px 42px rgba(0,0,0,.28);overflow:hidden}
.portal-login-mark img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:760px){.portal-login-mark{width:138px;height:124px;margin-bottom:1rem;border-radius:15px}}

/* Professional operations reports. */
.report-page{padding:clamp(1.2rem,2.5vw,2rem)}.report-page-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--a2zff-line)}.report-page-heading h2{margin:.25rem 0 .35rem;font-size:clamp(1.65rem,2.5vw,2.2rem)}.report-page-heading p{margin:0;color:var(--a2zff-muted)}.report-page .report-filters{padding:1rem;border:1px solid #dbe3e8;border-radius:14px;background:#f7f9fa}.report-empty-state{display:grid;justify-items:center;gap:.35rem;padding:3.25rem 1rem;border:1px dashed #c8d3da;border-radius:16px;background:#fafbfc;text-align:center}.report-empty-state strong{color:var(--a2zff-ink);font-size:1rem}.report-empty-state span{color:var(--a2zff-muted);font-size:.82rem}.report-document{overflow:hidden;border:1px solid #d9e1e6;border-radius:18px;background:#fff;box-shadow:0 16px 42px rgba(19,35,45,.1)}.report-document-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.35rem 1.5rem;border-bottom:4px solid var(--a2zff-orange);background:linear-gradient(135deg,#101d26,#20313d);color:#fff}.report-document-brand{display:flex;align-items:center;gap:1rem;min-width:0}.report-document-brand img{width:74px;height:66px;flex:0 0 auto;border:1px solid rgba(255,255,255,.16);border-radius:10px;object-fit:cover;box-shadow:0 8px 20px rgba(0,0,0,.22)}.report-document-brand div{display:grid;gap:.26rem}.report-document-brand span{color:#becbd2;font-size:.62rem;font-weight:800;letter-spacing:.075em}.report-document-brand strong{font-size:clamp(1.15rem,2.2vw,1.7rem);letter-spacing:.01em}.report-document-meta{display:grid;gap:.55rem;min-width:210px}.report-document-meta span{display:grid;color:#fff;font-size:.8rem;font-weight:750}.report-document-meta small{color:#9fb0ba;font-size:.58rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.report-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;padding:1.25rem 1.5rem;background:#f4f7f9}.report-summary-grid article{display:grid;gap:.25rem;min-height:76px;padding:.9rem 1rem;border:1px solid #dce4e8;border-radius:12px;background:#fff}.report-summary-grid span{color:#65747e;font-size:.67rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.report-summary-grid strong{color:#14232c;font-size:1.18rem}.report-summary-grid article:nth-last-child(-n+2) strong{color:#087f78}.report-detail-section{padding:1.35rem 1.5rem 1.5rem}.report-detail-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.report-detail-heading>div{display:grid}.report-detail-heading>div span{color:var(--a2zff-orange-dark);font-size:.65rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.report-detail-heading>div strong{font-size:1.05rem}.report-detail-heading>span{padding:.32rem .58rem;border-radius:999px;background:#fff0e5;color:#9e430a;font-size:.7rem;font-weight:850}.report-table-wrap{overflow-x:auto;border:1px solid #d8e0e5;border-radius:12px}.report-detail-table{width:100%;border-collapse:collapse;font-size:.78rem}.report-detail-table th{padding:.72rem .75rem;background:#09243b;color:#fff;font-size:.65rem;letter-spacing:.07em;text-align:left;text-transform:uppercase}.report-detail-table th:last-child{text-align:right}.report-detail-table td{padding:.72rem .75rem;border-bottom:1px solid #e3e8eb;color:#34434c;vertical-align:middle}.report-detail-table tbody tr:nth-child(even){background:#f8fafb}.report-detail-table tbody tr:last-child td{border-bottom:0}.report-detail-table td:first-child strong{color:#09243b}.report-status{display:inline-flex;padding:.28rem .5rem;border-radius:999px;background:#edf2f5;color:#40525e;font-size:.65rem;font-weight:800}.report-amount{text-align:right;white-space:nowrap;color:#087f78!important;font-weight:900}.report-no-records td{padding:2.4rem!important;text-align:center!important;color:var(--a2zff-muted)!important}.report-document-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding:1.5rem;border-top:1px solid #e0e6ea;background:#fbfcfd}.report-document-footer div{display:grid;gap:1rem;color:#64737c;font-size:.68rem;font-weight:800}.report-document-footer i{display:block;border-bottom:1px solid #7d8991}
@media(max-width:760px){.report-document-header{display:grid}.report-document-meta{grid-template-columns:1fr 1fr;min-width:0}.report-summary-grid{grid-template-columns:1fr 1fr;padding:1rem}.report-detail-section{padding:1rem}.report-detail-table thead{display:none}.report-detail-table,.report-detail-table tbody,.report-detail-table tr,.report-detail-table td{display:block}.report-detail-table tr{padding:.55rem;border-bottom:1px solid #dce4e8}.report-detail-table td{display:grid;grid-template-columns:105px 1fr;gap:.7rem;padding:.4rem .45rem;border:0!important;text-align:left!important}.report-detail-table td:before{content:attr(data-label);color:#6a7881;font-size:.62rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.report-no-records td{display:block}.report-document-footer{grid-template-columns:1fr;gap:1.2rem}}
.booking-status-guide,.tracking-mini{display:flex;gap:.35rem;margin:1rem 0;overflow:auto}.booking-status-guide span,.tracking-mini span{position:relative;flex:1 0 auto;padding:.5rem .65rem;border:1px solid var(--a2zff-line);border-radius:8px;background:#f7f9fa;color:#566771;font-size:.67rem;font-weight:800;text-align:center}.booking-status-guide span:not(:last-child):after{content:"→";position:absolute;right:-.48rem;color:#9ca8af;z-index:1}
body.booking-drawer-open{overflow:hidden}.booking-drawer{position:fixed;inset:0;z-index:10000}.booking-drawer[hidden]{display:none}.booking-drawer-backdrop{position:absolute!important;inset:0;width:100%;height:100%;border:0!important;border-radius:0!important;background:rgba(9,16,21,.62)!important;cursor:default!important;backdrop-filter:blur(3px)}.booking-drawer-panel{position:absolute;top:0;right:0;width:min(850px,94vw);height:100%;overflow:auto;background:#f3f6f8;box-shadow:-20px 0 60px rgba(5,12,16,.28);animation:booking-drawer-in .24s ease}.booking-drawer-header{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--a2zff-line);background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.booking-drawer-header h2{margin:.2rem 0;color:var(--a2zff-ink);font-size:1.55rem}.booking-drawer-header p{margin:0;color:var(--a2zff-muted);font-size:.78rem}.booking-drawer-close{display:grid!important;place-items:center;min-width:38px!important;width:38px;height:38px;padding:0!important;border:1px solid var(--a2zff-line)!important;border-radius:50%!important;background:#fff!important;color:#34434c!important;font-size:1.45rem!important}.booking-drawer-body{display:grid;gap:1rem;padding:1.25rem}.booking-customer-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;padding:1rem;border:1px solid var(--a2zff-line);border-radius:13px;background:#fff}.booking-customer-summary span{display:grid;color:#5d6d76;font-size:.78rem;overflow-wrap:anywhere}.booking-customer-summary strong{color:#87939a;font-size:.63rem;letter-spacing:.07em;text-transform:uppercase}.booking-detail-form{display:grid;gap:1rem}.booking-detail-section,.booking-history-section{padding:1.15rem;border:1px solid var(--a2zff-line);border-radius:14px;background:#fff}.booking-section-title{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem}.booking-section-title span{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#e8fbf8;color:var(--a2zff-orange-dark);font-size:.68rem;font-weight:900}.booking-section-title h3{margin:0;color:var(--a2zff-ink);font-size:.98rem}.booking-party-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.portal-form-grid.one-column{grid-template-columns:1fr}.booking-detail-actions{position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;gap:.55rem;padding:1rem;border:1px solid var(--a2zff-line);border-radius:13px;background:rgba(255,255,255,.97);box-shadow:0 -8px 22px rgba(23,36,46,.06);backdrop-filter:blur(12px)}.booking-history{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.booking-history li{position:relative;padding:0 0 .8rem 1.25rem;border-bottom:1px solid #e7ecef}.booking-history li:before{content:"";position:absolute;left:0;top:.35rem;width:8px;height:8px;border-radius:50%;background:var(--a2zff-orange);box-shadow:0 0 0 4px #e8fbf8}.booking-history li:last-child{padding-bottom:0;border-bottom:0}.booking-history li>div{display:flex;justify-content:space-between;gap:1rem}.booking-history time,.booking-history small{color:#7c8991;font-size:.7rem}.booking-history p{margin:.25rem 0;color:#52616a;font-size:.8rem}.portal-table .status-vehicle_assigned,.portal-table .status-for_pickup,.portal-table .status-picked_up,.portal-table .status-in_transit,.portal-table .status-for_delivery{background:#e8f0ff;color:#275390}.portal-table .status-cancelled{background:#fbe4e4;color:#971f1f}
body.admin-bar .booking-drawer-panel{top:32px;height:calc(100% - 32px)}
.booking-print-document{display:none}
@keyframes booking-drawer-in{from{transform:translateX(35px);opacity:.65}to{transform:translateX(0);opacity:1}}
@media(max-width:700px){.booking-customer-summary{grid-template-columns:1fr 1fr}.booking-party-grid{grid-template-columns:1fr}.booking-drawer-body{padding:.8rem}.booking-drawer-header{padding:1rem}.booking-detail-actions{display:grid;grid-template-columns:1fr 1fr}.booking-detail-actions button{width:100%}}
@media(max-width:782px){body.admin-bar .booking-drawer-panel{top:46px;height:calc(100% - 46px)}}
@media(max-width:430px){.booking-customer-summary{grid-template-columns:1fr}.booking-detail-actions{grid-template-columns:1fr}.booking-drawer-panel{width:100vw}.table-actions{display:grid}}

/* v2.20.0 account directories and performance management. */
.account-directory-filters{display:flex;flex-wrap:wrap;align-items:end;gap:.7rem;margin-top:1rem;padding:1rem;border:1px solid var(--a2zff-line);border-radius:13px;background:#f7f9fa}.account-directory-filters label{display:grid;gap:.3rem;min-width:160px;color:#4d5d66;font-size:.72rem;font-weight:850}.account-directory-filters label:first-child{flex:1;min-width:260px}.account-directory-filters input,.account-directory-filters select{width:100%;padding:.68rem .75rem;border:1px solid #c8d2d8;border-radius:9px;background:#fff;font:inherit}.account-directory-count{margin:.85rem 0 -.55rem;color:var(--a2zff-muted);font-size:.76rem;font-weight:750}.account-pagination{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:1rem}.account-directory-table tbody tr{cursor:pointer}.account-directory-table tbody tr:focus{outline:3px solid rgba(20,184,166,.28);outline-offset:-3px}.portal-table .status-active{background:#dff5e7;color:#126234}.portal-table .status-blocked{background:#fbe4e4;color:#971f1f}.portal-table .status-suspended{background:#fff0c7;color:#765000}
body.account-drawer-open{overflow:hidden}.account-drawer{position:fixed;inset:0;z-index:10020}.account-drawer[hidden]{display:none}.account-drawer-backdrop{position:absolute!important;inset:0;width:100%;height:100%;border:0!important;border-radius:0!important;background:rgba(9,16,21,.64)!important;backdrop-filter:blur(3px)}.account-drawer-panel{position:absolute;top:0;right:0;width:min(980px,95vw);height:100%;overflow:auto;background:#f3f6f8;box-shadow:-22px 0 65px rgba(5,12,16,.32);animation:booking-drawer-in .24s ease}.account-drawer-header{position:sticky;top:0;z-index:4;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--a2zff-line);background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}.account-drawer-header h2{margin:.15rem 0;color:var(--a2zff-ink);font-size:1.55rem}.account-drawer-header p{margin:0;color:var(--a2zff-muted);font-size:.76rem}.account-drawer-close{display:grid!important;place-items:center;min-width:38px!important;width:38px;height:38px;padding:0!important;border:1px solid var(--a2zff-line)!important;border-radius:50%!important;background:#fff!important;color:#34434c!important;font-size:1.45rem!important}.account-drawer-body{display:grid;gap:1rem;padding:1.25rem}.account-drawer-body>section{padding:1.15rem;border:1px solid var(--a2zff-line);border-radius:14px;background:#fff}.account-profile-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.account-profile-card span{display:grid;gap:.2rem;padding:.7rem;border-radius:9px;background:#f7f9fa;color:#40515b;font-size:.78rem;overflow-wrap:anywhere}.account-profile-card strong{color:#7a8891;font-size:.62rem;letter-spacing:.075em;text-transform:uppercase}.account-restriction-card{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem;border-top:4px solid var(--a2zff-orange)!important}.account-restriction-card h3,.account-section-heading h3{margin:.15rem 0}.account-restriction-card p{margin:.25rem 0 0;color:var(--a2zff-muted);font-size:.78rem}.account-restriction-card form{display:flex;align-items:end;gap:.55rem}.account-restriction-card label{display:grid;gap:.3rem;color:#52616a;font-size:.7rem;font-weight:850}.account-restriction-card select{min-width:150px;padding:.68rem;border:1px solid #c8d2d8;border-radius:9px;background:#fff}.account-restriction-card [data-account-message]{grid-column:1/-1}.account-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.account-performance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.account-performance-grid article{display:grid;gap:.25rem;min-height:82px;padding:.85rem;border:1px solid #dfe6ea;border-radius:11px;background:linear-gradient(145deg,#f8fafb,#fff)}.account-performance-grid span{color:#687680;font-size:.65rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.account-performance-grid strong{color:#071a2b;font-size:1.12rem}.account-performance-grid article:nth-last-child(-n+3) strong{color:var(--a2zff-orange-dark)}.account-detail-table{overflow:auto;border:1px solid var(--a2zff-line);border-radius:11px}.account-detail-table .portal-table{margin:0}.account-detail-table .empty-state{padding:1.5rem}
.account-drawer-header.is-affiliate{position:sticky;justify-content:center;min-height:118px}.account-drawer-header.is-affiliate>div{width:100%;padding:1rem 52px 0;text-align:center}.account-drawer-header.is-affiliate [data-account-type]{display:block;margin-bottom:.55rem}.account-drawer-header.is-affiliate [data-account-name]{margin:0;font-weight:950}.account-drawer-header.is-affiliate [data-account-reference]{margin-top:.42rem}.account-drawer-header.is-affiliate .account-drawer-close{position:absolute;top:1.25rem;right:1.5rem}.affiliate-directory-table th:nth-child(1),.affiliate-directory-table th:nth-child(2){min-width:105px}.affiliate-directory-table td:nth-child(1) strong,.affiliate-directory-table td:nth-child(2) strong{font-size:.83rem}
.account-booking-link{display:inline-flex;align-items:center;min-height:32px;padding:.32rem .55rem;border:1px solid #f2b181;border-radius:8px;background:#effdfb;color:#9f4308;font-weight:900;text-decoration:none}.account-booking-link:hover{border-color:var(--a2zff-orange);background:#d8fbf5;color:#743005}.account-booking-link:focus-visible{outline:3px solid rgba(20,184,166,.3);outline-offset:2px}
@media(max-width:760px){.account-directory-filters{display:grid}.account-directory-filters label,.account-directory-filters label:first-child{min-width:0}.account-drawer-panel{width:100vw}.account-profile-card,.account-performance-grid{grid-template-columns:1fr 1fr}.account-restriction-card{grid-template-columns:1fr}.account-restriction-card form{display:grid;grid-template-columns:1fr auto}.account-drawer-body{padding:.8rem}}
@media(max-width:430px){.account-profile-card,.account-performance-grid{grid-template-columns:1fr}.account-restriction-card form{grid-template-columns:1fr}.account-restriction-card button{width:100%}}

/* Administrator-only demo and go-live controls. */
.demo-distribution{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0}.demo-distribution span{padding:.75rem .8rem;border:1px solid #dfe6ea;border-radius:10px;background:#f7f9fa;color:#34434c;font-size:.76rem;font-weight:850;text-align:center}.danger-zone{border-top:4px solid #b71c1c!important;background:linear-gradient(180deg,#fff,#fffafa)!important}.danger-zone .portal-status-chip{border-color:#efc4c4;background:#fff0f0;color:#922323}.danger-zone .portal-status-chip:before{background:#b71c1c;box-shadow:0 0 0 3px rgba(183,28,28,.12)}.danger-zone>label{max-width:420px;margin:1rem 0}.danger-zone code{padding:.12rem .35rem;border-radius:4px;background:#f7e6e6;color:#8b1f1f;font-weight:900}@media(max-width:700px){.demo-distribution{grid-template-columns:1fr 1fr}}@media(max-width:430px){.demo-distribution{grid-template-columns:1fr}}
