/* HUBMAT Visual — 8º ano · Geometria */
.g8g-controls{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.g8g-controls .btn{flex:1 1 96px}
.g8g-readout{text-align:center;font-size:clamp(21px,4vw,32px);font-weight:850;margin:10px 0}
.g8g-board svg{width:100%;height:auto;display:block;max-width:640px;margin:auto}.g8g-grid{stroke:#d5dfd8;stroke-width:1}.g8g-axis{stroke:#607584;stroke-width:2}
.g8g-poly{fill:#d8e9f755;stroke:#235f9b;stroke-width:4}.g8g-diag{stroke:#a4481a;stroke-width:4}.g8g-helper{stroke:#9fb1a4;stroke-width:2;stroke-dasharray:6 5}.g8g-point{fill:#f2c257;stroke:#7c5a17;stroke-width:2}
.g8g-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.g8g-stats div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;text-align:center}.g8g-stats strong{display:block;font-size:23px}
.g8g-flow{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.g8g-flow span{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:700}.g8g-flow .current{background:var(--gold);border-color:#936b18}
.g8g-locus{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-width:620px;margin:auto}.g8g-locus>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;text-align:center}.g8g-locus strong{display:block;font-size:24px}
.g8g-seq{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.g8g-seq span{padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:700}.g8g-seq .current{background:#eaf4e7;border-color:var(--green)}
@media(max-width:560px){.g8g-stats{grid-template-columns:1fr 1fr 1fr}.g8g-locus{grid-template-columns:1fr}.g8g-controls .btn{flex-basis:42%}}
.g8g-transform-plane{max-width:700px;margin:10px auto;background:#fff;border:1px solid var(--line);border-radius:13px;padding:8px}.g8g-transform-plane svg{width:100%;height:auto;display:block}.g8g-transform-original{fill:#d9e8f555;stroke:#235f9b;stroke-width:3}.g8g-transform-image{fill:#f8df9f77;stroke:#a4481a;stroke-width:3}.g8g-transform-trace{fill:none;stroke:#146348;stroke-width:3;stroke-dasharray:6 5}.g8g-transform-point{fill:#f2c257;stroke:#7b5a13;stroke-width:2}.g8g-transform-point.original{fill:#235f9b;stroke:#fff}.g8g-transform-label{font-size:12px;fill:#50665b;font-weight:800}

