@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{--color-primary:#143d2a;--color-accent:#f8ee48;--color-white:#fff;--color-background:#f4f5f2;--color-border:#d9ded9;--color-text:#222822;--color-muted:#69736b;--color-success:#287d45;--color-danger:#c62828;--color-primary-soft:#e9eee9;--color-accent-soft:#fcf9c9;--font-size-xs:14px;--font-size-sm:15px;--font-size-base:16px;--font-size-md:17px;--font-size-lg:20px;--font-size-xl:24px;--font-size-2xl:30px;--radius:3px;color:var(--color-text);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;font-family:DM Sans,Arial,sans-serif;font-size:var(--font-size-base)}*{box-sizing:border-box}body{background:var(--color-background);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}.admin-shell{min-height:100vh}.sidebar{background:var(--color-primary);width:222px;color:var(--color-white);z-index:5;flex-direction:column;padding:17px 12px 12px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff35;align-items:center;gap:9px;padding:0 9px 17px;display:flex}.brand-mark{width:29px;height:29px;color:var(--color-primary);background:var(--color-accent);border-radius:var(--radius);place-items:center;font-size:16px;font-weight:700;display:grid}.brand b{letter-spacing:.08em;color:var(--color-white);font-size:12px;display:block}.brand small{letter-spacing:.1em;color:#d2ded5;margin-top:2px;font-size:9px;display:block}.workspace-label{letter-spacing:.12em;color:#c1cec4;padding:18px 10px 7px;font-size:9px;font-weight:700}.sidebar nav{gap:2px;display:grid}.nav-link{color:#f1f5f1;border-radius:var(--radius);align-items:center;gap:9px;height:36px;padding:0 10px;font-weight:500;display:flex;position:relative}.mobile-logout{text-align:left;background:0 0;border:0;display:none}.nav-link:hover{color:var(--color-white);background:#ffffff14}.nav-link.active{color:var(--color-accent);background:#ffffff1c;font-weight:700}.nav-link.active:before{content:"";background:var(--color-accent);width:3px;position:absolute;top:5px;bottom:5px;left:-12px}.nav-icon{text-align:center;width:18px;color:inherit;font-size:15px}.sidebar-bottom{margin-top:auto}.admin-profile{border-top:1px solid #ffffff35;align-items:center;gap:8px;padding:11px 7px;display:flex}.avatar,.row-avatar{width:28px;height:28px;color:var(--color-white);background:#ffffff20;border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.admin-profile b,.identity-cell b{font-size:11px;display:block}.admin-profile small,.identity-cell small{color:var(--color-muted);margin-top:2px;font-size:10px;display:block}.admin-profile small{color:#d2ded5}.logout-link{text-align:left;width:100%;color:var(--color-white);border-radius:var(--radius);background:0 0;border:1px solid #ffffff40;padding:8px 10px;font-size:12px}.logout-link:hover{color:var(--color-accent);border-color:var(--color-accent)}.logout-link span{margin-right:7px}.main-area{min-height:100vh;margin-left:222px}.topbar{background:var(--color-white);border-bottom:1px solid var(--color-border);height:48px;color:var(--color-muted);justify-content:space-between;align-items:center;padding:0 24px;font-size:11px;display:flex}.breadcrumbs span{color:#aeb7af;margin:0 7px}.topbar-title{color:var(--color-primary);font-weight:700}.topbar-right{align-items:center;gap:7px;display:flex}.online-dot{background:var(--color-success);border-radius:50%;width:7px;height:7px}.page-content{max-width:1500px;margin:auto;padding:22px 24px 36px}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:16px;display:flex}.eyebrow{letter-spacing:.1em;color:var(--color-muted);font-size:9px;font-weight:700}.page-heading h1,.login-card h2{color:var(--color-primary);margin:4px 0;font-size:21px;font-weight:700;line-height:1.2}.page-heading p,.panel-heading p,.records-toolbar p{color:var(--color-muted);margin:0;font-size:11px}.records-chip,.date-chip{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted);padding:7px 9px;font-size:11px}.records-chip b{color:var(--color-primary);margin-right:3px}.heading-actions{align-items:center;gap:6px;display:flex}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.stat-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);min-height:105px;padding:13px 14px;position:relative}.stat-card:before{content:"";background:var(--color-accent);height:3px;position:absolute;top:0;left:0;right:0}.stat-icon{border-radius:var(--radius);background:var(--color-accent-soft);width:27px;height:27px;color:var(--color-primary);place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;top:12px;right:12px}.stat-card>span{color:var(--color-muted);font-size:11px;font-weight:600;display:block}.stat-card strong{color:var(--color-primary);margin:10px 0 4px;font-size:22px;display:block}.stat-card small{color:var(--color-muted);font-size:10px}.panel{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius)}.chart-panel{padding:14px 16px 12px}.panel-heading,.records-toolbar{justify-content:space-between;align-items:center;display:flex}.panel-heading h2,.records-toolbar h2{color:var(--color-primary);margin:0 0 3px;font-size:13px}.segmented{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);gap:2px;padding:2px;display:flex}.segmented button{color:var(--color-muted);background:0 0;border:0;border-radius:2px;padding:5px 9px;font-size:10px}.segmented button.selected{background:var(--color-primary);color:var(--color-accent)}.chart{align-items:stretch;gap:9px;height:195px;padding:18px 6px 0;display:flex}.chart-col{flex-direction:column;flex:1;align-items:center;min-width:0;display:flex}.chart-value{color:var(--color-muted);height:16px;font-size:9px}.bar-area{border-bottom:1px solid var(--color-border);background:repeating-linear-gradient(#0000 0 32px,#edf0ed 33px);justify-content:center;align-items:flex-end;width:100%;height:130px;display:flex}.bar{background:var(--color-primary);border-top:3px solid var(--color-accent);width:min(32px,55%);min-height:4px}.chart-col>span{color:var(--color-muted);margin-top:7px;font-size:9px}.empty-chart{height:145px;color:var(--color-muted);place-items:center;font-size:11px;display:grid}.dashboard-footnote{color:var(--color-muted);margin:10px 2px;font-size:10px}.records-panel{overflow:hidden}.recent-panel{margin-top:12px;overflow:hidden}.record-id{color:var(--color-primary);font-family:Consolas,monospace;font-size:10px;font-weight:700}.copy-value{align-items:center;gap:6px;min-width:0;display:inline-flex}.copy-value>span:first-child{overflow-wrap:anywhere;min-width:0}.copy-button{border:1px solid var(--color-border);background:var(--color-white);color:var(--color-primary);border-radius:var(--radius);white-space:nowrap;flex:none;padding:3px 6px;font-size:9px;font-weight:600;line-height:1.2}.copy-button:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white)}.copy-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.records-toolbar{border-bottom:1px solid var(--color-border);gap:12px;padding:12px 14px}.table-filters{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.search-field{border:1px solid var(--color-border);border-radius:var(--radius);width:min(320px,40vw);height:31px;color:var(--color-muted);background:var(--color-white);align-items:center;gap:6px;padding:0 7px;display:flex}.search-field:focus-within{border-color:var(--color-primary);outline:2px solid var(--color-accent);outline-offset:1px}.search-field>span{font-size:17px}.search-field input{min-width:0;color:var(--color-text);background:0 0;border:0;outline:none;flex:1;font-size:11px}.search-field input::placeholder{color:#89928a}.search-field button{color:var(--color-muted);background:0 0;border:0;padding:0 2px;font-size:16px}.table-filters select,.trip-actions select{border:1px solid var(--color-border);background:var(--color-white);border-radius:var(--radius);height:31px;color:var(--color-text);padding:0 22px 0 7px;font-size:11px}.table-wrap{min-height:180px;position:relative;overflow-x:auto}.rdt_Table{min-width:900px}.rdt_Pagination button[aria-current=page],.rdt_Pagination button[aria-label*=current\ page]{background:var(--color-primary);color:var(--color-white)}.rdt_TableCell small{color:var(--color-muted);margin-top:2px;font-size:10px;display:block}.table-error{color:var(--color-danger);background:#fff3f2;border-top:1px solid #efc9c7;padding:9px 13px;font-size:11px}.loading-state{min-height:145px;color:var(--color-muted);justify-content:center;align-items:center;gap:8px;font-size:11px;display:flex}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:15px;height:15px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{min-height:145px;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.empty-state>span{color:var(--color-primary);font-size:20px}.empty-state strong{color:var(--color-text);font-size:12px}.empty-state small{font-size:10px}.identity-cell{align-items:center;gap:8px;display:flex}.row-avatar{background:var(--color-primary-soft);width:25px;height:25px;color:var(--color-primary);font-size:10px}.row-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.small-button{border:1px solid var(--color-primary);background:var(--color-white);color:var(--color-primary);border-radius:var(--radius);white-space:nowrap;padding:5px 7px;font-size:10px;font-weight:600}.small-button:hover{background:var(--color-primary);color:var(--color-white)}.small-button.positive{color:var(--color-primary);background:var(--color-accent);border-color:var(--color-primary)}.badge{color:var(--color-text);white-space:nowrap;background:#f0f2ef;border:1px solid #cbd2cb;border-radius:2px;padding:3px 6px;font-size:10px;font-weight:600;display:inline-flex}.badge.approved,.badge.online,.badge.completed,.badge.confirmed{color:var(--color-success);background:#e8f2e9;border-color:#b8d1bd}.badge.not-approved,.badge.no-approve,.badge.pending{background:var(--color-accent-soft);color:#554f00;border-color:#ded55b}.badge.offline,.badge.closed{color:var(--color-muted);background:#f0f2ef}.badge.assigned,.badge.approve{background:var(--color-primary-soft);color:var(--color-primary);border-color:#b7c7b9}.route-cell{flex-direction:column;gap:1px;line-height:1.2;display:flex}.route-cell span{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.route-cell b{color:var(--color-muted);font-size:9px}.assigned-driver{margin:2px 0;font-size:10px}.assigned-driver small{color:var(--color-muted);display:block}.muted{color:var(--color-muted);font-size:10px}.message-cell{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.trip-actions select{max-width:145px;height:27px;padding-left:6px;font-size:10px}.toolbar-button{border:1px solid var(--color-primary);background:var(--color-white);height:31px;color:var(--color-primary);border-radius:var(--radius);white-space:nowrap;padding:0 9px;font-size:10px;font-weight:600}.toolbar-button:hover,.toolbar-button.primary{background:var(--color-primary);color:var(--color-white)}.toolbar-button.primary:hover{color:var(--color-accent)}.clear-filters{color:var(--color-primary);background:0 0;border:0;padding:5px;font-size:10px;text-decoration:underline}.notice{color:var(--color-success);border-radius:var(--radius);background:#edf4ed;border:1px solid #c8d9c9;margin:-6px 0 10px;padding:8px 10px;font-size:11px}.copy-toast{z-index:30;max-width:min(360px,100vw - 32px);margin:0;position:fixed;bottom:24px;right:24px;box-shadow:0 5px 18px #14231a24}.notice.error,.form-error{color:var(--color-danger);border-radius:var(--radius);background:#fff3f2;border:1px solid #efc9c7;padding:8px 10px;font-size:11px}.pagination{color:var(--color-muted);justify-content:flex-end;align-items:center;gap:9px;padding:9px 12px;font-size:10px;display:flex}.button{border:1px solid var(--color-border);background:var(--color-white);color:var(--color-primary);border-radius:var(--radius);padding:7px 10px;font-size:11px;font-weight:600}.button.secondary:hover{border-color:var(--color-primary)}.button.primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.button.primary:hover{color:var(--color-accent)}.button.danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-white)}.dialog-backdrop{z-index:20;background:#14231a77;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);width:min(420px,100%);padding:20px;position:relative}.dialog h2{color:var(--color-primary);margin:0 0 7px;font-size:16px}.dialog p{color:var(--color-muted);margin:0;font-size:12px;line-height:1.5}.dialog-actions{justify-content:flex-end;gap:7px;margin-top:17px;display:flex}.detail-dialog{width:min(700px,100%);max-height:88vh;overflow:auto}.detail-dialog h2{margin:5px 0 14px}.detail-dialog h3{color:var(--color-primary);margin:17px 0 9px;font-size:12px}.close-button{color:var(--color-muted);background:0 0;border:0;font-size:20px;position:absolute;top:8px;right:11px}.detail-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.detail-grid>div{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);padding:8px}.detail-grid small,.document-grid small{color:var(--color-muted);margin-bottom:4px;font-size:9px;display:block}.detail-grid b{font-size:11px}.document-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.document-grid img{object-fit:cover;border:1px solid var(--color-border);border-radius:var(--radius);width:100%;height:95px;display:block}.document-grid .muted{padding:8px 0;display:block}.auth-check{min-height:100vh;color:var(--color-muted);place-items:center;display:grid}.login-page{background:var(--color-background);grid-template-columns:minmax(270px,35%) 1fr;min-height:100vh;display:grid}.login-aside{background:var(--color-primary);color:var(--color-white);flex-direction:column;padding:25px 8%;display:flex}.login-brand{letter-spacing:.08em;align-items:center;gap:9px;font-size:11px;font-weight:700;display:flex}.login-brand .brand-mark{background:var(--color-accent);color:var(--color-primary)}.login-copy{margin:auto 0}.login-copy .eyebrow{color:var(--color-accent)}.login-copy h1{margin:10px 0;font-size:clamp(27px,3vw,38px);line-height:1.15}.login-copy p{color:#e0e7e1;max-width:300px;font-size:12px;line-height:1.55}.login-aside-foot{letter-spacing:.1em;color:#d2ded5;font-size:9px}.login-panel{place-items:center;padding:24px;display:grid}.login-card{background:var(--color-white);border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:var(--radius);width:min(350px,100%);padding:22px}.login-icon{background:var(--color-primary);border-radius:var(--radius);width:31px;height:31px;color:var(--color-accent);place-items:center;margin-bottom:15px;display:grid}.login-card h2{margin-top:6px;font-size:20px}.login-card>p{color:var(--color-muted);margin:0 0 18px;font-size:11px}.login-card label{color:var(--color-text);margin:12px 0 5px;font-size:10px;font-weight:700;display:block}.login-card input{border:1px solid var(--color-border);border-radius:var(--radius);outline:none;width:100%;height:35px;padding:0 9px;font-size:11px}.login-card input:focus{border-color:var(--color-primary);outline:2px solid var(--color-accent);outline-offset:1px}.login-submit{justify-content:center;align-items:center;gap:8px;width:100%;height:36px;margin-top:16px;display:flex}.login-submit span{color:var(--color-accent)}.secure-note{text-align:center;color:var(--color-muted);margin-top:12px;font-size:9px;display:block}.text-button{color:var(--color-primary);background:0 0;border:0;padding:7px 0 0;font-size:10px;text-decoration:underline}.form-error{margin-top:10px}.card-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:9px 10px;display:flex}.card-toolbar-main,.card-toolbar-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.card-toolbar .search-field{width:min(300px,36vw)}.card-toolbar select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);height:31px;color:var(--color-text);padding:0 22px 0 7px;font-size:11px}.page-size-control{color:var(--color-muted);white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:flex}.page-size-control select{min-width:54px}.card-total{color:var(--color-muted);white-space:nowrap;font-size:10px}.booking-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:start;gap:14px;display:grid}.booking-card,.trip-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);min-width:0;padding:13px 14px}.booking-card-header,.trip-card-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:9px;padding-bottom:9px;display:flex}.booking-number{color:var(--color-primary);font-size:12px;font-weight:700}.card-status,.trip-status{border:1px solid var(--color-border);color:var(--color-muted);background:#f0f2ef;border-radius:2px;flex:none;align-items:center;padding:3px 6px;font-size:10px;font-weight:700;line-height:1.2;display:inline-flex}.card-status.pending,.card-status.no-approve,.trip-status.pending{background:var(--color-accent-soft);color:#554f00;border-color:#ded55b}.card-status.approve,.card-status.confirmed,.card-status.assigned,.trip-status.assigned{background:var(--color-primary-soft);color:var(--color-primary);border-color:#b7c7b9}.card-status.completed,.trip-status.completed{color:var(--color-success);background:#e8f2e9;border-color:#b8d1bd}.card-status.cancelled,.trip-status.cancelled{color:var(--color-danger);background:#fff3f2;border-color:#efc9c7}.booking-info{gap:0;padding:6px 0 3px;display:grid}.booking-info p,.booking-detail-list p{color:var(--color-text);border-bottom:1px dotted #e5e9e5;grid-template-columns:minmax(112px,36%) minmax(0,1fr);align-items:start;gap:7px;margin:0;padding:4px 0;font-size:10px;line-height:1.35;display:grid}.booking-info p:last-child{border-bottom:0}.booking-info strong,.booking-detail-list strong{color:var(--color-muted);font-weight:600}.booking-info p>span,.booking-detail-list p>span{overflow-wrap:anywhere;min-width:0}.booking-info .record-id{font-size:9px}.booking-actions{border-top:1px solid var(--color-border);gap:7px;padding-top:9px;display:flex}.card-action{border:1px solid var(--color-primary);border-radius:var(--radius);min-width:68px;min-height:29px;padding:5px 10px;font-size:10px;font-weight:700}.card-action.secondary{color:var(--color-primary);background:var(--color-white)}.card-action.secondary:hover{background:var(--color-primary-soft)}.card-action.primary{color:var(--color-white);background:var(--color-primary)}.card-action.primary:hover{color:var(--color-accent)}.trip-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,385px),1fr));align-items:start;gap:14px;display:grid}.trip-kicker{color:var(--color-muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:700}.trip-reference{max-width:100%;color:var(--color-primary);margin:3px 0 0;font:700 10px Consolas,monospace;overflow:visible}.trip-reference.copy-value{justify-content:flex-start}.trip-reference.copy-value>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trip-info{grid-template-columns:1fr 1fr;gap:10px 12px;padding:10px 0;display:grid}.trip-detail{flex-direction:column;gap:3px;min-width:0;display:flex}.detail-label{color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:700;display:block}.trip-detail strong,.route-point strong{min-width:0;color:var(--color-text);overflow-wrap:anywhere;font-size:11px}.trip-detail small{color:var(--color-muted);font-size:10px}.route-detail{background:var(--color-background);border:1px solid var(--color-border);grid-column:1/-1;grid-template-columns:1fr;gap:4px;padding:8px 9px;display:grid}.route-point{align-items:flex-start;gap:8px;min-width:0;display:flex}.route-point>div{gap:2px;min-width:0;display:grid}.route-dot{border:2px solid var(--color-primary);background:var(--color-white);border-radius:50%;flex:none;width:8px;height:8px;margin:3px 0 0 1px}.route-dot.drop-dot{background:var(--color-accent)}.route-line{background:var(--color-border);width:1px;height:7px;margin:-3px 0 -3px 4px}.trip-drivers{border-top:1px solid var(--color-border);padding-top:8px}.drivers-heading{color:var(--color-primary);justify-content:space-between;font-size:10px;font-weight:700;display:flex}.drivers-heading span:last-child{color:var(--color-muted);font-weight:500}.unassigned-label{color:var(--color-muted);margin:8px 0;font-size:10px}.driver-row{border-bottom:1px solid #edf0ed;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 0;display:grid}.driver-identity{align-items:center;gap:7px;min-width:0;display:flex}.driver-avatar{border:1px solid var(--color-border);width:25px;height:25px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:50%;flex:none;place-items:center;font-size:10px;font-weight:700;display:grid}.driver-identity>div{gap:2px;min-width:0;display:grid}.driver-identity strong,.driver-identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.driver-identity strong{color:var(--color-text);font-size:10px}.driver-identity>div>span,.driver-balance{color:var(--color-muted);font-size:9px}.driver-balance{white-space:nowrap}.driver-actions{gap:4px;display:flex}.trip-action-button{border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-white);min-height:25px;color:var(--color-primary);white-space:nowrap;padding:4px 6px;font-size:9px;font-weight:700}.trip-action-button.primary{background:var(--color-primary);color:var(--color-white)}.trip-action-button.primary:hover{color:var(--color-accent)}.trip-assign-row{gap:6px;padding-top:8px;display:flex}.trip-assign-row select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);min-width:0;height:27px;color:var(--color-text);flex:1;padding:0 6px;font-size:10px}.cards-pagination{border:1px solid var(--color-border);background:var(--color-white);margin-top:8px}.cards-message{min-height:100px;color:var(--color-muted);justify-content:center;align-items:center;gap:9px;padding:14px;font-size:11px;display:flex}.cards-message.panel{flex-direction:column}.cards-message strong{color:var(--color-primary);font-size:12px}.cards-error{min-height:60px;color:var(--color-danger);background:#fff3f2;border:1px solid #efc9c7}.approval-dialog label{color:var(--color-text);margin:14px 0 5px;font-size:10px;font-weight:700;display:block}.approval-dialog textarea{resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius);width:100%;color:var(--color-text);font:inherit;padding:8px;font-size:11px}.approval-dialog textarea:focus{outline:2px solid var(--color-accent);border-color:var(--color-primary)}.booking-detail-list{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.booking-detail-list p{grid-template-columns:105px minmax(0,1fr)}@media (width<=720px){.card-toolbar{flex-direction:column;align-items:stretch}.card-toolbar-main,.card-toolbar-actions{width:100%}.card-toolbar .search-field{flex:100%;width:100%}.card-toolbar-main>select{flex:1}.card-toolbar-actions{justify-content:space-between}.booking-cards,.trip-cards,.booking-detail-list{grid-template-columns:1fr}}@media (width<=430px){.driver-row{grid-template-columns:minmax(0,1fr) auto}.driver-actions{grid-column:1/-1;justify-content:flex-end}.booking-info p{grid-template-columns:minmax(105px,40%) minmax(0,1fr)}}@media (width<=1050px){.sidebar{width:195px}.main-area{margin-left:195px}.page-content{padding:19px 17px 30px}.topbar{padding:0 17px}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.sidebar{border-right:0;border-bottom:1px solid var(--color-border);width:100%;height:auto;padding:8px 10px;position:sticky;top:0}.brand{border:0;padding:0 4px 7px}.brand-mark{width:25px;height:25px}.workspace-label,.sidebar-bottom{display:none}.sidebar nav{gap:2px;display:flex;overflow-x:auto}.nav-link{white-space:nowrap;height:31px;padding:0 9px;font-size:10px}.nav-link.active:before{width:auto;height:3px;inset:auto 0 -8px}.nav-icon{display:none}.mobile-logout{color:var(--color-accent);display:flex}.main-area{margin:0}.topbar{height:38px;padding:0 12px}.topbar-right{font-size:9px}.page-content{padding:17px 10px 24px}.page-heading{align-items:flex-start}.page-heading h1{font-size:19px}.heading-actions{flex-direction:column;align-items:flex-end}.stats-grid{gap:7px}.stat-card{min-height:95px;padding:11px}.stat-card strong{font-size:19px}.stat-icon{width:23px;height:23px;top:9px;right:9px}.records-toolbar{flex-direction:column;align-items:flex-start;gap:9px;padding:10px}.table-filters{justify-content:flex-start;width:100%}.search-field{flex:100%;width:100%}.table-filters select{flex:1}.login-page{grid-template-columns:1fr}.login-aside{min-height:150px;padding:16px 19px}.login-copy{margin:17px 0}.login-copy h1{margin:7px 0;font-size:24px}.login-copy p{margin:0;font-size:11px}.login-aside-foot{display:none}.login-panel{padding:20px 14px}.detail-grid,.document-grid{grid-template-columns:repeat(2,1fr)}.chart-panel{padding:12px 9px}.chart{gap:3px;padding:15px 0 0}.chart-value,.chart-col>span{font-size:8px}}.brand b,.brand small,.workspace-label,.admin-profile b,.admin-profile small,.logout-link,.topbar,.page-heading p,.panel-heading p,.records-toolbar p,.records-chip,.date-chip,.stat-card>span,.stat-card small,.panel-heading h2,.records-toolbar h2,.segmented button,.chart-value,.chart-col>span,.empty-chart,.dashboard-footnote,.record-id,.search-field input,.table-filters select,.trip-actions select,.rdt_TableCell small,.table-error,.loading-state,.empty-state strong,.empty-state small,.identity-cell b,.identity-cell small,.small-button,.badge,.route-cell b,.assigned-driver,.muted,.toolbar-button,.clear-filters,.notice,.form-error,.pagination,.button,.dialog p,.detail-dialog h3,.detail-grid small,.document-grid small,.login-brand,.login-copy p,.login-aside-foot,.login-card>p,.login-card label,.login-card input,.secure-note,.text-button,.card-toolbar select,.page-size-control,.card-total,.booking-number,.card-status,.trip-status,.booking-info p,.booking-detail-list p,.card-action,.trip-kicker,.trip-reference,.detail-label,.trip-detail strong,.route-point strong,.trip-detail small,.drivers-heading,.unassigned-label,.driver-avatar,.driver-identity strong,.driver-identity>div>span,.driver-balance,.trip-action-button,.trip-assign-row select,.cards-message,.cards-message strong,.approval-dialog label,.approval-dialog textarea,.nav-link,.topbar-right,.page-heading h1,.login-copy h1,.login-card h2,.stat-card strong,.dialog h2,.detail-grid b{font-size:var(--font-size-base)}.nav-link{min-height:42px}.brand b,.admin-profile b,.identity-cell b,.stat-card>span,.records-toolbar h2,.panel-heading h2,.empty-state strong,.booking-number,.drivers-heading,.dialog h2,.login-card label,.approval-dialog label{font-size:var(--font-size-md)}.booking-number{font-size:19px}.page-heading h1{font-size:clamp(28px,2.2vw,32px);line-height:1.25}.login-copy h1{font-size:clamp(30px,3.2vw,40px);line-height:1.2}.login-card h2,.panel-heading h2,.records-toolbar h2{font-size:var(--font-size-lg)}.page-heading p,.panel-heading p,.records-toolbar p,.records-chip,.date-chip,.eyebrow,.identity-cell small,.assigned-driver small,.chart-value,.chart-col>span,.dashboard-footnote,.record-id,.rdt_TableCell small,.assigned-driver,.muted,.notice,.form-error,.dialog p,.detail-dialog h3,.detail-grid small,.document-grid small,.secure-note,.page-size-control,.card-total,.trip-kicker,.detail-label,.trip-detail small,.driver-identity>div>span,.driver-balance,.login-copy p,.login-aside-foot,.brand small,.workspace-label{font-size:var(--font-size-xs)}.nav-link,.topbar,.topbar-right,.logout-link,.search-field input,.table-filters select,.trip-actions select,.toolbar-button,.clear-filters,.small-button,.badge,.pagination,.button,.segmented button,.login-brand,.login-card>p,.login-card label,.login-card input,.text-button,.card-toolbar select,.booking-info p,.booking-detail-list p,.card-action,.trip-detail strong,.route-point strong,.trip-reference,.driver-identity strong,.trip-action-button,.trip-assign-row select,.cards-message,.approval-dialog textarea,.status,.rdt_Pagination,.rdt_Pagination select,.rdt_Pagination span{font-size:var(--font-size-base)}.search-field input,.table-filters select,.trip-actions select,.login-card input,.card-toolbar select,.trip-assign-row select{min-height:40px}.toolbar-button,.small-button,.button,.card-action,.trip-action-button,.logout-link{min-height:38px;padding:7px 10px}.badge,.card-status,.trip-status{font-size:var(--font-size-xs);padding:4px 8px}.stat-card strong{font-size:var(--font-size-xl)}.stat-card>span,.stat-card small{line-height:1.45}.search-field{height:40px}.topbar{min-height:54px}.page-heading{margin-bottom:18px}.page-heading p{line-height:1.5}.booking-info p,.booking-detail-list p{font-size:var(--font-size-base);padding:6px 0;line-height:1.45}.booking-info strong,.booking-detail-list strong,.booking-info .record-id,.trip-reference{font-size:var(--font-size-sm)}.trip-detail strong,.route-point strong{line-height:1.4}.driver-identity strong{font-size:var(--font-size-sm)}.driver-identity>div>span,.driver-balance{font-size:var(--font-size-xs)}.driver-row{min-height:48px}.pagination{min-height:50px}.rdt_TableCell{font-size:var(--font-size-base)!important}.rdt_TableHeadRow{min-height:48px!important}.rdt_TableRow{min-height:52px!important}.table-wrap,.dialog{font-size:var(--font-size-base)}.dialog h2{font-size:var(--font-size-lg)}.dialog p{font-size:var(--font-size-base)}.dialog-actions .button{min-height:42px}.login-card{width:min(390px,100%)}.login-card label{margin-top:15px}.login-card input{height:44px}.login-submit{height:46px}.login-card>p,.cards-message{line-height:1.5}.trip-action-button{white-space:normal;line-height:1.25}@media (width<=720px){.nav-link{min-height:42px;font-size:var(--font-size-sm)}.page-heading h1{font-size:clamp(26px,6vw,30px)}.topbar{min-height:46px}.topbar-right{font-size:var(--font-size-xs)}.login-copy h1{font-size:clamp(28px,7vw,34px)}.login-copy p{font-size:var(--font-size-sm)}.chart-value,.chart-col>span{font-size:13px}.card-toolbar-main>select{min-width:125px}.booking-info p,.booking-detail-list p{grid-template-columns:minmax(110px,40%) minmax(0,1fr)}}.bookings-heading-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bookings-heading-row .page-heading{flex:1}.create-booking-link{flex:none;text-decoration:none}.booking-notice{border-radius:var(--radius);font-size:var(--font-size-sm);margin:0 0 14px;padding:12px 14px}.booking-notice.error{color:var(--color-danger);background:#fff3f2;border:1px solid #efc9c7}.booking-notice.success{color:var(--color-success);background:#e8f2e9;border:1px solid #b8d1bd}.booking-notice a{color:inherit;margin-left:5px;font-weight:700}.booking-form-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);align-items:start;gap:14px;display:grid}.create-booking-form,.booking-map-panel,.booking-estimate{padding:18px}.create-booking-form h2,.booking-map-panel h2,.booking-estimate h2{font-size:var(--font-size-lg);color:var(--color-primary);margin:0 0 14px}.create-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 14px;display:grid}.create-fields label{min-width:0;color:var(--color-text);font-size:var(--font-size-sm);gap:6px;font-weight:700;display:grid}.create-fields label span{color:var(--color-muted);font-weight:400}.create-fields label.wide{grid-column:1/-1}.create-fields input,.create-fields select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);width:100%;min-width:0;height:42px;color:var(--color-text);font:inherit;padding:0 10px;font-weight:400}.create-fields input:focus,.create-fields select:focus{outline:2px solid var(--color-accent);border-color:var(--color-primary)}.create-booking-hint{background:var(--color-background);color:var(--color-muted);font-size:var(--font-size-xs);margin:14px 0;padding:10px;line-height:1.5}.create-submit{min-height:44px}.booking-estimate-column{gap:14px;display:grid}.booking-map{border-radius:var(--radius);background:var(--color-background);width:100%;min-height:255px}.booking-estimate dl{gap:0;margin:0;display:grid}.booking-estimate dl>div{border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.booking-estimate dt{color:var(--color-muted)}.booking-estimate dd{color:var(--color-text);text-align:right;margin:0;font-weight:700}.booking-estimate .estimate-total{color:var(--color-primary);font-size:var(--font-size-md);border-bottom:0;margin-top:3px;font-weight:700}.booking-estimate .form-error{margin:0;line-height:1.5}@media (width<=900px){.booking-form-grid{grid-template-columns:1fr}.booking-estimate-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=600px){.bookings-heading-row{flex-direction:column}.create-booking-link{text-align:center;width:100%}.create-booking-form,.booking-map-panel,.booking-estimate{padding:13px}.create-fields{grid-template-columns:1fr}.create-fields label.wide{grid-column:auto}.booking-estimate-column{grid-template-columns:1fr}.booking-map{min-height:225px}}.pricing-tabs{margin-bottom:14px}.pricing-minimum{justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.pricing-minimum h2,.pricing-vehicles-heading h2{color:var(--color-primary);font-size:var(--font-size-lg);margin:5px 0 0}.minimum-value,.minimum-form{align-items:center;gap:10px;display:flex}.minimum-value strong{font-size:var(--font-size-xl);color:var(--color-text)}.minimum-form label,.pricing-form-fields label{color:var(--color-text);font-size:var(--font-size-sm);gap:6px;font-weight:700;display:grid}.minimum-form input,.pricing-form-fields input:not([type=checkbox]){border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);min-width:0;height:40px;color:var(--color-text);font:inherit;padding:0 10px;font-weight:400}.minimum-form input{width:150px}.pricing-vehicles-heading{justify-content:space-between;align-items:center;gap:12px;margin:20px 0 11px;display:flex}.pricing-vehicles-heading p{color:var(--color-muted);font-size:var(--font-size-sm);margin:4px 0 0}.pricing-vehicle-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:13px;display:grid}.pricing-vehicle-card{padding:16px}.pricing-card-head{justify-content:space-between;align-items:flex-start;gap:9px;display:flex}.pricing-card-head h3{color:var(--color-primary);font-size:var(--font-size-md);margin:0}.pricing-card-head small{color:var(--color-muted);margin-top:4px;font-family:monospace;display:block}.pricing-vehicle-card dl{margin:13px 0}.pricing-vehicle-card dl>div{border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.pricing-vehicle-card dt{color:var(--color-muted)}.pricing-vehicle-card dd{color:var(--color-text);margin:0;font-weight:700}.pricing-card-actions{gap:8px;display:flex}.pricing-card-actions .button{flex:1}.pricing-dialog{max-width:520px}.pricing-form-fields{gap:12px;margin:18px 0;display:grid}.pricing-active-toggle{align-items:center;gap:8px!important;display:flex!important}.pricing-active-toggle input{width:18px;height:18px;accent-color:var(--color-primary)}@media (width<=600px){.pricing-minimum{flex-direction:column;align-items:flex-start}.minimum-value,.minimum-form{flex-wrap:wrap;width:100%}.minimum-form label{flex:100%}.minimum-form input{width:100%}.pricing-vehicles-heading{align-items:flex-start}}
