/*
  Rafa SI — feuille de style commune · version 2 du 28 octobre 2026
  Source : le styleguide de Rafa, https://www.rafa-hr.tech/styleguide (design-system/ du dépôt Rafa
  et le tableau de bord v29). Rafa SI en est la surface de travail : le « cousin discret » de la marque,
  crème et charcoal, lime en accent, carré arrondi pour ce qu’on clique, pilule pour ce qui informe.
  Documentation vivante : https://si.rafa-rh.fr/styleguide/
  Usage : <link rel="stylesheet" href="/styleguide/rafa-si.css"> puis classes .si-*
*/

@font-face{font-family:"Plus Jakarta Sans";src:url(assets/PlusJakartaSans-Variable.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(assets/PlusJakartaSans-Italic-Variable.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/Manrope-Variable.woff2) format("woff2");font-weight:200 800;font-display:swap}
/* Noms historiques de Rafa SI, gardés pour l’application : Jakarta suit la graisse demandée, JakartaBold est toujours gras. */
@font-face{font-family:Jakarta;src:url(assets/PlusJakartaSans-Variable.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:JakartaBold;src:url(assets/PlusJakartaSans-Bold.ttf) format("truetype");font-weight:100 900;font-display:swap}
/* Rafa Hand : l’accent manuscrit de la marque, trois images pour la ligne qui « bout ». */
@font-face{font-family:"Rafa Hand";src:url(assets/RafaHand-Regular.otf) format("opentype");font-display:swap}
@font-face{font-family:"Rafa Hand B";src:url(assets/RafaHand-Boil2.otf) format("opentype");font-display:swap}
@font-face{font-family:"Rafa Hand C";src:url(assets/RafaHand-Boil3.otf) format("opentype");font-display:swap}

:root{
  color-scheme:light;
  /* Marque Rafa */
  --rafa-lime:#e6ff72;        /* l’accent : surlignage, action principale ; jamais en grand aplat */
  --rafa-cornflower:#8ca8ff;  /* le bleu : fonds de section, illustrations, cercles des portraits */
  --rafa-charcoal:#323232;    /* trait et texte ; jamais de noir pur */
  --rafa-dusty-rose:#e9c5c5;  /* peau des personnages seulement */
  --rafa-bone:#fffaf5;        /* crème : le fond éditorial */
  --rafa-dark-brown:#2b1c18;  /* la surface sombre, toujours en dégradé avec du grain */
  /* Échelle neutre chaude */
  --rafa-n50:#f6efe6;--rafa-n100:#ece1d3;--rafa-n200:#d9caba;--rafa-n300:#b8a692;--rafa-n400:#8c7865;
  --rafa-n500:#5e4a3c;--rafa-n600:#3e2c23;--rafa-n700:#2b1c18;--rafa-n800:#1a0f0c;
  /* Surfaces */
  --si-paper:#fffaf5;      /* crème : la feuille, toujours sous le texte */
  --si-surround:#f6efe6;   /* le fond autour de la feuille */
  --si-white:#fffaf5;      /* cartes : crème bordée, comme le tableau de bord Rafa (nom historique) */
  --si-line:#d9caba;       /* bordures et séparateurs */
  --si-dark:#2b1c18;       /* surface sombre */
  --si-dark-gradient:linear-gradient(135deg,#090301 0%,#130502 25%,#1f0a05 50%,#301a0b 75%,#5a3521 100%);
  /* Texte */
  --si-ink:#323232;        /* charcoal : titres et texte */
  --si-muted:#4a3a2f;      /* texte secondaire, surtitres en capitales */
  --si-soft:#6b5848;       /* texte tertiaire : notes, dates, aides */
  --si-on-dark:#c6b7a6;    /* texte secondaire sur surface sombre */
  /* Accents */
  --si-lime:#e6ff72;       /* surlignage, action principale, point d’arrivée */
  --si-lime-edge:#323232;  /* bord d’un élément lime */
  --si-blue:#8ca8ff;       /* progression, repères actifs */
  --si-blue-page:#8ca8ff;  /* feuille d’ouverture de chapitre, cercles des portraits */
  --si-blue-ink:#323232;   /* texte sur bleu pâle */
  --si-blue-wash:#dfe7ff;  /* pastilles, icônes, citations */
  --si-focus:#3e2c23;      /* contour de focus */
  --si-intervention:#ff7300; /* Rafix : intervention demandée par l’équipe */
  --si-intervention-wash:#fff0e5;
  /* Statuts */
  --si-ok-bg:#e3eed8;--si-ok-ink:#3c6342;--si-ok-dot:#4c7a52;
  --si-todo-bg:#f6efe6;--si-todo-ink:#5e4a3c;
  --si-dec-bg:#f6e5c9;--si-dec-ink:#8a5a1e;--si-dec-dot:#b4762a;
  --si-bad-bg:#f3d9d2;--si-bad-ink:#a6432f;
  /* Formes */
  --si-r-sheet:6px;--si-r-ctl:10px;--si-r-card:16px;--si-r-panel:24px;--si-r-pill:999px;
  --si-shadow:0 1px 2px #2b1c180f,0 24px 48px -30px #2b1c1866;
  --si-shadow-open:0 12px 32px #3232321f;
  --si-shadow-sticker:3px 3px 0 #323232;
  /* Typo */
  --si-display:JakartaBold,"Plus Jakarta Sans",sans-serif;
  --si-label:Jakarta,"Plus Jakarta Sans",sans-serif;
  --si-body:Manrope,system-ui,sans-serif;
  --si-hand:"Rafa Hand",JakartaBold,sans-serif;
  --si-grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='128' height='128'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");
}

/* Base */
.si-body{margin:0;color:var(--si-ink);font:15px/1.55 var(--si-body);-webkit-font-smoothing:antialiased;background:var(--si-surround)}
.si-body *,.si-body *::before,.si-body *::after{box-sizing:border-box}
.si-body h1,.si-body h2,.si-body h3,.si-body h4{font-family:var(--si-display);font-weight:normal;margin:0;letter-spacing:-.02em}
.si-body p{margin:0}
.si-body :focus-visible{outline:2px solid var(--si-focus);outline-offset:2px;border-radius:6px}

/* Typographie */
.si-over{display:block;font:600 12px/1.3 var(--si-label);letter-spacing:.12em;text-transform:uppercase;color:var(--si-muted)}
.si-display{font:clamp(36px,5vw,64px)/1.1 var(--si-display);letter-spacing:-.02em}
.si-h2{font:clamp(28px,3.4vw,48px)/1.15 var(--si-display);letter-spacing:-.015em}
.si-h3{font:20px/1.3 var(--si-display);letter-spacing:-.01em}
.si-display:has(.si-hl),.si-h2:has(.si-hl),.si-h3:has(.si-hl){line-height:1.25}
.si-lead{font-size:18px;line-height:1.6;color:var(--si-muted);max-width:660px}
.si-note{font-size:12px;line-height:1.4;font-weight:500;color:var(--si-soft)}
/* Le seul geste d’emphase : une bande lime derrière le mot, une fois par feuille. Le mot reste charcoal, même sur fond sombre. */
.si-hl{color:var(--si-ink);background-image:linear-gradient(to bottom,transparent 6%,var(--si-lime) 6%,var(--si-lime) 99%,transparent 99%);background-repeat:no-repeat;padding:0 .25em;border-radius:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* Rafa Hand : un mot ou une phrase courte, jamais un titre courant, un bouton ou un chiffre. */
.si-hand{font-family:var(--si-hand);font-weight:400;letter-spacing:0;line-height:1.1}
@keyframes si-boil{0%{font-family:"Rafa Hand"}33.33%{font-family:"Rafa Hand B"}66.66%{font-family:"Rafa Hand C"}}
.si-boil{font-family:"Rafa Hand",var(--si-hand);font-weight:400;letter-spacing:0;line-height:1.1;animation:si-boil .3s steps(1) infinite}

/* Feuille */
.si-paper{position:relative;background:var(--si-paper);border-radius:var(--si-r-sheet);box-shadow:var(--si-shadow);padding:44px 48px 40px;overflow:hidden}
.si-paper--blue{background:var(--si-blue-page)}
.si-paper--blue .si-over,.si-paper--blue .si-lead,.si-paper--blue .si-note{color:var(--si-ink)}
.si-logo{position:absolute;top:30px;right:44px;width:84px}
.si-paper>.si-over{padding-right:100px}

/* Surface sombre : le dégradé chaud et son grain, jamais un aplat noir. */
.si-dark,.si-paper--dark{position:relative;isolation:isolate;background:var(--si-dark-gradient);color:var(--si-paper)}
.si-dark::after,.si-paper--dark::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background-image:var(--si-grain);background-size:128px 128px;opacity:.15;mix-blend-mode:overlay;pointer-events:none}
:is(.si-dark,.si-paper--dark) :is(.si-over,.si-lead,.si-note){color:var(--si-on-dark)}
:is(.si-dark,.si-paper--dark) :is(h1,h2,h3,h4,.si-display,.si-h2,.si-h3){color:var(--si-paper)}
/* Le partenaire ou le client, en relief : surface sombre surélevée, liseré lime en bas. */
.si-partner{border-radius:var(--si-r-panel);padding:28px 30px;border-bottom:6px solid var(--si-lime);box-shadow:0 22px 44px -22px #2b1c18a6}
/* Verre : seulement sur une surface sombre. */
.si-glass{background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff14;border-radius:var(--si-r-card);padding:16px 18px}
/* Carte autocollant : bord charcoal de 3 px et ombre dure, pour un chiffre ou une preuve à mettre en avant. */
.si-sticker{border:3px solid var(--si-ink);border-radius:var(--si-r-card);box-shadow:var(--si-shadow-sticker)}

/* Barre d’en-tête */
.si-top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--si-paper) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--si-line)}
.si-top-in{display:flex;align-items:center;gap:22px;height:68px;padding:0 26px;max-width:1360px;margin:0 auto}
.si-brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:inherit;flex-shrink:0}
.si-brand-mark{width:37px;height:37px;border-radius:50%;background:var(--si-lime);display:grid;place-items:center}
.si-brand-mark svg{width:25px;height:25px}
.si-brand-name{display:block;font:20px/1 var(--si-display);letter-spacing:-.8px}
.si-brand-note{display:block;font:600 9.5px var(--si-label);letter-spacing:.12em;color:var(--si-muted);margin-top:4px}
.si-chapter{display:flex;align-items:center;gap:12px;border-left:1px solid var(--si-line);padding-left:22px;min-width:0;flex:1}
.si-chapter-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--si-blue-wash);color:var(--si-ink);font:600 10px var(--si-label);flex-shrink:0}
.si-chapter-name{display:block;font:16px var(--si-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.si-rail{display:flex;gap:3px;height:5px}
.si-rail>*{flex:1;position:relative;background:var(--rafa-n100);display:block}
.si-rail>* i{position:absolute;inset:0;background:var(--si-blue);transform-origin:left;transform:scaleX(var(--p,0));transition:transform .6s ease}

/* Boutons : la touche de machine à écrire, en sobre. Carré arrondi de 10 px, petite tige dessous ;
   le survol la soulève sans changer sa couleur, le clic l’enfonce. */
.si-btn{--shaft:var(--si-line);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;font:600 13px/1 var(--si-label);color:var(--si-ink);text-decoration:none;background:var(--si-paper);border:1px solid var(--si-line);border-radius:var(--si-r-ctl);padding:10px 16px;cursor:pointer;white-space:nowrap;box-shadow:0 3px 0 0 var(--shaft);transition:transform 70ms ease,box-shadow 70ms ease}
.si-btn:hover{transform:translateY(-1px);box-shadow:0 4px 0 0 var(--shaft)}
.si-btn:active{transform:translateY(3px);box-shadow:0 0 0 0 var(--shaft);transition-duration:35ms}
.si-btn svg{width:16px;height:16px;flex-shrink:0}
.si-btn--lime{--shaft:var(--si-dark);background:var(--si-lime);border-color:var(--si-lime);color:#1a0f0c}
.si-btn--dark{--shaft:#1a0f0c;background:var(--si-dark);border-color:var(--si-dark);color:var(--si-paper)}
.si-btn--round{width:44px;height:44px;min-height:44px;padding:0}
.si-btn:disabled,.si-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed;transform:none;box-shadow:0 3px 0 0 var(--shaft)}
/* La pastille informe (pilule) ; le filtre se clique (carré arrondi) et passe en charcoal une fois choisi. */
.si-pill{display:inline-flex;align-items:center;gap:6px;font:600 11.5px/1.2 var(--si-label);border-radius:var(--si-r-pill);padding:5px 11px;color:var(--si-ink);background:var(--si-blue-wash);white-space:nowrap}
.si-chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;border:1px solid var(--si-line);background:var(--si-paper);border-radius:var(--si-r-ctl);padding:6px 12px;font:600 12.5px var(--si-label);color:var(--si-ink);cursor:pointer}
.si-chip:hover{border-color:var(--si-ink)}
.si-chip[aria-pressed=true]{background:var(--si-ink);color:var(--si-paper);border-color:var(--si-ink)}

/* Statuts : toujours une pilule avec son point */
.si-st{--dot:currentColor;display:inline-flex;align-items:center;gap:6px;font:600 12px/1.2 var(--si-label);border-radius:var(--si-r-pill);padding:4px 10px;white-space:nowrap}
.si-st::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--dot);flex-shrink:0}
.si-st--ok{background:var(--si-ok-bg);color:var(--si-ok-ink);--dot:var(--si-ok-dot)}
.si-st--partial{background:var(--si-blue-wash);color:var(--si-ink);--dot:var(--si-blue)}
.si-st--active{background:var(--si-lime);color:var(--si-ink)}
.si-st--todo{background:var(--si-todo-bg);color:var(--si-todo-ink)}
.si-st--decision{background:var(--si-dec-bg);color:var(--si-dec-ink);--dot:var(--si-dec-dot)}
.si-st--blocked{background:var(--si-bad-bg);color:var(--si-bad-ink)}

