/* Board layout and components. Loaded after app.css (legacy base) and theme.css (tokens, type scale). */

body,body.fit{padding:14px clamp(12px,1.3vw,24px) 8px;gap:clamp(8px,.7vw,14px)}

/* ---------- header ---------- */
.top{align-items:center;gap:20px;flex-wrap:nowrap}
.brand{flex:1;min-width:0;flex-wrap:nowrap}
.br-cond{display:flex;align-items:baseline;gap:14px;min-width:0;cursor:help}
.br-cond small{font-size:var(--t-xs);color:var(--label);letter-spacing:0;text-transform:none}
.br-cond b{font-size:var(--t-xl);font-weight:500;letter-spacing:0;line-height:1.1;color:var(--cond);transition:color .6s}
body:not([data-cond]) .br-cond b{color:var(--label)}
.br-cond em{flex:1;min-width:0;font-style:normal;font-size:var(--t-md);color:var(--quiet);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body[data-cond="normal"] .br-cond em{color:var(--label)}

.top-right{gap:clamp(14px,1.4vw,26px);flex-wrap:nowrap;align-items:baseline;position:relative}
.nav{display:flex;gap:clamp(12px,1.1vw,20px)}
.nav a{font-size:var(--t-sm);color:var(--muted);text-decoration:none}
.nav a:hover{color:var(--fg)}
.health{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:var(--t-sm);color:var(--label);background:none;border:0;padding:0;cursor:pointer;white-space:nowrap}
.health i{width:6px;height:6px;border-radius:50%;background:var(--ok)}
.health.warn{color:var(--warn)}.health.warn i{background:var(--warn)}
.health.bad{color:var(--bad)}.health.bad i{background:var(--bad)}
.health:hover{color:var(--fg)}
.clock{flex-direction:row;align-items:baseline;gap:10px;padding:0}
.clock span{font-size:var(--t-lg);font-weight:400;letter-spacing:.01em;line-height:1.1;color:var(--fg)}
.clock small{order:-1;font-size:var(--t-sm);color:var(--label)}

/* per-source list, opened from the health indicator */
.sources,body.fit .sources{position:absolute;right:clamp(12px,1.3vw,24px);top:clamp(46px,3.6vw,64px);z-index:3000;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;width:min(620px,92vw);
  padding:10px 16px;background:var(--panel);border:1px solid var(--line2);border-radius:var(--radius);box-shadow:0 18px 50px rgba(0,0,0,.6);overflow:visible}
.sources[hidden],body.fit .sources[hidden]{display:none}
.src,body.fit .src{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;padding:6px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font-size:var(--t-sm);white-space:nowrap;min-width:0}
.src i{width:6px;height:6px;background:var(--ok)}
.src b{font-weight:400;color:var(--quiet);overflow:hidden;text-overflow:ellipsis}
.src small{color:var(--label);font-size:var(--t-xs)}
.src.fail b,.src.fail small{color:var(--bad)}.src.fail i{background:var(--bad)}.src.stale small{color:var(--warn)}

/* ---------- status row: dark cockpit ---------- */
.tiles,body.fit .tiles{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;flex:none}
.tile,body.fit .tile{background:var(--panel);border:0;border-radius:0;padding:clamp(8px,.65vw,13px) clamp(10px,.85vw,16px);min-width:0;backdrop-filter:none;box-shadow:inset 0 2px 0 transparent;transition:background .4s,box-shadow .4s}
.tile::before{display:none}
.tile[data-tab],.tile[data-href]{cursor:pointer}
.tile[data-tab]:hover,.tile[data-href]:hover{background:#111720}
.tile .lbl,body.fit .tile .lbl{font-size:var(--t-xs);letter-spacing:0;text-transform:none;color:var(--label);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile .num,body.fit .tile .num{font-family:var(--font);font-size:var(--t-lg);font-weight:500;letter-spacing:0;line-height:1.25;margin-top:2px;color:var(--quiet);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:none}
.tile .sub,body.fit .tile .sub{font-size:var(--t-xs);color:var(--label);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tiles .tile.unk .num{color:var(--label)}
.tiles .tile.warn{box-shadow:inset 0 2px 0 var(--warn)}
.tiles .tile.warn .num{color:var(--warn)}
.tiles .tile.bad{box-shadow:inset 0 2px 0 var(--bad);background:linear-gradient(rgba(244,105,92,.09),rgba(244,105,92,.03)),var(--panel)}
.tiles .tile.bad .num{color:var(--bad)}
.tiles .tile.warn .sub,.tiles .tile.bad .sub{color:var(--muted)}

/* ---------- main grid: chart | now | detail ---------- */
.grid,body.fit main.grid{display:grid;gap:clamp(8px,.7vw,14px);grid-template-columns:minmax(0,1fr);grid-template-rows:none}
@media (min-width:1000px){
  .grid,body.fit main.grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,1fr);grid-template-rows:minmax(0,.8fr) minmax(0,1fr);grid-template-areas:"map now" "map side"}
  .mapwrap{grid-area:map}.now{grid-area:now}.side{grid-area:side}
}
@media (min-width:1400px){
  .grid,body.fit main.grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.64fr) minmax(360px,.9fr);grid-template-rows:minmax(0,1fr);grid-template-areas:"map now side"}
}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(10px,.8vw,16px);box-shadow:none;backdrop-filter:none}
.panel::before{display:none}
.panel-head{margin-bottom:8px;flex-wrap:nowrap;min-height:26px;align-items:center}
.panel-head h2,.feeds-head h2{font-size:var(--t-sm);font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted)}
.now,.side{display:flex;flex-direction:column;min-height:0;max-height:none}
.now .log{flex:1;min-height:0;overflow:auto}
body:not(.fit) .now .log{max-height:340px}
body:not(.fit) .side{max-height:720px}
.tab-badge{background:none;color:var(--warn);border:0;border-radius:0;font-size:var(--t-xs);font-weight:500;line-height:inherit;min-width:0;padding:0;margin-left:2px}
.tab-badge::before{content:'· '}

