/* CAB Transport v10.3. Additive visual layer, no third-party services. */
:root{--cab-forest:#193c31;--cab-ink:#1d302a;--cab-mist:#eef2ec;--cab-hairline:#dce3dc;--cab-clay:#d7502a;--cab-shadow:0 10px 34px rgba(18,38,29,.07)}
:focus-visible{outline:3px solid #d77a3e!important;outline-offset:3px}
.inventory-grid{gap:24px 20px}
.inventory-card{overflow:hidden;background:#fff;border:1px solid var(--cab-hairline);border-radius:11px;box-shadow:0 1px 0 rgba(25,60,49,.02);transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}
.inventory-card:hover{box-shadow:var(--cab-shadow);border-color:#b6c8b9;transform:translateY(-3px)}
.inventory-card .inventory-card-photo{display:block;aspect-ratio:1.42;position:relative;background:#dce5df}
.inventory-card-photo img{display:block;width:100%;height:100%;object-fit:cover}
.inventory-card-body{padding:22px 22px 24px;gap:0;min-height:235px}
.inventory-card-meta{margin-bottom:17px;min-height:25px}
.inventory-card-meta>span:last-child{font-size:10px;font-weight:650;color:#5f7065}
.inventory-badge{font-size:10px;letter-spacing:.07em;padding:6px 10px;border-radius:4px;background:#e8f0e9;color:#28513c;font-weight:750;text-transform:uppercase}
.inventory-badge.cab-status-pending,.inventory-badge.cab-status-reserved{background:#fff1dc;color:#8c540b}
.inventory-badge.cab-status-sold,.inventory-badge.cab-status-withdrawn{background:#f3e7e5;color:#8a3936}
.inventory-badge.cab-status-on_hold{background:#e8ebf5;color:#45568a}
.inventory-card h2{font-size:clamp(19px,1.55vw,24px);line-height:1.3;letter-spacing:-.045em;margin-bottom:12px}
.inventory-card h2 a{text-decoration:none;color:#152a22}
.inventory-card .inventory-price{font-size:26px;color:#172c24;font-weight:750;margin:0 0 12px}
.cab-card-facts{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;color:#5b6d63;margin:0 0 13px}
.cab-card-fact{font-size:11px;line-height:1.35}
.cab-card-fact+.cab-card-fact:before{content:'•';margin-right:12px;color:#8da496}
.inventory-card .inventory-credit-label{font-size:10px;color:#52704e;margin:2px 0 9px}
.inventory-card .cab-card-cta{align-self:stretch;display:flex;justify-content:space-between;align-items:center;min-height:45px;margin-top:auto;padding:11px 16px;background:var(--cab-forest);color:#fff!important;text-align:left;text-decoration:none;border:1px solid var(--cab-forest);border-radius:6px;box-shadow:none;font-size:11px;letter-spacing:.035em;font-weight:700}
.inventory-card .cab-card-cta:hover{background:#285c48;border-color:#285c48;color:#fff!important}
.cab-listing-ribbon{position:absolute;z-index:2;left:0;top:20px;padding:10px 18px 10px 14px;border-radius:0 4px 4px 0;background:#2c413a;color:white;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.cab-listing-ribbon.cab-status-sold,.cab-listing-ribbon.cab-status-withdrawn{background:#903e32}
.cab-listing-ribbon.cab-status-pending,.cab-listing-ribbon.cab-status-reserved{background:#9a5a19}
.cab-listing-ribbon.cab-status-on_hold{background:#465d83}
.cab-detail-ribbon{top:28px;font-size:14px;padding:12px 21px}
.vehicle-main-photo{position:relative}
.inventory-filters,.contact-form-box,.calculator-card,.estimate-card,.tracking-card{border-radius:10px}
.inventory-filters{background:#edf1ea;border:1px solid #dbe3d8}
.inventory-filters input,.inventory-filters select,.contact-form-box input,.contact-form-box textarea{border-radius:5px}
.inventory-filters .field>span{font-size:10px;font-weight:700}
.inventory-results-heading{padding:7px 0 18px}
.inventory-pagination{margin-bottom:25px}
.vehicle-detail-info{border-radius:10px;box-shadow:var(--cab-shadow)}
.vehicle-detail-info .v9-detail-actions .button{border-radius:5px}
.vehicle-gallery .vehicle-main-photo{overflow:hidden;border-radius:9px}
.vehicle-gallery .vehicle-thumbs button{border-radius:5px}
.v9-detail-trial{border-radius:8px}
.contact-form-box .field:focus-within>span,.inventory-filters .field:focus-within>span{color:var(--cab-clay)}
.button,.admin-page button{transition:background .18s ease,border-color .18s ease,transform .18s ease}
.admin-page{max-width:1560px;padding-top:24px}
.admin-page>h1{font-size:clamp(27px,2.6vw,37px);margin-bottom:18px}
.cab10-workspace{grid-template-columns:204px minmax(0,1fr);gap:20px}
.cab10-sidebar{border-color:#dce5db;box-shadow:0 8px 26px rgba(15,40,26,.035);padding:13px 9px;border-radius:12px;max-height:calc(100vh - 34px);overflow:auto}
.cab10-nav-link{font-size:12px;padding:10px 12px}
.cab10-nav-note{font-size:10px}
.cab10-panel-content h2{font-size:clamp(24px,2.3vw,34px);letter-spacing:-.04em}
.cab10-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.cab10-stat{padding:15px 17px;gap:6px;border-radius:11px}
.cab10-stat strong{font-size:27px}
.admin-section .panel,.cab-ledger-panel,.cab-payment-editor{border-radius:11px}
.cab-ledger-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.cab-ledger-summary>div{padding:16px 18px;border:1px solid #d7e2d9;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:3px}
.cab-ledger-summary span{font-size:11px;color:#577064}
.cab-ledger-summary strong{font-size:27px;line-height:1.2;color:#1c3b2c;font-weight:780}
.cab-ledger-panel,.cab-payment-editor{margin:16px 0 22px;padding:22px;background:#fff}
.cab-panel-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:17px}
.cab-panel-header h3{font-size:22px;margin:0 0 6px}
.cab-panel-header p{max-width:800px;font-size:12px;margin:0;color:#57675d}
.cab-ledger-table td,.cab-ledger-table th{padding:13px 12px;text-align:left;vertical-align:middle}
.cab-ledger-table td:first-child small{display:block;color:#708075;font-size:9px;margin-top:3px}
.cab-ledger-table tr.is-selected{background:#eff5ed}
.cab-ledger-table td:nth-child(2){max-width:290px;font-size:11px}
.cab-state-pill{display:inline-flex;align-items:center;border-radius:50px;padding:5px 9px;white-space:nowrap;font-size:10px;font-weight:750;background:#e9eee9;color:#3b594b}
.cab-pay-paid,.cab-pay-refunded{background:#dfeee5;color:#23613a}
.cab-pay-pending,.cab-pay-under_review,.cab-pay-refund_pending{background:#fff1d8;color:#89560f}
.cab-pay-cancelled{background:#f2e6e6;color:#94483f}
.cab-payment-form .field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.cab-payment-form input,.cab-payment-form select,.cab-payment-form textarea,.cab-board-filter input,.cab-board-filter select,.cab-row-status-form select{min-height:42px;border:1px solid #cdd9cf;border-radius:6px}
.cab-payment-form textarea{min-height:85px}
.cab-confirmation{display:flex;gap:11px;align-items:flex-start;font-size:12px;line-height:1.6;background:#fff7e9;border:1px solid #e7cf9f;border-radius:7px;padding:13px 16px;margin:19px 0}
.cab-confirmation input{margin-top:4px;min-height:auto}
.cab-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.cab-history{margin-top:25px;border-top:1px solid #e1e7de;padding-top:14px}
.cab-history summary{cursor:pointer;font-size:12px;font-weight:750}
.cab-history ol{margin:13px 0 0;padding-left:20px}
.cab-history li{padding:8px 0;border-bottom:1px solid #edf0ec;font-size:11px}
.cab-history li span{margin-left:15px;color:#64776a}
.cab-history li p{margin:6px 0}
.cab-inventory-board{padding-top:10px}
.cab-board-filter{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:14px 0}
.cab-board-filter .field:first-child{flex:2 1 230px}.cab-board-filter .field:nth-child(2){flex:1 1 160px}
.cab-board-filter .button{min-height:43px}
.cab-inventory-board-list{border:1px solid #dce5dc;border-radius:10px;overflow:hidden;background:#fff;margin:14px 0 25px}
.cab-vehicle-row{display:grid;grid-template-columns:86px minmax(0,1fr) 245px;gap:15px;align-items:center;padding:12px 16px;border-bottom:1px solid #e9eee8}
.cab-vehicle-row:last-child{border-bottom:0}
.cab-vehicle-row-thumb{width:86px;height:65px;background:#edf0ed;border-radius:5px;overflow:hidden}
.cab-vehicle-row-thumb img{width:100%;height:100%;object-fit:cover}
.cab-vehicle-row-info{display:flex;flex-direction:column;min-width:0;gap:3px}
.cab-vehicle-row-info strong{font-size:12px;color:#213e30;line-height:1.3}
.cab-vehicle-row-info>span{font-size:10px;color:#68786d}
.cab-row-links{display:flex;gap:16px;font-size:10px}
.cab-row-links a{color:#ab4d24;text-underline-offset:3px}
.cab-row-status-form{display:flex;align-items:flex-end;gap:7px}
.cab-row-status-form label{flex:1;display:flex;flex-direction:column;gap:4px}
.cab-row-status-form label span{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:#6a766e}
.cab-row-status-form select{min-width:0;width:100%;font-size:11px;padding:7px}
.cab-row-status-form .button{min-height:42px;padding:8px 10px}
.cab-board-empty{padding:30px;text-align:center}
.cab-admin-editor-disclosure{margin:22px 0}
.cab-admin-editor-disclosure>summary{cursor:pointer;padding:15px 18px;background:#e9eee8;border-radius:8px;color:#1f4332;font-size:13px;font-weight:750}
.cab-admin-editor-disclosure[open]>summary{margin-bottom:15px}
.cab10-panel-content .admin-editor{padding:23px}
.cab10-panel-content .admin-editor .field-grid{gap:14px}
@media(max-width:1150px){.cab10-stats,.cab-ledger-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.cab10-workspace{grid-template-columns:186px minmax(0,1fr)}}
@media(max-width:980px){.cab10-workspace{grid-template-columns:1fr}.cab10-sidebar{position:static;max-height:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cab10-nav-label,.cab10-nav-note,.cab10-sidebar form{grid-column:1/-1}}
@media(max-width:750px){.inventory-grid{gap:18px}.inventory-card-body{padding:18px;min-height:215px}.cab-vehicle-row{grid-template-columns:70px minmax(0,1fr);gap:12px}.cab-vehicle-row-thumb{width:70px;height:60px}.cab-row-status-form{grid-column:2;justify-self:stretch}.cab-panel-header{display:block}.cab-panel-header .button{margin-top:14px}}
@media(max-width:540px){.cab10-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.cab10-stats,.cab-ledger-summary{gap:8px}.cab10-stat,.cab-ledger-summary>div{padding:12px}.cab10-stat strong,.cab-ledger-summary strong{font-size:23px}.cab-payment-form .field-grid{grid-template-columns:1fr}.cab-ledger-panel,.cab-payment-editor{padding:15px}.cab-vehicle-row{padding:11px}.inventory-card .inventory-card-photo{aspect-ratio:1.45}}
@media(prefers-reduced-motion:reduce){.inventory-card{transition:none}.inventory-card:hover{transform:none}}
.cab-category-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin:0 0 28px}
.cab-category-shortcuts>span{font-size:10px;color:#657569;font-weight:750;text-transform:uppercase;letter-spacing:.12em;margin-right:8px}
.cab-category-shortcuts a{display:inline-flex;align-items:center;min-height:35px;padding:8px 13px;border:1px solid #d8e0d6;border-radius:50px;background:#fff;color:#274634;text-decoration:none;font-size:11px;font-weight:700;transition:background .15s ease,border-color .15s ease}
.cab-category-shortcuts a:hover{background:#e8f0e5;border-color:#abc2ab}
.cab-escrow-flow{padding:32px 0 45px;margin-top:10px;margin-bottom:35px;border-top:1px solid #d5ded2;border-bottom:1px solid #d5ded2}
.cab-flow-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:25px}
.cab-flow-heading h2{font-size:clamp(30px,3.25vw,46px);line-height:1.15;letter-spacing:-.055em;margin:5px 0 0;max-width:590px}
.cab-flow-heading>p{max-width:340px;font-size:12px;color:#596d60;line-height:1.7}
.cab-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.cab-flow-grid article{background:#edf1ea;border:1px solid #dbe5da;border-radius:9px;padding:23px 25px;min-height:185px}
.cab-flow-grid article>span{font-size:10px;font-weight:800;letter-spacing:.17em;color:#bc532d}
.cab-flow-grid h3{font-size:20px;letter-spacing:-.035em;margin:16px 0 9px}
.cab-flow-grid p{font-size:11px;line-height:1.75;color:#58695e;margin:0}
.cab-escrow-flow>a{font-size:11px;font-weight:750}
@media(max-width:750px){.cab-flow-heading{display:block}.cab-flow-heading>p{margin:13px 0}.cab-flow-grid{grid-template-columns:1fr}.cab-flow-grid article{min-height:0;padding:20px}.cab-category-shortcuts{gap:7px}.cab-category-shortcuts>span{width:100%;margin-bottom:3px}}
.cab-priority-section{margin-top:24px}
.cab-priority-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cab-priority-card{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:10px;background:#e6eee6;border:1px solid #d5e3d5;color:#1f3b2c;text-decoration:none}
.cab-priority-card:hover{background:#dbe9db;border-color:#b4cbb8}
.cab-priority-card strong{font-size:29px;line-height:1.1}
.cab-priority-card>span{font-size:12px;font-weight:800}
.cab-priority-card small{font-size:10px;color:#58735c}
.cab-recent-inquiries{padding:20px;margin-top:16px;background:#fff}
.cab-recent-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.cab-recent-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e7eee7;text-decoration:none;color:#1f3b2c}
.cab-recent-list a>span:first-child{display:grid;gap:3px}
.cab-recent-list strong{font-size:12px}.cab-recent-list small{font-size:10px;color:#6a7e6d}
.cab-recent-list a>span:last-child{color:#a44a26;font-size:10px;font-weight:750}
@media(max-width:1120px){.cab-priority-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cab-recent-list{grid-template-columns:1fr}}