/* Blocs */
.si-callout{display:flex;align-items:center;gap:16px;background:var(--si-lime);border:1.5px solid var(--si-ink);border-radius:var(--si-r-card);box-shadow:var(--si-shadow-sticker);padding:18px 22px;font:18px var(--si-display);color:var(--si-ink);text-decoration:none}
.si-callout svg{width:22px;height:22px;flex-shrink:0}
.si-card{background:var(--si-white);border:1.5px solid var(--si-line);border-radius:var(--si-r-card);padding:16px 18px}
.si-panel{background:var(--si-white);border:1.5px solid var(--si-line);border-radius:var(--si-r-panel);padding:20px 22px}
.si-kpi{background:var(--si-white);border:1.5px solid var(--si-line);border-radius:var(--si-r-card);padding:16px 16px 14px}
.si-kpi b{display:block;font:30px/1 var(--si-display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.si-kpi span{display:block;font-size:12px;color:var(--si-muted);margin-top:8px;line-height:1.35}
.si-kpi--lime{background:var(--si-lime);border-color:var(--si-ink)}
.si-kpi--lime span{color:var(--si-ink)}
.si-quote{background:var(--si-blue-wash);border-radius:var(--si-r-card);padding:16px 18px}
.si-quote .si-over{color:var(--si-ink)}
.si-quote q{display:block;font:15px/1.4 var(--si-display);margin-top:8px;quotes:"« " " »"}
.si-demo{background:var(--si-lime);border:1.5px solid var(--si-ink);border-radius:var(--si-r-card);padding:16px 18px}
.si-demo .si-over{color:var(--si-ink)}
.si-demo p{font-size:13.5px;margin-top:8px;line-height:1.45}
.si-insight{border-left:4px solid var(--si-lime);padding-left:15px}
.si-insight .si-over{color:var(--si-muted)}
.si-insight p{font-size:15px;margin-top:4px}

/* Personnes */
.si-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--si-blue-page)}
.si-portrait{width:96px;height:96px;border-radius:50%;object-fit:cover;background:var(--si-blue-page);border:3px solid var(--si-paper);box-shadow:0 6px 18px #2b1c1824}
.si-member{display:inline-flex;align-items:center;gap:10px;background:var(--si-white);border:1.5px solid var(--si-line);border-radius:var(--si-r-pill);padding:5px 16px 5px 5px}
.si-member b{display:block;font:14px var(--si-display)}
.si-member span{display:block;font-size:11.5px;color:var(--si-muted)}
.si-faces{display:inline-flex}
.si-faces img{width:26px;height:26px;border-radius:50%;object-fit:cover;background:var(--si-blue-page);border:2px solid var(--si-paper);margin-left:-7px}
.si-faces img:first-child{margin-left:0}

/* Icônes : trait de 1,5 px, bouts arrondis, couleur du texte, dans un cercle bleu pâle ; lime derrière pour l’arrivée. */
.si-icon{width:34px;height:34px;border-radius:50%;background:var(--si-blue-wash);display:inline-grid;place-items:center;flex-shrink:0}
.si-icon svg{width:17px;height:17px;stroke:var(--si-ink);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.si-icon--lime{background:var(--si-lime)}

/* Parcours en étapes : des cercles reliés par un trait plein, la dernière étape en lime. */
.si-steps{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));counter-reset:si-s}
.si-step{position:relative;text-align:center;padding:0 10px}
.si-step::after{content:"";position:absolute;top:33px;left:calc(50% + 40px);right:calc(-50% + 40px);height:2px;border-radius:2px;background:var(--si-blue)}
.si-step:last-child::after{display:none}
.si-step-c{width:68px;height:68px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:var(--si-blue-wash);position:relative}
.si-step:last-child .si-step-c{background:var(--si-lime)}
.si-step-c svg{width:28px;height:28px;stroke:var(--si-ink);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.si-step-c::after{counter-increment:si-s;content:"0" counter(si-s);position:absolute;top:-4px;right:-8px;font:10px var(--si-display);background:var(--si-paper);border:1px solid var(--si-line);border-radius:var(--si-r-pill);padding:3px 6px}
.si-step h3{font-size:17px;margin-top:14px}
.si-step p{font-size:12.5px;color:var(--si-muted);margin-top:6px;line-height:1.45}

/* Barre de progression */
.si-bar{height:8px;border-radius:8px;background:var(--rafa-n100);overflow:hidden;display:flex}
.si-bar i{display:block;height:100%;background:var(--si-blue)}
.si-bar i.ok{background:var(--si-ok-dot)}
.si-bar i.lime{background:var(--si-lime)}

/* Pied « Le sens de cette page » */
.si-foot{position:sticky;bottom:0;z-index:10;background:var(--si-paper);border-top:1px solid var(--si-line)}
.si-foot-in{max-width:1360px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,300px) auto;gap:26px;align-items:center;padding:12px 26px}
.si-foot-next{border-left:1px solid var(--si-line);padding-left:20px}
.si-foot-next p{font-size:12.5px;color:var(--si-muted);margin-top:4px}

