/* ============================================================
   TEAM-BESTELLUNGEN — Mitarbeiter-Zuordnung (B2B)
   Editorial-Stil: Off-White, 1px-Linien, Outfit/Inter,
   nutzt die CSS-Variablen aus main.css.
   ============================================================ */

/* ---------- Produktseite: optionales Mitarbeiter-Feld ---------- */
.rompe-team-field{margin:1.15rem 0 .4rem}
.rompe-team-field label{display:block}
.rompe-team-field label span{display:block;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--primary);margin-bottom:.45rem}
.rompe-team-field label span em{font-family:var(--font-editorial);font-style:italic;font-weight:400;letter-spacing:.04em;text-transform:none;color:var(--text-light)}
.rompe-team-field input{width:100%;border:1px solid var(--border);background:#fff;padding:.7rem .85rem;border-radius:0;font-family:var(--font-b);font-size:.9rem;color:var(--text);transition:border-color .2s}
.rompe-team-field input:focus{outline:none;border-color:var(--primary)}
.rompe-team-field input::placeholder{color:var(--text-light);opacity:.7}
.rompe-team-field__hint{font-size:.78rem;color:var(--text-light);line-height:1.55;margin:.5rem 0 0}

/* ---------- Warenkorb: Inline-Feld je Position ---------- */
.rompe-team-line{display:flex;align-items:center;gap:.6rem;margin-top:.55rem;max-width:360px}
.rompe-team-line label{display:flex;align-items:center;gap:.55rem;flex:1;min-width:0;margin:0}
.rompe-team-line label span{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-light);white-space:nowrap}
.rompe-team-line input{flex:1;min-width:0;border:1px solid var(--border);background:#fff;padding:.42rem .6rem;border-radius:0;font-family:var(--font-b);font-size:.8rem;color:var(--text);transition:border-color .2s}
.rompe-team-line input:focus{outline:none;border-color:var(--primary)}
.rompe-team-line input::placeholder{color:var(--text-light);opacity:.7}

/* Dezentes Speicher-Feedback (✓ bzw. Fehlerhinweis) */
.rompe-team-line__status{font-size:.72rem;color:#1d6b3a;white-space:nowrap;opacity:0;transition:opacity .25s ease}
.rompe-team-line__status.is-visible{opacity:1}
.rompe-team-line__status.is-error{color:var(--color-error);white-space:normal}

/* ---------- Team-Größenspiegel (Warenkorb + Danke-Seite) ---------- */
.rompe-team-roster{background:#fff;border:1px solid var(--border);padding:1.75rem 1.75rem 1.5rem;margin:0 0 2.5rem}
.rompe-team-roster__head{margin-bottom:1.15rem}
.rompe-team-roster__head h2{font-family:var(--font-h);font-size:1.35rem;letter-spacing:-.01em;margin:.35rem 0 0}

/* Tabelle scrollt bei schmalen Viewports in ihrem eigenen Container */
.rompe-team-roster__scroll{overflow-x:auto}
.rompe-team-roster table{width:100%;border-collapse:collapse;min-width:560px}
.rompe-team-roster th{font-family:var(--font-b);font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-light);text-align:left;padding:.55rem .85rem .55rem 0;border-bottom:1px solid var(--primary);white-space:nowrap}
.rompe-team-roster td{font-size:.85rem;color:var(--text);padding:.65rem .85rem .65rem 0;border-bottom:1px solid var(--border);vertical-align:top}
.rompe-team-roster tbody tr:last-child td{border-bottom:1px solid var(--border)}
.rompe-team-roster td[data-rompe-roster-name]{font-weight:600;color:var(--primary)}
.rompe-team-roster td.is-open{font-family:var(--font-editorial);font-style:italic;font-weight:400;color:var(--text-light)}
.rompe-team-roster .rompe-team-roster__qty{text-align:right;padding-right:0;font-variant-numeric:tabular-nums}

/* Zähler + Hinweis unter der Tabelle */
.rompe-team-roster__count{font-size:.8rem;font-weight:600;color:var(--primary);letter-spacing:.02em;margin:.9rem 0 0;font-variant-numeric:tabular-nums}
.rompe-team-roster__note{font-size:.78rem;color:var(--text-light);line-height:1.55;margin:.3rem 0 0}

/* ---------- Responsive ---------- */
@media(max-width:700px){
    .rompe-team-roster{padding:1.25rem 1.1rem 1.1rem}
    .rompe-team-line{flex-wrap:wrap;max-width:none}
    .rompe-team-line label span{display:none} /* Platz sparen — Placeholder erklärt das Feld */
}
