.gp{display:flex;flex-direction:column;gap:14px;max-width:1100px;width:100%;margin:0 auto}
.gp-status{margin:0;padding:14px 16px;background:var(--panel);border:1px dashed var(--line);border-radius:var(--r);color:var(--muted)}
.gp-status.ok{border-style:solid;color:var(--fg)}
.gp-tabs{display:flex;gap:8px;flex-wrap:wrap}
.gp-tab{padding:7px 14px;border-radius:99px;border:1px solid var(--line);background:var(--panel);font-size:.9rem}
.gp-tab[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:650}
.gp-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;align-items:start}
.gp-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px;min-width:0}
.gp-raw{grid-column:1/-1}
.gp-h{margin:0 0 10px;font-size:.95rem;font-weight:700}
.gp-h3{margin:12px 0 6px;font-size:.8rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.gp-viz svg{width:100%;height:auto;display:block;max-height:60vh}
.gp-body{fill:var(--panel2);stroke:var(--line);stroke-width:2}
.gp-well{fill:var(--bg);stroke:var(--line);stroke-width:2}
.gp-btn,.gp-thumb,.gp-trig{fill:var(--bg);stroke:var(--muted);stroke-width:1.6;transition:fill .04s}
.gp-btn.on,.gp-thumb.on{fill:var(--accent);stroke:var(--accent)}
.gp-trig{fill:var(--accent);fill-opacity:calc(.08 + var(--v,0)*.92)}
.gp-thumb{fill:var(--panel2)}
.gp-lab{fill:var(--muted);font:700 11px var(--font);text-anchor:middle;pointer-events:none}
.gp-sticks{display:flex;gap:10px;justify-content:center}
.gp-stick{margin:0;text-align:center;flex:1;min-width:0}
.gp-stick canvas{width:100%;max-width:200px;height:auto;aspect-ratio:1;border-radius:50%;background:var(--bg)}
.gp-stick figcaption{font-size:.85rem;margin-top:4px}
.gp-mono{font-family:var(--mono);font-size:.8rem;color:var(--muted);display:block}
.gp-dz{display:block;margin-top:12px;font-size:.9rem}
#gp-dz{width:100%;accent-color:var(--accent)}
.gp-note{font-size:.82rem;color:var(--muted);margin:4px 0}
.gp-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}
.gp-drift{list-style:none;margin:8px 0 0;padding:0;font-size:.88rem}
.gp-drift li{padding:6px 0;border-top:1px solid var(--line)}
.gp-dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 14px;font-size:.9rem}
.gp-dl dt{color:var(--muted)}
.gp-dl dd{margin:0;overflow-wrap:anywhere}
.gp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px}
.gp-cell{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:5px 8px;font-size:.78rem;background:var(--bg);display:flex;justify-content:space-between;gap:6px}
.gp-cell i{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--accent);transform-origin:left;transform:scaleX(var(--v,0))}
.gp-cell.on{border-color:var(--accent)}
.gp-cell em{font-style:normal;font-family:var(--mono);color:var(--muted)}