/* Apparition */
.si-reveal{opacity:0;transform:translateY(14px);transition:opacity .4s ease,transform .4s ease}
.si-reveal.in{opacity:1;transform:none}

@media (max-width:760px){
  .si-top-in{padding:0 16px;height:60px;gap:12px}
  .si-brand-note,.si-chapter{display:none}
  .si-paper{padding:28px 18px 26px}
  .si-logo{width:56px;top:20px;right:18px}
  .si-paper>.si-over{padding-right:64px}
  .si-partner{padding:22px 18px}
  .si-steps{grid-template-columns:1fr;gap:18px}
  .si-step{display:grid;grid-template-columns:68px 1fr;gap:4px 16px;text-align:left;padding:0}
  .si-step-c{grid-row:span 2;margin:0}
  .si-step::after{display:none}
  .si-foot-in{grid-template-columns:minmax(0,1fr) auto;padding:10px 16px;gap:12px}
  .si-foot-next{display:none}
}
@media (prefers-reduced-motion:reduce){
  .si-body *,.si-body *::before,.si-body *::after{transition:none!important;animation:none!important}
  .si-boil{animation:none}
  .si-reveal{opacity:1;transform:none}
}

/* Rafix · intervention. Shared by the app and the reference pages. */
.si-rafix-avatar{display:inline-flex;position:relative;flex-shrink:0;border-radius:50%;background:var(--si-intervention);vertical-align:middle}
.si-rafix-avatar>svg{width:100%;height:100%;border-radius:50%}
.si-rafix-badge{position:absolute;right:-2px;bottom:-2px;background:var(--si-intervention);border:2px solid var(--si-paper);width:38%;height:38%;min-width:12px;min-height:12px;border-radius:50%;display:grid;place-items:center;color:var(--si-ink);font:bold 12px/1 Manrope,sans-serif}
/* « Signaler » (26/10/2026): a compact pill in the header of conversations, workshops and
   sections, next to Journal and the model. It fills with orange when an error is shown. */
