/* Spacecrafted Phase 3 — Student Landing Page */
body.logged-in, body.app-space {
  background:
    radial-gradient(circle at 20% 10%, rgba(111,227,255,.14), transparent 30%),
    radial-gradient(circle at 85% 15%, rgba(184,147,255,.12), transparent 28%),
    linear-gradient(180deg, #020617 0%, #061225 48%, #08111f 100%);
}

.student-hero { margin-bottom: 1rem; }
.student-hero-grid { display: grid; grid-template-columns: 1fr; gap: 1.25rem; align-items: center; }
@media (min-width: 850px) { .student-hero-grid { grid-template-columns: minmax(0, 1fr) 260px; } }
.eyebrow { color: var(--brand); letter-spacing: .18em; font-weight: 700; font-size: .85rem; }
.mission-line { color: var(--muted); font-size: 1.15rem; max-width: 700px; }
.mission-actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-top: 1rem; }
.action-button, button.action-button { display:inline-block; border:1px solid #203149; border-radius:999px; padding:.7rem 1rem; font-weight:700; background:#0e1520; color:var(--txt); cursor:pointer; }
.action-button.primary, button.primary.action-button { background: linear-gradient(90deg, var(--brand), var(--brand-2)); color:#00111f; border:0; }
.action-button.ghost { background: transparent; }
.id-card { background: rgba(2,6,23,.72); border: 1px solid #203149; border-radius: 18px; padding: 1rem; text-align: center; box-shadow: inset 0 0 0 1px rgba(111,227,255,.08), 0 15px 35px rgba(0,0,0,.35); }
.avatar-frame { width: 128px; height: 128px; display: grid; grid-template-columns: repeat(8,1fr); grid-template-rows: repeat(8,1fr); gap: 2px; padding: 8px; margin: 0 auto .75rem; background:#020617; border:1px solid #203149; border-radius:18px; box-shadow: 0 0 1rem rgba(111,227,255,.25); }
.avatar-frame span { display:block; border-radius:2px; }
.rank-pill, .team-pill { display:inline-block; padding:.35rem .7rem; border-radius:999px; margin:.2rem; background:rgba(111,227,255,.09); border:1px solid #203149; color:var(--txt); }
.rank-pill { color:#ffd166; }
.small-link { font-size:.92rem; }
.dashboard-grid { display:grid; grid-template-columns:1fr; gap:1rem; }
@media (min-width: 850px) { .dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .wide-card { grid-column: span 2; } }
.card { background: var(--card); border:1px solid var(--stroke); border-radius:16px; padding:1.25rem; box-shadow:0 10px 30px rgba(0,0,0,.28); }
.card h2 { margin-top:0; font-family:"Orbitron", sans-serif; }
.big-icon { font-size:2.2rem; margin:.25rem 0; }
.level-stack { display:grid; gap:.45rem; margin:.75rem 0; }
.level { display:flex; justify-content:space-between; gap:1rem; border:1px solid #172033; border-radius:12px; padding:.6rem .75rem; color:var(--muted); background:rgba(2,6,23,.42); }
.level.active { color:var(--txt); border-color:rgba(111,227,255,.55); box-shadow:0 0 .8rem rgba(111,227,255,.18); }
.level span { color:var(--muted); }
.countdown { font-family:"Orbitron", sans-serif; font-size:2rem; color:#ffd166; text-shadow:0 0 .8rem rgba(255,209,102,.45); }
.small { color:var(--muted); font-size:.95rem; }
.badge-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(130px,1fr)); gap:.6rem; }
.skill-badge { display:flex; align-items:center; gap:.5rem; padding:.6rem; border-radius:12px; background:rgba(2,6,23,.45); border:1px solid #172033; }
.skill-badge img { width:32px; height:32px; object-fit:contain; }
.control-grid { display:grid; grid-template-columns:1fr; gap:.75rem; }
@media (min-width: 750px) { .control-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
