

    :root { --forest:#17372e; --forest2:#244d3c; --ink:#20312b; --muted:#63746d; --line:#e2e9e1; --paper:#f7f8f3; --white:#fff; --lime:#d7f3a3; --orange:#faad77; --shadow:0 8px 30px rgba(25,54,39,.06); }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.6}
    button,input,select{font:inherit}
    button{cursor:pointer}
    .site-header{height:72px;display:flex;justify-content:space-between;align-items:center;padding:0 max(22px,calc((100vw - 1180px)/2));background:#fff;border-bottom:1px solid var(--line)}
    .brand{font-family:system-ui,sans-serif;font-size:23px;font-weight:900;letter-spacing:-1px;color:var(--forest);display:flex;align-items:center;gap:10px}
    .brand-mark{width:33px;height:33px;border-radius:11px;background:var(--forest);color:var(--lime);display:grid;place-items:center;font-size:20px;transform:rotate(-8deg)}
    .header-right{display:flex;align-items:center;gap:12px}
    .top-tag{font-size:11px;letter-spacing:.13em;font-weight:850;color:#557363;border:1px solid #dce5dc;border-radius:99px;padding:5px 12px}
    .header-hint{font-size:12px;color:#65776f}
    .shell{max-width:1180px;margin:0 auto;padding:28px 22px 65px}
    .hero{position:relative;overflow:hidden;border-radius:23px;background:linear-gradient(111deg,#16372e 0%,#204d3b 67%,#2b5941 100%);color:#fff;min-height:246px;padding:37px 44px;display:flex;align-items:center;box-shadow:0 18px 40px rgba(22,55,46,.13)}
    .hero-copy{position:relative;z-index:2;width:70%}
    .eyebrow{font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--lime)}
    h1{font-size:clamp(29px,3.4vw,44px);letter-spacing:-.05em;line-height:1.33;margin:13px 0 13px}
    .hero p{font-size:14px;color:#c5dace;margin:0;line-height:1.9}
    .hero-art{position:absolute;right:-12px;bottom:-40px;width:440px;max-width:54%;height:auto;opacity:.85}
    .round-mark{position:absolute;right:35px;top:28px;width:68px;height:68px;border:1px solid #8dad88;border-radius:50%;display:grid;place-items:center;color:#b2d5a1;font-size:12px;letter-spacing:.07em;transform:rotate(12deg)}
    .quick-note{display:flex;gap:8px;align-items:center;margin:20px 0 24px;color:var(--muted);font-size:12px}
    .dot{width:7px;height:7px;display:inline-block;background:#7daa71;border-radius:50%;flex-shrink:0}
    .main-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);gap:22px;align-items:start}
    .card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:28px}
    .left-stack,.right-stack{display:flex;flex-direction:column;gap:20px;min-width:0}
    .right-stack{position:sticky;top:16px}
    .card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:24px}
    .card-top h2{font-size:19px;letter-spacing:-.035em;line-height:1.4;margin:0}
    .section-sub{font-size:12px;color:var(--muted);margin:5px 0 0}
    .step-no{font-family:system-ui,sans-serif;color:#97aa96;font-size:12px;font-weight:850;letter-spacing:.13em}
    .fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}
    .field{display:flex;flex-direction:column;gap:7px;min-width:0}
    .field.wide{grid-column:1/-1}
    label{font-size:12px;font-weight:780;color:#44574e;display:block}
    .helper{font-size:11px;font-weight:400;color:#88968b}
    input,select{width:100%;height:46px;background:#fbfcf9;border:1px solid #dae4d9;border-radius:11px;color:var(--ink);padding:0 12px;outline:0;transition:border .2s,box-shadow .2s}
    input:focus,select:focus{border-color:#5b9170;box-shadow:0 0 0 3px rgba(93,151,109,.12)}
    input::placeholder{color:#9caaa2}
    input[type=number]{font-variant-numeric:tabular-nums}
    .route-stack{position:relative;margin-top:6px;padding-left:34px;display:flex;flex-direction:column;gap:12px}
    .route-stack:before{content:"";position:absolute;top:23px;bottom:23px;left:12px;border-left:2px dashed #c2d5c3}
    .route-unit{position:relative}
    .route-unit:before{content:"";position:absolute;left:-31px;top:29px;width:18px;height:18px;border:4px solid #e0ebdf;background:var(--forest);border-radius:50%;z-index:1}
    .route-unit.destination:before{background:#efa678;border-color:#f7e1d0}
    .route-unit.via:before{width:12px;height:12px;left:-28px;top:33px;border:3px solid #d2e4d3;background:#629471}
    .via-row{display:flex;align-items:center;gap:8px}
    .via-row input{flex:1;min-width:0}
    .icon-button{width:43px;height:43px;flex-shrink:0;border:1px solid #e1e8df;border-radius:11px;background:#fff;color:#7f9386;font-size:19px;line-height:1}
    .icon-button:hover{background:#fff1e5;color:#b45234}
    .add-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;background:#f3f8ee;color:#335d43;border:1px dashed #b0ceaa;border-radius:10px;margin:15px 0 0 34px;font-size:12px;font-weight:800}
    .add-btn:disabled{opacity:.45;cursor:not-allowed}
    .divider{height:1px;background:var(--line);margin:24px 0}
    .two-col{display:grid;grid-template-columns:1fr 1fr;gap:15px}
    .caption{font-size:12px;color:#849488;margin-top:10px;line-height:1.7}
    .preset-row{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:19px}
    .preset-title{font-size:12px;color:var(--muted);font-weight:750;margin-right:2px}
    .preset{background:#f3f6ef;border:1px solid #dfe9dc;color:#536d57;border-radius:99px;padding:5px 11px;font-size:12px;font-weight:720}
    .preset:hover{background:#e8f4d9;color:#24442e}
    .budget-icon{font-size:16px;margin-right:5px}
    .summary{background:var(--forest);color:#fff;border:0;padding:28px}
    .summary .card-top h2{color:#fff}
    .summary .card-top{margin-bottom:13px}
    .summary .section-sub{color:#b7d1c2}
    .route-preview{border-radius:13px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);padding:16px 17px;margin:10px 0 20px}
    .route-label{font-size:11px;color:#c5d8c7;letter-spacing:.07em;margin-bottom:10px}
    .stops{list-style:none;padding:0;margin:0}
    .stop{position:relative;display:flex;gap:11px;align-items:flex-start;padding:0 0 12px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
    .stop:last-child{padding-bottom:0}
    .stop:not(:last-child):after{content:"";position:absolute;left:5px;top:13px;bottom:0;border-left:1px dashed #85a58b}
    .pin{width:11px;height:11px;border-radius:50%;background:var(--lime);flex-shrink:0;margin-top:3px;border:2px solid #376147;position:relative;z-index:1}
    .stop:last-child .pin{background:var(--orange)}
    .sum-heading{display:flex;justify-content:space-between;color:#d1e0d3;font-size:12px;padding:4px 0 10px}
    .sum-line{display:flex;justify-content:space-between;gap:14px;padding:10px 0;font-size:13px;border-bottom:1px solid rgba(255,255,255,.13)}
    .sum-line span:first-child{color:#c3d4cb}
    .sum-line strong{font-variant-numeric:tabular-nums}
    .total-area{padding:18px 0 20px}
    .total-label{font-size:13px;color:#c1d6c6}
    .total-number{font-size:43px;font-weight:900;letter-spacing:-.045em;line-height:1.3;font-family:system-ui,sans-serif}
    .total-number small{font-size:18px;font-weight:700;margin-left:5px}
    .btn-primary{display:flex;width:100%;justify-content:center;align-items:center;gap:10px;height:53px;border-radius:13px;background:var(--lime);color:#1d4331;font-size:14px;font-weight:850;border:none;transition:transform .16s,background .16s}
    .btn-primary:hover{background:#e5ffb8;transform:translateY(-1px)}
    .btn-primary:disabled{background:#90a395;color:#d8e0d8;cursor:not-allowed;transform:none}
    .btn-light{width:100%;min-height:43px;border:1px solid #dfe6da;background:#fff;border-radius:11px;color:#345243;font-size:12px;font-weight:800}
    .btn-light:hover{background:#f4f8ef}
    .tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
    .summary .small-note{font-size:11px;line-height:1.7;color:#adbfaf;margin-top:13px}
    .help-card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:19px 22px}
    .help-card h3{font-size:14px;margin:0 0 8px}
    .help-card p{font-size:12px;color:var(--muted);margin:0;line-height:1.85}
    .help-card .state{margin-top:13px;display:flex;align-items:center;gap:8px;color:#4b765b;font-size:12px}
    .footer{max-width:1180px;padding:0 22px 35px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:#859387;font-size:11px}
    #toast{position:fixed;z-index:50;bottom:22px;left:50%;transform:translate(-50%,18px);color:#fff;background:#1c3a2d;box-shadow:0 10px 40px #1c3a2d30;border-radius:14px;padding:12px 20px;font-size:13px;max-width:min(90vw,480px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;text-align:center}
    #toast.show{opacity:1;transform:translate(-50%,0)}
    .hidden{display:none!important}
    @media(max-width:820px){.main-grid{grid-template-columns:1fr}.right-stack{position:static}.hero{min-height:220px}.hero-copy{width:100%}.hero-art{max-width:49%;opacity:.35}.round-mark{display:none}}
    @media(max-width:550px){.site-header{height:63px;padding:0 16px}.brand{font-size:20px}.top-tag{font-size:9px;padding:5px 9px}.header-hint{display:none}.shell{padding:16px 12px 32px}.hero{padding:28px 25px;border-radius:17px;min-height:221px}.hero h1{font-size:30px}.hero p{font-size:12px}.quick-note{padding:0 5px;line-height:1.6}.card{padding:21px 18px;border-radius:15px}.card-top h2{font-size:17px}.fields,.two-col{gap:12px}.summary{padding:23px 21px}.route-stack{padding-left:30px}.add-btn{margin-left:30px}.footer{padding:0 18px 32px}.hero-art{right:-75px;width:380px;max-width:80%;opacity:.19}}
    @media print{body{background:#fff}.site-header,.hero,.quick-note,.left-stack,.help-card,.footer,.summary button,.summary .small-note{display:none!important}.shell{padding:0}.main-grid{display:block}.right-stack{position:static}.summary{background:#fff;color:#111;padding:0}.summary .card-top h2,.summary .section-sub,.summary .sum-line span:first-child,.summary .sum-heading,.summary .total-label,.summary .route-label,.summary .small-note{color:#111}.route-preview{background:#fff;border:1px solid #ddd}.sum-line{border-bottom:1px solid #ddd}.route-preview .stop:after{border-color:#aaa}.summary .total-number{color:#111}}
    .route-tools{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:12px}
    .ghost-chip{padding:7px 11px;border:1px solid #dce8d9;border-radius:20px;background:#f5f8f1;color:#44664d;font-weight:720;font-size:12px;cursor:pointer}
    .ghost-chip:hover{background:#e4f0d9}
    .soft-strip{background:#f5f8f3;border:1px solid #e5ecdf;border-radius:13px;padding:13px 14px;margin-top:15px}
    .soft-strip-title{font-size:12px;font-weight:800;color:#4e6b55;margin-bottom:9px}
    .config-banner{margin:14px 0 0;padding:14px;background:#f7f9f3;border:1px solid #dce9d8;border-radius:13px}
    .config-banner summary{font-size:13px;font-weight:850;cursor:pointer;color:#335c42;outline-offset:5px}
    .api-fields{display:flex;gap:8px;margin-top:10px}
    .api-fields input{flex:1;min-width:0}
    .api-fields button{width:110px;flex-shrink:0}
    .api-status{margin:8px 0 0;color:#67796a;font-size:11px;line-height:1.6}
    .small-link{color:#36714e;font-size:12px;text-underline-offset:3px}
    .route-action{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:12px}
    .action-green{background:#eaf7d7;border:1px solid #c1dfaa;color:#31543b;border-radius:11px;font-size:13px;font-weight:850;padding:11px 15px;min-height:44px}
    .action-green:hover{background:#dbf1bc}
    .action-green:disabled{cursor:wait;opacity:.6}
    .distance-tag{font-size:11px;color:#577760;font-weight:700}
    .chip-group{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}
    .toggle-row{display:flex;align-items:center;gap:9px;font-weight:730;color:#3f5947;font-size:12px;cursor:pointer}
    .toggle-row input{width:16px;height:16px;accent-color:#325c46}
    .switches{display:flex;flex-wrap:wrap;gap:16px;margin:12px 0 0}
    .bike-field{position:relative}
    .bike-suggestions{position:absolute;top:100%;left:0;right:0;z-index:20;max-height:275px;overflow:auto;background:white;border:1px solid #c7ddc6;border-radius:11px;box-shadow:0 16px 30px #26382924;padding:4px;margin:5px 0 0;list-style:none}
    .bike-suggestions li{margin:0}
    .bike-choice{width:100%;background:white;border:0;border-radius:8px;padding:9px 11px;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:10px;font-size:13px;color:#25382f}
    .bike-choice:hover,.bike-choice:focus{background:#edf5e6}
    .bike-choice small{font-size:10px;color:#5c8067;white-space:nowrap}
    .bike-count{margin:5px 0 2px;font-size:11px;color:#617765}
    .field-tip{font-size:11px;color:#738578;line-height:1.6}
    .dist-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
    .status-alert{color:#a3572c!important}
    .low-label{font-size:11px;color:#9fada1;font-weight:550}
    @media(max-width:550px){.api-fields{flex-direction:column}.api-fields button{width:100%}.switches{gap:10px}.route-action{align-items:stretch}.route-action button{width:100%}}
    .place-holder{display:none;margin-top:8px}
    .place-holder.visible{display:block}
    .place-holder gmp-place-autocomplete{display:block;width:100%;min-height:48px;color-scheme:light;--gmpx-color-surface:#fbfcf9}
    .place-holder .selected{display:block;margin-top:7px;color:#426a50;font-size:11px;word-break:break-all}
    .place-note{display:block;margin-top:5px;color:#768a7c;font-size:11px}
    .place-field.has-places .manual-place{display:none}
    .fuel-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:7px}
    .micro-btn{background:#f3f8ee;border:1px solid #d2e2c8;padding:5px 10px;border-radius:9px;color:#416c4e;font-size:11px;font-weight:800}
    .source-link{font-size:11px;color:#376d4a;text-decoration:underline;text-underline-offset:2px}
    .field-compact{margin-top:13px}
    .inline-options{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:9px}
    .inline-options label{display:inline-flex;align-items:center;gap:6px;font-weight:650}
    .inline-options input[type=checkbox]{width:17px;height:17px;accent-color:#315b42}
    .inline-options select{width:auto;max-width:170px;height:35px;font-size:12px}
    .indicator{background:#eff4e9;border-radius:9px;padding:8px 11px;color:#4f6a53;font-size:11px;margin-top:7px}
    .notice-orange{background:#fff7ec;border:1px solid #f2dfc1;padding:10px;border-radius:9px;font-size:11px;color:#7e5b31;margin-top:9px}
    .bike-field #bikeMaker{height:39px;font-size:12px}
    .tooltip-hint{font-size:11px;color:#798b7d}
    @media print {.place-holder,.fuel-row,.inline-options,.notice-orange{display:none!important}}

  
/* v0.4 */
:root {--forest:#153a30;--lime:#def4b1;}
.badge-free{background:#e8f5df;color:#325a37;border-radius:99px;padding:4px 11px;font-size:11px;font-weight:800;letter-spacing:.04em}
.local-alert{display:flex;gap:10px;align-items:flex-start;border:1px solid #d7e6d1;background:#eef8e9;border-radius:12px;padding:12px 13px;color:#3c6744;font-size:12px;margin:14px 0;line-height:1.7}
.mini-note{font-size:11px;color:#788a7f;line-height:1.7}
.suggestion-wrap{position:relative}
.suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #cbdbc9;border-radius:12px;box-shadow:0 14px 35px #172d2730;z-index:25;max-height:248px;overflow:auto;padding:5px;list-style:none;margin:0}
.suggestions li button{width:100%;text-align:left;border:0;background:#fff;border-radius:8px;padding:9px 11px;display:block;color:var(--ink);font-size:12px;line-height:1.5;cursor:pointer}
.suggestions li button:hover,.suggestions li button:focus{background:#ebf4e7;outline:0}
.suggestions li button small{display:block;font-size:10px;color:#7a8d7b;font-weight:400}
.status-chip{font-size:11px;color:#64776a;display:inline-flex;align-items:center;gap:5px;background:#f1f6ed;border-radius:8px;padding:4px 9px;margin-top:5px}
.status-chip.good{color:#2a733f;background:#e9f7e7}
.status-chip.warn{color:#a1692e;background:#fff3df}
.inline-help{font-size:11px;color:#8a998d}
.action-green{background:var(--forest);color:#f4ffde;border:0;border-radius:12px;padding:13px 17px;font-weight:850;min-height:47px;font-size:13px;width:100%}
.action-green:hover{background:#24523f}
.action-green:disabled{opacity:.55;cursor:not-allowed}
.action-outline{background:#fff;color:#24583b;border:1px solid #bdd3be;border-radius:11px;padding:10px 15px;font-size:12px;font-weight:850;cursor:pointer}
.field input[type=checkbox]{width:17px;height:17px;accent-color:#346146}
.switches{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
.switches label{display:inline-flex;gap:7px;align-items:center;font-weight:700;cursor:pointer}.switches input[type=checkbox]{width:17px;height:17px;accent-color:#346146;flex-shrink:0;box-shadow:none}
.config-banner{border:1px solid #d5e6d1;background:#f4f9ef;padding:13px 15px;border-radius:12px;margin-top:14px}
.config-banner summary{font-weight:840;font-size:13px;cursor:pointer}
.api-fields{display:flex;gap:8px;align-items:center;margin-top:9px}
.api-fields input{min-width:0;flex:1}
.api-fields button{width:auto;min-width:100px;height:46px;flex-shrink:0}
.local-switch{margin:9px 0;font-size:12px;display:flex;gap:8px;align-items:center}
.local-switch input{width:auto;height:auto;accent-color:#346146}
.route-action{margin:15px 0}
.info-result{font-size:12px;color:#4c7158;background:#f4f8ed;border-radius:9px;padding:9px 11px;margin-top:8px;line-height:1.6}
.info-result.warn{background:#fff4e8;color:#94643b}
.input-row{display:flex;gap:8px;align-items:center}
.input-row input{flex:1;min-width:0}
.input-row button{flex-shrink:0;min-height:43px;border:1px solid #e4eae1;border-radius:10px;background:#f4f8ef;color:#376342;font-size:12px;font-weight:750;padding:0 11px}
.no-border{border:0;background:transparent;padding:0;color:#506c56;text-decoration:underline;cursor:pointer;font-size:11px}
#vehicleMenu{max-height:210px}
#viaContainer .route-unit{margin-bottom:12px}
#viaContainer .input-row .field{flex:1;min-width:0}
#costSource{font-size:12px;color:#c5d9c3;margin-top:7px}
#routeMetrics{font-size:12px;color:#e5f6c9;margin-top:-8px;margin-bottom:12px}
#totalCaveat{margin-top:5px;font-size:11px;color:#c0d3c2;line-height:1.5}
#tool-note a{color:#386b47;text-decoration:underline}
#toast{z-index:70}
@media(max-width:550px){.hero{min-height:210px}.hero-copy{width:100%}.api-fields{flex-direction:column}.api-fields input,.api-fields button{width:100%}.tool-grid{grid-template-columns:1fr 1fr}.fields{gap:12px}.fields .field.wide{grid-column:1/-1}.local-alert{font-size:11px}}
@media print{.config-banner,.preset-row,.tool-grid,.switches,#addVia,.route-action,#resetButton,.help-card{display:none!important}.main-grid{display:block}.right-stack{position:static}.summary{break-inside:avoid}}


/* RIDENOTE v0.6 — offline estimates; no mapping API */
:root{--forest:#15382f;--lime:#dcf1ab;--warm:#f0a973;}
body{background:#f6f8f4}
.site-header{height:69px}
.brand-mark{transform:rotate(-8deg)}
.quick-note{background:#eaf4e6;border:1px solid #d9e8d6;padding:13px 17px;border-radius:14px;line-height:1.65;margin:19px 0 23px;color:#42674b}
.free-pill{font-size:11px;font-weight:850;background:#d8efc6;color:#254b37;padding:6px 10px;border-radius:30px}
.btn-map{background:#e8f5cf;color:#224534;border:1px solid #bcd5ad;border-radius:11px;padding:12px 16px;min-height:48px;font-weight:800;font-size:13px;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-map:hover{background:#dff3b7}
.eyebrow{color:#d7f1a9}
.hero{min-height:224px}
.hero-copy{width:80%}
.notice{font-size:11px;line-height:1.7;color:#7b6447;background:#fff6e9;border:1px solid #f2dfc0;border-radius:11px;padding:11px 13px;margin:14px 0 0}
.note-green{background:#edf7e7;color:#42654b;border-color:#d8e9d4}
.card-top{margin-bottom:19px}
.field.small-label label{font-weight:700}
.two-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.chipbar{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0 4px}
.pill-button{border:1px solid #d8e4d5;background:#f4f7f0;color:#45654c;font-size:12px;font-weight:750;border-radius:22px;padding:7px 12px;cursor:pointer}
.pill-button:hover,.pill-button.selected{background:#dff1cb;color:#244a33;border-color:#a9d08e}
.option-group{display:flex;gap:9px;flex-wrap:wrap;margin-top:9px}
.option{flex:1;min-width:95px;display:flex;align-items:center;justify-content:center;text-align:center;gap:7px;border-radius:12px;border:1px solid #d7e5d5;background:#fafcf8;color:#4a624f;cursor:pointer;padding:11px 8px;min-height:46px;font-size:12px;font-weight:800}
.option.active{border-color:#4f9164;background:#e9f5dd;color:#275339;box-shadow:0 0 0 2px #b5dca43d}
.line-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;color:#476451;font-size:12px;font-weight:800}
#highwayShare{width:100%;accent-color:#3c7955;height:auto;margin:8px 0}
.help-label{color:#75877b;font-size:11px;margin-top:7px;line-height:1.7}
.toll-breakdown{margin-top:13px;padding:13px;border:1px solid #dce8d9;background:#f6faf2;border-radius:12px;font-size:12px;color:#45674e;line-height:1.85}
.toll-breakdown strong{color:#214832}
#tollManualArea{margin-top:15px}
.sep{height:1px;background:#e5eae2;margin:20px 0}
.status-tag{display:inline-flex;align-items:center;gap:6px;border-radius:8px;padding:4px 9px;font-size:11px;font-weight:760;color:#477655;background:#edf7e7;margin-top:6px}
.status-tag.warning{background:#fff1e3;color:#935d36}
.with-button{display:flex;gap:8px;align-items:center}
.with-button button{white-space:nowrap;padding:10px 13px;background:#f2f7ec;color:#38624b;border:1px solid #d0e1c9;border-radius:10px;font-weight:800;font-size:12px}
.with-button input{flex:1;min-width:0}
.route-action{margin-top:17px}
.route-note{font-size:11px;line-height:1.7;color:#74877a;margin-top:9px}
#bikeMaker{margin-bottom:8px;font-size:12px}
#vehicleMenu{z-index:40}
#vehicleMenu button{font-size:13px}
#vehicleMenu small{font-size:10px;color:#799082}
.summary{top:16px;position:relative}
.sum-line strong{text-align:right}
#tollResult small{font-size:10px;font-weight:500;display:block;color:#b5cbbb}
.kpi-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}
.kpi-cell{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);padding:13px;border-radius:12px}
.kpi-cell .num{font-size:21px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1.3}
.kpi-cell .desc{font-size:10px;color:#c8dccd;margin-top:3px}
#routePreview{max-height:210px;overflow:auto}
.under-total{font-size:11px;color:#e4f3ce;line-height:1.8;margin-top:6px}
.hint-link{color:#3d7650;text-underline-offset:3px}
#toast{z-index:100}
.mini-banner{display:flex;gap:11px;background:#f3f8ee;border:1px solid #e0ebd9;border-radius:12px;padding:12px;font-size:12px;color:#496c51;margin-top:12px}
button:focus-visible,input:focus-visible{outline:3px solid #96c183;outline-offset:2px}
@media(max-width:550px){.hero-copy{width:100%}.top-tag{display:none}.card{padding:20px 17px}.free-pill{font-size:10px}.kpi-mini{grid-template-columns:1fr 1fr}.sum-line{font-size:12px}.two-buttons{grid-template-columns:1fr 1fr}.option{min-width:85px}.hero h1{font-size:31px}}
@media print{.hero,.site-header,.quick-note,.left-stack,.tool-grid,.help-card,#resetButton,.summary button,.footer{display:none!important}.main-grid{display:block}.shell{padding:0}.summary{background:white;color:black}.summary *{color:black!important}.summary .route-preview{background:white;border:1px solid #aaa}}

/* v0.6 | route-aware toll discount controls */
.discount-module{margin:17px 0 0;border:1px solid #d9e4d6;border-radius:15px;padding:16px;background:#f9fcf6}
.discount-title{display:flex;gap:10px;align-items:center;justify-content:space-between;font-weight:900;font-size:14px;color:#294f3a}
.discount-muted{font-size:10px;color:#6d8874;font-weight:650}
.etc-main{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:12px 13px;border:1px solid #a8cda4;background:#eaf6df;border-radius:12px;cursor:pointer}
.etc-main input{width:19px;height:19px;accent-color:#367b4a;margin-top:3px;flex-shrink:0}
.etc-main strong{display:block;font-size:13px;color:#254a32}
.etc-main small{display:block;color:#64816b;font-size:10.5px;line-height:1.55;margin-top:3px}
.leg-options{margin-top:14px}
.leg-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}
.leg-heading strong{font-size:13px;color:#2f5c41}
.leg-heading span{font-size:10px;color:#819185}
.discount-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.discount-option{cursor:pointer;display:flex;gap:7px;align-items:center;border:1px solid #d8e3d5;border-radius:10px;padding:11px 9px;background:white;font-size:12px;font-weight:750;color:#3c5f47;transition:background .15s,border-color .15s}
.discount-option:has(input:checked){border-color:#438454;background:#e0f3db;color:#244d32}
.discount-option:has(input:disabled){opacity:.48;cursor:not-allowed}
.discount-option input{flex-shrink:0;accent-color:#33844b;width:17px;height:17px}
.discount-option b{display:block;font-size:10px;color:#3f8860;margin:4px 0 0}
.discount-conditions{font-size:11px;line-height:1.85;color:#647a66;background:#eff6e9;border-radius:9px;padding:10px 12px;margin:13px 0 0}
.discount-links{display:flex;flex-wrap:wrap;gap:14px;margin:9px 0 0;font-size:11px}
.discount-links a{color:#3b7454;text-underline-offset:3px}
.discount-alert{margin-top:13px;padding:9px 12px;background:#fff3df;border:1px solid #f0e0c4;border-radius:9px;color:#8d633e;font-size:11px;line-height:1.75}
.discount-alert.good{background:#eaf6e5;border-color:#d6e7d0;color:#386148}
.distance-more{margin-top:13px;border:1px solid #e0e9db;padding:12px 13px;border-radius:11px;background:#fafdf8}
.distance-more summary{font-weight:770;font-size:12px;color:#486a51;cursor:pointer}
.fare-advanced select{width:100%;padding:12px;border-radius:10px;border:1px solid #d5e3d0;background:#fff;font:inherit;color:#314b35}
#discountSummaryRow{color:#cbe8bc}
#discountSummaryRow strong{color:#ddffc5}
@media(max-width:480px){.discount-grid{grid-template-columns:1fr}.discount-title,.leg-heading{align-items:flex-start;flex-direction:column}}

/* v0.7 : multi-stop route planning */
.via-count-row{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin:8px 0 3px 34px;font-size:11px;color:#708a77}
#viaCount{font-weight:850;color:#306044}
.via-input-line{display:flex;align-items:center;gap:8px}
.via-input-line input{min-width:0;flex:1}
.via-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}
.via-reorder{width:34px;height:40px;display:inline-grid;place-items:center;background:#f1f7ed;border:1px solid #d8e7d3;border-radius:10px;font-weight:900;font-size:16px;color:#2d6243;cursor:pointer}
.via-reorder:disabled{opacity:.25;cursor:default}
.via-delete{height:40px;min-width:49px;border:1px solid #eddfd9;border-radius:10px;background:#fff8f4;color:#9a614b;font-weight:750;font-size:12px;padding:0 7px;cursor:pointer}
.map-segment-area{margin-top:12px}
.map-segment-head{background:#f0f6ec;color:#315b3d;padding:10px 12px;border-radius:11px;font-size:12px;font-weight:850}
.map-segment-help{font-size:11px;color:#687c70;line-height:1.8;margin:8px 2px}
.map-segment-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.map-segment-btn{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:49px;background:white;border:1px solid #c9dfc7;border-radius:11px;padding:10px 11px;text-align:left;color:#2f6143;font-weight:750;font-size:12px;cursor:pointer;gap:10px}
.map-segment-btn:hover{background:#ebf7e7}
.map-segment-btn span{font-size:11px;color:#698271;min-width:21px}
.via-limit-notice{color:#916f3e;font-size:11px;margin:6px 0 0 34px}
@media(max-width:550px){.via-input-line{align-items:stretch;flex-direction:column}.via-actions{justify-content:flex-end}.via-reorder{width:43px;height:35px}.via-delete{height:35px}.via-count-row{margin-left:33px}}
@media print{.via-count-row,.map-segment-area,.via-actions{display:none!important}}
/* v0.10: long Google Maps route URL only (short links unsupported) */
.url-import{margin:4px 0 18px;background:linear-gradient(135deg,#f0f8eb,#fff);border:1px solid #cfe2c9;border-radius:16px;padding:16px 17px}
.url-import-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.url-import-header strong{font-size:14px;color:#244b32}
.url-import-header span{font-size:10px;color:#386a4a;font-weight:800;background:#def1d6;padding:4px 8px;border-radius:20px}
.url-import p{font-size:11px;color:#6a806f;line-height:1.65;margin:3px 0 10px}
.url-import-input{display:flex;gap:9px}
.url-import-input input{min-width:0;flex:1;background:#fff;font-size:12px}
.url-import-input button{flex-shrink:0;background:#234f37;border:0;color:white;padding:0 16px;border-radius:10px;font-weight:850;font-size:12px;min-height:46px}
.url-import-result{font-size:12px;line-height:1.6;margin-top:10px;border-radius:9px;padding:9px 10px;background:#e7f5df;color:#275b39}
.url-import-result.error{background:#fff0dd;color:#8f582e}
.url-import-result:empty{display:none}
.url-import-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:9px}
.url-import-footer a,.url-import-footer button{font-size:11px;color:#42694f}
.url-import-footer button{background:transparent;border:0;text-decoration:underline;text-underline-offset:2px;padding:2px 0;cursor:pointer}
@media(max-width:550px){.url-import-input{flex-direction:column}.url-import-input button{min-height:45px}.url-import{padding:13px 12px}}
/* Clear warning: long URLs only. No redirects, proxies, or Maps APIs. */
.url-warning{margin:12px 0 14px;padding:13px 14px;background:#fff4df;border:1px solid #f0c68c;border-left:4px solid #dc8d35;border-radius:11px;color:#744914;font-size:12px;line-height:1.8}
.url-warning strong{display:block;font-size:13px;color:#874515;margin-bottom:3px}
.url-warning code{font-size:11px;font-weight:750;color:#8c4a1b;overflow-wrap:anywhere}
.url-howto{margin-top:10px;border-top:1px solid #e1e9dc;padding-top:10px}
.url-howto summary{color:#335d43;font-weight:800;font-size:12px;cursor:pointer;list-style-position:inside}
.url-howto ol{margin:8px 0 2px 14px;padding-left:11px;font-size:12px;color:#526c57;line-height:1.85}
.url-howto strong{color:#284c36}
@media print{.url-import{display:none!important}}

/* v0.11: local-first suggested places */
.smart-suggestions{padding:16px 16px 12px}
.smart-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:10px}
.smart-head .soft-strip-title{margin-bottom:2px;font-size:13px;color:#27523a}
.smart-caption{font-size:12px;margin:0;color:#536d5c;line-height:1.6}
.offline-pill{background:#e4f2de;color:#376647;padding:5px 9px;border-radius:30px;white-space:nowrap;font-size:10px;font-weight:800}
.smart-region-label{font-size:12px}
#suggestionRegion{height:40px;margin:5px 0 8px;font-size:13px;background:#fff}
.smart-origin-label{font-size:12px;font-weight:850;color:#496b52;margin:9px 0 7px}
#quickOriginChips .ghost-chip{background:#fff}
.spot-suggestions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.spot-suggestion{display:flex;flex-direction:column;gap:8px;min-width:0;background:#fff;border:1px solid #dcead6;border-radius:12px;padding:10px}
.spot-name{font-size:13px;color:#2b4936;font-weight:850;overflow-wrap:anywhere}
.spot-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto}
.spot-actions button{flex:1 1 auto;border:1px solid #cbdac7;border-radius:9px;min-height:35px;padding:6px 7px;background:#f2f7ed;color:#356348;font-size:11px;font-weight:800}
.spot-actions .add-spot{background:#fff}
.spot-actions button:focus-visible,#quickOriginChips button:focus-visible{outline:2px solid #407e53;outline-offset:2px}
.smart-disclaimer{color:#75857a;font-size:10px;line-height:1.7;margin:12px 0 0}
.smart-empty{color:#697d70;background:#fff;border:1px dashed #ccdcca;border-radius:10px;padding:10px;font-size:12px;grid-column:1 / -1}
@media(max-width:550px){.smart-suggestions{padding:14px 11px}.smart-head{gap:7px}.offline-pill{font-size:9px}.spot-suggestions{grid-template-columns:1fr 1fr;gap:7px}.spot-suggestion{padding:9px}.spot-actions{flex-direction:column}.spot-actions button{width:100%}}
@media print{.smart-suggestions{display:none!important}}

/* ==============================================
   SKY GARAGE READABLE / UX-FIRST (A) — final theme
   Friendly garage palette, large readable forms
   ============================================== */
:root{--forest:#5e4937;--forest2:#775a40;--ink:#352d27;--muted:#766b60;--line:#e6d9ca;--paper:#f7f2e9;--white:#fffdfa;--lime:#f4c879;--orange:#eaae76;--shadow:0 8px 28px rgba(67,43,22,.045)}
html{scroll-padding-top:28px}
body{background:#f7f2e9;color:#352d27;line-height:1.65;font-size:15px;min-width:320px}
.site-header{background:#fffcf6;border-bottom:1px solid #eadfce;height:68px;padding:0 max(20px,calc((100vw - 1160px)/2))}
.brand{color:#523a29;letter-spacing:-.03em;font-weight:880;font-size:24px}
.brand-mark{background:#5f4636;color:#ffd78b;transform:rotate(-6deg);border-radius:12px;width:35px;height:35px}
.header-hint{color:#7b6755;font-size:13px}
.free-pill,.top-tag{background:#fff0d0;color:#795021;border:1px solid #f0d4a0;border-radius:999px;letter-spacing:0;font-size:12px}
.shell{max-width:1160px;padding:23px 20px 60px}
.hero{min-height:210px;padding:33px 39px;border-radius:24px;background:linear-gradient(122deg,#584131,#75543b 70%,#8a6848);box-shadow:none;border:1px solid #8a6b4f}
.hero-copy{width:81%}
.eyebrow{color:#ffe1ab;font-weight:800;letter-spacing:.1em;font-size:12px}
.hero h1{margin:8px 0 11px;letter-spacing:-.05em;font-size:clamp(30px,3.6vw,42px);font-weight:850;line-height:1.3;color:#fff9f0}
.hero p{color:#f5e5d6;font-size:14px;line-height:1.85}
.hero-art{opacity:.26;filter:sepia(1) saturate(.4)}
.quick-note{background:#fff9ef;border:1px solid #e5d5be;border-left:5px solid #dda85f;border-radius:14px;color:#655140;padding:12px 16px;font-size:13px;line-height:1.8;margin:17px 0 17px}
.quick-note .dot,.help-card .dot{background:#c48c46}
.jump-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 20px}
.jump-nav a{border:1px solid #e9dccb;background:#fffcf7;text-decoration:none;color:#634d3d;font-weight:800;border-radius:11px;padding:10px 12px;font-size:13px;display:inline-flex;align-items:center;gap:6px;min-height:43px}
.jump-nav a span{color:#b6814d;font-size:11px}
.jump-nav a:hover{background:#fff0d8}
.jump-nav .jump-total{margin-left:auto;background:#5d4635;color:#fff9ef;border-color:#5d4635}
.main-grid{grid-template-columns:minmax(0,1.14fr) minmax(345px,.86fr);gap:20px;align-items:start}
.left-stack,.right-stack{gap:18px}
.card,.help-card{background:#fffdf9;border:1px solid #e7dccc;border-radius:20px;padding:25px;box-shadow:0 4px 15px rgba(82,59,31,.035)}
.right-stack{top:14px}
.card-top{margin-bottom:20px;gap:10px;align-items:center}
.card-top h2{font-size:21px;color:#3d3025;letter-spacing:-.025em;font-weight:850}
.section-sub,.help-card p,.caption,.helper,.route-note,.help-label,.mini-note,.field-tip{color:#71675c;line-height:1.75}
.section-sub{font-size:13px;margin-top:5px}
.step-no{background:#fff0d5;color:#805734;padding:4px 9px;border-radius:999px;font-size:11px;letter-spacing:0;font-weight:850;flex-shrink:0}
label,.line-label,.smart-region-label{font-size:14px;color:#574435;font-weight:800}
.helper{font-size:12px;font-weight:500}
.field{gap:7px}
.fields,.two-col{gap:15px}
input:not([type=checkbox]):not([type=range]),select{height:51px;background:#fffdfa;border:1.5px solid #d9c9b7;border-radius:11px;color:#342b25;padding:0 13px;font-size:16px;line-height:1.4;box-shadow:none}
input::placeholder{color:#8d8175;opacity:1}
input:focus,select:focus{outline:3px solid rgba(219,163,79,.25);outline-offset:0;border-color:#b57e39}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bf8642;outline-offset:3px}
button{font-size:14px;touch-action:manipulation}
.preset,.pill-button,.ghost-chip{background:#fff5e4;color:#755331;border:1px solid #dfc39a;border-radius:999px;font-weight:800;min-height:42px;padding:8px 13px;font-size:13px}
.preset:hover,.pill-button:hover,.pill-button.selected{background:#f6dba8;color:#503820;border-color:#b8874e}
.preset-row{gap:8px}
.preset-title{font-size:13px;color:#76685d}
.url-import{background:#fffaf1;border:1px solid #e4cfae;border-radius:16px;padding:18px;margin:2px 0 20px}
.url-import-header strong{color:#62462c;font-size:15px}
.url-import-header span{background:#fbe7c8;color:#775227;font-size:11px}
.url-import p{font-size:13px;color:#685948;line-height:1.75}
.url-import-input input{font-size:15px;background:#fff}
.url-import-input button{background:#604737;color:#fff;min-height:51px;padding:0 18px;border-radius:11px;font-size:14px}
.url-warning{background:#fff3df;border:1px solid #e6c89e;border-left:4px solid #d19d57;color:#674a2c;border-radius:12px;padding:10px 13px;font-size:12px;line-height:1.8}
.url-warning strong{color:#825021;font-size:13px}
.url-warning code{color:#855122}
.url-howto summary{font-size:14px;color:#69462a;padding:5px 0}
.url-howto ol{font-size:13px;line-height:1.85;color:#5c4a3a}
.url-howto strong{color:#5a3822}
.url-import-result{background:#ebf4de;color:#45613b}
.url-import-result.error{background:#fff0dd;color:#8b522d}
.url-import-footer button{font-size:13px;color:#735132;min-height:40px}
.route-stack:before{border-color:#e1c9a4}
.route-unit:before{background:#6d4e38;border-color:#f1e0c8}
.route-unit.destination:before{background:#e7a259;border-color:#f8e6ce}
.route-unit.via:before{background:#bb8752;border-color:#f6e7d0}
.add-btn{background:#fff2dc;color:#6d4929;border:1px dashed #cca275;border-radius:12px;font-size:14px;min-height:47px;padding:11px 16px}
.add-btn:hover{background:#fce3b8}
#viaCount{color:#805730}
.via-count-row{font-size:12px;color:#78695d}
.via-reorder{background:#fdf2e2;color:#79512e;border-color:#e0caa8;min-width:44px;height:43px}
.via-delete{background:#fff5ef;color:#924d39;border-color:#ecd0c1;min-width:57px;height:43px;font-size:13px}
.smart-suggestions,.soft-strip{background:#fff9ee;border:1px solid #ead8bc;border-radius:15px;padding:17px}
.smart-head .soft-strip-title{color:#724e30;font-size:15px}
.smart-caption{font-size:13px;color:#675947}
.offline-pill{background:#f3e1c2;color:#744c28;font-size:11px}
#suggestionRegion{height:49px;font-size:16px;background:#fff}
.smart-origin-label{font-size:13px;color:#765538;margin:13px 0 8px}
.spot-suggestions{gap:9px}
.spot-suggestion{padding:12px;border-radius:13px;border-color:#e7d7bf;background:#fffefb}
.spot-name{color:#463524;font-size:14px}
.spot-actions{gap:7px}
.spot-actions button{min-height:43px;border-color:#dec8a6;background:#fff0d7;color:#69482c;font-size:12px;border-radius:10px}
.spot-actions .add-spot{background:#fffdf8}
.spot-actions button:hover{background:#f5d6a3}
.smart-disclaimer{font-size:12px;color:#756757;line-height:1.8}
#quickOriginChips .ghost-chip{background:#fffdf8}
.switches{margin-top:17px;gap:16px}
.switches label{color:#654e3d;font-size:14px}
.switches input[type=checkbox],.discount-option input,.etc-main input{accent-color:#846039;min-width:18px;min-height:18px}
.btn-map,.action-green{background:#6a4b35;color:#fff9ef;border:0;border-radius:12px;min-height:52px;font-size:14px;font-weight:850}
.btn-map:hover,.action-green:hover{background:#7b5c44}
.route-note{font-size:12px}
.with-button button,.btn-light,.icon-button{background:#fff9f0;color:#654b35;border:1px solid #decbb2;border-radius:11px;font-size:13px;min-height:44px}
.btn-light:hover,.with-button button:hover{background:#fff0d8}
.status-tag.warning{background:#fff1dc;color:#8b5d28}
.map-segment-head{background:#f9e7cc;color:#6d4727}
.map-segment-btn{border-color:#e3cfb2;color:#6d4b2d;font-size:13px;min-height:49px}
.fuel-row button{min-height:40px}
.suggestions,.bike-suggestions{border:1px solid #d8bd9a;background:#fffefa}
.suggestions li button,.bike-choice{background:#fffefa;color:#4d3c2d;font-size:14px;min-height:44px}
.suggestions li button:hover,.bike-choice:hover{background:#fff1dc}
.no-border,.small-link{color:#775233;font-size:13px}
.mini-banner,.local-alert{background:#fff6e7;color:#76583a;border:1px solid #e6d2b1;font-size:12px}
.option{min-height:48px;padding:10px 12px;font-size:13px;border:1px solid #dcc9b1;background:#fff9f2;color:#6c523d;border-radius:11px;font-weight:750}
.option.active{background:#624734;color:#fff8eb;border-color:#624734;box-shadow:none}
input[type=range]{accent-color:#a47036}
.discount-module{background:#fff9f0;border:1px solid #e7d3b6;border-radius:15px;padding:17px}
.discount-title{color:#67472e;font-size:15px}
.discount-muted{color:#7b6855;font-size:12px}
.etc-main{background:#f8e9d3;border:1px solid #e2c6a0;border-radius:12px;padding:13px 12px}
.etc-main strong,.leg-heading strong{color:#5d4028;font-size:14px}
.etc-main small,.leg-heading span{color:#725d48;font-size:12px}
.discount-option{border-color:#e4d0b6;background:#fffefa;color:#5a422e;font-size:13px;min-height:70px;border-radius:12px}
.discount-option:has(input:checked){background:#f7e0b9;border-color:#be894c;color:#47301e}
.discount-option b{color:#885321;font-size:12px}
.discount-conditions{background:#f8edda;color:#65523e;font-size:12px;line-height:1.9}
.discount-links a{color:#7b5030;font-size:13px}
.discount-alert{font-size:12px}
.discount-alert.good{background:#eff2e0;color:#5f6531;border-color:#d5dab8}
.distance-more{border-color:#e5d6c2;background:#fffdfa}
.distance-more summary{color:#644731;font-size:14px;min-height:34px}
.toll-breakdown{background:#faf2e6;border-color:#e6d6bd;color:#4c3c2b}
.notice{background:#fff4e6;border-color:#e7d1ad;color:#72533a;font-size:12px}
.help-card h3{font-size:16px;color:#4f3829}.help-card p{font-size:13px}
.help-card .state{color:#735638}
.summary{background:#5c4432;border:1px solid #694f3c;box-shadow:0 11px 30px rgba(65,42,25,.11);padding:26px;border-radius:20px;color:#fff8ef;position:relative}
.summary .card-top h2{color:#fff8f0;font-size:21px}
.summary .section-sub,.summary .small-note,.sum-line span:first-child,.total-label,.under-total{color:#e7d5c1}
.summary .step-no{background:#74553e;color:#ffe0a4}
.route-preview{background:#715640;border:1px solid #8b6d55;border-radius:12px}
.route-label{color:#f5ddb9}.pin{background:#ffd68d;border-color:#946d4c}.stop:last-child .pin{background:#e7a578}
.kpi-cell{background:#715641;border-color:#8a6c53;color:#fff}.kpi-cell .desc{color:#f1d8b9}
.sum-line{font-size:14px;border-color:#80624b;color:#fff9ef}
.total-area{border-top:1px solid #997456;margin-top:18px;padding-top:20px}
.total-number{font-size:clamp(39px,4vw,48px);color:#ffdc8b;font-weight:850}
.btn-primary{background:#f5c475;color:#4b341f;border:0;border-radius:12px;min-height:54px;font-size:15px}
.btn-primary:hover{background:#ffda99}
.summary .btn-light{background:#715540;color:#fff6e8;border:1px solid #957358;min-height:47px;font-size:13px}
.summary .btn-light:hover{background:#82624a}
#discountSummaryRow strong{color:#ffdd90}
.footer{color:#7a6c5e;font-size:12px}.footer a{color:#744e30}
#toast{background:#4a3528;color:white}
/* Protect narrow mobile screens from long map URLs */
.url-warning strong,.url-import strong,.url-import p,.url-import code{overflow-wrap:anywhere;word-break:break-word}
.main-grid,.left-stack,.right-stack,.card,.url-import{min-width:0}
/* Compact, highly legible navigation on smaller screens */
.mobile-total{display:none}
@media(max-width:900px){.main-grid{grid-template-columns:1fr}.right-stack{position:static}.shell{max-width:760px}.jump-nav .jump-total{margin-left:0}.hero{padding:27px 30px}}
@media(max-width:600px){
 body{padding-bottom:70px}
 .site-header{height:61px;padding:0 16px}.brand{font-size:21px}.header-hint{display:none}
 .shell{padding:14px 11px 35px}.hero{min-height:190px;border-radius:18px;padding:25px 22px}
 .hero h1{font-size:30px}.hero p{font-size:13px;line-height:1.7}.hero-copy{width:100%}.hero-art{opacity:.14}
 .quick-note{margin:12px 1px 13px;font-size:12px;padding:12px}
 .jump-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-bottom:14px}
 .jump-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:11px;padding:8px 2px;gap:1px;min-height:50px;border-radius:11px}
 .jump-nav .jump-total{display:none}
 .left-stack,.right-stack{gap:14px}
 .card,.help-card{padding:20px 16px;border-radius:17px}
 .card-top{align-items:flex-start;margin-bottom:15px}.card-top h2{font-size:19px}
 .step-no{font-size:10px;padding:5px 7px}
 .section-sub{font-size:12px}
 .url-import{padding:14px 12px}.url-import-input{flex-direction:column}.url-import-input button{width:100%}
 .spot-suggestions{grid-template-columns:1fr 1fr;gap:8px}.spot-suggestion{padding:10px}.spot-actions{flex-direction:column}.spot-actions button{width:100%;font-size:12px}
 .smart-suggestions{padding:13px 11px}.smart-head{gap:6px;flex-wrap:wrap}
 .fields,.two-col{grid-template-columns:1fr 1fr;gap:12px}
 .fields>.field.wide{grid-column:1/-1}
 .via-actions{gap:8px}.via-reorder,.via-delete{height:44px;min-width:48px}
 .route-stack{padding-left:28px}.add-btn{margin-left:28px}.via-count-row{margin-left:28px}
 .discount-grid{grid-template-columns:1fr 1fr;gap:7px}
 .discount-option{align-items:flex-start;padding:11px 8px;font-size:12px;min-height:82px}
 .discount-title,.leg-heading{flex-direction:row;align-items:baseline}.discount-module{padding:13px 11px}
 .tool-grid,.two-buttons{grid-template-columns:1fr 1fr;gap:8px}
 .summary{padding:22px 19px}
 .mobile-total{display:flex;align-items:center;justify-content:space-between;gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#55402f;border-top:1px solid #856343;color:#fff7e8;padding:11px 14px max(11px,env(safe-area-inset-bottom));box-shadow:0 -5px 22px rgba(43,28,18,.18)}
 .mobile-total-text{font-size:11px;line-height:1.35;color:#e8d5bb}
 .mobile-total-text strong{display:block;color:#ffdc8b;font-size:21px;line-height:1.25;font-variant-numeric:tabular-nums}
 .mobile-total-btn{background:#f5c475;color:#4d361f;border:0;border-radius:10px;min-height:45px;padding:0 16px;font-weight:850;font-size:13px;white-space:nowrap}
 .summary{scroll-margin-top:14px}
}
@media(max-width:380px){.spot-suggestions{grid-template-columns:1fr}.fields,.two-col{grid-template-columns:1fr}.discount-grid{grid-template-columns:1fr 1fr}.jump-nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
@media print{body{padding-bottom:0}.jump-nav,.mobile-total{display:none!important}.summary,.card{background:white!important;border-color:#ccc!important;color:black!important}.summary *{color:black!important}}


/* Aqua recolor override */
:root{
  --paper:#f4fbfd !important;
  --ink:#204450 !important;
  --muted:#5f7d86 !important;
  --line:#d5eaf0 !important;
  --forest:#2f7f96 !important;
  --forest2:#5ea7bb !important;
  --lime:#c8f0ff !important;
  --orange:#8dd8f0 !important;
  --white:#ffffff !important;
  --shadow:0 10px 30px rgba(64,140,165,.10) !important;
}
body{background:linear-gradient(180deg,#f3fbfd 0%,#eef8fb 100%) !important;color:var(--ink)!important}
.site-header{background:#fbfeff!important;border-bottom:1px solid #d8edf2!important}
.brand{color:#2a6d80!important}
.brand-mark{background:#84d7ef!important;color:#134351!important;box-shadow:none!important}
.top-tag{background:#eefaff!important;color:#3a7384!important;border:1px dashed #b6e3ee!important}
.header-hint{color:#6b8a93!important}
.hero{background:linear-gradient(135deg,#dff6fd 0%,#bfeaf7 52%,#d7f4fb 100%)!important;color:#1f4f5e!important;box-shadow:0 16px 36px rgba(85,166,191,.12)!important}
.eyebrow{color:#397f95!important}
.hero p{color:#527985!important}
.quick-note{background:#ffffff!important;border:2px dashed #cce8ef!important;color:#537681!important}
.card,.help-card{background:#ffffff!important;border:1px solid #dceef3!important;box-shadow:var(--shadow)!important}
label,.step-no,.section-sub,.caption,.helper,.field-tip,.tooltip-hint,.mini-note,.low-label{color:#5c7c85!important}
input,select{background:#fafdff!important;border:1px solid #d3e9ef!important;color:#1f4652!important}
input:focus,select:focus{border-color:#6ebdd3!important;box-shadow:0 0 0 3px rgba(110,189,211,.18)!important}
input::placeholder{color:#97b1b9!important}
.route-stack:before{border-left:2px dashed #b9dfe8!important}
.route-unit:before{background:#5cb6d0!important;border-color:#dff5fb!important}
.route-unit.destination:before{background:#80d5ec!important;border-color:#dcf5fb!important}
.route-unit.via:before{background:#74c5db!important;border-color:#d9f1f6!important}
.icon-button,.btn-light{background:#f8fdff!important;border:1px solid #d7ebf0!important;color:#568090!important}
.icon-button:hover,.btn-light:hover{background:#eef8fb!important;color:#265f70!important}
.add-btn,.preset,.ghost-chip{background:#edfaff!important;border:1px dashed #bbe1eb!important;color:#397286!important}
.badge-free,.free-pill{background:#dff6fd!important;color:#2a6d80!important}
.local-alert{background:#eef9fd!important;border:1px solid #d5eef5!important;color:#3f7280!important}
.action-green,.btn-map,.btn-primary{background:#83d7ee!important;color:#194555!important;border:1px solid #bce8f3!important}
.action-green:hover,.btn-map:hover,.btn-primary:hover{background:#71cde6!important}
.summary{background:linear-gradient(180deg,#31788d 0%,#2b677b 100%)!important;color:#fff!important}
.route-preview{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.16)!important}
.pin{background:#c8f0ff!important;border-color:#1f5f73!important}
.stop:last-child .pin{background:#8adcf3!important}
.notice,.notice-orange,.info-result.warn{background:#f3fbfe!important;border:1px solid #d5edf5!important;color:#537682!important}
.note-green,.info-result{background:#eef9fd!important;color:#406f7d!important}
.config-banner{background:#f3fcff!important;border:1px solid #d8eef5!important}
.config-banner summary,.small-link,.source-link,.no-border,#tool-note a{color:#2f7285!important}
.switches input[type=checkbox], .inline-options input[type=checkbox], .toggle-row input{accent-color:#57aac4!important}
#toast{background:#2a677a!important}
.mobile-total-bar,.bottom-total-bar,.sticky-total,.sp-total{background:#2f7f96!important;color:#fff!important}


/* Readability enhancement override */
:root{
  --paper:#f5fbfd !important;
  --ink:#153845 !important;
  --muted:#486874 !important;
  --line:#bfdde7 !important;
  --forest:#226d86 !important;
  --forest2:#3f8fa7 !important;
  --lime:#d7f4ff !important;
  --orange:#79cfe8 !important;
  --shadow:0 10px 26px rgba(34,109,134,.10) !important;
}
body{color:var(--ink)!important;background:#f4fbfd!important}
.site-header{border-bottom:1px solid #c7e3eb!important}
.brand{color:#1d6075!important}
.brand-mark{background:#61c5e4!important;color:#083443!important}
.top-tag{background:#e7f8fd!important;color:#1e6075!important;border:1px solid #99d5e5!important;font-weight:800!important}
.hero{background:linear-gradient(135deg,#d9f2fb 0%,#b4e1f0 55%,#d0f1fa 100%)!important;color:#103743!important}
.hero h1{color:#123542!important}
.hero p,.header-hint,.section-sub,.caption,.helper,.field-tip,.tooltip-hint,.mini-note,.low-label,.quick-note{color:#45656f!important}
.quick-note{background:#ffffff!important;border:1px solid #c6e4ec!important}
.card,.help-card{border:1px solid #cfe6ee!important;background:#fff!important}
.card-top h2, h3, label, .sum-heading, .route-label{color:#1d4654!important}
.step-no{color:#4a7683!important;font-weight:900!important}
input,select{background:#fff!important;border:1.5px solid #bad9e4!important;color:#163a46!important;font-weight:500!important}
input::placeholder{color:#7898a2!important}
input:focus,select:focus{border-color:#2f8fac!important;box-shadow:0 0 0 3px rgba(47,143,172,.16)!important}
.icon-button,.btn-light{background:#fff!important;border:1.5px solid #c5e0e8!important;color:#29586a!important;font-weight:700!important}
.icon-button:hover,.btn-light:hover{background:#eef8fb!important}
.add-btn,.preset,.ghost-chip{background:#ecf9fd!important;border:1px solid #b9dde8!important;color:#1f657a!important;font-weight:800!important}
.action-green,.btn-map,.btn-primary{background:#2f8fac!important;border:1px solid #2a839d!important;color:#fff!important;font-weight:900!important}
.action-green:hover,.btn-map:hover,.btn-primary:hover{background:#277c95!important}
.summary{background:linear-gradient(180deg,#1f6981 0%,#19596f 100%)!important}
.summary .card-top h2,.summary .section-sub,.summary .sum-heading,.summary .sum-line span:first-child,.summary .total-label,.summary #costSource,.summary #totalCaveat,.summary .small-note,.summary #routeMetrics{color:#e7f7fc!important}
.sum-line{border-bottom:1px solid rgba(255,255,255,.18)!important}
.total-number{color:#fff!important}
.route-preview{background:rgba(255,255,255,.11)!important;border:1px solid rgba(255,255,255,.18)!important}
.pin{background:#dff7ff!important;border-color:#0f5366!important}
.stop:last-child .pin{background:#8bd8ed!important}
.notice,.notice-orange,.info-result.warn{background:#f7fcfe!important;border:1px solid #cfe8ef!important;color:#466772!important}
.note-green,.info-result,.local-alert{background:#eef8fb!important;border:1px solid #cbe4eb!important;color:#305d6c!important}
.config-banner{background:#f5fcff!important;border:1px solid #d4ebf2!important}
.config-banner summary,.small-link,.source-link,.no-border,#tool-note a{color:#1f6b81!important;font-weight:700!important}
.switches label,.inline-options label,.toggle-row{color:#214c59!important;font-weight:800!important}
.switches input[type=checkbox], .inline-options input[type=checkbox], .toggle-row input{accent-color:#277f98!important}
.route-stack:before{border-left:2px dashed #9fcddc!important}
.route-unit:before{background:#2f8fac!important;border-color:#e7f8fc!important}
.route-unit.destination:before{background:#76d0e8!important;border-color:#e7f8fc!important}
.route-unit.via:before{background:#58b7d2!important;border-color:#e7f8fc!important}
#toast{background:#1e6075!important}


/* ===== RIDENOTE guided UX: legible aqua, 4-step flow ===== */
:root{--step-accent:#1f728a;--step-soft:#e6f8fd}
.hero{min-height:170px!important;padding:29px 35px!important}
.hero h1{font-size:clamp(24px,3.1vw,36px)!important;margin:8px 0!important}
.hero-art{opacity:.35!important}
.hero p{line-height:1.6!important;font-size:13px!important}
.eyebrow{font-size:11px!important;letter-spacing:.09em!important}
.quick-note{margin:14px 0 16px!important;font-size:12px!important;padding:9px 13px!important}
.guided-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:#fff;border:1px solid #c8e2e9;border-radius:18px;padding:8px;margin:14px 0 11px;box-shadow:0 6px 20px rgba(30,100,120,.06)}
.guided-tab{background:transparent;border:1px solid transparent;border-radius:12px;min-height:57px;display:flex;align-items:center;gap:8px;justify-content:center;color:#4e6b75;font-weight:800;font-size:13px;white-space:nowrap;padding:7px}
.guided-tab-no{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#edf6f8;color:#537d8b;font-size:12px;flex-shrink:0}
.guided-tab[aria-current="step"]{background:#dff4fb;color:#15536a;border-color:#bde5f1}
.guided-tab[aria-current="step"] .guided-tab-no{background:#217b96;color:white}
.guided-tab.is-done .guided-tab-no{background:#e0f1f7;color:#246d83}
.guided-lead{background:#eff9fc;border:1px solid #d1e9f1;border-radius:16px;padding:14px 18px;margin-bottom:19px}
.guided-lead-index{font-size:10px;font-weight:900;letter-spacing:.08em;color:#2f8099;display:block}
.guided-lead strong{font-size:17px;color:#15465a;display:block}
.guided-lead p{font-size:12px;color:#557582;margin:3px 0 0;line-height:1.7}
.guided-actions{display:flex;justify-content:space-between;gap:12px;margin-top:2px}
.guided-back,.guided-next{font-size:14px;font-weight:850;border-radius:14px;min-height:54px;padding:13px 18px;cursor:pointer;line-height:1.4}
.guided-back{background:#fff;color:#2c6477;border:1px solid #bcdbe6;min-width:105px}
.guided-next{background:#207b97;color:white;border:1px solid #176681;flex:1}
.guided-back:disabled{opacity:.35;cursor:not-allowed}
.guided-next:hover{background:#18677e}
.guided-error:empty{display:none}
.guided-error{color:#854429;background:#fff2e9;border:1px solid #e9c5ab;padding:12px 14px;border-radius:12px;font-size:13px;margin-bottom:10px;line-height:1.6}
.guided-optional{margin:12px 0;border:1px solid #d4e9f0;border-radius:15px;background:#f9fdfe;overflow:hidden}
.guided-optional>summary{list-style:none;cursor:pointer;padding:15px 17px;min-height:48px;display:flex;align-items:center;justify-content:space-between;color:#28667b;font-size:13px;font-weight:850;line-height:1.5}
.guided-optional>summary::-webkit-details-marker{display:none}
.guided-optional>summary:after{content:'＋';font-size:18px;color:#55899a;margin-left:14px}
.guided-optional[open]>summary:after{content:'−'}
.guided-optional[open]>summary{border-bottom:1px solid #d9eaf0;background:#eff9fd}
.guided-optional>.url-import,.guided-optional>.soft-strip,.guided-optional>.preset-row,.guided-optional>.field,.guided-optional>.fare-advanced,.guided-optional>.discount-conditions,.guided-optional>.discount-links{margin:12px 14px!important}
.guided-optional .url-import{border:0!important;box-shadow:none!important;padding:8px!important}
.guided-optional .soft-strip{border:0!important;background:transparent!important;padding:10px!important}
.guided-optional .preset-row{padding:5px 0 9px}
.guided-optional .discount-conditions{font-size:12px}
.guided-inline-hint{border-left:4px solid #64b8ce;background:#eef9fc;color:#456c78;border-radius:9px;margin:2px 0 17px;padding:10px 12px;font-size:12px;line-height:1.7}
#routeSection,#rideSection,#tollSection,#extraSection{scroll-margin-top:16px}
#guideWizardHost{display:none}
/* Panels are hidden only when JS setup succeeded; without JS all original forms remain visible */
.guided-ready .left-stack>[id$="Section"]{display:none}
.guided-ready .left-stack>[id$="Section"].guided-active{display:block}
.guided-ready .main-grid.guided-result{display:block}
.guided-ready .main-grid.guided-result .left-stack{display:none}
.guided-ready .main-grid.guided-result .right-stack{position:static;max-width:850px;margin:auto}
.guided-ready .main-grid.guided-result .summary{box-shadow:0 14px 36px rgba(17,85,108,.14)!important}
.guided-ready .right-stack{top:14px}
.guided-ready .guided-result .right-stack .help-card{display:none}
.guided-ready .guided-result .right-stack #resetButton{display:none}
#routeSection .card-top,#rideSection .card-top,#tollSection .card-top,#extraSection .card-top{margin-bottom:19px}
#routeSection .smart-suggestions .soft-strip-title,#routeSection .smart-suggestions .smart-caption{color:#286577!important}
#guideResultHelp{display:none;background:#fff;padding:14px;border-radius:12px}
@media(max-width:820px){
 .guided-ready .main-grid:not(.guided-result) .right-stack{display:none}
 .guided-ready .main-grid.guided-result .right-stack{display:flex}
 .guided-nav{gap:3px;border-radius:12px;padding:5px}
 .guided-tab{flex-direction:column;gap:3px;min-height:60px;font-size:10px;padding:5px 1px;letter-spacing:-.04em}
 .guided-tab-no{width:23px;height:23px;font-size:11px}
 .guided-lead{margin-bottom:13px}
}
@media(max-width:550px){
 .hero{min-height:155px!important;padding:24px 21px!important}
 .hero h1{font-size:27px!important;line-height:1.35!important}
 .hero p{font-size:12px!important}
 .hero-art{opacity:.18!important}
 .quick-note{font-size:11px!important;line-height:1.7!important}
 .guided-nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);margin:10px 0}
 .guided-lead{padding:12px 14px}
 .guided-lead strong{font-size:16px}
 .guided-actions{position:relative;margin-bottom:13px}
 .guided-back,.guided-next{min-height:53px;font-size:13px}
 .guided-back{min-width:93px;padding:10px}
 .guided-next{padding:10px}
 .card{padding:20px 17px!important}
 .route-stack{margin-bottom:14px}
 input,select{font-size:16px!important;min-height:48px}
 .preset-row{margin:8px 0!important}
 #tollSection .option-group{gap:6px!important}
 #tollSection .option{padding:10px 6px!important}
 #routeSection .route-action{margin-bottom:0}
 #routeSection .route-note{line-height:1.65}
 .guided-optional>summary{font-size:12px}
 .mobile-total{z-index:24!important}
 .guided-ready .main-grid.guided-result .summary{margin-bottom:90px}
}
@media print{.guided-nav,.guided-lead,.guided-actions,.guided-optional>summary{display:none!important}.guided-ready .main-grid{display:block!important}.guided-ready .main-grid .left-stack{display:none!important}.guided-ready .main-grid .right-stack{display:block!important}}

#guidedActions[hidden]{display:none!important}
.guided-edit{width:100%;margin-top:14px;background:#e9f9fe;color:#195c73;font-weight:850;padding:14px;border:1px solid #9cd5e6;border-radius:13px;font-size:13px;cursor:pointer}
.guided-edit:hover{background:#d9f3fc}

/* Final unified aqua accents for controls previously inherited from Garage theme */
.mobile-total{background:#195d73!important;border-top:1px solid #2e8caa!important;color:#effaff!important;box-shadow:0 -5px 22px rgba(12,70,90,.18)!important}
.mobile-total-text{color:#e9f8fc!important}
.mobile-total-text strong{color:#fff!important}
.mobile-total-btn{background:#bceafa!important;color:#164f63!important;border:1px solid #9ed9eb!important}
.kpi-cell{background:#25748b!important;border:1px solid #4a92a5!important;color:#fff!important}
.kpi-cell .desc{color:#d9f4fb!important}
#tollSection .option{background:#f9fdff!important;border:1px solid #bedee8!important;color:#245e70!important}
#tollSection .option.active{background:#207d99!important;border-color:#207d99!important;color:#fff!important}
#tollSection input[type=range]{accent-color:#268aa6!important}
#tollSection .discount-module{background:#f5fcfe!important;border:1px solid #d3eaf1!important}
#tollSection .discount-option{background:#fff!important;border:1px solid #cce2ea!important;color:#1c5467!important}
#tollSection .discount-option:has(input:checked){background:#e4f6fc!important;border-color:#70bacf!important}
#tollSection .etc-main{background:#e9f8fc!important;border:1px solid #d0eaf2!important;color:#205f74!important}
.summary .total-area{border-top:1px solid #5192a6!important}
.summary .step-no{color:#e3f8fe!important}
.guided-ready .main-grid:not(.guided-result) .summary .step-no{color:#e3f8fe!important}
@media(max-width:550px){.mobile-total{padding-bottom:max(11px,env(safe-area-inset-bottom))!important}}

/* RIDENOTE publisher beta: readable aqua / clear separation of editorial and ads */
.publisher-nav{display:flex;gap:5px;align-items:center;flex-wrap:wrap;padding:10px max(16px,calc((100vw - 1180px)/2));background:#f5fbfd;border-bottom:1px solid #d2e6ed}
.publisher-nav a{display:inline-flex;justify-content:center;align-items:center;min-height:40px;padding:8px 13px;border-radius:10px;color:#285a6e;text-decoration:none;font-size:13px;font-weight:780}
.publisher-nav a:hover,.publisher-nav a:focus-visible{background:#e0f3fa;color:#17465b}
.publisher-nav a[aria-current=page]{background:#d6eef7;color:#18536a}
.publisher-features{max-width:1180px;margin:10px auto 48px;padding:0 22px}
.publisher-features-head{margin:0 0 18px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.publisher-features-head h2{font-size:22px;color:#1c4c5c;margin:0}
.publisher-features-head a{color:#276e83;font-size:13px;font-weight:800}
.publisher-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.publisher-feature-card{display:block;text-decoration:none;color:#174555;background:#fff;border:1px solid #d3e8ef;border-radius:18px;padding:20px;box-shadow:0 6px 20px rgba(22,87,113,.06)}
.publisher-feature-card:hover{border-color:#86c3d5;transform:translateY(-1px)}
.publisher-feature-card .glyph{display:block;font-size:27px;margin:0 0 9px}
.publisher-feature-card strong{display:block;font-size:16px;margin-bottom:5px}
.publisher-feature-card p{font-size:12px;color:#567781;line-height:1.7;margin:0}
.ad-demo{margin-top:28px;padding:20px;background:#f8fbfc;border:1px dashed #adc8d2;border-radius:18px;text-align:center;color:#5d7680;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.ad-demo-label{font-size:12px;font-weight:800;letter-spacing:.05em;color:#456873}
.ad-demo strong{color:#385b68;font-size:15px}
.ad-demo span:last-child{font-size:12px;line-height:1.7}
.affiliate-panel{margin-top:20px;padding:22px;border-radius:18px;background:#fff;border:1px solid #d6e9ef;color:#234e5b}
.affiliate-panel h2{font-size:19px;color:#1c5162;margin:0 0 5px}
.affiliate-panel p{font-size:13px;line-height:1.7;color:#577681;margin:0 0 12px}
.affiliate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.affiliate-card{text-decoration:none;color:#24566a;background:#f3fafc;border:1px solid #d9eaf0;padding:15px;border-radius:13px;display:flex;flex-direction:column;gap:7px;line-height:1.5;min-height:128px}
.affiliate-card:hover{background:#eaf7fb}
.affiliate-card b{font-size:13px}
.affiliate-card small{font-size:11px;color:#64828e}
.prelaunch-note{font-size:11px!important;color:#667e86!important;margin-top:12px!important}
.publisher-footer-links{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:center;max-width:1180px;margin:0 auto 25px;padding:12px 20px;border-top:1px solid #d1e7ee}
.publisher-footer-links a{font-size:12px;font-weight:700;color:#346d80;text-decoration:none}
.publisher-footer-links a:hover{text-decoration:underline}
@media(max-width:700px){.publisher-feature-grid{grid-template-columns:1fr}.affiliate-list{grid-template-columns:1fr}.publisher-nav{justify-content:center;padding:6px 7px;gap:2px}.publisher-nav a{font-size:11px;padding:5px 8px;min-height:38px}.publisher-features{padding:0 14px;margin-bottom:28px}.ad-demo{min-height:120px;margin-top:17px}.affiliate-panel{padding:17px}.guided-ready .main-grid.guided-result .summary{margin-bottom:12px!important}.affiliate-card{min-height:0}}
@media print{.publisher-nav,.ad-demo,.affiliate-panel,.publisher-features,.publisher-footer-links{display:none!important}}



/* Moved unchanged declarations from HTML inline style attributes */
.inline-00b4026f0bf4{display:block;margin-top:7px}
.inline-0ee7f66ad9c0{margin-top:12px}
.inline-1f0e25aadf4c{opacity:.72}
.inline-2bdf8e45fdfc{margin-top:18px}
.inline-494bccbbb605{color:#d8eda6}
.inline-5747f4ee299b{margin-top:13px}
.inline-65be136df569{margin-top:17px}
.inline-d108cd5406b2{margin-top:15px}
