/* Composants natifs · copiables tels quels dans les vues Blade du portail */
*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:calc(var(--hdr) + 16px);-webkit-text-size-adjust:100%}body{margin:0;background:var(--papier);color:var(--encre);font:400 var(--corps)/var(--ligne-corps) var(--f-texte)}[hidden]{display:none!important}h1,h2,h3,p,ul,ol,dl,dd{margin:0}h1,h2,h3{font-family:var(--f-titre);font-weight:600;line-height:var(--ligne-titre);text-wrap:balance;letter-spacing:-.035em}h1{font-size:var(--h1)}h2{font-size:var(--h2)}h3{font-size:var(--h3)}p{text-wrap:pretty}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-underline-offset:.25em}button,a,summary,label{touch-action:manipulation}img,svg{max-width:100%}svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}:focus-visible{outline:var(--focus);outline-offset:var(--focus-offset)}.on-encre :focus-visible{outline-color:var(--papier)}.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.wrap{width:100%;max-width:var(--maxw);margin:auto;padding-inline:var(--gut)}.btn,.btn-primary,.btn-secondary{min-height:52px;padding:12px 24px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--encre);border-radius:var(--r);font:600 16px/1.25 var(--f-texte);background:var(--encre);color:var(--papier);text-decoration:none;cursor:pointer;transition:background-color var(--rapide),transform var(--rapide)}.btn:hover,.btn-primary:hover{background:var(--gris-texte)}.btn:active,.btn-primary:active{transform:translateY(1px)}.btn-secondary,.btn--line{background:transparent;color:var(--encre)}.btn-secondary:hover,.btn--line:hover{background:var(--encre-doux);color:var(--encre)}button:disabled,.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed}.on-encre{background:var(--encre);color:var(--papier)}.on-encre .btn,.on-encre .btn-primary{background:var(--papier);color:var(--encre);border-color:var(--papier)}.reassurance{font-size:var(--petit);color:var(--gris-texte);margin-top:12px}.on-encre .reassurance{color:var(--sur-encre-2)}.field{display:grid;gap:8px}.field label{font-size:14px;font-weight:600}.field input,.field select,.field textarea{width:100%;min-height:52px;border:1px solid var(--gris-2);border-radius:var(--r);padding:12px 14px;background:var(--papier-2);font-size:16px}.field textarea{min-height:100px}.field [aria-invalid=true]{border-color:var(--bordeaux)}.field-error,.err{font-size:14px;color:var(--bordeaux)}.card{border:1px solid var(--gris-2);border-radius:var(--r-card);background:var(--papier-2);padding:24px}.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid currentColor;border-radius:24px;padding:4px 10px;font-size:13px;font-weight:600}.b-nouveau{color:var(--encre);background:var(--papier-2)}.b-analyse{color:var(--laiton-texte);background:var(--papier-2)}.b-manquants{color:var(--bordeaux);background:var(--papier-2)}.b-verifier{color:var(--laiton-texte);background:var(--papier)}.b-complet{color:var(--papier);background:var(--encre)}.b-suspendue{color:var(--gris-texte);background:var(--papier)}.b-erreur{color:var(--papier);background:var(--bordeaux)}.alert{padding:16px 20px;border:1px solid var(--bordeaux);border-radius:var(--r);color:var(--bordeaux);background:var(--alerte-fond)}.alert-info,.alert-success{color:var(--encre);background:var(--papier-2);border-color:var(--gris-2)}.alert p+p{margin-top:8px}.table-wrap{overflow-x:auto;max-width:100%}.table{border-collapse:collapse;width:100%;font-size:14px}.table th,.table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--filet)}.table th{position:sticky;top:0;background:var(--papier-2)}.table tbody tr:hover{background:var(--encre-doux)}.tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--filet);gap:8px}.tabs a,.tabs button{padding:12px 18px;min-height:48px;background:none;border:0;color:var(--gris-texte);text-decoration:none}.tabs [aria-current=page],.tabs [aria-selected=true]{border-bottom:2px solid var(--encre);color:var(--encre);font-weight:600}.sidebar{padding:20px;background:var(--papier-2);border:1px solid var(--filet);display:grid;gap:8px}.sidebar a{display:flex;justify-content:space-between;gap:24px;min-height:44px;padding:8px;text-decoration:none}.sidebar [aria-current=page]{background:var(--papier);font-weight:600}.empty-state{padding:40px 24px;border:1px dashed var(--gris-2);border-radius:var(--r-card);text-align:center}.empty-state p{color:var(--gris-texte);margin:12px auto;max-width:55ch}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--gris-2);border-top-color:var(--encre);border-radius:50%;animation:spin 1s linear infinite}.notification{padding:16px 20px;border:1px solid var(--gris-2);background:var(--papier-2);box-shadow:var(--ombre);border-radius:var(--r)}.pagination{display:flex;align-items:center;gap:8px}.pagination a{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--gris-2);border-radius:var(--r);text-decoration:none}.pagination [aria-current=page]{background:var(--encre);color:var(--papier)}.dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:28px;background:var(--papier-2);color:var(--encre);border:1px solid var(--gris-2);border-radius:var(--r-card);box-shadow:var(--ombre-dialog)}.dialog::backdrop{background:color-mix(in srgb,var(--encre) 45%,transparent)}.dialog p{margin-block:16px}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px}.checkbox{display:flex;align-items:flex-start;gap:12px;min-height:44px}.checkbox input{width:22px;height:22px;accent-color:var(--encre)}.skeleton{height:18px;max-width:400px;border-radius:4px;background:var(--encre-doux)}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
