/* Thème standard orb-core : le profil peut surcharger ces styles. */
@font-face { font-family:'Inter'; font-style:normal; font-weight:100 900; font-display:swap; src:url("https://media.aurisformac.com/static/2c295d99e26d/orb/fonts/inter-variable.woff2") format('woff2'); }
:root, .orb-public {
  --orb-color-primary: #24262b; --orb-color-primary-rgb: 36,38,43;
  --orb-color-primary-hover: #41454d; --orb-color-on-primary: #fff;
  --ins-primary: #24262b; --ins-primary-rgb: 36,38,43;
  --ins-secondary: #41454d; --ins-secondary-rgb: 65,69,77;
}
/* Jetons du socle pour l'espace public, retenus le 26 septembre 2026 (design/modules/foundations/README.md).
   Les pages de compte gardent le thème Orbenix v0.0.1 ; les règles hors espace public gardent leurs valeurs de repli. */
.orb-public {
  --orb-page:#fcfcfd; --orb-surface:#fff; --orb-soft:#f4f5f8;
  --orb-ink:#0f1011; --orb-text:#3c4149; --orb-muted:#6b6f76; --orb-line:#e6e6ea;
  --orb-control-border:#8a8f98; --orb-focus:#3c4149;
  --orb-action:#0f1011; --orb-action-hover:#2b2e33; --orb-on-action:#fff;
  /* Couleurs de message de Linear (barres, contours, pastilles) ; variantes foncées pour le texte sur fond clair (4,5:1). */
  --orb-success:#27a644; --orb-warning:#f0bf00; --orb-danger:#eb5757; --orb-info:#4ea7fc;
  --orb-success-text:#1f7a35; --orb-warning-text:#8a5a00; --orb-danger-text:#c53030; --orb-info-text:#1d6ab8;
  --orb-font:'Inter','SF Pro Display',-apple-system,system-ui,sans-serif;
  --orb-weight-title:510; --orb-weight-strong:510;
  --orb-tracking-title:-.022em; --orb-tracking-body:-.011em;
  /* Espacements (pas de 4 px), largeurs et points de rupture : 375, 768, 1024, 1440 px (valeurs des requêtes média). */
  --orb-space-1:4px; --orb-space-2:8px; --orb-space-3:12px; --orb-space-4:16px; --orb-space-5:24px; --orb-space-6:32px; --orb-space-7:48px; --orb-space-8:64px; --orb-space-9:96px;
  --orb-container:1160px; --orb-measure:65ch; --orb-gutter:clamp(16px, 4vw, 32px);
  /* Icônes Tabler (components/icon.html) : 16, 20, 24 px, trait 1,6. */
  --orb-icon-sm:16px; --orb-icon-md:20px; --orb-icon-lg:24px;
  /* Élévations et superpositions. */
  --orb-shadow-1:0 1px 2px #0000000f; --orb-shadow-2:0 4px 24px #0000001f; --orb-shadow-3:0 12px 48px #0000002e;
  --orb-z-base:0; --orb-z-sticky:20; --orb-z-dropdown:30; --orb-z-overlay:40; --orb-z-modal:50; --orb-z-toast:60;
  --orb-scrim:#08090a99;
  /* Mouvements : l'arrivée décélère, la sortie est plus courte ; tout s'annule si le visiteur réduit les animations. */
  --orb-duration-fast:120ms; --orb-duration-base:200ms; --orb-duration-slow:320ms;
  --orb-ease-out:cubic-bezier(.2,.8,.2,1); --orb-ease-in:cubic-bezier(.4,0,1,1);
  /* Fonds techniques : lignes pointillées de repère et grille de points. */
  --orb-guide:#d8dae0; --orb-dot:#dcdee4;
  --orb-radius:2px; --orb-alert-bar:2px; --orb-error-size:.75rem; --orb-hero-border:transparent;
  color-scheme:light;
  --orb-color-primary:#0f1011; --orb-color-primary-rgb:15,16,17;
  --orb-color-primary-hover:#2b2e33; --orb-color-on-primary:#fff;
  --ins-primary:#0f1011; --ins-primary-rgb:15,16,17; --ins-primary-text-emphasis:#2b2e33;
  --ins-secondary:#3c4149; --ins-secondary-rgb:60,65,73;
  --ins-danger:#c53030; --ins-danger-rgb:197,48,48; --ins-success:#1f7a35; --ins-success-rgb:31,122,53;
  --ins-warning:#8a5a00; --ins-warning-rgb:138,90,0;
  --ins-font-sans-serif:var(--orb-font); --ins-body-font-family:var(--orb-font);
  --ins-body-color:#3c4149; --ins-body-color-rgb:60,65,73; --ins-body-bg:#fcfcfd; --ins-body-bg-rgb:252,252,253;
  --ins-emphasis-color:#0f1011; --ins-secondary-color:#6b6f76; --ins-heading-color:#0f1011;
  --ins-link-color:#0f1011; --ins-link-color-rgb:15,16,17; --ins-link-hover-color:#2b2e33;
  --ins-border-color:#e6e6ea; --ins-border-radius:2px; --ins-border-radius-sm:2px; --ins-border-radius-lg:2px;
  --ins-form-invalid-color:#c53030; --ins-form-invalid-border-color:#eb5757;
  --ins-theme-card-border-color:#e6e6ea; --ins-light:#f4f5f8; --ins-light-rgb:244,245,248; --ins-tertiary-bg:#f4f5f8; --ins-tertiary-bg-rgb:244,245,248;
  font-family:var(--orb-font); letter-spacing:var(--orb-tracking-body);
}
/* Mode sombre : réglage du système, sauf choix explicite du visiteur (attribut data-mode posé par static/orb/mode.js). */
html[data-mode="dark"] .orb-public {
  --orb-page:#08090a; --orb-surface:#0f1011; --orb-soft:#191a1b;
  --orb-ink:#f7f8f8; --orb-text:#d0d6e0; --orb-muted:#8a8f98; --orb-line:#23252a;
  --orb-control-border:#62666d; --orb-focus:#d0d6e0;
  --orb-action:#e5e5e6; --orb-action-hover:#ffffff; --orb-on-action:#08090a;
  --orb-success-text:#27a644; --orb-warning-text:#f0bf00; --orb-danger-text:#eb5757; --orb-info-text:#4ea7fc;
  --orb-hero-border:#23252a;
  --orb-guide:#23252a; --orb-dot:#1f2124; --orb-scrim:#000000b3;
  --orb-color-primary:#e5e5e6; --orb-color-primary-rgb:229,229,230;
  --orb-color-primary-hover:#ffffff; --orb-color-on-primary:#08090a;
  --ins-primary:#e5e5e6; --ins-primary-rgb:229,229,230; --ins-primary-text-emphasis:#ffffff;
  --ins-secondary:#d0d6e0; --ins-secondary-rgb:208,214,224;
  --ins-body-color:#d0d6e0; --ins-body-color-rgb:208,214,224; --ins-body-bg:#08090a; --ins-body-bg-rgb:8,9,10;
  --ins-secondary-bg:#0f1011; --ins-secondary-bg-rgb:15,16,17;
  --ins-emphasis-color:#f7f8f8; --ins-secondary-color:#8a8f98; --ins-heading-color:#f7f8f8;
  --ins-link-color:#f7f8f8; --ins-link-color-rgb:247,248,248; --ins-link-hover-color:#ffffff;
  --ins-border-color:#23252a; --ins-theme-card-border-color:#23252a;
  --ins-form-invalid-color:#eb5757;
  --ins-light:#191a1b; --ins-light-rgb:25,26,27; --ins-tertiary-bg:#191a1b; --ins-tertiary-bg-rgb:25,26,27;
  color-scheme:dark;
}
html[data-mode="dark"] .orb-public .form-select { --ins-form-select-bg-img:url("https://media.aurisformac.com/static/725310244637/inline/725310244637.svg"); }
@media (prefers-color-scheme: dark) {
  html:not([data-mode="light"]) .orb-public {
    --orb-page:#08090a; --orb-surface:#0f1011; --orb-soft:#191a1b;
    --orb-ink:#f7f8f8; --orb-text:#d0d6e0; --orb-muted:#8a8f98; --orb-line:#23252a;
    --orb-control-border:#62666d; --orb-focus:#d0d6e0;
    --orb-action:#e5e5e6; --orb-action-hover:#ffffff; --orb-on-action:#08090a;
    --orb-success-text:#27a644; --orb-warning-text:#f0bf00; --orb-danger-text:#eb5757; --orb-info-text:#4ea7fc;
    --orb-hero-border:#23252a;
    --orb-guide:#23252a; --orb-dot:#1f2124; --orb-scrim:#000000b3;
    --orb-color-primary:#e5e5e6; --orb-color-primary-rgb:229,229,230;
    --orb-color-primary-hover:#ffffff; --orb-color-on-primary:#08090a;
    --ins-primary:#e5e5e6; --ins-primary-rgb:229,229,230; --ins-primary-text-emphasis:#ffffff;
    --ins-secondary:#d0d6e0; --ins-secondary-rgb:208,214,224;
    --ins-body-color:#d0d6e0; --ins-body-color-rgb:208,214,224; --ins-body-bg:#08090a; --ins-body-bg-rgb:8,9,10;
    --ins-secondary-bg:#0f1011; --ins-secondary-bg-rgb:15,16,17;
    --ins-emphasis-color:#f7f8f8; --ins-secondary-color:#8a8f98; --ins-heading-color:#f7f8f8;
    --ins-link-color:#f7f8f8; --ins-link-color-rgb:247,248,248; --ins-link-hover-color:#ffffff;
    --ins-border-color:#23252a; --ins-theme-card-border-color:#23252a;
    --ins-form-invalid-color:#eb5757;
    --ins-light:#191a1b; --ins-light-rgb:25,26,27; --ins-tertiary-bg:#191a1b; --ins-tertiary-bg-rgb:25,26,27;
    color-scheme:dark;
  }
  html:not([data-mode="light"]) .orb-public .form-select { --ins-form-select-bg-img:url("https://media.aurisformac.com/static/725310244637/inline/725310244637.svg"); }
}
body { background: #f5f5f6; color: #24262b; }
body.orb-public { background:var(--orb-page); color:var(--orb-text); }
.orb-public :is(button, input, select, textarea) { font-family:var(--orb-font); }
.orb-public :is(h1, h2, h3, h4) { color:var(--orb-ink); font-weight:var(--orb-weight-title); letter-spacing:var(--orb-tracking-title); }
/* Boutons : action anthracite, secondaire en contour, angles de 2 px. */
html .orb-public .btn { --ins-btn-border-radius:var(--orb-radius); --ins-btn-font-weight:var(--orb-weight-strong); }
html .orb-public .btn-secondary { --ins-btn-bg:transparent; --ins-btn-color:var(--orb-ink); --ins-btn-border-color:var(--orb-control-border); --ins-btn-hover-bg:var(--orb-soft); --ins-btn-hover-color:var(--orb-ink); --ins-btn-hover-border-color:var(--orb-control-border); --ins-btn-active-bg:var(--orb-soft); --ins-btn-active-color:var(--orb-ink); --ins-btn-active-border-color:var(--orb-ink); --ins-btn-disabled-bg:transparent; --ins-btn-disabled-color:var(--orb-ink); --ins-btn-disabled-border-color:var(--orb-control-border); }
html .orb-public :is(.form-control, .form-select) { border-color:var(--orb-control-border); border-radius:var(--orb-radius); }
html .orb-public :is(.form-control, .form-select):is(.is-invalid, [aria-invalid="true"]) { border-color:var(--orb-danger); }
html .orb-public :is(.btn, .form-check-input, .form-control, .form-select, a, button, input, [tabindex]):focus-visible { outline-color:var(--orb-focus); }
/* Bouton en contour clair : prévu pour les fonds sombres (bandeau d'accueil, blocs sombres), texte et contour clairs. */
html .orb-public .btn-outline-light { --ins-btn-color:#f7f8f8; --ins-btn-border-color:#f7f8f8; --ins-btn-hover-color:#08090a; --ins-btn-hover-bg:#f7f8f8; --ins-btn-hover-border-color:#f7f8f8; --ins-btn-active-color:#08090a; --ins-btn-active-bg:#f7f8f8; --ins-btn-active-border-color:#f7f8f8; }
/* Icône d'erreur des champs au rouge de message. */
html .orb-public .form-control.is-invalid { background-image:url("https://media.aurisformac.com/static/bfaa9bc84007/inline/bfaa9bc84007.svg"); }
html .orb-public .form-select.is-invalid { --ins-form-select-bg-icon:url("https://media.aurisformac.com/static/bfaa9bc84007/inline/bfaa9bc84007.svg"); }
/* Cases à cocher et boutons radio : même contour que les champs, visibles en clair comme en sombre. */
html .orb-public .form-check-input:not(.is-invalid) { border-color:var(--orb-control-border); }
html .orb-public .form-check-input { background-color:var(--orb-surface); }
html .orb-public .form-check-input:checked { background-color:var(--orb-action); border-color:var(--orb-action); }
html[data-mode="dark"] .orb-public .form-check-input:checked[type=checkbox] { --ins-form-check-bg-image:url("https://media.aurisformac.com/static/e7fc17068172/inline/e7fc17068172.svg"); }
@media (prefers-color-scheme: dark) { html:not([data-mode="light"]) .orb-public .form-check-input:checked[type=checkbox] { --ins-form-check-bg-image:url("https://media.aurisformac.com/static/e7fc17068172/inline/e7fc17068172.svg"); } }
@media (prefers-reduced-motion: reduce) { .orb-public { --orb-duration-fast:0ms; --orb-duration-base:0ms; --orb-duration-slow:0ms; } }
/* Alertes discrètes : fond de surface, filet fin, barre de 2 px à gauche dans la couleur du message. */
html .orb-public .alert { --ins-alert-bg:var(--orb-surface); --ins-alert-border-color:var(--orb-line); --ins-alert-color:var(--orb-text); --ins-alert-link-color:var(--orb-ink); --ins-alert-border-radius:var(--orb-radius); border-left:var(--orb-alert-bar) solid var(--orb-alert-accent, var(--orb-ink)); }
html .orb-public .alert-success { --orb-alert-accent:var(--orb-success); }
html .orb-public .alert-warning { --orb-alert-accent:var(--orb-warning); }
html .orb-public .alert-danger { --orb-alert-accent:var(--orb-danger); }
html .orb-public .alert-info { --orb-alert-accent:var(--orb-info); }
/* Pastilles pleines aux couleurs de Linear, texte sombre (de 5,7:1 à 11,5:1). */
html .orb-public .text-bg-success { background-color:var(--orb-success) !important; color:#08090a !important; }
html .orb-public .text-bg-warning { background-color:var(--orb-warning) !important; color:#08090a !important; }
html .orb-public .text-bg-danger { background-color:var(--orb-danger) !important; color:#08090a !important; }
html .orb-public .text-bg-info { background-color:var(--orb-info) !important; color:#08090a !important; }
/* Case non cochée : seuls la case et le message d'erreur passent en rouge ; le libellé garde la couleur du texte. */
html .orb-public .form-check-input.is-invalid ~ .form-check-label, html .orb-public .form-check-input[aria-invalid="true"] ~ .form-check-label { color:var(--orb-text); }
/* Message d'erreur d'un champ : graisse normale, taille réduite. */
html .orb-public .invalid-feedback { color:var(--orb-danger-text); font-size:var(--orb-error-size); font-weight:400; }
.language-selector { display:flex; align-items:center; justify-content:flex-end; gap:.6rem; padding:.75rem 1.5rem; margin:0; background:var(--orb-surface, #fff); border-bottom:1px solid var(--orb-line, #e4e4e7); }
.language-selector label { font-size:.8rem; margin:0; }
.language-selector .form-select { width:7.2rem; padding:.4rem .7rem; }
.language-selector .btn { padding:.4rem .7rem; font-size:.8rem; }
body:has(.sidebar) > .language-selector { margin-left:260px; }
.landing-main { min-height:74vh; background:var(--orb-page, #f5f5f6); }
.hero { background:none; max-width:1160px; margin:auto; padding:3rem 2rem 4rem; }
.hero-panel { background:linear-gradient(130deg,#08090a,#1c1c1f); border:1px solid var(--orb-hero-border, transparent); padding:3.5rem; border-radius:var(--orb-radius, 4px); max-width:850px; color:#f7f8f8; box-shadow:0 4px 24px #0003; }
.hero-panel h1 { font-size:clamp(2.4rem,5vw,4.5rem); line-height:1.08; letter-spacing:-.04em; max-width:750px; }
.orb-public .hero-panel h1 { color:#f7f8f8; letter-spacing:var(--orb-tracking-title); }
.hero-panel .hero-description { color:#d0d6e0; max-width:650px; }
.hero-panel .eyebrow, .hero-panel .hero-note { color:#8a8f98; }
.hero-panel .hero-cta { margin-top:1.2rem; }
.site-footer { background:var(--orb-page, #fff); color:var(--orb-muted, #52525b); border-top:1px dashed var(--orb-control-border, #d4d4d8); padding:1.25rem 2rem; }
.site-footer a, .site-footer button { color:var(--orb-ink, #35383f); }
.sidebar { background:#202126; color:#e4e4e7; }
.sidebar .brand img { content:url("https://media.aurisformac.com/static/8256588c634c/brand/logo-dark.svg"); width:180px; height:auto; }
.sidebar .workspace, .sidebar .sidebar-bottom { background:transparent; }
.sidebar .navigation a { color:#d4d4d8; }
.sidebar .navigation a.active { background:#41434b; color:#fff; }
.sidebar small, .sidebar .nav-caption, .sidebar-bottom { color:#bdbdc5; }
.workspace-mark, .avatar { background:#e4e4e7; color:#24262b; }
.auth-brand img { width:260px; height:auto; }
.auth-shell { padding-top:2rem; }
.legal-main { max-width:850px; }
.legal-main h2 { margin-top:2rem; }
@media(max-width:700px) {
  .language-selector { padding:.6rem; gap:.4rem; }
  body:has(.sidebar) > .language-selector { margin-left:0; }
  .hero { padding:1.5rem 1rem; }
  .hero-panel { padding:2rem 1.3rem; }
  .hero-panel h1 { font-size:2.7rem; }
  .site-footer { padding:1.25rem 1rem; }
}
/* Le composant utilise son Shadow DOM ; les propriétés du thème traversent sa frontière. */
orb-consent {
  font-family:var(--orb-font, 'Public Sans', sans-serif);
  --orb-consent-accent:var(--orb-muted, #52525b); --orb-consent-primary-surface:var(--orb-action, #24262b);
  --orb-consent-primary-hover:var(--orb-action-hover, #41454d); --orb-consent-primary-border:var(--orb-action, #52525b);
  --orb-consent-choice-surface:var(--orb-soft, #f4f4f5); --orb-consent-choice-hover:var(--orb-line, #e4e4e7);
  --orb-consent-choice-border:var(--orb-control-border, #a1a1aa); --orb-consent-logo-surface:#fff;
  --orb-consent-launcher-surface:var(--orb-surface, #fff); --orb-consent-launcher-text:var(--orb-ink, #24262b); --orb-consent-launcher-border:var(--orb-control-border, #a1a1aa);
  --orb-consent-launcher-accent:var(--orb-muted, #52525b); --orb-consent-link:var(--orb-ink, #3f3f46);
  --orb-consent-switch-active:var(--orb-ink, #3f3f46); --orb-consent-switch-active-border:var(--orb-ink, #52525b);
}
:root { --orb-blue:#42464f; --orb-blue-soft:#eeeeef; --orb-radius:4px; --orb-bg:#f5f5f6; }
.hero-panel { max-width:none; width:100%; }
orb-consent {
  --orb-consent-surface:var(--orb-surface, #fff); --orb-consent-surface-soft:var(--orb-soft, #f5f5f6);
  --orb-consent-note-surface:var(--orb-soft, #f5f5f6); --orb-consent-border:var(--orb-line, #d4d4d8);
  --orb-consent-text:var(--orb-ink, #24262b); --orb-consent-muted:var(--orb-muted, #52525b);
  --orb-consent-quiet-text:var(--orb-ink, #24262b); --orb-consent-lock:var(--orb-muted, #52525b);
}
