.sag-app{max-width:960px;margin:0 auto;padding:20px 14px 60px;color:#243247}
.sag-app [hidden]{display:none!important}
.sag-hero,.sag-panel{background:#fff;border:1px solid #dbe3ee;border-radius:18px;padding:24px;margin-bottom:18px;box-shadow:0 8px 24px rgba(37,55,80,.07)}
.sag-hero{background:linear-gradient(135deg,#edf8ff,#fff7e8)}
.sag-hero h1{margin:.2em 0}.sag-hero a{display:inline-block;margin-top:8px}.sag-version{display:block;margin-top:10px;color:#66758b}.sag-kicker,.sag-subject{color:#1976a8;font-weight:700;margin:0}
.sag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.sag-card{border:1px solid #dbe3ee;border-radius:14px;padding:18px}.sag-card h3{margin:.35em 0}
.sag-card button,.sag-actions button,.sag-choices button{border:0;border-radius:12px;padding:12px 16px;font-weight:700;cursor:pointer}.sag-card button,.sag-primary{background:#1479ad!important;color:#fff}
.sag-included{margin:20px 0;padding:16px;background:#f7f9fc;border-radius:14px}.sag-included h2{margin-top:0;font-size:1.08rem}.sag-included li+li{margin-top:7px}
.sag-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.sag-preview{display:grid;gap:10px;margin-top:16px}.sag-preview>h2{margin-bottom:0}.sag-preview>div{background:#f4f8fc;border-radius:12px;padding:12px 15px}.sag-preview p{margin:.35em 0 0}
.sag-status{display:flex;gap:18px;flex-wrap:wrap;color:#536277}.sag-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:20px 0}.sag-choices button{background:#f2f5f8;border:2px solid transparent;color:#243247;min-height:52px}.sag-choices button.is-selected{border-color:#1479ad;background:#e5f5ff}.sag-choices button.is-correct{background:#dcf5e5;border-color:#2d9d5b}.sag-choices button.is-wrong{background:#ffe1e1;border-color:#d94b4b}.sag-choices button.is-missed{background:#fff1b8;border-color:#d99a16}
.sag-feedback{min-height:30px}.sag-feedback p{margin:.35em 0}.sag-ok{color:#218a4e}.sag-note{background:#fff5cf;border-radius:10px;padding:10px 12px}.sag-result-stats{display:flex;gap:14px}.sag-result-stats div{background:#f4f8fc;border-radius:12px;padding:14px;min-width:130px}.sag-result-stats span,.sag-result-stats strong{display:block}.sag-result-stats strong{font-size:1.4rem;margin-top:4px}
@media(max-width:600px){.sag-hero,.sag-panel{padding:18px 14px}.sag-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.sag-actions button{flex:1 1 140px}.sag-status{gap:10px;font-size:.92rem}}