.si-rafix-pill{display:inline-flex;align-items:center;gap:7px;flex:none;height:32px;padding:0 13px 0 4px;border:1px solid var(--si-intervention);border-radius:30px;background:var(--si-paper);color:var(--si-ink);font:600 11.5px Jakarta,sans-serif;white-space:nowrap;cursor:pointer}
.si-rafix-pill[hidden]{display:none!important}
.si-rafix-pill .si-rafix-avatar{box-shadow:0 0 0 1.5px var(--si-paper)}
.si-rafix-pill:hover{background:var(--si-intervention-wash)}
.si-rafix-pill.has-error,.si-rafix-pill.has-error:hover{background:var(--si-intervention)}
.si-rafix-pill:focus-visible{outline:2px solid var(--si-focus);outline-offset:3px}
@media(prefers-reduced-motion:no-preference){.si-rafix-pill{transition:background .15s}}
.si-rafix-dialog{width:min(740px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:hidden;display:flex;flex-direction:column;background:var(--si-paper);border-top:5px solid var(--si-intervention);color:var(--si-ink);padding:26px}
.si-rafix-heading,.si-rafix-dialog>p{flex-shrink:0}
.si-rafix-form{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.si-rafix-fields{min-height:0;overflow:auto;padding:3px;scrollbar-width:thin}
.si-rafix-form>.form-actions{flex-shrink:0;border-top:1px solid var(--si-line);padding-top:12px}
.si-rafix-heading{display:flex;gap:16px;align-items:center;margin-bottom:16px}
.si-rafix-heading>div{flex:1;min-width:0}
.si-rafix-heading .si-over{font-size:10px;letter-spacing:1.6px;margin-bottom:8px;color:var(--si-muted)}
.si-rafix-heading .si-h3{font:24px/1.2 JakartaBold,sans-serif;margin:0}
.si-rafix-dialog>p{font:13px/1.5 Manrope,sans-serif;color:var(--si-muted);margin:0 0 18px}
.si-rafix-dialog label{display:grid;gap:8px;font:13px Jakarta,sans-serif}
.si-rafix-dialog textarea{width:100%;resize:vertical;min-height:94px;max-height:240px;box-sizing:border-box;font:14px/1.5 Manrope,sans-serif;background:var(--si-white);color:var(--si-ink);border:1px solid var(--si-line);border-radius:12px;padding:12px}
.si-rafix-evidence{display:grid;gap:12px;margin:16px 0}
.si-rafix-evidence>section,.si-rafix-evidence>details{border:1px solid var(--si-line);background:var(--si-white);border-radius:16px;padding:14px;min-width:0}
.si-rafix-evidence-title,.si-rafix-evidence-title>span{display:flex;align-items:center;gap:8px;justify-content:space-between;font:12px Jakarta,sans-serif}
.si-rafix-evidence svg,.si-rafix-files button svg{width:16px;height:16px;flex-shrink:0}
.si-rafix-evidence-title{margin-bottom:12px}
.si-rafix-evidence img,.si-rafix-files img{display:block;max-width:100%;max-height:280px;object-fit:contain;margin:8px auto;border-radius:8px;border:1px solid var(--si-line)}
.si-rafix-preview{display:block;width:100%;border:0;padding:0;background:transparent;cursor:zoom-in;color:var(--si-muted);font:11px Manrope,sans-serif}
.si-rafix-preview.is-expanded{cursor:zoom-out}.si-rafix-preview.is-expanded img{width:100%;max-height:none}
.si-rafix-evidence small{display:block;margin-top:10px;color:var(--si-muted);font:11px/1.5 Manrope,sans-serif}
.si-rafix-evidence summary{display:flex;align-items:center;gap:8px;cursor:pointer;font:12px Jakarta,sans-serif;min-height:44px}
.si-rafix-evidence summary span{margin-left:auto;color:var(--si-muted);font:11px Manrope,sans-serif}
.si-rafix-evidence pre{max-height:180px;overflow:auto;font:11px/1.5 monospace;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--si-paper);padding:12px;border-radius:10px}
.si-rafix-primary{background:var(--si-intervention)!important;color:var(--si-ink)!important;border-color:var(--si-intervention)!important}
.si-rafix-dialog .si-note{font:11px/1.5 Manrope,sans-serif;color:var(--si-muted);margin:12px 0}
.si-rafix-dialog .form-actions{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}
.si-rafix-dialog .si-btn:disabled{opacity:.5;cursor:wait}
.si-rafix-dialog .si-btn{min-height:44px}
.si-rafix-dialog .icon{min-width:44px;min-height:44px}
.si-rafix-dialog :focus-visible{outline:2px solid var(--si-focus);outline-offset:3px}
.si-rafix-success{background:var(--si-intervention-wash);border-radius:16px;padding:24px;text-align:center;font:14px/1.5 Manrope,sans-serif}
.si-rafix-success>svg{color:var(--si-ink);width:32px;height:32px}
.si-rafix-success .si-btn{margin-top:16px}
.si-rafix-files{border:1px solid var(--si-line);border-left:3px solid var(--si-intervention);background:var(--si-paper);border-radius:12px;padding:12px;margin-top:12px;color:var(--si-ink)}
.si-rafix-files>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.si-rafix-files .si-btn{font-size:11px;min-height:40px}
.si-rafix-files img{display:block;max-width:100%;height:auto;border-radius:10px;margin-top:12px}
/* Signalements: platform module, section activation and shared incident list. */
.si-rafix-settings-link{display:flex;align-items:center;flex-shrink:0;gap:16px;text-decoration:none;color:var(--si-ink);margin:20px 0;min-height:88px}
.si-rafix-settings-link>span:not(.si-rafix-avatar){flex:1;display:grid;gap:6px}.si-rafix-settings-link strong{font:700 17px Jakarta,sans-serif}.si-rafix-settings-link small{font:13px/1.5 Manrope,sans-serif}
.si-rafix-page .connections-main{max-width:1400px}.si-rafix-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--si-ink);font:12px Manrope,sans-serif;text-decoration:none}
.si-rafix-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0 24px}.si-rafix-page-heading>div{min-width:0}.si-rafix-page-heading .si-h2{margin:8px 0 14px}.si-rafix-page-heading p:not(.si-over){font:14px/1.6 Manrope,sans-serif;margin:0}
.si-rafix-page .si-card{min-width:0}.si-rafix-page .si-btn{min-height:44px}.si-rafix-page :focus-visible,.si-rafix-settings-link:focus-visible{outline:2px solid var(--si-focus);outline-offset:3px}
.si-rafix-module{margin-bottom:20px}.si-rafix-module>summary{display:flex;align-items:center;gap:14px;cursor:pointer;min-height:44px;list-style:none}.si-rafix-module>summary::-webkit-details-marker{display:none}.si-rafix-module>summary>span:first-of-type{flex:1;display:grid;gap:5px}.si-rafix-module>summary strong{font:700 15px Jakarta,sans-serif}.si-rafix-module>summary small{font:12px/1.5 Manrope,sans-serif}.si-rafix-module>summary>svg{width:24px;height:24px;flex:none}
.si-rafix-module form{margin-top:20px;padding-top:16px;border-top:1px solid var(--si-line)}.si-rafix-module fieldset{border:0;margin:16px 0;padding:0;min-width:0}.si-rafix-module legend{font:700 13px/1.5 Manrope,sans-serif;margin-bottom:10px}.si-rafix-module fieldset:disabled{opacity:.65}
.si-rafix-page .si-rafix-module form{display:block}.si-rafix-page .si-rafix-check{display:flex;flex-direction:row;margin:0;text-align:left}
.si-rafix-check{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 12px;border:1px solid var(--si-line);border-radius:12px;font:13px/1.5 Manrope,sans-serif;cursor:pointer}.si-rafix-check input{width:20px;height:20px;flex:none;accent-color:var(--si-ink);margin:0}.si-rafix-check>span{display:grid;gap:3px}.si-rafix-check small{font-size:12px}.si-rafix-section-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.si-rafix-module-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}.si-rafix-module-actions>span{display:flex;align-items:center;gap:6px;font:12px Manrope,sans-serif}
.si-rafix-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.si-rafix-counts>div{display:flex;align-items:baseline;gap:10px;background:var(--si-white);border:1px solid var(--si-line);border-radius:16px;padding:16px 20px}.si-rafix-counts strong{font:700 30px/1.1 Jakarta,sans-serif}.si-rafix-counts span{font:12px/1.5 Manrope,sans-serif}
.si-rafix-board{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:start}.si-rafix-inbox-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.si-rafix-inbox-heading .si-h3{margin:0}.si-rafix-inbox-heading small{font:13px Manrope,sans-serif}
.si-rafix-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.6fr);gap:12px;margin:0 0 16px}.si-rafix-filters label,.si-rafix-workflow{display:grid;gap:7px;font:700 12px/1.5 Manrope,sans-serif}.si-rafix-search{display:flex;align-items:center;border:1px solid var(--si-line);border-radius:12px;gap:8px;padding:0 10px;background:var(--si-white)}.si-rafix-search svg{width:16px;height:16px;flex:none}.si-rafix-search input{width:100%;min-width:0;border:0;background:transparent;min-height:44px;font:13px Manrope,sans-serif;color:var(--si-ink);outline-offset:0}.si-rafix-page select{font:13px Manrope,sans-serif;color:var(--si-ink);background:var(--si-white);border:1px solid var(--si-line);border-radius:12px;min-height:44px;padding:0 10px;width:100%}
.si-rafix-report-list{list-style:none;margin:0;padding:0;max-height:min(58dvh,640px);overflow:auto}.si-rafix-report-list li+li{margin-top:10px}.si-rafix-report-list button{width:100%;text-align:left;border:1px solid var(--si-line);border-radius:14px;background:var(--si-white);padding:16px;color:var(--si-ink);display:grid;gap:10px;cursor:pointer}.si-rafix-report-list button[aria-pressed=true]{background:var(--si-blue-wash);border-color:var(--si-blue)}.si-rafix-report-list strong{font:700 14px/1.6 Manrope,sans-serif;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap}.si-rafix-report-list small{font:11px/1.5 Manrope,sans-serif;overflow-wrap:anywhere}.si-rafix-row-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;font:11px/1.5 Manrope,sans-serif}.si-rafix-row-foot svg{width:16px;height:16px}
.si-rafix-status{justify-self:start;display:inline-flex;align-items:center;padding:5px 10px;border-radius:30px;font:700 11px Manrope,sans-serif;background:var(--si-paper);color:var(--si-ink)}.si-rafix-status.is-open{background:var(--si-intervention-wash)}.si-rafix-status.is-in_progress{background:var(--si-blue-wash)}.si-rafix-status.is-resolved{background:var(--si-lime)}
.si-rafix-description{font:14px/1.7 Manrope,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.si-rafix-workflow{margin:20px 0}.si-rafix-analysis-heading{display:flex;align-items:center;gap:10px;margin:24px 0 12px;font:700 13px Jakarta,sans-serif}.si-rafix-analysis{font:13px/1.75 Manrope,sans-serif;overflow-wrap:anywhere;min-width:0}.si-rafix-analysis pre{white-space:pre-wrap;overflow-wrap:anywhere}.si-rafix-page .si-note{color:var(--si-ink)}
.si-rafix-empty,.si-rafix-select-hint{padding:44px 20px;text-align:center;font:13px/1.7 Manrope,sans-serif}.si-rafix-empty>svg{width:38px;height:38px;color:var(--si-blue-ink)}.si-rafix-empty h3{font:700 16px/1.5 Jakarta,sans-serif}.si-rafix-select-hint{display:grid;justify-items:center;gap:16px;min-height:240px}.si-rafix-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px;font:11px Manrope,sans-serif}.si-rafix-source-note{margin:20px 0}.si-rafix-page .si-insight{margin:24px 0 0}
@media(max-width:850px){.si-rafix-page-heading .si-h2{font-size:28px}.si-rafix-page-heading>.si-rafix-avatar{width:56px;height:56px}.si-rafix-page-heading{gap:12px}.si-rafix-board{grid-template-columns:minmax(0,1fr)}.si-rafix-counts>div{padding:14px 12px;display:grid;gap:6px}.si-rafix-counts strong{font-size:26px}.si-rafix-counts{gap:8px}.si-rafix-module>summary{flex-wrap:wrap}.si-rafix-module>summary>.si-st{margin-left:38px}.si-rafix-filters{grid-template-columns:minmax(0,1fr)}.si-rafix-select-hint{display:none}.si-rafix-settings-link{align-items:flex-start;gap:12px}.si-rafix-settings-link strong{font-size:16px}.si-rafix-section-options{grid-template-columns:minmax(0,1fr)}.si-rafix-page .si-card{padding:18px}}
@media print{body:has(.si-rafix-page),#root:has(.si-rafix-page){height:auto!important;overflow:visible!important}.si-rafix-page{display:block!important;height:auto!important;overflow:visible!important}.si-rafix-page .studio-sidebar,.si-rafix-page .studio-topbar,.si-rafix-page .si-rafix-back{display:none!important}.si-rafix-page .connections-main{margin:0!important;padding:20px!important;width:auto!important;max-width:none!important;height:auto!important;overflow:visible!important}.si-rafix-page .si-rafix-board{display:block}.si-rafix-page .si-rafix-report-list{max-height:none;overflow:visible}.si-rafix-report-list li,.si-rafix-counts{break-inside:avoid}.si-rafix-detail{margin-top:20px}.si-rafix-module{break-inside:avoid}.si-rafix-page .si-insight{break-inside:avoid}}
@media(max-width:600px){
 .si-rafix-dialog{padding:18px;max-height:calc(100dvh - 20px);width:calc(100vw - 20px)}
 .si-rafix-heading{gap:12px}.si-rafix-heading .si-h3{font-size:20px}
 .si-rafix-pill{height:44px}.si-rafix-files .si-btn{min-height:44px}
 .si-rafix-evidence summary span{font-size:10px}.si-rafix-dialog .form-actions{flex-wrap:wrap}
 .si-rafix-evidence img{max-height:190px}
}
