*{box-sizing:border-box}html,body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#0b0e12;color:#f5f7fb}body{min-height:100vh}.page-shell{max-width:1120px;margin:auto;padding:28px 22px 70px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:8px 0 28px}.brand{font-size:22px;font-weight:900;letter-spacing:.16em;color:#fff;text-decoration:none}.status-pill{padding:10px 14px;border:1px solid #26313e;border-radius:999px;color:#b9c4d2;font-size:13px}.status-pill span{display:inline-block;width:8px;height:8px;border-radius:50%;background:#ff6a1a;margin-right:8px}.intro{padding:38px 0 30px}.eyebrow{font-size:12px;letter-spacing:.18em;color:#ff6a1a;font-weight:800}.intro h1{font-size:clamp(42px,6vw,76px);letter-spacing:-.045em;line-height:1;margin:14px 0 18px}.intro>p{max-width:800px;color:#aeb9c7;font-size:18px;line-height:1.65}.security-note{margin-top:20px;padding:16px 18px;border-radius:16px;background:#111821;border:1px solid #273442;color:#ced7e2;font-size:14px;line-height:1.55}.form-card{display:grid;gap:18px}.form-section{background:#11161d;border:1px solid #222d39;border-radius:24px;padding:24px}.section-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.section-title>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#ff6a1a;background:#2a1b15;border:1px solid #5b2a16;font-size:12px;font-weight:900}.section-title h2{margin:0 0 5px;font-size:21px}.section-title p{margin:0;color:#7f8ca0;font-size:14px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:1/-1}label{display:grid;gap:8px;color:#dfe6ef;font-size:13px;font-weight:700}input,select{width:100%;border-radius:14px;border:1px solid #2a3644;background:#0c1117;color:#fff;padding:14px 15px;font:inherit;outline:none}input:focus,select:focus{border-color:#ff6a1a;box-shadow:0 0 0 3px rgba(255,106,26,.12)}input[type=color]{padding:5px;height:49px}.checkbox{display:flex;align-items:center;gap:10px;font-weight:600;color:#c7d0dc}.checkbox input{width:18px;height:18px;accent-color:#ff6a1a}.hidden{display:none}.consent-section{gap:14px;display:grid}.submit-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#151b23,#10151c);border:1px solid #293542;border-radius:24px;padding:22px 24px}.submit-zone strong{font-size:17px}.submit-zone p{margin:6px 0 0;color:#8996a9;font-size:14px;line-height:1.5}.submit-zone button{border:0;border-radius:16px;background:#ff6a1a;color:#fff;padding:15px 20px;font-weight:800;font-size:15px;cursor:pointer;white-space:nowrap}.submit-zone button:disabled{opacity:.55;cursor:not-allowed}.form-message{display:none;padding:16px 18px;border-radius:16px;font-size:14px;line-height:1.5}.form-message.show{display:block}.form-message.success{background:#0e2a20;border:1px solid #1f6a4b;color:#c9f5df}.form-message.error{background:#2b1415;border:1px solid #6d2a2f;color:#ffd1d4}@media(max-width:760px){.page-shell{padding:20px 14px 50px}.topbar{align-items:flex-start;gap:12px}.status-pill{font-size:11px}.intro{padding-top:22px}.intro>p{font-size:16px}.grid.two{grid-template-columns:1fr}.span-2{grid-column:auto}.form-section{padding:18px;border-radius:20px}.submit-zone{align-items:stretch;flex-direction:column}.submit-zone button{width:100%}}

.finalization-link{display:inline-flex;margin-top:6px;padding:11px 16px;border-radius:12px;background:#ff641c;color:#fff;text-decoration:none;font-weight:800}
.finalization-link:hover{filter:brightness(1.08)}


/* V2.12.1 — upload sécurisé du logo */
.logo-upload-field{display:grid;gap:8px}
.field-label{font-weight:700;color:#eef3f8}
.logo-upload-box{border:1px solid #2d3b49;border-radius:16px;padding:14px;background:#0a1118;display:grid;gap:12px}
.logo-preview-wrap{min-height:150px;border:1px dashed #40505f;border-radius:14px;background:#fff;display:grid;place-items:center;overflow:hidden;padding:12px}
.logo-placeholder{color:#6a7783;text-align:center;font-size:14px}
.logo-preview{max-width:100%;max-height:170px;object-fit:contain}
.logo-upload-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.logo-file-button,.logo-remove{border:0;border-radius:10px;padding:11px 14px;font-weight:800;cursor:pointer}
.logo-file-button{background:#ff641c;color:#fff;display:inline-flex;align-items:center}
.logo-file-button input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.logo-remove{background:#17222d;color:#e5edf4;border:1px solid #344454}
.logo-help{margin:0;color:#9eacb9;font-size:12px;line-height:1.45}
.logo-upload-status{min-height:18px;font-size:13px}
.logo-upload-status.ok{color:#4adea3}.logo-upload-status.error{color:#ff8e79}.logo-upload-status.busy{color:#ffb082}
.hidden{display:none!important}
@media(max-width:620px){
  .logo-preview-wrap{min-height:125px}
  .logo-file-button,.logo-remove{width:100%;justify-content:center}
}


/* V2.12.2 — correction stricte de l'aperçu du logo */
.logo-upload-box{
  min-width:0;
  overflow:hidden;
}
.logo-preview-wrap{
  position:relative;
  width:100%;
  height:170px;
  min-height:170px;
  max-height:170px;
  overflow:hidden !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  padding:14px;
  box-sizing:border-box;
}
.logo-preview-wrap .logo-preview,
#logoPreview{
  position:static !important;
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:140px !important;
  min-width:0 !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  margin:0 auto !important;
}
.logo-preview-wrap .logo-preview.hidden,
#logoPreview.hidden{
  display:none !important;
}
@media(max-width:620px){
  .logo-preview-wrap{
    height:145px;
    min-height:145px;
    max-height:145px;
    padding:10px;
  }
  .logo-preview-wrap .logo-preview,
  #logoPreview{
    max-height:120px !important;
  }
}
