/* Consistent route and driver surfaces: ivory, ink, restrained champagne. */
:root{--accent-text:#806230;--map-gold:#ad8747}
[data-theme=dark]{--accent-text:#e3c78d}
.route-fields{box-shadow:inset 0 1px 0 #ffffff0a}
.route-fields .field-button b{font-weight:600}
.route-issue{margin:0 0 10px;padding:11px 13px;border:1px solid #ba985659;border-radius:10px;background:var(--accent-soft);color:var(--ink);font-size:12px;line-height:1.5}
.market-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.market-eyebrow{font-size:9px;letter-spacing:1.8px;color:var(--subtle);font-weight:600}
.market-heading h1{font-size:30px;margin:8px 0 0;line-height:1.1;letter-spacing:-1px}
.market-status{min-height:44px;display:flex;align-items:center;gap:6px;font-size:10px;padding:8px 10px;border:1px solid var(--edge);border-radius:30px;color:var(--subtle)}
.market-status i{width:6px;height:6px;border-radius:50%;background:#969b93}
.market-status.is-online i{background:#41906c;box-shadow:0 0 0 3px #41906c18}
.market-modes{display:flex;gap:4px;padding:4px;border:1px solid var(--edge);background:var(--surface-alt);border-radius:13px}
.market-modes button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;min-height:44px;padding:8px 4px;border-radius:9px;font-size:12px;color:var(--subtle)}
.market-modes button svg{width:17px;height:17px}
.market-modes [aria-pressed=true]{background:var(--primary-bg);color:var(--primary-fg);box-shadow:0 2px 4px #00000009}
.market-info{font-size:12px;color:var(--subtle);line-height:1.5;margin:12px 0 20px}
.market-section{display:flex;justify-content:space-between;align-items:center;gap:8px}
.market-section h3{font-size:16px;font-weight:600;margin:0}
.market-section h3 span{font-size:12px;font-weight:500;color:var(--subtle);margin-left:4px}
.market-section>button{display:flex;align-items:center;gap:5px;min-height:44px;font-size:11px;color:var(--accent-text)}
.market-section>button svg{width:15px;height:15px}
.market-radius{font-size:10px;line-height:1.5;margin:0 0 10px;color:var(--subtle)}
.market-list{display:flex;flex-direction:column;gap:10px}
.market-job{display:block;width:100%;text-align:left;padding:16px;border:1px solid var(--edge);background:var(--surface);border-radius:15px;color:var(--ink)}
.market-job:hover{border-color:var(--map-gold);background:var(--accent-soft)}
.market-job-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px}
.market-job-head>b{font-size:25px;letter-spacing:-1px;font-weight:600}
.market-job-head>span{font-size:11px;color:var(--subtle)}
.market-address{display:flex;align-items:baseline;gap:10px;font-size:13px;line-height:1.45;margin:9px 0}
.market-address i{font-style:normal;font-size:9px;font-weight:700;color:var(--accent-text)}
.market-address strong{font-weight:600}
.market-job-foot{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--edge);padding-top:12px;margin-top:12px;font-size:10px;color:var(--subtle)}
.market-job-foot>span{color:var(--accent-text);white-space:nowrap}
.market-empty{padding:24px 16px;text-align:center;border:1px dashed var(--edge);border-radius:15px;background:var(--surface-alt)}
.market-empty>svg{width:32px;height:32px;color:var(--accent-text)}
.market-empty h3{font-size:15px;font-weight:600;margin:10px 0}
.market-empty p{font-size:12px;line-height:1.6;color:var(--subtle);margin:0}
.market-stats{display:flex;align-items:center;gap:16px;margin-top:18px;padding:15px 0 0;border-top:1px solid var(--edge);color:var(--subtle)}
.market-stats>span{font-size:10px;flex:1}.market-stats b{display:block;font-size:18px;color:var(--ink);margin-top:4px}
.market-stats button{display:flex;align-items:center;gap:5px;min-height:44px;font-size:11px}.market-stats svg{width:16px;height:16px}
.job-pin{filter:drop-shadow(0 3px 5px #10181438)}
.job-pin>span{display:flex;align-items:center;justify-content:center;height:36px;padding:0 12px;background:#252b28;border:2px solid #fffefa;color:#fffefa;border-radius:12px;font-size:14px;font-weight:650;white-space:nowrap}
.job-pin.selected>span{background:#ddc28c;color:#252820;border-color:#fffefa}
.job-pin>i{display:block;margin:-2px auto 0;width:9px;height:9px;background:#252b28;border-right:2px solid #fffefa;border-bottom:2px solid #fffefa;transform:rotate(45deg)}
.job-pin.selected>i{background:#ddc28c}
.offer-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}
.offer-heading button{min-height:44px;color:var(--accent-text);font-size:12px;font-weight:600}.offer-heading>span{font-size:10px;color:var(--subtle)}
.offer-price{display:flex;align-items:baseline;gap:12px;justify-content:space-between;margin-bottom:12px}
.offer-price h1{margin:0!important;font-size:38px!important;letter-spacing:-1.5px}.offer-price>span{font-size:12px;color:var(--subtle);white-space:nowrap}
.offer-pickup{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--accent-text);padding:11px 12px;background:var(--accent-soft);border-radius:10px;margin-bottom:14px}.offer-pickup svg{width:16px;height:16px;flex-shrink:0}
.offer-route{padding:0 12px;border:1px solid var(--edge);border-radius:14px;background:var(--surface-alt)}
.offer-route>div{display:flex;align-items:center;gap:12px;padding:12px 0}.offer-route>div+div{border-top:1px solid var(--edge)}
.offer-route i{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border:1px solid var(--edge);background:var(--surface);font-size:10px;font-style:normal;border-radius:8px;color:var(--accent-text)}
.offer-route small{display:block;font-size:8px;letter-spacing:1px;color:var(--subtle);margin-bottom:4px}.offer-route b{font-size:13px;line-height:1.4;font-weight:600}
.offer-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.offer-tags span{font-size:10px;background:var(--surface-alt);padding:7px 9px;border-radius:8px;color:var(--subtle)}
.offer-note{font-size:12px;line-height:1.5;color:var(--subtle)}
.offer-frame{display:flex;align-items:center;gap:7px;min-height:44px;font-size:12px;color:var(--accent-text)}.offer-frame svg{width:16px;height:16px}
.offer-point>span{width:30px;height:30px;border-radius:50%;border:2px solid #fffefa;background:#a57e3c;color:white;display:grid;place-items:center;font-size:12px;font-weight:700;box-shadow:0 2px 8px #0004}
@media(max-width:760px){
 .topbar,[data-theme=dark] .topbar{box-shadow:0 3px 18px #171d1810;background:var(--surface)}
 .ride-panel,[data-theme=dark] .ride-panel{box-shadow:0 -6px 32px #0f181314}
 .market-heading{margin:2px 0 14px}.market-heading h1{font-size:24px;margin:6px 0 0}.market-status{font-size:9px}
 .market-info{font-size:11px;margin:9px 0 12px}.market-section h3{font-size:14px}.market-radius{font-size:10px}
 .market-job{padding:13px}.market-job-head>b{font-size:23px}.market-address{font-size:12px}
 .market-empty{padding:16px}.market-empty h3{font-size:14px}
 .ride-panel[data-content=driver][data-sheet=compact] .market-stats{display:none}
 .ride-panel[data-content=offer]{max-height:52dvh}
 .ride-panel[data-content=offer] .panel-nav{display:none}
 .ride-panel[data-content=offer] .panel-content{padding-top:0}
 .ride-panel[data-content=offer] .offer-price h1{font-size:31px!important}
 .ride-panel[data-content=offer][data-sheet=compact] .offer-tags,.ride-panel[data-content=offer][data-sheet=compact] .offer-note,.ride-panel[data-content=offer][data-sheet=compact] .offer-frame{display:none}
 .offer-heading{margin:0}.offer-heading>span{font-size:9px}.offer-price{margin-bottom:8px}.offer-pickup{margin-bottom:10px;padding:8px 10px;font-size:11px}
 .offer-route>div{padding:9px 0}.offer-route b{font-size:12px}
 .route-issue{font-size:11px;margin-top:8px;margin-bottom:4px;padding:8px 10px}
 .ride-panel:has(.route-issue){max-height:60dvh}
 .ride-panel[data-content=offer].expanded{height:68dvh;max-height:calc(100dvh - 112px)}
}
@media(max-width:760px) and (orientation:landscape){.ride-panel[data-content=offer],.ride-panel:has(.route-issue){max-height:calc(100dvh - 70px)}}
