/* TeamKit — choix de la machine dans le formulaire /request (1er nov. 2026). Piloté par js/request-machine.js.
   N'apparaît qu'à partir de deux machines (une de production, une de développement). */
.req-machine { margin: 4px 0 18px; }
.req-machine-opts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.req-machine-opt {
  display: flex; flex-direction: column; gap: 6px; cursor: pointer; position: relative;
  background: var(--bg-secondary); border: 1px solid var(--border-color); border-radius: 12px;
  padding: 14px 14px 12px; transition: all .15s;
}
.req-machine-opt:hover { border-color: var(--accent-primary); background: var(--bg-tertiary); }
.req-machine-opt input { position: absolute; opacity: 0; pointer-events: none; }
.req-machine-opt:has(input:checked) { border-color: var(--accent-primary); background: rgba(0,240,255,0.10); box-shadow: 0 0 0 1px var(--accent-primary); }
.req-machine-opt:has(input:focus-visible) { outline: 2px solid var(--accent-primary); outline-offset: 2px; }
.req-machine-tete { display: flex; align-items: center; gap: 8px; }
.req-machine-ico { font-size: 1.6rem; line-height: 1; }
.req-machine-nom { color: var(--text-primary); font-weight: 700; font-size: 0.95rem; }
.req-machine-txt { color: var(--text-secondary); font-size: 0.82rem; line-height: 1.45; }
.req-machine-place { font-size: 0.75rem; font-weight: 600; color: var(--accent-success); }
.req-machine-place.is-full { color: #ffaa00; }
.req-machine-crit { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 3px; }
.req-machine-crit li { font-size: 0.78rem; color: var(--text-muted); display: flex; gap: 6px; }
.req-machine-crit li.ok { color: var(--accent-success); }
.req-machine-note { margin-top: 10px; }
@media (max-width: 640px) { .req-machine-opts { grid-template-columns: 1fr; } }
