:root{color-scheme:dark;--bg:#0c151e;--panel:#14212e;--input:#101c28;--border:#2c3c4c;--text:#f1f5f8;--muted:#a5b5c3;--accent:#e5edf1;--ink:#142432;--soft:#1c2d3c;--warning:#edcb96;--danger:#ffb6a8;--vehicle-body:#c7d0d9;--vehicle-tire:#14202c;--vehicle-outline:#ebf1f7;--vehicle-window:#42596c;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.5;background:var(--bg);color:var(--text)}:root[data-theme=light]{color-scheme:light;--bg:#edf2f5;--panel:#fff;--input:#f7fafc;--border:#d8e1e8;--text:#142534;--muted:#5e7283;--accent:#283e50;--ink:#fff;--soft:#edf3f7;--warning:#795624;--danger:#a23d2c;--vehicle-body:#657687;--vehicle-tire:#f0f4f7;--vehicle-outline:#293e52;--vehicle-window:#dde6ed}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.55;cursor:wait}button,a,input,select,summary{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--warning);outline-offset:3px}h1:focus{outline:none}a{color:inherit;text-underline-offset:4px}h1,h2,h3,p{margin:0 0 14px}h1,h2,h3{line-height:1.25;letter-spacing:-.025em}h1{font-size:1.85rem;font-weight:700}h2{font-size:1.05rem;font-weight:650}h3{font-size:.94rem;font-weight:600}fieldset{min-width:0;border:0;padding:0;margin:0}legend{padding:0;font-size:.8rem;font-weight:600;margin-bottom:10px}input,select{display:block;width:100%;max-width:100%;min-width:0;min-height:47px;border:1px solid var(--border);background:var(--input);color:var(--text);border-radius:9px;padding:11px 13px;font-size:16px;line-height:1.35}input[type=checkbox],input[type=radio]{display:inline-block;width:18px;height:18px;min-height:18px;flex-shrink:0;accent-color:#b9cbd6;margin:0}input::placeholder{color:var(--muted);opacity:.8}input[type=date],input[type=time]{min-height:47px;-webkit-appearance:none;appearance:none}input::-webkit-date-and-time-value{text-align:left}select{padding-right:26px}.app{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px max(24px,calc((100vw - 1000px)/2));padding-top:max(17px,env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--bg)}.brand{display:flex;align-items:center;gap:9px;background:none;border:0;padding:0;min-height:40px;font-size:1rem;font-weight:650;letter-spacing:-.025em;white-space:nowrap}.brand svg{width:29px;height:29px}.top-actions{display:flex;align-items:center;gap:15px}.guest-label{border-radius:20px;padding:5px 10px;background:var(--soft);color:var(--muted);font-size:.7rem}.theme-button{min-height:40px;padding:7px 11px;border:1px solid var(--border);border-radius:8px;background:none;font-size:.74rem}.workspace{display:block;max-width:940px;margin:0 auto;padding:0 28px 35px}.stepper{padding:27px 0 26px;border-bottom:1px solid var(--border);margin-bottom:27px}.stepper ol{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:0;margin:0;list-style:none;position:relative}.stepper li{position:relative}.stepper li:not(:last-child):after{content:'';position:absolute;top:15px;left:calc(50% + 18px);width:calc(100% - 36px);height:1px;background:var(--border)}.stepper button{width:100%;display:flex;align-items:center;flex-direction:column;gap:8px;border:0;background:transparent;padding:0 2px;color:var(--muted)}.step-number{width:31px;height:31px;display:flex;justify-content:center;align-items:center;border:1px solid var(--border);border-radius:50%;font-size:.75rem;background:var(--bg);z-index:1}.step-label{font-size:.66rem;line-height:1.3;font-weight:500}.stepper .current button{color:var(--text)}.current .step-number{background:var(--accent);color:var(--ink);border-color:var(--accent);font-weight:700}.visited .step-number{border-color:var(--muted);color:var(--text)}.wizard{max-width:760px;margin:0 auto}.wizard-heading{margin:0 0 24px}.wizard-heading h1{margin-bottom:9px}.wizard-heading>p{font-size:.88rem;color:var(--muted);max-width:560px}.eyebrow{font-size:.65rem;letter-spacing:.11em;font-weight:600;color:var(--muted)}.mobile-progress{display:none}.panel{border:1px solid var(--border);background:var(--panel);border-radius:13px;padding:24px;margin-bottom:18px}.panel>h2{margin-bottom:13px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.section-title h2,.section-title h3{margin:0}.mini-label{font-size:.59rem;color:var(--muted);letter-spacing:.09em;white-space:nowrap}.field{min-width:0;margin-bottom:19px}.field label{display:block;font-size:.8rem;font-weight:500;margin-bottom:7px}.field small,.small{display:block;font-size:.74rem;line-height:1.6;margin:7px 0 12px;color:var(--muted)}.muted{color:var(--muted);font-size:.84rem;line-height:1.65}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field.invalid input{border-color:var(--danger)}.error{font-size:.77rem;color:var(--danger);margin:8px 0}.error-summary{border:1px solid var(--danger);padding:15px 18px;border-radius:9px;margin-bottom:18px;font-size:.8rem}.error-summary ul{margin-bottom:0;padding-left:18px}.notice,.global-banner,.tip{background:var(--soft);border:1px solid var(--border);padding:12px 14px;border-radius:9px;font-size:.77rem;line-height:1.6;color:var(--muted);margin-bottom:18px}.tip{display:flex;align-items:flex-start;gap:10px;border:0;background:none;padding:4px 2px}.tip>span{font-size:1rem}.global-banner{max-width:850px;margin:15px auto}.warning,.warning-text{color:var(--warning)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:46px;border-radius:9px;padding:12px 18px;font-size:.81rem;font-weight:650;line-height:1.4}.primary{background:var(--accent);border:1px solid var(--accent);color:var(--ink);box-shadow:0 3px 12px #00000015}.secondary{background:none;border:1px solid var(--border);color:var(--text)}.text-button{min-height:40px;border:0;background:none;padding:7px 0;font-size:.76rem;color:var(--muted)}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.icon-button{border:1px solid var(--border);background:none;border-radius:8px;min-width:38px;min-height:38px;font-size:1.25rem}.danger{color:var(--danger)}.location{color:var(--text);font-size:.76rem;padding:0;margin-top:-5px;margin-bottom:17px}.location-pair{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);gap:12px;align-items:start}.route-link{align-self:center;color:var(--muted);transform:rotate(-90deg);font-size:1.2rem;padding-bottom:8px}.destination-row{display:flex;gap:10px;align-items:center;min-width:0}.destination-row .address-field{flex:1;min-width:0}.destination-list,.destination-wrap{min-width:0}.address-field{position:relative}.address-control{position:relative}.address-control>svg{position:absolute;top:13px;left:12px;width:19px;height:19px;color:var(--muted);pointer-events:none}.address-control input{padding-left:39px;padding-right:30px}.clear-address{position:absolute;right:2px;top:3px;width:32px;min-height:40px;border:0;background:none;color:var(--muted);font-size:1.15rem}.address-status{display:block;font-size:.69rem;color:var(--muted);margin-top:5px;line-height:1.45}.address-status:empty{display:none}.address-suggestions{position:absolute;top:74px;left:0;right:0;margin:0;padding:5px;list-style:none;border:1px solid var(--border);background:var(--panel);box-shadow:0 16px 40px #0005;border-radius:10px;z-index:10;max-height:260px;overflow:auto}.address-suggestions li{display:flex;align-items:center;gap:9px;font-size:.77rem;padding:12px 9px;min-height:47px;cursor:pointer;border-radius:6px}.address-suggestions li:hover,.address-suggestions li.active{background:var(--soft)}.pin-mini{font-size:1.15rem;color:var(--muted)}.trip-type{margin:0 0 23px}.segmented{display:flex;border:1px solid var(--border);background:var(--input);border-radius:9px;padding:4px;gap:4px}.segmented label{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:40px;padding:7px 9px;font-size:.75rem;border-radius:6px;cursor:pointer}.segmented label.selected{background:var(--soft);color:var(--text);box-shadow:0 1px 4px #0002}.segmented input{width:14px;height:14px;min-height:14px}.date-row{display:flex;align-items:center;gap:15px}.date-icon{font-size:1.8rem;color:var(--muted);padding-bottom:15px}.date-row>.grid{flex:1;min-width:0}.trip-more{margin-top:2px}.trip-more>.grid{margin-top:15px}details{border-top:1px solid var(--border);margin-top:14px;padding-top:6px}summary{min-height:44px;display:list-item;align-content:center;font-size:.78rem;color:var(--muted);cursor:pointer;padding:10px 2px}details[open]>summary{margin-bottom:12px}details>.choices{margin-top:10px}.choices{margin-bottom:22px}.choices legend{font-size:.83rem;margin-bottom:12px}.chips{display:flex;flex-wrap:wrap;gap:9px}.chip{display:flex;align-items:center;gap:8px;min-height:42px;background:var(--input);border:1px solid var(--border);padding:10px 12px;border-radius:8px;font-size:.74rem;cursor:pointer}.chip input{width:15px;height:15px;min-height:15px}.chip.selected{border-color:var(--muted);background:var(--soft)}.choice-symbol:empty{display:none}.interest-choices .chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.interest-choices .chip{min-height:94px;padding:16px 9px 12px;position:relative;flex-direction:column;justify-content:center;gap:10px;text-align:center;font-size:.7rem;line-height:1.35}.interest-choices .chip input{position:absolute;top:9px;right:9px;width:13px;height:13px;min-height:13px}.choice-symbol svg{width:27px;height:27px;display:block}.interest-choices .chip.selected .choice-symbol{color:var(--text)}.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:.8rem;margin:4px 0}.person-row{display:flex;align-items:center;gap:13px;background:var(--input);border:1px solid var(--border);border-radius:11px;padding:15px;margin-bottom:12px}.person-index{display:flex;align-items:center;justify-content:center;border-radius:50%;width:36px;height:36px;flex-shrink:0;background:var(--soft);font-size:.72rem;color:var(--muted)}.person-row .grid{flex:1;min-width:0}.person-row .field{margin-bottom:0}.person-row .icon-button{align-self:center;margin-top:20px}.person-row+.secondary{margin-top:4px;min-height:42px;background:var(--soft);border-style:dashed;width:100%}.pill{font-size:.68rem;background:var(--soft);padding:5px 9px;border-radius:20px;color:var(--muted);white-space:nowrap}.vehicle-list{display:grid;grid-template-columns:1fr;gap:9px}.vehicle-option{display:flex;align-items:center;gap:19px;padding:13px 17px;background:var(--input);border:1px solid var(--border);border-radius:10px;min-height:75px;cursor:pointer}.vehicle-option.selected{border-color:var(--muted);background:var(--soft)}.vehicle-option>span{font-size:.85rem;font-weight:500}.vehicle-option>input{margin-left:auto}.vehicle-icon{width:89px;height:45px;flex-shrink:0}.dimension-box{margin-top:18px;padding-top:22px;border-top:1px solid var(--border)}.limit{margin-bottom:21px;border:0;padding:0}.limit legend{font-size:.84rem;color:var(--text);margin:10px 0 12px}.limit .field{margin-bottom:10px}.limit+.limit{border-top:1px solid var(--border);padding-top:16px}.strategy-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:19px 0}.strategy-card{padding:16px 13px;background:var(--input);border:1px solid var(--border);border-radius:10px}.strategy-symbol{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--soft);border-radius:8px;font-size:1.3rem;margin-bottom:13px}.strategy-card h3{font-size:.8rem;margin-bottom:8px;letter-spacing:0}.strategy-card p{font-size:.73rem;color:var(--muted);line-height:1.6;margin:0}.budget-detail-button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:19px 21px;border:1px solid var(--border);border-radius:12px;background:var(--panel);text-align:left;margin-bottom:18px}.budget-detail-button strong{display:block;font-size:.86rem;font-weight:550}.budget-detail-button small{display:block;margin-top:5px;color:var(--muted);font-size:.72rem}.budget-detail-button>span:last-child{font-size:1.3rem;color:var(--muted)}.panel:has(#budget){padding:30px}.panel:has(#budget)>h2{display:none}.panel:has(#budget) .limit{margin:24px 0}.panel:has(#budget) .limit legend{font-size:.8rem;color:var(--muted)}.panel:has(#budget) .grid.two{grid-template-columns:1fr}.panel:has(#budget) .field:first-child>label{display:none}#budget{font-size:2.8rem;letter-spacing:-.04em;font-weight:650;padding:17px;border:1px solid var(--border);min-height:100px;background:var(--input)}.panel:has(#budget) .field:has(#budget-mode){display:flex;align-items:center;gap:15px;margin-top:12px}.panel:has(#budget) .field:has(#budget-mode)>label{margin:0;white-space:nowrap;font-size:.74rem}#budget-mode{font-size:.78rem;min-height:42px}.budget-summary{display:flex;justify-content:space-between;gap:15px;font-size:.83rem;border-top:1px solid var(--border);padding-top:18px;margin-top:18px}.budget-dialog{width:min(520px,calc(100vw - 28px));max-height:85dvh;overflow:auto;margin:auto;border:1px solid var(--border);border-radius:17px;padding:25px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px #0006}.budget-dialog::backdrop{background:#020810b8;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.dialog-heading .eyebrow{margin-bottom:5px}.dialog-heading h2{margin:0;font-size:1.3rem}.budget-category{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding:13px 0;font-size:.82rem}.category-icon{display:flex;width:30px;height:30px;align-items:center;justify-content:center;background:var(--soft);border-radius:7px;color:var(--muted)}.currency-input{display:flex;align-items:center;gap:6px;margin-left:auto;width:130px;color:var(--muted)}.currency-input input{min-height:42px;font-size:.8rem}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.review-section{border-top:1px solid var(--border);padding:17px 0 5px}.review-section .section-title{margin-bottom:8px}.review-section p{font-size:.78rem;color:var(--muted);margin-bottom:9px;overflow-wrap:anywhere}.review .trip-title{font-size:1.5rem;margin-bottom:22px}.review .eyebrow{margin-bottom:8px}.guest-note{color:var(--muted);font-size:.74rem;line-height:1.65}.wizard-footer{border-top:1px solid var(--border);margin-top:26px;padding-top:20px}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.save-line{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.66rem;margin-top:11px}.save-line .text-button{font-size:.68rem}.site-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:1000px;margin:20px auto 0;padding:20px 28px max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--border);color:var(--muted);font-size:.6rem}.site-footer>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.site-footer a,.site-footer button{font-size:.65rem;min-height:40px;align-content:center}.site-footer>span{align-content:center}.home{max-width:940px;margin:auto;padding:55px 28px 40px}.home-kicker{font-size:.64rem;letter-spacing:.13em;color:var(--muted);margin-bottom:17px}.home h1{font-size:3rem;line-height:1.13;letter-spacing:-.045em;max-width:650px}.home h1 em{font-style:normal;color:var(--muted)}.home-intro{font-size:.92rem;color:var(--muted);max-width:470px;line-height:1.65}.road-art{display:none}.home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin-top:30px}.home-cards .panel{margin:0;padding:26px}.home-cards h2{font-size:1.4rem}.home-cards p:not(.eyebrow){font-size:.82rem;line-height:1.65}.home-cards .small{margin-top:17px;font-size:.72rem!important}.home-cards .primary{margin:8px 0}.home-bottom{padding-top:38px}.home-bottom>h2{font-size:1rem;margin-bottom:20px}.strategy-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.strategy-number{font-size:.69rem;color:var(--muted);display:block;margin-bottom:10px}.strategy-overview h3{font-size:.8rem}.strategy-overview p{font-size:.75rem;color:var(--muted);line-height:1.65}.confirm-box{border:1px solid var(--warning);border-radius:12px;margin:20px 0;padding:20px}.confirm-box p{color:var(--muted);font-size:.8rem}.button-row{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:600px){.topbar{padding:13px 17px;padding-top:max(13px,env(safe-area-inset-top))}.brand{font-size:.91rem;gap:7px}.brand svg{width:25px;height:25px}.top-actions{gap:8px}.guest-label{font-size:.61rem;padding:4px 7px}.theme-button{font-size:.67rem;min-height:37px;padding:6px 9px}.workspace{padding:0 16px 24px}.stepper{padding:23px 0 22px;margin-bottom:23px}.step-number{width:26px;height:26px;font-size:.68rem}.stepper li:not(:last-child):after{top:12px;left:calc(50% + 15px);width:calc(100% - 30px)}.step-label{font-size:.52rem;letter-spacing:-.015em}.stepper button{gap:8px}.wizard-heading{margin-bottom:21px}.wizard-heading h1{font-size:1.6rem;margin-bottom:9px}.wizard-heading>p{font-size:.81rem;line-height:1.65}.panel{padding:19px 16px;border-radius:12px;margin-bottom:16px}.panel h2{font-size:.96rem}.mini-label{font-size:.51rem}.section-title{gap:10px;margin-bottom:18px}.location-pair{display:block}.route-link{display:none}.location-pair .address-field{margin-bottom:17px}.location{margin:0 0 15px}.field{margin-bottom:17px}.field label{font-size:.76rem}.field small{font-size:.69rem}.segmented label{font-size:.66rem;gap:6px;padding:7px 4px;min-height:39px}.segmented input{width:12px;height:12px;min-height:12px}.date-row{gap:0}.date-icon{display:none}.date-row .grid{gap:12px}.date-row input{padding:11px 8px;font-size:14px}.date-row .field label{font-size:.7rem}.grid.two{gap:12px}.grid.three{grid-template-columns:1fr}.grid.two:has(#driving),.grid.two:has(#elapsed){grid-template-columns:1fr}.person-row{gap:10px;padding:13px 10px}.person-index{width:30px;height:30px;font-size:.65rem}.person-row .grid{grid-template-columns:1fr;gap:8px}.person-row .field label{display:none}.person-row .field select{font-size:.77rem;min-height:37px;padding-top:8px;padding-bottom:8px}.person-row .field input{font-size:.84rem;min-height:38px;padding-top:8px;padding-bottom:8px}.person-row .icon-button{border:0;min-width:30px;margin:0}.chips{gap:8px}.chip{font-size:.69rem;padding:9px 10px;min-height:42px}.interest-choices .chips{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.interest-choices .chip{min-height:99px;font-size:.63rem;padding:17px 7px 10px}.choice-symbol svg{width:25px;height:25px}.interest-choices .chip input{top:7px;right:7px;width:12px;height:12px;min-height:12px}.vehicle-option{padding:11px 12px;gap:14px;min-height:73px}.vehicle-icon{width:80px;height:42px}.vehicle-option>span{font-size:.76rem}.vehicle-option input{width:16px;height:16px;min-height:16px}.dimension-box .grid{grid-template-columns:1fr 1fr}.strategy-list{grid-template-columns:1fr;gap:8px;margin:17px 0}.strategy-card{display:flex;align-items:center;gap:13px;padding:13px}.strategy-symbol{margin:0;width:34px;height:34px;flex-shrink:0}.strategy-card h3{font-size:.79rem;margin-bottom:4px}.strategy-card p{font-size:.69rem}.panel:has(#budget){padding:23px 19px}#budget{font-size:2.3rem;min-height:93px}.panel:has(#budget) .field:has(#budget-mode){display:block}.panel:has(#budget) .field:has(#budget-mode)>label{margin:0 0 9px}.panel:has(#budget) .notice{font-size:.72rem}.budget-detail-button{padding:17px}.budget-detail-button strong{font-size:.8rem}.budget-detail-button small{font-size:.66rem}.budget-dialog{padding:21px 18px}.dialog-heading h2{font-size:1.15rem}.budget-category{font-size:.75rem;gap:9px}.currency-input{width:105px}.category-icon{width:25px}.currency-input input{padding:10px 7px}.dialog-actions .primary,.dialog-actions .secondary{flex:1}.footer-actions .primary{font-size:.76rem;padding:12px 14px;gap:12px}.footer-actions .secondary{font-size:.76rem;padding:12px 15px}.wizard-footer{margin-top:24px;padding-top:18px}.notice,.tip{font-size:.71rem}.site-footer{padding:17px 18px;margin-top:6px;gap:5px;display:block}.site-footer>div{gap:15px;margin-top:6px}.site-footer>span{font-size:.57rem}.site-footer a,.site-footer button{font-size:.6rem}.home{padding:37px 20px 28px}.home h1{font-size:2.25rem}.home-intro{font-size:.82rem}.home-kicker{font-size:.56rem}.home-cards{gap:16px;margin-top:25px}.home-cards .panel{padding:22px}.home-cards .primary{width:100%}.home-bottom{padding-top:30px}.strategy-overview{grid-template-columns:1fr;gap:19px}.strategy-overview>div{display:grid;grid-template-columns:26px 1fr;gap:0 10px}.strategy-number{grid-row:span 2;font-size:.7rem;padding-top:2px}.strategy-overview h3{margin-bottom:7px}.strategy-overview p{margin:0}.review .trip-title{font-size:1.3rem}.review-section p{font-size:.73rem}.guest-note{font-size:.7rem}.global-banner{margin:10px 16px}}
@media(prefers-reduced-motion:no-preference){button{transition:background-color .15s,border-color .15s}dialog[open]{animation:appear .15s ease-out}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}
@media(max-width:600px){.wizard-footer{position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--bg);padding:13px 16px max(9px,env(safe-area-inset-bottom));margin:0;box-shadow:0 -8px 18px #00000018}.wizard-footer .save-line{margin-top:7px;justify-content:center;font-size:.58rem}.wizard-footer .save-line button{display:none}.workspace{padding-bottom:115px}.site-footer{padding-bottom:110px}.segmented label:last-child{font-size:.63rem}.panel:has(.interest-choices){padding:18px 13px}}
@media(max-width:600px){.person-row .field label{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}
.hidden{display:none}.field:has(#budget){position:relative}.budget-dollar{position:absolute;top:27px;left:17px;font-size:1.8rem;color:var(--muted);pointer-events:none}#budget{padding-left:47px}#budget::placeholder{font-size:1.25rem;letter-spacing:-.02em;font-weight:400}
.results{max-width:1130px;margin:auto;padding:35px 28px 50px}.results .wizard-heading{margin-bottom:23px}.route-comparison{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:25px 0}.route-choice{border:1px solid var(--border);border-radius:14px;background:var(--panel);padding:22px 20px;display:flex;flex-direction:column}.route-choice-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.route-symbol{font-size:1.6rem;color:var(--muted)}.route-status{font-size:.62rem;border:1px solid var(--border);border-radius:20px;padding:5px 8px;color:var(--warning)}.route-choice h2{font-size:1.15rem;margin-bottom:10px}.route-stop-name{font-size:.79rem;line-height:1.5;min-height:40px;color:var(--muted)}.comparison-metrics{margin:0 0 15px}.comparison-metrics>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:.71rem}.comparison-metrics dt{color:var(--muted);max-width:65%}.comparison-metrics dd{margin:0;text-align:right;font-weight:550}.route-choice>.primary{width:100%;margin-top:auto}.route-choice>.text-button{margin-top:10px;font-size:.69rem}.route-choice.conflict{border-color:var(--warning)}.route-choice.unavailable{opacity:.8}.route-warnings{padding-left:18px;margin:0;font-size:.77rem;color:var(--muted);line-height:1.7}.route-warnings li{margin:0 0 10px}.route-warnings li:last-child{margin-bottom:0}.route-explanation{font-size:.72rem;color:var(--muted);margin-top:12px;line-height:1.6}.route-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.route-map-wrap{border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--panel)}.route-map{width:100%;height:420px}.map-message{font-size:.75rem;padding:12px;margin:0;color:var(--warning)}.route-map-marker{background:#ecf1f4;color:#172635;border:2px solid #142534;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;font:600 12px system-ui}.route-map-marker.stop-marker{background:#f0dba9}.detour-metrics>div{display:flex;justify-content:space-between;gap:12px;font-size:.77rem;padding:10px 0;border-bottom:1px solid var(--border)}.detour-metrics dt{color:var(--muted)}.detour-metrics dd{margin:0}.route-detail-grid a,.nearby-place a{font-size:.73rem}.nearby-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.nearby-place{border:1px solid var(--border);border-radius:10px;padding:15px;background:var(--input)}.nearby-place h3{font-size:.8rem;margin:8px 0}.nearby-place p{font-size:.72rem;color:var(--muted);line-height:1.6}.source-note,.request-details{font-size:.7rem;color:var(--muted);line-height:1.6}.source-note{margin-top:20px}.maplibregl-control-container button{color:#222}.request-details{margin-top:24px}
@media(max-width:700px){.results{padding:26px 16px 35px}.route-comparison{grid-template-columns:1fr;gap:16px}.route-choice{padding:20px}.route-stop-name{min-height:0}.comparison-metrics>div{font-size:.76rem}.route-detail-grid{grid-template-columns:1fr;gap:0}.route-map{height:290px}.nearby-grid{grid-template-columns:1fr}.results .wizard-heading h1{font-size:1.6rem}.results .button-row .primary{flex:1}.route-choice .primary{margin-top:8px}.results .panel{padding:19px 17px}}
/* Working color direction: dark-first with teal actions, amber exploration and warm highlights. */
:root{--accent:#55c5b5;--ink:#082b27;--selected:#173b3d;--route-direct:#55c5b5;--route-off:#f0bc6c;--route-roam:#e5a17f}:root[data-theme=light]{--accent:#196f64;--ink:#fff;--selected:#e3f2ee;--route-direct:#196f64;--route-off:#8c5a0b;--route-roam:#a04f2c}.brand>svg{color:var(--accent)}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.current .step-number{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}.visited .step-number{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.chip.selected{border-color:var(--accent);background:var(--selected)}.chip.selected .choice-symbol{color:var(--accent)}.interest-choices .chip:nth-child(3n+1) .choice-symbol{color:var(--route-direct)}.interest-choices .chip:nth-child(3n+2) .choice-symbol{color:var(--route-off)}.interest-choices .chip:nth-child(3n) .choice-symbol{color:var(--route-roam)}.strategy-card:nth-child(1) .strategy-symbol{background:color-mix(in srgb,var(--route-direct) 15%,var(--panel));color:var(--route-direct)}.strategy-card:nth-child(2) .strategy-symbol{background:color-mix(in srgb,var(--route-off) 15%,var(--panel));color:var(--route-off)}.strategy-card:nth-child(3) .strategy-symbol{background:color-mix(in srgb,var(--route-roam) 15%,var(--panel));color:var(--route-roam)}.person-row:nth-child(3n+1) .person-index{background:#29453f;color:#a9e4d2}.person-row:nth-child(3n+2) .person-index{background:#453d31;color:#f0d2a2}.person-row:nth-child(3n) .person-index{background:#37344d;color:#d3c3f1}.guest-label{color:var(--accent);background:var(--selected)}.route-choice{border-top:3px solid var(--route-direct)}.route-choice:nth-child(2){border-top-color:var(--route-off)}.route-choice:nth-child(3){border-top-color:var(--route-roam)}.route-choice .route-symbol{color:var(--route-direct)}.route-choice:nth-child(2) .route-symbol{color:var(--route-off)}.route-choice:nth-child(3) .route-symbol{color:var(--route-roam)}.route-status{background:color-mix(in srgb,var(--warning) 8%,var(--panel))}.location,.review-section .text-button{color:var(--accent)}.budget-dollar{color:var(--accent)}.tip>span{color:var(--route-off)}.segmented label.selected{color:var(--accent);background:var(--selected)}.vehicle-option.selected{border-color:var(--accent);background:var(--selected)}.notice{border-left:3px solid color-mix(in srgb,var(--accent) 65%,var(--border))}
.route-quick-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;margin:12px 0 22px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.route-quick-metrics dt{font-size:.62rem;color:var(--muted);margin-bottom:6px}.route-quick-metrics dd{font-size:1.15rem;font-weight:600;margin:0;letter-spacing:-.025em}.route-quick-metrics dd>span{font-size:.7rem;font-weight:400;color:var(--muted)}.route-quick-metrics .unknown-cost{font-size:.86rem;padding-top:5px;font-weight:450;color:var(--warning)}.outstanding-checks{padding:10px 20px}.outstanding-checks summary{font-weight:550;color:var(--text);font-size:.8rem}.outstanding-checks[open]{padding-bottom:20px}.route-choice>.small{font-size:.7rem;line-height:1.65}.route-choice .route-explanation .comparison-metrics{margin:13px 0}
.route-outline{padding:17px 20px 0;background:var(--input)}.route-outline>p{font-size:.69rem;color:var(--muted);text-align:left}.route-outline svg{display:block;width:100%;height:280px}.route-map[hidden]{display:none}@media(max-width:700px){.route-outline svg{height:230px}}

.preference-section>summary{font-size:1.2rem;font-weight:650;cursor:pointer;padding:4px 0}.preference-section>summary span{display:block;font-size:.85rem;font-weight:400;color:var(--muted);margin:8px 0 0 20px}.preference-content{padding-top:24px}.preference-details{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.preference-details>summary{cursor:pointer;color:var(--accent);margin-bottom:16px}
