:root{--paper:#f4f1ea;--ink:#223a31;--muted:#626b61;--line:#c9cec2;--accent:#9b5b39}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 Arial,"Noto Sans",sans-serif}a{color:inherit}button,input,select{font:inherit}button,select,input:not([type=radio]):not([type=checkbox]){min-height:46px}button{padding:10px 20px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}button:hover:not(:disabled){background:#dfe3d8}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--ink);color:white;width:100%;margin:16px 0 8px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ae713a;outline-offset:3px}h1,h2,p{margin:0 0 16px}h2{font:normal 30px/1.25 Georgia,"Times New Roman",serif}.masthead{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:20px 4vw}.masthead>a{font-size:22px;letter-spacing:.16em;text-decoration:none;font-weight:bold}.masthead a span{font:10px Arial;letter-spacing:.12em;margin-left:22px}.language{display:flex;align-items:center;gap:12px;font-size:11px}.language select{background:transparent;border:0;color:var(--ink);min-height:40px}main{max-width:1440px;padding:0 4vw;margin:auto}.intro{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;padding:62px 0 46px;align-items:end}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.intro h1{font:normal clamp(48px,7.5vw,112px)/.9 Georgia,serif;letter-spacing:-.045em;margin:22px 0}.intro h1 em{font-weight:normal;color:#6b7b64}.tagline{font:italic 20px Georgia,serif}.intro-note{max-width:400px;border-left:1px solid var(--line);padding-left:32px}.chapter{font-size:12px;letter-spacing:.2em;display:block;margin-bottom:22px}.small{font-size:12px;color:var(--muted);line-height:1.65}.workspace{display:grid;grid-template-columns:320px minmax(0,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.controls{padding:26px 28px 24px 0}.section-label{display:flex;gap:15px;align-items:center;margin:0 0 18px}.section-label span{font:italic 20px Georgia;color:var(--accent)}.section-label h2{font-size:21px;margin:0}.upload{display:flex;flex-direction:column;border:1px dashed #9da594;padding:18px;margin-bottom:16px;position:relative;cursor:pointer;text-align:center;background:#eceee5}.upload-symbol{font-size:30px}.upload strong{font-size:14px}.upload>span:last-of-type{font-size:11px;color:var(--muted)}.upload input{width:100%;margin-top:10px;font-size:10px;min-height:30px!important}.controls select{width:100%;background:transparent;border:1px solid var(--line);padding:8px;margin:6px 0 18px}.controls>label{font-size:12px}fieldset{padding:0;border:0;margin:0}legend{font-size:12px;margin-bottom:8px}.intervals{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.intervals label{position:relative;cursor:pointer}.intervals input{position:absolute;opacity:0}.intervals span{display:block;text-align:center;border:1px solid var(--line);font-size:12px;padding:12px 0}.intervals input:checked+span{background:var(--ink);color:white;border-color:var(--ink)}.intervals input:focus-visible+span{outline:3px solid #ae713a}.map-panel{min-width:0;border-left:1px solid var(--line);background:#e8ecdf}.map-heading{padding:16px 20px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;letter-spacing:.04em}.legend{display:flex;align-items:center;gap:7px;font-size:9px}.legend i{height:7px;width:7px;border-radius:50%;background:#385a42;display:inline-block}.legend .seven{background:#a85434}.legend .family{background:#457d9d}.legend .cp{background:#8a6aac}#map{height:560px;z-index:0}.map-caption{font-size:11px;padding:12px 20px;margin:0}.status{padding:20px 0;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:16px}.stats>div{display:flex;flex-direction:column;align-items:center;padding:10px;border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats strong{font:normal 52px Georgia,serif}.stats span{font-size:12px;text-align:center}.notice{background:#e8e7db;padding:12px 16px;font-size:12px}.results-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:32px}.results-heading button{font-size:12px;padding:8px 14px}.plan{padding:0;list-style:none;counter-reset:stops}.plan li{padding:20px 0;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;gap:20px;counter-increment:stops}.plan li:before{content:counter(stops,decimal-leading-zero);font:italic 26px Georgia;color:var(--accent)}.plan li>div{flex:1}.plan h3,.store h3{font:normal 20px Georgia;margin:0 0 5px}.plan a,.store a{font-size:12px;margin-right:16px;display:inline-block;padding:7px 0}.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.store{border:1px solid var(--line);padding:18px;overflow-wrap:anywhere}.store p{margin-bottom:7px}.badge{font-size:10px;border:1px solid var(--line);padding:3px 7px;display:inline-block;margin-bottom:8px}.checkpoints{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line);padding:40px 0;margin-top:40px}.checkpoints p{max-width:470px}.checkpoints form>label{display:flex;flex-direction:column;margin-bottom:12px;font-size:12px}.checkpoints input:not([type=checkbox]){width:100%;background:transparent;border:1px solid var(--line);padding:8px}.coordinate-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.coordinate-fields label{font-size:12px}.checkpoints label.check{flex-direction:row;gap:10px;align-items:center}.check input{width:20px;height:20px}#cp-list{padding:0;list-style:none}#cp-list li{border-top:1px solid var(--line);padding:12px 0;font-size:12px}#cp-list button{font-size:12px;margin-left:12px}.faq{max-width:800px;padding:30px 0 70px}details{border-top:1px solid var(--line);padding:16px 0}summary{cursor:pointer;font-size:14px}details p{font-size:13px;margin:16px 0 0}footer{padding:32px 4vw;border-top:1px solid var(--line);display:flex;align-items:center;gap:25px;flex-wrap:wrap;font-size:11px}footer strong{font-size:20px;letter-spacing:.15em}footer p{margin:0;max-width:420px}footer span{margin-left:auto;font-size:10px}.leaflet-popup-content{font:13px/1.6 Arial,sans-serif}.leaflet-popup-content a{display:block}#route-name{overflow-wrap:anywhere}.map-label{background:#fff;border:1px solid #223a31;padding:2px 8px;font-size:11px;border-radius:2px}
@media(max-width:1000px){.workspace{grid-template-columns:280px minmax(0,1fr)}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.masthead a span{display:none}.intro{gap:4%}#map{height:560px}}
@media(max-width:650px){body{font-size:14px}.masthead{padding:12px 5vw}.language>span{display:none}main{padding:0 5vw}.intro{grid-template-columns:1fr;gap:24px;padding:35px 0 28px}.intro h1{font-size:clamp(42px,12vw,73px)}.intro-note{border-left:0;padding-left:0;max-width:none}.intro-note .chapter{margin-bottom:10px}.intro-note h2{font-size:27px}.intro-note p{margin-bottom:8px}.workspace{grid-template-columns:1fr}.controls{padding:24px 0}.map-panel{border-left:0}#map{height:380px}.stats strong{font-size:36px}.stats span{font-size:10px}.stats>div{padding:5px}.checkpoints{grid-template-columns:1fr;gap:24px}.store-grid{grid-template-columns:1fr}.results-heading{align-items:flex-start;flex-direction:column}.results-heading h2{margin-bottom:0}.legend{gap:5px}.map-heading{padding:12px}.checkpoints{padding:28px 0}footer{padding:28px 5vw}footer span{margin-left:0}}
@media print{.masthead,.intro,.workspace,.checkpoints,.faq,footer,#status,.results-heading button,#stores{display:none!important}body{background:white;color:black}main{max-width:none;padding:0}.plan li{break-inside:avoid}.notice{background:white}.stats{padding:10px}.plan a{display:none}#results{display:block!important}}