/* map */
#map,.leaflet-container{background:#070a0e!important;border-radius:2px;font-family:var(--font)}
body.fit .mapwrap .panel-head{margin-bottom:8px}
.map-titlebar{gap:14px;flex-wrap:nowrap;align-items:baseline}
.t3d-open,.dn-toggle,.mapkey summary{font:inherit!important;font-size:var(--t-sm)!important;letter-spacing:0!important;text-transform:none!important;color:var(--label)!important;background:none!important;border:0!important;border-radius:0!important;padding:0!important;cursor:pointer;box-shadow:none!important}
.t3d-open:hover,.dn-toggle:hover,.mapkey summary:hover,.mapkey[open] summary{color:var(--fg)!important}
.mapkey{position:relative;margin-left:auto}
.mapkey summary{list-style:none}
.mapkey summary::-webkit-details-marker{display:none}
.mapkey .legend{position:absolute;right:0;top:calc(100% + 8px);z-index:1200;display:grid;grid-template-columns:repeat(2,max-content);gap:8px 20px;padding:12px 14px;background:var(--panel);border:1px solid var(--line2);border-radius:var(--radius);box-shadow:0 14px 40px rgba(0,0,0,.6);font-size:var(--t-sm);color:var(--quiet);white-space:nowrap}
.leaflet-control-zoom a,.leaflet-bar a{background:var(--panel)!important;color:var(--muted)!important;border-color:var(--line)!important;border-radius:0!important}
.leaflet-bar{border:1px solid var(--line2)!important;border-radius:var(--radius)!important;box-shadow:none!important}
.leaflet-control-layers{background:var(--panel)!important;color:var(--fg);border:1px solid var(--line2)!important;border-radius:var(--radius)!important;box-shadow:0 14px 40px rgba(0,0,0,.6)!important;font-size:var(--t-sm)}
.leaflet-control-layers-toggle{filter:invert(.8) grayscale(1)}
.leaflet-control-attribution{background:rgba(8,11,15,.7)!important;color:var(--label)!important;font-size:10px!important}
.leaflet-control-attribution a{color:var(--muted)!important}
/* popups and tooltips in the same voice as the panels */
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--panel);color:var(--fg);box-shadow:0 14px 40px rgba(0,0,0,.6)}
.leaflet-popup-content-wrapper{border:1px solid var(--line2);border-radius:var(--radius)}
.leaflet-popup-content{font-size:var(--t-sm);color:var(--quiet)}
.leaflet-popup-content b,.leaflet-popup-content strong,.leaflet-popup-content h3{color:var(--fg);font-weight:500}
.leaflet-popup-content a{color:var(--info)}
.leaflet-popup-content .em-card,.leaflet-popup-content .em-card .m,.leaflet-popup-content .em-card p.em-ins{color:var(--quiet)}
.leaflet-container a.leaflet-popup-close-button{color:var(--label)}
.leaflet-tooltip{background:var(--panel);color:var(--fg);border:1px solid var(--line2);border-radius:var(--radius);box-shadow:none;font-size:var(--t-xs);padding:4px 8px}
.leaflet-tooltip-top::before{border-top-color:var(--line2)}.leaflet-tooltip-bottom::before{border-bottom-color:var(--line2)}
.leaflet-tooltip-left::before{border-left-color:var(--line2)}.leaflet-tooltip-right::before{border-right-color:var(--line2)}
/* chart margin: latitude / longitude ticks */
.chart-margin{position:absolute;inset:0;z-index:450;pointer-events:none;font-size:10.5px;color:var(--label)}
.chart-margin span{position:absolute;white-space:nowrap}
.cm-lat{left:0;transform:translateY(-50%);padding-left:12px}
.cm-lat::before{content:'';position:absolute;left:0;top:50%;width:8px;border-top:1px solid var(--line2)}
.cm-lon{top:0;transform:translateX(-50%);padding-top:11px}
.cm-lon::before{content:'';position:absolute;left:50%;top:0;height:8px;border-left:1px solid var(--line2)}
.dn-ticker{border-radius:var(--radius)!important;background:none!important;border-color:var(--line)!important;font-size:var(--t-sm)}
.dn-tag{background:none!important;color:var(--label)!important;font:400 var(--t-xs)/1 var(--font)!important;letter-spacing:0!important;text-transform:none!important;border-right:1px solid var(--line)}

