/* ===== Tactical HUD theme (v4). Visual only - loaded after app.css. Fonts are self-hosted OFL (see fonts/OFL-*.txt). ===== */
@font-face{font-family:'Saira Stencil One';src:url(../fonts/saira-stencil-one-400.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(../fonts/saira-condensed-500.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(../fonts/saira-condensed-600.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Saira Condensed';src:url(../fonts/saira-condensed-700.woff2) format('woff2');font-weight:700 900;font-display:swap}
@font-face{font-family:'Share Tech Mono';src:url(../fonts/share-tech-mono-400.woff2) format('woff2');font-weight:400 900;font-display:swap}

/* palette: day HUD (default, max contrast for sun) and night (dimmer) */
:root,body,body.dark{
  --bg:#0e110f;--bg2:#121812;--card:#161d16;--card2:#1c251b;--fg:#eef1e4;--mut:#a3ab92;--line:#34422f;--line2:#4d5f42;
  --pri:#a6e05a;--pri2:#5f7f34;--od:#3b4a2a;--acc:#f2b134;--tan:#c8ad7f;--bad:#ff4f3f;--good:#4fdc6a;
  --A:#8fdc4e;--B:#f2b134;--C:#c8ad7f;--needle:#f2b134;--hudA:#ff8c1a;--hudB:#62b6d6;
  --mono:'Share Tech Mono',ui-monospace,'Roboto Mono',Menlo,Consolas,monospace;--cond:'Saira Condensed','Roboto Condensed','Arial Narrow',system-ui,sans-serif;--sten:'Saira Stencil One','Saira Condensed',Impact,sans-serif;
  --brk:var(--tan);--fs:18px}
body.big{--fs:22px}
body.dark{--fg:#d5dbc9;--mut:#8c957c;--pri:#8fc64c;--acc:#d99b2b;--tan:#a8916a;--card:#121812;--bg:#0a0d0b}
html,body{font-family:var(--cond);font-weight:500;letter-spacing:.01em;background:var(--bg)}
b,strong{font-weight:700}

/* scanline + grid texture on screens and panels (not on the map) */
.screen:not(#screen-map),.panel,#sheet-body{
  background-color:var(--bg);
  background-image:repeating-linear-gradient(0deg,#ffffff06 0 1px,transparent 1px 3px),
    linear-gradient(#a6e05a08 1px,transparent 1px),linear-gradient(90deg,#a6e05a08 1px,transparent 1px);
  background-size:auto,28px 28px,28px 28px}
#sheet-body{background-color:var(--card)}

/* type */
h1,h2{font-family:var(--sten);font-weight:400;text-transform:uppercase;letter-spacing:.06em;color:var(--fg)}
h2{font-size:1.45em;border-bottom:1px solid var(--line);padding-bottom:6px}
h2::before{content:'\25B8 ';color:var(--pri)}
h3,h4{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--tan);font-size:1em}
h4{font-size:.92em}
.mut{color:var(--mut)}
a{color:var(--pri);text-underline-offset:3px}
code,.mono,.sc,.kvs b,.lh b,.wxcard b,.moon b,.hourly .hr b,.hourly button b,table.kv td b,.sbody .small.mut,#parcelstatus{font-family:var(--mono);font-weight:400;letter-spacing:0}
.hourly .hr,.hourly button{font-family:var(--mono)}

/* HUD corner brackets (8 thin gradient strokes) */
.card,.stand,.wxcard,.item,.moon,.entry,.lh,.hud,.chip,details.card{
  --c:var(--brk);border-radius:2px;
  background:
    linear-gradient(var(--c),var(--c)) left top/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) left top/2px 12px no-repeat,
    linear-gradient(var(--c),var(--c)) right top/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) right top/2px 12px no-repeat,
    linear-gradient(var(--c),var(--c)) left bottom/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) left bottom/2px 12px no-repeat,
    linear-gradient(var(--c),var(--c)) right bottom/12px 2px no-repeat,linear-gradient(var(--c),var(--c)) right bottom/2px 12px no-repeat,
    var(--card)}
.card,.item,.wxcard,.moon{border:1px solid var(--line)}
.item{border-radius:2px}.item:active{--c:var(--pri)}
.item .nm{font-family:var(--sten);font-weight:400;color:var(--pri)}
.item .sc{color:var(--acc)}

/* buttons / inputs */
.btn,.qbtn{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-radius:2px}
.btn,body.dark .btn{background:var(--od);color:var(--pri);border:1px solid var(--pri)}
.btn:active{background:var(--pri2);color:#0b0f0a}
.btn.sec,body.dark .btn.sec{background:transparent;color:var(--fg);border:1px solid var(--line2)}
.btn.warn{background:#5a1712;color:#fff;border-color:var(--bad)}
.btn[disabled]{opacity:.45}
input[type=text],input[type=search],input[type=date],input[type=url],select,textarea{background:var(--bg2);color:var(--fg);border:1px solid var(--line2);border-radius:2px;font-family:var(--mono)}
input[type=date]{color-scheme:dark}
input:focus,select:focus,textarea:focus{outline:1px solid var(--pri);border-color:var(--pri)}
label.chk input{accent-color:var(--pri)}
.windgrid button,.seg button{border-radius:2px;border:1px solid var(--line2);background:var(--card);color:var(--fg);font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em}
.windgrid button.on,.seg button.on,body.dark .windgrid button.on,body.dark .seg button.on{background:var(--od);color:var(--pri);border-color:var(--pri);box-shadow:inset 0 0 0 1px var(--pri)}
.windgrid .mid{text-transform:uppercase;font-size:.7em;letter-spacing:.1em}
details summary{text-transform:uppercase;letter-spacing:.1em;color:var(--tan);font-weight:700}

/* badges = HUD tags */
.badge{border-radius:1px;font-family:var(--mono);font-weight:400;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;background:transparent!important;border:1px solid currentColor;color:var(--mut)}
.badge.A{color:var(--A)}.badge.B{color:var(--B)}.badge.C{color:var(--C)}
.badge.pub{color:#7cc7ff}.badge.priv{color:#ffa24d}.badge.unk{color:var(--mut)}.badge.bad{color:var(--bad)}
.verdict{border-radius:2px;font-weight:600}
.verdict.mfl-closed{background:#ff4f3f14;border:1px solid var(--bad);color:#ffb3aa}
.verdict.public{background:#62b6d614;border:1px solid #62b6d6}.verdict.mfl-open{background:#4fdc6a14;border:1px solid var(--good)}
.verdict.private{background:#ff8c1a14;border:1px solid #ff8c1a}.verdict.unknown{background:#ffffff08;border:1px solid var(--line2)}
.verdict.closedbig{background:repeating-linear-gradient(-45deg,#7a1009 0 10px,#8f150d 10px 20px);border:2px solid var(--bad);color:#fff;text-transform:uppercase;letter-spacing:.06em;font-family:var(--cond);font-weight:700}
.verdict.closedbig .small{text-transform:none;letter-spacing:0}
table.kv td{border-bottom:1px solid var(--line)}
table.kv td:first-child{text-transform:uppercase;letter-spacing:.06em;font-size:.78em}
.entry{border-radius:2px;border-left-width:4px}

/* tabs / nav */
#tabs{background:#0a0d0b;border-top:1px solid var(--line2)}
#tabs button{font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:.6em;color:var(--mut);position:relative}
#tabs button i{filter:grayscale(1) brightness(1.4) contrast(.9);opacity:.75}
#tabs button.on{color:var(--pri)}
#tabs button.on i{filter:none;opacity:1}
#tabs button.on::before{content:'';position:absolute;top:0;left:18%;right:18%;height:3px;background:var(--pri);box-shadow:0 0 8px var(--pri)}

/* map chrome */
.leaflet-container{background:#0b0e0c;font-family:var(--cond)}
.basemap{filter:brightness(.62) contrast(1.18) saturate(.5) sepia(.25) hue-rotate(35deg)}
.chip,body.dark .chip{--c:var(--pri);background-color:#0e110fe6;color:var(--fg);border:1px solid var(--line2);box-shadow:0 2px 10px #000c;font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em}
.chip b{font-family:var(--mono);color:var(--acc);font-weight:400;font-size:1.1em}
.fab{background:#0e110fe6;border:1px solid var(--line2);border-radius:2px;color:var(--fg);box-shadow:0 2px 8px #000c}
.fab small{font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:var(--tan)}
.fab:active{border-color:var(--pri)}
.qbtn,body.dark .qbtn{background:#2c3a1f;color:var(--pri);border:1px solid var(--pri);box-shadow:0 0 0 1px #000,0 3px 12px #000c}
.qbtn.sec{background:#0e110fe6;color:var(--fg);border:1px solid var(--tan)}
.leaflet-bar a,.leaflet-bar a:hover{background:#0e110fe6;color:var(--pri);border-color:var(--line2)!important;border-radius:0!important}
.leaflet-bar{border:1px solid var(--line2)!important;border-radius:2px!important}
.leaflet-control-scale-line{background:#0e110fcc;color:var(--fg);border-color:var(--pri);font-family:var(--mono)}
.leaflet-control-attribution{background:#0e110fcc!important;color:var(--mut)}
.leaflet-control-attribution a{color:var(--tan)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--card);color:var(--fg);border:1px solid var(--line2);border-radius:2px}
.leaflet-tooltip.parcel-label{background:#0e110fcc;color:var(--tan);font-family:var(--mono);font-weight:400}
#parcelstatus{background:#0e110fcc;color:var(--pri);border-radius:2px}
#drawbar{background:var(--card);border:1px solid var(--acc);border-radius:2px}
#toast{background:#0e110ff2;color:var(--fg);border:1px solid var(--pri);border-radius:2px;font-family:var(--cond);letter-spacing:.03em}
.toastbtn{border-radius:2px;background:var(--acc);font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em}

/* reticle spot markers */
.spin{position:relative;background:#0b0f0ce0;color:var(--A);border:1.5px solid var(--A);border-radius:1px;padding:1px 6px 1px 19px;font:400 13px/1.35 var(--mono);text-shadow:none;box-shadow:0 0 0 1px #000a,0 0 8px #000}
.spin::before{content:'';position:absolute;left:3px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;
  background:radial-gradient(circle,currentColor 0 1.5px,transparent 2px),linear-gradient(currentColor,currentColor) center/1.5px 100% no-repeat,linear-gradient(currentColor,currentColor) center/100% 1.5px no-repeat;
  box-shadow:inset 0 0 0 1.5px currentColor;-webkit-mask:radial-gradient(circle,#000 0 2px,transparent 2.5px 3.5px,#000 4px);mask:radial-gradient(circle,#000 0 2px,transparent 2.5px 3.5px,#000 4px)}
.spin.tA{color:var(--A);border-color:var(--A)}.spin.tB{color:var(--B);border-color:var(--B)}.spin.tC{color:var(--C);border-color:var(--C)}
.spin.pub{border-width:1.5px;border-style:solid;box-shadow:0 0 0 1px #000a,0 0 8px #000,inset 0 -2px 0 #62b6d6}
.spin.priv{border-style:dashed;border-color:currentColor}
.spin.sel{outline:2px solid var(--acc);outline-offset:2px;box-shadow:0 0 14px var(--acc)}
.leaflet-container.lowzoom .spin{font-size:0;padding:0;width:16px;height:16px;border-radius:50%;background:#0b0f0cc0}
.leaflet-container.lowzoom .spin::before{left:2px;margin-top:-6px}
.spin.closed{background:#2a0c09e6!important;color:var(--bad)!important;border-color:var(--bad)!important}
.spin .x{background:var(--bad);color:#fff;border-radius:0;font-family:var(--cond);letter-spacing:.1em}
.mypin span,.opin{font-family:var(--mono);font-weight:400;border-radius:1px}
.mypin span{background:#0e110fdd;color:var(--fg)}
.cstand,.clab{font-family:var(--mono);font-weight:400}

/* sheets / panels */
.sheet{background:var(--card);border-radius:0;border-top:2px solid var(--pri);box-shadow:0 -6px 24px #000e}
.sheet-grip{background:var(--line2);border-radius:0}
.sheet-close{color:var(--tan)}
.panel{background:var(--bg)}

/* HUD readouts */
.hudrow{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}
.hud{--c:var(--pri);flex:1;min-width:140px;border:1px solid var(--line2);padding:6px 10px;display:flex;flex-direction:column;background-color:var(--bg2)}
.hud i{font-style:normal;font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.72em;color:var(--tan)}
.hud b{font-family:var(--mono);font-weight:400;font-size:1.65em;line-height:1.1;color:var(--fg)}
.hud small{font-family:var(--mono);color:var(--mut)}
.hud.key{--c:var(--acc);border-color:var(--acc)}.hud.key b{color:var(--acc);text-shadow:0 0 10px #f2b13455}
.lh{--c:#62b6d6;background-color:#62b6d60d;border:1px solid #2c4b57;border-left:3px solid #62b6d6}

/* Plan a sit stand cards: A // PRIMARY, B // BACKUP */
.stand{display:block;border:1px solid var(--line2);padding:0 0 8px;--c:var(--tan)}
.stand.a{--c:var(--hudA);border-color:#ff8c1a88}.stand.b{--c:var(--hudB);border-color:#62b6d688}
.stag,.stag.a,.stag.b{display:flex;align-items:center;gap:8px;width:auto;height:auto;border-radius:0;box-shadow:none;font:400 1.15em/1.6 var(--sten);letter-spacing:.12em;padding:2px 12px;color:#0b0f0a;text-align:left}
.stag.a{background:linear-gradient(90deg,var(--hudA),#ff8c1a55)}.stag.b{background:linear-gradient(90deg,var(--hudB),#62b6d655)}
.stag small{font-family:var(--cond);font-weight:700;font-size:.62em;letter-spacing:.2em}
.sbody{padding:6px 12px 0}
.sbody .big{font-family:var(--sten);font-weight:400;letter-spacing:.06em;color:var(--fg)}
.appr{background:#a6e05a10;border-left:3px solid var(--pri);border-radius:0}
.kvs{font-family:var(--cond);text-transform:uppercase;letter-spacing:.04em}
.kvs b{color:var(--acc);font-size:1.1em}
.hourly .hr,.hourly button{border-radius:1px;border:1px solid var(--line);background:var(--bg2)}
.hourly .hr b{color:var(--acc)}
.hourly button.on{border-color:var(--pri);background:#a6e05a18}

/* weather instruments */
.wxcard{--c:var(--pri);background-color:var(--bg2)}
.wxhead b{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.wxhead .mut{font-family:var(--mono)}
.wxrow .big b,.wxt .big{color:var(--acc);font-size:1.2em}
.wxrow .big{font-family:var(--cond);text-transform:uppercase;letter-spacing:.04em}
.trend-up{color:#7cc7ff}.trend-dn{color:var(--acc)}
.moon{--c:var(--tan);border-style:solid;background-color:var(--bg2)}
.moon .mi{filter:grayscale(.3) sepia(.4) brightness(1.05)}
.moon > div > b:first-child{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tan)}
.cmp text{font-family:var(--mono)}

/* legend dots */
.dot{border-radius:1px;border-color:#000}
/* subtitle inside headings: condensed, not stencil */
h2 small{font-family:var(--cond);font-weight:600;letter-spacing:.08em;color:var(--tan)!important;font-size:.55em!important}
.moon b,.mono{font-family:var(--mono);letter-spacing:0}
/* inline times inside prose: condensed tabular figures read cleaner than wide mono cells */
.moon b,b.mono,.lh .small b{font-family:var(--cond);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--fg)}
.cmp text[font-size="10"],.cmp text[font-size="20"]{paint-order:stroke;stroke:var(--bg2);stroke-width:5px;stroke-linejoin:round}
table.kv td b{font-family:var(--cond);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em}

/* ===== v5 layers: wind / activity / folders / search ===== */
.mapsearch{position:absolute;top:10px;left:10px;right:72px;z-index:600;display:flex;gap:6px;align-items:stretch;pointer-events:none}
.mapsearch input{pointer-events:auto;flex:1;min-width:0;background:var(--card);color:var(--fg);border:1px solid var(--pri);border-radius:2px;padding:10px 12px;font-family:var(--cond);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.85em}
.mapsearch input::placeholder{color:var(--mut);text-transform:none;letter-spacing:0;font-weight:500}
.ms-fold{pointer-events:auto;width:44px;background:var(--card);color:var(--pri);border:1px solid var(--pri);border-radius:2px;font-size:1.1em;cursor:pointer}
.ms-hits{pointer-events:auto;position:absolute;top:100%;left:0;right:50px;margin-top:4px;background:var(--card);border:1px solid var(--line);max-height:240px;overflow:auto;box-shadow:0 8px 24px #000a}
.ms-hit{display:block;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line2);color:var(--fg);padding:10px 12px;font-family:var(--cond);font-size:.9em;cursor:pointer}
.ms-hit:hover,.ms-hit:focus{background:var(--od);color:var(--pri)}
.ms-hit b{font-family:var(--mono);color:var(--acc);margin-right:6px}
.ms-empty{padding:12px;color:var(--mut);font-size:.85em}
.search-reticle{width:28px;height:28px;transform:translate(-50%,-50%);border:2px solid var(--acc);border-radius:50%;box-shadow:0 0 0 1px #000,0 0 12px var(--acc);position:relative}
.search-reticle::before,.search-reticle::after{content:'';position:absolute;background:var(--acc)}
.search-reticle::before{left:50%;top:-6px;bottom:-6px;width:2px;transform:translateX(-50%)}
.search-reticle::after{top:50%;left:-6px;right:-6px;height:2px;transform:translateY(-50%)}

.wslide{position:absolute;left:10px;right:10px;bottom:72px;z-index:550;background:rgba(14,17,15,.92);border:1px solid var(--pri);padding:8px 10px 10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.wslide-lab{flex:1 1 100%;font-family:var(--cond);font-size:.78em;letter-spacing:.06em;text-transform:uppercase;color:var(--tan)}
.wslide-lab b{font-family:var(--mono);color:var(--acc);font-size:1.15em;letter-spacing:0}
.wslide input[type=range]{flex:1;accent-color:var(--pri)}
.wslide-x{background:transparent;border:1px solid var(--line2);color:var(--mut);width:36px;height:36px;cursor:pointer}
.wgrid-icon,.wstn-icon{background:transparent!important;border:0!important}
.wgrid-arr{transform:translate(-50%,-50%);text-align:center;pointer-events:none}
.wgrid-arr span{display:block;margin-top:-2px;font-family:var(--mono);font-size:9px;color:var(--acc);text-shadow:0 0 4px #000}
.wstn{transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px}
.wstn-lab{background:rgba(14,17,15,.88);border:1px solid var(--pri);padding:2px 6px;font-family:var(--mono);font-size:10px;color:var(--fg);white-space:nowrap;text-align:center}
.wstn-lab b{color:var(--acc)}
.wstn-lab small{color:var(--tan);margin-left:2px}
.wstn-lab i{display:block;font-style:normal;color:var(--mut);font-size:9px;letter-spacing:.04em}

.act-legend{position:absolute;left:10px;right:10px;bottom:72px;z-index:540;background:rgba(14,17,15,.92);border:1px solid var(--tan);padding:8px 10px}
.act-legend .hud{flex:1}
.act-ramp{display:flex;align-items:center;gap:8px;margin-top:6px;font-family:var(--cond);font-size:.7em;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.act-ramp i{flex:1;height:8px;background:linear-gradient(90deg,#f2b13455,#f2641988,#ff4f3fcc);border:1px solid var(--line2)}
.act-heat{mix-blend-mode:screen}

.ftree details{border:1px solid var(--line2);margin:6px 0;padding:0}
.ftree summary{padding:10px 12px;cursor:pointer;font-family:var(--cond);letter-spacing:.08em;list-style:none}
.ftree summary::-webkit-details-marker{display:none}
.ftree summary::before{content:'▸ ';color:var(--pri)}
.ftree details[open]>summary::before{content:'▾ '}
.ftree .fsub{font-size:.9em;color:var(--tan);padding-left:8px}
.ftree .fbody{padding:0 6px 8px}
.ftree .item{cursor:pointer}

/* keep windchip below search */
#windchip{top:58px}

#wslide:not([hidden]) ~ .act-legend, .act-legend:not([hidden]) ~ #wslide{/* sibling order varies */}
.act-legend{bottom:72px}.wslide{bottom:72px}
body.layers-both .act-legend{bottom:148px}

/* ===== v6 deer travel lines ===== */
.tl-sw{display:inline-flex;align-items:center;gap:6px;margin-right:10px;font-size:.85em}
.tl-sw i{display:inline-block;width:26px;height:0;border-top:4px solid #39ff6a;box-shadow:0 0 0 2px #04140a}
.tl-sw i.s{border-top-width:2px;opacity:.85}
.tl-sw i.o{border-top:3px dashed #39ff6a}
.tl-pop b{color:var(--fg)}
.leaflet-travelPane-pane path{filter:drop-shadow(0 0 2px rgba(57,255,106,.35))}

/* ===== v7 parking + 3D ===== */
.parkpin{transform:translate(-50%,-50%);width:22px;height:22px;border-radius:3px;background:#f2b134;color:#1a1408;font-family:var(--sten);text-align:center;line-height:22px;border:2px solid #0e110f;box-shadow:0 0 0 1px #f2b134}
.parkpin.mine{background:#ff8c1a}
#view3d{position:fixed;inset:0;z-index:800;background:#0e110f;display:flex;flex-direction:column}
#view3d[hidden]{display:none}
.v3bar{display:flex;gap:10px;align-items:center;padding:8px 10px;background:#0e110f;border-bottom:1px solid #3b4a2a;font-family:var(--sten);letter-spacing:.08em;color:#eef1e4}
.v3bar button{margin-left:auto;background:#3b4a2a;color:#eef1e4;border:1px solid #a6e05a;padding:8px 12px;font-family:var(--cond);letter-spacing:.06em;text-transform:uppercase}
#v3map{flex:1;min-height:0}
#view3d .chip{position:absolute;top:58px;left:10px;right:auto;z-index:5}
.v3note{position:absolute;bottom:8px;left:8px;right:70px;margin:0;font-size:11px;color:#c8ad7f;background:rgba(14,17,15,.8);padding:4px 8px;pointer-events:none}
#b-3d{font-family:var(--sten);letter-spacing:.04em}

/* ---------- v8: bedding label styles ---------- */
.leaflet-tooltip.cbed-label{background:rgba(40,0,0,.78);border:1px solid #ff2d2d;color:#ffd6d6;font:700 11px/1.15 var(--mono,ui-monospace,monospace);letter-spacing:.06em;text-align:center;padding:3px 6px;border-radius:3px;box-shadow:0 0 8px #ff2d2d55;white-space:nowrap}
.leaflet-tooltip.cbed-label small{font-weight:500;letter-spacing:.02em;color:#ffb3b3}
.leaflet-tooltip.cbed-label::before{display:none}
.lowzoom .leaflet-tooltip.cbed-label{display:none}
/* v9: label stacked ABOVE the diamond and centred on it (was a wide row to the right that slid under the right-edge map buttons) */
.cbstand{position:absolute;transform:translate(-50%,calc(-100% + 9px));display:flex;flex-direction:column-reverse;align-items:center;gap:2px;white-space:nowrap;pointer-events:auto}
.cbstand i{width:14px;height:14px;border:2px solid #0e110f;background:#ffe14d;transform:rotate(45deg);box-shadow:0 0 0 2px #ffe14d88}
.cbstand b{font:700 11px var(--mono,ui-monospace,monospace);color:#ffe14d;background:#0e110fd0;padding:1px 4px;border:1px solid #ffe14d66}
.cbstand em{font:600 9px var(--mono,ui-monospace,monospace);font-style:normal;color:#0e110f;background:#ffe14d;padding:1px 3px;letter-spacing:.08em}
.badge.cbadge{background:#ff2d2d;color:#fff;border-color:#ff2d2d}
.lowzoom .cbstand em{display:none}   /* v9: zoomed out, keep just the stand name */
/* v10: facing arrow on stand pins (js/face.js) + corridor stand ladder icon (js/corridor-stands.js) */
.facearr{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transform-origin:0 0}
.facearr svg{position:absolute;left:-8px;top:-46px;width:16px;height:24px;filter:drop-shadow(0 0 2px #000)}
.facearr.pick svg{left:-10px;top:-50px;width:20px;height:30px}
.lowzoom .facearr{display:none}
.cstd{position:absolute;left:0;top:0;width:0;height:0}
.cstd .cstd-ic{position:absolute;left:-13px;top:-15px;filter:drop-shadow(0 0 3px #000)}
.cstd .facearr.cs svg{left:-8px;top:-42px;width:16px;height:24px}
.cstd .cstd-n{position:absolute;left:9px;top:-24px;min-width:18px;height:18px;line-height:18px;text-align:center;border-radius:9px;background:#3fe0ff;color:#04140a;font:800 12px var(--mono,ui-monospace,monospace);box-shadow:0 0 0 2px #04140a}
.cstd.nogo .cstd-ic{opacity:.55}
.lowzoom .cstd,.lowz13 .cstd{display:none}   /* corridor stands show at zoom 13+ */
.facebox{margin:6px 0;padding:6px 8px;border-left:4px solid #f4f1e1;background:#f4f1e112}
.facebox.bad{border-left-color:var(--bad)}
.stand .face{margin:4px 0;padding:4px 6px;border-left:4px solid #f4f1e1;background:#f4f1e10f}
.stand .face.bad{border-left-color:var(--bad)}

/* ===== v13 tree types + acorn spots ===== */
.acn{position:absolute;left:0;top:0;width:0;height:0}
.acn svg{position:absolute;left:-11px;top:-13px;filter:drop-shadow(0 0 2px #000)}
.acn.hot svg{left:-13px;top:-15px;width:26px;height:30px}
.acn .acn-t{position:absolute;left:9px;top:-22px;padding:0 3px;border-radius:3px;background:#ff7a1a;color:#1a0c00;font:800 9px var(--mono,ui-monospace,monospace);box-shadow:0 0 0 1px #1a0c00}
.acn .acn-ok{position:absolute;left:-15px;top:-20px;width:14px;height:14px;line-height:14px;text-align:center;border-radius:7px;background:#4fdc6a;color:#04140a;font:900 10px sans-serif;font-style:normal;box-shadow:0 0 0 1.5px #04140a}
.badge.acn-hot{color:#ff7a1a;font-weight:700}.badge.acn-good{color:#e8c48a;font-weight:700}.badge.acn-mine{color:#4fdc6a;font-weight:700}
.acn-pop>div,.tr-pop>div{margin-top:4px}.acn-pop a{word-break:break-all}
.mk-tree{display:inline-block;width:22px;height:16px;margin:2px;border:1px solid #0008;vertical-align:middle}
.mk-acn{position:relative;display:inline-block;width:40px;height:40px;vertical-align:middle}.mk-acn .acn{left:20px;top:22px}

/* v14 public-land boundary warnings + walk-in distance (js/public-land.js, js/walkin.js) */
.pubwarn { margin: 3px 0; padding: 3px 6px; border-left: 3px solid #ffb300; background: rgba(255, 179, 0, .12); border-radius: 4px; }
.pubwarn.bad { border-left-color: var(--bad, #ff5252); background: rgba(255, 82, 82, .14); font-weight: 600; }
.pubfix { margin: 3px 0; color: #9be7a5; }
.walkin { margin: 4px 0; padding: 4px 6px; border-left: 3px solid #ffd54f; background: rgba(255, 213, 79, .10); border-radius: 4px; line-height: 1.35; }
.walkin.bad { border-left-color: var(--bad, #ff5252); background: rgba(255, 82, 82, .10); }
.walkin .mut { font-size: .95em; }
.walkp { transform: translate(-50%, -50%); width: 22px; height: 22px; border-radius: 5px; background: #1565c0; color: #fff; border: 2px solid #fff; font: 800 14px/18px system-ui; text-align: center; box-shadow: 0 1px 4px #000a; }
