/* The loop game: an instrument cabinet inside the editorial page. State is carried by words, numbers and borders as well as colour. */
.platform-game{border:1px solid var(--border);background:var(--panel);margin:28px 0 32px;overflow:hidden;--sans:Arial,Helvetica,sans-serif;--ink-on-dark:#f0f0ec;--muted-on-dark:#b9b9b2;--cab:#1b1b1a;--cab2:#242423;--cab-line:#4a4a47}
.pg-heading{padding:25px 28px 18px;border-top:4px solid var(--accent);background:linear-gradient(90deg,#191919f5,#19191990),url('./audience-screen.png') center 52%/cover;color:#f7f3ea}
.pg-heading .eyebrow{color:#e6b4aa!important}.pg-heading h2{font:clamp(32px,4.5vw,54px)/1.05 var(--serif);letter-spacing:-.04em;margin:8px 0 14px}.pg-heading h2 em{font-weight:400;color:#ecb2a7}.pg-heading>p:last-child{max-width:720px;font-size:14px;line-height:1.65;color:#e3e0d7}
.pg-brief{display:grid;grid-template-columns:1fr 1fr}.pg-brief article{padding:17px 28px;border-bottom:1px solid var(--border)}.pg-brief article+article{border-left:1px solid var(--border)}.pg-act-label{font:10px/1.6 var(--mono);letter-spacing:.1em;color:var(--accent)}.pg-brief h3{font:25px/1.2 var(--serif);margin:7px 0}.pg-brief p{font-size:13px;line-height:1.7;margin:8px 0}.pg-brief .pg-formula{font:11px/1.8 var(--mono);background:var(--soft);padding:10px 12px}.pg-brief .small{font-size:11px}
.pg-start{display:flex;align-items:center;gap:20px;padding:18px 28px;background:var(--soft)}.pg-start p{font-size:12px;line-height:1.65;margin:0}.pg-start .primary{font-size:14px;padding:17px 23px;white-space:nowrap}
.platform-game[data-active=true] .pg-heading,.platform-game[data-active=true] .pg-start,.platform-game[data-active=true] .pg-brief{display:none}.platform-game[data-brief=true] .pg-brief{display:grid}
/* Cabinet */
.pg-console{margin:14px;background:var(--cab);color:var(--ink-on-dark);border:1px solid #555;box-shadow:inset 0 0 0 5px #373735,0 8px 18px #0002;border-radius:5px;padding:16px}
.pg-console .eyebrow,.pg-console .pg-kicker{color:#e9b3ad!important;font:10px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pg-console h3{font:400 26px/1.15 var(--serif);letter-spacing:-.03em;margin:4px 0 8px;color:var(--ink-on-dark)}.pg-console h4{font:400 20px/1.2 var(--serif);margin:4px 0 8px}
.pg-console .small,.pg-help{font-size:12px;line-height:1.6;color:var(--muted-on-dark)}.pg-help{margin:0 0 6px;max-width:70ch}
.pg-console button:not(.primary):not(.pg-info){background:#2c2c2b;color:var(--ink-on-dark);border:1px solid #6a6a66}.pg-console button:not(.primary):not(.pg-info):hover:not(:disabled){background:#3a3a38;border-color:#aaa}
.pg-console button.primary{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}.pg-console button.primary:hover:not(:disabled){background:#8c242a}.pg-console button:disabled{opacity:.4;cursor:not-allowed}
.pg-console select{background:#2c2c2b;color:var(--ink-on-dark);border:1px solid #6a6a66}
.pg-console a{color:#f0c8c2}
/* Info tips */
#platform-game .pg-info{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;min-height:18px;min-width:18px;border-radius:50%;border:1px solid currentColor;background:transparent;color:inherit;font:11px/1 var(--sans);padding:0;margin:0;cursor:help;opacity:.75;vertical-align:middle;text-transform:none;letter-spacing:0;flex:none}#platform-game .pg-info:hover,#platform-game .pg-info:focus-visible{opacity:1;background:transparent}
.pg-tip{position:fixed;z-index:70;max-width:320px;background:#101010;color:#f2f2ec;border:1px solid #777;padding:10px 13px;font:12px/1.55 var(--sans);box-shadow:0 8px 22px #0006;pointer-events:none}.pg-tip[hidden]{display:none}
/* Top bar */
.pg-topbar{display:grid;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--cab-line)}
.pg-topbar-act{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pg-topbar-act span{font:10px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#e9b3ad}.pg-topbar-act strong{font:400 18px/1.2 var(--serif)}.pg-topbar-act button{margin-left:auto;font:10px var(--mono);padding:7px 10px;min-height:32px}
.pg-metrics{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px}.pg-metric{background:var(--cab2);border:1px solid var(--cab-line);padding:10px 14px;min-width:0}.pg-metric>span{display:flex;align-items:center;gap:6px;font:9px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-on-dark)}.pg-metric strong{display:block;font:400 30px/1.2 var(--serif);color:#f39389;margin-top:4px}.pg-metric small{display:block;font:9px/1.5 var(--mono);color:var(--muted-on-dark);margin-top:5px}.pg-metric progress{width:100%;height:6px;display:block;margin-top:8px;accent-color:#f39389}.pg-metric progress::-webkit-progress-bar{background:#3a3a38}.pg-metric progress::-webkit-progress-value{background:#f39389}
.pg-event{margin:0;padding:8px 12px;border-left:2px solid #e9b3ad;font:12px/1.55 var(--sans);color:#e3e3dc;background:var(--cab2)}
/* The loop ring */
.pg-loop{list-style:none;margin:14px 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;position:relative}
.pg-loop li{position:relative;min-width:0}.pg-loop li+li::before{content:"→";position:absolute;left:-9px;top:50%;transform:translateY(-50%);color:#8a8a84;font-size:14px;z-index:1}
.pg-loop li:first-child::after{content:"↺ back to 01";position:absolute;right:0;top:-14px;font:8px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#8a8a84}
.pg-loop button{width:100%;text-align:left;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n title" "n sub" "n sum";gap:2px 10px;align-items:center;padding:10px 12px;border:1px solid var(--cab-line)!important;background:var(--cab2)!important;min-height:66px;cursor:pointer;color:var(--ink-on-dark)!important}
.pg-loop button .pg-loop-n{grid-area:n;font:12px/1 var(--mono);color:#8a8a84;border:1px solid #6a6a66;border-radius:50%;width:26px;height:26px;display:grid;place-items:center}.pg-loop button strong{grid-area:title;font:400 15px/1.1 var(--serif)}.pg-loop button small{grid-area:sub;font:8px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-on-dark)}.pg-loop button em{grid-area:sum;font:10px/1.4 var(--mono);font-style:normal;color:#e9b3ad;min-height:1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-loop button[aria-current=step]{border-color:var(--accent-light)!important;background:#2e2321!important;box-shadow:inset 0 -3px 0 var(--accent-light)}.pg-loop button[aria-current=step] .pg-loop-n{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}
.pg-loop button.done .pg-loop-n{border-color:#e9b3ad;color:#e9b3ad}.pg-loop button:disabled{opacity:.5}
.platform-game[data-phase=live] .pg-loop li:nth-child(3) button strong::after{content:" ●";color:#ffafa5;animation:pg-beacon 1.2s infinite}
/* Stations */
.pg-station{padding:14px 2px 6px}.pg-station[hidden]{display:none}.pg-station-head{margin-bottom:10px}
.pg-train-base{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;background:var(--cab2);border:1px solid var(--cab-line);padding:16px}.pg-train-base p{font-size:13px;line-height:1.6;margin:0 0 6px}
.pg-loss{display:flex;align-items:end;gap:4px;height:44px;margin:10px 0 4px;max-width:360px}.pg-loss>span{display:block;background:#e9b3ad;flex:1;min-height:2px;position:relative}.pg-loss>span::after{content:attr(data-loss);position:absolute;bottom:100%;left:0;font:7px var(--mono);color:#ccc;display:none}.pg-loss>span:first-child::after,.pg-loss>span:last-child::after{display:block}
.pg-plan-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.pg-choice-row{display:grid;gap:6px}.pg-choice-row button{text-align:left;padding:10px 12px;display:grid;grid-template-columns:24px 1fr;gap:4px 10px;align-items:center;min-width:0}.pg-choice-row button[aria-pressed=true]{border-color:var(--accent-light)!important;background:#2e2321!important;box-shadow:inset 3px 0 0 var(--accent-light)}.pg-choice-row .pg-ico{font:16px var(--mono);color:#f39389}.pg-choice-row strong{font:400 15px/1.2 var(--serif)}.pg-choice-row small{grid-column:2;font-size:11px;line-height:1.45;color:var(--muted-on-dark)}
.pg-human-effect{font:11px/1.5 var(--mono);color:#f0c8c2;margin:8px 0 0;padding:8px 10px;border:1px dashed #6a6a66}
.pg-targets{margin-top:12px}.pg-targets label{display:inline-flex;align-items:center;gap:6px;margin:0 12px 6px 0;font:11px var(--mono)}.pg-targets input{accent-color:#f39389}
.pg-plan-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px;padding:12px 14px;background:var(--cab2);border:1px solid var(--cab-line)}.pg-plan-summary p{flex:1;min-width:220px;margin:0;font-size:12px;line-height:1.6}.pg-plan-summary .primary{min-height:46px;font-size:13px}
.pg-run-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:16px}.pg-loss-curve{width:100%;height:auto;max-width:360px;background:#111;border:1px solid var(--cab-line);display:block}.pg-loss-curve path{fill:none;stroke:#f39389;stroke-width:2}.pg-loss-curve .grid{stroke:#333;stroke-width:1}.pg-loss-curve text{fill:#aaa;font:9px var(--mono)}.pg-run-status{font:11px/1.5 var(--mono);color:#e9b3ad;margin:8px 0 0;min-height:1.4em}
.pg-drift{display:grid;gap:8px}.pg-drift-row{display:grid;grid-template-columns:110px 1fr;gap:4px 12px;align-items:center;padding:8px 10px;background:var(--cab2);border:1px solid var(--cab-line)}.pg-drift-row .name{font:400 14px/1.2 var(--serif)}.pg-drift-row .meter{height:8px;background:#3a3a38;position:relative}.pg-drift-row .meter b{display:block;height:100%;background:#b7b5b0;transition:width .6s}.pg-drift-row.changed .meter b{background:#f39389}.pg-drift-row .txt{grid-column:1/-1;font-size:12px;line-height:1.5;color:var(--muted-on-dark)}.pg-drift-row.changed .txt{color:#f0c8c2}.pg-drift-row .pct{font:10px var(--mono);color:var(--muted-on-dark)}
.pg-run-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pg-run-actions .primary{min-height:46px;font-size:13px}
/* Generate */
.pg-writer{background:#111;border:1px solid var(--cab-line);padding:12px 14px;margin:0 0 12px}.pg-writer-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pg-writer-head #pg-trace-status{font:10px/1.5 var(--mono);color:#e9b3ad;flex:1;min-width:160px}.pg-trace-controls{display:flex;gap:6px}.pg-trace-controls button{font:10px var(--mono);padding:6px 9px;min-height:32px}
.pg-writer-stage{position:relative;padding:58px 8px 8px;min-height:120px}.pg-arcs{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pg-arcs path{fill:none;stroke:#f39389;stroke-linecap:round}
.pg-wtokens{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-end;justify-content:center;position:relative}.pg-wtok{display:flex;flex-direction:column;align-items:center;gap:2px}.pg-wtok .pct{font:8px/1 var(--mono);color:#e9b3ad;min-height:9px}.pg-wtok .w{font:15px/1 var(--serif);padding:6px 9px;border:1px solid #444;background:#1e1e1d;color:var(--ink-on-dark);white-space:nowrap}.pg-wtok.prompt .w{font:9px/1.2 var(--mono);color:#9a9a94;border-style:dashed;padding:6px 6px}.pg-wtok.cur .w{border-color:#f39389;box-shadow:0 0 0 2px #f3938955;background:#2e2321}.pg-wtok.end .w{color:#9a9a94;font:10px var(--mono)}
.pg-writer-foot{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}.pg-mini-bar{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:2px;font:10px/1.35 var(--mono);margin:5px 0;color:#ddd}.pg-mini-bar>span:first-child{overflow-wrap:anywhere}.pg-mini-bar>span:last-child{text-align:right}.pg-mini-bar>i{grid-column:1/-1;display:block;height:4px;background:#333}.pg-mini-bar b{display:block;height:100%;background:#f39389}
.pg-candidates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pg-candidate{min-width:0;text-align:left;padding:12px;border:1px solid var(--cab-line)!important;background:var(--cab2)!important;color:var(--ink-on-dark)!important;display:flex;flex-direction:column;gap:7px;cursor:pointer;transition:transform .18s,border-color .18s}.pg-candidate:hover:not(:disabled){transform:translateY(-2px)}.pg-candidate[aria-pressed=true]{border:2px solid var(--accent-light)!important;padding:11px;background:#2e2321!important}.pg-candidate>span{font:9px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#e9b3ad;display:flex;gap:8px;flex-wrap:wrap}.pg-candidate>span .chg{color:#f39389}.pg-candidate strong{font:400 16px/1.45 var(--serif);min-height:2.9em}.pg-candidate strong.pending{color:#777}.pg-candidate small{font:9px/1.6 var(--mono);color:var(--muted-on-dark);margin-top:auto}.pg-candidate.writing{outline:1px dashed #f39389}.pg-candidates.pg-single{grid-template-columns:1fr}.pg-candidates.pg-single .pg-candidate{cursor:default}.pg-candidates.pg-single strong{font-size:20px}.pg-candidate:disabled{opacity:1}
.platform-game[data-phase=live] .pg-candidate:not([aria-pressed=true]){opacity:.5!important}
.pg-dispatch{display:flex;flex-direction:column;gap:6px;margin:12px 0 4px}.pg-dispatch .primary{font-size:14px;min-height:52px}.pg-dispatch button:not(.primary){background:transparent!important;border:0!important;text-decoration:underline;font-size:11px;min-height:28px;color:var(--muted-on-dark)!important}
.pg-alignment{padding:12px 14px;margin-bottom:12px;border:1px solid var(--cab-line);background:var(--cab2)}.pg-alignment[hidden]{display:none}.pg-alignment-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px}.pg-alignment-choices button{text-align:left;padding:10px;display:grid;grid-template-columns:22px 1fr;gap:3px 6px;align-items:center;min-width:0}.pg-alignment-choices button[aria-pressed=true]{outline:2px solid var(--accent-light);outline-offset:-2px;background:#2e2321!important}.pg-alignment-choices strong{font:400 15px/1.2 var(--serif)}.pg-alignment-choices span{color:#f39389;font-size:18px}.pg-alignment-choices small{grid-column:1/-1;font:9px/1.45 var(--mono);color:var(--muted-on-dark)}.pg-alignment .small{margin:8px 0 0;font-size:11px}
.pg-hack-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.pg-tool{padding:10px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:4px 10px;min-width:0}.pg-tool[aria-pressed=true]{border-color:var(--accent-light)!important;background:#2e2321!important}.pg-tool strong{font:400 15px/1.2 var(--serif)}.pg-tool>span{font:10px var(--mono);color:#f39389}.pg-tool small{grid-column:1/-1;font-size:11px;line-height:1.5;color:var(--muted-on-dark)}.pg-tool:last-child{grid-column:1/-1}.pg-tool:last-child small{display:none}.pg-hack-tools[hidden]{display:none}
/* Broadcast wall */
.pg-wall{background:radial-gradient(ellipse at 50% 0%,#35322f,#171716 75%);border:1px solid #555;padding:0 14px 10px;border-radius:4px;color:var(--ink-on-dark)}
.pg-room-plate{margin:0 -14px 12px;position:relative;height:120px;overflow:hidden;border-bottom:1px solid #6b625d}.pg-room-plate img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;opacity:.72;filter:grayscale(1)}.pg-room-plate::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#20201fd9)}.pg-room-plate figcaption{position:absolute;z-index:1;bottom:9px;left:16px;font:8px/1.5 var(--mono);letter-spacing:.12em;color:#e6d9d2}.platform-game[data-phase=live] .pg-room-plate img{opacity:.95;transition:opacity 1s}
.pg-live-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.pg-live-heading .eyebrow{font-size:9px;margin:0}.pg-live-dot{display:inline-block;width:7px;height:7px;background:#9e7772;border-radius:50%;margin-right:5px}.platform-game[data-phase=live] .pg-live-dot{background:#ffafa5;box-shadow:0 0 14px #ed867d;animation:pg-beacon 1.2s infinite}.platform-game[data-paused=true] .pg-live-dot{animation:none}.pg-live-heading>span{font:10px var(--mono)}
.pg-wall h3{margin:8px 0}.pg-wall blockquote{margin:0 0 10px;padding:10px 14px;border-left:3px solid #e4a59d;background:#ffffff08;font:15px/1.5 var(--serif);min-height:52px}
.pg-live-controls{display:flex;gap:7px;align-items:center;margin:8px 0 12px}.pg-live-controls button,.pg-live-controls select{font:10px var(--mono);min-height:34px;padding:6px 9px}.pg-live-controls label{font:10px var(--mono);color:#ccc;margin:auto}
.pg-channels{display:grid;gap:6px}.pg-channel{display:grid;grid-template-columns:28px 1fr 82px;gap:4px 7px;align-items:center;width:100%;padding:9px 11px;border:1px solid #666!important;background:#292929!important;color:#eee!important;text-align:left}.pg-channel[aria-pressed=true]{border-color:#efb0a8!important}.pg-channel>span:first-child{font:15px var(--mono);color:#efb0a8}.pg-channel strong{font:400 15px/1.2 var(--serif)}.pg-channel small{display:block;font:9px/1.5 var(--mono);color:#c5c5c5;margin-top:3px}.pg-channel-number{text-align:right;font:22px/1 var(--mono)}.pg-channel-number small{font-size:8px!important;color:#bbb}.pg-channel-track{grid-column:1/-1;height:9px;margin-top:4px;background:#4b4947;border-radius:2px;position:relative;overflow:visible}.pg-channel-track b{display:block;height:100%;border-radius:2px;background:#b7b5b0;transition:width .14s linear}.pg-channel[data-channel="2"] .pg-channel-track b{background:#dedbd4}.pg-channel[data-channel="3"] .pg-channel-track b{background:#e69389;box-shadow:0 0 9px #e6938944}.pg-channel-track i{position:absolute;top:-3px;height:15px;width:2px;background:#fff;left:var(--baseline);display:none;z-index:1}.platform-game[data-act=hacker] .pg-channel-track i{display:block}
.pg-channel-detail{font-size:11px;line-height:1.55;color:#ddd;border-left:2px solid #edada5;padding-left:10px;margin:10px 0}
.pg-balance{display:flex;justify-content:space-between;gap:10px;font:9px/1.5 var(--mono);border-block:1px solid #555;margin:10px 0 8px;padding:8px 0}.pg-balance span:last-child{color:#f0aaa1}.pg-balance b{font:16px var(--mono);display:block;margin-top:3px}.pg-live-event{font:11px/1.6 var(--mono);color:#ddd;min-height:34px;margin:8px 0}
.pg-population{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.pg-pop-group{padding:5px;border:1px solid #494947;background:#181818;min-width:0}.pg-pop-group h4{font:7px/1.5 var(--mono);letter-spacing:-.03em;margin:0 0 5px;color:#ccc}.pg-dots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px}
.pg-dot{font:10px/1 var(--mono);padding:0;min-height:17px;min-width:0;border:1px solid transparent!important;color:#bbb!important;background:transparent!important;border-radius:2px;transition:color .12s,background .12s}.pg-dot.pg-notice{color:#d8bfb9!important}.pg-dot.pg-open{color:#eee!important}.pg-dot.pg-complete{color:#fff!important;background:#555!important}.pg-dot.pg-reconsider{color:#edada5!important}.pg-dot.pg-choice{background:#a44e45!important;color:#fff!important}.pg-dot.pg-gone{color:#5a5a57!important}.pg-dot.pg-habit{color:#fff!important;background:#5b7fa6!important}.pg-dot[aria-pressed=true],.pg-dot:hover{border-color:#efb0a8!important}.platform-game[data-phase=live] .pg-flash{animation:pg-response .5s ease-out}
.pg-dot-key{font:8px/1.7 var(--mono);color:#ccc;margin:9px 0}.pg-reader{font:9px/1.6 var(--mono);min-height:34px;color:#e8e8e4;border-top:1px solid #666;padding-top:8px;margin:0}
.pg-live-done{border:1px solid #b57e76;background:#342928;padding:12px;margin:12px 0 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.pg-live-done[hidden]{display:none}.pg-live-done p{font:11px/1.6 var(--mono);color:#edcec8;flex:1;min-width:200px;margin:0}.pg-live-done .primary{min-height:44px;font-size:13px}
/* Monetize */
.pg-ledger{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.pg-ledger>div{background:var(--cab2);border:1px solid var(--cab-line);padding:10px 12px;min-width:0}.pg-ledger span{display:block;font:9px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-on-dark)}.pg-ledger strong{display:block;font:400 26px/1.2 var(--serif);color:#f39389;margin:3px 0}.pg-ledger small{font:10px/1.5 var(--mono);color:var(--muted-on-dark)}.pg-ledger .not-billed strong{color:#dedbd4}.pg-ledger .total strong{font-size:30px}
.pg-learning-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:14px}.pg-learning{background:var(--cab2);border:1px solid var(--cab-line);padding:12px 14px}.pg-learning-toggle{margin-left:auto;font:10px var(--mono);letter-spacing:.06em;text-transform:none;display:inline-flex;gap:6px;align-items:center}.pg-learning-toggle input{accent-color:#f39389;width:15px;height:15px}#pg-learning-status{font:11px/1.6 var(--sans);color:#e3e3dc;margin:0 0 10px}
.pg-policy-row{display:grid;grid-template-columns:1fr auto;gap:3px 10px;font:11px/1.4 var(--mono);margin-bottom:8px}.pg-policy-row>div{grid-column:1/-1;height:8px;background:#3a3a38;position:relative}.pg-policy-row b{display:block;height:100%;background:#f39389;transition:width .7s}.pg-policy-row i{position:absolute;top:-3px;width:2px;height:14px;background:#fff}.pg-policy-row small{grid-column:1/-1;font-size:9px;color:var(--muted-on-dark)}
.pg-score-chart{display:flex;gap:8px;align-items:end;min-height:120px;position:relative;padding-top:6px}.pg-score-chart>div{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}.pg-score-chart strong{font:13px var(--mono);color:#f39389}.pg-score-chart span{display:flex;align-items:end;height:80px;width:100%;background:#111;position:relative}.pg-score-chart b{width:100%;background:#f39389;min-height:1px}.pg-score-chart span::after{content:"";position:absolute;left:0;right:0;top:calc(100% - var(--target,0%));border-top:1px dashed #ccc}.pg-score-chart small{font:8px var(--mono);white-space:nowrap;color:var(--muted-on-dark)}.pg-score-chart .empty{font:11px/1.5 var(--mono);color:var(--muted-on-dark);align-self:center}
.pg-next-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.pg-next-row button{font-size:13px;min-height:46px}.pg-next-row [hidden]{display:none}
/* Outside the cabinet */
.pg-feedback{padding:12px 16px;margin:0 14px 14px;border-left:3px solid var(--accent);background:var(--soft);font-size:12px;line-height:1.7}.pg-feedback:empty{display:none}
.pg-result{padding:22px;margin:0 14px 14px;border:2px solid var(--accent);background:var(--soft)}.pg-result h3{font:28px/1.2 var(--serif);margin:6px 0 10px}.pg-result p{font-size:14px;line-height:1.75}.pg-result button{margin:10px 8px 0 0}.pg-result-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.pg-result-pair>div{padding:14px;border:1px solid var(--border)}.pg-result-pair span{font:10px/1.6 var(--mono);display:block}.pg-result-pair strong{font:26px/1.4 var(--serif);color:var(--accent);display:block}.pg-result-pair small{font-size:11px;line-height:1.5}
.pg-log{margin:0 14px 14px;border-top:1px solid var(--border);padding-top:12px}.pg-log summary{font:11px/1.7 var(--mono);cursor:pointer}.pg-log th,.pg-log td{font-size:11px;padding:8px 8px}.pg-log td:nth-child(2){min-width:180px}
.pg-provenance{margin:0 14px 16px;border-top:1px solid var(--border);padding-top:14px}.pg-provenance summary{font:11px/1.7 var(--mono);cursor:pointer}.pg-connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:14px 0}.pg-connection-grid h3{font:21px/1.25 var(--serif);margin:8px 0}.pg-connection-grid p{font-size:12px;line-height:1.7}.pg-connection-grid button{font-size:10px}.pg-source-note{border-top:1px solid var(--border);padding-top:12px;margin-top:8px;font-size:11px;line-height:1.7;color:var(--subtle)}.pg-provenance>p{font-size:12px;line-height:1.75}
.allocation-sandbox{margin:30px 0;border:1px solid var(--border);padding:20px}.allocation-sandbox>summary{font:16px/1.6 var(--serif);cursor:pointer}
.social-reading{margin:24px 0;border:1px solid var(--border);padding:18px 22px;background:var(--panel)}.social-reading>summary{font:16px/1.6 var(--serif);cursor:pointer}.social-reading .three-cards{margin-top:18px}
@keyframes pg-beacon{50%{opacity:.3}}@keyframes pg-response{0%{box-shadow:0 0 0 3px #e69389;transform:scale(1.15)}100%{box-shadow:0 0 0 0 transparent;transform:scale(1)}}
@media(max-width:1000px){.pg-ledger{grid-template-columns:1fr 1fr}.pg-metrics{grid-template-columns:1fr 1fr}.pg-metric-main{grid-column:1/-1}.pg-plan-grid,.pg-run-grid,.pg-learning-grid,.pg-writer-foot{grid-template-columns:1fr}.pg-population{grid-template-columns:repeat(3,minmax(0,1fr))}.pg-dots{grid-template-columns:repeat(5,minmax(0,1fr))}.pg-alignment-choices{grid-template-columns:1fr 1fr}.pg-connection-grid{grid-template-columns:1fr}}
@media(max-width:700px){.pg-heading{padding:20px 17px}.pg-heading h2{font-size:36px}.pg-brief{grid-template-columns:1fr}.pg-brief article+article{border-left:0}.pg-start{display:block;padding:16px 17px}.pg-start p{margin-top:12px}.pg-start .primary{white-space:normal}.pg-console{margin:8px;padding:10px}.pg-loop{grid-template-columns:1fr 1fr;gap:6px}.pg-loop li+li::before{display:none}.pg-loop li:first-child::after{display:none}.pg-loop button{min-height:58px;padding:8px 10px}.pg-loop button strong{font-size:14px}.pg-metrics{grid-template-columns:1fr 1fr;gap:6px}.pg-metric strong{font-size:22px}.pg-train-base{grid-template-columns:1fr}.pg-candidates{grid-template-columns:1fr}.pg-ledger{grid-template-columns:1fr 1fr}.pg-ledger .total{grid-column:1/-1}.pg-population{grid-template-columns:repeat(3,minmax(0,1fr))}.pg-dot{min-height:20px;font-size:11px}.pg-result-pair{grid-template-columns:1fr}.pg-result button{width:100%}.pg-hack-tools{grid-template-columns:1fr}.pg-alignment-choices{grid-template-columns:1fr}.pg-writer-stage{padding-top:50px}.pg-wtok .w{font-size:13px;padding:5px 7px}.pg-feedback,.pg-result,.pg-log,.pg-provenance{margin-inline:8px}.pg-room-plate{height:96px}.pg-channel{grid-template-columns:24px 1fr 70px;padding:8px}.pg-channel-number{font-size:19px}}
@media(prefers-reduced-motion:reduce){.platform-game *{animation:none!important;transition:none!important}.pg-candidate:hover:not(:disabled){transform:none}}
/* Beginner guide (2026-09-21): a coach strip inside the cabinet, a glossary before it, numbered briefing steps. */
.pg-steps{margin:8px 0 10px;padding-left:20px;font-size:13px;line-height:1.65}.pg-steps li{margin:2px 0}.pg-steps b{font-weight:600}
.pg-learning-grid>*{min-width:0}
.pg-glossary{margin:0;padding:0 28px;border-bottom:1px solid var(--border);background:var(--panel)}.pg-glossary>summary{padding:12px 0;font:600 13px/1.4 var(--sans);cursor:pointer;color:var(--accent)}.pg-glossary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px 24px;margin:0 0 16px}.pg-glossary dt{font:600 13px/1.4 var(--sans)}.pg-glossary dd{margin:2px 0 0;font-size:12.5px;line-height:1.6;color:var(--muted)}.pg-glossary dd i{font-style:italic}
.pg-guide{margin:0 0 12px;border:1px solid #6a6a66;border-left:4px solid var(--accent-light);background:#232220;padding:10px 14px 11px}.pg-guide-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.pg-guide-step{font:11px/1.6 var(--mono);letter-spacing:.14em;color:#e9b3ad}#platform-game #pg-guide-toggle{font:11px/1.2 var(--mono);padding:5px 9px;min-height:0;letter-spacing:.04em}
.pg-guide-see{margin:6px 0 0;font:14px/1.55 var(--sans);color:var(--ink-on-dark);max-width:80ch}.pg-guide-do{margin:6px 0 0;font:600 14px/1.55 var(--sans);color:#fff;max-width:80ch;padding-left:22px;position:relative}.pg-guide-do::before{content:"→";position:absolute;left:0;color:var(--accent-light)}.pg-guide-do b{color:#f7d6d0;font-weight:700;border-bottom:1px dotted #f7d6d0}
.pg-guide-why{margin:8px 0 0}.pg-guide-why>summary{font:11px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#b9b9b2;cursor:pointer}.pg-guide-why p{margin:6px 0 0;font-size:12.5px;line-height:1.6;color:var(--muted-on-dark);max-width:80ch}.pg-guide-body[hidden]{display:none}
@media(max-width:700px){.pg-glossary{padding:0 17px}.pg-glossary dl{grid-template-columns:1fr}.pg-score-chart small{white-space:normal;text-align:center}.pg-guide{padding:8px 10px 9px}.pg-guide-see,.pg-guide-do{font-size:13px}}
/* Moves (2026-09-21): each training card says what it does to readers, money and energy. */
.pg-moves{grid-template-columns:repeat(2,minmax(0,1fr))}.pg-moves button{align-content:start}
.pg-effects{grid-column:2;display:grid;gap:2px;margin-top:6px;font:10.5px/1.45 var(--mono);color:#d8d8d0}.pg-effects i{font-style:normal}.pg-effects b{color:#e9b3ad;font-weight:600;margin-right:4px}
.pg-choice-row button:disabled{opacity:.55;cursor:not-allowed}.pg-locked{grid-column:2;color:#e9b3ad!important;margin-top:4px}
.pg-effect{display:block;font:10px/1.5 var(--mono);color:#f0c8c2;margin:5px 0 3px;font-style:normal}.pg-tool .pg-effect{grid-column:1/-1;margin:2px 0 0}
@media(max-width:700px){.pg-moves{grid-template-columns:1fr}}
