body{font-family:Arial,Helvetica,sans-serif;background:#f5f7fb;margin:0;color:#222}
.container{max-width:1100px;margin:0 auto;padding:20px}h1{color:#173b6d}
.card{background:#fff;border-radius:12px;padding:24px;margin:18px 0;box-shadow:0 2px 10px rgba(0,0,0,.08)}
label{display:block;margin:12px 0;font-weight:bold}
input,select,textarea{width:100%;padding:10px;border:1px solid #ccd3dd;border-radius:6px;margin-top:5px;box-sizing:border-box}textarea{min-height:80px}button{background:#173b6d;color:#fff;border:0;border-radius:8px;padding:12px 18px;cursor:pointer;margin-top:15px}button:hover{background:#0f2b50}
.radio{font-weight:normal}
.radio input{width:auto;margin-right:8px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.progress{display:flex;justify-content:space-between;margin:20px 0}
.progress-step{flex:1;text-align:center;position:relative}
.progress-step span{display:inline-block;width:34px;height:34px;line-height:34px;border-radius:50%;background:#d7dce5;color:#333;font-weight:bold}
.progress-step.done span,.progress-step.active span{background:#173b6d;color:white}
.progress-step em{display:block;font-style:normal;font-size:13px;margin-top:6px}
.notice{background:#e8f3ff;border-left:4px solid #1976d2;padding:12px;margin:10px 0}
.warning{background:#fff3cd;border-left:4px solid #f0ad4e;padding:12px;margin:12px 0}
.success{border-left:5px solid #3aa655}.table{border-collapse:collapse;width:100%;margin-top:15px}
.table th,.table td{border:1px solid #ddd;padding:2px;text-align:left;vertical-align:top; font-size:12px;}
.table th{background:#eef2f7}
.notok{background:#fff5f5}
.notok small{color:#b00020}
.inline-form{display:flex;gap:10px;align-items:end}
.inline-form label{flex:1}@media(max-width:700px){.grid{grid-template-columns:1fr}
.inline-form{display:block}.progress-step em{font-size:11px}}

.intro{color:#4b5563;line-height:1.45;margin-top:0}
.choice-box{border:1px solid #e1e6ef;border-radius:10px;padding:14px;margin:14px 0;background:#fbfcff}
.numero-zone{margin-top:12px;padding-left:28px}
.numfede{width:110px !important;max-width:120px;text-align:center;font-weight:bold;font-size:15px;letter-spacing:1px;display:inline-block;white-space:nowrap}.hint{font-size:13px;color:#6b7280;margin-left:8px}
.identification-card h2{margin-bottom:8px}
.warning-orange{background:#fff3cd;border-left-color:#f0ad4e;color:#6b4500}
.warning-red{background:#fdecea;border-left-color:#d93025;color:#8a1c12;font-weight:bold}
.capitaine-zone{margin-top:8px}
.capitaine-zone .numfede{width:110px !important;max-width:110px}

.categories-table th small{font-weight:normal;color:#5f6b7a}
.categories-table input[type="checkbox"]{width:auto;margin:0}
.cell-center{text-align:center;vertical-align:middle}
.categories-table select{min-width:150px}
.categories-table .capitaine-zone{margin-top:8px}
.categories-table .capitaine-zone input{display:inline-block}

.category-section td{background:#173b6d;color:#fff;font-weight:bold;text-transform:uppercase;letter-spacing:.5px;padding:10px 12px}
.category-section-dames td{background:#6d285d}
.category-section-open td{background:#173b6d}
.category-section-mx td{background:#1f6f78}
.categories-table th{text-align:center}
.categories-table td{vertical-align:middle}
.categories-table td:nth-child(3){white-space:nowrap}
.categories-table td:nth-child(5){width:120px}
.categories-table td:nth-child(6){width:110px;text-align:center}
.categories-table .capitaine-zone{margin-top:0}
.categories-table .capitaine-zone input{margin-top:0}

.danger-link{color:#b00020;font-weight:bold}
.danger-button{background:#b00020}
.danger-button:hover{background:#7a0016}

.admin-nav a { margin-right: 8px; white-space: nowrap; font-size:14px;}
.inline-form { display:flex; gap:12px; align-items:end; flex-wrap:wrap; margin:12px 0; }
.inline-form label { display:flex; flex-direction:column; gap:4px; }
.admin-form-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap:12px; align-items:end; }
.admin-form-grid label { display:flex; flex-direction:column; gap:4px; }
.muted { color:#777; font-size:0.9em; }
.link-button { background:none; border:none; padding:0; cursor:pointer; font:inherit; }
.notice.success { background:#e8f7e8; border:1px solid #76bd76; padding:10px; margin:10px 0; border-radius:5px; }
.table td, .table th { vertical-align:top; }

.site-header{display:flex;align-items:center;gap:18px;background:#fff;border-radius:12px;padding:14px 18px;margin:12px 0 18px 0;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.site-logo img{display:block;max-height:78px;width:auto}
.site-title h1{margin:0;color:#173b6d}.site-subtitle{margin-top:4px;color:#5f6b7a;font-size:15px;font-weight:bold}
@media(max-width:700px){.site-header{align-items:flex-start}
.site-logo img{max-height:58px}
.site-title h1{font-size:22px}
.site-subtitle{font-size:13px}}
.categorie-date-match{
    display:block;
    margin-top:2px;
    font-size:10px;
    font-style:italic;
    color:#7a7a7a;
}
.button.small, button.small{padding:6px 10px;font-size:12px;border-radius:6px;margin-top:4px;}

.compact-list{
    margin:0;
    padding-left:12px;
}

.compact-list li{
    margin-bottom:1px;
}
.admin-inscriptions-table td{
    font-size:12px;
    line-height:1;
}

p {
  margin:0;
  margin-top: 1px;
  margin-bottom: 1px;
  line-height: 1.1;
}

.recipient-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:5px 8px;
    border-bottom:1px solid #ddd;
}

.delete-recipient{
    background:#d9534f;
    color:#fff;
    border:0;
    border-radius:4px;
    padding:2px 8px;
    cursor:pointer;
}

.delete-recipient:hover{
    background:#c9302c;
}
