/* Group assignments: same typography, depth and glass borders as Mission Studio. */
.ga-shell{display:grid;gap:22px;min-width:0;color:#dbeef5}
.ga-hero{border:1px solid #41687c;border-radius:22px;padding:32px 35px;background:radial-gradient(circle at 90% 15%,#745aa655,transparent 42%),linear-gradient(120deg,#14383d,#102338 70%,#17243f);box-shadow:0 20px 48px #0003}
.ga-hero>span{font-size:11px;letter-spacing:2px;color:#80eada;font-weight:850}
.ga-hero h1{font-size:clamp(28px,3vw,41px);margin:9px 0;letter-spacing:-1.2px}
.ga-hero p{color:#b5cbd8;font-size:14px;line-height:1.6;margin:0}
.ga-panel{background:linear-gradient(135deg,#122b39,#0b1a27);border:1px solid #365668;border-radius:19px;padding:25px;min-width:0}
.ga-panel h2{font-size:22px;margin:0 0 20px;color:#ebf8fd}
.ga-assign-form{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(150px,1fr) minmax(155px,1fr) auto;gap:13px;align-items:end;max-width:none}
.ga-assign-form label{font-weight:700;font-size:12px;color:#a9c8d1;margin:0;min-width:0}
.ga-assign-form input,.ga-assign-form select{display:block;width:100%;min-width:0;margin:8px 0 0;border:1px solid #35596b;border-radius:11px;background:#0b1c29;padding:11px;color:#e5f4fa;height:45px}
.ga-assign-form button{margin:0;height:45px;white-space:nowrap}
.ga-hint{font-size:12px;color:#91b1bf;margin:15px 0 0}
.ga-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:17px}
.ga-card{display:flex;flex-direction:column;gap:12px;background:linear-gradient(155deg,#163143,#0b1b2a);border:1px solid #3a6072;border-radius:16px;padding:23px;min-width:0;box-shadow:0 10px 29px #0003}
.ga-card h3{font-size:19px;margin:0;color:#f1fcff;overflow-wrap:anywhere}
.ga-card p{font-size:13px;color:#a7c4cf;margin:0;min-height:23px}
.ga-subject{width:fit-content;padding:6px 11px;background:#16473f;border:1px solid #378a77;border-radius:20px;color:#8bffe0;font-weight:750;font-size:11px}
.ga-meta{color:#88aab9;font-size:12px}
.ga-action{display:block;margin-top:auto;padding:11px;border-radius:10px;background:#184d47;border:1px solid #48ab99;color:#adfff0;text-align:center;font-weight:750;font-size:13px;text-decoration:none}
.ga-action:hover{background:#216257;color:#f6fffd}
.ga-line{display:flex;gap:8px;justify-content:space-between;color:#b2d5e2;font-size:12px}
.ga-line small{color:#8caebb}
.ga-status{font-size:11px;font-weight:800;padding:5px 10px;border-radius:20px;white-space:nowrap}
.ga-completed{color:#8af6c8;background:#174736;border:1px solid #3b8c69}
.ga-in_progress{color:#f6d48c;background:#423b23;border:1px solid #7b683c}
.ga-not_started{color:#b1c7d7;background:#263642;border:1px solid #4b6575}
.ga-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ga-stats article{padding:21px;border:1px solid #34596a;border-radius:15px;background:#122839;display:grid;gap:9px}
.ga-stats small{color:#93b4c1;font-size:12px}.ga-stats strong{font-size:34px;color:#a0f1dc}
.ga-table{overflow-x:auto}.ga-table table{width:100%;border-collapse:collapse;font-size:13px;min-width:670px}
.ga-table th,.ga-table td{padding:15px 10px;border-bottom:1px solid #2a4655;text-align:left}
.ga-table td small{display:block;color:#789eaf;margin-top:5px;font-size:11px}
.ga-back{color:#77e4d5;font-size:13px;font-weight:700}
.ga-empty{grid-column:1/-1;border:1px dashed #43657a;background:#0d2332;border-radius:14px;padding:38px;text-align:center;color:#a5c5d0}
@media(max-width:1040px){.ga-assign-form{grid-template-columns:1fr 1fr}.ga-assign-form button{width:100%}}
@media(max-width:590px){.ga-hero{padding:23px 20px}.ga-panel{padding:19px 15px}.ga-assign-form,.ga-stats{grid-template-columns:1fr}.ga-card{padding:19px}.ga-table table{min-width:620px}}

.ga-details{min-width:165px;font-size:12px}
.ga-details summary{cursor:pointer;color:#89e5d6;font-weight:750;white-space:nowrap}
.ga-attempts{display:grid;gap:8px;margin-top:8px;max-height:270px;overflow-y:auto}
.ga-attempts>div{display:grid;gap:4px;border:1px solid #3b6271;background:#102a39;padding:9px;border-radius:8px}
.ga-attempts span,.ga-attempts small{font-size:11px;color:#9dbdc9}
html[data-mode="light"] .ga-details summary{color:var(--accent)}
html[data-mode="light"] .ga-attempts>div{background:#f7fafb;border-color:#d3e0e5}
html[data-mode="light"] .ga-attempts span,html[data-mode="light"] .ga-attempts small{color:#597384}
