/**
 * css/desktop.css — Stili ESCLUSIVAMENTE desktop (min-width: 769px)
 *
 * Questo file viene caricato con media="(min-width: 769px)".
 * NON deve contenere alcun @media max-width.
 * NON deve contenere stili per componenti mobile (.hc-m, .adm-*).
 *
 * Componenti desktop usano il prefisso convenzione:
 *   hc-d__   = hero card desktop
 *   sg-d__   = stat grid desktop (usa classi esistenti .stat-card)
 */

/* ════════════════════════════════════════════════
   HERO CARD — DESKTOP
   ════════════════════════════════════════════════ */

.hc-d {
  background: linear-gradient(135deg, #1e3a6e 0%, #0f2044 100%);
  border-radius: 20px;
  padding: 28px 32px;
  margin-bottom: var(--space-6);
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}

.hc-d::before {
  content: '';
  position: absolute;
  top: -40%;
  right: -10%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(201,168,76,0.12) 0%, transparent 70%);
  pointer-events: none;
}

.hc-d__left {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0;
}

.hc-d__avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255,255,255,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 900;
  color: #fff;
  border: 3px solid rgba(255,255,255,0.35);
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.2s;
}
.hc-d__avatar:hover { border-color: var(--color-gold); }

.hc-d__text { min-width: 0; }

.hc-d__greeting {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255,255,255,0.55);
}
.hc-d__name {
  font-size: 22px;
  font-weight: 900;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.hc-d__sub {
  font-size: 12px;
  color: rgba(255,255,255,0.5);
  margin-top: 2px;
}

.hc-d__stats {
  display: flex;
  gap: 28px;
}
.hc-d__stat {
  text-align: center;
  padding: 6px 12px;
  border-radius: 10px;
  transition: background 0.2s;
}
.hc-d__stat:hover { background: rgba(255,255,255,0.08); }
.hc-d__stat-val {
  font-size: 26px;
  font-weight: 900;
  color: #fff;
  line-height: 1;
}
.hc-d__stat-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(255,255,255,0.5);
  margin-top: 4px;
}

/* ════════════════════════════════════════════════
   STAT GRID — DESKTOP  (classi esistenti .stat-card)
   Nessuna modifica necessaria: le .stat-card in components.css
   sono già desktop-native. Qui solo eventuali raffinamenti.
   ════════════════════════════════════════════════ */

/* Il blocco mobile donut NON deve essere visibile su desktop */
#admin-dash-mobile { display: none !important; }

/* ════════════════════════════════════════════════
   NASCONDERE COMPONENTI MOBILE SU DESKTOP
   ════════════════════════════════════════════════ */
.hc-m { display: none !important; }
.qa-m-tiles { display: none !important; }
.qa-m-section-title { display: none !important; }
.sc-m-list { display: none !important; }
.sc-m-section-title { display: none !important; }
.stu-mc-list .stu-mc { display: none !important; }
.stu-mc-group { display: none !important; }
.pg-m-tabs { display: none !important; }
.pg-m-week-panel { display: none !important; }

/* ════════════════════════════════════════════════
   REGOLE MIGRATE DA JS INLINE @media
   Ogni blocco indica il file JS di provenienza.
   ════════════════════════════════════════════════ */

/* ── js/admin/application.js ── */
/* (min-width:1300px — masonry 3 colonne su schermi larghi) */
@media (min-width: 1300px) {
  .app-masonry { column-count: 3 !important; }
}
/* (max-width:900px fallback — desktop stretto) */
@media (max-width: 900px) and (min-width: 769px) {
  .app-masonry { column-count: 1 !important; }
}

/* ── js/admin/esporta.js ── */
#esp-table-wrapper { max-height: 680px !important; }

/* ── js/admin/studenti.js ── */
#stu-cred-badges-wrap { position: absolute; top: 58px; right: 20px; display: flex; gap: 8px; }

/* ── js/faculty/dashboard.js ── */
.fac-nav-grid > div { border: 1px solid #c9a84c !important; }
.spu-comm-btn { border: 1px solid #c9a84c !important; }
.spu-desk-only { display: block; }
.spu-mob-only { display: none; }

/* ── js/student/peace_memo.js ── */
.memo-detail-grid { display: grid; grid-template-columns: 1fr 300px; gap: 24px; align-items: start; }
#memo-cards-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-bottom: 32px; }

/* ── js/admin/programma_griglia.js ── */
/* (max-width:1100px — grid a 1 colonna su desktop stretto) */
@media (max-width: 1100px) and (min-width: 769px) {
  .pg-weeks-grid { grid-template-columns: 1fr; }
}
