.gp-shell{max-width:none;margin:auto;color:var(--gc-text);padding-bottom:32px}.gp-nav{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--gc-line);padding:12px 0;margin-bottom:24px}.gp-nav a{padding:10px 12px;border-radius:5px;background:var(--gc-raised);font-size:13px}.gp-hero{padding:20px;background:var(--gc-raised);border:1px solid var(--gc-line);border-radius:2px;margin-bottom:28px}.gp-hero h1{font-size:22px;line-height:1.12;max-width:780px;margin:14px 0}.gp-hero p{max-width:650px;font-size:14px;color:var(--gc-secondary)}.gp-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700;color:var(--gc-accent)}.gp-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:20px}.gp-section{margin:28px 0}.gp-section h2{font-size:18px;margin:0 0 16px}.gp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gp-card,.gp-panel{background:var(--gc-surface);border:1px solid var(--gc-line);border-radius:2px;padding:20px;margin:12px 0}.gp-card h3{font-size:16px;line-height:1.3;margin:8px 0}.gp-card p,.gp-empty,.gp-legal{color:var(--gc-secondary)}.gp-empty{padding:24px;background:var(--gc-raised);border:1px dashed var(--gc-line);border-radius:2px}.gp-topics{list-style:none;margin:0;padding:0;border:1px solid var(--gc-line);border-radius:2px;overflow:hidden}.gp-topics li{background:var(--gc-surface);padding:16px 20px;border-bottom:1px solid var(--gc-line)}.gp-topics small{display:block;color:var(--gc-secondary);margin-top:4px}.gp-form{display:grid;gap:16px;background:var(--gc-surface);padding:16px;border-radius:2px;margin:16px 0}.gp-form label{display:grid;gap:7px}.gp-form label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px}.gp-form input,.gp-form textarea,.gp-form select{width:100%}.gp-form input[type=checkbox]{width:auto}.gp-form fieldset{border:1px solid var(--gc-line);padding:16px;display:grid;gap:10px}.gp-form .button{justify-self:start}.gp-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:var(--gc-surface);padding:16px;border-radius:2px}.gp-filters label{display:grid;gap:6px}.gp-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.gp-detail{background:var(--gc-surface);padding:20px;border-radius:2px}.gp-detail h1{font-size:22px;line-height:1.2}.gp-prose{line-height:1.8;white-space:normal;overflow-wrap:anywhere}.gp-cover{width:100%;height:260px;object-fit:cover;border-radius:2px;margin-bottom:20px}.gp-logo{width:100px;height:100px;object-fit:cover;border-radius:2px;float:right}.gp-screenshot{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:2px}.gp-facts{display:grid;grid-template-columns:220px 1fr;gap:12px;padding:20px 0;overflow-wrap:anywhere}.gp-facts dt{color:var(--gc-secondary)}.gp-facts dd{margin:0}.gp-trust{display:inline-block;padding:5px 10px;background:#173b35;color:#b5f0d9;border:1px solid #69bba2;border-radius:6px}.gp-panel summary{cursor:pointer;font-weight:700;min-height:32px}.gp-notice{padding:16px;border-left:4px solid #8be0ac;background:#173329;color:#def5e9}.gp-table{overflow:auto}.gp-table table{width:100%}.gp-table th,.gp-table td{padding:10px;text-align:left}.gp-pagination{display:flex;gap:10px;margin:20px}.gp-pagination a{padding:10px;background:var(--gc-raised)}.gp-shell progress{width:100%;max-width:500px;height:12px;accent-color:#ffb454}.gp-legal{font-size:13px;line-height:1.6;margin:24px 0}.gp-lead{font-size:14px}.gp-shell textarea[readonly]{width:100%;margin:16px 0}.gp-detail blockquote{padding:15px}
@media(max-width:900px){.gp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-hero{padding:20px}.gp-facts{grid-template-columns:150px 1fr}}
@media(max-width:550px){.gp-grid,.gp-filters{grid-template-columns:1fr}.gp-hero,.gp-detail{padding:20px}.gp-facts{grid-template-columns:1fr;gap:6px}.gp-facts dd{margin-bottom:12px}.gp-nav a{min-height:44px}.gp-form{padding:16px}.gp-detail h1{font-size:22px}.gp-cover{height:170px}.gp-logo{float:none}}
/* Inherit text colors explicitly because SMF styles headings independently. */
.gp-shell h1,.gp-shell h2,.gp-shell h3,.gp-shell label,.gp-shell legend,.gp-shell summary{color:var(--gc-text)}
.gp-home-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.gp-home-sections .gp-section{margin:0}.gp-home-sections .gp-grid{grid-template-columns:1fr}.gp-home-sections .gp-empty{margin:0 0 12px;padding:18px}.gp-home-sections .gp-section h2{font-size:18px}
@media(max-width:800px){.gp-home-sections{grid-template-columns:1fr}}
