/* Formulaires du site DDS — reprend uniquement les variables de styles.css */
.f-section{padding-block:0 clamp(52px,8vw,110px);}
.f-form{max-width:760px;display:flex;flex-direction:column;gap:22px;padding:clamp(22px,3vw,36px);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);}
.f-group{font-size:var(--t-1);letter-spacing:-.015em;line-height:1.2;padding-top:10px;border-top:1px solid var(--line);}
.f-group:first-of-type{border-top:0;padding-top:0;}
.f-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;}
.f-field{display:flex;flex-direction:column;gap:7px;border:0;margin:0;padding:0;min-width:0;}
.f-field > label,.f-field > legend{font-family:"Schibsted Grotesk",sans-serif;font-weight:600;font-size:.98rem;padding:0;}
.f-field > legend{margin-bottom:7px;}
.f-req{color:var(--accent);}
.f-opt{font-weight:400;color:var(--ink-soft);font-size:var(--t--1);}
.f-hint{font-size:var(--t--1);color:var(--ink-soft);}
.f-hint a{color:var(--accent);}
.f-form input[type=text],.f-form input[type=email],.f-form input[type=tel],.f-form input[type=date],
.f-form select,.f-form textarea{
  font:inherit;font-size:1rem;color:var(--ink);background:var(--paper);width:100%;
  min-height:48px;padding:11px 14px;border:1px solid var(--line-strong);border-radius:var(--r-btn);
  transition:border-color 140ms ease-out,box-shadow 140ms ease-out;}
.f-form textarea{min-height:150px;resize:vertical;line-height:1.5;}
.f-form select{appearance:none;cursor:pointer;padding-right:42px;
  background-image:linear-gradient(45deg,transparent 50%,var(--ink-soft) 50%),linear-gradient(135deg,var(--ink-soft) 50%,transparent 50%);
  background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-size:6px 6px;background-repeat:no-repeat;}
.f-form input:hover,.f-form select:hover,.f-form textarea:hover{border-color:var(--ink-soft);}
.f-form input:focus,.f-form select:focus,.f-form textarea:focus{outline:none;border-color:var(--blue);
  box-shadow:0 0 0 3px color-mix(in oklab,var(--blue) 22%,transparent);}
.f-form input[type=file]{font:inherit;font-size:.95rem;padding:14px;border:1px dashed var(--line-strong);
  border-radius:var(--r-btn);background:var(--paper);cursor:pointer;}
.f-form input[type=file]:hover{border-color:var(--ink);}
.f-form input[type=file]::file-selector-button{font:600 .92rem "Schibsted Grotesk",sans-serif;margin-right:14px;
  min-height:40px;padding:0 16px;border:0;border-radius:var(--r-btn);background:var(--blue);color:#fff;cursor:pointer;}
.f-form [aria-invalid=true]{border-color:#B3261E !important;}
.f-err{font-size:var(--t--1);font-weight:600;color:#B3261E;}
.f-check{flex-direction:row;align-items:flex-start;gap:12px;}
.f-check input{flex:none;width:22px;height:22px;margin:2px 0 0;accent-color:var(--blue);cursor:pointer;}
.f-check label{font-weight:500;font-family:inherit;font-size:.98rem;cursor:pointer;}
.f-check .f-err{flex-basis:100%;}
.f-check{flex-wrap:wrap;}
.f-cg{display:flex;flex-direction:column;gap:14px;}
.f-cg[hidden]{display:none;}
.f-cg .note a{color:var(--accent);font-weight:600;}
.f-alert{border-radius:var(--r-card);padding:16px 18px;background:color-mix(in oklab,#B3261E 10%,var(--surface));
  color:var(--ink);border:1px solid color-mix(in oklab,#B3261E 40%,transparent);}
.f-alert strong{color:#B3261E;}
.f-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:4px;}
.f-actions .btn{min-width:220px;}
.f-actions .btn[disabled]{opacity:.65;cursor:progress;}
.f-piege{position:absolute !important;left:-10000px !important;width:1px;height:1px;overflow:hidden;}
.f-done{max-width:720px;display:flex;flex-direction:column;gap:20px;padding:clamp(24px,3.4vw,40px);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);}
.f-done h1{font-size:var(--t-3);}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .f-err,:root:not([data-theme="light"]) .f-alert strong{color:#FF8A80;}
}
:root[data-theme="dark"] .f-err,:root[data-theme="dark"] .f-alert strong{color:#FF8A80;}
