/* l8 region screens: Market Plains */
.l8-sky svg{max-height:360px}
.l8-blimp{font-family:var(--f-display);font-size:9px;fill:#101829;font-weight:700}
.l8-string{fill:none;stroke:rgba(16,24,41,.35);stroke-width:.8}
.l8-kite{transform-box:fill-box;transform-origin:50% 0;animation:l8sway 2.2s ease-in-out infinite alternate}
@keyframes l8sway{from{transform:rotate(-8deg) translateY(0)}to{transform:rotate(8deg) translateY(-3px)}}
.l8-count rect{fill:rgba(16,24,41,.78)}
.l8-count text{fill:#F3F6FB;font-family:var(--f-display);font-size:13px}
.l8-count text.sub{font-family:var(--f-body);font-size:11px;fill:#DCE4F2}
.legend i.l8-lg-gold{background:var(--gold)}
.ln.l8-gold{stroke:var(--gold)}
.l8-rope{stroke:var(--ink-soft);stroke-width:1.5;fill:none}
.l8-pan{fill:var(--gold);stroke:var(--ink);stroke-width:2}
.l8-post{fill:var(--kraft);stroke:var(--ink);stroke-width:2}
.l8-beam{stroke:var(--ink);stroke-width:7;stroke-linecap:round;transition:all .3s}
.l8-pivot{fill:var(--gold);stroke:var(--ink);stroke-width:2}
.l8-who{fill:var(--ink)}
.l8-resist{flex:1;min-width:140px;max-width:320px}
.l8-csky{fill:var(--paper-2)}
.l8-cliff{fill:#C9A86A;stroke:#7C5429;stroke-width:2}
.l8-gap{fill:#1A1418}
.l8-side{fill:var(--ink)}
.l8-plank{stroke:#5A3D22;stroke-width:1.5}
.l8-plank.have{fill:#A8743E}
.l8-plank.pend{fill:none;stroke:var(--gold);stroke-dasharray:3 2;stroke-width:2}
.l8-plank.none{fill:none;stroke:none}
.l8-plk{fill:var(--ink-soft);font-size:9px}
.l8-adj{stroke:var(--ink-soft);stroke-width:2;stroke-dasharray:3 3}
.l8-pin{fill:#F7F7F2}
.l8-pin-o{fill:none;stroke:#101829;stroke-width:1.5}
.l8-dots{color:var(--foam);letter-spacing:1px}
.l8-segs{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.l8-seg{border:2px solid var(--rule);border-left:6px solid var(--sc);border-radius:8px;padding:8px 10px;background:var(--paper);display:flex;flex-direction:column;gap:5px}
.l8-seg .row{justify-content:space-between;gap:6px}
.l8-seg b{font-family:var(--f-display);font-weight:600}
.l8-seg small{font-size:13px;color:var(--ink)}
.l8-seg small i{color:var(--ink-soft)}
.l8-seg .meter{height:10px}
.l8-seg .chip{font-size:11px;padding:0 6px}
.l8-step{display:flex;align-items:center;gap:10px;margin-top:auto}
.l8-step .btn{padding:2px 12px;font-size:18px;line-height:1.2;box-shadow:2px 2px 0 var(--shadow)}
.l8-step .big{font-size:26px;min-width:28px;text-align:center}
.l8-comp small{font-size:12px}
/* Seed the Field */
.l8-field svg{max-height:400px}
.l8-tie{stroke:rgba(16,24,41,.32);stroke-width:1.4}
.l8-node{cursor:pointer}
.l8-node.sel circle{stroke:var(--gold);stroke-width:4}
.l8-node.pk circle{stroke:#E86A2A}
.l8-nn{font-family:var(--f-display);font-size:11px;fill:#101829;pointer-events:none}
.l8-houses{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}
.l8-house{display:grid;grid-template-columns:28px 1fr;gap:2px 8px;text-align:left;border:2px solid var(--rule);border-radius:8px;background:var(--paper);color:var(--ink);padding:6px 8px;font:inherit;font-size:13px;cursor:pointer}
.l8-house b{grid-row:span 2;font-family:var(--f-display);font-size:18px;align-self:center;text-align:center}
.l8-house small{color:var(--ink-soft);font-size:11px}
.l8-house.on{border-color:#E86A2A;background:var(--gold-soft)}
.l8-house.sel{outline:3px solid var(--gold)}
.l8-cue p{margin:.2em 0}
/* Bazaar */
.l8-buyers{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}
.l8-buyer .opts .opt{font-size:14px}
.l8-storm summary{cursor:pointer;padding:6px 0}
.opt.l8-on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--paper));font-weight:700}
/* Bazaar: TPB bars */
.l8-tpbs{display:flex;flex-direction:column;gap:4px;margin:6px 0}
.l8-tpb{display:grid;grid-template-columns:120px 1fr 36px;gap:8px;align-items:center;font-size:13px}
.l8-tpb .meter{height:10px}
.l8-tpb .meter i{background:var(--accent)}
.l8-tpb .meter.l8-low i{background:var(--bad,#C23F37)}
/* Chasm: ratings, budget */
.l8-rate{display:grid;grid-template-columns:auto 1fr;gap:0 8px;font-size:12px;color:var(--ink-soft)}
.l8-stars{color:var(--gold);letter-spacing:1px;font-weight:400;font-family:var(--f-body)}
.l8-scout{font-size:12px;padding:2px 8px;align-self:flex-start}
.l8-mode{gap:6px;flex-wrap:wrap;margin-bottom:8px}
.l8-plank.have.ptn{fill:#C9A15A}
.l8-cash{fill:var(--gold);opacity:.75}
.ln.l8-rev{stroke:var(--accent)}
.dot.l8-cash-dot{background:var(--gold)}
.dot.l8-rev-dot{background:var(--accent)}
.l8-seg .chip{white-space:normal;height:auto;line-height:1.3;text-align:left}
.l8-stars{font-size:15px;line-height:1.15;color:#D99A12}
.l8-rate{align-items:center}
.l8-meter30{position:relative}
.l8-meter30::after{content:'';position:absolute;left:30%;top:-2px;bottom:-2px;width:2px;background:var(--ink)}
