/* Public living audit. Uses the existing site palette and each game's accent. */
.gp-wrap{max-width:1060px;padding-top:clamp(26px,5vw,58px);padding-bottom:64px}
.gp-intro .crumbs{display:flex;flex-wrap:wrap;gap:8px;color:var(--dim);margin-bottom:30px}
.gp-intro h1{font-size:clamp(28px,4.8vw,52px);line-height:1.15;letter-spacing:-.035em;font-weight:600;margin:12px 0}
.gp-intro h1 span{color:var(--dim);font-weight:400;font-size:.72em;letter-spacing:-.02em}
.gp-deck{color:var(--dim);margin:16px 0 24px;font-size:17px}
.gp-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--edge-hi);padding:0 0 12px;margin-bottom:30px}
.gp-tabs a{padding:9px 15px;color:var(--dim);border:1px solid transparent;border-radius:6px;font-size:14px}
.gp-tabs a:hover{color:var(--text);border-color:var(--edge-hi)}
.gp-tabs a[aria-current]{background:color-mix(in srgb,var(--gc,var(--signal)) 10%,var(--card));border-color:color-mix(in srgb,var(--gc,var(--signal)) 38%,var(--edge));color:var(--text)}
.game-page>.gp-tabs{margin-top:0}
.gp-summary{display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,1.8fr);gap:32px;padding:30px;border:1px solid var(--edge-hi);border-top:2px solid var(--gc);border-radius:10px;background:linear-gradient(130deg,color-mix(in srgb,var(--gc) 6%,var(--card)),var(--card))}
.gp-score{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.gp-score>.label,.gp-context>.label{color:var(--dim);font-size:10px}
.gp-score strong{font:500 clamp(52px,7vw,76px)/1 var(--f-mono);letter-spacing:-.07em}
.gp-score strong small{font:400 20px var(--f-mono);color:var(--dim);letter-spacing:0}
.gp-score .fine{max-width:240px;margin:0;font-size:12px;color:var(--dim)}
.gp-change{font:12px var(--f-mono);color:var(--gc)}
.gp-context>p{margin:10px 0 20px;max-width:60ch}
.gp-context .fine{font-size:11px;color:var(--dim);overflow-wrap:anywhere;margin-bottom:0}
.gp-facts{display:flex;flex-wrap:wrap;gap:20px;color:var(--dim);font-size:12px}
.gp-facts b{display:block;color:var(--text);font-size:15px;margin-bottom:2px;font-weight:500}
.gp-intent{border-left:2px solid var(--gc);padding:8px 20px;margin-top:28px;font-size:14px;color:var(--dim)}
.gp-intent h2{font-size:15px;color:var(--text);font-weight:500;margin:0}
.gp-intent ul{padding-left:18px;margin-bottom:0}
.gp-jumps{display:flex;flex-wrap:wrap;gap:18px;margin:26px 0 0;color:var(--dim);font-size:12px}
.gp-jumps a:hover{color:var(--text)}
.gp-section{margin-top:48px;scroll-margin-top:24px}
.gp-section-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid var(--edge-hi);padding-bottom:12px;margin-bottom:18px}
.gp-section-h h2{font-size:23px;font-weight:500;margin:0;letter-spacing:-.025em}
.gp-section-h>.label{color:var(--dim);font-size:9px;text-align:right}
.gp-section>.fine{color:var(--dim);font-size:12px}
.gp-board{margin-top:24px}
.gp-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(70px,1.2fr) 46px 130px;gap:18px;align-items:center;padding:13px 0;border-bottom:1px solid var(--edge);font-size:13px}
.gp-row>a:hover{color:var(--gc)}
.gp-bar{height:7px;background:var(--edge);overflow:hidden;border-radius:3px}
.gp-bar i{height:100%;display:block;background:currentColor}
.gp-value{font:500 15px var(--f-mono);text-align:right}
.gp-was{font-size:10px;color:var(--dim)}
.gp-was small{display:block;font-size:9px}
.low{--score-color:#ed7174}.mid{--score-color:#e4b35c}.high{--score-color:#9ac8ab}.unknown{--score-color:var(--dim)}
.gp-bar,.gp-value{color:var(--score-color)}
.gp-history{margin-top:18px;font-size:13px;color:var(--dim)}
.gp-history summary,.gp-push summary{cursor:pointer;padding:8px 0;color:var(--gc)}
.gp-history ol{list-style:none;padding:0}
.gp-history li{display:flex;flex-wrap:wrap;gap:18px;padding:8px 0;border-bottom:1px solid var(--edge)}
.gp-history b{font:12px var(--f-mono);color:var(--text)}
.gp-push{background:var(--card);border:1px solid var(--edge-hi);border-radius:9px;padding:22px 24px;margin-top:14px;scroll-margin-top:24px}
.gp-push-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.gp-push time{font:11px var(--f-mono);color:var(--dim)}
.gp-push-score{font:18px var(--f-mono)}
.gp-push-score small{font-size:12px;color:var(--dim)}
.gp-push ul{padding-left:18px;font-size:14px;line-height:1.7}
.gp-push>.fine{font-size:10px;color:var(--dim);overflow-wrap:anywhere}
.gp-push-area{border-top:1px solid var(--edge);padding-top:12px;margin-top:12px}
.gp-push-area h4{margin:0;font-weight:500;font-size:13px}
.gp-push-area p{font-size:12px}
.gp-empty{border:1px dashed var(--edge-hi);border-radius:10px;padding:32px;background:var(--card)}
.gp-empty>.label{color:var(--gc);font-size:10px}
.gp-empty h3{font-size:21px;font-weight:500;margin:12px 0}
.gp-empty p{max-width:66ch;font-size:14px;color:var(--dim);margin:0}
.gp-areas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gp-area{border:1px solid var(--edge);border-top:2px solid var(--score-color);border-radius:8px;padding:20px;background:var(--card);scroll-margin-top:24px}
.gp-area-h{display:flex;gap:10px;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.gp-area-h h3{font-size:15px;font-weight:500;margin:0}
.gp-area-h>b{font:16px var(--f-mono);white-space:nowrap;color:var(--score-color)}
.gp-area-h small{font-size:10px;color:var(--dim)}
.gp-area>.fine{color:var(--dim);font-size:12px}
.gp-finding{padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--edge)}
.gp-finding>p{font-size:13px;margin:8px 0}
.gp-evidence{list-style:none;padding:0!important;margin:10px 0!important;font-size:11px!important;color:var(--dim);overflow-wrap:anywhere}
.gp-evidence .label{font-size:8px;margin-right:4px;color:var(--gc)}
.gp-evidence a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.gp-evidence code{font:10px var(--f-mono);display:block;margin-top:3px}
.gp-next{font-size:12px;color:var(--dim);margin:14px 0 0}
.gp-next b{display:block;color:var(--text);font:9px var(--f-mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}
.gp-decisions{padding-left:20px;line-height:1.8;font-size:14px}
.gp-note{padding:18px 0;border-bottom:1px solid var(--edge);scroll-margin-top:24px}
.gp-note-h{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;align-items:baseline}
.gp-note-h b{font-weight:500}.gp-note-h .label{font-size:9px;color:var(--gc)}
.gp-note time{margin-left:auto;font-size:10px;color:var(--dim)}
.gp-note>p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}
.gp-parent{display:block;color:var(--dim);font-size:10px;margin-top:8px;overflow-wrap:anywhere}
.gp-method{margin-top:50px;padding-top:22px;border-top:1px solid var(--edge-hi);color:var(--dim);font-size:12px}
.gp-method p{max-width:78ch}.gp-method a{display:inline-block;color:var(--gc);margin:8px 24px 0 0}
.gp-syncbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--edge);font-size:11px;color:var(--dim);margin-bottom:30px}
.gp-syncbar p{margin:0}.gp-syncbar button{border:1px solid var(--edge-hi);border-radius:5px;padding:7px 12px;font-size:11px;white-space:nowrap}
.gp-syncbar button:disabled{opacity:.5;cursor:wait}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:680px){.gp-summary{grid-template-columns:1fr;gap:24px;padding:24px}.gp-score{gap:10px}.gp-score .fine{max-width:none}.gp-areas{grid-template-columns:1fr}.gp-row{grid-template-columns:minmax(0,1fr) 44px 95px;gap:12px}.gp-bar{display:none}.gp-was{font-size:9px}.gp-section-h{align-items:flex-start}.gp-section-h>.label{max-width:130px}.gp-tabs{gap:2px}.gp-tabs a{font-size:12px;padding:8px 10px}.gp-push{padding:20px}.gp-empty{padding:24px}.gp-note time{margin-left:0}.gp-push-score{font-size:15px}}
