/* ==========================================================================
   Italians.ch — banner manager (gestione.html) styles.
   ========================================================================== */

.adm-gate {
  max-width: 460px; margin: 40px auto; text-align: center;
  background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 40px 28px;
}
.adm-gate h2 { font-family: var(--serif); margin: 12px 0 6px; }
.adm-gate p { color: var(--gray); margin: 0 auto 18px; max-width: 40ch; }
.adm-login { display: flex; flex-direction: column; gap: 10px; max-width: 280px; margin: 0 auto; }
.adm-login input {
  padding: 11px 13px; border: 1px solid var(--line); border-radius: 8px;
  font: inherit; font-size: 14px; background: #fff; color: var(--ink);
}
.adm-login input:focus { outline: none; border-color: var(--red, #CE2B37); }
.adm-err { color: #b3261e; font-size: 13px; margin: 10px 0 0; min-height: 1em; }

/* manager grid (reuses .red-grid two-column layout from vodafone.css) */
.adm-h3 { font-family: var(--serif); font-size: 19px; margin: 0 0 14px; }
.adm-muted { color: var(--gray); font-size: 14px; font-weight: 400; }
.adm-card { background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: 22px; }

.adm-list { display: flex; flex-direction: column; gap: 8px; }
.adm-row {
  display: flex; align-items: center; gap: 12px; padding: 10px 12px;
  background: #fff; border: 1px solid var(--line); border-radius: 10px;
}
.adm-row__sw {
  flex: none; width: 54px; height: 40px; border-radius: 6px;
  background-size: cover; background-position: center; border: 1px solid var(--line);
}
.adm-row__meta { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.adm-row__meta b { font-size: 14px; }
.adm-row__meta span { font-size: 12px; color: var(--gray); }
.adm-row__act { display: flex; align-items: center; gap: 6px; }
.adm-chip { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 999px; text-transform: uppercase; letter-spacing: .04em; }
.adm-chip.is-on { background: #e7f3ec; color: #1f7a4d; }
.adm-chip.is-off { background: #f1efe9; color: #8a8475; }

/* upload area */
.adm-upload { display: flex; gap: 14px; align-items: flex-start; }
.adm-thumb {
  flex: none; width: 120px; height: 90px; border-radius: 8px; overflow: hidden;
  background: var(--cream-2, #efeadd); border: 1px solid var(--line);
  display: flex; align-items: center; justify-content: center;
}
.adm-thumb span { font-size: 11px; color: var(--gray); padding: 6px; text-align: center; }
.adm-thumb img, .adm-thumb video { width: 100%; height: 100%; object-fit: cover; display: block; }
.adm-upload__ctl { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.adm-upload__ctl input[type="text"] {
  width: 100%; padding: 9px 11px; border: 1px solid var(--line); border-radius: 8px; font: inherit; font-size: 13px;
}
.adm-hint { font-size: 12px; color: var(--gray); margin: 0; }
.adm-hint--ok { color: #1f7a4d; }
.adm-hint--err { color: #b3261e; }

.adm-check { display: flex; align-items: center; gap: 8px; text-transform: none; letter-spacing: 0; font-weight: 500; cursor: pointer; }
.adm-check input { width: auto; }

@media (max-width: 760px) { .adm-upload { flex-direction: column; } .adm-thumb { width: 100%; height: 150px; } }