/* tabs */
.tabs{display:flex;flex-wrap:nowrap;gap:clamp(14px,1.3vw,24px);margin-bottom:12px;border-bottom:1px solid var(--line);background:none;padding:0;border-radius:0}
.tabs .tab{flex:0 1 auto;min-width:0;font-size:var(--t-sm);letter-spacing:0;text-transform:none;color:var(--label);background:none;border:0;border-bottom:1px solid transparent;border-radius:0;padding:2px 0 9px;margin-bottom:-1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tabs .tab:hover{color:var(--fg)}
.tabs .tab.on{color:var(--fg);background:none;border-bottom-color:var(--fg);box-shadow:none}

/* lists and cards inside the detail panel */
.list{gap:0}
.item{background:none;border:0;border-bottom:1px solid var(--line);border-left:2px solid var(--line2);border-radius:0;padding:9px 10px;font-size:var(--t-sm)}
.item:hover{background:#111720}
.wall .empty{grid-column:1/-1}
.cam{border-radius:2px;background:var(--panel2);border-color:var(--line)}
.wall-h{font-size:var(--t-sm);font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted);margin:14px 0 6px}
.wall-h small{font-weight:400;color:var(--label)}
.note{font-size:var(--t-xs);color:var(--label);line-height:1.45}
.pge-card{border-radius:var(--radius);border-color:var(--line);background:none}
.pge-card b{font-size:var(--t-sm);font-weight:500}
.pge-card small{font-size:var(--t-xs);color:var(--label)}
.pge-card:hover{border-color:var(--line2)}
.em-card{border-radius:0;background:none;border:0;border-bottom:1px solid var(--line);border-left:2px solid var(--warn);font-size:var(--t-sm)}
.em-card.urgent{background:rgba(244,105,92,.06);border-left-color:var(--bad)}
.camseg{display:flex;gap:clamp(14px,1.3vw,24px);margin-bottom:12px;border:0}
.camseg button{flex:none;font:inherit;font-size:var(--t-sm);letter-spacing:0;text-transform:none;color:var(--label);background:none;border:0;padding:0;cursor:pointer}
.camseg button:hover{color:var(--fg)}
.camseg button.on{color:var(--fg);background:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
/* passes list */
.ps-block{display:flex;flex-direction:column;gap:0;margin-bottom:6px}
.ps-h{font-size:var(--t-sm);font-weight:500;color:var(--muted);margin:10px 0 4px}
.ps-row{display:block;text-decoration:none;color:inherit}
.ps-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ps-tag{flex:none;font-size:10.5px;font-weight:600;letter-spacing:.04em;color:#111;padding:1px 6px;border-radius:2px}
.ps-closed .ps-tag{color:#fff}
.ps-seasonal .ps-tag{color:#e2e8f0}
.ps-sub{font-size:var(--t-sm);font-weight:500;color:var(--muted);margin:12px 0 0;padding-bottom:6px;border-bottom:1px solid var(--line)}
/* outlook tab */
.rg{display:flex;flex-direction:column;gap:0;padding:0 0 12px}
.rg-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:18px 0 2px;padding-bottom:6px;border-bottom:1px solid var(--line);font-size:var(--t-sm);font-weight:500;color:var(--muted)}
.rg-h:first-child{margin-top:2px}
.rg-h small{font-weight:400;font-size:var(--t-xs);color:var(--label)}
.rg-row{display:grid;grid-template-columns:6px 1fr auto;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--quiet)}
.rg-row i{width:6px;height:6px;border-radius:50%;background:var(--line2)}
.rg-row.lvl-warn{color:var(--fg)}.rg-row.lvl-warn i{background:var(--warn)}
.rg-row.lvl-bad{color:var(--fg)}.rg-row.lvl-bad i{background:var(--bad)}
.rg-row b{font-weight:400;font-size:var(--t-xs);color:var(--label);white-space:nowrap}
.rg-main{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rg-note{margin:0 4px 4px 20px;font-size:var(--t-xs);color:var(--muted)}
.rg-links{display:flex;flex-wrap:wrap;gap:4px 16px;margin:10px 4px 0}
.rg-links a{font-size:var(--t-xs);color:var(--muted);text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:3px}
.rg-links a:hover{color:var(--fg)}
.rg-aqi{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5em,1fr));gap:0 16px;margin:0 4px}
.rg-chip{display:flex;align-items:baseline;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);min-width:0;color:var(--quiet)}
.rg-chip b{font-weight:500;font-size:var(--t-sm);min-width:2em;text-align:right}
.rg-chip.lvl-warn b{color:var(--warn)}.rg-chip.lvl-bad b{color:var(--bad)}
.rg-chip span{font-size:var(--t-sm);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg .empty{margin:6px 0}

.foot,body.fit .foot{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-top:0;padding-top:0;font-size:var(--t-xs);color:var(--label);white-space:nowrap}
.foot > span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.foot-ctl{display:flex;gap:18px;flex:none}
#sound.on{color:var(--fg);border:0}
dialog#zoom{border-radius:var(--radius);border-color:var(--line2)}
#q{border-radius:var(--radius);font-size:var(--t-sm)}

/* small screens: stack, let the page scroll */
@media (max-width:999px){
  .top{flex-wrap:wrap}.top-right{flex-wrap:wrap}
  .br-cond{flex-wrap:wrap}.br-cond em{white-space:normal;flex-basis:100%}
  .tiles,body.fit .tiles{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .sources,body.fit .sources{position:static;width:auto;grid-template-columns:1fr}
  .foot,body.fit .foot{flex-direction:column;white-space:normal}
}

/* ---------- map symbols (see map-style.js): grey = ordinary, amber = look, red = act. No glow, no motion. ---------- */
.fire-dot{border-radius:50%;background:var(--warn);opacity:.9;box-shadow:0 0 0 1px #070a0e,0 0 0 4px rgba(238,170,69,.16);animation:none}
.gauge-flood{animation:none}
.gauge-mk{transform:rotate(45deg) scale(.78);background:var(--warn);box-shadow:0 0 0 1px #070a0e}
.gauge-mk.g-watch{background:#070a0e;box-shadow:inset 0 0 0 1.5px var(--warn)}
.gauge-mk.g-bad{background:var(--bad)}
.volc{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid var(--label);filter:none;opacity:.85}
.volc.lvl-advisory{border-bottom-color:var(--warn);opacity:1}
.volc.lvl-watch{border-bottom-color:var(--warn);opacity:1;filter:drop-shadow(0 0 0 #070a0e)}
.volc.lvl-warning{border-bottom-color:var(--bad);opacity:1}
.em-pin,.tsu-pin,.unrest-pin{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font:600 12px/1 var(--font);color:var(--warn);background:#070a0e;border:1.5px solid var(--warn);box-shadow:0 0 0 3px rgba(7,10,14,.6);animation:none}
.em-pin.urgent,.tsu-pin.tsu-warn{color:var(--bad);border-color:var(--bad);background:#070a0e;box-shadow:0 0 0 3px rgba(7,10,14,.6);animation:none}
.tsu-pin.tsu-adv{background:#070a0e;box-shadow:0 0 0 3px rgba(7,10,14,.6)}
.tsu-pin{color:var(--quiet);border-color:var(--quiet)}
.tsu-pin.tsu-adv{color:var(--warn);border-color:var(--warn)}
.unrest-pin{color:var(--quiet);border-color:var(--quiet)}
.unrest-count{background:#070a0e;color:var(--quiet);border:1px solid var(--line2);font-family:var(--font)}
.wc-icon i{left:14px;top:14px;width:6px;height:6px;border-radius:50%;background:var(--label);border:0;box-shadow:0 0 0 1px #070a0e}
.wc-cone path{fill:rgba(141,153,166,.10);stroke:rgba(141,153,166,.35);stroke-width:.8}
.ac-ic{filter:drop-shadow(0 0 1px rgba(0,0,0,.9))}
.ac-ic.ac-alert{animation:none;filter:drop-shadow(0 0 0 1px #070a0e)}
.pass-pin{background:rgba(7,10,14,.9);border-width:1px;border-radius:var(--radius);font-family:var(--font);font-weight:500;color:var(--fg)}
.wx-pin{font-family:var(--font);font-weight:500;border-width:1px}

/* legend swatches */
.legend .sw{width:12px;height:12px;border-radius:2px;display:inline-block;flex:none;background:none;border:0;transform:none;margin-right:6px;vertical-align:-1px}
.legend .sw-bad{background:rgba(244,105,92,.18);border:1.5px solid var(--bad)}
.legend .sw-warnarea{background:rgba(238,170,69,.12);border:1.5px solid var(--warn)}
.legend .sw-watch{border:1.5px dashed var(--warn)}
.legend .sw-advarea{border:1.5px dotted rgba(224,196,98,.6)}
.legend .sw-fire{border-radius:50%;background:var(--warn);width:10px;height:10px;box-shadow:0 0 0 3px rgba(238,170,69,.16)}
.legend .sw-river{border-radius:0;background:var(--warn);width:8px;height:8px;transform:rotate(45deg);margin-left:2px;margin-right:8px}
.legend .sw-eq{border-radius:50%;border:1.5px solid var(--quiet)}
.legend .sw-volc{width:0;height:0;border-radius:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid var(--label)}
.legend .sw-inc{border-radius:50%;background:var(--warn);width:7px;height:7px;margin-left:2px;margin-right:9px}
.legend .sw-cam{border-radius:50%;background:var(--label);width:6px;height:6px;margin-left:3px;margin-right:9px}
.legend span{display:flex;align-items:center}

/* route tags on the board's base map */
.rt-tag{display:inline-block;transform:translate(-50%,-50%);font:500 9.5px/1 var(--font);letter-spacing:.02em;color:#7f8c99;background:#070a0e;border:1px solid #222b35;border-radius:2px;padding:2px 4px;white-space:nowrap}
.rt-tag.rt-i{color:#a3adb8;border-color:#34414e}

/* trend strips (trends.js) */
.tile .spark{display:block;width:100%;height:clamp(14px,1.05vw,20px);margin-top:clamp(5px,.4vw,8px);color:var(--label);overflow:visible}
.tiles .tile.warn .spark{color:var(--warn)}
.tiles .tile.bad .spark{color:var(--bad)}
.spark .sp-line{fill:none;stroke:currentColor;stroke-width:1.25;vector-effect:non-scaling-stroke;stroke-linejoin:round;opacity:.95}
.spark .sp-fc{stroke-dasharray:1.5 2.5;opacity:.75}
.spark .sp-area{fill:currentColor;opacity:.09;stroke:none}
.spark .sp-base{stroke:var(--line2);stroke-width:1;vector-effect:non-scaling-stroke}
.spark.sp-empty .sp-base{stroke-dasharray:1 3}
.spark .sp-zero,.spark .sp-tick{stroke:var(--line2);stroke-width:1;vector-effect:non-scaling-stroke}
.spark .sp-now{stroke:var(--muted);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.6}
.spark .sp-bar{fill:currentColor;opacity:.75}
.spark .sp-bar.warn{fill:var(--warn);opacity:1}.spark .sp-bar.bad{fill:var(--bad);opacity:1}
.spark .sp-block{fill:var(--line2)}
.spark .sp-block.warn{fill:var(--warn);opacity:.85}

/* layer menu (map-layers.js) */
.leaflet-control-layers.lc-hidden{display:none!important}
.lyr{position:relative;margin-left:auto}
.mapkey{margin-left:14px}
.lyr-btn{font:inherit;font-size:var(--t-sm);color:var(--label);background:none;border:0;padding:0;cursor:pointer}
.lyr-btn:hover,.lyr-btn[aria-expanded="true"]{color:var(--fg)}
.lyr-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:1300;width:min(340px,80vw);max-height:min(72vh,640px);overflow:auto;padding:6px 14px 12px;background:var(--panel);border:1px solid var(--line2);border-radius:var(--radius);box-shadow:0 18px 50px rgba(0,0,0,.6)}
.lyr-g{padding-top:8px}
.lyr-h{font-size:var(--t-xs);color:var(--label);padding:4px 0 4px;border-bottom:1px solid var(--line)}
.lyr-row{display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--muted);cursor:pointer}
.lyr-row:hover{color:var(--fg)}
.lyr-row.on{color:var(--fg)}
.lyr-row input{appearance:none;width:12px;height:12px;margin:0;border:1px solid var(--line2);border-radius:2px;background:none;cursor:pointer}
.lyr-row input:checked{background:var(--fg);border-color:var(--fg);box-shadow:inset 0 0 0 2px var(--panel)}
.lyr-row small{font-size:var(--t-xs);color:var(--label)}
.lyr-seg{display:flex;gap:16px;padding:8px 0 0}
.lyr-seg button{font:inherit;font-size:var(--t-sm);color:var(--label);background:none;border:0;padding:0;cursor:pointer}
.lyr-seg button.on{color:var(--fg);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}

/* convergence (converge.js) */
.cv-tag{display:inline-block;transform:translate(-50%,calc(-100% - 3px));white-space:nowrap;font:500 10.5px/1 var(--font);padding:3px 6px;border-radius:2px;background:#070a0e;color:var(--warn);border:1px solid var(--warn)}
.cv-tag.cv-crit{color:var(--bad);border-color:var(--bad)}


/* Pressure tile: one label per place with its arrow (trends.js). */
.press-chips{display:grid;grid-template-columns:repeat(2,max-content);column-gap:clamp(6px,.6vw,12px);row-gap:1px;margin-top:clamp(5px,.4vw,8px);height:clamp(18px,1.4vw,26px);align-content:center;overflow:hidden;font:500 clamp(8.5px,.56vw,11px)/1.12 var(--mono,ui-monospace,monospace);letter-spacing:.02em;color:var(--muted)}
.press-chips .pc{white-space:nowrap}
.press-chips .pc.soon{color:var(--label,#c9d4e0)}
.press-chips .pc.fast{color:var(--warn)}
.press-chips.empty{font-family:inherit;font-size:var(--t-xs,11px)}
