/* l9 region screens: Treasury Fortress */

/* The Patent Office */
.po-trays{display:flex;gap:10px;flex-wrap:wrap}
.po-tray{display:flex;align-items:baseline;gap:8px;border:2px solid var(--good);border-radius:8px;padding:4px 12px;background:var(--paper)}
.po-tray .big{font-size:26px}
.po-tray.no{border-color:var(--bad)} .po-tray.in{border-color:var(--rule)}
.po-tray small{color:var(--ink-soft)}
.po-paper{position:relative;background:#FBF6E8;color:#2A2418;border:2px solid #C9B996;border-radius:4px;padding:18px 20px 96px;box-shadow:4px 4px 0 var(--shadow);min-height:280px;overflow:hidden;background-image:repeating-linear-gradient(#FBF6E8 0 27px,#E9DFC6 27px 28px)}
.po-paper.slide{animation:poslide .45s cubic-bezier(.2,.9,.3,1.1)}
@keyframes poslide{from{transform:translateX(60%) rotate(4deg);opacity:0}to{transform:none;opacity:1}}
.po-paper h3{color:#2A2418;font-size:22px;margin:6px 0}
.po-paper p{font-size:17px;margin:0 0 10px;max-width:52ch}
.po-no{font-family:var(--f-mono);font-size:12px;color:#7C6A48;letter-spacing:.08em}
.po-who{font-size:14px;color:#5A4A30}
.po-prior{font-size:14px;border:2px dashed #B99658;background:#F2E6C8;padding:6px 10px;border-radius:4px;animation:pop .3s ease}
.po-mark{position:absolute;right:18px;bottom:22px;font-family:var(--f-display);font-weight:700;font-size:clamp(20px,3.2vw,30px);letter-spacing:.1em;border:4px solid currentColor;border-radius:6px;padding:2px 12px;transform:rotate(-12deg);opacity:.88;animation:pomark .35s cubic-bezier(.2,1.6,.4,1) both;mix-blend-mode:multiply}
.po-mark.ok{color:#1E7A50} .po-mark.no{color:#B0322B;text-decoration:line-through}
.po-mark.fix{color:#1E7A50;right:auto;left:18px;bottom:26px;transform:rotate(5deg);animation:pomarkfix .35s cubic-bezier(.2,1.6,.4,1) .6s both}
@keyframes pomarkfix{from{transform:rotate(5deg) scale(2.4);opacity:0}to{transform:rotate(5deg);opacity:.88}}
@keyframes pomark{from{transform:rotate(-12deg) scale(2.4);opacity:0}to{opacity:.88}}
.po-rack{display:grid;gap:8px}
.po-stamp{display:flex;align-items:center;gap:10px;border:2px solid var(--ink);border-radius:8px;background:var(--paper);padding:6px 10px;cursor:pointer;box-shadow:3px 3px 0 var(--shadow);text-align:left;font-size:14px;color:var(--ink)}
.po-stamp:hover,.po-stamp:focus-visible{border-color:var(--accent);outline:none}
.po-stamp:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--shadow)}
.po-stamp:active .po-handle{transform:translateY(3px)}
.po-handle{flex:none;width:22px;height:26px;border-radius:10px 10px 3px 3px;background:linear-gradient(#7C5429 0 60%,#B0322B 60%);border:2px solid var(--ink);transition:transform .1s}
.po-stamp.grant .po-handle{background:linear-gradient(#7C5429 0 60%,#1E7A50 60%)}
.po-face{font-family:var(--f-display);font-weight:600}

/* Teece's matrix */
.tc-box svg{display:block;width:100%;height:auto;max-width:460px}
.tc-box.wide svg{max-width:560px}
.tc-ax{font-family:var(--f-display);font-size:13px;fill:var(--ink-soft)}
.tc-h{font-family:var(--f-display);font-size:13px;fill:var(--ink)}
.tc-cell{fill:var(--paper);stroke:var(--ink);stroke-width:2}
.tc-cell.hi{fill:var(--gold-soft);stroke:var(--gold);stroke-width:4}
.tc-t{font-family:var(--f-body);font-size:13px;fill:var(--ink)}
.tc-b{font-family:var(--f-display);font-size:12px;fill:var(--accent)}
.tc-dot{opacity:0;animation:qtcdot .5s ease forwards}
.tc-dot circle{fill:var(--rival);stroke:var(--paper);stroke-width:2}
.tc-dl{font-family:var(--f-display);font-size:12px;fill:var(--ink)}
@keyframes qtcdot{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* The Appropriability Game */
.ap-riv{display:grid;grid-template-columns:90px 1fr auto;gap:8px;align-items:center;font-size:13px;margin-bottom:6px}
.ap-riv small{font-family:var(--f-mono);font-size:12px;color:var(--ink-soft);min-width:78px;text-align:right}
.ap-patent{border-left:8px solid var(--accent)} .ap-secret{border-left:8px solid var(--ink-soft)}
.ap-open{border-left:8px solid var(--foam)} .ap-license{border-left:8px solid var(--gold)}

.chartbox rect.grow{transform-box:fill-box}
.l9g>*{min-width:0}

/* The claim map */
.l9-map{display:grid;grid-template-columns:minmax(80px,auto) repeat(5,minmax(0,1fr));gap:4px;margin-top:8px;max-width:720px}
.l9-ax{font-family:var(--f-display);font-size:12px;color:var(--ink-soft);align-self:end;text-align:center;padding-bottom:2px}
.l9-ax.l9-row{align-self:center;text-align:right;padding-right:6px}
.l9-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:52px;border:2px solid var(--rule);border-radius:6px;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;padding:4px 2px}
.l9-cell b{font-family:var(--f-mono);font-size:15px}
.l9-cell small{font-size:10px;color:var(--ink-soft);text-align:center;line-height:1.1}
.l9-cell:hover:not(:disabled){border-color:var(--accent)}
.l9-cell.core{background:var(--gold-soft);border-color:var(--gold);cursor:default}
.l9-cell.fence{background:color-mix(in srgb,var(--accent) 16%,var(--paper));border-color:var(--accent)}
.l9-cell.tried{border-color:var(--good);border-style:dashed}
.l9-cell.through{background:color-mix(in srgb,var(--bad) 16%,var(--paper));border-color:var(--bad)}
.l9-cell:disabled{opacity:1}
/* Toll bridge: fact sheets and placing a case */
.l9-facts th{text-align:left;font-weight:600;width:40%;vertical-align:top}
.l9-place{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.l9-place .btn{font-size:13px;padding:6px 8px}
.tc-cell.pick{cursor:pointer}
.tc-cell.pick:hover{fill:var(--gold-soft)}
.l9-facts{table-layout:fixed;width:100%}
.l9-facts td,.l9-facts th{overflow-wrap:break-word;white-space:normal;font-size:14px}
.l9-facts th{width:36%;font-size:12px;hyphens:auto}

/* ---- Technology management (Treasury): the Plateau, the Technology Radar ---- */
.l9-pot{stroke:var(--ink);stroke-width:2;stroke-dasharray:3 3}
.l9-pot.kraft{stroke:var(--kraft)} .l9-pot.foam{stroke:var(--foam)}
.l9-techs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
.l9-tech h3{margin:0}
.l9-mini{width:100%;max-width:300px;height:auto;display:block}
.l9-mini .tk{font-size:9px}
.l9-ax0{stroke:var(--rule);stroke-width:1}
.l9-fit{fill:none;stroke:var(--foam);stroke-width:2}
.l9-lim{stroke:var(--foam);stroke-dasharray:3 3;stroke-width:1}
.l9-tp{fill:var(--kraft);stroke:var(--paper);stroke-width:1}
.l9-rd{display:flex;align-items:center;gap:8px;margin:8px 0}
.l9-rd .lbl{font-family:var(--f-display);font-size:14px;flex:1}
.l9-rd .big{font-family:var(--f-display);font-size:24px;min-width:1.4em;text-align:center;font-variant-numeric:tabular-nums}
.btn.small{padding:4px 10px;font-size:13px}
.l9-life td{text-align:center;font-size:13px;line-height:1.25}
.l9-life td:first-child{text-align:left}
.l9-life .st-pacemaker{background:color-mix(in srgb,var(--accent) 14%,var(--paper))}
.l9-life .st-key{background:color-mix(in srgb,var(--good) 22%,var(--paper))}
.l9-life .st-base{background:color-mix(in srgb,var(--rule) 40%,var(--paper))}
.l9-life .st-displaced{background:color-mix(in srgb,var(--bad) 14%,var(--paper))}

/* ---- L1 Hangar Village (styles live here because only l4–l10 sheets are linked) ---- */
.l1-how{font-family:var(--f-display);font-size:14px;margin:6px 0 0}
.l1-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:6px}
.l1-chip{border:2px solid var(--rule);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column;gap:4px;background:var(--paper)}
.l1-chip .lbl{font-family:var(--f-display);font-size:14px}
.l1-q{font-size:12px;color:var(--ink-soft)}
.l1-tg{display:flex;gap:6px}
.l1-tg button{flex:1;font-family:var(--f-display);font-size:14px;border:2px solid var(--rule);border-radius:6px;background:var(--paper);color:var(--ink);padding:4px 8px;cursor:pointer}
.l1-tg button.yes{border-color:var(--good);background:color-mix(in srgb,var(--good) 18%,var(--paper))}
.l1-tg button.yes.hi{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 26%,var(--paper))}
.l1-derived{margin:4px 0;font-size:14px}

/* ---- L2 The Works: the Hype Gauge and the pipeline's measure cards ---- */
.l2-props{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:12px}
.l2-prop h3{margin:0}
.l2-prop.on{border-color:var(--gold)}
.l2-pitch{font-style:italic;margin:6px 0}
.l2-prop.loud .l2-pitch{font-weight:700;font-size:1.05em}
.l2-tl{display:grid;grid-template-columns:minmax(0,220px) 1fr;gap:10px;align-items:center}
@media (max-width:520px){.l2-tl{grid-template-columns:1fr}}
.l2-spark{width:100%;height:auto;display:block}
.l2-zero{stroke:var(--rule);stroke-width:1}
.l2-yr{stroke:var(--rule);stroke-dasharray:2 3}
.l2-fc{fill:var(--gold);stroke:var(--paper)}
.l2-line{fill:none;stroke:var(--foam);stroke-width:2.5}
.l2-line.rou{stroke:var(--kraft)}
.l2-rival{fill:none;stroke:var(--rival);stroke-width:2;stroke-dasharray:4 3}
.l2-mcards{display:flex;flex-wrap:wrap;gap:6px}
.lt-card .l1-chips{grid-template-columns:1fr 1fr}
.lt-card .l1-q{display:none}
.lt-card .l1-chip{padding:4px 6px}
