:root{--paper:#f4f1e9;--forest:#172821;--orange:#b75c2e;--orange-dark:#914321;--line:#dcded3;--muted:#697268}body{--shadow:0 10px 40px #15221c21}.topbar{height:76px}.brand{letter-spacing:3px}.brandmark{color:#ddb27a}.brand small{letter-spacing:2px}.region small{font-size:12px}main{height:calc(100dvh - 76px);grid-template-columns:minmax(0,1fr) 470px}#workspace{padding:0 26px 35px}.tabs{position:sticky;top:0;background:var(--paper);padding-top:12px;z-index:12;margin-bottom:24px}.tabs button{font-size:13px}.map-label{background:#18291fe8;color:#f0eade;border-color:#ffffff35}.map-label span{color:#c0c9be}.map-footer span:nth-child(2){display:none}.map-footer #coverage-note{display:none}.overlay-legend .cluster-hint{display:none}.overlay-legend{max-width:calc(100vw - 600px);bottom:62px}.plan-kicker{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}.plan-kicker>span{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#66735e}.plan-kicker button{font-size:11px;font-weight:600;padding:6px 8px;min-height:40px;border:1px solid var(--line);border-radius:20px}#plan-view h1{font-size:40px;line-height:1.08;letter-spacing:-1.5px;margin:0}.plan-date{font-size:13px;color:var(--muted);margin:13px 0 22px}.frank-hero{height:248px;border-radius:17px;overflow:hidden;position:relative;background:#314839;color:#fff;box-shadow:0 10px 30px #17282118}.frank-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#10201644 0%,transparent 25%,#102016d9 100%)}.recommendation-tag{position:absolute;top:17px;left:17px;font-size:9px;letter-spacing:1.5px;border:1px solid #eee8cf80;border-radius:20px;padding:7px 10px;background:#162c2080;font-weight:750}.hero-copy{position:absolute;bottom:28px;left:20px;right:20px}.hero-copy h2{font-size:29px;margin:0 0 6px;color:white}.hero-copy p{font-size:13px;line-height:1.45;margin:0;color:#ecebdf}.image-note{position:absolute;bottom:9px;right:12px;font-size:9px;color:#d8dfd5}.frank-voice{font-family:Georgia,serif;font-size:18px;line-height:1.55;margin:22px 0 18px;color:#3f4d3d}.plan-metrics{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:9px;border-block:1px solid var(--line);padding:18px 0}.plan-metrics div+div{border-left:1px solid var(--line);padding-left:12px}.plan-metrics strong{font-size:21px;display:block;letter-spacing:-.5px;white-space:nowrap}.plan-metrics strong small{font-size:12px;font-weight:500}.plan-metrics span{font-size:10px;color:var(--muted);line-height:1.4;display:block;margin-top:5px}.plan-actions{display:flex;gap:10px;margin-top:20px}.plan-actions>*{flex:1;font-size:13px;min-height:48px;margin:0}.plan-readiness{font-size:11px;color:#776341;line-height:1.5;display:flex;gap:8px;margin:13px 0 25px}.small-dot{width:6px;height:6px;border-radius:50%;background:#b48c46;flex-shrink:0;margin-top:5px}.section-label{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:28px}.section-label h2{font-size:23px;margin:0}.section-label>span{font-size:8px;letter-spacing:1px;color:var(--muted);white-space:nowrap}.frank-timeline{padding:0;margin:24px 0 0;list-style:none}.frank-timeline li{display:flex;gap:15px;position:relative;padding-bottom:26px}.frank-timeline li:before{content:'';position:absolute;top:29px;bottom:0;left:14px;width:1px;background:#ccd3c3}.frank-timeline li:last-child:before{display:none}.step-dot{width:29px;height:29px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;border:1px solid #b9c5b1;font-size:11px;color:#697b59;background:#e9ece0}.frank-timeline li:first-child .step-dot{background:var(--forest);color:#ead0a5;border-color:var(--forest)}.frank-timeline time{font-size:11px;font-weight:750;letter-spacing:1px;color:var(--orange-dark)}.frank-timeline h3{font-size:15px;line-height:1.5;margin:4px 0 8px}.frank-timeline p{font-size:13px;line-height:1.6;margin:0 0 8px;color:#606d5d}.frank-timeline small{font-size:10px;background:#e4e7da;color:#52604a;border-radius:5px;padding:4px 6px}.plan-footnote{font-size:11px;line-height:1.7;color:#73806c;margin:5px 0 24px}.frank-details{border-top:1px solid var(--line);padding:0 1px}.frank-details summary{min-height:56px;padding:18px 0;cursor:pointer;font-size:13px;font-weight:700}.frank-details p{font-size:13px;line-height:1.65;color:#5a6857}.frank-details a{font-size:12px;margin:8px}.frank-details button{font-size:12px}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.evidence-grid span{border:1px solid var(--line);padding:12px;border-radius:8px;font-size:11px}.evidence-grid strong{display:block;font-size:19px;margin-bottom:5px}.frank-odds{background:#e9e9dd;padding:18px;border:1px solid #d8dece;border-radius:13px;margin:20px 0}.frank-odds strong{display:block;font-size:13px}.frank-odds span{display:block;font-size:12px;color:#6b7564;line-height:1.6;margin:8px 0 15px}.frank-odds button{background:#faf9f3;width:100%;margin:0}.frank-live{padding:20px;background:#23392b;color:#f6f1e6;border-radius:14px;scroll-margin-top:80px}.frank-live .eyebrow{color:#c2cbb5}.frank-live h2{font-size:25px}.frank-live p{font-size:13px;line-height:1.65}.frank-live .muted{color:#c2cabd}.frank-live .secondary{color:var(--ink)}.frank-live button{font-size:12px}.frank-loading{text-align:center;padding:70px 20px}.frank-loading p{font-size:13px;color:var(--muted);line-height:1.6}.frank-orbit{display:grid;place-items:center;width:70px;height:70px;border:1px solid #c7d0bb;border-radius:50%;color:#819172;font-size:50px;margin:0 auto 20px}.frank-map-pin{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#b86431;color:#fff3d8;border:3px solid #faf2dc;box-shadow:0 3px 12px #0008;font-weight:800}.plan-empty{padding:15px 5px}.plan-empty p,.plan-empty details{font-size:14px;line-height:1.65}.plan-empty details{margin-top:20px}.evidence-image{width:100%;border-radius:13px}.elevation-chart{width:100%;height:130px;background:linear-gradient(transparent 95%,#dfe1d5 95%);background-size:100% 26px;border-bottom:1px solid #d2d7c8;margin-top:15px}.terrain-map{position:absolute;inset:0;z-index:405;background:#263c2b}.maplibregl-control-container .maplibregl-ctrl-top-right{top:140px;right:14px}.maplibregl-ctrl-bottom-right{max-width:calc(100% - 12px)}.terrain-toggle{position:absolute;left:24px;top:79px;z-index:510;background:#f4f1e9;color:#23332b;border:1px solid #bbc8b0;border-radius:25px;font-size:12px;box-shadow:var(--shadow)}.terrain-toggle[aria-pressed=true]{background:#233b2b;color:#ffe1b3}.terrain-status{position:absolute;top:132px;left:24px;z-index:510;max-width:210px;background:#192d22e8;color:#e5e8dc;font-size:10px;line-height:1.5;padding:8px 10px;border-radius:7px}.terrain-marker{background:#23392b;color:#fff;border:2px solid white;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;padding:0;min-height:31px;font-size:12px}.terrain-marker.frank{background:#b86431;width:38px;height:38px}.maplibregl-popup{z-index:600}.maplibregl-popup-content{max-width:280px;color:#243222;padding:15px;border-radius:10px}.maplibregl-popup-content h3{font-size:14px;margin-bottom:9px}.maplibregl-popup-content p{font-size:12px}.terrain-on .map-tools #zoom-in,.terrain-on .map-tools #zoom-out{display:none}#frank-dialog{width:min(570px,calc(100vw - 24px))}#frank-dialog p{line-height:1.65;font-size:13px}.close-frank{width:44px;border-radius:50%;background:#e3e9dc;flex-shrink:0}#frank-dialog summary{font-size:13px;padding:15px 0;cursor:pointer}#tab-guide{display:none}body[data-section=guide] #tab-guide{display:block}body[data-section=guide] #tab-spots{display:none}
@media(min-width:1400px){main{grid-template-columns:minmax(0,1fr) 500px}#workspace{padding-inline:34px}.frank-hero{height:270px}#plan-view h1{font-size:43px}}
@media(max-width:800px){.topbar{height:67px}.brand{font-size:18px;gap:9px}.brandmark{width:36px;height:36px}.brand small{font-size:7px;letter-spacing:1.8px}.status-button{font-size:11px}main{height:calc(100dvh - 67px - 65px - env(safe-area-inset-bottom));display:block}#workspace{padding:0 20px 35px}.tabs{padding-top:9px;margin-bottom:22px}body[data-section=plan] .tabs{display:none}#plan-view{padding-top:20px}.plan-kicker{margin-bottom:10px}#plan-view h1{font-size:37px}.plan-date{margin-bottom:18px;font-size:12px}.frank-hero{height:239px}.hero-copy h2{font-size:27px}.frank-voice{font-size:17px}.plan-metrics strong{font-size:20px}.plan-metrics span{font-size:9px}.section-label h2{font-size:22px}.section-label>span{font-size:7px}.overlay-legend{max-width:calc(100vw - 95px);bottom:calc(112px + env(safe-area-inset-bottom));left:12px}.map-footer{bottom:18px}.terrain-toggle{left:14px;top:73px}.terrain-status{left:14px;top:123px;max-width:180px}.mobile-nav{background:#18291f}.mobile-nav button{font-size:24px}.mobile-nav .active{color:#ecc58f}.map-add{font-size:12px}.frank-details summary{font-size:12px}}
.overlay-legend{top:auto;align-content:flex-start;max-width:360px}.map-tools{top:88px}.map-message{top:150px;z-index:520}.terrain-on #scout-open{display:none}.maplibregl-ctrl-top-right{z-index:520}.long-approach{font-size:11px;line-height:1.6;color:#7d694b;background:#ece7da;padding:10px 12px;border-radius:8px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl-group{margin-bottom:45px;margin-right:22px}
@media(max-width:800px){.overlay-legend{top:auto;max-width:calc(100vw - 95px)}.map-tools{top:130px}.map-message{top:182px}.plan-actions{gap:8px}.plan-actions>*{font-size:12px;padding-inline:10px}.frank-hero{height:215px}}
@media print{.topbar,#map-panel,.tabs,.mobile-nav,.plan-actions,.plan-kicker button,.frank-details,#toast,#map-add{display:none!important}main{display:block;height:auto}#workspace{display:block!important;overflow:visible}#plan-view{display:block!important}.frank-hero{height:200px}.frank-timeline li{break-inside:avoid}}
