/* [project]/src/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-ease: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: var(--font-geist-sans), system-ui, -apple-system, sans-serif;
    --color-red-50: #fef2f2;
    --color-red-200: #ffcaca;
    --color-red-300: #ffa3a3;
    --color-red-500: #fb2c36;
    --color-red-600: #e40014;
    --color-red-700: #bf000f;
    --color-red-800: #9f0712;
    --color-orange-50: #fff7ed;
    --color-orange-100: #ffedd5;
    --color-orange-200: #ffd7a8;
    --color-orange-400: #ff8b1a;
    --color-orange-700: #c53c00;
    --color-orange-900: #7e2a0c;
    --color-amber-50: #fffbeb;
    --color-amber-100: #fef3c6;
    --color-amber-200: #fee685;
    --color-amber-300: #ffd236;
    --color-amber-400: #fcbb00;
    --color-amber-500: #f99c00;
    --color-amber-600: #dd7400;
    --color-amber-700: #b75000;
    --color-amber-800: #953d00;
    --color-amber-900: #7b3306;
    --color-emerald-50: #ecfdf5;
    --color-emerald-100: #d0fae5;
    --color-emerald-200: #a4f4cf;
    --color-emerald-300: #5ee9b5;
    --color-emerald-400: #00d294;
    --color-emerald-500: #00bb7f;
    --color-emerald-600: #009767;
    --color-emerald-700: #007956;
    --color-emerald-800: #005f46;
    --color-emerald-900: #004e3b;
    --color-cyan-400: #00d2ef;
    --color-sky-50: #f0f9ff;
    --color-sky-500: #00a5ef;
    --color-sky-700: #0069a4;
    --color-blue-50: #eff6ff;
    --color-blue-100: #dbeafe;
    --color-blue-200: #bedbff;
    --color-blue-400: #54a2ff;
    --color-blue-500: #3080ff;
    --color-blue-600: #155dfc;
    --color-blue-700: #1447e6;
    --color-indigo-50: #eef2ff;
    --color-indigo-100: #e0e7ff;
    --color-indigo-200: #c7d2ff;
    --color-indigo-300: #a4b3ff;
    --color-indigo-400: #7d87ff;
    --color-indigo-500: #625fff;
    --color-indigo-600: #4f39f6;
    --color-indigo-700: #432dd7;
    --color-indigo-800: #372aac;
    --color-indigo-900: #312c85;
    --color-violet-50: #f5f3ff;
    --color-violet-100: #ede9fe;
    --color-violet-200: #ddd6ff;
    --color-violet-400: #a685ff;
    --color-violet-600: #7f22fe;
    --color-violet-700: #7008e7;
    --color-rose-50: #fff1f2;
    --color-rose-100: #ffe4e6;
    --color-rose-200: #ffccd3;
    --color-rose-300: #ffa2ae;
    --color-rose-400: #ff667f;
    --color-rose-500: #ff2357;
    --color-rose-600: #e70044;
    --color-rose-700: #c20039;
    --color-rose-800: #a30037;
    --color-rose-900: #8b0836;
    --color-slate-50: #f8fafc;
    --color-slate-100: #f1f5f9;
    --color-slate-200: #e2e8f0;
    --color-slate-300: #cad5e2;
    --color-slate-400: #90a1b9;
    --color-slate-500: #62748e;
    --color-slate-600: #45556c;
    --color-slate-700: #314158;
    --color-slate-800: #1d293d;
    --color-slate-900: #0f172b;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --breakpoint-xl: 80rem;
    --breakpoint-2xl: 96rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --blur-sm: 8px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-geist-sans), system-ui, -apple-system, sans-serif;
    --default-mono-font-family: var(--font-geist-mono), ui-monospace, monospace;
  }

  @supports (color: lab(0% 0 0)) {
    :root, :host {
      --color-red-50: lab(96.5005% 4.18508 1.52328);
      --color-red-200: lab(86.017% 19.8815 7.75869);
      --color-red-300: lab(76.5514% 36.422 15.5335);
      --color-red-500: lab(55.4814% 75.0732 48.8528);
      --color-red-600: lab(48.4493% 77.4328 61.5452);
      --color-red-700: lab(40.4273% 67.2623 53.7441);
      --color-red-800: lab(33.7174% 55.8993 41.0293);
      --color-orange-50: lab(97.7008% 1.53735 5.90649);
      --color-orange-100: lab(94.7127% 3.58394 14.3151);
      --color-orange-200: lab(88.4871% 9.94918 28.8378);
      --color-orange-400: lab(70.0429% 42.5156 75.8207);
      --color-orange-700: lab(46.4615% 57.7275 70.8507);
      --color-orange-900: lab(30.2951% 36.0434 37.671);
      --color-amber-50: lab(98.6252% -.635922 8.42309);
      --color-amber-100: lab(95.916% -1.21653 23.111);
      --color-amber-200: lab(91.7203% -.505269 49.9084);
      --color-amber-300: lab(86.4156% 6.13147 78.3961);
      --color-amber-400: lab(80.1641% 16.6016 99.2089);
      --color-amber-500: lab(72.7183% 31.8672 97.9407);
      --color-amber-600: lab(60.3514% 40.5624 87.1228);
      --color-amber-700: lab(47.2709% 42.9082 69.2966);
      --color-amber-800: lab(37.8822% 37.1699 52.2718);
      --color-amber-900: lab(31.2288% 30.2627 40.0378);
      --color-emerald-50: lab(97.8462% -6.94966 1.85487);
      --color-emerald-100: lab(94.9004% -17.0769 5.63836);
      --color-emerald-200: lab(90.2247% -31.039 9.47084);
      --color-emerald-300: lab(83.9203% -48.7124 13.8849);
      --color-emerald-400: lab(75.0771% -60.7313 19.4147);
      --color-emerald-500: lab(66.9756% -58.27 19.5419);
      --color-emerald-600: lab(55.0481% -49.9246 15.93);
      --color-emerald-700: lab(44.4871% -41.0396 11.0361);
      --color-emerald-800: lab(35.3675% -33.1188 8.04002);
      --color-emerald-900: lab(28.8637% -26.9249 5.45986);
      --color-cyan-400: lab(76.6045% -40.9406 -29.6231);
      --color-sky-50: lab(97.3623% -2.33802 -4.13098);
      --color-sky-500: lab(63.3038% -18.433 -51.0407);
      --color-sky-700: lab(41.6013% -9.10804 -42.5647);
      --color-blue-50: lab(96.492% -1.14644 -5.11479);
      --color-blue-100: lab(92.0301% -2.24757 -11.6453);
      --color-blue-200: lab(86.15% -4.04379 -21.0797);
      --color-blue-400: lab(65.0361% -1.42065 -56.9802);
      --color-blue-500: lab(54.1736% 13.3369 -74.6839);
      --color-blue-600: lab(44.0605% 29.0279 -86.0352);
      --color-blue-700: lab(36.9089% 35.0961 -85.6872);
      --color-indigo-50: lab(95.4818% .411302 -6.78529);
      --color-indigo-100: lab(91.6577% 1.04591 -12.7199);
      --color-indigo-200: lab(84.4329% 3.18977 -23.9688);
      --color-indigo-300: lab(74.0235% 8.54138 -41.6075);
      --color-indigo-400: lab(59.866% 22.4834 -64.4485);
      --color-indigo-500: lab(48.295% 38.3129 -81.9673);
      --color-indigo-600: lab(38.4009% 52.6132 -92.3857);
      --color-indigo-700: lab(32.4486% 49.2217 -84.6695);
      --color-indigo-800: lab(26.6645% 37.9804 -68.6402);
      --color-indigo-900: lab(23.3911% 24.6978 -50.4718);
      --color-violet-50: lab(96.2416% 2.28849 -5.51657);
      --color-violet-100: lab(93.0838% 4.35197 -9.88284);
      --color-violet-200: lab(87.0888% 8.53688 -19.4189);
      --color-violet-400: lab(62.8239% 34.9159 -60.0512);
      --color-violet-600: lab(41.088% 68.9966 -91.995);
      --color-violet-700: lab(35.2783% 67.9912 -88.793);
      --color-rose-50: lab(96.2369% 4.94155 1.28011);
      --color-rose-100: lab(92.8221% 9.86832 2.60075);
      --color-rose-200: lab(86.806% 19.1909 4.07754);
      --color-rose-300: lab(76.6339% 38.3549 9.68835);
      --color-rose-400: lab(64.4125% 63.0291 19.2068);
      --color-rose-500: lab(56.101% 79.4328 31.4532);
      --color-rose-600: lab(49.1882% 81.577 36.0311);
      --color-rose-700: lab(41.1651% 71.6251 30.3087);
      --color-rose-800: lab(34.6481% 60.802 20.1957);
      --color-rose-900: lab(29.7104% 51.514 12.6253);
      --color-slate-50: lab(98.1434% -.369519 -1.05966);
      --color-slate-100: lab(96.286% -.852436 -2.46847);
      --color-slate-200: lab(91.7353% -.998765 -4.76968);
      --color-slate-300: lab(84.7652% -1.94535 -7.93337);
      --color-slate-400: lab(65.5349% -2.25151 -14.5072);
      --color-slate-500: lab(48.0876% -2.03595 -16.5814);
      --color-slate-600: lab(35.5623% -1.74978 -15.4316);
      --color-slate-700: lab(26.9569% -1.47016 -15.6993);
      --color-slate-800: lab(16.132% -.318035 -14.6672);
      --color-slate-900: lab(7.78673% 1.82345 -15.0537);
    }
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .\@container {
    container-type: inline-size;
  }

  .pointer-events-auto {
    pointer-events: auto;
  }

  .pointer-events-none {
    pointer-events: none;
  }

  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .inset-\[3px\] {
    inset: 3px;
  }

  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }

  .\!start {
    inset-inline-start: var(--spacing) !important;
  }

  .-start {
    inset-inline-start: calc(var(--spacing) * -1);
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .end {
    inset-inline-end: var(--spacing);
  }

  .-top-2 {
    top: calc(var(--spacing) * -2);
  }

  .top-0 {
    top: calc(var(--spacing) * 0);
  }

  .top-1\/2 {
    top: 50%;
  }

  .top-3 {
    top: calc(var(--spacing) * 3);
  }

  .top-4 {
    top: calc(var(--spacing) * 4);
  }

  .top-5 {
    top: calc(var(--spacing) * 5);
  }

  .top-full {
    top: 100%;
  }

  .-right-2 {
    right: calc(var(--spacing) * -2);
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .right-1 {
    right: calc(var(--spacing) * 1);
  }

  .right-3 {
    right: calc(var(--spacing) * 3);
  }

  .right-4 {
    right: calc(var(--spacing) * 4);
  }

  .right-6 {
    right: calc(var(--spacing) * 6);
  }

  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }

  .bottom-1 {
    bottom: calc(var(--spacing) * 1);
  }

  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }

  .bottom-full {
    bottom: 100%;
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .left-1 {
    left: calc(var(--spacing) * 1);
  }

  .left-2\.5 {
    left: calc(var(--spacing) * 2.5);
  }

  .left-3 {
    left: calc(var(--spacing) * 3);
  }

  .z-10 {
    z-index: 10;
  }

  .z-20 {
    z-index: 20;
  }

  .z-30 {
    z-index: 30;
  }

  .z-40 {
    z-index: 40;
  }

  .z-50 {
    z-index: 50;
  }

  .z-60 {
    z-index: 60;
  }

  .z-\[55\] {
    z-index: 55;
  }

  .z-\[56\] {
    z-index: 56;
  }

  .z-\[60\] {
    z-index: 60;
  }

  .col-1 {
    grid-column: 1;
  }

  .col-2 {
    grid-column: 2;
  }

  .col-8 {
    grid-column: 8;
  }

  .col-9 {
    grid-column: 9;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .m-1 {
    margin: calc(var(--spacing) * 1);
  }

  .m-2 {
    margin: calc(var(--spacing) * 2);
  }

  .m-3 {
    margin: calc(var(--spacing) * 3);
  }

  .m-4 {
    margin: calc(var(--spacing) * 4);
  }

  .m-5 {
    margin: calc(var(--spacing) * 5);
  }

  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }

  .mx-4 {
    margin-inline: calc(var(--spacing) * 4);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-4 {
    margin-block: calc(var(--spacing) * 4);
  }

  .my-5 {
    margin-block: calc(var(--spacing) * 5);
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }

  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }

  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }

  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

  .mb-0\.5 {
    margin-bottom: calc(var(--spacing) * .5);
  }

  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }

  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .ml-0\.5 {
    margin-left: calc(var(--spacing) * .5);
  }

  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }

  .ml-1\.5 {
    margin-left: calc(var(--spacing) * 1.5);
  }

  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }

  .ml-3 {
    margin-left: calc(var(--spacing) * 3);
  }

  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }

  .ml-auto {
    margin-left: auto;
  }

  .line-clamp-2 {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }

  .\!hidden {
    display: none !important;
  }

  .\!inline {
    display: inline !important;
  }

  .\!table {
    display: table !important;
  }

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .flow-root {
    display: flow-root;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .inline-grid {
    display: inline-grid;
  }

  .inline-table {
    display: inline-table;
  }

  .list-item {
    display: list-item;
  }

  .table {
    display: table;
  }

  .table\! {
    display: table !important;
  }

  .table-caption {
    display: table-caption;
  }

  .table-cell {
    display: table-cell;
  }

  .table-column {
    display: table-column;
  }

  .table-column-group {
    display: table-column-group;
  }

  .table-footer-group {
    display: table-footer-group;
  }

  .table-header-group {
    display: table-header-group;
  }

  .table-row {
    display: table-row;
  }

  .table-row-group {
    display: table-row-group;
  }

  .aspect-square {
    aspect-ratio: 1;
  }

  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .h-1 {
    height: calc(var(--spacing) * 1);
  }

  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }

  .h-2 {
    height: calc(var(--spacing) * 2);
  }

  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }

  .h-3 {
    height: calc(var(--spacing) * 3);
  }

  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .h-5 {
    height: calc(var(--spacing) * 5);
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-7 {
    height: calc(var(--spacing) * 7);
  }

  .h-8 {
    height: calc(var(--spacing) * 8);
  }

  .h-9 {
    height: calc(var(--spacing) * 9);
  }

  .h-12 {
    height: calc(var(--spacing) * 12);
  }

  .h-14 {
    height: calc(var(--spacing) * 14);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-24 {
    height: calc(var(--spacing) * 24);
  }

  .h-\[18px\] {
    height: 18px;
  }

  .h-\[78vh\] {
    height: 78vh;
  }

  .h-full {
    height: 100%;
  }

  .h-screen {
    height: 100vh;
  }

  .max-h-40 {
    max-height: calc(var(--spacing) * 40);
  }

  .max-h-48 {
    max-height: calc(var(--spacing) * 48);
  }

  .max-h-52 {
    max-height: calc(var(--spacing) * 52);
  }

  .max-h-64 {
    max-height: calc(var(--spacing) * 64);
  }

  .max-h-72 {
    max-height: calc(var(--spacing) * 72);
  }

  .max-h-\[78vh\] {
    max-height: 78vh;
  }

  .max-h-\[80vh\] {
    max-height: 80vh;
  }

  .max-h-\[85vh\] {
    max-height: 85vh;
  }

  .max-h-\[90vh\] {
    max-height: 90vh;
  }

  .max-h-\[calc\(100vh-180px\)\] {
    max-height: calc(100vh - 180px);
  }

  .min-h-0 {
    min-height: calc(var(--spacing) * 0);
  }

  .min-h-8 {
    min-height: calc(var(--spacing) * 8);
  }

  .min-h-\[80px\] {
    min-height: 80px;
  }

  .min-h-\[160px\] {
    min-height: 160px;
  }

  .min-h-\[200px\] {
    min-height: 200px;
  }

  .min-h-\[480px\] {
    min-height: 480px;
  }

  .min-h-\[calc\(100vh-3\.5rem\)\] {
    min-height: calc(100vh - 3.5rem);
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-1 {
    width: calc(var(--spacing) * 1);
  }

  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }

  .w-2 {
    width: calc(var(--spacing) * 2);
  }

  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }

  .w-3 {
    width: calc(var(--spacing) * 3);
  }

  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-5 {
    width: calc(var(--spacing) * 5);
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-7 {
    width: calc(var(--spacing) * 7);
  }

  .w-8 {
    width: calc(var(--spacing) * 8);
  }

  .w-9 {
    width: calc(var(--spacing) * 9);
  }

  .w-11 {
    width: calc(var(--spacing) * 11);
  }

  .w-12 {
    width: calc(var(--spacing) * 12);
  }

  .w-20 {
    width: calc(var(--spacing) * 20);
  }

  .w-28 {
    width: calc(var(--spacing) * 28);
  }

  .w-32 {
    width: calc(var(--spacing) * 32);
  }

  .w-40 {
    width: calc(var(--spacing) * 40);
  }

  .w-44 {
    width: calc(var(--spacing) * 44);
  }

  .w-48 {
    width: calc(var(--spacing) * 48);
  }

  .w-56 {
    width: calc(var(--spacing) * 56);
  }

  .w-60 {
    width: calc(var(--spacing) * 60);
  }

  .w-64 {
    width: calc(var(--spacing) * 64);
  }

  .w-72 {
    width: calc(var(--spacing) * 72);
  }

  .w-96 {
    width: calc(var(--spacing) * 96);
  }

  .w-\[2\.5px\] {
    width: 2.5px;
  }

  .w-\[640px\] {
    width: 640px;
  }

  .w-fit {
    width: fit-content;
  }

  .w-full {
    width: 100%;
  }

  .w-px {
    width: 1px;
  }

  .max-w-2xl {
    max-width: var(--container-2xl);
  }

  .max-w-3xl {
    max-width: var(--container-3xl);
  }

  .max-w-5xl {
    max-width: var(--container-5xl);
  }

  .max-w-6xl {
    max-width: var(--container-6xl);
  }

  .max-w-\[90vw\] {
    max-width: 90vw;
  }

  .max-w-\[140px\] {
    max-width: 140px;
  }

  .max-w-\[180px\] {
    max-width: 180px;
  }

  .max-w-\[200px\] {
    max-width: 200px;
  }

  .max-w-\[220px\] {
    max-width: 220px;
  }

  .max-w-\[260px\] {
    max-width: 260px;
  }

  .max-w-lg {
    max-width: var(--container-lg);
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .max-w-none {
    max-width: none;
  }

  .max-w-screen-2xl {
    max-width: var(--breakpoint-2xl);
  }

  .max-w-screen-xl {
    max-width: var(--breakpoint-xl);
  }

  .max-w-sm {
    max-width: var(--container-sm);
  }

  .max-w-xl {
    max-width: var(--container-xl);
  }

  .max-w-xs {
    max-width: var(--container-xs);
  }

  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }

  .min-w-5 {
    min-width: calc(var(--spacing) * 5);
  }

  .min-w-\[16px\] {
    min-width: 16px;
  }

  .min-w-\[18px\] {
    min-width: 18px;
  }

  .flex-1 {
    flex: 1;
  }

  .flex-none {
    flex: none;
  }

  .flex-shrink-0, .shrink-0 {
    flex-shrink: 0;
  }

  .grow {
    flex-grow: 1;
  }

  .border-collapse {
    border-collapse: collapse;
  }

  .-translate-x-full {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-0 {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-1 {
    --tw-translate-x: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-6 {
    --tw-translate-x: calc(var(--spacing) * 6);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rotate-180 {
    rotate: 180deg;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-default {
    cursor: default;
  }

  .cursor-not-allowed {
    cursor: not-allowed;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .resize-none {
    resize: none;
  }

  .resize-y {
    resize: vertical;
  }

  .list-disc {
    list-style-type: disc;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }

  .grid-cols-\[1fr_1fr_1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr 1fr 1fr auto;
  }

  .grid-cols-\[1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr auto;
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .gap-0\.5 {
    gap: calc(var(--spacing) * .5);
  }

  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }

  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }

  :where(.space-y-0\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-1\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-2 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-4 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-6 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }

  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }

  .gap-x-5 {
    column-gap: calc(var(--spacing) * 5);
  }

  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }

  .gap-x-8 {
    column-gap: calc(var(--spacing) * 8);
  }

  :where(.space-x-1\.5 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-x-reverse)));
  }

  :where(.space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
    margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
  }

  .gap-y-1 {
    row-gap: calc(var(--spacing) * 1);
  }

  .gap-y-1\.5 {
    row-gap: calc(var(--spacing) * 1.5);
  }

  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }

  .gap-y-4 {
    row-gap: calc(var(--spacing) * 4);
  }

  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }

  :where(.divide-slate-50 > :not(:last-child)) {
    border-color: var(--color-slate-50);
  }

  :where(.divide-slate-100 > :not(:last-child)) {
    border-color: var(--color-slate-100);
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-auto {
    overflow: auto;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-md {
    border-radius: var(--radius-md);
  }

  .rounded-sm {
    border-radius: var(--radius-sm);
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .rounded-l-md {
    border-top-left-radius: var(--radius-md);
    border-bottom-left-radius: var(--radius-md);
  }

  .rounded-r-md {
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-\[1\.5px\] {
    border-style: var(--tw-border-style);
    border-width: 1.5px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }

  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }

  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }

  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }

  .border-\[var\(--accent\)\] {
    border-color: var(--accent);
  }

  .border-amber-200 {
    border-color: var(--color-amber-200);
  }

  .border-amber-300 {
    border-color: var(--color-amber-300);
  }

  .border-blue-200 {
    border-color: var(--color-blue-200);
  }

  .border-emerald-200 {
    border-color: var(--color-emerald-200);
  }

  .border-emerald-500 {
    border-color: var(--color-emerald-500);
  }

  .border-emerald-600 {
    border-color: var(--color-emerald-600);
  }

  .border-indigo-100 {
    border-color: var(--color-indigo-100);
  }

  .border-indigo-200 {
    border-color: var(--color-indigo-200);
  }

  .border-indigo-300 {
    border-color: var(--color-indigo-300);
  }

  .border-indigo-600 {
    border-color: var(--color-indigo-600);
  }

  .border-orange-200 {
    border-color: var(--color-orange-200);
  }

  .border-red-200 {
    border-color: var(--color-red-200);
  }

  .border-red-300 {
    border-color: var(--color-red-300);
  }

  .border-rose-100 {
    border-color: var(--color-rose-100);
  }

  .border-rose-200 {
    border-color: var(--color-rose-200);
  }

  .border-rose-400 {
    border-color: var(--color-rose-400);
  }

  .border-rose-500 {
    border-color: var(--color-rose-500);
  }

  .border-rose-500\/400 {
    border-color: #ff2357;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-rose-500\/400 {
      border-color: color-mix(in oklab, var(--color-rose-500) 400%, transparent);
    }
  }

  .border-slate-50 {
    border-color: var(--color-slate-50);
  }

  .border-slate-100 {
    border-color: var(--color-slate-100);
  }

  .border-slate-200 {
    border-color: var(--color-slate-200);
  }

  .border-slate-300 {
    border-color: var(--color-slate-300);
  }

  .border-slate-800 {
    border-color: var(--color-slate-800);
  }

  .border-transparent {
    border-color: #0000;
  }

  .border-violet-200 {
    border-color: var(--color-violet-200);
  }

  .border-violet-400 {
    border-color: var(--color-violet-400);
  }

  .border-t-transparent {
    border-top-color: #0000;
  }

  .bg-\[var\(--accent\)\] {
    background-color: var(--accent);
  }

  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }

  .bg-amber-50\/20 {
    background-color: #fffbeb33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-50\/20 {
      background-color: color-mix(in oklab, var(--color-amber-50) 20%, transparent);
    }
  }

  .bg-amber-50\/30 {
    background-color: #fffbeb4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-50\/30 {
      background-color: color-mix(in oklab, var(--color-amber-50) 30%, transparent);
    }
  }

  .bg-amber-50\/40 {
    background-color: #fffbeb66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber-50\/40 {
      background-color: color-mix(in oklab, var(--color-amber-50) 40%, transparent);
    }
  }

  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }

  .bg-amber-400 {
    background-color: var(--color-amber-400);
  }

  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }

  .bg-amber-600 {
    background-color: var(--color-amber-600);
  }

  .bg-black\/20 {
    background-color: #0003;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/20 {
      background-color: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }

  .bg-black\/30 {
    background-color: #0000004d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/30 {
      background-color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }

  .bg-black\/40 {
    background-color: #0006;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/40 {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }

  .bg-black\/50 {
    background-color: #00000080;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/50 {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }

  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }

  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }

  .bg-blue-400 {
    background-color: var(--color-blue-400);
  }

  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }

  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }

  .bg-cyan-400 {
    background-color: var(--color-cyan-400);
  }

  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }

  .bg-emerald-50\/70 {
    background-color: #ecfdf5b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-emerald-50\/70 {
      background-color: color-mix(in oklab, var(--color-emerald-50) 70%, transparent);
    }
  }

  .bg-emerald-100 {
    background-color: var(--color-emerald-100);
  }

  .bg-emerald-400 {
    background-color: var(--color-emerald-400);
  }

  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }

  .bg-emerald-600 {
    background-color: var(--color-emerald-600);
  }

  .bg-indigo-50 {
    background-color: var(--color-indigo-50);
  }

  .bg-indigo-50\/30 {
    background-color: #eef2ff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-50\/30 {
      background-color: color-mix(in oklab, var(--color-indigo-50) 30%, transparent);
    }
  }

  .bg-indigo-50\/40 {
    background-color: #eef2ff66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-50\/40 {
      background-color: color-mix(in oklab, var(--color-indigo-50) 40%, transparent);
    }
  }

  .bg-indigo-50\/50 {
    background-color: #eef2ff80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-50\/50 {
      background-color: color-mix(in oklab, var(--color-indigo-50) 50%, transparent);
    }
  }

  .bg-indigo-50\/60 {
    background-color: #eef2ff99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo-50\/60 {
      background-color: color-mix(in oklab, var(--color-indigo-50) 60%, transparent);
    }
  }

  .bg-indigo-100 {
    background-color: var(--color-indigo-100);
  }

  .bg-indigo-200 {
    background-color: var(--color-indigo-200);
  }

  .bg-indigo-400 {
    background-color: var(--color-indigo-400);
  }

  .bg-indigo-500 {
    background-color: var(--color-indigo-500);
  }

  .bg-indigo-600 {
    background-color: var(--color-indigo-600);
  }

  .bg-orange-50 {
    background-color: var(--color-orange-50);
  }

  .bg-orange-100 {
    background-color: var(--color-orange-100);
  }

  .bg-orange-400 {
    background-color: var(--color-orange-400);
  }

  .bg-red-50 {
    background-color: var(--color-red-50);
  }

  .bg-rose-50 {
    background-color: var(--color-rose-50);
  }

  .bg-rose-50\/30 {
    background-color: #fff1f24d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-50\/30 {
      background-color: color-mix(in oklab, var(--color-rose-50) 30%, transparent);
    }
  }

  .bg-rose-50\/60 {
    background-color: #fff1f299;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-rose-50\/60 {
      background-color: color-mix(in oklab, var(--color-rose-50) 60%, transparent);
    }
  }

  .bg-rose-100 {
    background-color: var(--color-rose-100);
  }

  .bg-rose-200 {
    background-color: var(--color-rose-200);
  }

  .bg-rose-400 {
    background-color: var(--color-rose-400);
  }

  .bg-rose-500 {
    background-color: var(--color-rose-500);
  }

  .bg-rose-600 {
    background-color: var(--color-rose-600);
  }

  .bg-sky-50 {
    background-color: var(--color-sky-50);
  }

  .bg-sky-500 {
    background-color: var(--color-sky-500);
  }

  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }

  .bg-slate-50\/40 {
    background-color: #f8fafc66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-50\/40 {
      background-color: color-mix(in oklab, var(--color-slate-50) 40%, transparent);
    }
  }

  .bg-slate-50\/50 {
    background-color: #f8fafc80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-50\/50 {
      background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
    }
  }

  .bg-slate-50\/60 {
    background-color: #f8fafc99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-50\/60 {
      background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
    }
  }

  .bg-slate-50\/80 {
    background-color: #f8fafccc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-50\/80 {
      background-color: color-mix(in oklab, var(--color-slate-50) 80%, transparent);
    }
  }

  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }

  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }

  .bg-slate-300 {
    background-color: var(--color-slate-300);
  }

  .bg-slate-400 {
    background-color: var(--color-slate-400);
  }

  .bg-slate-500 {
    background-color: var(--color-slate-500);
  }

  .bg-slate-700 {
    background-color: var(--color-slate-700);
  }

  .bg-slate-800 {
    background-color: var(--color-slate-800);
  }

  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }

  .bg-slate-900\/40 {
    background-color: #0f172b66;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/40 {
      background-color: color-mix(in oklab, var(--color-slate-900) 40%, transparent);
    }
  }

  .bg-slate-900\/50 {
    background-color: #0f172b80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-900\/50 {
      background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent);
    }
  }

  .bg-transparent {
    background-color: #0000;
  }

  .bg-violet-50 {
    background-color: var(--color-violet-50);
  }

  .bg-violet-100 {
    background-color: var(--color-violet-100);
  }

  .bg-violet-400 {
    background-color: var(--color-violet-400);
  }

  .bg-violet-600 {
    background-color: var(--color-violet-600);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-emerald-300 {
    --tw-gradient-from: var(--color-emerald-300);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .via-emerald-500 {
    --tw-gradient-via: var(--color-emerald-500);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .to-emerald-300 {
    --tw-gradient-to: var(--color-emerald-300);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .fill-current {
    fill: currentColor;
  }

  .object-contain {
    object-fit: contain;
  }

  .p-0 {
    padding: calc(var(--spacing) * 0);
  }

  .p-0\.5 {
    padding: calc(var(--spacing) * .5);
  }

  .p-1 {
    padding: calc(var(--spacing) * 1);
  }

  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-7 {
    padding: calc(var(--spacing) * 7);
  }

  .p-8 {
    padding: calc(var(--spacing) * 8);
  }

  .p-9 {
    padding: calc(var(--spacing) * 9);
  }

  .p-10 {
    padding: calc(var(--spacing) * 10);
  }

  .p-12 {
    padding: calc(var(--spacing) * 12);
  }

  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }

  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }

  .py-0 {
    padding-block: calc(var(--spacing) * 0);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }

  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }

  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }

  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }

  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }

  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }

  .pt-1\.5 {
    padding-top: calc(var(--spacing) * 1.5);
  }

  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }

  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pr-1 {
    padding-right: calc(var(--spacing) * 1);
  }

  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }

  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }

  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }

  .pr-5 {
    padding-right: calc(var(--spacing) * 5);
  }

  .pr-6 {
    padding-right: calc(var(--spacing) * 6);
  }

  .pr-7 {
    padding-right: calc(var(--spacing) * 7);
  }

  .pr-8 {
    padding-right: calc(var(--spacing) * 8);
  }

  .pr-9 {
    padding-right: calc(var(--spacing) * 9);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }

  .pl-1 {
    padding-left: calc(var(--spacing) * 1);
  }

  .pl-1\.5 {
    padding-left: calc(var(--spacing) * 1.5);
  }

  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }

  .pl-2\.5 {
    padding-left: calc(var(--spacing) * 2.5);
  }

  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }

  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }

  .pl-8 {
    padding-left: calc(var(--spacing) * 8);
  }

  .pl-9 {
    padding-left: calc(var(--spacing) * 9);
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .align-middle {
    vertical-align: middle;
  }

  .font-mono {
    font-family: var(--font-geist-mono), ui-monospace, monospace;
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[8px\] {
    font-size: 8px;
  }

  .text-\[9\.5px\] {
    font-size: 9.5px;
  }

  .text-\[9px\] {
    font-size: 9px;
  }

  .text-\[10\.5px\] {
    font-size: 10.5px;
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[11\.5px\] {
    font-size: 11.5px;
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .text-\[12px\] {
    font-size: 12px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .break-all {
    word-break: break-all;
  }

  .whitespace-nowrap {
    white-space: nowrap;
  }

  .whitespace-pre-line {
    white-space: pre-line;
  }

  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }

  .text-amber-500 {
    color: var(--color-amber-500);
  }

  .text-amber-600 {
    color: var(--color-amber-600);
  }

  .text-amber-700 {
    color: var(--color-amber-700);
  }

  .text-amber-800 {
    color: var(--color-amber-800);
  }

  .text-amber-900 {
    color: var(--color-amber-900);
  }

  .text-blue-600 {
    color: var(--color-blue-600);
  }

  .text-blue-700 {
    color: var(--color-blue-700);
  }

  .text-emerald-500 {
    color: var(--color-emerald-500);
  }

  .text-emerald-500\/70 {
    color: #00bb7fb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-500\/70 {
      color: color-mix(in oklab, var(--color-emerald-500) 70%, transparent);
    }
  }

  .text-emerald-500\/80 {
    color: #00bb7fcc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-emerald-500\/80 {
      color: color-mix(in oklab, var(--color-emerald-500) 80%, transparent);
    }
  }

  .text-emerald-600 {
    color: var(--color-emerald-600);
  }

  .text-emerald-700 {
    color: var(--color-emerald-700);
  }

  .text-emerald-800 {
    color: var(--color-emerald-800);
  }

  .text-emerald-900 {
    color: var(--color-emerald-900);
  }

  .text-indigo-400 {
    color: var(--color-indigo-400);
  }

  .text-indigo-500 {
    color: var(--color-indigo-500);
  }

  .text-indigo-600 {
    color: var(--color-indigo-600);
  }

  .text-indigo-700 {
    color: var(--color-indigo-700);
  }

  .text-indigo-700\/70 {
    color: #432dd7b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-indigo-700\/70 {
      color: color-mix(in oklab, var(--color-indigo-700) 70%, transparent);
    }
  }

  .text-indigo-700\/80 {
    color: #432dd7cc;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-indigo-700\/80 {
      color: color-mix(in oklab, var(--color-indigo-700) 80%, transparent);
    }
  }

  .text-indigo-800 {
    color: var(--color-indigo-800);
  }

  .text-indigo-900 {
    color: var(--color-indigo-900);
  }

  .text-orange-700 {
    color: var(--color-orange-700);
  }

  .text-orange-900 {
    color: var(--color-orange-900);
  }

  .text-red-500 {
    color: var(--color-red-500);
  }

  .text-red-600 {
    color: var(--color-red-600);
  }

  .text-red-700 {
    color: var(--color-red-700);
  }

  .text-red-800 {
    color: var(--color-red-800);
  }

  .text-rose-400 {
    color: var(--color-rose-400);
  }

  .text-rose-500 {
    color: var(--color-rose-500);
  }

  .text-rose-600 {
    color: var(--color-rose-600);
  }

  .text-rose-700 {
    color: var(--color-rose-700);
  }

  .text-rose-800 {
    color: var(--color-rose-800);
  }

  .text-rose-900 {
    color: var(--color-rose-900);
  }

  .text-sky-700 {
    color: var(--color-sky-700);
  }

  .text-slate-300 {
    color: var(--color-slate-300);
  }

  .text-slate-400 {
    color: var(--color-slate-400);
  }

  .text-slate-500 {
    color: var(--color-slate-500);
  }

  .text-slate-600 {
    color: var(--color-slate-600);
  }

  .text-slate-700 {
    color: var(--color-slate-700);
  }

  .text-slate-800 {
    color: var(--color-slate-800);
  }

  .text-slate-900 {
    color: var(--color-slate-900);
  }

  .text-violet-600 {
    color: var(--color-violet-600);
  }

  .text-violet-700 {
    color: var(--color-violet-700);
  }

  .text-white {
    color: var(--color-white);
  }

  .capitalize {
    text-transform: capitalize;
  }

  .lowercase {
    text-transform: lowercase;
  }

  .normal-case {
    text-transform: none;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

  .line-through {
    text-decoration-line: line-through;
  }

  .overline {
    text-decoration-line: overline;
  }

  .underline {
    text-decoration-line: underline;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .opacity-0 {
    opacity: 0;
  }

  .opacity-50 {
    opacity: .5;
  }

  .opacity-60 {
    opacity: .6;
  }

  .opacity-70 {
    opacity: .7;
  }

  .opacity-80 {
    opacity: .8;
  }

  .opacity-100 {
    opacity: 1;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_1px_2px_rgba\(15\,23\,42\,0\.06\)\] {
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, #0f172a0f);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring, .ring-1 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-amber-200 {
    --tw-ring-color: var(--color-amber-200);
  }

  .ring-amber-400 {
    --tw-ring-color: var(--color-amber-400);
  }

  .ring-emerald-200 {
    --tw-ring-color: var(--color-emerald-200);
  }

  .ring-indigo-200 {
    --tw-ring-color: var(--color-indigo-200);
  }

  .ring-indigo-300 {
    --tw-ring-color: var(--color-indigo-300);
  }

  .ring-rose-200 {
    --tw-ring-color: var(--color-rose-200);
  }

  .ring-rose-500 {
    --tw-ring-color: var(--color-rose-500);
  }

  .ring-slate-300 {
    --tw-ring-color: var(--color-slate-300);
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-blur-\[1px\] {
    --tw-backdrop-blur: blur(1px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }

  .\[agentkeepalive\:deprecated\] {
    agentkeepalive: deprecated;
  }

  .\[ard\:demande-intra\] {
    ard: demande-intra;
  }

  .\[places\:N\] {
    places: N;
  }

  .ring-inset {
    --tw-ring-inset: inset;
  }

  @media (hover: hover) {
    .group-hover\:border-indigo-400:is(:where(.group):hover *) {
      border-color: var(--color-indigo-400);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-indigo-500:is(:where(.group):hover *) {
      color: var(--color-indigo-500);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-indigo-600:is(:where(.group):hover *) {
      color: var(--color-indigo-600);
    }
  }

  .placeholder\:text-slate-300::placeholder {
    color: var(--color-slate-300);
  }

  .placeholder\:text-slate-400::placeholder {
    color: var(--color-slate-400);
  }

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  @media (hover: hover) {
    .hover\:border-indigo-300:hover {
      border-color: var(--color-indigo-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-rose-300:hover {
      border-color: var(--color-rose-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-slate-300:hover {
      border-color: var(--color-slate-300);
    }
  }

  @media (hover: hover) {
    .hover\:border-slate-400:hover {
      border-color: var(--color-slate-400);
    }
  }

  @media (hover: hover) {
    .hover\:border-slate-500:hover {
      border-color: var(--color-slate-500);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-50:hover {
      background-color: var(--color-amber-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-100:hover {
      background-color: var(--color-amber-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-600:hover {
      background-color: var(--color-amber-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-amber-700:hover {
      background-color: var(--color-amber-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-50:hover {
      background-color: var(--color-emerald-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-100:hover {
      background-color: var(--color-emerald-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-100\/80:hover {
      background-color: #d0fae5cc;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-emerald-100\/80:hover {
        background-color: color-mix(in oklab, var(--color-emerald-100) 80%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-600:hover {
      background-color: var(--color-emerald-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-emerald-700:hover {
      background-color: var(--color-emerald-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-50:hover {
      background-color: var(--color-indigo-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-50\/60:hover {
      background-color: #eef2ff99;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-indigo-50\/60:hover {
        background-color: color-mix(in oklab, var(--color-indigo-50) 60%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-100:hover {
      background-color: var(--color-indigo-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-indigo-700:hover {
      background-color: var(--color-indigo-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-orange-100:hover {
      background-color: var(--color-orange-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-rose-50:hover {
      background-color: var(--color-rose-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-rose-100:hover {
      background-color: var(--color-rose-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-rose-200:hover {
      background-color: var(--color-rose-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-rose-700:hover {
      background-color: var(--color-rose-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-50:hover {
      background-color: var(--color-slate-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-50\/40:hover {
      background-color: #f8fafc66;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-50\/40:hover {
        background-color: color-mix(in oklab, var(--color-slate-50) 40%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-50\/50:hover {
      background-color: #f8fafc80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-50\/50:hover {
        background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-50\/60:hover {
      background-color: #f8fafc99;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-50\/60:hover {
        background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-100:hover {
      background-color: var(--color-slate-100);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-200:hover {
      background-color: var(--color-slate-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-200\/80:hover {
      background-color: #e2e8f0cc;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-slate-200\/80:hover {
        background-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-300:hover {
      background-color: var(--color-slate-300);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-600:hover {
      background-color: var(--color-slate-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-700:hover {
      background-color: var(--color-slate-700);
    }
  }

  @media (hover: hover) {
    .hover\:bg-slate-800:hover {
      background-color: var(--color-slate-800);
    }
  }

  @media (hover: hover) {
    .hover\:bg-violet-50:hover {
      background-color: var(--color-violet-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:text-amber-700:hover {
      color: var(--color-amber-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-600:hover {
      color: var(--color-emerald-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-emerald-700:hover {
      color: var(--color-emerald-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-500:hover {
      color: var(--color-indigo-500);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-600:hover {
      color: var(--color-indigo-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-700:hover {
      color: var(--color-indigo-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-800:hover {
      color: var(--color-indigo-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-900:hover {
      color: var(--color-indigo-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-red-600:hover {
      color: var(--color-red-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-rose-500:hover {
      color: var(--color-rose-500);
    }
  }

  @media (hover: hover) {
    .hover\:text-rose-600:hover {
      color: var(--color-rose-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-rose-700:hover {
      color: var(--color-rose-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-slate-500:hover {
      color: var(--color-slate-500);
    }
  }

  @media (hover: hover) {
    .hover\:text-slate-600:hover {
      color: var(--color-slate-600);
    }
  }

  @media (hover: hover) {
    .hover\:text-slate-700:hover {
      color: var(--color-slate-700);
    }
  }

  @media (hover: hover) {
    .hover\:text-slate-800:hover {
      color: var(--color-slate-800);
    }
  }

  @media (hover: hover) {
    .hover\:text-slate-900:hover {
      color: var(--color-slate-900);
    }
  }

  @media (hover: hover) {
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-80:hover {
      opacity: .8;
    }
  }

  @media (hover: hover) {
    .hover\:shadow-sm:hover {
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  .focus\:border-indigo-300:focus {
    border-color: var(--color-indigo-300);
  }

  .focus\:border-indigo-400:focus {
    border-color: var(--color-indigo-400);
  }

  .focus\:border-slate-900:focus {
    border-color: var(--color-slate-900);
  }

  .focus\:border-transparent:focus {
    border-color: #0000;
  }

  .focus\:ring-1:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-2:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-emerald-300:focus {
    --tw-ring-color: var(--color-emerald-300);
  }

  .focus\:ring-indigo-200:focus {
    --tw-ring-color: var(--color-indigo-200);
  }

  .focus\:ring-indigo-300:focus {
    --tw-ring-color: var(--color-indigo-300);
  }

  .focus\:ring-indigo-400:focus {
    --tw-ring-color: var(--color-indigo-400);
  }

  .focus\:ring-indigo-500:focus {
    --tw-ring-color: var(--color-indigo-500);
  }

  .focus\:outline:focus {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }

  .disabled\:bg-slate-50:disabled {
    background-color: var(--color-slate-50);
  }

  .disabled\:bg-slate-300:disabled {
    background-color: var(--color-slate-300);
  }

  .disabled\:text-slate-400:disabled {
    color: var(--color-slate-400);
  }

  .disabled\:text-slate-500:disabled {
    color: var(--color-slate-500);
  }

  .disabled\:opacity-40:disabled {
    opacity: .4;
  }

  .disabled\:opacity-50:disabled {
    opacity: .5;
  }

  .disabled\:opacity-60:disabled {
    opacity: .6;
  }

  @media (min-width: 40rem) {
    .sm\:flex {
      display: flex;
    }
  }

  @media (min-width: 40rem) {
    .sm\:hidden {
      display: none;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline {
      display: inline;
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:p-6 {
      padding: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 48rem) {
    .md\:block {
      display: block;
    }
  }

  @media (min-width: 48rem) {
    .md\:flex {
      display: flex;
    }
  }

  @media (min-width: 48rem) {
    .md\:inline {
      display: inline;
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 64rem) {
    .lg\:hidden {
      display: none;
    }
  }

  @media (min-width: 64rem) {
    .lg\:inline {
      display: inline;
    }
  }

  @media (min-width: 64rem) {
    .lg\:min-w-\[280px\] {
      min-width: 280px;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 64rem) {
    .lg\:overflow-x-auto {
      overflow-x: auto;
    }
  }

  @media (min-width: 80rem) {
    .xl\:flex {
      display: flex;
    }
  }
}

body {
  color: #1e293b;
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #f8fafc;
}

.card {
  background: #fff;
  border-radius: .75rem;
  box-shadow: 0 1px 3px #0000000a, 0 1px 2px -1px #0000000a;
}

.card-hover:hover {
  box-shadow: 0 4px 6px -1px #0000000f, 0 2px 4px -2px #0000000a;
}

.bms-calendar .card {
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: .75rem;
  box-shadow: 0 1px 2px #0000000d;
}

#fdbar {
  color: #334155;
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  align-items: center;
  gap: 14px;
  padding: 6px 16px;
  font-size: 12px;
  display: flex;
}

#fdbar .fd-lab {
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: 10px;
  font-weight: 600;
}

#fdbar .fd-case {
  cursor: pointer;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 2px 8px;
  display: inline-flex;
}

#fdbar .fd-case:hover {
  border-color: #cbd5e1;
}

#fdbar .fd-case:has(input:checked) {
  color: #4338ca;
  background: #eef2ff;
  border-color: #4f46e5;
  font-weight: 600;
}

#fdbar .fd-case input {
  accent-color: #4f46e5;
  cursor: pointer;
  margin: 0;
}

#fdbar .fd-n {
  color: #64748b;
  background: #f1f5f9;
  border-radius: 4px;
  padding: 1px 5px;
  font-size: 10px;
  font-weight: 600;
}

#fdbar .fd-case:has(input:checked) .fd-n {
  color: #4338ca;
  background: #e0e7ff;
}

#fdbar .fd-note {
  color: #94a3b8;
  margin-left: auto;
  font-size: 11px;
}

#fdbar[aria-busy="true"] {
  opacity: .6;
}

#content .stub.fd-vide {
  margin-bottom: 12px;
}

.odmenu {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.odmenu[aria-busy="true"] {
  opacity: .6;
}

.odsel {
  font: inherit;
  color: var(--ink-500);
  cursor: pointer;
  background: none;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 3px 6px;
  font-size: 12px;
}

.odsel:hover {
  color: var(--ink-700);
  background: #f8fafc;
}

.odpastille {
  white-space: nowrap;
  color: #92400e;
  background: #fef3c7;
  border: 1px solid #fde68a;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 600;
}

.hsmenu {
  flex-shrink: 0;
  align-items: center;
  display: inline-flex;
  position: relative;
}

.hsmenu[aria-busy="true"] {
  opacity: .6;
}

.hsbtn {
  font: inherit;
  color: var(--ink-500);
  white-space: nowrap;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  font-size: 12px;
  display: inline-flex;
}

.hsbtn:hover {
  color: var(--ink-700);
  background: #f8fafc;
}

.hsbtn .chev {
  font-size: 9px;
}

.hsbtn.on {
  color: #5b21b6;
  background: #ede9fe;
  border-color: #c4b5fd;
  border-radius: 999px;
  font-weight: 600;
}

.hsbtn.on:hover {
  background: #ddd6fe;
}

.hsbtn.hsfixe {
  cursor: default;
}

.hspanneau {
  z-index: 80;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 8px;
  flex-direction: column;
  gap: 10px;
  width: 300px;
  padding: 12px;
  display: flex;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  box-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
}

.hspanneau p {
  margin: 0;
}

.hstitre {
  color: var(--ink-700);
  font-size: 12px;
  line-height: 1.4;
}

.hstitre b {
  color: var(--ink-900);
  font-weight: 600;
}

.hsform {
  gap: 6px;
  display: flex;
}

.hsdate {
  min-width: 0;
  font: inherit;
  color: var(--ink-900);
  border: 1px solid var(--line-2);
  border-radius: 7px;
  flex: auto;
  padding: 5px 8px;
  font-size: 12.5px;
}

.hssauts {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.hspanneau .btn {
  padding: 5px 10px;
}

.hserreur {
  color: var(--err, #b91c1c);
  font-size: 12px;
}

.hsnote {
  color: var(--ink-500);
  font-size: 11px;
  line-height: 1.4;
}

.hsautre {
  z-index: 200;
  color: #4c1d95;
  background: #f5f3ff;
  border: 1px solid #c4b5fd;
  border-radius: 10px;
  align-items: center;
  gap: 12px;
  max-width: 640px;
  margin: 0 auto;
  padding: 10px 12px;
  font-size: 12.5px;
  line-height: 1.45;
  display: flex;
  position: fixed;
  bottom: 16px;
  left: 16px;
  right: 16px;
  box-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
}

.hsautre > span {
  flex: auto;
  min-width: 0;
}

.hsautre .btn {
  flex-shrink: 0;
  padding: 5px 10px;
}

@media (max-width: 640px) {
  #topbar > #topright:not(:empty) {
    flex-wrap: wrap;
    flex: 100%;
    gap: 6px 8px;
    min-width: 0;
  }

  #topright .odmenu {
    display: contents;
  }

  .hsbtn {
    padding: 4px 6px;
  }

  .hsbtn .hsauj, .hsbtn .hspre, .hsbtn .chev {
    display: none;
  }

  .hspanneau {
    top: var(--hs-haut, 56px);
    width: auto;
    position: fixed;
    left: 16px;
    right: 16px;
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-ordinal {
  syntax: "*";
  inherits: false
}

@property --tw-slashed-zero {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-figure {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

/* [project]/src/app/v182.css [app-client] (css) */
:root {
  --bg: #f8fafc;
  --surface: #fff;
  --ink-900: #0f172a;
  --ink-800: #1e293b;
  --ink-700: #334155;
  --ink-500: #64748b;
  --ink-400: #94a3b8;
  --ink-300: #cbd5e1;
  --line: #f1f5f9;
  --line-2: #e2e8f0;
  --primary: #4f46e5;
  --primary-dark: #4338ca;
  --primary-50: #eef2ff;
  --ok: #059669;
  --ok-50: #ecfdf5;
  --warn: #d97706;
  --warn-50: #fffbeb;
  --err: #e11d48;
  --err-50: #fff1f2;
  --info: #2563eb;
  --info-50: #eff6ff;
  --sh-carte: 0 1px 3px 0 #0000000a,0 1px 2px -1px #0000000a;
  --sh-hover: 0 4px 6px -1px #0000000f,0 2px 4px -2px #0000000a;
  --app-delivia: #4f46e5;
  --app-apprenant: #0284c7;
  --app-treso: #059669;
  --app-dash: #7c3aed;
  --fenetre-largeur: 1040px;
  --fenetre-hauteur-max: 88vh;
  --fenetre-colonne: 680px;
}

@layer base {
  * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }

  html {
    -webkit-font-smoothing: antialiased;
  }

  button {
    font: inherit;
    cursor: pointer;
    color: inherit;
    background: none;
    border: none;
  }
}

body {
  background: var(--bg);
  color: var(--ink-800);
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 14px;
  line-height: normal;
}

html {
  line-height: normal;
}

#app {
  min-height: 100vh;
  display: flex;
}

#sidebar {
  width: 248px;
  box-shadow: 1px 0 0 0 var(--line);
  background: #fff;
  flex-direction: column;
  flex-shrink: 0;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
  overflow-y: auto;
}

#appzone {
  background: #e2e8f0;
  border-radius: 14px;
  margin: 4px 10px 2px;
  padding: 7px 6px 6px;
}

.brand {
  padding: 18px 20px 10px;
}

.brand .word {
  letter-spacing: -.02em;
  color: var(--ink-900);
  font-size: 17px;
  font-weight: 600;
}

.brand .word em {
  font-style: italic;
  font-weight: 700;
}

.brand .tri {
  border-radius: 2px;
  width: 64px;
  height: 3px;
  margin-top: 5px;
  display: flex;
  overflow: hidden;
}

.brand .tri i {
  flex: 1;
}

.brand .tri i:first-child {
  background: #4379f2;
}

.brand .tri i:nth-child(2) {
  background: #eef0f4;
}

.brand .tri i:nth-child(3) {
  background: #f21b1b;
}

.brand .plt {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-400);
  margin-top: 7px;
  font-size: 10px;
  font-weight: 500;
}

.nav-label {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-900);
  padding: 4px 12px 6px;
  font-size: 10px;
  font-weight: 700;
}

.apptab {
  width: 100%;
  color: var(--ink-700);
  text-align: left;
  border-radius: 9px;
  align-items: center;
  gap: 10px;
  margin: 1px 0;
  padding: 8px 12px;
  font-size: 13.5px;
  font-weight: 500;
  transition: background .12s, color .12s, box-shadow .12s;
  display: flex;
}

.apptab:hover {
  color: var(--ink-900);
  background: #ffffff8c;
}

.apptab .dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
}

.apptab.active {
  color: var(--ink-900);
  box-shadow: var(--sh-carte);
  background: #fff;
  font-weight: 600;
}

.apptab .lock {
  color: var(--ink-400);
  margin-left: auto;
  font-size: 10px;
}

.appsw {
  width: 100%;
  color: var(--ink-900);
  box-shadow: var(--sh-carte);
  text-align: left;
  background: #fff;
  border-radius: 9px;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  font-size: 13.5px;
  font-weight: 600;
  display: flex;
}

.appsw .dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
}

.appsw .nm {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.appzl {
  cursor: pointer;
  border-radius: 7px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.appzl .chev {
  color: var(--ink-400);
  flex-shrink: 0;
  margin-right: -2px;
  transition: transform .16s;
}

#appzone.open .appzl .chev {
  transform: rotate(180deg);
}

#appzone.seul .appzl {
  cursor: default;
}

#appzone.seul .appzl .chev {
  display: none;
}

.appzl:hover {
  color: var(--ink-900);
}

.appmenu {
  border-top: 1px solid #ffffffb3;
  margin-top: 3px;
  padding-top: 3px;
}

.appmenu .apptab {
  font-size: 13px;
}

.navfold {
  margin-top: 6px;
}

.navfold > summary {
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-400);
  align-items: center;
  gap: 6px;
  padding: 12px 20px 4px;
  font-size: 10px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.navfold > summary::-webkit-details-marker {
  display: none;
}

.navfold > summary:hover {
  color: var(--ink-700);
}

.navfold > summary .chev {
  color: var(--ink-300);
  font-size: 9px;
  transition: transform .15s;
}

.navfold[open] > summary .chev {
  transform: rotate(90deg);
}

#subnav {
  padding-top: 6px;
  padding-bottom: 8px;
}

#subnav .appctx {
  text-transform: uppercase;
  letter-spacing: .08em;
  align-items: center;
  gap: 6px;
  padding: 10px 20px 2px;
  font-size: 10px;
  font-weight: 600;
  display: flex;
}

#subnav .appctx .dot {
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.subgrp {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-400);
  padding: 12px 20px 4px;
  font-size: 10px;
  font-weight: 600;
}

.subgrp2 {
  color: var(--ink-300);
  letter-spacing: .04em;
  padding: 9px 20px 3px 28px;
  font-size: 10px;
  font-weight: 600;
}

.subtab {
  width: calc(100% - 28px);
  color: var(--ink-500);
  text-align: left;
  border-radius: 7px;
  align-items: center;
  gap: 8px;
  margin: 1px 8px 1px 20px;
  padding: 6px 11px;
  font-size: 13px;
  display: flex;
}

.subtab:hover {
  background: var(--bg);
  color: var(--ink-700);
}

.tabn {
  background: var(--warn-50);
  color: var(--warn);
  font-variant-numeric: tabular-nums;
  border-radius: 999px;
  margin-left: auto;
  padding: 1px 7px;
  font-size: 10.5px;
  font-weight: 700;
}

.subtab.active {
  background: var(--bg);
  color: var(--ink-900);
  font-weight: 600;
}

.subtab.active:before {
  content: "";
  background: var(--accent, #4f46e5);
  border-radius: 2px;
  width: 3px;
  height: 14px;
  margin-left: -8px;
  margin-right: 5px;
}

.side-note {
  color: var(--ink-400);
  border-top: 1px solid var(--line);
  margin-top: auto;
  padding: 14px 20px;
  font-size: 11px;
  line-height: 1.5;
}

#main {
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
}

#topbar {
  height: 52px;
  box-shadow: 0 1px 0 0 var(--line);
  z-index: 30;
  background: #fff;
  align-items: center;
  gap: 12px;
  padding: 0 20px;
  display: flex;
  position: sticky;
  top: 0;
}

#crumb {
  color: var(--ink-900);
  font-size: 14px;
  font-weight: 600;
}

#crumb .sep {
  color: var(--ink-300);
  margin: 0 6px;
  font-weight: 400;
}

#content {
  flex: 1;
  padding: 20px 24px 60px;
}

#content:has(.board) {
  padding-bottom: 14px;
}

.pagehead {
  margin-bottom: 14px;
}

.pagehead h1 {
  letter-spacing: -.01em;
  color: var(--ink-900);
  font-size: 20px;
  font-weight: 600;
}

.pagehead p {
  color: var(--ink-500);
  max-width: 760px;
  margin-top: 3px;
  font-size: 13px;
}

.chips {
  background: #f1f5f9;
  border-radius: 9px;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  margin: 2px 10px 14px 0;
  padding: 5px;
  display: inline-flex;
}

.chips .grp {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-400);
  padding: 0 6px;
  font-size: 10px;
  font-weight: 600;
}

.chips button {
  color: var(--ink-500);
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12.5px;
  font-weight: 500;
}

.chips button.active {
  color: var(--ink-900);
  box-shadow: var(--sh-carte);
  background: #fff;
  font-weight: 600;
}

.chips.avec-n button {
  align-items: center;
  gap: 7px;
  display: inline-flex;
}

.chips.avec-n .n {
  min-width: 18px;
  color: var(--ink-500);
  text-align: center;
  font-variant-numeric: tabular-nums;
  background: #e2e8f0;
  border-radius: 999px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 600;
  line-height: 18px;
}

.chips.avec-n button.active .n {
  background: var(--primary-50);
  color: var(--primary);
}

.kb-title {
  color: var(--ink-900);
  align-items: center;
  gap: 8px;
  margin: 18px 0 10px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.kb-title .who {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 500;
}

.board {
  align-items: stretch;
  gap: 12px;
  min-height: 320px;
  padding-bottom: 6px;
  display: flex;
  overflow: auto hidden;
}

.col {
  border: 1px solid var(--line);
  background: #f8fafce6;
  border-radius: 12px;
  flex-direction: column;
  flex: 1 0 272px;
  min-width: 272px;
  min-height: 0;
  padding: 10px;
  display: flex;
}

.colbody {
  flex: 1;
  min-height: 0;
  margin-right: -2px;
  padding-right: 2px;
  overflow-y: auto;
}

.colbody::-webkit-scrollbar {
  width: 6px;
}

.colbody::-webkit-scrollbar-thumb {
  background: var(--line-2);
  border-radius: 3px;
}

.col-h {
  align-items: center;
  gap: 7px;
  padding: 2px 4px 8px;
  display: flex;
}

.col-h .pill {
  background: var(--ink-400);
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
}

.col-h h3 {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-900);
  font-size: 11px;
  font-weight: 700;
}

.col-h .n {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  margin-left: auto;
  font-size: 11px;
}

.col-open {
  color: var(--info);
  background: var(--info-50);
  border-radius: 6px;
  margin: 0 2px 8px;
  padding: 4px 8px;
  font-size: 10.5px;
  line-height: 1.45;
  display: block;
}

.procgrid {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 14px;
  display: grid;
}

.proccard {
  box-shadow: var(--sh-carte);
  text-align: left;
  background: #fff;
  border-radius: 12px;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding: 18px 20px;
  transition: box-shadow .14s, transform .14s;
  display: flex;
}

.proccard:hover {
  box-shadow: var(--sh-hover);
  transform: translateY(-1px);
}

.pc-t {
  color: var(--ink-900);
  font-size: 15px;
  font-weight: 600;
}

.pc-a {
  color: var(--primary-dark);
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  display: inline-flex;
}

.pc-fl {
  transition: transform .14s;
}

.proccard:hover .pc-fl {
  transform: translateX(3px);
}

.rl {
  border-top: 1px solid var(--line);
  color: var(--ink-900);
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  padding: 9px 2px;
  font-size: 13.5px;
  line-height: 1.5;
  display: flex;
}

.sect-h + .rl, .rl-g + .rl {
  border-top: none;
}

.rl.pas .rl-t, .rl.pas .rl-ac {
  color: var(--ink-400);
}

.rl.pas .rl-ac {
  font-weight: 500;
}

.rl-b {
  border: 1.5px solid var(--ink-300);
  border-radius: 4px;
  flex: none;
  align-self: center;
  width: 15px;
  height: 15px;
}

.process-drag-handle {
  color: var(--ink-500);
  cursor: grab;
  touch-action: none;
  background: none;
  border: 0;
  flex: none;
  padding: 4px 2px;
  font-size: 20px;
  line-height: 1;
}

.process-drag-handle:active {
  cursor: grabbing;
}

.process-drag-handle:disabled {
  opacity: .4;
  cursor: wait;
}

.process-drag-handle:focus-visible {
  outline-offset: 2px;
  border-radius: 4px;
  outline: 2px solid #2563eb;
}

.process-dragging {
  opacity: .4;
}

.process-drop-before {
  box-shadow: inset 0 3px #2563eb;
}

.process-drop-after {
  box-shadow: inset 0 -3px #2563eb;
}

.process-drop-end {
  border: 1px dashed var(--ink-300);
  color: var(--ink-500);
  text-align: center;
  border-radius: 6px;
  margin: 6px 0;
  padding: 12px;
  font-size: 12px;
}

.process-drop-idle {
  visibility: hidden;
  pointer-events: none;
}

.rl-oeil {
  width: 22px;
  height: 22px;
  color: var(--ink-400);
  border-radius: 6px;
  flex: none;
  justify-content: center;
  align-self: center;
  align-items: center;
  display: flex;
}

.rl-oeil:hover {
  color: var(--ink-700);
  background: #f1f5f9;
}

.rl-oeil.off {
  color: var(--ink-300);
}

.rl.off .rl-t, .rl.off .rl-ac {
  color: var(--ink-300);
  text-decoration: line-through;
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
}

.rl.off .rl-r, .rl.off .rt-nat, .rl.off .rl-tpl {
  opacity: .45;
}

.railnote {
  color: var(--ink-500);
  align-self: center;
  padding-left: 11px;
  font-size: 11.5px;
}

.raillg {
  color: var(--ink-500);
  align-items: center;
  gap: 14px;
  margin-left: auto;
  font-size: 11.5px;
  display: flex;
}

.raillg span {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.raillg .lg {
  border-radius: 3px;
  width: 9px;
  height: 9px;
  display: inline-block;
}

@media (max-width: 600px) {
  .raillg {
    flex-wrap: wrap;
    gap: 8px 14px;
    width: 100%;
    margin-left: 0;
  }

  .raillg .lg {
    flex-shrink: 0;
  }
}

.raillg .lg.bouton {
  background: #a7f3d0;
}

.raillg .lg.detectee {
  background: #c4b5fd;
}

.raillg .lg.executee {
  background: #a5b4fc;
}

.raillg .lg.manuelle {
  background: var(--bd, #e2e8f0);
}

.raillg .lg.tpl {
  background: #fcd34d;
}

.railacts {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  display: flex;
}

.railacts .ilink {
  font-size: 12px;
}

.rl-r {
  white-space: nowrap;
  border-radius: 5px;
  flex: none;
  padding: 2px 9px;
  font-size: 11.5px;
  font-weight: 600;
}

.rl-r.fia {
  color: #4338ca;
  background: #eef2ff;
}

.rl-r.closer {
  color: #047857;
  background: #ecfdf5;
}

.rl-r.setter {
  color: #0e7490;
  background: #ecfeff;
}

.rl-r.formateur {
  color: #6d28d9;
  background: #f5f3ff;
}

.rl-r.client {
  color: #c2410c;
  background: #fff7ed;
}

.rl-r.multi {
  color: var(--ink-500);
  background: #f1f5f9;
}

.rl-t {
  flex: 1;
  min-width: 200px;
}

.rl-ac {
  color: var(--ink-900);
  font-weight: 600;
}

.rl-tpl {
  color: #92400e;
  background: var(--warn-50);
  border: 1px solid #0000;
  border-radius: 4px;
  padding: 1px 7px;
  font-size: 10.5px;
}

.rl-tpl:hover {
  border-color: #fcd34d;
}

.rl-a {
  opacity: 0;
  white-space: nowrap;
  order: 1;
  align-items: baseline;
  gap: 9px;
  margin-left: auto;
  font-size: 11px;
  transition: opacity .12s;
  display: flex;
}

.rl-a .rl-fl {
  gap: 5px;
  margin-right: 3px;
  display: inline-flex;
}

.rl .rl-tpl {
  order: 3;
}

.rl-geste {
  text-align: right;
  order: 2;
  min-width: 170px;
  font-size: 11px;
}

.rl-geste .rl-btn {
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
  max-width: 170px;
  color: var(--ink-700);
  background: var(--line-2);
  border-radius: 5px;
  padding: 1px 8px;
  font-weight: 600;
  display: inline-block;
  overflow: hidden;
}

.rl-geste[data-onbgeste="document"] .rl-btn {
  color: #6d28d9;
  background: #f5f3ff;
}

.rl-geste[data-onbgeste="popup"] .rl-btn {
  color: #92400e;
  background: var(--warn-50);
}

.rl .rt-nat {
  text-align: center;
  order: 4;
  min-width: 150px;
}

.rl .rt-nat.vide {
  background: none;
  padding: 0;
}

.railsec .rl-r {
  text-align: center;
  min-width: 84px;
}

.rl:hover .rl-a {
  opacity: 1;
}

.rl-a .ilink {
  font-size: 11px;
}

.process-task-open {
  text-align: left;
  font: inherit;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0;
}

.process-task-open.rl-t {
  color: inherit;
}

.process-task-open:focus-visible {
  outline-offset: 4px;
  border-radius: 3px;
  outline: 2px solid #8b7cf8;
}

.rl:focus-within .rl-a {
  opacity: 1;
}

.process-template-badges {
  flex-wrap: wrap;
  order: 3;
  justify-content: flex-end;
  gap: 4px;
  max-width: 32%;
  display: flex;
}

.process-template-badges:empty {
  display: none;
}

.bibliotheque-famille {
  background: var(--surface, #fff);
  border: 1px solid #e2e7ef;
  border-radius: 10px;
  overflow: hidden;
}

.bibliotheque-famille summary {
  cursor: pointer;
  padding: 15px 16px;
  font-weight: 600;
}

.bibliotheque-famille summary > .sm {
  float: right;
  font-weight: 400;
}

.bibliotheque-ligne {
  align-items: center;
  gap: 16px;
  min-width: 0;
  padding: 12px 16px;
  display: flex;
}

.bibliotheque-ligne + .bibliotheque-ligne, .bibliotheque-famille details[open] .bibliotheque-ligne {
  border-top: 1px solid #edf0f5;
}

.bibliotheque-ligne > span {
  overflow-wrap: anywhere;
  flex: 1;
  min-width: 0;
}

.bibliotheque-actions {
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  margin-left: auto;
  display: flex;
}

@media (max-width: 680px) {
  .bibliotheque-ligne {
    flex-wrap: wrap;
  }

  .bibliotheque-actions {
    justify-content: space-between;
    width: 100%;
  }

  .bibliotheque-famille summary > .sm {
    float: none;
    margin-top: 5px;
    display: block;
  }
}

.process-template-badges .rl-tpl {
  color: #137444;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  background: #e9f6ef;
  max-width: 240px;
  overflow: hidden;
}

.process-template-badges .rl-tpl:hover {
  border-color: #95cdb0;
}

.rl-g {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-400);
  align-items: center;
  gap: 10px;
  margin: 14px 0 2px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
}

.rl-g [contenteditable] {
  border-radius: 4px;
  margin-left: -5px;
  padding: 1px 5px;
}

.rl-g [contenteditable]:hover {
  background: #f1f5f9;
}

.rl-g [contenteditable]:focus {
  background: var(--primary-50);
  color: var(--primary-dark);
  outline: none;
}

.rl-g .ilink {
  text-transform: none;
  letter-spacing: 0;
  opacity: 0;
  font-size: 10px;
  font-weight: 600;
  transition: opacity .12s;
}

.rl-g:hover .ilink {
  opacity: 1;
}

.rl-vide {
  color: var(--ink-400);
  padding: 10px 2px;
  font-size: 12.5px;
}

.rt-head {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  border-bottom: 1px solid var(--line-2);
  z-index: 1;
  background: #fbfcfd;
  grid-template-columns: 96px 72px minmax(0, 1fr);
  gap: 10px;
  padding: 0 4px 6px;
  font-size: 9.5px;
  font-weight: 700;
  display: grid;
  position: sticky;
  top: 0;
}

.rtask {
  border-bottom: 1px solid var(--line);
  grid-template-columns: 96px 72px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 9px 4px;
  font-size: 12.5px;
  display: grid;
}

.rtask .rt-do {
  min-width: 0;
}

.rt-lbl {
  overflow-wrap: anywhere;
}

.rtask:last-of-type {
  border-bottom: none;
}

.rtask .rt-c {
  color: var(--ink-500);
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.35;
}

.rt-lbl {
  color: var(--ink-900);
  line-height: 1.45;
}

.rt-sm {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11px;
}

.rt-cas {
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
  display: flex;
}

.rt-p {
  color: var(--ink-300);
  cursor: pointer;
  white-space: nowrap;
  background: #f1f5f9;
  border: 1px solid #0000;
  border-radius: 4px;
  padding: 1px 6px;
  font-size: 10px;
}

.rt-p.on {
  background: var(--primary-50);
  color: var(--primary-dark);
  font-weight: 600;
}

.rt-p:hover {
  border-color: #c7d2fe;
}

.rt-p.tpl {
  background: var(--warn-50);
  color: #92400e;
}

.rt-nat {
  white-space: nowrap;
  border-radius: 4px;
  padding: 1px 6px;
  font-size: 10px;
  font-weight: 600;
}

.rt-nat.detectee {
  color: #6d28d9;
  background: #f5f3ff;
}

.rt-nat.executee {
  color: #4338ca;
  background: #eef2ff;
}

.rt-nat.bouton {
  background: var(--ok-50);
  color: var(--ok);
}

.rt-acts {
  opacity: 0;
  gap: 9px;
  margin-top: 6px;
  font-size: 11px;
  transition: opacity .12s;
  display: flex;
}

.rtask:hover .rt-acts {
  opacity: 1;
}

.rt-acts .ilink {
  font-size: 11px;
}

.rt-vide {
  color: var(--ink-400);
  padding: 12px 4px;
  font-size: 12px;
}

.rt-add {
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 2px 2px;
  display: flex;
}

.apercuboard .col {
  flex: 0 0 320px;
  min-width: 320px;
}

.aptask {
  border-bottom: 1px solid var(--line);
  align-items: flex-start;
  gap: 9px;
  padding: 9px 4px;
  font-size: 12.5px;
  display: flex;
}

.aptask:last-child {
  border-bottom: none;
}

.aptask .box {
  border: 1.5px solid var(--line-2);
  background: #fff;
  border-radius: 4px;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  margin-top: 2px;
}

.aptask.mine .box {
  border-color: var(--ink-300);
}

.aptask .ap-x {
  flex: 1;
  min-width: 0;
}

.aptask .ap-t {
  color: var(--ink-500);
  overflow-wrap: anywhere;
  line-height: 1.45;
}

.aptask.mine .ap-t {
  color: var(--ink-900);
}

.aptask .ap-m {
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 5px;
  display: flex;
}

.col-open a {
  color: inherit;
  text-underline-offset: 2px;
  font-weight: 600;
  text-decoration: underline;
}

.col.locked {
  border-style: dashed;
  border-color: var(--line-2);
  background: repeating-linear-gradient(-45deg, #f8fafc 0 10px, #f4f6f9 10px 11px);
}

.col.locked .col-h h3 {
  color: var(--ink-400);
}

.col.locked .card {
  opacity: .55;
  filter: grayscale(.5);
}

.col.locked .card:hover {
  opacity: .8;
}

.lockbar {
  color: var(--ink-500);
  background: #eef1f5;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  margin: 0 2px 8px;
  padding: 5px 8px;
  font-size: 10.5px;
  line-height: 1.35;
  display: flex;
}

.lockbar button {
  color: var(--primary);
  white-space: nowrap;
  margin-left: auto;
  font-size: 10.5px;
  font-weight: 600;
}

.lockbar button:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.card.waitlock {
  background: #fbfcfd;
}

.card.waitlock .t {
  color: var(--ink-500);
}

.lockstrip {
  color: var(--ink-500);
  background: #f1f5f9;
  border-radius: 10px 10px 0 0;
  align-items: center;
  gap: 6px;
  margin: -9px -11px 9px;
  padding: 6px 12px;
  font-size: 10.5px;
  line-height: 1.35;
  display: flex;
}

.lockstrip b {
  color: var(--ink-700);
  font-weight: 600;
}

.lockstrip .dim {
  color: var(--ink-400);
}

.lockstrip a {
  color: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  margin-left: auto;
  font-weight: 600;
}

.lockstrip a:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.openline {
  color: var(--ink-500);
  background: #eef1f5;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  margin-top: 9px;
  padding: 5px 8px;
  font-size: 11px;
  line-height: 1.4;
  display: flex;
}

.openline b {
  color: var(--ink-700);
  font-weight: 600;
}

.openline a {
  color: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  margin-left: auto;
  font-size: 10.5px;
  font-weight: 600;
}

.openline a:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.openline .b2 {
  flex: none;
  height: 22px;
  margin-left: auto;
}

.card {
  box-shadow: var(--sh-carte);
  background: #fff;
  border: 1px solid #dfe4ec;
  border-radius: 10px;
  margin-bottom: 9px;
  padding: 9px 11px;
  transition: box-shadow .15s, opacity .3s, transform .3s;
  position: relative;
}

.card:hover {
  box-shadow: var(--sh-hover);
}

.card.fresh {
  animation: .45s pop;
}

@keyframes pop {
  0% {
    opacity: 0;
    transform: scale(.92);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.card .t {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.card .s {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11px;
}

.badge {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 1.5px 8px;
  font-size: 10.5px;
  font-weight: 500;
  display: inline-flex;
}

.b-cpf {
  background: var(--info-50);
  color: var(--info);
}

.bar-cpf {
  background: #3b82f6;
}

.b-opco {
  color: #ea580c;
  background: #fff7ed;
}

.bar-opco {
  background: #f97316;
}

.b-vir {
  background: var(--ok-50);
  color: var(--ok);
}

.bar-vir {
  background: #10b981;
}

.b-mandat {
  color: #9333ea;
  background: #faf5ff;
}

.bar-mandat {
  background: #a855f7;
}

.b-wait {
  background: var(--warn-50);
  color: var(--warn);
}

.b-neutral {
  color: var(--ink-500);
  background: #f1f5f9;
}

.card .meta {
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
  display: flex;
}

.card .places {
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.4;
  overflow: hidden;
}

.card .places + .badge {
  margin-top: 5px;
}

.card .places.warn {
  color: var(--warn);
}

.card .places.ko {
  color: var(--err);
}

.card.st-other .places {
  color: var(--ink-300);
}

.tasks {
  flex-direction: column;
  gap: 2px;
  margin-top: 6px;
  padding-top: 2px;
  display: flex;
}

.tgrp {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  margin: 5px 0 2px;
  font-size: 10px;
  font-weight: 600;
}

.tor {
  color: var(--ink-300);
  align-items: center;
  gap: 8px;
  margin: 4px 0;
  font-size: 10px;
  font-weight: 600;
  display: flex;
}

.tor:before, .tor:after {
  content: "";
  background: var(--line-2);
  flex: 1;
  height: 1px;
}

.task {
  color: var(--ink-700);
  cursor: pointer;
  border-radius: 7px;
  align-items: flex-start;
  gap: 9px;
  margin: 0 -8px;
  padding: 6px 8px;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
}

.task:hover {
  background: var(--bg);
}

.task > .tx {
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 5px 8px;
  min-width: 0;
  display: flex;
}

.task > .tx > .lbl {
  flex: 250px;
  min-width: 0;
}

.ftask > span:not(.box) {
  flex-wrap: wrap;
  flex: 1;
  align-items: baseline;
  gap: 5px 8px;
  min-width: 0;
  display: flex;
}

.task .box {
  border: 1.5px solid var(--ink-300);
  border-radius: 4px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 15px;
  height: 15px;
  margin-top: 2px;
  transition: all .12s;
  display: flex;
}

.task.pending {
  cursor: default;
}

.task.pending .box {
  border-style: dashed;
  border-color: var(--ink-300);
  background: none;
}

.task.pending .box:after {
  content: "";
  background: var(--ink-300);
  border-radius: 50%;
  width: 4px;
  height: 4px;
}

.task.done .box {
  background: var(--primary);
  border-color: var(--primary);
}

.task.done .box:after {
  content: "";
  border-bottom: 1.8px solid #fff;
  border-left: 1.8px solid #fff;
  width: 8px;
  height: 4.5px;
  transform: rotate(-45deg)translate(.5px, -1px);
}

.task.done .lbl {
  color: var(--ink-400);
  text-decoration: line-through;
}

.task.notmine {
  color: var(--ink-400);
}

.task.other .box {
  border-color: var(--line-2);
  background: var(--bg);
}

.task.other.done .box {
  background: var(--ink-300);
  border-color: var(--ink-300);
}

.hrow .who, .ftask .who {
  color: var(--ink-500);
  background: var(--bg);
  white-space: nowrap;
  border-radius: 5px;
  margin-right: 7px;
  padding: 1px 6px;
  font-size: 11px;
  font-weight: 600;
}

.task .who, .ftask .who {
  color: var(--ink-500);
  white-space: normal;
  background: none;
  border-radius: 0;
  flex: 0 0 128px;
  padding: 0;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.35;
}

.ftask .who {
  background: none;
  margin: 0;
  padding: 0;
}

@media (max-width: 640px) {
  .task .who, .ftask .who {
    flex: none;
  }
}

.who.duo2 b {
  color: var(--ink-700);
  font-weight: 700;
}

.who.duo2 .sep {
  color: var(--ink-300);
  margin: 0 4px;
}

.task.notmine .who.duo2 b, .hrow:not(.mine) .who.duo2 b, .ftask:not(.mine) .who.duo2 b {
  color: var(--ink-500);
}

.task:not(.notmine) .who {
  color: var(--ink-600);
}

.task.done .who {
  color: var(--ink-300);
}

.task.next {
  background: var(--primary-50);
}

.task.next.notmine {
  background: #f1f5f9;
}

.task .tag {
  color: #92400e;
  background: var(--warn-50);
  white-space: nowrap;
  cursor: pointer;
  border: 1px solid #0000;
  border-radius: 5px;
  padding: 1px 7px;
  font-size: 11.5px;
}

.task .tag:hover {
  text-underline-offset: 2px;
  border-color: #fcd34d;
  text-decoration: underline;
}

#tplmodal {
  z-index: 200;
  background: #0f172a4d;
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
  position: fixed;
  inset: 0;
}

.tpl-canal {
  background: var(--ok-50);
  color: var(--ok);
  border-radius: 999px;
  align-items: center;
  gap: 5px;
  padding: 2px 9px;
  font-size: 10.5px;
  font-weight: 600;
  display: inline-flex;
}

.tpl-body {
  border: 1px solid var(--line-2);
  color: var(--ink-700);
  white-space: pre-line;
  background: #f8fafc;
  border-radius: 10px;
  padding: 12px 14px;
  font-size: 13px;
  line-height: 1.65;
}

.tpl-body .var {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-radius: 4px;
  padding: 0 4px;
  font-size: 12px;
  font-weight: 500;
}

.tpl-edit {
  border: 1px solid var(--line-2);
  width: 100%;
  min-height: 230px;
  color: var(--ink-800);
  resize: vertical;
  background: #fff;
  border-radius: 10px;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.65;
}

.tpl-edit:focus {
  border-color: var(--primary);
  outline: none;
}

.tpl-note {
  color: var(--ink-400);
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.5;
}

.docpage {
  max-width: 780px;
  margin: 0 auto;
}

.dp-head {
  border-bottom: 1px solid var(--line);
  align-items: flex-start;
  gap: 16px;
  padding-bottom: 14px;
  display: flex;
}

.dp-head h1 {
  letter-spacing: -.02em;
  color: var(--ink-900);
  font-size: 27px;
  font-weight: 700;
  line-height: 1.2;
}

.dp-title-in {
  letter-spacing: -.02em;
  color: var(--ink-900);
  border: none;
  border-bottom: 2px solid var(--primary);
  background: none;
  width: 100%;
  padding: 0 0 2px;
  font-family: inherit;
  font-size: 27px;
  font-weight: 700;
}

.dp-title-in:focus {
  outline: none;
}

.dp-meta {
  color: var(--ink-400);
  margin-top: 7px;
  font-size: 12px;
}

.dp-act {
  flex-shrink: 0;
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.dp-body {
  padding: 18px 0 4px;
}

.dp-bloc {
  padding: 3px 0;
  position: relative;
}

.dp-body.editing {
  padding-left: 0;
}

.dp-h2 {
  color: var(--ink-900);
  letter-spacing: -.01em;
  margin: 18px 0 4px;
  font-size: 17px;
  font-weight: 600;
}

.dp-p {
  color: var(--ink-700);
  margin: 6px 0;
  font-size: 15px;
  line-height: 1.75;
}

.dp-li {
  color: var(--ink-700);
  gap: 10px;
  margin: 3px 0;
  font-size: 15px;
  line-height: 1.7;
  display: flex;
}

.dp-pt {
  color: var(--ink-300);
  flex-shrink: 0;
}

.dp-box {
  border: 1.5px solid var(--ink-300);
  border-radius: 4px;
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  margin-top: 4px;
}

.dp-tx {
  flex: 1;
  min-width: 0;
}

.dp-callout {
  background: var(--warn-50);
  color: #92400e;
  border-radius: 9px;
  gap: 11px;
  margin: 12px 0;
  padding: 13px 15px;
  font-size: 14.5px;
  line-height: 1.65;
  display: flex;
}

.dp-callout .dp-ico {
  color: #d97706;
  flex-shrink: 0;
  margin-top: 2px;
}

.dp-video {
  aspect-ratio: 16 / 9;
  background: linear-gradient(145deg, #1e293b, #0f172a);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  display: flex;
}

.dp-play {
  color: #fff;
  background: #ffffff24;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 52px;
  height: 52px;
  padding-left: 4px;
  font-size: 17px;
  display: flex;
}

.dp-embed {
  aspect-ratio: 16 / 9;
  border: 1px dashed var(--line-2);
  color: var(--ink-400);
  background: #fff;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  font-size: 13px;
  display: flex;
}

.dp-img {
  border: 1px solid var(--line);
  border-radius: 10px;
  max-width: 100%;
  margin-top: 10px;
  display: block;
}

.dp-cap {
  color: var(--ink-400);
  margin: 6px 0 12px;
  font-size: 12px;
}

.dp-h1 {
  color: var(--ink-900);
  letter-spacing: -.015em;
  margin: 26px 0 6px;
  font-size: 21px;
  font-weight: 700;
}

.dp-h3 {
  color: var(--ink-800);
  margin: 14px 0 3px;
  font-size: 15px;
  font-weight: 600;
}

.dp-num {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  text-align: right;
  flex-shrink: 0;
  min-width: 18px;
}

.dp-p, .dp-tx {
  white-space: pre-wrap;
}

.dp-quote {
  border-left: 3px solid var(--line-2);
  color: var(--ink-600);
  margin: 10px 0;
  padding: 2px 0 2px 14px;
  font-size: 14.5px;
  line-height: 1.7;
  display: flex;
}

.dp-code {
  border: 1px solid var(--line-2);
  color: var(--ink-800);
  white-space: pre-wrap;
  word-break: break-word;
  background: #f8fafc;
  border-radius: 10px;
  margin: 10px 0;
  padding: 12px 14px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12.5px;
  line-height: 1.6;
}

.dp-code-in {
  resize: vertical;
  width: 100%;
  display: block;
}

.dp-code-in:focus {
  border-color: var(--primary);
  outline: none;
}

.dp-hr {
  border: none;
  border-top: 1px solid var(--line);
  margin: 18px 0;
}

.dp-ci {
  color: var(--primary-dark);
  background: #f1f5f9;
  border-radius: 4px;
  padding: 0 4px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .9em;
}

.dp-lien {
  color: var(--primary-dark);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.dp-lien:hover {
  color: var(--primary);
}

.dp-tablew {
  border: 1px solid var(--line);
  border-radius: 10px;
  margin: 12px 0;
  overflow-x: auto;
}

.dp-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13.5px;
  line-height: 1.55;
}

.dp-table th {
  color: var(--ink-800);
  text-align: left;
  background: #f8fafc;
  font-weight: 600;
}

.dp-table th, .dp-table td {
  border-bottom: 1px solid var(--line);
  color: var(--ink-700);
  vertical-align: top;
  min-width: 120px;
  padding: 8px 12px;
}

.dp-table tr:last-child td {
  border-bottom: none;
}

.dp-embed-lien {
  aspect-ratio: auto;
  color: var(--ink-700);
  border-style: solid;
  justify-content: flex-start;
  gap: 9px;
  padding: 12px 14px;
  font-size: 13.5px;
  font-weight: 500;
}

.dp-embed-lien:hover {
  border-color: var(--primary);
  color: var(--primary-dark);
}

.dp-embed-lien span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.dp-body.editing [contenteditable] {
  border-radius: 6px;
  margin-left: -6px;
  padding: 2px 6px;
  transition: background .12s;
}

.dp-body.editing [contenteditable]:hover {
  background: #f8fafc;
}

.dp-body.editing [contenteditable]:focus {
  background: var(--primary-50);
  outline: none;
}

.dp-h {
  gap: 2px;
  display: none;
  position: absolute;
  top: 3px;
  left: -96px;
}

.dp-body.editing .dp-bloc:hover > .dp-h {
  display: flex;
}

.dp-hb {
  width: 21px;
  height: 21px;
  color: var(--ink-300);
  background: #fff;
  border-radius: 5px;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  display: flex;
}

.dp-hb:hover {
  color: var(--ink-700);
  background: #f1f5f9;
}

.dp-hb.del:hover {
  background: var(--err-50);
  color: var(--err);
}

.dp-menu {
  z-index: 20;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  flex-direction: column;
  min-width: 150px;
  padding: 5px;
  display: flex;
  position: absolute;
  top: 26px;
  left: -96px;
  box-shadow: 0 12px 32px #0f172a24;
}

.dp-menu button {
  text-align: left;
  color: var(--ink-700);
  border-radius: 7px;
  padding: 6px 10px;
  font-size: 12.5px;
}

.dp-menu button:hover {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.dp-vide {
  text-align: left;
  width: 100%;
  color: var(--ink-300);
  padding: 10px 0;
  font-size: 14px;
  display: block;
}

.dp-vide:hover {
  color: var(--ink-400);
}

.dp-foot {
  border-top: 1px solid var(--line);
  color: var(--ink-400);
  margin-top: 26px;
  padding-top: 14px;
  font-size: 11.5px;
  line-height: 1.6;
}

.backbtn {
  color: var(--ink-500);
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  margin-bottom: 12px;
  padding: 4px 8px;
  font-size: 12.5px;
  font-weight: 500;
  display: inline-flex;
}

.backbtn:hover {
  color: var(--ink-700);
  background: #f1f5f9;
}

.fichehead {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  margin-bottom: 14px;
  padding: 20px 22px;
}

.fh-top {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 14px;
  display: flex;
}

.avat {
  background: var(--primary-50);
  width: 40px;
  height: 40px;
  color: var(--primary-dark);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 700;
  display: flex;
}

.avat svg {
  width: 19px;
  height: 19px;
}

.fichehead h1 {
  letter-spacing: -.015em;
  color: var(--ink-900);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.25;
}

.fh-contact {
  color: var(--ink-500);
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 5px;
  font-size: 12.5px;
  display: flex;
}

.fh-contact span {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.fh-contact svg {
  color: var(--ink-400);
}

.fh-badges {
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.fh-right {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.fh-link {
  color: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
}

.fh-link:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.apercu {
  border-top: 1px solid var(--line);
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
  margin-top: 16px;
  padding-top: 14px;
  display: grid;
}

.apercu .k {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 10px;
  font-weight: 600;
}

.apercu .v {
  color: var(--ink-900);
  margin-top: 4px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
}

.apercu .v .sm {
  color: var(--ink-500);
  font-size: 12px;
  font-weight: 400;
}

.idchips {
  border-top: 1px solid var(--line);
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  align-items: start;
  gap: 12px 18px;
  margin-top: 14px;
  padding-top: 12px;
  display: grid;
}

.idchips .lbl {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  grid-column: 1 / -1;
  margin-bottom: -4px;
  font-size: 10px;
  font-weight: 600;
}

.idchips .perschip, .idchips .idchip {
  justify-self: start;
}

.idchips.flexrow {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

.idchips.flexrow .lbl {
  margin: 0 2px 0 0;
}

.idchip {
  border: 1px solid var(--line);
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  background: #f8fafc;
  border-radius: 6px;
  align-items: center;
  padding: 2px 8px;
  font-size: 10.5px;
  display: inline-flex;
}

.perschip {
  border: 1px solid var(--line);
  color: var(--ink-700);
  cursor: pointer;
  background: #f8fafc;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  margin: 0 6px 4px 0;
  padding: 3px 10px 3px 4px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.perschip:hover {
  color: var(--primary-dark);
  border-color: #c7d2fe;
}

.perschip .avat {
  border-radius: 999px;
  width: 22px;
  height: 22px;
  font-size: 9px;
}

.fsec {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  margin-bottom: 12px;
  padding: 16px 20px;
}

.sect-h {
  color: var(--ink-900);
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.sect-h svg {
  color: var(--ink-400);
  flex-shrink: 0;
  margin-top: 1px;
}

.sect-h .n2 {
  color: var(--ink-400);
  font-size: 11.5px;
  font-weight: 400;
}

.sect-h [contenteditable] {
  border-radius: 5px;
  margin-left: -6px;
  padding: 1px 6px;
}

.sect-h [contenteditable]:hover {
  background: #f1f5f9;
}

.sect-h [contenteditable]:focus {
  background: var(--primary-50);
  color: var(--primary-dark);
  outline: none;
}

.sect-h .right {
  color: var(--ink-400);
  text-align: right;
  margin-left: auto;
  font-size: 11.5px;
  font-weight: 400;
  line-height: 1.5;
}

.fsec > h2 {
  color: var(--ink-900);
  align-items: center;
  gap: 7px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.fsec > h2 .n2 {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 400;
}

.lrow {
  border-top: 1px solid var(--line);
  color: var(--ink-700);
  align-items: center;
  gap: 10px;
  padding: 8px 2px;
  font-size: 13px;
  display: flex;
}

.subh + .lrow {
  border-top: none;
}

.lrow .chip {
  flex-shrink: 0;
  margin-left: auto;
}

.subh {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  margin: 14px 0 4px;
  font-size: 10px;
  font-weight: 600;
}

.frow {
  border-top: 1px solid var(--line);
  color: var(--ink-700);
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  font-size: 13px;
  display: flex;
}

.frow:first-of-type {
  border-top: none;
}

.frow .tt {
  color: var(--ink-900);
  font-weight: 500;
}

.frow .sm {
  color: var(--ink-400);
  font-size: 11.5px;
}

.frow > .btn, .frow > button.btn-s, .frow > .right {
  margin-left: auto;
}

.frow .go {
  color: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  margin-left: auto;
  font-size: 12px;
  font-weight: 600;
}

.frow .go:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.frow .sf-fact {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  display: flex;
}

.frow .sf-fact .sf-fact-l {
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.frow .sf-fact .sm {
  white-space: nowrap;
}

.ntag {
  white-space: nowrap;
  text-overflow: ellipsis;
  border-radius: 5px;
  align-items: center;
  max-width: 100%;
  padding: 1.5px 8px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
  overflow: hidden;
}

.ntag.bleu {
  color: #1d4ed8;
  background: #eff6ff;
}

.ntag.vert {
  color: #047857;
  background: #ecfdf5;
}

.ntag.violet {
  color: #6d28d9;
  background: #f5f3ff;
}

.ntag.orange {
  color: #c2410c;
  background: #fff7ed;
}

.ntag.gris {
  color: var(--ink-500);
  background: #f1f5f9;
}

.ntag.rouge {
  color: #b91c1c;
  white-space: normal;
  background: #fef2f2;
}

.ntags {
  flex-wrap: wrap;
  gap: 5px;
  display: flex;
}

.chip {
  color: var(--ink-500);
  background: #f1f5f9;
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 1.5px 9px;
  font-size: 10.5px;
  font-weight: 500;
  display: inline-flex;
}

.chip.ok {
  background: var(--ok-50);
  color: var(--ok);
}

.chip.warn {
  background: var(--warn-50);
  color: var(--warn);
}

.mlinks {
  gap: 12px;
  margin-top: 8px;
  display: flex;
}

.mlinks a {
  color: var(--primary);
  cursor: pointer;
  font-size: 11.5px;
  font-weight: 600;
}

.mlinks a:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.idgrid {
  border-top: 1px solid var(--line);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 12px 18px;
  margin-top: 14px;
  padding-top: 14px;
  display: grid;
}

@media (max-width: 980px) {
  .idgrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.fld {
  min-width: 0;
}

.fld .k {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 10px;
  font-weight: 600;
}

.fld .v {
  color: var(--ink-800);
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  min-height: 18px;
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.4;
}

.fld .v .muted {
  color: var(--ink-300);
  font-style: italic;
}

.fld .v {
  color: var(--ink-800);
  font-variant-numeric: tabular-nums;
  min-height: 18px;
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.4;
}

.fld .v .muted {
  color: var(--ink-300);
}

.idgrid .opco-note {
  grid-column: 1 / -1;
  margin-top: -4px;
}

.edin {
  width: 100%;
  font: inherit;
  color: var(--ink-900);
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 6px;
  outline: none;
  margin-top: 2px;
  padding: 4px 8px;
  font-size: 13px;
}

.edin:focus {
  box-shadow: 0 0 0 2px var(--primary);
  border-color: #0000;
}

.notes-ta {
  width: 100%;
  font: inherit;
  color: var(--ink-700);
  border: 1px solid var(--line);
  resize: vertical;
  background: #fbfcfd;
  border-radius: 8px;
  outline: none;
  min-height: 60px;
  margin-top: 10px;
  padding: 9px 11px;
  font-size: 13px;
  line-height: 1.5;
}

.notes-ta:focus {
  box-shadow: 0 0 0 2px var(--primary);
  background: #fff;
  border-color: #0000;
}

.acc {
  border-top: 1px solid var(--line);
}

.acc:first-of-type {
  border-top: none;
}

.acc summary {
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 12px 2px;
  list-style: none;
  display: flex;
}

.acc summary::-webkit-details-marker {
  display: none;
}

.acc summary:hover {
  background: var(--bg);
}

.acc summary .chev {
  color: var(--ink-400);
  flex-shrink: 0;
  font-size: 11px;
  transition: transform .15s;
}

.acc summary .vsub {
  color: var(--ink-400);
  font-size: 12px;
  font-weight: 400;
}

.acc summary .vsub2 {
  color: var(--ink-300);
  font-size: 11px;
}

.acc[open] summary .chev {
  transform: rotate(90deg);
}

.acc summary .tt {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.acc summary .sm {
  color: var(--ink-400);
  font-size: 11.5px;
}

.acc summary .end {
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  display: flex;
}

.acc .inner {
  width: 100%;
  padding: 2px 2px 16px 23px;
}

.vgrid {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px 18px;
  margin: 6px 0 2px;
  display: grid;
}

.wathread {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.wamsg {
  background: #f8fafc;
  border-radius: 10px;
  padding: 8px 11px;
}

.wah {
  color: var(--ink-700);
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
}

.wah span {
  color: var(--ink-400);
  font-weight: 400;
}

.wab {
  color: var(--ink-800);
  margin-top: 3px;
  font-size: 12.5px;
  line-height: 1.45;
}

.qard {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.qrow {
  border-bottom: 1px solid var(--line);
  padding: 8px 0;
}

.qrow:last-child {
  border-bottom: none;
}

.qrow .q {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-400);
  font-size: 10.5px;
  font-weight: 600;
}

.qrow .a {
  color: var(--ink-800);
  margin-top: 2px;
  font-size: 12.5px;
  line-height: 1.45;
}

.pgrp {
  border-left: 2px solid var(--line-2);
  background: #f8fafc;
  border-radius: 8px;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 18px 0 6px;
  padding: 6px 10px;
  display: flex;
}

.pgrp:first-child {
  margin-top: 4px;
}

.pgrp .lb {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-700);
  font-size: 10px;
  font-weight: 700;
}

.pgrp .ilink {
  margin-left: auto;
  font-size: 11px;
}

.espadv {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  font-size: 11px;
  display: flex;
}

.espadv b {
  color: var(--ink-800);
}

.espadv .nx {
  color: var(--ink-600, #475569);
}

.espadv .nx .k {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-400);
  margin-right: 5px;
  font-size: 10px;
  font-weight: 600;
}

.espadv .nx.ok {
  color: var(--ok);
}

.espadv .ilink {
  margin-left: 0;
}

.acc.sub2acc {
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 8px;
}

.card.locked-fact {
  opacity: .75;
  background: #f8fafc;
  border-style: dashed;
}

.card.locked-fact .s {
  color: var(--ink-500);
  margin-top: 4px;
  font-size: 11px;
}

.pd2 {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 10.5px;
  line-height: 1.45;
}

.vbar {
  justify-content: flex-end;
  gap: 8px;
  margin: 0 0 2px;
  display: flex;
}

.vcards {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  align-items: stretch;
  gap: 16px;
  margin-top: 10px;
  display: grid;
}

.vcards > div {
  flex-direction: column;
  display: flex;
}

.vcards .card {
  flex-direction: column;
  flex: 1;
  margin-bottom: 0;
  display: flex;
}

.vcards .card .cnt {
  margin-top: auto;
}

.acc .inner .docs {
  max-width: none;
}

.hist {
  border-top: 1px solid var(--line);
  margin-top: 16px;
  padding-top: 10px;
}

.hist summary {
  cursor: pointer;
  color: var(--ink-500);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.hist summary:before {
  content: "▸";
  color: var(--ink-400);
  font-size: 10px;
  transition: transform .15s;
}

.hist[open] summary:before {
  transform: rotate(90deg);
}

.hist summary:hover {
  color: var(--ink-700);
}

.hist summary .n2 {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 400;
}

.hrow {
  color: var(--ink-600, #475569);
  border-bottom: 1px solid var(--line);
  gap: 9px;
  padding: 3.5px 0;
  font-size: 13px;
  line-height: 1.45;
  display: flex;
}

.hrow:last-child {
  border-bottom: none;
}

.hrow .d {
  width: 118px;
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
}

.hrow .ck {
  color: var(--ok);
  flex-shrink: 0;
}

.hrow .e {
  color: var(--ink-300);
  margin: 0 2px;
}

.hrow .w {
  color: var(--ink-400);
}

.task .fx {
  color: var(--ok);
  background: var(--ok-50);
  white-space: nowrap;
  border-radius: 4px;
  margin-left: 4px;
  padding: 0 5px;
  font-size: 10px;
}

.task .note {
  color: var(--ink-400);
  flex: 1 0 100%;
  margin-top: -1px;
  font-size: 11.5px;
}

.sub {
  flex-direction: column;
  gap: 1px;
  margin: 2px 0 2px 21px;
  display: flex;
}

.waiting {
  color: var(--warn);
  background: var(--warn-50);
  border-radius: 6px;
  margin-top: 8px;
  padding: 5px 8px;
  font-size: 11px;
  line-height: 1.4;
}

.card.pointer {
  border: 1.5px dashed var(--line-2);
  box-shadow: none;
  background: #fbfcfd;
}

.card.pointer:hover {
  background: #fff;
  border-color: #c7d2fe;
}

.card.pointer .t {
  color: var(--ink-700);
}

.card.clickable {
  cursor: pointer;
}

.card.clickable:hover .t {
  color: var(--primary);
}

.prog {
  background: #f1f5f9;
  border-radius: 999px;
  height: 4px;
  margin-top: 10px;
  overflow: hidden;
}

.prog i {
  background: #818cf8;
  border-radius: 999px;
  height: 100%;
  transition: width .3s;
  display: block;
}

.prog i.full {
  background: #34d399;
}

.cnt {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  align-items: center;
  gap: 6px;
  margin-top: 7px;
  font-size: 11px;
  display: flex;
}

.cnt b {
  color: var(--ink-700);
  font-weight: 600;
}

.nextt {
  color: var(--ink-700);
  gap: 6px;
  margin-top: 5px;
  font-size: 11.5px;
  line-height: 1.35;
  display: flex;
}

.nextt .k {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-400);
  flex-shrink: 0;
  margin-top: 1px;
  font-size: 10px;
  font-weight: 600;
}

.nextt .v {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.nextt .who2 {
  color: var(--ink-400);
}

.opendetail {
  color: var(--ink-400);
  margin-top: 8px;
  font-size: 10.5px;
}

.card.clickable:hover .opendetail {
  color: var(--primary);
}

#modal {
  z-index: 150;
  background: #0f172a59;
  justify-content: center;
  align-items: flex-start;
  padding: 6vh 16px;
  display: flex;
  position: fixed;
  inset: 0;
}

.mbox {
  width: 100%;
  max-width: var(--fenetre-largeur);
  max-height: var(--fenetre-hauteur-max);
  background: #fff;
  border-radius: 14px;
  overflow-y: auto;
  box-shadow: 0 20px 50px #0003;
}

.mhead {
  border-bottom: 1px solid var(--line-2);
  background: #fff;
  border-radius: 14px 14px 0 0;
  padding: 16px 20px 12px;
  position: sticky;
  top: 0;
}

.mhead .row {
  align-items: flex-start;
  gap: 10px;
  display: flex;
}

.mhead .t {
  color: var(--ink-900);
  letter-spacing: -.01em;
  font-size: 16px;
  font-weight: 600;
}

.mhead .s {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 12px;
}

.mclose {
  width: 28px;
  height: 28px;
  color: var(--ink-400);
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  font-size: 16px;
  line-height: 1;
  display: flex;
}

.mclose:hover {
  background: var(--bg);
  color: var(--ink-700);
}

.mhead-actions {
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  display: flex;
}

.mhead-actions + .mclose {
  flex-shrink: 0;
  margin-left: 0;
}

.ressource-ouvrir-grand {
  flex-shrink: 0;
  text-decoration: none;
}

.ressource-ouvrir-grand:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.ressource-ouvrir-grand[aria-disabled="true"] {
  opacity: .45;
  cursor: wait;
}

.mstep {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-500);
  align-items: center;
  gap: 6px;
  margin-top: 9px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.mstep .pill {
  background: #818cf8;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.mbody {
  background: #f8fafc;
  border-radius: 0 0 14px 14px;
  padding: 14px 16px 16px;
}

.msec {
  color: var(--ink-900);
  align-items: center;
  gap: 6px;
  margin: 12px 0 6px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.msec .n2 {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 400;
}

.card.ghost {
  cursor: pointer;
  background: #f8fafc;
}

.card.ghost .t, .card.ghost .s {
  color: var(--ink-400);
}

.ghost-hint {
  color: var(--ink-400);
  align-items: center;
  gap: 5px;
  margin-top: 8px;
  font-size: 11px;
  display: flex;
}

.popover {
  z-index: 40;
  background: var(--ink-900);
  color: #e2e8f0;
  border-radius: 9px;
  padding: 10px 12px;
  font-size: 11.5px;
  line-height: 1.55;
  display: none;
  position: absolute;
  top: calc(100% - 6px);
  left: 8px;
  right: 8px;
  box-shadow: 0 8px 24px #0000002e;
}

.card.ghost:hover .popover {
  color: #111827;
  background: #fff;
  border: 1px solid #dbe0e8;
  display: block;
}

.inscription-filtres .fsearch {
  flex: 340px;
  min-width: 0;
  max-width: 480px;
}

.sessions-filtres .fsearch {
  flex: 220px;
  min-width: 0;
  max-width: 480px;
}

.sessions-filtres .fsearch input {
  min-width: 0;
}

.templates-bienvenue > summary, .templates-bienvenue-offre > summary, .supports-offre > summary {
  cursor: pointer;
  color: var(--ink-900);
  padding: 12px 0;
  font-weight: 600;
}

.templates-bienvenue-offre {
  margin-left: 16px;
}

.templates-bienvenue .autocard {
  text-align: left;
  width: 100%;
  margin: 6px 0;
}

.templates-bienvenue .tx .nm, .templates-bienvenue .tx .ds {
  display: block;
}

.popover a {
  color: #a5b4fc;
  cursor: pointer;
  margin-top: 5px;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
}

.lines {
  border-top: 1px solid var(--line);
  margin-top: 8px;
  padding-top: 7px;
}

.lines .ln {
  color: var(--ink-700);
  justify-content: space-between;
  padding: 2.5px 2px;
  font-size: 11.5px;
  display: flex;
}

.lines .ln.new {
  animation: 1.6s flash;
}

@keyframes flash {
  0% {
    background: var(--ok-50);
  }

  100% {
    background: none;
  }
}

.lines .ln .k {
  color: var(--ink-400);
}

.lines .tot {
  border-top: 1px solid var(--line-2);
  color: var(--ink-900);
  justify-content: space-between;
  margin-top: 4px;
  padding-top: 5px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.slist {
  flex-direction: column;
  gap: 10px;
  max-width: 680px;
  display: flex;
}

.slist.wide {
  max-width: none;
}

.slist.wide .srow {
  grid-template-columns: 1.5fr 1.4fr 1.25fr 190px;
  align-items: center;
  gap: 18px;
  display: grid;
}

.slist.wide.marche .srow {
  grid-template-columns: 1.5fr 1.2fr .9fr 1fr 190px;
}

.slist .fcell {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.slist .fline {
  color: var(--ink-500);
  grid-template-columns: 74px 78px 1fr;
  align-items: baseline;
  gap: 6px;
  font-size: 11.5px;
  display: grid;
}

.slist .fline .fq {
  color: var(--ink-700);
  font-weight: 600;
}

.slist .fline .fd {
  font-variant-numeric: tabular-nums;
}

.slist .fline .fr {
  color: var(--ink-400);
}

.slist .fline.warn .fq, .slist .fline.warn .fr {
  color: #b45309;
}

.slist .fline.off {
  opacity: .5;
}

.slist .fline.off .fr {
  text-decoration: line-through;
}

.slist.wide .srow.shead {
  box-shadow: none;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--ink-400);
  background: none;
  padding: 2px 16px 0;
  font-size: 10.5px;
  font-weight: 700;
}

.sessions-closeur {
  background: #fff;
  border: 1px solid #dce2eb;
  border-radius: 10px;
  overflow: hidden;
}

.sessions-closeur .srow, .sessions-closeur .slist.wide .srow {
  min-height: 68px;
  box-shadow: none;
  border-bottom: 1px solid var(--line);
  background: #fff;
  border-radius: 0;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1.3fr) 108px 84px 148px;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  display: grid;
}

.sessions-closeur .srow.shead {
  letter-spacing: .05em;
  text-transform: uppercase;
  min-height: 0;
  color: var(--ink-400);
  background: #f8f9fc;
  padding: 11px 16px;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.4;
}

.sessions-mois-closeur {
  border-bottom: 1px solid var(--line);
}

.sessions-mois-closeur:last-child {
  border-bottom: 0;
}

.sessions-mois-closeur > summary {
  cursor: pointer;
  color: var(--ink-900);
  align-items: center;
  gap: 10px;
  padding: 13px 16px;
  font-size: 13.5px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.sessions-mois-closeur > summary::-webkit-details-marker {
  display: none;
}

.sessions-mois-closeur > summary:hover {
  background: #fafbfd;
}

.sessions-mois-closeur > summary:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.sessions-mois-closeur[open] > summary {
  border-bottom: 1px solid var(--line);
}

.smois-chevron {
  border-right: 1.5px solid var(--ink-400);
  border-bottom: 1.5px solid var(--ink-400);
  flex: none;
  width: 7px;
  height: 7px;
  margin: 0 3px 0 1px;
  transition: transform .15s;
  transform: rotate(-45deg);
}

.sessions-mois-closeur[open] .smois-chevron {
  transform: rotate(45deg)translate(-2px, -1px);
}

.smois-n {
  color: var(--ink-500);
  background: #f1f4f9;
  border-radius: 999px;
  padding: 2px 9px;
  font-size: 11.5px;
  font-weight: 600;
}

.sessions-mois-closeur .slist.wide {
  border: 0;
  gap: 0;
  margin: 0;
  padding: 0;
}

.sessions-mois-closeur .slist.wide .srow:last-child {
  border-bottom: 0;
}

.sessions-closeur .scell {
  min-width: 0;
  line-height: 1.45;
}

.sessions-closeur .scell .v {
  margin-top: 3px;
}

.sessions-closeur .scell .slien-lbl {
  margin: 0 0 4px;
  display: none;
}

.sessions-closeur .slien-gestes {
  flex-wrap: nowrap;
  align-items: center;
  gap: 10px;
  display: flex;
}

.sessions-closeur .slien-ouvrir {
  color: var(--primary);
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
}

.sessions-closeur .slien-ouvrir:hover {
  text-decoration: underline;
}

.sessions-closeur .slien-absent {
  color: var(--ink-400);
  cursor: help;
  font-size: 13px;
}

@media (prefers-reduced-motion: reduce) {
  .smois-chevron {
    transition: none;
  }
}

@media (max-width: 1239px) {
  .sessions-closeur .srow, .sessions-closeur .slist.wide .srow {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
  }

  .sessions-closeur .scell.right {
    align-self: end;
  }

  .sessions-closeur .srow.shead {
    display: none;
  }

  .sessions-closeur .scell .slien-lbl {
    display: block;
  }
}

@media (max-width: 900px) {
  .sessions-closeur .srow, .sessions-closeur .slist.wide .srow {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 14px 16px;
  }
}

@media (max-width: 520px) {
  .sessions-closeur .srow, .sessions-closeur .slist.wide .srow {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 16px 14px;
  }

  .sessions-mois-closeur > summary {
    padding: 13px 14px;
  }

  .sessions-closeur .scell.right {
    justify-self: stretch;
  }

  .sessions-closeur .scell.right .btn {
    justify-content: center;
    width: 100%;
  }
}

.slist .scell .d2 {
  color: var(--ink-700);
  font-size: 13px;
}

.slist .scell .d2.ko {
  color: var(--err);
}

.slist .scell .v {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
}

.slist .scell.right {
  justify-self: end;
}

.slist.wide .ilink.d {
  color: var(--primary);
  font-size: 13.5px;
  font-weight: 600;
}

.btn[disabled] {
  opacity: .4;
  cursor: default;
  box-shadow: none;
}

.srow {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 10px;
  align-items: center;
  gap: 14px;
  padding: 13px 16px;
  display: flex;
}

.srow .d {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.srow .v {
  color: var(--ink-500);
  font-size: 12px;
}

.srow .pl {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  margin-left: auto;
  font-size: 12px;
}

.btn {
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  padding: 7px 13px;
  font-size: 12.5px;
  font-weight: 500;
  transition: background .12s;
  display: inline-flex;
}

.btn-p {
  background: var(--primary);
  color: #fff;
}

.btn-p:hover {
  background: var(--primary-dark);
}

.btn-s {
  border: 1px solid var(--line-2);
  color: var(--ink-700);
  background: #fff;
}

.btn-s:hover {
  background: var(--bg);
}

.stub {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  max-width: 680px;
  padding: 22px;
}

.stub h2 {
  color: var(--ink-900);
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
}

.stub p {
  color: var(--ink-500);
  font-size: 13px;
  line-height: 1.6;
}

.stub ul {
  color: var(--ink-700);
  margin: 10px 0 0 18px;
  font-size: 13px;
  line-height: 1.9;
}

.stub p a {
  color: var(--primary);
  font-weight: 600;
  text-decoration: none;
}

.stub.stub-erreur p {
  color: var(--err);
}

.stub.stub-erreur .btn {
  margin-top: 10px;
}

.simnote {
  background: var(--warn-50);
  color: #92400e;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  margin-bottom: 14px;
  padding: 3px 10px;
  font-size: 11px;
  display: inline-flex;
}

.appframe {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  max-width: 1060px;
  overflow: hidden;
}

.ap-head {
  border-bottom: 1px solid var(--line-2);
  background: #fffffff2;
  justify-content: space-between;
  align-items: center;
  padding: 12px 22px;
  display: flex;
}

.ap-body {
  background: #f8fafc;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  padding: 26px 22px;
  display: flex;
}

.ap-card {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  width: 100%;
  max-width: 760px;
}

.ap-card .h {
  justify-content: space-between;
  align-items: center;
  padding: 14px 22px;
  display: flex;
}

.ap-card .h h2 {
  color: #0f172a;
  font-size: 17px;
  font-weight: 600;
}

.ap-card .b {
  border-top: 1px solid #f1f5f9;
  padding: 16px 22px;
}

.ap-tag {
  color: #334155;
  font-variant-numeric: tabular-nums;
  background: #f1f5f9;
  border-radius: 999px;
  align-items: center;
  gap: 5px;
  margin: 0 6px 6px 0;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.ap-chip {
  border-radius: 999px;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 500;
}

.ap-row {
  color: #0f172a;
  border-top: 1px solid #f1f5f9;
  align-items: center;
  gap: 10px;
  padding: 11px 0;
  font-size: 14px;
  display: flex;
}

.ap-row:first-child {
  border-top: none;
}

.ap-row .chev {
  color: #94a3b8;
  margin-left: auto;
}

.ap-avatar {
  color: #fff;
  background: #4f46e5;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.kpis {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  max-width: 760px;
  display: grid;
}

.kpi {
  box-shadow: var(--sh-carte);
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  padding: 12px 14px;
}

.kpi .l {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #737373;
  font-size: 10.5px;
  font-weight: 500;
}

.kpi .v {
  color: #111827;
  font-variant-numeric: tabular-nums;
  margin-top: 3px;
  font-size: 21px;
  font-weight: 700;
}

.kpi .d {
  margin-top: 2px;
  font-size: 11px;
  font-weight: 500;
}

.up {
  color: #059669;
}

.down {
  color: #dc2626;
}

.blue {
  color: #2563eb;
}

.dd-main {
  background: #fff;
  padding: 22px;
}

.dd-sec {
  background: linear-gradient(90deg, #f5f3ff99, #faf5ff99);
  border: 1px solid #c4b5fd99;
  border-radius: 12px;
  max-width: 860px;
  margin-top: 14px;
  padding: 16px;
}

.dd-sec h3 {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: #5b21b6;
  align-items: center;
  gap: 7px;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.dd-tbl {
  border-collapse: collapse;
  background: #fff9;
  border-radius: 8px;
  width: 100%;
  font-size: 12.5px;
  overflow: hidden;
}

.dd-tbl th {
  text-align: left;
  color: #4c1d95;
  background: #ede9fe66;
  border-bottom: 1px solid #c4b5fd99;
  padding: 7px 10px;
  font-weight: 600;
}

.dd-tbl td {
  font-variant-numeric: tabular-nums;
  color: #334155;
  border-bottom: 1px solid #ede9fe99;
  padding: 7px 10px;
}

#toasts {
  z-index: 400;
  flex-direction: column;
  gap: 8px;
  max-width: 340px;
  display: flex;
  position: fixed;
  top: 64px;
  right: 18px;
}

.toast {
  background: var(--ink-900);
  color: #f1f5f9;
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 1.5;
  animation: .25s tin;
  box-shadow: 0 10px 28px #00000038;
}

.toast b {
  color: #fff;
}

.toast.pink {
  border-left: 3px solid #10b981;
}

@keyframes tin {
  0% {
    opacity: 0;
    transform: translateY(-8px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

#auth {
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  z-index: 200;
  background: #f8fafceb;
  justify-content: center;
  align-items: center;
  display: none;
  position: fixed;
  inset: 0;
}

#auth .box {
  text-align: center;
  background: #fff;
  border-radius: 14px;
  padding: 30px 42px;
  box-shadow: 0 14px 40px #0000001f;
}

#auth .sp {
  border: 3px solid var(--line-2);
  border-top-color: var(--accent2, #4f46e5);
  border-radius: 50%;
  width: 26px;
  height: 26px;
  margin: 0 auto 12px;
  animation: .7s linear infinite spin;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

#auth .t1 {
  color: var(--ink-900);
  font-size: 14px;
  font-weight: 600;
}

#auth .t2 {
  color: var(--ink-400);
  margin-top: 3px;
  font-size: 12px;
}

.ct {
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

.ct .t {
  flex: 1;
  min-width: 0;
  line-height: 1.3;
}

.ct .badge {
  white-space: nowrap;
  flex-shrink: 0;
  margin-top: 1px;
}

.b-offre {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.cnt {
  align-items: flex-start;
  margin-top: 6px;
}

.cnt .nx {
  -webkit-line-clamp: 2;
  color: var(--ink-600, #475569);
  -webkit-box-orient: vertical;
  line-height: 1.35;
  display: -webkit-box;
  overflow: hidden;
}

.cnt .nx .k {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-400);
  margin-right: 5px;
  font-size: 10px;
  font-weight: 600;
}

.cnt .nx.ok {
  color: var(--ok);
}

.prog {
  margin-top: 8px;
}

.docs {
  max-width: 560px;
  padding: 2px 0 4px;
}

.docrow {
  border-bottom: 1px solid var(--line);
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  display: flex;
}

.docrow:last-child {
  border-bottom: none;
}

.docrow .dl {
  color: var(--ink-700);
  white-space: nowrap;
  flex-shrink: 0;
  width: 132px;
  font-size: 12px;
  font-weight: 600;
}

.docrow .ds {
  color: var(--ink-400);
  margin-left: auto;
  font-size: 10.5px;
}

.docrow input {
  flex: 1;
  min-width: 0;
}

.docrow .v2 {
  min-width: 0;
  color: var(--ink-700);
  flex: 1;
  font-size: 12.5px;
  line-height: 1.5;
}

.idgrid.g4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
}

.railacc {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 12px;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding: 12px 15px;
  display: flex;
}

.railacc .ra-l {
  color: var(--ink-700);
  font-size: 13px;
}

.railacc .ra-l b {
  color: var(--ink-900);
}

.railacc.none {
  border-style: dashed;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 20px 18px;
}

.railacc.none .ra-t {
  color: var(--ink-900);
  font-size: 14.5px;
  font-weight: 600;
}

.railacc.none .ra-s {
  color: var(--ink-500);
  max-width: 620px;
  font-size: 13px;
}

.railacc.none .ra-b {
  gap: 8px;
  margin-top: 4px;
  display: flex;
}

.railsec.masq {
  opacity: .55;
}

.sect-h .n2.warn2 {
  color: #92400e;
  background: var(--warn-50);
  border-radius: 5px;
  padding: 1px 7px;
}

.vofsec .vof {
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: 6px;
  display: grid;
}

@media (max-width: 980px) {
  .vofsec .vof {
    grid-template-columns: 1fr;
  }
}

.vofcol {
  padding: 4px 22px 0;
}

.vofcol:first-child {
  border-right: 1px solid var(--line-2);
  padding-left: 0;
}

.vofcol:last-child {
  padding-right: 0;
}

.vofh {
  color: var(--ink-900);
  align-items: baseline;
  gap: 8px;
  margin-bottom: 4px;
  font-size: 12.5px;
  font-weight: 700;
  display: flex;
}

.vofh span {
  color: var(--ink-400);
  font-size: 11.5px;
  font-weight: 500;
}

.vofcol .pd {
  color: var(--ink-400);
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 1.5;
}

.villerow {
  color: var(--ink-700);
  cursor: pointer;
  border-bottom: 1px solid var(--line);
  align-items: center;
  gap: 9px;
  padding: 7px 2px;
  font-size: 13px;
  display: flex;
}

.fldgrid .frmvilles {
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 0 18px;
  max-height: 198px;
  margin-top: 2px;
  display: grid;
  overflow: auto;
}

.fldgrid .frmvilles .villerow {
  padding: 5px 2px;
}

.villerow:last-child {
  border-bottom: none;
}

.villerow .vn {
  color: var(--ink-900);
  font-weight: 500;
}

.villerow .sm {
  color: var(--ink-400);
  margin-left: auto;
  font-size: 11.5px;
}

.offrow {
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px;
  padding: 11px 2px;
  display: flex;
}

.offrow:last-child {
  border-bottom: none;
}

.offrow .ol {
  flex: 1;
  min-width: 0;
}

.offrow .tt {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.offrow .sm {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
}

.offrow > .chip, .qdem {
  margin-left: auto;
}

.qdem[open] {
  width: 100%;
  margin-top: 2px;
}

.qdem > summary {
  cursor: pointer;
  color: var(--primary);
  text-align: right;
  font-size: 12.5px;
  font-weight: 600;
  list-style: none;
}

.qdem > summary::-webkit-details-marker {
  display: none;
}

.qin {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin-top: 8px;
  display: flex;
}

.qin .notes-ta {
  min-height: 64px;
}

.resrow {
  border-bottom: 1px solid var(--line);
  align-items: center;
  gap: 14px;
  padding: 11px 4px;
  display: flex;
}

.resrow:last-child {
  border-bottom: none;
}

.resrow .rl {
  flex: 1;
  min-width: 0;
}

.resrow .tt {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 500;
}

.resrow .sm {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
}

.resrow .btn {
  margin-left: auto;
}

.blocs {
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
  display: flex;
}

.slist.wide.compact {
  gap: 0;
}

.slist.wide.compact .srow {
  box-shadow: none;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 11px 4px;
}

.slist.wide.compact .srow:last-child {
  border-bottom: none;
}

.slist.wide.compact .srow.shead {
  border-bottom: 1px solid var(--line-2);
  padding: 0 4px 7px;
}

.vide {
  color: var(--ink-400);
  padding: 12px 4px;
  font-size: 12.5px;
}

.demrow2 {
  border-bottom: 1px solid var(--line);
  align-items: center;
  gap: 14px;
  padding: 11px 4px;
  display: flex;
}

.demrow2:last-child {
  border-bottom: none;
}

.demrow2 .dl {
  flex: 1;
  min-width: 0;
}

.demrow2 .tt {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.demrow2 .sm {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
}

.sssec {
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--ink-500);
  margin: 18px 0 8px;
  font-size: 11.5px;
  font-weight: 700;
}

.sssec:first-of-type {
  margin-top: 10px;
}

.sssec span {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-400);
  margin-left: 6px;
  font-size: 11.5px;
  font-weight: 500;
}

.slist .scell .d2.fort {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.slist .scell .v.warn2b {
  color: #b45309;
}

.frow.demrow {
  gap: 12px;
}

.frow.demrow .chip {
  margin-left: auto;
}

.frow.demrow.acceptee {
  background: #fbfefc;
}

.frow.demrow.refusee .tt {
  color: var(--ink-500);
}

.frow.demline {
  gap: 10px;
  padding: 8px 0;
}

.frow.demline .tx {
  flex: auto;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
  display: flex;
}

.frow.demline .tx .tt {
  white-space: nowrap;
  flex-shrink: 0;
}

.frow.demline .tx .sm {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.frow.demline .dbtns {
  flex-shrink: 0;
}

.frow.demline .dlink {
  white-space: nowrap;
  margin-left: auto;
}

.frow.demline .qin {
  flex-basis: 100%;
  align-items: stretch;
  margin-top: 0;
}

.frow.demline .qin .edin {
  width: 100%;
}

.frow.demline .dq {
  flex-basis: 100%;
  min-width: 0;
}

.frow.demline .dq p {
  margin: 0;
}

.frow.demline .dqmsg {
  color: var(--ink-800);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 12.5px;
}

.frow.demline .dqcontact {
  overflow-wrap: anywhere;
  flex-wrap: wrap;
  gap: 2px 14px;
  margin-top: 3px;
  font-size: 12px;
  display: flex;
}

.railano {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 12px;
  margin-bottom: 14px;
  padding: 12px 14px;
}

.railano .k {
  color: #92400e;
  margin-bottom: 6px;
  font-size: 12.5px;
  font-weight: 600;
}

.railano ul {
  color: #78350f;
  margin: 0;
  padding-left: 18px;
  font-size: 12px;
  line-height: 1.6;
}

.copl {
  color: var(--ink-600);
  margin: 4px 0 0;
  padding-left: 18px;
  font-size: 11.5px;
  line-height: 1.65;
}

.copl .sm {
  color: var(--ink-400);
}

.railcopie {
  margin-left: auto;
}

.railok {
  color: #166534;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 12px;
  margin-bottom: 14px;
  padding: 11px 14px;
  font-size: 12.5px;
}

.railhint {
  color: var(--ink-400);
  margin: 0 0 10px;
  font-size: 11.5px;
}

.rl-ail {
  color: var(--ink-400);
  margin-top: 1px;
  font-size: 11px;
  display: block;
}

.railsec .sect-h .right {
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.railadd {
  margin-top: 6px;
}

.cardgrid {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
  display: grid;
}

.tbl.matrice th.cash {
  text-align: center;
  white-space: nowrap;
  font-size: 10px;
}

.tbl.matrice th:first-child, .tbl.matrice td:first-child {
  min-width: 320px;
}

.tbl.matrice td:first-child b {
  font-weight: 600;
}

.tbl.matrice td.cas {
  text-align: center;
  color: var(--ink-300);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  font-size: 15px;
}

.tbl.matrice td.cas.on {
  color: var(--primary);
}

.tbl.matrice td.cas:hover {
  background: var(--primary-50);
}

.tbl.matrice .acts {
  white-space: nowrap;
}

.todobloc > summary {
  cursor: pointer;
  color: var(--ink-700);
  border-radius: 7px;
  align-items: center;
  gap: 9px;
  margin: 0 -8px;
  padding: 6px 8px;
  font-size: 13px;
  line-height: 1.5;
  list-style: none;
  display: flex;
}

.todobloc > summary:hover {
  background: var(--bg);
}

.todobloc > summary .who {
  color: var(--ink-500);
  white-space: normal;
  background: none;
  flex: 0 0 128px;
  padding: 0;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.35;
}

.todolist {
  padding-left: 0;
}

.todobloc > summary::-webkit-details-marker {
  display: none;
}

.todobloc > summary .box {
  border: 1.5px solid var(--ink-300);
  border-radius: 4px;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  position: relative;
}

.todobloc > summary .box.on {
  background: var(--primary);
  border-color: var(--primary);
}

.todobloc > summary .box.on:after {
  content: "";
  border-bottom: 1.8px solid #fff;
  border-left: 1.8px solid #fff;
  width: 8px;
  height: 4.5px;
  position: absolute;
  top: 3px;
  left: 2.5px;
  transform: rotate(-45deg);
}

.todobloc .cnt3 {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
}

.todobloc > summary .chev {
  color: var(--ink-300);
  margin-left: auto;
  font-size: 10px;
  transition: transform .15s;
}

.todobloc[open] > summary .chev {
  transform: rotate(90deg);
}

.todobloc.done > summary .lbl {
  color: var(--ink-400);
  text-decoration: line-through;
}

.todolist {
  padding: 2px 0 6px 21px;
}

.apbloc > summary .chip {
  margin-left: 6px;
}

.apchk {
  border: 1.5px solid var(--ink-300);
  border-radius: 4px;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  position: relative;
}

.apchk.on {
  background: var(--ok);
  border-color: var(--ok);
}

.apchk.on:after {
  content: "";
  border-bottom: 1.8px solid #fff;
  border-left: 1.8px solid #fff;
  width: 7px;
  height: 3.5px;
  position: absolute;
  top: 3px;
  left: 2.5px;
  transform: rotate(-45deg);
}

.docrow {
  color: var(--ink-600);
  align-items: center;
  gap: 8px;
  padding: 4px 0;
  font-size: 12px;
  display: flex;
}

.docrow .dot {
  background: var(--ok, #16a34a);
  border-radius: 50%;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
}

.docrow.off {
  color: var(--ink-400);
}

.docrow.off .dot {
  background: var(--line-2);
}

.docrow .right {
  margin-left: auto;
}

.todolist .tgrp {
  margin-top: 8px;
}

.caswrap {
  flex-wrap: wrap;
  gap: 10px 16px;
  display: flex;
}

.casck {
  color: var(--ink-700);
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  display: flex;
}

.tlien {
  font-size: 11.5px;
}

.fldgrid {
  border-top: 1px solid var(--line);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 14px 18px;
  margin-top: 14px;
  padding-top: 14px;
  display: grid;
}

.fldgrid.g3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fldgrid .full {
  grid-column: 1 / -1;
}

.fldgrid .sp2 {
  grid-column: span 2;
}

.fldgrid .edin, .fldgrid textarea, .fldgrid select {
  width: 100%;
}

.idgrid.g4 .fld:last-child {
  grid-column: 1 / -1;
}

.col-open a {
  color: var(--ink-700);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.apprev {
  border: 1px dashed var(--line-2);
  background: #f8fafc;
  border-radius: 12px;
  margin-top: 4px;
  padding: 16px;
}

.espin {
  margin: 12px 0;
}

.typewrap {
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  margin-top: 8px;
  display: grid;
}

.typecard {
  text-align: left;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 11px;
  flex-direction: column;
  gap: 3px;
  padding: 11px 13px;
  display: flex;
}

.typecard:hover {
  border-color: var(--ink-300);
}

.typecard.on {
  border-color: var(--primary);
  background: var(--primary-50);
  box-shadow: 0 0 0 1px var(--primary);
}

.typecard .tc-t {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.typecard .tc-s {
  color: var(--ink-400);
  font-size: 11.5px;
  line-height: 1.35;
}

.typecard.on .tc-s {
  color: var(--primary-dark);
}

.espin label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-500);
  margin-bottom: 5px;
  font-size: 10.5px;
  font-weight: 600;
  display: block;
}

.espin .edin, .espin textarea {
  width: 100%;
}

.espin .pd {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 11px;
}

.apcard {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 14px;
  width: 100%;
  padding: 20px 22px;
  font-family: Inter, sans-serif;
}

.apcard h2 {
  color: #0f172a;
  margin-bottom: 12px;
  font-size: 19px;
  font-weight: 600;
}

.aptags {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.ap-tag2 {
  color: #334155;
  background: #f1f5f9;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  font-size: 12.5px;
  font-weight: 500;
  display: inline-flex;
}

.ap-tag2 svg {
  color: #64748b;
}

.ap-tag2.sess {
  opacity: .55;
}

.apline {
  color: #475569;
  margin-top: 12px;
  font-size: 13.5px;
}

.apsep {
  border-top: 1px solid #e2e8f0;
  margin: 16px 0;
}

.apcard .apmsg {
  color: #334155;
  font-size: 13.5px;
  line-height: 1.6;
}

.apbtns {
  gap: 10px;
  margin-top: 14px;
  display: flex;
}

.apbtn {
  color: #0f172a;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 500;
}

.apnote {
  color: var(--ink-400);
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.5;
}

.apcard.apmf {
  padding: 0;
  overflow: hidden;
}

.apmf-h {
  background: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  padding: 14px 22px;
}

.apcard .apmf-h h2 {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--primary-dark);
  margin: 0;
  font-size: 11px;
  font-weight: 600;
}

.apmf-t {
  color: #0f172a;
  margin-top: 4px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}

.apmf-l {
  border-top: 1px solid #f1f5f9;
  gap: 12px;
  padding: 12px 22px;
  display: flex;
}

.apmf-l:first-child {
  border-top: none;
}

.apmf-i {
  width: 34px;
  height: 34px;
  color: var(--primary);
  background: #f8fafc;
  border-radius: 9px;
  flex: none;
  justify-content: center;
  align-items: center;
  display: flex;
}

.apmf-c {
  flex: 1;
  min-width: 0;
}

.apmf-c dt {
  color: #64748b;
  font-size: 11.5px;
}

.apmf-c dd {
  color: #0f172a;
  overflow-wrap: anywhere;
  margin: 2px 0 0;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.55;
}

.apmf-b {
  display: block;
}

.apmf-adr {
  color: #334155;
  font-weight: 400;
}

.apmf .apbtns {
  flex-wrap: wrap;
  margin-top: 8px;
}

.apmf a.apbtn {
  text-decoration: none;
}

.apmf-plans {
  flex-wrap: wrap;
  gap: 4px 14px;
  margin-top: 4px;
  display: flex;
}

.apmf a.apmf-plan {
  color: var(--primary-dark);
  font-size: 12.5px;
  font-weight: 500;
  text-decoration: none;
}

.apmf .apmf-lien {
  color: var(--primary-dark);
  font-weight: 500;
  text-decoration: none;
}

.apbtn-p {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
}

.apmf .apbtn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.apmf-bas {
  border-top: 1px solid #f1f5f9;
  flex-direction: column;
  gap: 10px;
  padding: 14px 22px;
  display: flex;
}

.apmf-note {
  color: #64748b;
  font-size: 13.5px;
  line-height: 1.6;
}

.apmf-fiche {
  color: var(--primary-dark);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 500;
  display: flex;
}

.apmf-qr {
  background: #f8fafc;
  border-top: 1px solid #f1f5f9;
  padding: 14px 22px;
}

.apex {
  vertical-align: middle;
  letter-spacing: .06em;
  color: #64748b;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  margin-left: 4px;
  padding: 1px 7px;
  font-size: 9.5px;
  font-weight: 600;
  display: inline-block;
}

.instr-l {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 14px;
  display: flex;
}

.instr-l button.ilink {
  font: inherit;
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
}

.apmf .apmf-in {
  width: 100%;
  font-family: inherit;
  display: block;
}

.apmf input.apmf-adr {
  margin-top: 4px;
}

.apmf textarea.apmsg {
  min-height: 84px;
}

a.btn[data-lien-gestion] {
  text-decoration: none;
}

.espbox {
  max-width: 600px;
}

.espfld {
  margin-bottom: 14px;
}

.espfld label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-500);
  margin-bottom: 5px;
  font-size: 11px;
  font-weight: 600;
  display: block;
}

.espfld .edin, .espfld textarea {
  width: 100%;
}

#modal3.ardov {
  background: #000000a6;
  align-items: center;
  padding: 16px;
}

.ardmodal {
  background: #fff;
  border-radius: 18px;
  padding: 28px;
  position: relative;
  overflow-y: auto;
  box-shadow: 0 24px 60px #00000059;
}

.ardclose {
  color: #666;
  background: none;
  border: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 30px;
  line-height: 1;
  display: inline-flex;
  position: absolute;
  top: 12px;
  right: 12px;
}

.ardclose:hover {
  color: #000;
  background: #00000014;
}

.ardtitle {
  color: #1a1a1a;
  margin: 0 0 10px;
  padding-right: 40px;
  font-size: 24px;
  font-weight: 600;
}

.ardaddr {
  color: #444;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  font-size: 15px;
  display: flex;
}

.ardmaps {
  color: #2563eb;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
}

.ardmaps:hover {
  text-decoration: underline;
}

.arddesc {
  color: #666;
  margin-bottom: 20px;
  font-size: 14px;
  font-style: italic;
  line-height: 1.5;
}

.ardphotos {
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  display: grid;
}

.ardphoto .ph {
  color: #64748b;
  background: linear-gradient(135deg, #e2e8f0, #f1f5f9);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  height: 170px;
  font-size: 13px;
  font-weight: 500;
  display: flex;
}

.ardphoto .ph.plus {
  color: #475569;
  cursor: pointer;
  background: #fff;
  border: 2px dashed #cbd5e1;
}

.ardphoto.add:hover .ph.plus {
  border-color: var(--primary);
  color: var(--primary);
}

.ardphoto .phact {
  gap: 8px;
  margin-top: 8px;
  display: flex;
}

.ardnote {
  color: #94a3b8;
  margin-top: 18px;
  font-size: 12px;
  line-height: 1.5;
}

.ardhead {
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
  padding-right: 40px;
  display: flex;
}

.ardhead .ardtitle {
  margin: 0;
  padding-right: 0;
}

.ardhead .ardedit {
  flex-shrink: 0;
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.ardfld {
  margin-bottom: 14px;
}

.ardfld label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-500);
  margin-bottom: 5px;
  font-size: 10.5px;
  font-weight: 600;
  display: block;
}

.ardfld .edin, .ardfld textarea {
  width: 100%;
}

.ardfld .pd {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 11px;
}

.ardphoto .phleg {
  width: 100%;
  margin-top: 8px;
}

.btn-xs.danger {
  color: var(--err);
  border-color: #fecdd3;
}

.acthead {
  text-transform: uppercase;
  letter-spacing: .06em;
  align-items: center;
  gap: 8px;
  margin: 16px 0 7px;
  font-size: 10.5px;
  font-weight: 700;
  display: flex;
}

.acthead .n2 {
  font-weight: 500;
}

.acthead.ov {
  color: var(--err);
}

.acthead.td {
  color: var(--primary);
}

.acthead.sn {
  color: var(--warn);
}

.acthead.lt {
  color: var(--ink-400);
}

.acthead.dm {
  color: var(--ink-700);
}

.actlist {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.act-charge {
  margin: 0 0 14px;
}

.act-charge-vide {
  color: var(--ink-500);
  font-size: 12.5px;
}

.act-charge-l {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  display: flex;
}

.act-charge-t {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-500);
  margin-right: 4px;
  font-size: 10.5px;
  font-weight: 700;
}

.act-tuile, .act-role {
  border: 1px solid var(--line-2);
  max-width: 100%;
  height: 28px;
  color: var(--ink-700);
  white-space: nowrap;
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  font-size: 12.5px;
  font-weight: 500;
  display: inline-flex;
}

.act-tuile {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-color: #c7d2fe;
}

.act-role {
  cursor: pointer;
}

.act-role:hover {
  color: var(--ink-900);
  border-color: #cbd5e1;
}

.act-role.on {
  border-color: var(--primary);
  color: var(--ink-900);
  box-shadow: inset 0 0 0 1px var(--primary);
}

.act-role:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 1px;
}

.act-tuile b, .act-role b, .act-charge-p b {
  color: var(--ink-900);
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}

.act-tuile i, .act-role i, .act-charge-p i, .act-nb i {
  color: var(--ink-400);
  font-size: 11px;
  font-style: normal;
  font-weight: 400;
}

.act-charge-p {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  margin-top: 8px;
  padding: 10px 12px;
}

.act-charge-p .fsearch {
  width: 100%;
  min-width: 0;
  max-width: 280px;
  margin-bottom: 8px;
}

.act-charge-p .fsearch input {
  min-width: 0;
}

.act-charge-p ul {
  grid-template-columns: repeat(auto-fill, minmax(min(170px, 100%), 1fr));
  gap: 6px;
  max-height: 236px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  overflow: hidden auto;
}

.act-charge-p li {
  background: var(--line);
  border: 1px solid var(--line-2);
  border-radius: 8px;
  min-width: 0;
}

.act-pers {
  width: 100%;
  min-width: 0;
  font: inherit;
  color: var(--ink-900);
  text-align: left;
  background: none;
  border: 0;
  border-radius: 7px;
  align-items: baseline;
  gap: 8px;
  margin: 0;
  padding: 7px 10px;
  font-size: 13px;
  font-weight: 500;
  display: flex;
}

button.act-pers {
  cursor: pointer;
}

button.act-pers:hover {
  background: var(--primary-50);
  color: var(--ink-900);
}

button.act-pers:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

button.act-pers:disabled {
  cursor: progress;
  opacity: .6;
}

.act-charge-p .nm {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

@media (max-width: 480px) {
  .act-tuile, .act-role {
    white-space: normal;
    flex-wrap: wrap;
    row-gap: 0;
    height: auto;
    min-height: 28px;
    padding: 4px 10px;
  }
}

.act-nb {
  height: 24px;
  color: var(--ink-700);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  flex: none;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  font-size: 11.5px;
  font-weight: 500;
  display: inline-flex;
}

.act-nb + .act-d {
  margin-left: 14px;
}

@media (max-width: 480px) {
  .actrow2 {
    flex-wrap: wrap;
    row-gap: 0;
  }

  .actrow2 > .tl-m {
    flex-basis: 100%;
  }

  .actrow2 .act-nb {
    margin-left: 0;
  }

  .actrow2 .act-nb + .act-d {
    margin-left: auto;
  }
}

.actrow {
  border: 1px solid var(--line-2);
  cursor: pointer;
  background: #fff;
  border-radius: 10px;
  align-items: flex-start;
  gap: 11px;
  padding: 9px 12px;
  display: flex;
}

.actrow:hover {
  box-shadow: var(--sh-hover);
}

.actrow.ov {
  border-color: #fecdd3;
}

.actrow.td {
  border-color: #c7d2fe;
}

.actrow.sn {
  border-color: #fde68a;
}

.actrow .ic {
  color: var(--ink-400);
  margin-top: 2px;
}

.actrow.ov .ic {
  color: var(--err);
}

.actrow.td .ic {
  color: var(--primary);
}

.actrow.sn .ic {
  color: var(--warn);
}

.actrow .tx {
  flex: 1;
  min-width: 0;
}

.actrow .t {
  color: var(--ink-800);
  font-size: 12.5px;
}

.actrow .ctx {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11px;
}

.actrow .u {
  color: var(--ink-500);
  white-space: nowrap;
  margin-top: 1px;
  font-size: 11px;
}

.actrow .ar {
  color: var(--ink-300);
  margin-top: 1px;
}

.sigchips {
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  display: flex;
}

.sigchips button {
  border: 1px solid var(--line-2);
  color: var(--ink-500);
  background: #fff;
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 11.5px;
}

.sigchips button.on {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-color: #c7d2fe;
  font-weight: 600;
}

.sigstats {
  color: var(--ink-500);
  gap: 14px;
  margin: 2px 0 10px;
  font-size: 11.5px;
  display: flex;
}

.sigstats .ko {
  color: var(--err);
}

.sigses {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 11px;
  margin-bottom: 12px;
  overflow: hidden;
}

.sigses .sh {
  border-bottom: 1px solid var(--line-2);
  color: var(--ink-500);
  background: #f8fafc;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  padding: 9px 14px;
  font-size: 11.5px;
  display: flex;
}

.sigses .sh b {
  color: var(--ink-800);
  font-size: 12px;
}

.sigses .sh .sep, .dot2 {
  color: var(--ink-300);
}

.sigrow {
  border-bottom: 1px solid var(--line);
  padding: 10px 14px;
}

.sigrow:last-child {
  border-bottom: none;
}

.sigrow .l1 {
  color: var(--ink-800);
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  display: flex;
}

.sigrow .l1 .ic {
  color: var(--ink-400);
  display: inline-flex;
}

.sigrow .l1 .doc {
  color: var(--ink-500);
  font-size: 11.5px;
}

.sigrow .l2 {
  color: var(--ink-500);
  align-items: center;
  gap: 7px;
  margin-top: 5px;
  padding-left: 22px;
  font-size: 11px;
  display: flex;
}

.sigrow .l2 button {
  margin-left: auto;
}

.ok2 {
  color: var(--ok);
}

.ko2 {
  color: var(--err);
  font-weight: 600;
}

.warn2 {
  background: var(--warn-50);
  color: #b45309;
  border: 1px solid #fde68a;
  border-radius: 5px;
  padding: 0 5px;
  font-size: 10px;
  font-weight: 600;
}

.warnbar {
  background: var(--warn-50);
  color: #92400e;
  border: 1px solid #fde68a;
  border-radius: 9px;
  margin: 4px 0 12px;
  padding: 9px 12px;
  font-size: 11.5px;
  line-height: 1.5;
}

.tplrow .tx {
  flex: 1;
  min-width: 0;
}

.tplrow .chip {
  margin-left: auto;
}

.tplrow .btn {
  flex-shrink: 0;
}

.tabsline {
  border-bottom: 1px solid var(--line-2);
  gap: 2px;
  margin: 2px 0 14px;
  display: flex;
  overflow-x: auto;
}

.tabsline button {
  color: var(--ink-500);
  white-space: nowrap;
  border-bottom: 2px solid #0000;
  margin-bottom: -1px;
  padding: 8px 14px;
  font-size: 12.5px;
  font-weight: 500;
}

.tabsline button:hover {
  color: var(--ink-700);
}

.tabsline button.on {
  color: var(--primary);
  border-bottom-color: var(--primary);
  font-weight: 600;
}

.mono {
  color: var(--ink-600, #475569);
  border: 1px solid var(--line-2);
  background: #f8fafc;
  border-radius: 5px;
  padding: 1px 6px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 11.5px;
}

.remmeta {
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 8px;
  margin-top: 7px;
  display: flex;
}

.remmeta .chip {
  white-space: nowrap;
  flex-shrink: 0;
}

.rembd .card .t {
  -webkit-line-clamp: 3;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.rembd .card .remmeta .sm {
  color: var(--ink-500);
  overflow-wrap: anywhere;
  font-size: 11.5px;
}

.rembd .card.clickable:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.board.rembd {
  min-height: 0;
  overflow-x: visible;
}

.board.rembd .col {
  background: #f8fafce6;
}

.board.rembd .colbody {
  min-height: 110px;
}

.autolist {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.autocard {
  border: 1px solid var(--line-2);
  cursor: pointer;
  background: #fff;
  border-radius: 11px;
  align-items: center;
  gap: 14px;
  padding: 13px 15px;
  display: flex;
}

.autocard:hover {
  background: #f8fafc;
}

.autocard .ic {
  background: var(--primary-50);
  width: 34px;
  height: 34px;
  color: var(--primary);
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  display: flex;
}

.autocard .ic.tpl {
  background: var(--warn-50);
  color: #b45309;
}

.autocard .tx {
  flex: 1;
  min-width: 0;
}

.autocard .nm {
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 500;
}

.autocard .ds {
  color: var(--ink-400);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 2px;
  font-size: 11px;
  overflow: hidden;
}

.autocard .catb {
  color: var(--ink-500);
  background: #f1f5f9;
  border-radius: 999px;
  flex-shrink: 0;
  padding: 2px 9px;
  font-size: 10px;
  font-weight: 600;
}

.autocard .stb {
  border-radius: 999px;
  flex-shrink: 0;
  padding: 2px 9px;
  font-size: 10px;
  font-weight: 600;
}

.autocard .stb.on {
  background: var(--ok-50);
  color: var(--ok);
}

.autocard .stb.off {
  color: var(--ink-500);
  background: #f1f5f9;
}

.autocard .stb.always {
  background: var(--primary-50);
  color: var(--primary);
}

.autocard .stat {
  text-align: right;
  min-width: 150px;
  color: var(--ink-400);
  flex-shrink: 0;
  font-size: 11px;
}

.autocard .chev {
  color: var(--ink-300);
  font-size: 16px;
}

.anohead {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 2px 0 14px;
  display: flex;
}

.anohead .ctl {
  color: var(--ink-400);
  align-items: center;
  gap: 12px;
  margin-left: auto;
  font-size: 11.5px;
  display: flex;
}

.anohead .ctltx {
  text-align: right;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  display: flex;
}

.anohead .ctlapps {
  color: var(--ink-400);
  font-size: 10.5px;
}

.anofam {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  margin: 16px 0 7px;
  font-size: 10.5px;
  font-weight: 600;
}

.anofam:first-of-type {
  margin-top: 4px;
}

.ano {
  box-shadow: var(--sh-carte);
  background: #fff;
  border: 1px solid #dfe4ec;
  border-radius: 11px;
  margin-bottom: 8px;
  overflow: hidden;
}

.ano > summary {
  cursor: pointer;
  align-items: center;
  gap: 9px;
  padding: 11px 14px;
  list-style: none;
  display: flex;
}

.ano > summary::-webkit-details-marker {
  display: none;
}

.ano > summary .chev {
  color: var(--ink-300);
  font-size: 11px;
  transition: transform .15s;
}

.ano[open] > summary .chev {
  transform: rotate(90deg);
}

.ano .nm {
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 600;
}

.ano .cnt2 {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  background: #f1f5f9;
  border-radius: 999px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 600;
}

.ano.err .cnt2 {
  background: var(--err-50);
  color: var(--err);
}

.ano.warn .cnt2 {
  background: var(--warn-50);
  color: var(--warn);
}

.ano.ok .nm {
  color: var(--ink-500);
  font-weight: 500;
}

.ano .src {
  color: var(--ink-400);
  white-space: nowrap;
  margin-left: auto;
  font-size: 10.5px;
}

.anobody {
  border-top: 1px solid var(--line);
  padding: 0 14px 12px;
}

.anod {
  color: var(--ink-500);
  margin: 9px 0 4px;
  font-size: 11.5px;
  line-height: 1.5;
}

.anocase {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  display: flex;
}

.anocase .tt {
  color: var(--ink-800);
  font-size: 12.5px;
  font-weight: 600;
}

.anocase .sm {
  color: var(--ink-400);
  margin-top: 1px;
  font-size: 11px;
}

.anocase .acts {
  flex-shrink: 0;
  gap: 6px;
  margin-left: auto;
  display: flex;
}

.anonone {
  color: var(--ok);
  padding: 9px 0 2px;
  font-size: 11.5px;
}

.anocmp {
  flex-wrap: wrap;
  gap: 20px;
  margin: 5px 0 2px;
  display: flex;
}

.anocmp > div {
  flex-direction: column;
  gap: 1px;
  min-width: 180px;
  display: flex;
}

.anocmp .ct {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 10px;
  font-weight: 600;
}

.anocmp .cv {
  color: var(--ink-800);
  font-size: 12px;
  font-weight: 600;
}

.anocmp.ec .cv {
  color: var(--err);
}

.anocase > div:first-child {
  min-width: 0;
}

.genwrap {
  max-width: 880px;
  margin: 0 auto;
}

.genrow {
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px 18px;
  margin-bottom: 12px;
  display: grid;
}

.genfld .k {
  color: var(--ink-600, #475569);
  margin-bottom: 4px;
  font-size: 11px;
  font-weight: 600;
}

.genfld .edin {
  width: 100%;
}

.genfld .pd {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 10.5px;
  line-height: 1.45;
}

.gensec {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  border-top: 1px solid var(--line);
  margin: 16px 0 8px;
  padding-top: 12px;
  font-size: 10.5px;
  font-weight: 600;
}

.frow.demande {
  background: #fbfcfd;
  border-style: dashed;
}

.frow.demande .tt {
  color: var(--ink-500);
}

.fchk {
  color: var(--ink-500);
  cursor: pointer;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  font-size: 11.5px;
  display: flex;
}

.fchk .n2 {
  color: var(--ink-400);
}

.gentbl input {
  width: 100%;
}

.genadd {
  align-items: center;
  gap: 12px;
  margin-top: 8px;
  display: flex;
}

.genadd .tot {
  color: var(--ink-600, #475569);
  margin-left: auto;
  font-size: 12px;
}

.paypanel {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 9px;
  margin: 2px 0 10px 25px;
  padding: 9px 11px;
}

.paypanel .pph {
  color: var(--ink-500);
  border-bottom: 1px solid var(--line);
  align-items: baseline;
  gap: 8px;
  padding-bottom: 7px;
  font-size: 11px;
  display: flex;
}

.paypanel .pph .ttl {
  color: var(--ink-800);
  font-size: 11.5px;
  font-weight: 600;
}

.paypanel .pph .rest {
  font-variant-numeric: tabular-nums;
  color: var(--ink-700);
  margin-left: auto;
  font-weight: 600;
}

.paypanel .pph .rest.ok {
  color: var(--ok);
}

.paytbl {
  border-collapse: collapse;
  width: 100%;
  font-size: 11.5px;
}

.paytbl td {
  border-bottom: 1px solid var(--line);
  color: var(--ink-600, #475569);
  padding: 5px 0;
}

.paytbl tr:last-child td {
  border-bottom: none;
}

.paytbl .amt {
  text-align: right;
  font-variant-numeric: tabular-nums;
  color: var(--ink-800);
  white-space: nowrap;
  font-weight: 600;
}

.paytbl .lib {
  color: var(--ink-700);
}

.paytbl .dt {
  color: var(--ink-400);
  white-space: nowrap;
}

.paytbl .act {
  text-align: right;
  white-space: nowrap;
}

.paynone {
  color: var(--ink-400);
  padding: 7px 0 2px;
  font-size: 11.5px;
}

.payrap {
  border-top: 1px dashed var(--line-2);
  margin-top: 8px;
  padding-top: 8px;
}

.payrap > summary {
  cursor: pointer;
  color: var(--primary);
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.payrap > summary .chev {
  color: var(--ink-400);
  transition: transform .15s;
}

.payrap .sub2 {
  color: var(--ink-400);
  font-weight: 400;
}

.payq {
  border: 1px solid var(--line-2);
  color: var(--ink-400);
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  margin: 8px 0 4px;
  padding: 3px 8px;
  display: flex;
}

.payq input {
  color: var(--ink-800);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  font-size: 11.5px;
}

.btn-xs {
  border: 1px solid var(--line-2);
  color: var(--ink-700);
  background: #fff;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: 10.5px;
  font-weight: 600;
}

.btn-xs:hover {
  border-color: var(--primary);
  color: var(--primary);
}

.btn-xs.p {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
}

.btn-xs.p:hover {
  opacity: .9;
  color: #fff;
}

.facline {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: flex;
}

#modal3 {
  z-index: 240;
  background: #0f172a59;
  justify-content: center;
  align-items: flex-start;
  padding: 8vh 16px;
  display: flex;
  position: fixed;
  inset: 0;
}

#modal3 .mbox {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 24px 64px #0f172a33;
}

#modal3 .mhead {
  border-bottom: 1px solid var(--line);
  padding: 16px 20px 12px;
}

#modal3 .mbody {
  color: var(--ink-700);
  padding: 14px 20px 18px;
  font-size: 12.5px;
  line-height: 1.55;
}

.mhead .who2 {
  color: var(--ink-500);
  margin-left: 6px;
  font-weight: 500;
}

.swcascade {
  background: var(--warn-50);
  color: #92400e;
  border-bottom: 1px solid #fde68a;
  padding: 8px 20px;
  font-size: 11.5px;
  line-height: 1.45;
}

.swnote {
  background: var(--bg-soft, #f4f5f8);
  color: var(--ink-700, #334155);
  border-radius: 10px;
  margin: 14px 20px 0;
  padding: 10px 14px;
  font-size: 12px;
  line-height: 1.5;
}

.swnote .muted {
  color: var(--ink-500);
  margin-top: 4px;
}

.swbar {
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 14px 20px 12px;
  display: flex;
}

.swbar-fin {
  align-items: center;
  gap: 12px;
  margin-left: auto;
  font-size: 12px;
  display: flex;
}

.swattente {
  color: #3730a3;
  background: #eef2ff;
  border-radius: 10px;
  align-items: flex-start;
  gap: 10px;
  margin: 12px 20px 0;
  padding: 10px 14px;
  font-size: 12px;
  line-height: 1.5;
  display: flex;
}

.swattente .swspin {
  margin-top: 2px;
}

.swspin {
  border: 2px solid #c7d2fe;
  border-top-color: #4f46e5;
  border-radius: 50%;
  flex: none;
  width: 14px;
  height: 14px;
  animation: .7s linear infinite spin;
}

.swlist {
  max-height: 46vh;
  padding: 12px 20px 18px;
  overflow-y: auto;
}

.swlist .swrow {
  text-align: left;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  width: 100%;
  margin-bottom: 8px;
  padding: 11px 14px;
  transition: border-color .12s, background .12s, opacity .12s;
  display: flex;
}

.swlist .swrow:last-child {
  margin-bottom: 0;
}

.swlist .swrow:hover:not(:disabled) {
  background: #f8fafc;
  border-color: #a5b4fc;
}

.swlist .swrow:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #4f46e5;
}

.swrow.full {
  background: #fff5f6;
  border-color: #fecdd3;
}

.swrow.full:hover:not(:disabled) {
  background: #fff1f2;
  border-color: #fda4af;
}

.swlist.fige .swrow:not(.travaille) {
  opacity: .45;
  cursor: not-allowed;
}

.swlist .swrow.travaille {
  cursor: progress;
  background: #eef2ff;
  border-color: #4f46e5;
}

.swrow .swtxt {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.swrow .nm {
  color: var(--ink-800);
  font-size: 13px;
  font-weight: 600;
}

.swrow .occ {
  color: #27755a;
  white-space: nowrap;
  background: #ecfdf5;
  border-radius: 999px;
  flex: none;
  padding: 3px 9px;
  font-size: 11px;
  font-weight: 500;
}

.swrow .occ.ko {
  color: var(--err);
  background: #ffe4e6;
  font-weight: 600;
}

.swrow .swetat {
  color: #3730a3;
  white-space: nowrap;
  flex: none;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.swrow .l2 {
  color: var(--ink-500);
  font-size: 12px;
}

@media (prefers-reduced-motion: reduce) {
  .swspin {
    animation-duration: 2s;
  }
}

.mact2 {
  border-top: 1px solid var(--line);
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
  padding: 14px 0 2px;
  display: flex;
}

@media (min-width: 720px) {
  .mact2 {
    flex-wrap: nowrap;
  }

  .mact2 .btn {
    white-space: nowrap;
    flex: 0 auto;
    min-width: 0;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.col.sepcol {
  margin-left: 17px;
  position: relative;
}

.col.sepcol:before {
  content: "";
  border-left: 1.5px dashed var(--line-2);
  position: absolute;
  top: 0;
  bottom: 0;
  left: -17px;
}

.colbulk {
  flex-direction: column;
  gap: 5px;
  margin: 0 2px 9px;
  display: flex;
}

.bulkbtn {
  width: 100%;
  color: var(--ink-700);
  border: 1px solid var(--line-2);
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
}

.bulkbtn:hover {
  border-color: var(--primary);
  color: var(--primary);
}

.bulkbtn .n {
  color: var(--ink-400);
  font-weight: 500;
}

.colsec {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-500);
  border-top: 1px dashed var(--line-2);
  margin: 10px 2px 6px;
  padding-top: 8px;
  font-size: 10px;
  font-weight: 600;
}

.colsec span {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-400);
  margin-left: 4px;
  font-weight: 400;
}

.colempty {
  color: var(--ink-300);
  padding: 2px 4px 6px;
  font-size: 11px;
}

.mhead .row {
  align-items: center;
}

.mhead .row .badge {
  margin-left: 4px;
}

.igrid {
  grid-template-columns: repeat(2, 1fr);
  gap: 9px 16px;
  display: grid;
}

.ifld .k {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 10px;
  font-weight: 600;
}

.ifld .v {
  color: var(--ink-800);
  margin-top: 2px;
  font-size: 12.5px;
  line-height: 1.4;
}

.ifld .v .muted {
  color: var(--ink-300);
}

.ilink {
  color: var(--primary);
  cursor: pointer;
  font-weight: 600;
}

.ilink:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

button.ilink {
  font: inherit;
  color: var(--primary);
  background: none;
  border: 0;
  padding: 0;
  font-weight: 600;
}

button.ilink:disabled {
  opacity: .55;
  cursor: wait;
}

.dlink {
  color: var(--primary-dark);
  cursor: pointer;
  font-weight: 500;
  text-decoration: none;
}

.dlink:hover {
  text-underline-offset: 3px;
  -webkit-text-decoration: underline #c7d2fe;
  text-decoration: underline #c7d2fe;
}

.dlink.muted2 {
  color: var(--ink-400);
  cursor: default;
}

.dlink.muted2:hover {
  text-decoration: none;
}

button.dlink {
  font: inherit;
  color: var(--primary-dark);
  background: none;
  border: 0;
  padding: 0;
  font-weight: 500;
}

button.dlink:disabled {
  opacity: .55;
  cursor: wait;
}

.aptodo-cell {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  display: inline-flex;
}

.dlink-espace {
  white-space: nowrap;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  display: inline-flex;
}

.aptodo-cell .apnom-err {
  flex: 100%;
}

.stepline {
  color: var(--ink-500);
  align-items: center;
  gap: 6px;
  margin: 0 0 8px;
  font-size: 11.5px;
  display: flex;
}

.stepline .pill {
  background: #818cf8;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.stepline b {
  color: var(--ink-900);
  font-weight: 600;
}

.hist {
  border-top: none;
  margin-top: 0;
  margin-bottom: 8px;
  padding-top: 0;
}

.hrow {
  color: var(--ink-400);
}

.hrow.mine {
  color: var(--ink-700);
}

.hrow.ev {
  color: var(--ok);
  font-weight: 600;
}

.hrow .dot {
  background: #10b981;
  border-radius: 50%;
  flex-shrink: 0;
  width: 7px;
  height: 7px;
  margin-top: 5px;
}

.cur {
  background: var(--primary-50);
  border: 1px solid #e0e7ff;
  border-radius: 10px;
  padding: 10px 12px;
}

.curh {
  color: var(--primary-dark);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.curh .n2 {
  color: var(--primary);
  font-size: 11px;
  font-weight: 500;
}

.cur .tasks {
  border-top: none;
  margin-top: 6px;
  padding-top: 0;
}

.cur .task:hover {
  background: #fff;
}

.cur .empty {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 12px;
}

.evrow {
  color: var(--ok);
  align-items: center;
  margin: 2px 0 6px;
  padding: 2px 0;
  font-size: 11.5px;
  font-weight: 600;
  display: flex;
  position: relative;
}

.evrow .ev-node {
  justify-content: center;
  align-items: center;
  width: 19px;
  height: 19px;
  display: flex;
  position: absolute;
  top: 2px;
  left: -28px;
}

.evrow .dot {
  background: #10b981;
  border-radius: 50%;
  flex-shrink: 0;
  width: 7px;
  height: 7px;
}

.evrow.later {
  color: var(--ok);
  font-weight: 600;
}

.evrow.later .dot {
  background: #10b981;
}

.evrow.done {
  opacity: .75;
}

.stepper .st[data-process-etape]:hover {
  cursor: default;
  transform: none;
}

.evrow.jalon {
  color: var(--ok);
  margin: 3px 0 8px;
}

.evrow.jalon .dot {
  border-radius: 2px;
  width: 11px;
  height: 8px;
}

.evrow.centre {
  text-align: center;
  justify-content: center;
}

.evrow.centre .ev-node {
  margin-right: 6px;
  position: static;
  top: auto;
  left: auto;
}

.evrow.centre.muted .dot {
  background: var(--line-2);
}

.msec .pc-page {
  color: var(--ink-500);
  font-weight: 400;
}

.msec .pc-page .ilink {
  font-weight: 600;
}

.pc-tuto-reglage {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

.pc-res-reglage {
  color: var(--ink-400);
  border-radius: 5px;
  padding: 2px 6px;
  font-size: 11px;
  transition: color .12s, background .12s;
}

.pc-res-reglage:hover {
  color: var(--primary);
  background: var(--primary-50);
}

.pc-res-reglage:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 1px;
}

.pc-res-note {
  color: var(--ink-300);
}

.pc-res-choix {
  align-items: center;
  gap: 6px;
  max-width: 100%;
  display: flex;
}

.pc-res-annuler {
  color: var(--ink-400);
  border-radius: 5px;
  padding: 2px 6px;
  font-size: 11px;
}

.pc-res-annuler:hover {
  color: var(--ink-700);
}

[data-process-duo] {
  gap: 24px;
}

[data-process-duo] > .pc-fenetre {
  width: auto;
  max-width: var(--fenetre-largeur);
  overscroll-behavior: contain;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  height: 86dvh;
  display: flex;
}

[data-process-duo] > .pc-fenetre > .mbody {
  flex: 1 0 auto;
}

.pc-tuto {
  animation: .32s cubic-bezier(.2, .7, .2, 1) 80ms backwards pc-tuto-entree;
}

@keyframes pc-tuto-entree {
  from {
    opacity: 0;
    transform: translateX(24px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pc-tuto {
    animation: none;
  }
}

.pc-tuto-btn {
  border: 1px solid var(--line-2);
  height: 28px;
  color: var(--ink-700);
  letter-spacing: .07em;
  white-space: nowrap;
  background: #fff;
  border-radius: 7px;
  align-items: center;
  padding: 0 11px;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1;
  transition: border-color .14s, background .14s, color .14s;
  display: inline-flex;
}

.pc-tuto-btn:hover, .pc-tuto-btn[aria-expanded="true"] {
  border-color: var(--primary);
  background: var(--primary-50);
  color: var(--primary);
}

.pc-tuto-btn:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.pc-tuto-retour {
  color: var(--primary);
  align-items: center;
  margin: -4px 0 8px;
  padding: 4px 0;
  font-size: 12.5px;
  font-weight: 600;
  display: none;
}

.pc-tuto-retour:hover {
  text-underline-offset: 2px;
  text-decoration: underline;
}

.pc-tuto-retour:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
  border-radius: 5px;
}

@media (max-width: 999px) {
  [data-process-duo] > .pc-process {
    display: none;
  }

  .pc-tuto-retour {
    display: inline-flex;
  }
}

.pc-tuto .t {
  overflow-wrap: anywhere;
  min-width: 0;
}

.pc-tuto-onglets {
  gap: 4px;
  margin-top: 10px;
  display: flex;
  overflow-x: auto;
}

.pc-tuto-onglets button {
  color: var(--ink-500);
  white-space: nowrap;
  border-radius: 8px;
  padding: 7px 12px;
  font-size: 12px;
}

.pc-tuto-onglets button:hover {
  background: var(--bg);
  color: var(--ink-800);
}

.pc-tuto-onglets button[aria-selected="true"] {
  background: var(--primary-50);
  color: var(--primary);
  font-weight: 600;
}

.pc-tuto-onglets button:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.pc-tuto .mbody {
  background: #fff;
  padding: 6px 16px 20px;
}

.pc-tuto-corps .bn-editor {
  padding: 12px 8px;
  font-size: 14px;
  line-height: 1.65;
}

.pc-tuto-corps .bn-editor [data-content-type="heading"] {
  --level: 23px;
  line-height: 1.35;
}

@media (max-width: 600px) {
  .pc-tuto-corps .bn-editor [data-content-type="heading"] {
    --level: 20px;
  }
}

.pc-tuto-vide {
  text-align: center;
  color: var(--ink-500);
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 36px 12px;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
}

.fut {
  margin-top: 10px;
}

.fut summary {
  cursor: pointer;
  color: var(--ink-500);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.fut summary::-webkit-details-marker {
  display: none;
}

.fut summary:before {
  content: "▸";
  color: var(--ink-400);
  font-size: 10px;
  transition: transform .15s;
}

.fut[open] summary:before {
  transform: rotate(90deg);
}

.fut summary .n2 {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 400;
}

.steps {
  border-top: 1px solid var(--line-2);
  margin-top: 4px;
  padding-top: 18px;
}

.stepper {
  align-items: center;
  padding: 2px 0 16px;
  display: flex;
}

.stepper .st {
  width: 26px;
  height: 26px;
  color: var(--ink-400);
  background: #f1f5f9;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 11px;
  font-weight: 600;
  transition: all .14s;
  display: flex;
}

.stepper .st:hover {
  transform: scale(1.1);
}

.stepper .st.cur {
  background: var(--warn-50);
  color: var(--warn);
}

.stepper .st.vu {
  background: var(--primary);
  color: #fff;
  box-shadow: var(--sh-carte);
}

.stepper .st.ok {
  background: var(--ok);
  color: #fff;
}

.stepper .st.ok.reste {
  background: var(--warn-50);
  color: var(--warn);
  box-shadow: inset 0 0 0 1.5px var(--warn);
}

.stepper .stl {
  background: var(--line-2);
  flex: none;
  width: 18px;
  height: 1px;
}

.stepper .stl.ok {
  background: #6ee7b7;
}

.stepper .stn {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  margin-left: auto;
  padding-left: 12px;
  font-size: 11.5px;
}

.stephead {
  align-items: center;
  gap: 10px;
  padding: 0 0 12px;
  display: flex;
}

.stnav {
  width: 30px;
  height: 30px;
  color: var(--ink-500);
  background: #f8fafc;
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 17px;
  line-height: 1;
  transition: all .12s;
  display: flex;
}

.stnav:hover:not([disabled]) {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.stnav[disabled] {
  opacity: .3;
  cursor: default;
}

.stx {
  flex: 1;
  min-width: 0;
}

.stt {
  color: var(--ink-900);
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.3;
}

.sts {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
}

.stc {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  background: #f1f5f9;
  border-radius: 999px;
  flex-shrink: 0;
  padding: 2px 10px;
  font-size: 12px;
  font-weight: 600;
}

.tasks.fut {
  opacity: .62;
}

.tlist {
  margin-top: 2px;
  padding-left: 28px;
  position: relative;
}

.tlist:before {
  content: "";
  background: var(--line-2);
  width: 1px;
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 9px;
}

.tlist.fut {
  opacity: .75;
}

.tl {
  align-items: flex-start;
  gap: 9px;
  min-height: 36px;
  padding: 6px 0 6px 2px;
  display: flex;
  position: relative;
}

.tl-node {
  border: 2px solid var(--line-2);
  z-index: 1;
  background: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 19px;
  height: 19px;
  transition: all .14s;
  display: flex;
  position: absolute;
  top: 8.5px;
  left: -28px;
}

.tl.ok > .tl-node {
  background: var(--ok);
  border-color: var(--ok);
}

.tl.ok > .tl-node:after {
  content: "";
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  width: 7px;
  height: 3.5px;
  transform: rotate(-45deg)translate(.5px, -1px);
}

.tl.now > .tl-node {
  background: var(--primary);
  border-color: var(--primary);
}

.tl.now > .tl-node:after {
  content: "";
  background: #fff;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.tl-m {
  flex: 1;
  align-items: baseline;
  gap: 9px;
  min-width: 0;
  padding-top: 2px;
  line-height: 1.5;
  display: flex;
}

.tl-m .who {
  min-width: 66px;
  color: var(--ink-400);
  white-space: nowrap;
  background: none;
  flex: none;
  padding: 0;
  font-size: 11.5px;
  font-weight: 600;
}

.tl.now .who {
  color: var(--ink-500);
}

.tl-body {
  flex: 1;
  min-width: 0;
  display: block;
}

.tl-m .lbl {
  color: var(--ink-400);
  font-size: 13.5px;
}

.tl.pc .lbl {
  color: var(--ink-700);
}

.tl.now .lbl {
  color: var(--ink-900);
  font-weight: 600;
}

.tl.now:not(.mine) .lbl {
  color: var(--ink-400);
  font-weight: 500;
}

.tl.now:not(.mine) .who {
  color: var(--ink-400);
}

.tl.ok .lbl {
  text-decoration: line-through;
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
}

.tl.todo.mine .lbl {
  color: var(--ink-600);
}

.tl-tr {
  display: inline;
}

.tl-tr:empty, .tl-r:empty, .tl-ic:empty {
  display: none;
}

.tl-m .tr, .tl-m .pop {
  vertical-align: baseline;
  margin-left: 10px;
}

.tr {
  color: var(--ink-500);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  cursor: default;
  background: none;
  border: none;
  align-items: center;
  gap: 3px;
  padding: 0;
  font-family: inherit;
  font-size: 12px;
  font-weight: 500;
  transition: color .12s;
  display: inline-flex;
}

.tr[href], .tr.act {
  cursor: pointer;
  color: var(--primary-dark);
}

.tr[href]:hover, .tr.act:hover {
  text-underline-offset: 3px;
  -webkit-text-decoration: underline #c7d2fe;
  text-decoration: underline #c7d2fe;
}

.tr .ic {
  color: var(--ink-400);
}

.tr[href]:hover .ic, .tr.act:hover .ic {
  color: var(--primary);
}

.tr.soft {
  color: var(--ink-400);
}

.tl.now .tr {
  font-size: 12.5px;
}

.tl-r {
  flex: none;
  align-items: center;
  gap: 10px;
  min-height: 24px;
  margin-left: auto;
  display: flex;
}

.tl-ic {
  flex: none;
  align-items: center;
  gap: 4px;
  height: 24px;
  display: inline-flex;
}

.tl-nat {
  cursor: default;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  margin-left: 2px;
  display: inline-flex;
}

.tl-nat .ic.round {
  color: var(--ink-500);
  background: #f1f5f9;
}

.tl-nat.robot .ic.round {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.tl-nat.eclair .ic.round {
  background: var(--ok-50);
  color: var(--ok);
}

.tl-nat.attend .ic.round {
  animation: 1.6s ease-in-out infinite natpulse;
}

.tl-nat.coupe .ic.round {
  border: 1px dashed var(--ink-300);
  color: var(--ink-400);
  background: #fff;
}

@keyframes natpulse {
  0%, 100% {
    opacity: .45;
  }

  50% {
    opacity: 1;
  }
}

.tl.ok .tl-nat, .tl.todo .tl-nat {
  opacity: .6;
}

.tl-tpl {
  color: var(--ink-400);
  border: 1px solid var(--line);
  background: #f8fafc;
  border-radius: 4px;
  margin-left: 8px;
  padding: 0 6px;
  font-size: 10.5px;
}

.tl-chrono {
  color: var(--ink-400);
  border: 1px solid var(--line);
  white-space: nowrap;
  vertical-align: baseline;
  cursor: default;
  background: #f8fafc;
  border-radius: 4px;
  margin-left: 8px;
  padding: 0 6px;
  font-size: 10.5px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-block;
}

.tl-chrono.date {
  color: var(--ink-700);
  border-color: var(--line-2);
}

.stt .tl-chrono {
  vertical-align: middle;
  font-size: 10.5px;
  font-weight: 500;
}

.tl-etat {
  color: var(--ink-400);
  white-space: nowrap;
  font-size: 11.5px;
  font-weight: 500;
}

.tl-err {
  color: var(--err);
  white-space: normal;
  margin-top: 2px;
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.4;
  display: block;
}

.tl-src {
  color: var(--muted);
  white-space: normal;
  margin-top: 2px;
  font-size: 11.5px;
  line-height: 1.4;
  display: block;
}

.b2.rl {
  color: var(--primary-dark);
  background: var(--primary-50);
  border-color: #c7d2fe;
}

.b2.rl:hover {
  background: #e0e7ff;
}

.tl:has( > .rl-a) {
  align-items: baseline;
  gap: 10px;
  display: flex;
}

.tl > .rl-a {
  font-size: 11px;
  position: static;
}

.actrow2:hover .tl-node {
  border-color: var(--primary);
}

.actrow2 {
  cursor: pointer;
}

.actrow2 .lbl {
  color: var(--ink-900);
}

.actrow2 .who {
  color: var(--ink-500);
}

.actrow2 .act-ctx {
  color: var(--ink-400);
  margin-top: 1px;
  font-size: 11.5px;
  line-height: 1.45;
  display: block;
}

.act-d {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  height: 24px;
  color: var(--ink-500);
  flex: none;
  align-items: center;
  margin-left: auto;
  font-size: 11.5px;
  font-weight: 600;
  display: inline-flex;
}

.act-d.ov {
  color: var(--err);
}

.act-d.td {
  color: var(--primary);
}

.act-d.sn {
  color: var(--warn);
}

.act-d.lt {
  color: var(--ink-400);
}

.tl > .todobloc {
  margin-top: -1px;
}

.tl > .todobloc > summary {
  gap: 9px;
  margin: 0;
  padding: 3px 0;
}

.tl > .todobloc > summary .box {
  display: none;
}

.tl > .todobloc > summary .who {
  flex: none;
}

.tl > .todobloc .todolist {
  padding-left: 0;
}

.tl-g {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-400);
  margin: 14px 0 4px;
  font-size: 10px;
  font-weight: 700;
}

.tl-g:first-child {
  margin-top: 2px;
}

.tl-sub {
  flex-wrap: wrap;
  gap: 5px;
  padding: 2px 0 4px 4px;
  display: flex;
}

.tl-s {
  color: var(--ink-400);
  border: 1px solid var(--line);
  background: #f8fafc;
  border-radius: 5px;
  padding: 1px 8px;
  font-size: 11.5px;
}

.tl[data-c] {
  cursor: pointer;
}

.tl[data-c]:hover > .tl-node {
  border-color: var(--primary);
}

.tl-l {
  color: var(--ink-700);
  flex-wrap: wrap;
  flex: 1;
  align-items: baseline;
  gap: 4px 9px;
  min-width: 0;
  padding: 2px 0 1px;
  font-size: 13.5px;
  line-height: 1.5;
  display: flex;
}

.tl.ok .tl-l {
  color: var(--ink-400);
}

.tl.ok .tl-l .lbl {
  text-decoration: line-through;
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
}

.tl.todo .tl-l {
  color: var(--ink-400);
}

.tl.todo.mine .tl-l {
  color: var(--ink-900);
}

.tl.todo .tl-l .who {
  color: var(--ink-300);
}

.tl.todo.mine .tl-l .who {
  color: var(--ink-500);
}

.tl-l .who, .tl-card .who {
  color: var(--ink-400);
  white-space: nowrap;
  background: none;
  padding: 0;
  font-size: 11.5px;
  font-weight: 600;
}

.tl-l .who.duo2 b, .tl-card .who.duo2 b {
  color: var(--ink-500);
}

.tl.todo.mine .tl-l .who.duo2 b {
  color: var(--ink-700);
}

.tl-l > .tl-nat, .tl-l > .tl-tpl {
  margin-left: auto;
}

.tl-l > .tl-tpl {
  order: 1;
}

.tl-l > .tl-nat {
  order: 2;
}

.tl-l > .tl-nat:has( ~ .tl-tpl) {
  margin-left: 0;
}

.ic {
  vertical-align: middle;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  display: inline-flex;
}

.ic svg {
  width: 100%;
  height: 100%;
  display: block;
}

.ic.s {
  width: 11px;
  height: 11px;
}

.ic.round {
  background: #f1f5f9;
  border-radius: 50%;
  width: 22px;
  height: 22px;
}

.ic.round svg {
  width: 12px;
  height: 12px;
}

.b2 {
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 7px;
  align-items: center;
  gap: 5px;
  height: 24px;
  padding: 0 10px;
  font-size: 11.5px;
  font-weight: 600;
  transition: all .12s;
  display: inline-flex;
}

.b2.p {
  background: var(--primary);
  color: #fff;
  box-shadow: var(--sh-carte);
}

.b2.p:hover {
  background: var(--primary-dark);
}

.b2.g {
  border-color: var(--line-2);
  color: var(--ink-600);
  background: #fff;
}

.b2.g:hover {
  color: var(--primary-dark);
  background: var(--primary-50);
  border-color: #c7d2fe;
}

.b2.tpl {
  color: #92400e;
  background: #fff;
  border-color: #fcd34d;
}

.b2.tpl:hover {
  background: var(--warn-50);
}

.b2[disabled] {
  opacity: .45;
  cursor: default;
  box-shadow: none;
}

.ib {
  width: 24px;
  height: 24px;
  color: var(--ink-400);
  border-radius: 7px;
  flex: none;
  justify-content: center;
  align-items: center;
  transition: all .12s;
  display: inline-flex;
}

.ib:hover {
  color: var(--primary-dark);
}

.ib:hover .ic.round {
  background: var(--primary-50);
}

.ib.unlock {
  opacity: 0;
}

.tl:hover .ib.unlock {
  opacity: 1;
}

.tl.now .ib.unlock, .chk-gestes .ib.unlock {
  opacity: .75;
}

.ib.unlock:hover {
  color: var(--warn);
}

.ib.unlock:hover .ic.round {
  background: var(--warn-50);
}

.inl {
  border: 1px solid var(--line-2);
  color: var(--ink-700);
  background: #fff;
  border-radius: 10px;
  margin: 2px 0 8px;
  padding: 11px 13px;
  font-size: 12.5px;
  line-height: 1.5;
  box-shadow: 0 6px 18px #0f172a0f;
}

.inl .q {
  color: var(--ink-900);
  margin-bottom: 6px;
  font-weight: 600;
}

.inl .li {
  color: var(--ink-600);
  align-items: baseline;
  gap: 8px;
  padding: 2px 0;
  display: flex;
}

.inl .li .k {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  flex: none;
  width: 118px;
  font-size: 10.5px;
  font-weight: 700;
}

.inl .li .keep {
  color: var(--ink-400);
}

.inl input {
  width: 100%;
  font: inherit;
  border: 1px solid var(--line-2);
  color: var(--ink-800);
  border-radius: 7px;
  outline: none;
  margin-top: 8px;
  padding: 6px 9px;
  font-size: 12.5px;
}

.inl input:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px var(--primary-50);
}

.inl .acts {
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
  display: flex;
}

.pop {
  display: inline-flex;
  position: relative;
}

.pop .menu {
  z-index: 5;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 9px;
  min-width: 220px;
  padding: 6px;
  display: none;
  position: absolute;
  top: 22px;
  left: 0;
  box-shadow: 0 10px 30px #0f172a1f;
}

.pop.open .menu {
  display: block;
}

.pop .menu a {
  color: var(--ink-700);
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 6px 9px;
  font-size: 12.5px;
  display: flex;
}

.pop .menu a:hover {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.stnext {
  width: 100%;
  color: var(--primary-dark);
  background: var(--primary-50);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 7px;
  margin-top: 14px;
  padding: 9px;
  font-size: 12.5px;
  font-weight: 600;
  display: flex;
}

.stnext:hover {
  background: #e0e7ff;
}

.stdone {
  color: var(--ok);
  background: var(--ok-50);
  text-align: center;
  border-radius: 10px;
  margin-top: 14px;
  padding: 9px;
  font-size: 12.5px;
  font-weight: 600;
}

.futcol {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ink-500);
  border-top: 1px dashed var(--line-2);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--line-2);
  text-decoration-color: var(--line-2);
  text-underline-offset: 5px;
  align-items: center;
  gap: 6px;
  margin: 16px 0 8px;
  padding-top: 14px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
}

.futcol:first-child, .futcol.en {
  border-top: none;
  margin-top: 2px;
  padding-top: 0;
}

.futcol .pill {
  display: none;
}

.futcol.en {
  color: var(--ink-900);
  -webkit-text-decoration-color: var(--line-2);
  text-decoration-color: var(--line-2);
}

.futcol .pill {
  background: var(--ink-300);
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.futcol .n2 {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-400);
  font-size: 10.5px;
  font-weight: 400;
}

.ftask {
  color: var(--ink-400);
  align-items: flex-start;
  gap: 7px;
  padding: 3px 2px;
  font-size: 13px;
  line-height: 1.45;
  display: flex;
}

.ftask .box {
  border: 1.5px solid var(--line-2);
  background: var(--bg);
  border-radius: 4px;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-top: 1.5px;
}

.ftask .tag {
  color: #b45309;
  background: var(--warn-50);
  opacity: .7;
  border-radius: 4px;
  margin-left: 4px;
  padding: 0 5px;
  font-size: 10px;
}

.ftask.mine {
  color: var(--ink-700);
}

.ftask.none {
  color: var(--ink-300);
  font-style: italic;
}

.frow2 .tgrp {
  margin-left: 2px;
}

.plegend {
  color: var(--ink-500);
  align-items: center;
  gap: 14px;
  margin: -4px 0 12px;
  font-size: 11.5px;
  display: flex;
}

.plegend span {
  align-items: center;
  gap: 5px;
  display: inline-flex;
}

.pst {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  font-size: 11px;
  font-style: normal;
  font-weight: 700;
  display: inline-flex;
}

.pst.ok {
  background: var(--ok-50);
  color: var(--ok);
}

.pst.later {
  color: var(--ink-300);
  background: #f1f5f9;
}

.pst.na {
  color: var(--ink-300);
  background: none;
}

.pst.ko {
  background: var(--err-50);
  color: var(--err);
}

.pst.recuperee {
  color: #1d4ed8;
  background: #eff6ff;
}

.pst.absente {
  color: var(--err);
  border: 1px dashed var(--err);
  background: none;
}

.prow {
  border-top: 1px solid var(--line);
  align-items: flex-start;
  gap: 10px;
  padding: 8px 2px;
  font-size: 13px;
  display: flex;
}

.subh + .prow {
  border-top: none;
}

.prow > div {
  flex: 1;
}

.prow .chip {
  flex-shrink: 0;
}

.pn {
  color: var(--ink-900);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-weight: 500;
  display: flex;
}

.pn .chip, .pn .badge {
  font-weight: 500;
}

.pd {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 11.5px;
  line-height: 1.45;
}

.consignes {
  color: var(--ink-900);
  margin: 0 0 12px;
  padding-left: 18px;
  font-size: 12.5px;
  line-height: 1.55;
  list-style: outside;
}

.consignes li {
  padding-left: 2px;
}

.consignes li + li {
  margin-top: 5px;
}

.consignes li::marker {
  color: var(--ink-400);
}

.consignes a {
  color: var(--brand, #4f46e5);
  font-weight: 500;
}

.pmat {
  border-collapse: collapse;
  width: 100%;
  margin-top: 10px;
  font-size: 13px;
}

.pmat th {
  text-align: center;
  vertical-align: top;
  padding: 6px 6px 8px;
  font-weight: 500;
}

.pmat th.pl, .pmat td.pl {
  text-align: left;
  min-width: 320px;
}

.pmat td {
  border-top: 1px solid var(--line);
  text-align: center;
  vertical-align: top;
  padding: 7px 6px;
}

.pmat .pmsec td {
  color: #3730a3;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .06em;
  background: #eef2ff;
  border-top: none;
  padding: 8px;
  font-size: 10.5px;
  font-weight: 700;
}

.pmat .pmsec.sep td {
  border-top: 2px dashed var(--line-2);
}

.pmat .pmgrp td {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-500);
  background: #f8fafc;
  border-top: none;
  padding: 6px 8px;
  font-size: 10px;
  font-weight: 600;
}

.pmat thead th.pl {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 10px;
  font-weight: 700;
}

.pmat thead tr:last-child th {
  border-bottom: 1px solid var(--line-2);
  padding-bottom: 10px;
}

.pmat .pn {
  color: var(--ink-800);
  font-size: 12.5px;
}

.pmat .plk {
  margin-left: 6px;
  font-size: 11px;
}

.pav {
  cursor: pointer;
  border-radius: 9px;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  font-size: 11px;
}

.pname {
  color: var(--ink-700);
  margin: 4px 0 3px;
  font-size: 11px;
}

.tbtn {
  color: var(--primary-dark);
  background: #fff;
  border: 1px solid #c7d2fe;
  border-radius: 6px;
  flex-shrink: 0;
  align-items: center;
  margin-left: auto;
  padding: 3px 11px;
  font-size: 11.5px;
  font-weight: 600;
  display: inline-flex;
}

.tbtn:hover {
  background: var(--primary-50);
  border-color: var(--primary);
}

.task.done .tbtn {
  display: none;
}

.msep {
  border-top: 1px solid var(--line);
  margin: 16px 0 6px;
}

.minner {
  padding: 0 0 12px;
}

.minner .tasks {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

.minner .empty {
  color: var(--ink-400);
  font-size: 12px;
}

.minner .futcol:first-child {
  margin-top: 2px;
}

.mpanel {
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  margin-top: 14px;
  padding: 12px 14px;
}

.mpanel:first-child {
  margin-top: 0;
}

.mtasks {
  padding-top: 2px;
  padding-bottom: 2px;
}

.mnote .k {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-700);
  align-items: center;
  gap: 6px;
  font-size: 10px;
  font-weight: 700;
  display: flex;
}

.mnote .k svg {
  color: var(--ink-500);
}

.mnote .notes-ta {
  min-height: 54px;
  margin-top: 8px;
}

.mnote .notes-ta:focus {
  background: #fff;
}

.ifld.wide {
  grid-column: 1 / -1;
}

.apslist {
  flex-wrap: wrap;
  gap: 0;
  margin-top: 4px;
  display: flex;
}

.apslist .perschip {
  margin: 0 6px 6px 0;
}

#modal {
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background: #0f172a47;
  padding: 5vh 16px;
}

#modal .mbox {
  border-radius: 18px;
  animation: .18s ease-out mpop;
  box-shadow: 0 24px 64px #0f172a2e, 0 0 0 1px #0f172a0a;
}

@keyframes mpop {
  0% {
    opacity: 0;
    transform: translateY(6px)scale(.985);
  }

  100% {
    opacity: 1;
    transform: none;
  }
}

#modal .mhead {
  z-index: 10;
  border-bottom: none;
  border-radius: 18px 18px 0 0;
  padding: 26px 34px 8px;
}

#modal .mhead .t {
  letter-spacing: -.015em;
  font-size: 18px;
  font-weight: 600;
}

#modal .mhead .row .badge {
  margin-left: 6px;
}

#modal .mclose {
  width: 30px;
  height: 30px;
  color: var(--ink-500);
  background: #f1f5f9;
  border-radius: 50%;
  font-size: 14px;
}

#modal .mclose:hover {
  color: var(--ink-900);
  background: #e2e8f0;
}

#modal .mbody {
  background: #fff;
  border-radius: 0 0 18px 18px;
  padding: 0 34px 28px;
}

#modal .mpanel {
  background: none;
  border: none;
  border-top: 1.5px solid #cbd5e1;
  border-radius: 0;
  margin: 0;
  padding: 18px 0 16px;
}

#modal .mpanel:first-child {
  border-top: none;
  padding-top: 10px;
}

#modal .mpanel.mtasks {
  border-top: none;
  padding-top: 6px;
}

#modal .igrid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px 22px;
}

#modal .igrid .ifld {
  min-width: 0;
}

#modal .igrid .wide {
  grid-column: span 2;
}

#modal .ifld .k {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 500;
}

#modal .ifld .v {
  color: var(--ink-900);
  overflow-wrap: anywhere;
  margin-top: 2px;
  font-size: 13.5px;
}

#modal .igrid .ntag {
  white-space: normal;
  text-overflow: clip;
  overflow: visible;
}

@media (max-width: 600px) {
  #modal .igrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #modal .igrid .wide {
    grid-column: 1 / -1;
  }
}

#modal .ilink {
  font-weight: 600;
}

#modal .msec {
  margin-bottom: 8px;
  font-size: 13px;
}

#modal .mtasks {
  flex-direction: column;
  gap: 11px;
  padding: 8px 0 6px;
  display: flex;
}

#modal .minner {
  padding: 0 0 15px 31px;
}

#modal .task {
  padding: 6px 2px;
  font-size: 13.5px;
}

#modal .task .box {
  border-radius: 5px;
  width: 15px;
  height: 15px;
}

#modal .task.other .box {
  background: #f8fafc;
}

#modal .task.other.done .box {
  background: var(--ink-300);
  border-color: var(--ink-300);
}

#modal .task.pending .box {
  background: none;
}

#modal .futcol {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-600);
  margin: 16px 0 8px;
  font-size: 12.5px;
}

#modal .futcol.en {
  color: var(--ink-900);
  font-weight: 700;
}

#modal .hrow {
  border-bottom: none;
  padding: 4px 0;
  font-size: 13.5px;
}

#modal .ftask {
  padding: 5px 2px;
  font-size: 13.5px;
}

#modal .todobloc > summary {
  font-size: 13.5px;
}

#modal .hrow .d {
  width: 124px;
}

#modal .mnote .k {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 600;
}

#modal .mnote .k svg {
  display: none;
}

#modal .mnote .notes-ta {
  background: #f8fafc;
  border: none;
  border-radius: 10px;
  margin-top: 8px;
  padding: 10px 12px;
  font-size: 13px;
}

#modal .mnote .notes-ta:focus {
  box-shadow: none;
  background: #f1f5f9;
}

#modal .lines .ln {
  padding: 4px 2px;
  font-size: 12.5px;
}

#modal .openline {
  border-radius: 8px;
}

#topbar {
  gap: 8px;
}

#gsearch {
  color: var(--ink-400);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin-right: auto;
  padding: 4px 8px;
  font-size: 12px;
  display: inline-flex;
}

#gsearch:hover {
  color: var(--ink-600, #475569);
  background: #f8fafc;
}

#gsearch kbd {
  font: inherit;
  color: var(--ink-400);
  background: #f1f5f9;
  border-radius: 4px;
  margin-left: 2px;
  padding: 2px 6px;
  font-size: 10px;
}

#smodal .sm-bg {
  z-index: 300;
  background: #0000004d;
  position: fixed;
  inset: 0;
}

#smodal .sm-box {
  z-index: 301;
  background: #fff;
  border-radius: 12px;
  width: 100%;
  max-width: 576px;
  position: fixed;
  top: 15%;
  left: 50%;
  overflow: hidden;
  transform: translateX(-50%);
  box-shadow: 0 25px 50px -12px #00000040;
}

#smodal .sm-in {
  border-bottom: 1px solid var(--line);
  color: var(--ink-400);
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  display: flex;
}

#smodal .sm-in input {
  font: inherit;
  color: var(--ink-900);
  border: none;
  outline: none;
  flex: 1;
  font-size: 14px;
}

#smodal kbd {
  font: inherit;
  color: var(--ink-400);
  background: #f1f5f9;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 10px;
}

#gsearchRes {
  max-height: 384px;
  padding: 8px 0;
  overflow-y: auto;
}

#gsearchRes:empty {
  display: none;
}

#gsearchRes .grp {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-400);
  padding: 6px 16px;
  font-size: 10px;
  font-weight: 600;
}

#gsearchRes .it {
  color: var(--ink-800);
  cursor: pointer;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 500;
  display: flex;
}

#gsearchRes .it:hover {
  background: #f8fafc;
}

#gsearchRes .it .sm {
  color: var(--ink-500);
  background: #f1f5f9;
  border-radius: 4px;
  margin-left: auto;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 500;
}

#gsearchRes .none {
  text-align: center;
  color: var(--ink-400);
  padding: 24px;
  font-size: 13px;
}

#smodal .sm-foot {
  border-top: 1px solid var(--line);
  color: var(--ink-400);
  gap: 12px;
  padding: 8px 16px;
  font-size: 10px;
  display: flex;
}

#topright {
  align-items: center;
  gap: 8px;
  display: flex;
}

.vcbtn {
  color: var(--ink-500);
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  font-size: 12px;
  display: inline-flex;
  position: relative;
}

.vcbtn:hover {
  color: var(--ink-700);
  background: #f8fafc;
}

.vcbtn .chev {
  font-size: 9px;
}

.vcmenu {
  border: 1px solid var(--line-2);
  z-index: 80;
  background: #fff;
  border-radius: 8px;
  width: 144px;
  padding: 4px 0;
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  box-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
}

.vcmenu.on {
  display: block;
}

.vcmenu {
  min-width: 220px;
  max-height: 60vh;
  overflow: auto;
}

.vcgrp {
  border-top: 1px solid var(--line);
  padding: 4px 0;
}

.vcgrp:first-child {
  border-top: none;
}

.vcgrp-h {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  padding: 6px 12px 2px;
  font-size: 10px;
  font-weight: 600;
}

.vcmenu button {
  text-align: left;
  width: 100%;
  color: var(--ink-700);
  padding: 6px 12px;
  font-size: 12px;
  display: block;
}

.vcmenu button:hover {
  background: #f8fafc;
}

#visionbanner:empty {
  display: none;
}

#visionbanner {
  color: #78350f;
  background: #fef3c7;
  border-bottom: 1px solid #fde68a;
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 6px 16px;
  font-size: 12px;
  display: flex;
}

#visionbanner b {
  font-weight: 700;
}

#visionbanner button {
  color: #78350f;
  background: #fde68a;
  border-radius: 6px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 500;
}

#visionbanner button:hover {
  background: #fcd34d;
}

#usermenu {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding: 10px 12px 12px;
  display: flex;
}

#usermenu .avat {
  border-radius: 9px;
  width: 32px;
  height: 32px;
  font-size: 11px;
}

#usermenu .un {
  color: var(--ink-900);
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.2;
}

#usermenu .ue {
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 130px;
  font-size: 11px;
  overflow: hidden;
}

#usermenu .out {
  color: var(--ink-400);
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  margin-left: auto;
  display: flex;
}

#usermenu .out:hover {
  color: var(--err);
  background: #f1f5f9;
}

.card.st-other .t {
  color: var(--ink-400);
  font-weight: 500;
}

.card.st-other {
  background: #fbfcfd;
}

.card.st-other .nx, .card.st-other .cnt, .card.st-other .cnt b {
  color: var(--ink-400);
}

.card.st-other .badge, .card.st-other .fintxt {
  opacity: .7;
}

.card.st-other .prog i {
  background: #cbd5e1;
}

.card.st-mine {
  background: #fff;
}

.card.st-mine .t {
  color: var(--ink-900);
  font-weight: 600;
}

.card.st-mine .nx {
  color: var(--ink-900);
  font-weight: 500;
}

.card.st-mine .cnt, .card.st-mine .cnt b {
  color: var(--ink-900);
}

.card.st-mine .nx .k {
  color: var(--primary);
}

.card.st-locked .t {
  color: var(--ink-500);
}

.card.haslock {
  background: repeating-linear-gradient(-45deg, #fbfcfd 0 8px, #f4f6f9 8px 9px);
}

.card.haslock > :not(.lockmid) {
  opacity: .8;
}

.lockmid {
  justify-content: center;
  align-items: center;
  gap: 9px;
  margin-top: 8px;
  display: flex;
  opacity: 1 !important;
}

.lockmid .lockico {
  border: 1px solid var(--line-2);
  width: 30px;
  height: 30px;
  color: var(--ink-500);
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 50%;
  flex: none;
  justify-content: center;
  align-items: center;
  display: flex;
}

.lockmid .lockico svg {
  width: 16px;
  height: 16px;
}

.lockmid .lm-x {
  min-width: 0;
}

.lockmid .lm-t {
  color: var(--ink-700);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
}

.lockmid .lm-d {
  color: var(--ink-500);
  font-size: 11.5px;
  line-height: 1.2;
}

.lockmid .lm-r {
  color: var(--ink-400);
  font-size: 10.5px;
  line-height: 1.2;
}

.card.over {
  border-color: var(--err);
  box-shadow: inset 0 0 0 .5px var(--err),var(--sh-carte);
}

.card.st-echec {
  border-color: var(--err);
  box-shadow: var(--sh-carte);
}

.card.st-echec:hover {
  box-shadow: var(--sh-hover);
}

.card.st-echec .nx {
  color: var(--err);
}

.fintxt {
  color: var(--ink-500);
  white-space: nowrap;
  font-size: 11.5px;
}

.ct .fintxt {
  flex-shrink: 0;
  margin-top: 2px;
}

.mhead .row .fintxt {
  margin-top: 4px;
  font-size: 12px;
}

.badge.b-over {
  background: var(--err-50);
  color: var(--err);
  font-weight: 600;
}

.badge.b-risk {
  background: var(--warn-50);
  color: var(--warn);
  font-weight: 600;
}

.pagehead.row {
  align-items: center;
  gap: 12px;
  display: flex;
}

.pagehead.row .btn:first-of-type {
  margin-left: auto;
}

.fbar {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: -6px 0 14px;
  display: flex;
}

.faqduo {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  display: grid;
}

@media (max-width: 1180px) {
  .faqduo {
    grid-template-columns: minmax(0, 1fr);
  }
}

.fsec .sect-h .right, .lrow .acts {
  align-items: center;
  gap: 12px;
  display: flex;
}

.onbparam {
  border-top: 2px solid var(--line-2);
  margin-top: 22px;
  padding-top: 6px;
}

.grosec {
  border-top: 2px solid var(--line-2);
  align-items: center;
  gap: 14px;
  margin: 26px 0 14px;
  padding-top: 18px;
  display: flex;
}

.grosec-t {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-500);
  font-size: 12px;
  font-weight: 700;
}

.grosec-a {
  gap: 8px;
  margin-left: auto;
  display: flex;
}

.demrow {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 12px;
  padding: 11px 0;
  display: flex;
}

.demrow:first-of-type {
  border-top: none;
}

.demrow .avat {
  border-radius: 9px;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  font-size: 11px;
}

.demrow .tx {
  min-width: 0;
}

.demrow .tt {
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 600;
}

.demrow .sm {
  color: var(--ink-500);
  margin-top: 2px;
  font-size: 12px;
}

.demrow .quand {
  color: var(--ink-400);
  white-space: nowrap;
  margin-left: auto;
  font-size: 11.5px;
}

.demrow .acts {
  flex-shrink: 0;
  gap: 8px;
  display: flex;
}

.btn.btn-s.p {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
}

.onbrow {
  border-top: 1px solid var(--line);
}

.onbrow:first-of-type {
  border-top: none;
}

.onbrow > summary {
  cursor: pointer;
  color: var(--ink-800);
  align-items: center;
  gap: 12px;
  padding: 10px 2px;
  font-size: 13px;
  list-style: none;
  display: flex;
}

.onbrow > summary::-webkit-details-marker {
  display: none;
}

.onbrow > summary .chev {
  color: var(--ink-300);
  font-size: 10px;
  transition: transform .15s;
}

.onbrow[open] > summary .chev {
  transform: rotate(90deg);
}

.onbrow > summary .nm {
  min-width: 180px;
  font-weight: 600;
}

.onbrow > summary .bar {
  background: var(--line-2);
  border-radius: 999px;
  flex: 1;
  max-width: 280px;
  height: 6px;
  overflow: hidden;
}

.onbrow > summary .bar i {
  background: var(--primary);
  border-radius: 999px;
  height: 100%;
  display: block;
}

.onbrow > summary .cnt3 {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  font-size: 11.5px;
}

.onbrow > summary .ilink {
  margin-left: auto;
}

.onbrow > .inner {
  padding: 2px 0 12px 24px;
}

.tbl td.num {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.remlist {
  flex-direction: column;
  gap: 14px;
  display: flex;
}

.remgrp-h {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
  font-size: 10.5px;
  font-weight: 600;
  display: flex;
}

.remgrp-h .n {
  color: var(--ink-400);
  margin-left: auto;
  font-size: 11px;
}

.remgrp .card {
  margin-bottom: 8px;
}

.remgrp .colempty {
  color: var(--ink-300);
  padding: 2px 0;
  font-size: 12px;
}

.faqbloc {
  margin-bottom: 26px;
}

.faqbloc > .sect-h {
  align-items: center;
  margin-bottom: 14px;
}

.faqbloc > .sect-h .right {
  margin-left: auto;
}

.faqbloc > .fbar {
  margin-top: 0;
}

.pasutile > summary {
  color: var(--ink-500);
  cursor: pointer;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 5px;
  padding: 5px 11px;
  font-size: 12.5px;
  font-weight: 600;
  list-style: none;
  display: inline-flex;
}

.pasutile > summary::-webkit-details-marker {
  display: none;
}

.pasutile > summary:before {
  content: "▸";
  color: var(--ink-300);
  font-size: 10px;
}

.pasutile[open] > summary:before {
  content: "▾";
}

.pasutile > summary:hover {
  color: var(--ink-700);
  border-color: var(--ink-300);
}

.pu-in {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  max-width: 520px;
  margin-top: 9px;
  display: flex;
}

.pu-in .notes-ta {
  width: 100%;
  min-height: 64px;
}

.faqrep {
  max-width: 760px;
  color: var(--ink-900);
  overflow-wrap: anywhere;
  margin: 8px 0 2px;
  font-size: 13.5px;
  line-height: 1.65;
}

.faqrep > p, .faqrep > ul, .faqrep > ol {
  margin: 0 0 10px;
}

.faqrep > :last-child {
  margin-bottom: 0;
}

.faqrep ul, .faqrep ol {
  padding-left: 22px;
}

.faqrep ul {
  list-style: outside;
}

.faqrep ol {
  list-style: decimal;
}

.faqrep li {
  margin: 3px 0;
  padding-left: 2px;
}

.faqrep li::marker {
  color: var(--ink-500);
}

.faqrep strong {
  color: var(--ink-900);
  font-weight: 600;
}

.faqrep a {
  color: var(--primary);
  text-underline-offset: 3px;
  word-break: break-word;
  font-weight: 500;
  -webkit-text-decoration: underline #c7d2fe;
  text-decoration: underline #c7d2fe;
}

.faqrep a:hover {
  color: var(--primary-dark);
  text-decoration-color: currentColor;
}

.faqbloc .acc .inner > .mactions {
  justify-content: flex-start;
  margin-top: 16px;
}

.fbar .chips {
  margin: 0;
}

.mt-filtre {
  border: 1px solid var(--line-2);
  min-height: 32px;
  color: var(--ink-700);
  white-space: nowrap;
  background: #fff;
  border-radius: 8px;
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  padding: 5px 12px 5px 10px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  transition: border-color .12s, color .12s;
  display: inline-flex;
}

.mt-filtre:hover {
  border-color: var(--ink-300);
  color: var(--ink-900);
}

.mt-filtre:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 1px;
}

.mt-rond {
  border: 1.5px solid var(--ink-300);
  background: #fff;
  border-radius: 50%;
  flex: none;
  width: 16px;
  height: 16px;
  transition: box-shadow .12s, border-color .12s;
}

.mt-filtre.mt-actif {
  color: var(--ink-900);
}

.mt-filtre.mt-actif .mt-rond {
  border-color: var(--primary);
  box-shadow: inset 0 0 0 4px var(--primary);
}

.mt-filtre .n2 {
  color: var(--ink-400);
  font-weight: 400;
}

@media (max-width: 600px) {
  .mt-filtre {
    white-space: normal;
    text-align: left;
    max-width: 100%;
  }
}

.fsearch {
  border: 1px solid var(--line-2);
  color: var(--ink-400);
  background: #fff;
  border-radius: 8px;
  align-items: center;
  gap: 7px;
  min-width: 260px;
  min-height: 32px;
  padding: 6px 10px;
  display: flex;
}

.fsearch input {
  font: inherit;
  color: var(--ink-900);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  font-size: 13px;
}

.fsel {
  font: inherit;
  color: var(--ink-700);
  border: 1px solid var(--line-2);
  appearance: none;
  cursor: pointer;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none' stroke='%2394a3b8' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1l4 4 4-4'/%3E%3C/svg%3E") right 9px center no-repeat;
  border-radius: 8px;
  padding: 6px 26px 6px 10px;
  font-size: 13px;
}

.fsel:hover {
  border-color: var(--ink-300);
}

.duo {
  grid-template-columns: minmax(0, 1fr) 320px;
  align-items: stretch;
  gap: 12px;
  margin-bottom: 12px;
  display: grid;
}

.duo .fsec {
  flex-direction: column;
  margin-bottom: 0;
  display: flex;
}

.duo .notes-ta {
  resize: none;
  flex: 1;
  min-height: 96px;
}

@media (max-width: 900px) {
  .duo {
    grid-template-columns: 1fr;
  }
}

.tblwrap {
  max-height: calc(100vh - 240px);
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  overflow: auto;
}

.tblwrap .tbl thead th {
  z-index: 2;
  background: #fff;
  position: sticky;
  top: 0;
}

.tbl {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.tbl th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  border-bottom: 1px solid var(--line-2);
  padding: 11px 14px;
  font-size: 10.5px;
  font-weight: 600;
}

.tbl td {
  border-top: 1px solid var(--line);
  vertical-align: middle;
  color: var(--ink-800);
  padding: 11px 14px;
}

.tbl th.sortable {
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.tbl th.sortable:hover {
  color: var(--ink-700);
}

.tbl th.sortable .arr {
  color: var(--ink-300);
  margin-left: 5px;
  font-size: 9px;
}

.tbl th.sortable.on {
  color: var(--primary-dark);
}

.tbl th.sortable.on .arr {
  color: var(--primary);
}

.tbl tr.rowlink {
  cursor: pointer;
}

.tbl tr.rowlink:hover td {
  background: #f8fafc;
}

.tbl tr.dim td {
  color: var(--ink-400);
}

.tbl tr.tgrp2 td {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-500);
  background: #f8fafc;
  padding: 7px 14px;
  font-size: 10px;
  font-weight: 700;
}

.tbl tr.tgrp2.apart td {
  border-top: 2px dashed var(--line-2);
  padding-top: 13px;
}

.tbl .acts {
  white-space: nowrap;
  gap: 12px;
  display: flex;
}

.tbl .sm {
  color: var(--ink-400);
  font-size: 11px;
}

.muted {
  color: var(--ink-400);
}

.ilink.danger {
  color: var(--err);
}

.btn.danger {
  color: var(--err);
  border-color: #fecdd3;
}

.btn-p.danger {
  background: var(--err);
  color: #fff;
  border: none;
}

.calhead {
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  display: flex;
}

.calhead b {
  color: var(--ink-900);
  margin: 0 6px;
  font-size: 15px;
}

.cal {
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  padding: 10px 10px 6px;
  overflow: hidden;
}

.cal-wk {
  grid-template-columns: repeat(7, 1fr);
  column-gap: 6px;
  min-height: 64px;
  margin-bottom: 6px;
  display: grid;
}

.cal-wk.head {
  min-height: 0;
  margin-bottom: 4px;
}

.cal-dh {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  padding: 2px 8px;
  font-size: 10.5px;
  font-weight: 600;
}

.cal-d {
  background: #f8fafc;
  border-radius: 8px;
  min-height: 64px;
  padding: 4px 8px;
}

.cal-d.off {
  background: none;
}

.cal-d .n {
  color: var(--ink-400);
  font-size: 11.5px;
  font-weight: 500;
}

.cal-d.today .n {
  background: var(--primary);
  color: #fff;
  border-radius: 999px;
  padding: 1px 6px;
}

.cal-bar {
  z-index: 2;
  color: #fff;
  background: var(--primary);
  cursor: pointer;
  white-space: nowrap;
  text-overflow: ellipsis;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin: 2px 2px 0;
  padding: 3px 9px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
  overflow: hidden;
  box-shadow: 0 1px 2px #4f46e540;
}

.cal-bar .cb-n {
  opacity: .85;
  font-variant-numeric: tabular-nums;
  margin-left: auto;
  font-weight: 500;
}

.cal-bar.draft {
  color: var(--ink-700);
  box-shadow: none;
  background: #e2e8f0;
}

.cal-bar:hover {
  filter: brightness(.95);
}

.seg {
  background: #f1f5f9;
  border-radius: 8px;
  gap: 2px;
  margin-top: 4px;
  padding: 3px;
  display: inline-flex;
}

.seg button {
  color: var(--ink-500);
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12.5px;
  font-weight: 500;
}

.seg button.on {
  color: var(--ink-900);
  box-shadow: var(--sh-carte);
  background: #fff;
  font-weight: 600;
}

.mactions {
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
  display: flex;
}

.mactions .mactions-gauche {
  gap: 8px;
  margin-right: auto;
  display: flex;
}

#modal2 {
  z-index: 220;
  background: #0f172a4d;
  justify-content: center;
  align-items: flex-start;
  padding: 8vh 16px;
  display: flex;
  position: fixed;
  inset: 0;
}

#modal2 .mbox {
  border-radius: 18px;
  box-shadow: 0 24px 64px #0f172a2e;
}

#modal2 .mhead {
  border-bottom: none;
  padding: 20px 24px 4px;
}

#modal2 .mbody {
  background: #fff;
  border-radius: 0 0 18px 18px;
  padding: 6px 24px 20px;
}

#modal2 .mpanel {
  background: none;
  border: none;
  border-top: 1.5px solid #cbd5e1;
  padding: 14px 0;
}

#modal2 .mpanel:first-child {
  border-top: none;
}

#modal2 .lienard-choix {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

#modal2 .lienard-opt {
  text-align: left;
  border: 1.5px solid var(--line-2);
  cursor: pointer;
  background: #fff;
  border-radius: 10px;
  grid-template-columns: 96px minmax(0, 1fr);
  grid-template-areas: "lbl etat"
                       "lbl regle";
  align-items: baseline;
  gap: 2px 14px;
  width: 100%;
  padding: 10px 14px;
  display: grid;
}

#modal2 .lienard-opt:hover:not(:disabled) {
  border-color: var(--ink-300);
}

#modal2 .lienard-opt.on {
  border-color: var(--primary);
  background: var(--primary-50);
}

#modal2 .lienard-opt:disabled {
  cursor: not-allowed;
  background: #f8fafc;
}

#modal2 .lienard-lbl {
  color: var(--ink-900);
  grid-area: lbl;
  font-size: 13.5px;
  font-weight: 600;
}

#modal2 .lienard-opt:disabled .lienard-lbl {
  color: var(--ink-400);
}

#modal2 .lienard-etat {
  color: var(--ok);
  grid-area: etat;
  font-size: 13px;
  font-weight: 600;
}

#modal2 .lienard-etat.warn {
  color: var(--warn);
}

#modal2 .lienard-etat.off {
  color: var(--ink-400);
  font-weight: 500;
}

#modal2 .lienard-date {
  color: var(--ink-500);
  font-weight: 500;
}

#modal2 .lienard-etat.off .lienard-date {
  color: var(--ink-400);
}

#modal2 .lienard-regle {
  color: var(--ink-400);
  grid-area: regle;
  font-size: 11.5px;
}

#modal2 .lienard-note {
  color: var(--ink-500);
  margin: 10px 0 0;
  font-size: 12.5px;
}

@media (max-width: 520px) {
  #modal2 .lienard-opt {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "lbl"
                         "etat"
                         "regle";
  }
}

.drow {
  align-items: center;
  gap: 12px;
  display: flex;
}

.drow > div:first-child {
  flex: 1;
}

.drow .tt {
  color: var(--ink-900);
  font-size: 13.5px;
  font-weight: 600;
}

.drow .sm {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 12px;
}

.dbtns {
  gap: 6px;
  display: flex;
}

.frow .dbtns {
  align-items: center;
  margin-left: auto;
}

.k2 {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 600;
}

.ul {
  color: var(--ink-700);
  margin: 6px 0 0 18px;
  font-size: 13px;
  line-height: 1.7;
}

#modal[data-kind="newsession"] .igrid {
  grid-template-columns: repeat(2, 1fr);
}

#modal[data-kind="newsession"] .edin {
  margin-top: 3px;
}

.pvmonth {
  border: 1px solid var(--line-2);
  box-shadow: var(--sh-carte);
  background: #fff;
  border-radius: 12px;
  margin-bottom: 10px;
  overflow: hidden;
}

.pvmonth > summary {
  cursor: pointer;
  background: #fff;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  list-style: none;
  display: flex;
}

.pvmonth[open] > summary {
  border-bottom: 1px solid var(--line-2);
}

.pvmonth .pvbody {
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  display: flex;
}

.pvmonth .pvs {
  border: 1px solid var(--line-2);
  box-shadow: none;
  background: #fff;
  border-radius: 10px;
  margin: 0;
  padding: 0;
}

.pvmonth .pvs > summary {
  padding: 10px 12px;
}

.pvmonth .pvs .inner {
  padding: 0 12px 12px;
}

.pvmonth > summary::-webkit-details-marker {
  display: none;
}

.pvmonth .mt {
  color: var(--ink-900);
  font-size: 15px;
  font-weight: 600;
}

.pvmonth .ms {
  color: var(--ink-400);
  margin-top: 2px;
  font-size: 12px;
}

.pvmonth .mpct {
  align-items: center;
  gap: 10px;
  margin-left: auto;
  display: flex;
}

.pvmonth .mpct .bar {
  background: #f1f5f9;
  border-radius: 999px;
  width: 140px;
  height: 6px;
  overflow: hidden;
}

.pvmonth .mpct .bar i {
  background: #34d399;
  border-radius: 999px;
  height: 100%;
  display: block;
}

.pvmonth .mpct b {
  color: var(--ink-900);
  font-variant-numeric: tabular-nums;
  text-align: right;
  min-width: 46px;
  font-size: 15px;
}

.pvmonth.old .mt {
  color: var(--ink-500);
}

.accbloc > summary .secp-n:has( > .mpct) {
  background: none;
  padding: 0;
}

.pvmonth > .inner > .pvbody {
  padding: 0;
}

.pvmonth > .inner > .pvbody > .accbloc {
  margin-bottom: 0;
}

.pvmonth.old > summary .tt {
  color: var(--ink-500);
}

.pvs summary .tt {
  font-size: 13.5px;
}

.pvpct {
  color: var(--ok);
  font-variant-numeric: tabular-nums;
  font-size: 13px;
  font-weight: 700;
}

.pmat th .pname a {
  font-size: 11.5px;
  line-height: 1.35;
  display: block;
}

.accgrid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 6px 18px;
  margin-top: 10px;
  display: grid;
}

.accrow {
  color: var(--ink-800);
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 7px 4px;
  font-size: 13px;
  display: flex;
}

.accrow:hover {
  background: #f8fafc;
}

.accrow.fixed {
  cursor: default;
  color: var(--ink-500);
}

.sw {
  cursor: pointer;
  vertical-align: middle;
  background: #cbd5e1;
  border-radius: 999px;
  flex-shrink: 0;
  width: 34px;
  height: 20px;
  transition: background .15s;
  display: inline-block;
  position: relative;
}

.swrow {
  align-items: center;
  gap: 10px;
  display: flex;
}

.ardduo {
  grid-template-columns: minmax(260px, 1fr) minmax(0, 1.4fr);
  align-items: start;
  gap: 14px 32px;
  margin-top: 12px;
  display: grid;
}

.ardleft {
  flex-direction: column;
  gap: 12px;
  display: flex;
}

.ardright .k {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  margin-bottom: 2px;
  font-size: 10px;
  font-weight: 600;
}

.closegrid {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.closerow {
  border-top: 1px solid var(--line);
  grid-template-columns: 96px 120px minmax(0, 1fr);
  grid-template-areas: "lbl date etat"
                       "lbl regle regle";
  align-items: baseline;
  gap: 2px 14px;
  padding: 9px 2px;
  font-size: 13px;
  display: grid;
}

.closerow:first-child {
  border-top: none;
}

.closerow .fintxt {
  grid-area: lbl;
  font-weight: 500;
}

.closerow .cd {
  color: var(--ink-900);
  font-variant-numeric: tabular-nums;
  grid-area: date;
  font-weight: 500;
}

.closerow .cd:empty {
  display: none;
}

.closerow .cl {
  color: var(--ok);
  grid-area: etat;
  font-weight: 600;
}

.closerow .cl.warn {
  color: var(--warn);
}

.closerow .cl.off {
  color: var(--ink-400);
  font-weight: 500;
}

.closerow .cr {
  color: var(--ink-400);
  grid-area: regle;
  font-size: 11.5px;
}

.sw i {
  background: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  transition: left .15s;
  position: absolute;
  top: 2px;
  left: 2px;
  box-shadow: 0 1px 2px #0003;
}

.sw.on {
  background: var(--primary);
}

.sw.on i {
  left: 16px;
}

.accrow.fixed .sw.on {
  background: #a5b4fc;
}

@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
    animation: none !important;
  }
}

@media (max-width: 900px) {
  #sidebar {
    width: 200px;
  }
}

.ul {
  list-style: outside;
}

.chip.urgent {
  background: var(--err-50);
  color: var(--err);
}

[aria-disabled="true"], [title="non branché"], [title^="Non branché"] {
  opacity: .45;
  cursor: not-allowed;
}

.tbl td.nw, .tbl th.nw {
  white-space: nowrap;
}

.tbl td .mono {
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
  max-width: 16ch;
  display: inline-block;
  overflow: hidden;
}

.tbl td .tronq {
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
  max-width: 30ch;
  display: inline-block;
  overflow: hidden;
}

.tbl td .tronq.court {
  max-width: 16ch;
}

.tbl td .tronq.large {
  max-width: 34ch;
}

.tbl td .clamp2 {
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  min-width: 16ch;
  max-width: 44ch;
  display: -webkit-box;
  overflow: hidden;
}

.tl-aps {
  border-left: 2px solid var(--line);
  margin: 2px 0 6px 4px;
  padding-left: 10px;
}

.tl-aps > summary {
  cursor: pointer;
  color: var(--ink-400);
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  list-style: none;
  display: flex;
}

.tl-aps > summary::-webkit-details-marker {
  display: none;
}

.tl-aps > summary .chev {
  font-size: 9px;
  transition: transform .15s;
}

.tl-aps[open] > summary .chev {
  transform: rotate(90deg);
}

.tl-aps > summary .end {
  font-variant-numeric: tabular-nums;
  margin-left: 8px;
}

.tl-ap {
  color: var(--ink-700);
  align-items: center;
  gap: 8px;
  padding: 3px 0;
  font-size: 12px;
  display: flex;
}

.tl-ap button.apchk {
  cursor: pointer;
  background: none;
  padding: 0;
}

.tl-ap button.apchk.on {
  background: var(--ok);
}

.tl-ap button.apchk:disabled {
  cursor: default;
  opacity: .5;
}

.tl-ap.horsrail {
  color: var(--ink-300);
}

.tl-ap .mention {
  color: var(--ink-400);
  margin-left: auto;
  font-size: 10.5px;
}

.tl-l > .lbl {
  overflow-wrap: anywhere;
  flex: 1 1 0;
  min-width: 0;
}

.tl-l > .tl-nat, .tl-l > .tl-tpl {
  flex: none;
}

.tl-card .tl-t {
  overflow-wrap: anywhere;
}

.apnom-wrap {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 8px;
  min-width: 0;
  display: inline-flex;
}

.apnom {
  font: inherit;
  color: inherit;
  text-align: left;
  cursor: pointer;
  border: 0;
  border-bottom: 1px dashed var(--ink-300);
  overflow-wrap: anywhere;
  background: none;
  padding: 0;
}

.apnom:hover {
  color: var(--primary-dark);
  border-bottom-color: var(--primary);
}

.apnom:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
  border-radius: 3px;
}

.apnom:disabled {
  cursor: progress;
  opacity: .6;
}

.apnom.off {
  cursor: default;
  color: var(--ink-400);
  border-bottom: 0;
}

.apnom-err {
  color: var(--err, #e11d48);
  flex: 100%;
  font-size: 10.5px;
}

.tl-ap > .tl-apnom {
  flex: auto;
  min-width: 0;
}

.tl-ap button.apchk {
  flex: none;
}

.tl-ap:has(.apnom-err) {
  align-items: flex-start;
}

.tl-ap:has(.apnom-err) > button.apchk {
  margin-top: 2px;
}

.accbloc > summary > .apnom-wrap {
  flex: auto;
  min-width: 0;
}

.accbloc.horsrail > summary {
  color: var(--ink-300);
}

.accbloc > summary .mention {
  color: var(--ink-400);
  font-size: 10.5px;
}

.tplvars {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  margin-top: 10px;
  overflow: hidden;
}

.tplvars > .hd {
  border-bottom: 1px solid var(--line-2);
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-400);
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  font-size: 10px;
  font-weight: 600;
  display: flex;
}

.tplvars > .hd .inc {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  display: flex;
}

.tplvars > .hd .inc .lb {
  color: var(--warn);
}

.tplvars > .hd .chip {
  text-transform: none;
  letter-spacing: 0;
  font-size: 10.5px;
}

.tplvars > .lst {
  max-height: 170px;
  overflow-y: auto;
}

.tplvars > .pd {
  margin: 0;
  padding: 8px 10px;
}

.tplvars .vrow {
  text-align: left;
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 4px 10px;
  display: flex;
}

.tplvars .vrow:first-child {
  border-top: none;
}

.tplvars .vrow:hover {
  background: var(--line);
}

.tplvars .vrow:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.tplvars .var {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-radius: 4px;
  flex-shrink: 0;
  padding: 0 4px;
  font-size: 12px;
  font-weight: 500;
}

.tplvars .vrow .lb {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  color: var(--ink-500);
  flex: auto;
  font-size: 11.5px;
  overflow: hidden;
}

.tplvars .vrow .chip {
  flex-shrink: 0;
}

.tbl.tbl-proc {
  table-layout: fixed;
}

.tbl.tbl-proc th, .tbl.tbl-proc td {
  padding-left: 10px;
  padding-right: 10px;
}

.tbl.tbl-proc th {
  white-space: normal;
  vertical-align: bottom;
  line-height: 1.3;
}

.tbl.tbl-proc td {
  vertical-align: top;
  overflow-wrap: anywhere;
}

.tbl.tbl-proc td .rl-tache {
  display: block;
}

.tbl.tbl-proc td .sm {
  margin-top: 2px;
}

.tbl.tbl-proc td .chip {
  white-space: nowrap;
}

.tbl.tbl-proc th.nat, .tbl.tbl-proc td.nat {
  text-align: center;
  padding-left: 4px;
  padding-right: 4px;
}

.tbl.tbl-proc td.nat .tl-nat {
  vertical-align: top;
  margin: 0;
}

.tbl.tbl-proc td.acts {
  justify-content: flex-end;
}

.selr {
  width: 100%;
  font-size: 13px;
  display: block;
  position: relative;
}

.selr.s {
  vertical-align: middle;
  width: auto;
  min-width: 150px;
  display: inline-block;
}

.selr .selr-natif {
  opacity: 0;
  pointer-events: none;
  border: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.selr-champ {
  border: 1px solid var(--line-2);
  min-height: 29px;
  color: var(--ink-900);
  cursor: pointer;
  background: #fff;
  border-radius: 6px;
  outline: none;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
  padding: 3px 26px 3px 8px;
  line-height: 1.35;
  display: flex;
  position: relative;
}

.selr.s .selr-champ {
  min-height: 32px;
  color: var(--ink-700);
  white-space: nowrap;
  border-radius: 8px;
  flex-wrap: nowrap;
  margin-top: 0;
  padding: 5px 28px 5px 10px;
}

.selr-champ:hover {
  border-color: var(--ink-300);
}

.selr-champ:focus-visible, .selr.ouvert .selr-champ {
  box-shadow: 0 0 0 2px var(--primary);
  border-color: #0000;
}

.selr.off .selr-champ {
  background: var(--bg);
  color: var(--ink-400);
  cursor: default;
}

.selr-champ .ph {
  color: var(--ink-400);
}

.selr-champ .lb {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.selr-champ .caret {
  color: var(--ink-400);
  display: flex;
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
}

.selr.ouvert .selr-champ .caret {
  transform: translateY(-50%)rotate(180deg);
}

.selr-chip {
  background: var(--primary-50);
  max-width: 100%;
  color: var(--primary-dark);
  border: 1px solid #c7d2fe;
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 1px 4px 1px 9px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  display: inline-flex;
}

.selr-chip.fixe {
  border-color: var(--line-2);
  color: var(--ink-700);
  background: #f8fafc;
  padding-right: 9px;
}

.selr-chip .x {
  width: 16px;
  height: 16px;
  color: var(--primary);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.selr-chip .x:hover {
  color: var(--primary-dark);
  background: #c7d2fe;
}

.selr-pop {
  z-index: 60;
  background: #fff;
  border-radius: 10px;
  min-width: 220px;
  padding: 6px;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  box-shadow: 0 12px 32px #0f172a24, 0 0 0 1px #0f172a0f;
}

.selr.s .selr-pop {
  white-space: normal;
  min-width: 200px;
  right: auto;
}

.selr-q {
  border: 1px solid var(--line-2);
  color: var(--ink-400);
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  padding: 4px 8px;
  display: flex;
}

.selr-q input {
  min-width: 0;
  font: inherit;
  color: var(--ink-900);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  font-size: 13px;
}

.selr-list {
  max-height: 240px;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow-y: auto;
}

.selr-opt {
  color: var(--ink-800);
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  display: flex;
}

.selr-opt .lb {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.selr-opt .sb {
  color: var(--ink-400);
  white-space: nowrap;
  font-size: 11px;
}

.selr-opt .coche {
  width: 12px;
  color: var(--primary);
  flex-shrink: 0;
  display: inline-flex;
}

.selr-opt .box {
  border: 1.5px solid var(--ink-300);
  color: #fff;
  background: #fff;
  border-radius: 4px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 14px;
  height: 14px;
  display: inline-flex;
}

.selr-opt .box.on {
  background: var(--primary);
  border-color: var(--primary);
}

.selr-opt.actif {
  background: var(--primary-50);
  color: var(--primary-dark);
}

.selr-opt[aria-selected="true"] .lb {
  font-weight: 600;
}

.selr-opt.fixe {
  color: var(--ink-400);
  cursor: default;
}

.selr-opt.fixe .box.on {
  background: var(--ink-300);
  border-color: var(--ink-300);
}

.selr-vide {
  color: var(--ink-400);
  padding: 10px 8px;
  font-size: 12px;
}

.selr-plus {
  border-top: 1px solid var(--line);
  color: var(--ink-400);
  padding: 6px 8px;
  font-size: 11px;
}

.selr-grp {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  padding: 8px 8px 3px;
  font-size: 10px;
  font-weight: 700;
}

.selr-grp:first-child {
  padding-top: 4px;
}

.payedit .subh {
  margin: 10px 0 4px;
}

.payedit .genrow {
  margin-bottom: 4px;
}

.payedit-ligne {
  border-top: 1px dashed var(--line-2);
  margin-top: 6px;
}

.payedit-h {
  color: var(--ink-700);
  font-variant-numeric: tabular-nums;
  align-items: center;
  gap: 6px;
  margin: 8px 0 4px;
  font-size: 11.5px;
  font-weight: 600;
  display: flex;
}

.payedit .mactions {
  margin-top: 10px;
}

.paypanel .pph .btn-xs {
  white-space: nowrap;
}

.docrow .edin {
  margin-top: 0;
}

.btn-xs[disabled] {
  opacity: .4;
  cursor: default;
}

.btn-xs[disabled]:hover {
  border-color: var(--line-2);
  color: var(--ink-700);
}

.pmatwrap {
  scrollbar-width: thin;
  scrollbar-color: var(--ink-300) #f1f5f9;
  max-width: 100%;
  padding-bottom: 10px;
  overflow: auto hidden;
}

.pmatwrap::-webkit-scrollbar {
  height: 9px;
}

.pmatwrap::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 999px;
}

.pmatwrap::-webkit-scrollbar-thumb {
  background: var(--ink-300);
  border-radius: 999px;
}

.pmatwrap::-webkit-scrollbar-thumb:hover {
  background: var(--ink-400);
}

.pmatzone {
  position: relative;
}

.pmatzone:after {
  content: "";
  pointer-events: none;
  opacity: 0;
  background: linear-gradient(to right, #fff0, #fff 80%);
  width: 40px;
  transition: opacity .15s;
  position: absolute;
  top: 0;
  bottom: 10px;
  right: 0;
}

.pmatzone[data-suite="1"]:after {
  opacity: 1;
}

.pmat th {
  min-width: 160px;
}

.pmat thead th {
  overflow-wrap: break-word;
  vertical-align: middle;
  line-height: 1.35;
}

.pmat th.pl, .pmat td.pl {
  z-index: 1;
  min-width: 250px;
  box-shadow: inset -1px 0 0 var(--line);
  background: #fff;
  position: sticky;
  left: 0;
}

.pmat th.pl > *, .pmat td.pl > * {
  overflow-wrap: anywhere;
  max-width: 320px;
}

.pmat thead th.pl {
  z-index: 2;
}

.pmat .pmsec td.pl {
  background: #eef2ff;
}

.pmat .pmgrp td.pl {
  background: #f8fafc;
}

.pmat .pn {
  flex-wrap: nowrap;
}

.pmat td .plk {
  overflow-wrap: anywhere;
  margin-left: 10px;
}

.pvpct.vide, .pvmonth .mpct b.vide {
  color: var(--ink-300);
  font-weight: 500;
}

.tl[data-c] .lbl {
  color: var(--ink-800);
}

.tl[data-c].ok .lbl {
  color: var(--ink-400);
}

.tl[data-c]:hover .lbl {
  color: var(--ink-900);
}

.chargebar {
  z-index: 30;
  pointer-events: none;
  height: 0;
  position: relative;
}

.chargebar > span {
  background: none;
  height: 2px;
  transition: background .2s;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.chargebar.on > span {
  background: var(--primary-50);
}

.chargebar i {
  background: linear-gradient(90deg,#4f46e526,var(--primary) 55%,var(--primary-dark));
  opacity: 0;
  border-radius: 0 2px 2px 0;
  width: 36%;
  height: 2px;
  transition: opacity .2s;
  position: absolute;
  top: 0;
  left: 0;
}

.chargebar.on i {
  opacity: 1;
  animation: 1.15s cubic-bezier(.4, 0, .2, 1) infinite chargebar;
}

@keyframes chargebar {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(300%);
  }
}

.skel {
  flex-direction: column;
  gap: 10px;
  width: 100%;
  padding: 14px 0 10px;
  display: flex;
}

.skel.compact {
  gap: 8px;
  padding: 6px 0;
}

.skel-l {
  background: linear-gradient(90deg, #f1f5f9 0%, #e2e8f0 40%, #f1f5f9 80%) 0 0 / 200% 100%;
  border-radius: 6px;
  height: 14px;
  animation: 1.4s ease-in-out infinite skel;
  display: block;
}

.skel.compact .skel-l {
  height: 11px;
}

.skel-tr td {
  padding: 6px 14px 8px;
}

@keyframes skel {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: -100% 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .skel-l, .chargebar.on i {
    animation: none;
  }

  .chargebar.on i {
    opacity: .6;
    width: 100%;
  }
}

.chk-head {
  color: var(--ink-800);
  align-items: center;
  gap: 12px;
  padding: 8px 2px 10px;
  font-size: 13px;
  display: flex;
}

.chk-head .nm {
  min-width: 180px;
  font-weight: 600;
}

.chk-head .bar {
  background: var(--line-2);
  border-radius: 999px;
  flex: 1;
  max-width: 280px;
  height: 6px;
  overflow: hidden;
}

.chk-head .bar i {
  background: var(--primary);
  border-radius: 999px;
  height: 100%;
  display: block;
}

.chk-head .cnt3 {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  font-size: 11.5px;
}

.chk {
  flex-direction: column;
  display: flex;
}

.chk-row {
  border-top: 1px solid var(--line);
  grid-template-columns: auto 76px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  padding: 8px 2px;
  display: grid;
}

.tl-g + .chk-row, .chk-row:first-child {
  border-top: none;
}

.chk-row .apchk {
  cursor: pointer;
  background: #fff;
  width: 16px;
  height: 16px;
  padding: 0;
}

.chk-row .apchk.on {
  background: var(--ok);
}

.chk-row .apchk:disabled {
  cursor: default;
  opacity: .55;
}

.chk-row .apchk:not(:disabled):hover {
  border-color: var(--primary);
}

.chk-row .apchk:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.chk-row .who {
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11.5px;
  font-weight: 600;
  overflow: hidden;
}

.chk-row.mine .who {
  color: var(--ink-500);
}

.chk-row .lbl {
  color: var(--ink-400);
  overflow-wrap: anywhere;
  min-width: 0;
  font-size: 13.5px;
}

.chk-row.mine .lbl {
  color: var(--ink-900);
  font-weight: 500;
}

.chk-row.ok .lbl {
  color: var(--ink-400);
  text-decoration: line-through;
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
}

.chk-row .chk-date {
  color: var(--ink-400);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  font-size: 11.5px;
}

.chk-row .chk-date .chk-gestes {
  margin-right: 8px;
}

.chk.chk2 {
  grid-template-columns: 1fr 1fr;
  align-items: start;
  column-gap: 22px;
  display: grid;
}

.chk2 .chk2-col {
  flex-direction: column;
  min-width: 0;
  display: flex;
}

.chk2 .chk2-h {
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--ink-400);
  border-bottom: 1px solid var(--line);
  padding: 2px 2px 7px;
  font-size: 10px;
  font-weight: 700;
}

.chk2 .chk2-h + .chk-row {
  border-top: none;
}

.chk2 .chk-row {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.chk2 .chk-row .who {
  display: none;
}

@media (max-width: 980px) {
  .chk.chk2 {
    grid-template-columns: 1fr;
  }

  .chk2 .chk2-col.d {
    margin-top: 18px;
  }

  .chk2 .chk-row {
    grid-template-columns: auto 76px minmax(0, 1fr) auto;
  }

  .chk2 .chk-row .who {
    display: block;
  }
}

.payrap > summary {
  cursor: pointer;
  align-items: center;
  gap: 8px;
  list-style: none;
  display: flex;
}

.payrap > summary::-webkit-details-marker {
  display: none;
}

.payrap > summary .chev {
  color: var(--ink-400);
  flex: none;
  font-size: 15px;
  line-height: 1;
  transition: transform .15s;
}

.apgrid-head {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 6px 2px 8px;
  display: flex;
}

.apgrid-head .chip {
  font-size: 12px;
  font-weight: 700;
}

.apgrid-wrap {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  max-width: 100%;
  overflow-x: auto;
}

.apgrid {
  border-collapse: separate;
  border-spacing: 0;
  min-width: 100%;
  color: var(--ink-700);
  font-size: 12.5px;
}

.apgrid th, .apgrid td {
  border-bottom: 1px solid var(--line);
  text-align: center;
  vertical-align: top;
  white-space: nowrap;
  padding: 8px 10px;
}

.apgrid thead th {
  color: var(--ink-900);
  font-size: 12.5px;
  font-weight: 600;
}

.apgrid thead .apgrid-noms th {
  white-space: normal;
  min-width: 120px;
  padding-top: 12px;
}

.apgrid thead .apgrid-noms th .apnom {
  white-space: normal;
  font-weight: 600;
}

.apgrid thead .apgrid-noms th.horsrail .apnom {
  color: var(--ink-300);
}

.apgrid thead .apgrid-noms th .mention {
  color: var(--ink-400);
  font-size: 10.5px;
  font-weight: 400;
  display: block;
}

.apgrid .apgrid-why {
  color: var(--warn);
  white-space: normal;
  max-width: 160px;
  margin: 2px auto 0;
  font-size: 10.5px;
  font-weight: 400;
  display: block;
}

.apgrid thead .apgrid-mode td, .apgrid thead .apgrid-avc td {
  color: var(--ink-500);
  font-size: 11.5px;
}

.apgrid .apgrid-k {
  z-index: 1;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  white-space: normal;
  min-width: 190px;
  max-width: 260px;
  box-shadow: 1px 0 0 0 var(--line-2);
  background: #fff;
  font-size: 10px;
  font-weight: 600;
  position: sticky;
  left: 0;
}

.apgrid tbody .apgrid-row .apgrid-k {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-900);
  font-size: 12.5px;
  font-weight: 500;
}

.apgrid .apgrid-band td {
  text-align: left;
  color: #3730a3;
  text-transform: uppercase;
  letter-spacing: .07em;
  background: #eef2ff;
  padding: 7px 10px;
  font-size: 10.5px;
  font-weight: 700;
  position: sticky;
  left: 0;
}

.apcell {
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
}

.apcell.ok {
  background: var(--ok-50);
  color: var(--ok);
}

.apcell.todo {
  color: var(--ink-400);
  background: #f1f5f9;
}

.apcell.no {
  background: var(--err-50);
  color: var(--err);
  border: 1px dashed #fda4af;
}

.apcell.na {
  color: var(--ink-300);
}

.apcell.inconnu {
  color: var(--ink-400);
  border: 1px dashed var(--ink-300);
  background: #fff;
}

.apgrid .apgrid-note td {
  text-align: left;
  color: var(--ink-500);
  white-space: normal;
  background: #fff;
  padding: 8px 10px;
  font-size: 12px;
  position: sticky;
  left: 0;
}

.btn.diapo-attente {
  background: var(--warn-50);
  color: #92400e;
  border-color: #fcd34d;
}

.btn.diapo-attente:hover {
  background: #fef3c7;
}

.btn.diapo-ok {
  background: var(--ok-50);
  color: #047857;
  border-color: #a7f3d0;
}

.btn.diapo-ok:hover {
  background: #d1fae5;
}

.diapo-fld .diapo-file {
  align-items: center;
  gap: 4px;
  min-width: 0;
  display: flex;
}

.diapo-fld .diapo-file a {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden;
}

.diapo-fld .diapo-retirer {
  color: var(--ink-400);
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 6px;
  flex: none;
  padding: 0 5px;
  font-size: 12px;
  line-height: 18px;
}

.diapo-fld .diapo-retirer:hover {
  color: var(--err);
  background: var(--err-50);
}

.diapo-fld .diapo-retirer:disabled {
  cursor: default;
  opacity: .5;
}

.diapo-fld .diapo-geste {
  white-space: normal;
  text-align: left;
  margin-top: 8px;
  padding: 6px 10px;
  font-size: 12px;
}

.diapo-fld .diapo-options {
  width: 100%;
  max-width: 320px;
  font-size: 12px;
}

.pieces-ard-carte {
  border: 1px solid var(--line);
  border-radius: 12px;
  margin: 0 0 16px;
  padding: 12px 16px;
  font-size: 13px;
}

.pieces-ard-carte summary {
  cursor: pointer;
  color: var(--ink-700);
  font-weight: 600;
}

.pieces-ard-carte ul {
  gap: 8px;
  margin: 12px 0 0;
  padding-left: 18px;
  display: grid;
}

.pieces-ard-carte a {
  color: var(--accent);
  text-decoration: none;
}

.diapo-fld .diapo-options summary {
  cursor: pointer;
  color: var(--ink-500);
  width: fit-content;
  line-height: 1.6;
}

.diapo-fld .diapo-options summary:hover {
  color: var(--ink-900);
}

.diapo-fld .diapo-options summary:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
  border-radius: 4px;
}

.diapo-fld .diapo-aide {
  color: var(--ink-500);
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.5;
}

.diapo-fld {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.diapo-fld > .k {
  margin-bottom: 0;
}

.diapo-fld > .v {
  max-width: 100%;
  font-size: 13px;
  line-height: 1.5;
}

.diapo-fld > .sm {
  max-width: 32ch;
  font-size: 11.5px;
  line-height: 1.5;
}

.diapo-fld .diapo-geste .btn {
  white-space: normal;
  text-align: left;
  padding: 7px 11px;
  font-size: 12px;
}

.besoins-liste {
  gap: 10px;
  display: grid;
}

.besoin-apprenant {
  border: 1px solid var(--line);
  background: var(--panel, #fff);
  border-radius: 12px;
  overflow: hidden;
}

.besoin-apprenant > summary {
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 16px;
  font-size: 13px;
  font-weight: 600;
  list-style: none;
  display: flex;
}

.besoin-apprenant > summary::-webkit-details-marker {
  display: none;
}

.besoin-apprenant > summary:after {
  content: "⌄";
  color: var(--ink-400);
  font-size: 17px;
}

.besoin-apprenant[open] > summary {
  border-bottom: 1px solid var(--line);
  background: var(--bg);
}

.besoin-sources {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  padding: 18px;
  display: grid;
}

.besoin-source {
  min-width: 0;
}

.besoin-source h4 {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--primary);
  margin: 0 0 16px;
  font-size: 11px;
}

.besoin-source dl {
  gap: 16px;
  margin: 0;
  display: grid;
}

.besoin-source dt {
  color: var(--ink-500);
  margin-bottom: 5px;
  font-size: 11px;
}

.besoin-source dd {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
}

.besoin-source + .besoin-source {
  border-left: 1px solid var(--line);
  padding-left: 20px;
}

@media (max-width: 640px) {
  .besoin-sources {
    grid-template-columns: 1fr;
  }

  .besoin-source + .besoin-source {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding-top: 18px;
    padding-left: 0;
  }
}

.premsess {
  background: var(--info-50);
  color: #1e3a8a;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  margin: 8px 0 12px;
  padding: 10px 14px;
  font-size: 12.5px;
  display: flex;
}

.premsess b {
  font-weight: 700;
}

.premsess a {
  white-space: nowrap;
  margin-left: auto;
}

.qz-bar {
  background: var(--line-2);
  border-radius: 999px;
  height: 6px;
  margin-bottom: 10px;
  overflow: hidden;
}

.qz-bar i {
  background: var(--primary);
  border-radius: 999px;
  height: 100%;
  transition: width .2s;
  display: block;
}

.qz-meta {
  color: var(--ink-400);
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 11.5px;
  display: flex;
}

.qz-q {
  color: var(--ink-900);
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 600;
}

.qz-choix {
  text-align: left;
  width: 100%;
  font: inherit;
  color: var(--ink-900);
  cursor: pointer;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  margin-top: 8px;
  padding: 10px 12px;
  font-size: 13.5px;
  display: block;
}

.qz-choix:hover:not(:disabled) {
  border-color: var(--primary);
}

.qz-choix:disabled {
  cursor: default;
}

.qz-choix[data-etat="ok"] {
  border-color: var(--ok);
  background: var(--ok-50);
}

.qz-choix[data-etat="ko"] {
  border-color: var(--warn);
  background: var(--warn-50);
}

.qz-choix[data-etat="dim"] {
  opacity: .55;
}

.qz-expl {
  background: var(--line-2);
  color: var(--ink-900);
  border-radius: 10px;
  margin-top: 10px;
  padding: 10px 12px;
  font-size: 12.5px;
}

.qz-expl b {
  margin-bottom: 2px;
  display: block;
}

.qz-score {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: 13.5px;
  display: flex;
}

.qz-err {
  color: var(--ink-900);
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  margin-top: 10px;
  padding: 10px 12px;
  font-size: 12.5px;
}

.qz-err .sm {
  color: var(--ink-400);
  margin-top: 3px;
}

.chk-row .lbl .qz-ouvrir {
  vertical-align: middle;
  margin-left: 8px;
}

.tl-nat {
  position: relative;
}

.tl-nat:focus {
  outline: none;
}

.tl-nat:focus-visible .ic.round {
  box-shadow: 0 0 0 2px var(--primary-50);
}

.tl-tip {
  z-index: 60;
  background: var(--ink-900);
  color: #e2e8f0;
  white-space: normal;
  text-align: left;
  cursor: default;
  border-radius: 8px;
  width: max-content;
  max-width: 380px;
  padding: 6px 10px;
  font-size: 11.5px;
  font-weight: 400;
  line-height: 1.45;
  text-decoration: none;
  display: none;
  position: absolute;
  top: 28px;
  right: 0;
  box-shadow: 0 10px 28px #00000038;
}

.tl-nat:hover .tl-tip, .tl-nat:focus .tl-tip, .tl-nat:focus-within .tl-tip, .tl-bypass:hover .tl-tip, .tl-bypass:focus .tl-tip {
  display: block;
}

.tl.ok .tl-nat:hover, .tl.todo .tl-nat:hover {
  opacity: 1;
}

.tl-bypass {
  color: var(--warn);
  background: var(--warn-50);
  cursor: default;
  vertical-align: baseline;
  border: 1px solid #fcd34d;
  border-radius: 4px;
  align-items: center;
  margin-left: 8px;
  padding: 0 6px;
  font-size: 10.5px;
  font-weight: 600;
  display: inline-flex;
  position: relative;
}

.tl-bypass .tl-tip {
  white-space: pre-line;
  top: 20px;
  left: 0;
  right: auto;
}

.tl-nat.haut .tl-tip {
  top: auto;
  bottom: 28px;
}

.tl-bypass.haut .tl-tip {
  top: auto;
  bottom: 20px;
}

.tl.ok .tl-bypass {
  text-decoration: none;
}

button.tl-tpl {
  cursor: pointer;
  vertical-align: baseline;
  font-family: inherit;
  line-height: 1.5;
}

button.tl-tpl:hover {
  color: var(--primary-dark);
  background: var(--primary-50);
  border-color: #c7d2fe;
}

.tl.pc .tl-tr {
  display: inline;
}

.tl-err.act {
  cursor: pointer;
  text-align: left;
  text-underline-offset: 2px;
  background: none;
  border: 0;
  padding: 0;
  font-family: inherit;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

.tl-err.act:hover {
  text-decoration-style: solid;
}

.tpl-objet {
  color: var(--ink-800);
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
}

.tpl-objet .k {
  color: var(--ink-400);
  text-transform: uppercase;
  letter-spacing: .02em;
  flex: none;
  font-size: 10.5px;
  font-weight: 600;
}

.tpl-objet .var {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-radius: 4px;
  padding: 0 4px;
  font-size: 12px;
  font-weight: 500;
}

#ciblesmodal {
  z-index: 200;
  background: #0f172a4d;
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
  position: fixed;
  inset: 0;
}

#ciblesmodal .mhead .sub {
  color: var(--ink-500);
  margin: 4px 0 0;
  font-size: 12px;
}

.cib-row {
  border-bottom: 1px solid var(--line);
  align-items: center;
  gap: 8px;
  padding: 7px 0;
  display: flex;
}

.cib-row:last-of-type {
  border-bottom: 0;
}

.cib-nom {
  min-width: 0;
  color: var(--ink-800);
  flex-direction: column;
  flex: 1;
  gap: 1px;
  font-size: 13px;
  display: flex;
}

.cib-raison {
  color: var(--ink-400);
  font-size: 11px;
  line-height: 1.35;
}

.cib-row.hors_perimetre .cib-nom {
  color: var(--ink-400);
}

.cib-row.incomplete .cib-raison {
  color: var(--warn);
}

.cib-alerte {
  background: var(--err-50);
  color: var(--err);
  border-radius: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.45;
}

.msec .sm {
  color: var(--ink-400);
  font-size: 11px;
  font-weight: 400;
}

#modal2 .mhead .s .bby-meta {
  color: var(--ink-500);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  font-size: 12.5px;
  display: flex;
}

.bby-meta .bby-meta-nom {
  color: var(--ink-800);
  font-weight: 600;
}

.bby-meta .bby-meta-sep {
  color: var(--ink-300);
}

.bby-meta .bby-montant {
  background: var(--primary-50);
  color: var(--primary-dark);
  font-size: 11.5px;
  font-weight: 600;
}

.bby-alerte {
  background: var(--err-50);
  color: var(--err);
  border-radius: 9px;
  flex-direction: column;
  gap: 2px;
  margin: 10px 0 4px;
  padding: 9px 12px;
  font-size: 12.5px;
  line-height: 1.4;
  display: flex;
}

.bby-alerte .bby-alerte-t {
  font-weight: 600;
}

.bby-alerte .bby-alerte-m {
  color: #9f1239;
  overflow-wrap: anywhere;
}

.bby-effacer {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  margin-top: 6px;
  display: flex;
}

.bby-effacer .bby-lbl {
  color: var(--ink-700);
  font-size: 12px;
  font-weight: 500;
}

.bby-effacer .edin {
  width: auto;
  min-width: 0;
  margin-top: 0;
}

.bby-sec {
  margin-top: 14px;
}

.bby-sec:first-child {
  margin-top: 8px;
}

.bby-sec-t {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  margin-bottom: 6px;
  font-size: 10.5px;
  font-weight: 600;
}

.bby-liste {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}

.bby-item {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 0 12px;
  display: flex;
}

.bby-item:first-child {
  border-top: none;
}

.bby-dot {
  background: var(--ok);
  border-radius: 50%;
  flex: none;
  width: 8px;
  height: 8px;
}

.bby-dot.warn {
  background: var(--warn);
}

.bby-dot.err {
  background: var(--err);
}

.bby-txt {
  flex: 1;
  min-width: 0;
}

.bby-tt {
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
}

.bby-sm {
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 11.5px;
  line-height: 1.3;
  overflow: hidden;
}

.bby-droite {
  flex: none;
  align-items: center;
  gap: 6px;
  display: flex;
}

.chip.bby-err {
  background: var(--err-50);
  color: var(--err);
}

.bby-envoi {
  align-items: center;
  gap: 8px;
  display: flex;
}

.bby-envoi .bby-lbl {
  color: var(--ink-700);
  flex: none;
  font-size: 12.5px;
  font-weight: 500;
}

.bby-envoi .edin {
  flex: 1;
  min-width: 0;
  margin-top: 0;
}

.bby-envoi .bby-mode {
  flex: none;
}

.bby-cc {
  margin-top: 5px;
}

.bby-note {
  white-space: normal;
  color: var(--ink-500);
}

.bby-depot {
  border-top: 1px solid var(--line);
  padding: 10px 12px 12px;
}

.bby-depot-zone {
  border: 1.5px dashed var(--line-2);
  background: var(--bg);
  min-height: 60px;
  color: var(--ink-500);
  text-align: center;
  border-radius: 9px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 12px;
  font-size: 12.5px;
  transition: border-color .12s, background .12s, color .12s;
  display: flex;
}

.bby-depot.survol .bby-depot-zone {
  border-color: var(--primary);
  background: var(--primary-50);
  color: var(--primary-dark);
}

.bby-depot-lien {
  font: inherit;
  color: var(--primary);
  cursor: pointer;
  text-underline-offset: 2px;
  background: none;
  border: 0;
  padding: 0;
  font-weight: 600;
  text-decoration: underline;
}

.bby-depot-lien:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
  border-radius: 3px;
}

.bby-depot-fichier {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 2px 8px;
  min-width: 0;
  display: flex;
}

.bby-depot-nom {
  min-width: 0;
  max-width: 100%;
  color: var(--ink-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
  overflow: hidden;
}

.bby-depot-nom a {
  color: inherit;
  text-underline-offset: 2px;
  text-decoration: underline;
}

.bby-depot-avert {
  background: var(--warn-50);
  color: #92400e;
  border-radius: 7px;
  margin-top: 6px;
  padding: 6px 9px;
  font-size: 11.5px;
  line-height: 1.35;
}

.bby-depot-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  margin-top: 8px;
  display: flex;
}

#modal2[data-couche="dessus"] {
  z-index: 260;
}

.apfen-validees {
  color: var(--ink-500);
  margin: 0 0 10px;
  font-size: 12px;
}

.apfen-ap {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 8px;
  margin: 0 0 8px;
}

.apfen-ap > summary {
  cursor: pointer;
  color: var(--ink-700);
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  list-style: none;
  display: flex;
}

.apfen-ap > summary::-webkit-details-marker {
  display: none;
}

.apfen-ap > summary .chev {
  color: var(--ink-400);
  font-size: 9px;
  transition: transform .15s;
}

.apfen-ap[open] > summary .chev {
  transform: rotate(90deg);
}

.apfen-ap > summary button.apchk {
  cursor: pointer;
  background: none;
  flex: none;
  padding: 0;
}

.apfen-ap > summary button.apchk.on {
  background: var(--ok);
}

.apfen-ap > summary button.apchk:disabled {
  cursor: default;
  opacity: .5;
}

.apfen-ap > summary .apfen-nom {
  min-width: 0;
  color: var(--ink-900);
  flex: auto;
  font-weight: 500;
}

.apfen-ap.horsrail > summary .apfen-nom {
  color: var(--ink-300);
  font-weight: 400;
}

.apfen-ap > summary .mention {
  color: var(--ink-400);
  font-size: 10.5px;
}

.apfen-corps {
  border-top: 1px solid var(--line);
  padding: 8px 12px 12px;
}

.apfen-corps .tl-ap {
  padding: 0;
}

.synctbl {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  margin-top: 8px;
  font-size: 12.5px;
}

.synctbl th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  border-bottom: 1px solid var(--line-2);
  white-space: nowrap;
  padding: 6px 8px;
  font-size: 10.5px;
  font-weight: 600;
}

.synctbl td {
  border-bottom: 1px solid var(--line);
  vertical-align: middle;
  color: var(--ink-700);
  padding: 7px 8px;
}

.synctbl tbody tr:hover td {
  background: var(--bg);
}

.synctbl tbody tr:last-child td {
  border-bottom: none;
}

.synctbl .sync-coche {
  text-align: center;
  width: 34px;
  padding-left: 6px;
  padding-right: 6px;
}

.synctbl.applique .sync-coche {
  width: 74px;
}

.synctbl .sync-coche input {
  vertical-align: middle;
  accent-color: var(--primary);
  margin: 0;
}

.synctbl .sync-lecture {
  background: var(--line-2);
  border-radius: 50%;
  width: 8px;
  height: 8px;
  display: inline-block;
}

.synctbl .sync-lib {
  width: 36%;
}

.synctbl .sync-nom {
  color: var(--ink-900);
  white-space: normal;
  overflow-wrap: anywhere;
  font-weight: 600;
  line-height: 1.35;
  display: block;
}

.synctbl .sync-etat {
  color: var(--ink-400);
  margin-top: 1px;
  font-size: 10.5px;
  display: block;
}

.synctbl .sync-etat.different, .synctbl .sync-etat.absent_delivia, .synctbl .sync-etat.absent_externe {
  color: var(--warn);
}

.synctbl .sync-why {
  color: var(--err);
  white-space: normal;
  margin-top: 2px;
  font-size: 11px;
  display: block;
}

.synctbl .sync-val {
  white-space: normal;
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
  line-height: 1.4;
}

.synctbl tr.same td {
  color: var(--ink-500);
}

.synctbl tr.same .sync-nom {
  color: var(--ink-700);
  font-weight: 500;
}

.synctbl .chip {
  white-space: nowrap;
}

.synctbl .sync-aucune {
  padding: 10px 8px;
}

.syncsection {
  margin-top: 16px;
}

.syncsection:first-child {
  margin-top: 2px;
}

.synctitre {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ink-500);
  align-items: center;
  gap: 8px;
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.synctitre .synccompte {
  color: var(--ink-700);
  font-variant-numeric: tabular-nums;
  background: #e2e8f0;
  border-radius: 999px;
  padding: 1px 8px;
  font-size: 11px;
}

[data-sync-section="differents"] .synctitre {
  color: var(--warn);
}

[data-sync-section="differents"] .synctitre .synccompte {
  background: var(--warn-50, #fef3c7);
  color: var(--warn);
}

.synctbl.syncdiff .sync-lib {
  width: 30%;
}

.synctbl.syncsame .sync-lib {
  width: 38%;
}

.synctbl .sync-choix {
  vertical-align: top;
  padding: 0;
}

.synctbl .sync-choix > label {
  cursor: pointer;
  align-items: flex-start;
  gap: 8px;
  min-height: 100%;
  padding: 8px;
  display: flex;
}

.synctbl .sync-choix > label:hover {
  background: var(--bg);
}

.synctbl .sync-choix > label > input {
  accent-color: var(--primary);
  flex: none;
  margin: 3px 0 0;
}

.synctbl .sync-choix > label > span {
  white-space: normal;
  overflow-wrap: anywhere;
  min-width: 0;
}

.synctbl .sync-choix[data-actif="true"] {
  background: var(--primary-50, #eef2ff);
  box-shadow: inset 0 0 0 1px var(--primary-100, #c7d2fe);
}

.synctbl .sync-choix[data-actif="true"] > label > span {
  color: var(--ink-900);
  font-weight: 600;
}

.synctbl .sync-choix[data-actif="false"] > label > span {
  color: var(--ink-500);
}

.synctbl .sync-choix:not([data-actif]) {
  color: var(--ink-500);
  padding: 7px 8px;
}

.synctbl .sync-choix .sync-lecture {
  vertical-align: middle;
  margin-left: 6px;
}

.synctbl .sync-choix .chip {
  margin-left: 6px;
}

.synclegende {
  color: var(--ink-400);
  margin: 8px 8px 0;
  font-size: 11.5px;
  line-height: 1.45;
}

.synctbl.syncsame tr.same td {
  color: var(--ink-500);
}

.syncactions {
  margin-top: 10px;
}

.syncactions .lrow {
  border-top: 1px solid var(--line);
  padding: 7px 8px;
}

.syncactions .lrow:first-child {
  border-top: none;
}

.syncactions input {
  accent-color: var(--primary);
  margin: 0;
}

.syncnotes {
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-top: 10px;
  padding: 0 8px;
  font-size: 11.5px;
  line-height: 1.45;
  overflow: hidden;
}

.syncnotes[data-sync-resultat-notes] {
  white-space: normal;
  color: var(--ink-500);
}

@media (max-width: 600px) {
  .syncbox .synctbl .sync-nom, .syncbox .synctbl .sync-val, .syncbox .syncnotes {
    white-space: normal;
    overflow-wrap: anywhere;
    text-overflow: clip;
    overflow: visible;
  }
}

.hal-liste {
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
  display: flex;
}

.hal-ligne {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  padding: 9px 12px;
}

.hal-ligne.refuse {
  border-color: #fecaca;
}

.hal-ligne.non_invite, .hal-ligne.exclu, .hal-ligne.revoque {
  border-color: #fde68a;
}

.hal-tete {
  align-items: center;
  gap: 8px;
  display: flex;
}

.hal-nom {
  min-width: 0;
  color: var(--ink-900);
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.hal-nom .sm {
  color: var(--ink-400);
  font-size: 12px;
  font-weight: 400;
}

.hal-jour {
  color: var(--ink-600);
  align-items: baseline;
  gap: 8px;
  padding: 4px 0 0;
  font-size: 12px;
  display: flex;
}

.hal-date {
  color: var(--ink-700);
  flex: 0 0 58px;
  font-weight: 600;
}

.hal-fait {
  min-width: 0;
  line-height: 1.4;
}

.hal-jour.refuse .hal-fait {
  color: var(--err);
}

.hal-jour.non_invite .hal-fait, .hal-jour.revoque .hal-fait, .hal-fait.warn {
  color: var(--warn);
}

.mi-tete {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.mi-compteurs {
  color: var(--ink-900);
  font-size: 13px;
  font-weight: 600;
}

.mi-note {
  color: var(--warn);
  margin: 8px 0 0;
  font-size: 12px;
}

.mi-liste {
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
  display: flex;
}

.mi-ligne {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  padding: 9px 12px;
}

.mi-ligne.echec {
  border-color: #fecaca;
}

.mi-ligne.a_envoyer, .mi-ligne.a_verifier {
  border-color: #fde68a;
}

.mi-ligne.non_concerne {
  opacity: .7;
}

.mi-tete-ligne {
  align-items: center;
  gap: 8px;
  display: flex;
}

.mi-nom {
  min-width: 0;
  color: var(--ink-900);
  overflow-wrap: anywhere;
  flex: 1;
  font-size: 13px;
  font-weight: 600;
}

.mi-nom .sm {
  color: var(--ink-400);
  font-size: 12px;
  font-weight: 400;
}

.mi-fait {
  color: var(--ink-600);
  padding: 4px 0 0;
  font-size: 12px;
  line-height: 1.4;
}

.mi-fait.err {
  color: var(--err);
}

.mi-fait.warn {
  color: var(--warn);
}

.mi-historique {
  color: var(--ink-600);
  margin-top: 4px;
  font-size: 12px;
}

.mi-historique summary {
  cursor: pointer;
  color: var(--ink-400);
}

.mi-historique ul {
  margin: 4px 0 0;
  padding-left: 16px;
}

.chip.err {
  background: var(--err-50);
  color: var(--err);
}

.emg-grille {
  align-items: center;
  gap: 4px 8px;
  margin-top: 8px;
  display: grid;
  overflow-x: auto;
}

.emg-entete {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  border-bottom: 1px solid var(--line);
  padding-bottom: 4px;
  font-size: 10.5px;
  font-weight: 600;
}

.emg-nom {
  color: var(--ink-800);
  min-width: 0;
  padding: 5px 0;
  font-size: 13px;
}

.emg-nom .sm {
  color: var(--ink-400);
  font-size: 11.5px;
}

.emg-case {
  padding: 3px 0;
}

.emg-formateur .emg-nom {
  color: var(--ink-900);
  font-weight: 600;
}

.emg-formateur > div {
  border-bottom: 1px solid var(--line);
  padding-bottom: 6px;
}

.emg-qr {
  margin-bottom: 12px;
}

.emg-qr .pl-tete {
  justify-content: space-between;
}

.emg-qr-corps {
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 16px;
  display: flex;
}

.emg-qr-corps > svg {
  border: 1px solid var(--line-2);
  border-radius: 10px;
  flex: none;
}

.emg-qr-corps[data-emg-qr-grand="1"] {
  justify-content: center;
}

.emg-qr-texte {
  min-width: 0;
  color: var(--ink-700);
  flex: 240px;
  font-size: 13px;
  line-height: 1.5;
}

.emg-qr-texte p {
  margin: 0 0 8px;
}

.emg-qr-code b {
  letter-spacing: .08em;
  color: var(--ink-900);
  font-variant-numeric: tabular-nums;
  font-size: 20px;
}

.emg-qr-gestes {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.emg-qr-bouton {
  border: 1px solid var(--line-2);
  color: var(--ink-700);
  font: inherit;
  text-transform: none;
  letter-spacing: 0;
  cursor: pointer;
  background: #fff;
  border-radius: 999px;
  margin-top: 4px;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: 500;
  display: block;
}

.emg-qr-bouton:hover, .emg-qr-bouton[aria-pressed="true"] {
  border-color: var(--primary);
  color: var(--primary);
}

.qlc-groupe {
  margin-top: 12px;
}

.qlc-titre {
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-400);
  align-items: center;
  gap: 6px;
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
}

.qlc-titre .sm {
  text-transform: none;
  letter-spacing: 0;
  font-size: 11.5px;
  font-weight: 400;
}

.qlc-liste {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.qlc-ligne {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  padding: 8px 12px;
}

.qlc-ligne.actif {
  border-color: #fecaca;
}

.qlc-ligne.hors {
  border-color: var(--line);
  background: #f8fafc;
}

.qlc-ligne.hors .qlc-nom {
  color: var(--ink-400);
  font-weight: 500;
}

.qlc-tete {
  align-items: center;
  gap: 8px;
  display: flex;
}

.qlc-nom {
  min-width: 0;
  color: var(--ink-900);
  flex: 1;
  font-size: 13px;
  font-weight: 600;
}

.qlc-fait {
  color: var(--ink-500);
  padding: 4px 0 0;
  font-size: 12px;
  line-height: 1.4;
}

.qlc-fait.ok {
  color: var(--ok);
}

.qlc-fait.err {
  color: var(--err);
}

.qlc-note {
  color: var(--ink-600);
  background: #f8fafc;
  border-radius: 8px;
  margin-top: 10px;
  padding: 9px 12px;
  font-size: 12.5px;
  line-height: 1.45;
}

.qlc-note.warn {
  background: var(--warn-50);
  color: var(--warn);
}

#modal2 .mhead .s .pl-meta {
  align-items: center;
  gap: 12px;
  margin-top: 4px;
  display: flex;
}

.pl-meta .pl-puces {
  min-width: 0;
  color: var(--ink-500);
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  line-height: 1.4;
  display: flex;
}

.pl-puces .pl-puce {
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: inline-flex;
}

.pl-puces .pl-fort {
  color: var(--ink-800);
  font-weight: 600;
}

.pl-sep {
  color: var(--ink-300);
}

.pl-meta .dbtns {
  flex: none;
  align-items: center;
}

@media (max-width: 600px) {
  #modal2 .mhead .s .pl-meta {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }

  .pl-meta .pl-puces {
    flex: none;
  }

  .pl-meta .dbtns {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

.pl-synthese {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 6px 0 0;
  font-size: 12px;
  display: flex;
}

.pl-synthese > span {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.pl-alerte {
  background: var(--warn-50);
  color: #92400e;
  border-radius: 9px;
  margin: 10px 0 0;
  padding: 8px 12px;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.4;
}

.pl-carte {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  margin-top: 12px;
  overflow: hidden;
}

.pl-tete {
  border-bottom: 1px solid var(--line-2);
  min-height: 34px;
  color: var(--ink-700);
  background: #f8fafc;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.pl-tete .pl-n {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  font-weight: 500;
}

.pl-item {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 0 12px;
  display: flex;
}

.pl-tete + .pl-item, .pl-item:first-child {
  border-top: none;
}

.pl-nom {
  min-width: 0;
  color: var(--ink-900);
  white-space: nowrap;
  text-overflow: ellipsis;
  flex: 0 0 min(220px, 42%);
  font-size: 13px;
  font-weight: 600;
  overflow: hidden;
}

.pl-doc {
  min-width: 0;
  color: var(--ink-400);
  white-space: nowrap;
  text-overflow: ellipsis;
  flex: 1;
  font-size: 12px;
  overflow: hidden;
}

.pl-droite {
  flex: none;
  align-items: center;
  gap: 6px;
  display: flex;
}

.pl-item .chip {
  white-space: nowrap;
}

.pl-item.barre .pl-nom {
  color: var(--ink-400);
  font-weight: 500;
}

.pl-item.barre .pl-nom s {
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
}

.pl-item.barre .pl-doc {
  color: var(--ink-300);
}

.pl-item.barre .pl-droite .chip {
  text-decoration: none;
}

.chip.pl-off {
  color: var(--ink-400);
  text-decoration: line-through;
  -webkit-text-decoration-color: var(--ink-300);
  text-decoration-color: var(--ink-300);
  background: #f1f5f9;
}

.pl-vide {
  color: var(--ink-400);
  padding: 12px;
  font-size: 12px;
}

.pl-carte .pl-grille {
  margin: 0;
  padding: 8px 12px 10px;
}

.ml-err {
  color: var(--err);
}

.ml-champ {
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  display: flex;
}

.ml-champ .edin {
  flex: 1;
  min-width: 0;
  margin-top: 0;
}

.ml-lbl {
  color: var(--ink-700);
  flex: none;
  font-size: 12.5px;
  font-weight: 500;
}

.ml-objet {
  border-bottom: 1px solid var(--line);
  align-items: baseline;
  gap: 10px;
  padding: 10px 12px;
  display: flex;
}

.ml-obj {
  min-width: 0;
  color: var(--ink-900);
  overflow-wrap: anywhere;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.45;
}

.ml-corps {
  padding: 10px 12px 12px;
}

.ml-corps iframe {
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 8px;
  width: 100%;
  min-height: 340px;
  display: block;
}

.ml-note {
  color: var(--ink-400);
  padding: 0 12px 10px;
  font-size: 11.5px;
  line-height: 1.5;
}

.ml-adresse {
  min-width: 0;
  color: var(--ink-900);
  overflow-wrap: anywhere;
  font-size: 13px;
}

.ml-cc {
  flex-wrap: wrap;
  flex: 1;
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.ml-cc-chip {
  color: var(--ink-700);
  background: #f1f5f9;
  gap: 6px;
  padding: 3px 6px 3px 10px;
  font-size: 12px;
}

.ml-cc-x {
  color: var(--ink-400);
  cursor: pointer;
  background: none;
  padding: 0 2px;
  font-size: 10px;
  line-height: 1;
}

.ml-cc-x:hover:not(:disabled) {
  color: var(--err);
}

.ml-cc-x:disabled {
  cursor: default;
  opacity: .5;
}

.ml-cc-saisie {
  min-width: 180px;
  font: inherit;
  color: var(--ink-900);
  background: none;
  border: 1px solid #0000;
  border-radius: 6px;
  flex: 1;
  padding: 5px 8px;
  font-size: 12.5px;
}

.ml-cc-saisie:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-50);
  background: #fff;
  outline: none;
}

.ml-cc-erreur {
  flex-basis: 100%;
  font-size: 11.5px;
}

.ml-hist {
  border-top: 1px solid var(--line);
  min-height: 32px;
  color: var(--ink-500);
  align-items: center;
  padding: 5px 12px;
  font-size: 12px;
  display: flex;
}

.pl-tete + .ml-hist {
  border-top: none;
}

.pl-tete .chip {
  font-weight: 500;
}

.ml-corps textarea {
  border: 1px solid var(--line-2);
  width: 100%;
  min-height: 260px;
  font: inherit;
  color: var(--ink-900);
  resize: vertical;
  background: #fff;
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.55;
  display: block;
}

.ml-corps textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary-50);
  outline: none;
}

.ml-pieces {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  padding: 4px 12px 10px;
  display: flex;
}

.ml-piece {
  color: var(--ink-700);
  border: 1px solid var(--line-2);
  background: #f8fafc;
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 12px;
}

.ml-piece a {
  color: var(--primary-dark);
  text-decoration: none;
}

.ml-piece a:hover {
  text-decoration: underline;
}

.ml-piece.manque {
  color: var(--ink-400);
  background: #fff;
  border-style: dashed;
}

.quiz-liste {
  margin-top: 6px;
}

.quiz-liste .drow {
  border-top: 1px solid var(--line);
  min-height: 44px;
}

.quiz-liste .drow:first-child {
  border-top: none;
}

.quiz-nom {
  min-width: 0;
  color: var(--ink-800);
  flex: 1;
  font-size: 13px;
}

.quiz-nom .sm {
  color: var(--ink-400);
  font-size: 11.5px;
}

.quiz-score {
  color: var(--ink-700);
  white-space: nowrap;
  font-size: 12px;
  font-weight: 600;
}

.quiz-quand {
  color: var(--ink-400);
  white-space: nowrap;
  font-size: 11.5px;
}

.accbloc {
  background: var(--surface);
  box-shadow: var(--sh-carte);
  border: 1px solid #dfe4ec;
  border-radius: 10px;
  margin-bottom: 12px;
  overflow: hidden;
}

.blocs > .accbloc {
  margin-bottom: 0;
}

.accbloc > summary, .accbloc > .secp-h {
  min-height: 46px;
  color: var(--ink-900);
  cursor: pointer;
  align-items: center;
  gap: 10px;
  padding: 9px 12px 9px 14px;
  font-size: 13px;
  font-weight: 600;
  list-style: none;
  transition: background .12s;
  display: flex;
}

.accbloc > .secp-h {
  cursor: default;
}

.accbloc > summary::-webkit-details-marker {
  display: none;
}

.accbloc > summary::marker {
  content: "";
}

.accbloc > summary:hover {
  background: #f4f6fa;
}

.accbloc > summary:focus {
  outline: none;
}

.accbloc > summary:focus-visible {
  background: var(--primary-50);
  box-shadow: inset 3px 0 0 0 var(--primary);
  outline: none;
}

.accbloc[open] > summary {
  border-bottom: 1px solid var(--line-2);
}

.accbloc > summary .secp-i, .accbloc > .secp-h .secp-i {
  color: var(--ink-400);
  flex: none;
  align-items: center;
  display: inline-flex;
}

.accbloc > summary .secp-t, .accbloc > .secp-h .secp-t {
  flex-direction: column;
  flex: auto;
  gap: 1px;
  min-width: 0;
  display: flex;
}

.accbloc > summary .tt, .accbloc > .secp-h .tt {
  min-width: 0;
  color: var(--ink-900);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  display: block;
  overflow: hidden;
}

.accbloc > summary .tt svg, .accbloc > .secp-h .tt svg {
  vertical-align: -2px;
  color: var(--ink-400);
  margin-right: 6px;
  display: inline-block;
}

.accbloc > summary .secp-s, .accbloc > .secp-h .secp-s {
  color: var(--ink-400);
  font-size: 11.5px;
  font-weight: 400;
  line-height: 1.35;
  display: block;
}

.accbloc > summary .secp-fin, .accbloc > .secp-h .secp-fin {
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  margin-left: auto;
  font-weight: 400;
  display: flex;
}

.accbloc > summary .secp-n, .accbloc > .secp-h .secp-n {
  color: var(--ink-500);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  background: #f1f5f9;
  border-radius: 999px;
  align-items: center;
  padding: 1px 9px;
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.5;
  display: inline-flex;
}

.accbloc > summary .secp-n:has( > .chip) {
  background: none;
  padding: 0;
}

.accbloc > .secp-h .secp-n:has( > .chip) {
  background: none;
  padding: 0;
}

.accbloc > summary .secp-a, .accbloc > .secp-h .secp-a {
  cursor: default;
  align-items: center;
  gap: 8px;
  display: flex;
}

.accbloc > summary .chev {
  width: 22px;
  height: 22px;
  color: var(--ink-500);
  border-radius: 6px;
  flex: 0 0 22px;
  justify-content: center;
  align-items: center;
  transition: transform .18s, background .12s, color .12s;
  display: inline-flex;
}

.accbloc > summary .chev svg {
  display: block;
}

.accbloc > summary:hover .chev {
  color: var(--ink-800);
  background: #e6eaf1;
}

.accbloc[open] > summary .chev {
  transform: rotate(90deg);
}

.accbloc > .inner {
  padding: 12px 14px 14px;
}

.accbloc > .inner > .fbar:first-child {
  margin-top: 0;
}

.faqbloc > .inner > [role="tabpanel"] > .fsec {
  box-shadow: none;
  background: none;
  margin-bottom: 0;
  padding: 0;
}

.faqbloc > .secp-h {
  flex-wrap: wrap;
  row-gap: 8px;
}

.faqbloc > .secp-h .tt {
  white-space: normal;
  overflow: visible;
}

.faq-vues {
  background: #f1f5f9;
  border-radius: 9px;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  max-width: 100%;
  padding: 4px;
  display: inline-flex;
}

.faq-vues button {
  color: var(--ink-500);
  white-space: nowrap;
  border-radius: 6px;
  align-items: center;
  gap: 7px;
  padding: 5px 12px;
  font-size: 13px;
  font-weight: 500;
  display: inline-flex;
}

.faq-vues button:hover {
  color: var(--ink-800);
}

.faq-vues button.active {
  color: var(--ink-900);
  box-shadow: var(--sh-carte);
  background: #fff;
  font-weight: 600;
}

.faq-vues button:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 1px;
}

.faq-vues .n {
  min-width: 18px;
  color: var(--ink-500);
  text-align: center;
  font-variant-numeric: tabular-nums;
  background: #e2e8f0;
  border-radius: 999px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 600;
  line-height: 18px;
}

.faq-vues button.active .n {
  background: var(--primary-50);
  color: var(--primary);
}

.faqbloc > .inner > [role="tabpanel"] > .fbar:first-child {
  margin-top: 0;
}

@media (max-width: 480px) {
  .faq-vues {
    gap: 2px;
  }

  .faq-vues button {
    gap: 5px;
    padding: 5px 8px;
    font-size: 12.5px;
  }
}

.accbloc[open] > .inner {
  animation: .16s secp-ouvre;
}

@keyframes secp-ouvre {
  from {
    opacity: 0;
    transform: translateY(-3px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.accbloc.onbparam {
  border-top: 1px solid #dfe4ec;
  margin-top: 12px;
  padding-top: 0;
}

.qp-ligne {
  align-items: flex-start;
  gap: 12px;
}

.qp-ligne .pl-nom {
  padding-top: 13px;
}

.qp-champ {
  flex-direction: column;
  flex: 1;
  gap: 3px;
  min-width: 0;
  padding: 7px 0;
  display: flex;
}

.qp-champ .notes-ta {
  resize: none;
  background: #fff;
  min-height: 30px;
  margin-top: 0;
  padding: 5px 9px;
  font-size: 12.5px;
  line-height: 1.45;
  overflow: hidden;
}

.qp-champ .notes-ta::placeholder {
  color: var(--ink-300);
}

.qp-champ .notes-ta:disabled {
  color: var(--ink-500);
  background: #f8fafc;
}

.qp-src {
  color: var(--ink-400);
  padding: 0 2px;
  font-size: 11px;
  line-height: 1.4;
}

.qp-pied {
  min-width: 0;
  color: var(--ink-400);
  flex: 1;
  font-size: 11.5px;
  line-height: 1.4;
}

@media (max-width: 640px) {
  .qp-ligne {
    flex-wrap: wrap;
  }

  .qp-ligne .pl-nom {
    flex-basis: 100%;
    padding: 10px 0 0;
  }

  .qp-champ {
    padding-top: 0;
  }
}

.qp-fiche {
  border: 1px solid var(--line-2);
  background: #f8fafc;
  border-radius: 9px;
  margin-top: 10px;
  padding: 8px 10px;
}

.qp-fiche .k {
  color: var(--ink-500);
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: 11px;
  font-weight: 600;
}

.qp-fiche .v {
  color: var(--ink-800);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin-top: 3px;
  font-size: 12.5px;
  line-height: 1.5;
}

.qp-fiche .s {
  color: var(--ink-400);
  margin-top: 4px;
  font-size: 11px;
}

.paypanel {
  margin-left: 77px;
}

.payrap > summary::marker {
  content: "";
  display: none;
}

.payrap > summary .chev {
  width: 22px;
  height: 22px;
  color: var(--ink-500);
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  font-size: 0;
  transition: transform .18s, background .12s;
  display: inline-flex;
}

.payrap > summary .chev svg {
  display: block;
}

.payrap > summary:hover .chev {
  color: var(--ink-800);
  background: #eef1f5;
}

.payrap[open] > summary .chev {
  transform: rotate(90deg);
}

.payrap .chips {
  margin: 8px 0 6px;
}

.payrap .chips button {
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  font-size: 11.5px;
  display: inline-flex;
}

.payrap .chips button .n {
  font-variant-numeric: tabular-nums;
  color: var(--ink-400);
  font-size: 10.5px;
  font-weight: 500;
}

.payrap .chips button.active .n {
  color: var(--primary-dark);
}

.payrap .chips button[disabled] {
  opacity: .45;
  cursor: default;
}

.payq {
  position: relative;
}

.payq-x {
  color: var(--ink-400);
  border-radius: 4px;
  padding: 2px 4px;
  font-size: 11px;
  line-height: 1;
}

.payq-x:hover {
  color: var(--ink-700);
  background: #eef1f5;
}

.tl-ech {
  color: var(--ink-400);
  white-space: nowrap;
  margin-left: 10px;
  font-size: 11.5px;
  font-weight: 500;
}

.tl.now .tl-ech {
  color: var(--ink-500);
}

.tl-ech.retard {
  color: var(--err);
}

.tl-verrou {
  color: var(--ink-500);
  border: 1px solid var(--line);
  white-space: nowrap;
  vertical-align: baseline;
  cursor: default;
  background: #f8fafc;
  border-radius: 4px;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  padding: 0 6px;
  font-size: 10.5px;
  font-weight: 500;
  display: inline-flex;
}

.tl-verrou .ic {
  width: 11px;
  height: 11px;
  color: var(--ink-500);
  display: inline-flex;
}

.tl-verrou .ic svg {
  width: 11px;
  height: 11px;
}

.tl.now .tl-verrou {
  color: var(--ink-700);
  border-color: var(--line-2);
}

.tl.todo-card {
  --action-space: 168px;
  --button-width: 128px;
  grid-template-columns: minmax(0,1fr) var(--action-space);
  align-items: center;
  gap: 12px;
  min-height: 40px;
  padding: 8px 0 8px 2px;
  display: grid;
}

.tl.todo-card ~ .tl.todo-card:after {
  content: "";
  border-top: 1px dashed var(--line-2);
  pointer-events: none;
  position: absolute;
  top: 0;
  left: -28px;
  right: 0;
}

.tl.todo-card > .tl-m {
  align-items: center;
  min-width: 0;
  padding-top: 0;
}

.tl.todo-card .tl-body {
  min-width: 0;
  max-width: 407px;
}

.tl.todo-card .tl-m .lbl {
  overflow-wrap: anywhere;
  color: var(--ink-400);
  font-weight: 400;
  display: block;
}

.tl.todo-card.now .tl-m .lbl {
  color: var(--ink-900);
  font-weight: 600;
}

.tl.todo-card .tl-m .who {
  align-self: center;
}

.tl.todo-card .tl-tr {
  overflow-wrap: anywhere;
}

.tl.todo-card .tl-m .tr, .tl.todo-card .tl-verrou, .tl.todo-card .tl-ech {
  white-space: normal;
  max-width: 100%;
  margin-left: 0;
}

.tl.todo-card > .tl-r {
  width: var(--action-space);
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  min-width: 0;
  height: 100%;
  min-height: 24px;
  margin: 0;
  padding-left: 14px;
  display: flex;
}

.tl.todo-card .tl-ic, .tl.todo-card .tl-ic:empty {
  flex: 0 0 20px;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 24px;
  display: flex;
}

.tl.todo-card .tl-ic .ib {
  opacity: 0;
  width: 20px;
  height: 24px;
}

.tl.todo-card:hover .tl-ic .ib, .tl.todo-card:focus-within .tl-ic .ib {
  opacity: 1;
}

.tl.todo-card > .tl-nat {
  opacity: 1;
  z-index: 2;
  background: none;
  border: 0;
  width: 22px;
  height: 22px;
  margin: 0;
  position: absolute;
  top: 50%;
  left: -29.5px;
  transform: translateY(-50%);
}

.tl.todo-card > .tl-nat:after {
  content: none;
}

.tl.todo-card > .tl-nat .ic.round {
  border: 1px solid var(--line-2);
  width: 22px;
  height: 22px;
  color: var(--ink-500);
  background: #fff;
  animation: none;
}

.tl.todo-card > .tl-nat .ic.round svg {
  width: 13px;
  height: 13px;
}

.tl.todo-card:not(.ok) > .tl-nat.robot svg {
  transform: translateY(-.5px);
}

.tl.todo-card:not(.ok) > .tl-nat:not(.manuelle) .ic.round {
  background: var(--primary-50);
  color: var(--primary);
  border-color: #c7d2fe;
}

.tl.todo-card.ok > .tl-nat .ic.round {
  background: var(--ok);
  border-color: var(--ok);
  color: #fff;
}

.tl.todo-card .tl-nat .tl-tip {
  max-width: min(300px, 100vw - 64px);
  left: 0;
  right: auto;
}

.tl.todo-card:focus-within {
  z-index: 3;
}

.tl.todo-card .tl-action-slot {
  width: var(--button-width);
  flex: 0 0 var(--button-width);
  min-width: 0;
  position: relative;
}

.tl.todo-card .tl-primary {
  width: 100%;
  min-width: 0;
  height: 24px;
  max-width: var(--button-width);
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  color: var(--ink-400);
  border: 1px solid var(--line);
  box-shadow: none;
  opacity: 1;
  background: #fff;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
  font-size: 11.5px;
  line-height: 22px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.tl.todo-card .tl-primary > span:first-child {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.tl.todo-card.now .tl-primary:not(:disabled):not([aria-disabled="true"]) {
  color: var(--ink-900);
  border-color: var(--line-2);
}

.tl.todo-card .tl-primary:not(:disabled):not([aria-disabled="true"]):hover {
  border-color: var(--ink-300);
  color: var(--ink-500);
  background: #fff;
}

.tl.todo-card.now .tl-primary:not(:disabled):not([aria-disabled="true"]):hover {
  color: var(--ink-900);
  border-color: var(--ink-400);
}

.tl.todo-card .tl-primary:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

.tl.todo-card .tl-primary:is(:disabled, [aria-disabled="true"]) {
  color: var(--ink-300);
  cursor: default;
}

.tl.todo-card .tl-primary-choices {
  gap: 6px;
}

.tl.todo-card .tl-action-count {
  background: var(--bg);
  font-variant-numeric: tabular-nums;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  font-size: 10px;
  line-height: 1;
  display: inline-flex;
}

.tl.todo-card .tl-action-chevron {
  flex: none;
  width: 12px;
  height: 12px;
  transition: transform .15s;
}

.tl.todo-card .tl-primary[aria-expanded="true"] .tl-action-chevron {
  transform: rotate(180deg);
}

.tl.todo-card .tl-action-options {
  z-index: 65;
  border: 1px solid var(--line-2);
  background: #fff;
  border-radius: 10px;
  width: min(280px, 100vw - 68px);
  max-height: 280px;
  padding: 5px;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  overflow: auto;
  box-shadow: 0 10px 30px #0f172a1f;
}

.tl.todo-card .tl-action-heading {
  color: var(--ink-400);
  padding: 5px 8px 7px;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.4;
}

.tl.todo-card .tl-action-option + .tl-action-option {
  border-top: 1px solid var(--line);
}

.tl.todo-card .tl-action-option .b2 {
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
  width: 100%;
  height: auto;
  min-height: 32px;
  color: var(--ink-700);
  box-shadow: none;
  background: #fff;
  border: 0;
  border-radius: 5px;
  justify-content: flex-start;
  align-items: center;
  padding: 7px 8px;
  font-size: 11.5px;
  line-height: 1.45;
  display: flex;
}

.tl.todo-card .tl-action-option .b2:is(:disabled, [aria-disabled="true"]) {
  color: var(--ink-400);
  cursor: default;
  opacity: .65;
}

.tl.todo-card .tl-action-option .b2:focus {
  outline: 1px solid var(--line-2);
  outline-offset: -1px;
}

.tl.todo-card .tl-action-option .b2:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}

.tl.todo-card .tl-action-option .b2:not(:disabled):not([aria-disabled="true"]):hover {
  background: var(--bg);
}

.tl.todo-card .tl-action-option small {
  color: var(--ink-400);
  padding: 0 10px 6px;
  font-size: 10.5px;
  display: block;
}

.tl.todo-card .tl-action-options.above {
  top: auto;
  bottom: calc(100% + 5px);
}

@media (max-width: 620px) {
  #modal .mbox:has(.todo-card) .mbody {
    padding-left: 14px;
    padding-right: 14px;
  }

  .tl.todo-card {
    --action-space: 144px;
    --button-width: 114px;
    gap: 6px;
  }

  .tl.todo-card > .tl-r {
    padding-left: 4px;
  }

  .tl.todo-card .tl-m {
    gap: 6px;
  }

  .tl.todo-card .tl-m .who {
    min-width: 44px;
    font-size: 10.5px;
  }
}

@media (hover: none) {
  .tl.todo-card .tl-ic .ib {
    opacity: 1;
  }
}

@media (max-width: 420px) {
  .tl.todo-card {
    --action-space: 120px;
    --button-width: 92px;
  }

  .tl.todo-card .tl-m .who {
    min-width: 34px;
  }

  .tl.todo-card .tl-primary-choices {
    gap: 3px;
    padding-left: 5px;
    padding-right: 5px;
  }
}

.tl.todo-card.tl-deux {
  --action-space: 236px;
  --button-width: 94px;
}

.tl.todo-card .tl-ressource {
  flex: 0 0 var(--button-width);
  width: var(--button-width);
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  min-width: 0;
  height: 24px;
  padding: 0 8px;
  font-size: 11.5px;
  line-height: 22px;
  display: flex;
  overflow: hidden;
}

@media (max-width: 620px) {
  .tl.todo-card.tl-deux {
    --action-space: 204px;
    --button-width: 82px;
  }
}

@media (max-width: 420px) {
  .tl.todo-card.tl-deux {
    --action-space: 176px;
    --button-width: 68px;
  }
}

.regen .gensec:first-child {
  border-top: none;
  margin-top: 4px;
  padding-top: 0;
}

.regen .genfld .v {
  color: var(--ink-800);
  word-break: break-word;
  font-size: 13px;
  line-height: 1.5;
}

.regen .regen-tbl {
  border: 1px solid var(--line-2);
  border-radius: 10px;
  overflow-x: auto;
}

.regen .tbl th {
  padding: 8px 10px;
}

.regen .tbl td {
  vertical-align: top;
  padding: 6px 10px;
}

.regen .tbl td:first-child {
  min-width: 260px;
}

.regen .tbl td.act {
  white-space: nowrap;
}

.regen .genadd {
  margin-top: 10px;
}

.regen .regen-motif {
  color: var(--warn);
  font-weight: 500;
}

.depot-doc .k2 {
  margin-top: 12px;
}

.depot-doc .k2:first-child {
  margin-top: 0;
}

.depot-doc .doc-fixe {
  color: var(--ink-900);
  margin-top: 4px;
  font-size: 13px;
}

.depot-doc .edin {
  margin-top: 4px;
}

.dzone {
  text-align: center;
  background: #fbfcfd;
  border: 1.5px dashed #cbd5e1;
  border-radius: 12px;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 18px 16px;
  transition: border-color .12s, background .12s;
  display: flex;
}

.dzone.over {
  border-color: var(--primary);
  background: #eef2ff;
}

.dzone.plein {
  background: #fff;
  border-style: solid;
}

.dzone .dz-texte {
  color: var(--ink-500);
  font-size: 13px;
}

.dzone .dz-fichier {
  color: var(--ink-900);
  word-break: break-all;
  align-items: baseline;
  gap: 8px;
  font-size: 13px;
  display: flex;
}

.dzone .dz-aide {
  color: var(--ink-400);
  font-size: 11px;
}

.dz-erreur {
  color: var(--err);
  margin-top: 8px;
  font-size: 12px;
  font-weight: 500;
}

.badge-personne {
  color: #786b9b;
  white-space: normal;
  background: #f4f3fa;
  border: 0;
  border-radius: 5px;
  align-items: center;
  gap: 4px;
  max-width: 100%;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.3;
  display: inline-flex;
}

.badge-personne svg {
  flex-shrink: 0;
}

.carte-formateur, .carte-closeur {
  margin: 5px 0 8px;
}

.carte-etiquettes {
  flex-direction: column;
  flex-shrink: 0;
  align-items: flex-end;
  gap: 3px;
  margin-left: auto;
  display: flex;
}

.carte-offre {
  color: #111827;
  white-space: nowrap;
  font-size: 11px;
  font-weight: 500;
}

.inscription-filtres {
  align-items: center !important;
}

.offre-section {
  border-top: 1px solid var(--ink-100, #e5e7eb);
  margin-top: 12px;
  padding: 16px 0;
}

.offre-section > summary {
  cursor: pointer;
  align-items: center;
  gap: 10px;
  font-weight: 650;
  list-style: none !important;
  display: flex !important;
}

.offre-section > summary:before {
  content: "›";
  color: #64748b;
  font-size: 18px;
}

.offre-section[open] > summary:before {
  transform: rotate(90deg);
}

.offre-section > summary .right {
  float: none;
  align-items: center;
  margin-left: auto;
  display: flex;
}

.ressources-audience {
  border-bottom: 1px solid #e5e7eb;
  padding: 10px 0;
}

.ressources-audience > summary {
  cursor: pointer;
  padding: 6px 0;
  font-weight: 600;
}

.orga-maquette {
  color: #172033;
  max-width: 1400px;
  margin: auto;
  padding: 16px 6px 60px;
}

.orga-kicker {
  letter-spacing: 1.8px;
  color: #64748b;
  margin-bottom: 14px;
  font-size: 10px;
  font-weight: 700;
}

.orga-vues {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.orga-vues a {
  color: #334155;
  border: 1px solid #dce3ed;
  border-radius: 7px;
  padding: 9px 15px;
  text-decoration: none;
}

.orga-vues a.on {
  color: #fff;
  background: #17392f;
  border-color: #17392f;
}

.orga-hero {
  padding: 30px 0 18px;
}

.orga-hero h1 {
  letter-spacing: -.7px;
  margin: 0 0 10px;
  font-size: 28px;
}

.orga-hero p {
  color: #576579;
  max-width: 850px;
  font-size: 14px;
  line-height: 1.7;
}

.orga-note {
  background: #f1f5f9;
  border-left: 3px solid #8ba39b;
  margin-bottom: 18px;
  padding: 12px 16px;
  font-size: 12px;
  line-height: 1.6;
}

.orga-stats {
  color: #64748b;
  flex-wrap: wrap;
  gap: 22px;
  padding: 0 0 24px;
  font-size: 11px;
  display: flex;
}

.orga-stats b {
  color: #172033;
  margin-bottom: 3px;
  font-size: 23px;
  font-weight: 600;
  display: block;
}

.orga-layout {
  align-items: flex-start;
  gap: 24px;
  display: flex;
}

.orga-parcours {
  flex-shrink: 0;
  gap: 5px;
  width: 190px;
  display: grid;
  position: sticky;
  top: 20px;
}

.orga-parcours button {
  text-align: left;
  color: #475569;
  cursor: pointer;
  border-radius: 6px;
  justify-content: space-between;
  padding: 12px;
  display: flex;
}

.orga-parcours button.on {
  color: #17392f;
  background: #e8f0eb;
  font-weight: 650;
}

.orga-parcours button span {
  color: #64748b;
  font-size: 11px;
}

.orga-catalogue {
  flex: 1;
  min-width: 0;
}

.orga-filtres {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.orga-filtres > input, .orga-filtres select {
  background: #fff;
  border: 1px solid #dce3ed;
  border-radius: 5px;
  max-width: 100%;
  padding: 8px;
  font-size: 12px;
}

.orga-filtres > input {
  flex: 1;
  min-width: 180px;
}

.orga-filtres label {
  align-items: center;
  gap: 5px;
  font-size: 11px;
  display: flex;
}

.orga-precision {
  color: #64748b;
  margin: 12px 0 18px;
  font-size: 11px;
}

.orga-groupe {
  margin-bottom: 24px;
}

.orga-groupe h2 {
  align-items: center;
  gap: 12px;
  margin: 0 0 10px;
  font-size: 15px;
  display: flex;
}

.orga-groupe h2 span {
  color: #64748b;
  font-size: 11px;
  font-weight: 400;
}

.orga-fiche {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  margin: 6px 0;
}

.orga-fiche > summary {
  cursor: pointer;
  align-items: center;
  gap: 10px;
  padding: 12px;
  list-style: none;
  display: flex;
}

.orga-fiche > summary:before {
  content: "›";
  color: #64748b;
  font-size: 19px;
}

.orga-fiche[open] > summary:before {
  transform: rotate(90deg);
}

.orga-type {
  text-transform: uppercase;
  color: #64748b;
  min-width: 75px;
  font-size: 10px;
}

.orga-nom {
  flex: 1;
  font-size: 12px;
  font-weight: 550;
}

.orga-etat {
  color: #3f6251;
  max-width: 190px;
  font-size: 10px;
}

.orga-etat.attention {
  color: #986329;
}

.orga-contenu {
  padding: 0 18px 16px;
  font-size: 12px;
  line-height: 1.7;
}

.orga-contenu code {
  color: #64748b;
  overflow-wrap: anywhere;
  font-size: 10px;
  display: block;
}

.orga-lies {
  background: #f7f9fb;
  border-radius: 5px;
  margin: 12px 0;
  padding: 10px;
}

.orga-table-wrap {
  overflow: auto;
}

.orga-contenu table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 14px;
  font-size: 11px;
}

.orga-contenu td, .orga-contenu th {
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #e2e8f0;
  padding: 9px;
}

.orga-contenu small {
  color: #64748b;
  font-size: 10px;
  display: block;
}

.orga-audit {
  border-top: 1px solid #dce3ed;
  padding: 18px 0;
}

.orga-audit > summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 650;
}

.orga-audit > div {
  max-width: 950px;
  font-size: 13px;
  line-height: 1.8;
}

.orga-audit p {
  margin-top: 12px;
}

.orga-vue-bibliotheque .orga-catalogue {
  display: block;
}

.orga-vue-bibliotheque .orga-groupe {
  border-top: 3px solid #edf1f5;
  padding-top: 18px;
}

.orga-vue-etapes .orga-groupe {
  border-left: 2px solid #9eafa5;
  padding-left: 22px;
  position: relative;
}

.orga-vue-etapes .orga-groupe:before {
  content: "";
  background: #466652;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 2px;
  left: -6px;
}

@media (max-width: 780px) {
  body:has(.orga-maquette) #sidebar {
    display: none;
  }

  body:has(.orga-maquette) #content {
    padding: 16px 12px;
  }

  body:has(.orga-maquette) #topbar {
    overflow: hidden;
  }

  .orga-maquette {
    width: 100%;
    min-width: 0;
  }

  .orga-fiche .orga-nom {
    overflow-wrap: anywhere;
    min-width: 0;
  }

  .orga-layout {
    flex-direction: column;
  }

  .orga-parcours {
    grid-template-columns: 1fr 1fr;
    width: 100%;
    position: static;
  }

  .orga-catalogue {
    width: 100%;
  }

  .orga-fiche > summary {
    flex-wrap: wrap;
  }

  .orga-etat {
    width: 100%;
    max-width: none;
    padding-left: 25px;
  }

  .orga-hero h1 {
    font-size: 23px;
  }

  .orga-stats {
    gap: 14px;
  }

  .orga-type {
    min-width: 60px;
  }
}

.ou-page .accbloc.secp {
  box-shadow: none;
  background: #fff;
  border: 1px solid #dce2eb;
  border-radius: 12px;
  overflow: hidden;
}

.ou-page .accbloc.secp > summary {
  color: #171d29;
  background: #fff;
  min-height: 58px;
  padding: 16px 20px;
}

.ou-page .accbloc.secp > summary .tt {
  font-weight: 650;
}

.ou-page .accbloc.secp[open] > summary {
  background: #f4f6fa;
  border-bottom: 1px solid #e5e9f0;
}

.ou-page .ou-etape {
  margin-bottom: 24px;
}

.ou-page {
  width: 100%;
  min-width: 0;
}

.ou-page .ou-organisation {
  align-items: center;
  margin: 14px 0;
}

.ou-page .ou-organisation .fsearch {
  flex: 1;
  max-width: 440px;
  margin-left: auto;
}

.ou-page .ou-filtres {
  flex-wrap: wrap;
  margin-bottom: 12px;
}

.ou-axe {
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.ou-axe .cap {
  letter-spacing: .6px;
  color: var(--ink-400);
  text-transform: uppercase;
  margin: 0 8px;
  font-size: 10px;
}

.ou-cas {
  flex-wrap: wrap;
  margin: 8px 0 16px;
}

.ou-cas .cap {
  text-transform: uppercase;
  color: var(--ink-400);
  margin: 0 8px;
  font-size: 10px;
}

.ou-page .ou-element, .ou-page .ou-offre, .ou-page .ou-paiement {
  margin: 8px 0;
}

.ou-page .ou-template {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.ou-page .ou-template .tt {
  flex: 1;
  min-width: 180px;
}

.ou-page code {
  overflow-wrap: anywhere;
}

.ou-page .ou-vide {
  color: var(--ink-400);
  margin: 0;
  padding: 4px 0;
  font-size: 12px;
}

.ou-page .pagehead {
  gap: 8px;
  margin-bottom: 12px;
}

.ou-page .pagehead h1 {
  margin-right: auto;
}

.ou-page .ou-organisation {
  gap: 8px;
  margin: 8px 0 12px;
}

.ou-page .ou-process {
  margin-bottom: 10px;
}

.ou-page .ou-filtres {
  margin-bottom: 8px;
}

.ou-page .ou-cas {
  margin: 0 0 12px;
}

.ou-page .ou-etape {
  margin: 8px 0;
}

.ou-page .ou-hors {
  margin-top: 12px;
}

.ou-page .accbloc.secp {
  border-color: #e0e5ed;
  border-radius: 9px;
}

.ou-page .accbloc.secp > summary {
  min-height: 44px;
  padding: 10px 14px;
}

.ou-page .accbloc.secp > summary .tt {
  font-size: 13px;
  font-weight: 600;
}

.ou-page .accbloc.secp > .inner {
  padding: 10px 14px;
}

.ou-page .accbloc.secp[open] > summary {
  background: #f8f9fc;
  border-color: #e8ecf2;
}

.ou-page .accbloc.secp .accbloc.secp {
  border-color: #e9edf3;
  border-radius: 7px;
  margin: 6px 0;
}

.ou-page .accbloc.secp .accbloc.secp > summary {
  min-height: 38px;
  padding: 8px 12px;
}

.ou-page .ou-inner {
  padding: 0;
}

.ou-page .secp-n {
  font-size: 11px;
}

.ou-page .inner p {
  margin: 6px 0;
}

.ou-page .inner .btn {
  margin: 4px 6px 4px 0;
}

@media (max-width: 780px) {
  .ou-page .pagehead {
    flex-wrap: wrap;
  }

  .ou-page .pagehead h1 {
    width: 100%;
  }

  .ou-page .ou-organisation {
    flex-wrap: wrap;
  }

  .ou-page .ou-organisation .fsearch {
    flex-basis: 100%;
    max-width: none;
  }

  .ou-page .ou-process {
    overflow-x: auto;
  }

  .ou-page .accbloc.secp > summary {
    padding: 10px 12px;
  }
}

.ou-auto-detail {
  border-top: 1px solid #edf0f4;
  margin: 14px 0 4px;
  padding-top: 10px;
}

.ou-auto-detail h4 {
  margin: 0 auto 0 0;
  font-size: 13px;
  font-weight: 600;
}

.ou-auto-detail .row {
  gap: 8px;
}

.ou-auto-detail .ou-description {
  white-space: pre-wrap;
  font-size: 13px;
  line-height: 1.6;
}

.ou-auto-detail textarea {
  width: 100%;
}

.ou-log-head {
  margin: 16px 0 8px;
}

.ou-log-head select {
  background: #fff;
  border: 1px solid #e0e5ed;
  border-radius: 6px;
  padding: 5px;
  font-size: 12px;
}

.ou-log-table {
  border: 1px solid #e7ebf1;
  border-radius: 7px;
  height: 300px;
  overflow: auto;
}

.ou-log-table .tbl {
  width: 100%;
  min-width: 760px;
  font-size: 12px;
}

.ou-log-table thead {
  z-index: 1;
  background: #f7f9fc;
  position: sticky;
  top: 0;
}

.ou-log-table td {
  vertical-align: top;
  overflow-wrap: anywhere;
  max-width: 330px;
}

.ou-log-table .pd {
  padding: 12px;
}

.ou-log-table .ou-log-precision {
  color: #8a94a3;
  font-size: 11px;
}

.ou-log-table td.ou-log-service {
  white-space: nowrap;
  overflow-wrap: normal;
}

.ou-log-table td:nth-child(2) {
  overflow-wrap: break-word;
  min-width: 150px;
}

.ou-page .ou-nature-filtre {
  flex-wrap: wrap;
  margin: 0 0 12px;
}

.ou-page .accbloc.secp .accbloc.secp {
  box-shadow: none;
  background: none;
  border: 0;
  border-radius: 0;
  margin: 2px 0;
  overflow: visible;
}

.ou-page .accbloc.secp .accbloc.secp > summary {
  background: none;
  border: 0;
  border-radius: 4px;
  min-height: 32px;
  padding: 6px 0;
}

.ou-page .accbloc.secp .accbloc.secp > summary:hover {
  background: #f7f9fc;
}

.ou-page .accbloc.secp .accbloc.secp > summary .tt {
  font-size: 13px;
  font-weight: 500;
}

.ou-page .accbloc.secp .accbloc.secp > .inner {
  background: none;
  border: 0;
  padding: 2px 0 6px 14px;
}

.ou-page .accbloc.secp .accbloc.secp .secp-n {
  color: var(--ink-400);
  background: none;
  border: 0;
  padding: 0;
  font-weight: 400;
}

.ou-page .accbloc.secp .accbloc.secp > summary:before {
  content: "";
  border-top: 4px solid #0000;
  border-bottom: 4px solid #0000;
  border-left: 5px solid #64748b;
  flex: none;
  width: 0;
  height: 0;
  margin-right: 8px;
  transition: transform .15s;
  display: block;
}

.ou-page .accbloc.secp .accbloc.secp[open] > summary:before {
  transform: rotate(90deg);
}

.ou-page .accbloc.secp .accbloc.secp > summary .chev {
  display: none;
}

.ou-page .ou-description-head {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  display: flex;
}

.ou-page .ou-description-head h4 {
  margin: 0;
}

.ou-page .ou-auto-tags {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.ou-page .ou-auto-tag {
  color: #776095;
  background: #eee9f8;
  border-radius: 5px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.4;
}

.ou-page .ou-auto-service {
  color: #766e5e;
  background: #eeece6;
}

.ou-page .ou-log-dates {
  background: #fff;
  border: 1px solid #e6e9ef;
  border-radius: 7px;
  align-items: center;
  gap: 10px;
  height: 32px;
  padding: 0 8px;
  display: flex;
}

.ou-page .ou-log-dates label {
  color: #8a94a3;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  display: flex;
}

.ou-page .ou-log-dates input {
  font: inherit;
  color: #556277;
  background: none;
  border: 0;
  outline: none;
  min-width: 0;
  max-width: 125px;
  padding: 4px 0;
  font-size: 12px;
}

.ou-page .ou-log-dates:focus-within {
  border-color: #b9accf;
  box-shadow: 0 0 0 2px #f3eff8;
}

.ou-page .ou-dates-clear {
  color: #8a94a3;
  cursor: pointer;
  background: none;
  border: 0;
  padding: 0 2px;
  font-size: 17px;
}

.ou-page .ou-log-head .btn {
  border-color: #e6e9ef;
  height: 32px;
}

.ou-page .ou-log-head select {
  color: #64748b;
  border-color: #e6e9ef;
  border-radius: 7px;
  height: 32px;
}

.ou-page .ou-log-table {
  border-radius: 9px;
}

.ou-page .ou-log-table .tbl th {
  background: #f8f9fb;
}

.ou-page .ou-log-table td {
  font-size: 12px;
}

@media (max-width: 700px) {
  .ou-page .ou-log-head h4 {
    flex-basis: 100%;
  }

  .ou-page .ou-log-dates {
    flex: 1;
  }

  .ou-page .ou-description-head {
    align-items: flex-start;
  }
}

.ou-page .ou-auto-detail .ou-description-note {
  background: #faf9f5;
  border: 1px solid #ece8dc;
  border-left: 3px solid #d8c797;
  border-radius: 8px;
  margin: 8px 0 12px;
  padding: 12px 14px;
}

.ou-page .ou-description-note h4 {
  color: #857553;
  letter-spacing: .04em;
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 600;
}

.ou-page .ou-description-note .ou-description {
  color: #374151;
  min-height: 36px;
  margin: 0;
  padding: 4px 0;
}

.ou-page .ou-description-note textarea {
  background: #fff;
  border: 1px solid #ded8c9;
  border-radius: 6px;
  margin-bottom: 8px;
  padding: 10px;
}

.ou-page .ou-log-head {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 18px 0 8px;
  display: flex;
}

.ou-page .ou-log-head h4 {
  margin: 0 auto 0 0;
}

.ou-page .ou-log-head select {
  min-width: 130px;
  height: 30px;
}

.ou-page .ou-log-table {
  scrollbar-width: thin;
  background: #fff;
  border-color: #e5e9ef;
  height: 260px;
}

.ou-page .ou-log-table .tbl {
  border-collapse: collapse;
  table-layout: auto;
}

.ou-page .ou-log-table th {
  letter-spacing: .04em;
  color: #7a8799;
  text-align: left;
  border-bottom: 1px solid #e5e9ef;
  padding: 10px 12px;
  font-size: 10px;
}

.ou-page .ou-log-table td {
  border-bottom: 1px solid #f0f2f5;
  padding: 11px 12px;
  line-height: 1.5;
}

.ou-page .ou-log-table td:first-child {
  white-space: nowrap;
  color: #64748b;
  font-variant-numeric: tabular-nums;
}

.ou-page .ou-log-table tbody tr:hover {
  background: #fafbfe;
}

.ou-page .ou-log-table td a {
  color: #665395;
  text-decoration: none;
}

.ou-page .ou-log-table td a:hover {
  text-decoration: underline;
}

.ou-page .ou-log-statut {
  white-space: nowrap;
  color: #68758a;
  background: #f1f3f6;
  border-radius: 5px;
  padding: 2px 7px;
  font-size: 11px;
  display: inline-block;
}

.ou-page .ou-log-statut[data-statut="faite"] {
  color: #287a50;
  background: #eaf6ef;
}

.ou-page .ou-log-statut[data-statut="echouee"], .ou-page .ou-log-statut[data-statut="failed"], .ou-page .ou-log-statut[data-statut="refus"] {
  color: #b34e46;
  background: #fff0ee;
}

.ou-page .ou-log-statut[data-statut="en_cours"] {
  color: #99752b;
  background: #fff6df;
}

.ou-page .ou-log-table > .pd {
  text-align: center;
  color: #8a94a3;
  margin: 0;
  padding: 24px;
}

.ou-page .ou-etape-vide {
  color: #929baa;
  background: #f1f3f6;
  border-color: #e7eaf0;
}

.ou-page .ou-etape-vide .tt {
  color: #929baa;
}

.ou-page .ou-etape-vide > .inner {
  display: none;
}

.ou-page .ou-etape-vide .secp-h {
  cursor: default;
}

.ou-page button.ou-badge-template {
  cursor: pointer;
  border: 0;
  padding: 5px 9px;
}

.ou-page button.ou-badge-template:hover {
  background: #d9efdf;
}

.ou-page button.ou-badge-template:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #287a50;
}

.ou-page .ou-process-etape {
  border-color: #edf0f5;
  border-radius: 12px;
  margin: 12px 0;
}

.ou-page .ou-process-etape > .secp-h {
  cursor: default;
  background: #fff;
  border: 0;
  min-height: 40px;
  padding: 14px 16px 8px;
}

.ou-page .ou-process-etape > .secp-h .tt {
  font-size: 13px;
  font-weight: 600;
}

.ou-page .ou-process-etape > .inner {
  padding: 0 16px 10px;
}

.ou-page .ou-process-etape > .inner > .ou-inner > .ou-element {
  border: 0;
  border-bottom: 1px solid #f0f2f6;
  border-radius: 0;
  margin: 0;
}

.ou-page .ou-process-etape > .inner > .ou-inner > .ou-element:last-child {
  border-bottom: 0;
}

.ou-page .ou-process-etape > .inner > .ou-inner > .ou-element > summary {
  min-height: 38px;
  padding: 9px 4px;
}

.ou-page .ou-support-row {
  border-bottom: 1px solid #edf0f4;
  gap: 16px;
  padding: 8px 4px;
}

.ou-page .ou-support-row:last-child {
  border-bottom: 0;
}

.ou-page .ou-support-row > span {
  flex: 1;
  font-size: 13px;
}

.ou-page .ou-editable {
  cursor: text;
  border-radius: 6px;
  transition: background .15s, box-shadow .15s;
}

.ou-page .ou-editable:hover {
  background: #f8f7fc;
}

.ou-page .ou-editable:focus-visible {
  outline-offset: 3px;
  outline: 2px solid #a99bd8;
}

.ou-page .ou-template-entry > .ou-badges {
  display: none;
}

.ou-page .ou-template-entry .ou-template-inline {
  background: none;
  border: 0;
  border-radius: 0;
}

.ou-page .ou-template-entry .mhead {
  border: 0;
  padding: 4px 0 8px;
}

.ou-page .ou-template-entry .mhead .t {
  font-size: 13px;
  font-weight: 600;
}

.ou-page .ou-template-entry .mbody {
  padding: 0;
}

.ou-page .ou-template-entry .tpl-body {
  background: none;
  border: 0;
  border-radius: 6px;
  padding: 10px 12px;
}

.ou-page .ou-template-entry .tpl-body:hover {
  background: #f8f7fc;
}

.ou-page .ou-auto-detail {
  border: 0;
  margin: 4px 0;
  padding: 0;
}

.ou-page .ou-description {
  margin: 0 0 8px;
  padding: 8px 10px;
}

.ou-page .ou-badges {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.ou-page .ou-badge {
  white-space: nowrap;
  border-radius: 6px;
  align-items: center;
  padding: 3px 7px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.3;
  display: inline-flex;
}

.ou-page .ou-badge-auto {
  color: #6d48be;
  background: #f0ebff;
}

.ou-page .ou-badge-template {
  color: #287a50;
  background: #eaf6ef;
}

.ou-page .secp-n:has(.ou-badges) {
  background: none;
  padding: 0;
}

.ou-page .ou-paiement-title {
  color: #64748b;
  margin: 12px 0 6px;
  font-size: 12px;
  font-weight: 600;
}

.ou-page .ou-template-entry {
  margin: 8px 0 12px;
}

.ou-page .ou-template-inline {
  background: #fff;
  border: 1px solid #e4eae7;
  border-radius: 8px;
  margin-top: 6px;
  overflow: hidden;
}

.ou-page .ou-template-inline .mbox {
  width: 100%;
  max-width: none;
  max-height: none;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  margin: 0;
  position: static;
  transform: none;
}

.ou-page .ou-template-inline .mhead {
  padding: 10px 12px;
}

.ou-page .ou-template-inline .mbody {
  max-height: none;
  padding: 10px 12px;
  overflow: visible;
}

.ou-page .ou-template-inline .tpl-body {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.6;
}

.ou-page .ou-template-inline .tpl-body .var {
  color: #6d48be;
  background: #f1edfb;
  border-radius: 3px;
  padding: 1px 3px;
}

.ou-page .ou-template-inline .mactions {
  margin-top: 8px;
}

.ou-page .ou-template-inline .tpl-edit {
  width: 100%;
  min-height: 180px;
}

.whatsapp-photo-groupe {
  border: 1px solid var(--line);
  background: var(--bg);
  border-radius: 12px;
  align-items: center;
  gap: 18px;
  margin: 16px 0 20px;
  padding: 16px;
  display: flex;
}

.whatsapp-photo-groupe img {
  border: 1px solid var(--line);
  object-fit: contain;
  background: #fff;
  border-radius: 12px;
  flex: none;
}

.onb-document-modal {
  outline: none;
}

.onb-document-modal .mpanel {
  border-radius: 14px;
  padding: 18px;
}

.onb-depot {
  margin: 16px 0;
}

.onb-file-input {
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.onb-drop {
  color: #78619d;
  background: #faf9fd;
  border: 1.5px dashed #cbc3dd;
  border-radius: 14px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 14px;
  padding: 25px 20px;
  transition: background .18s, border-color .18s;
  display: flex;
}

.onb-drop strong {
  color: #343041;
  font-size: 14px;
  line-height: 1.6;
  display: block;
}

.onb-drop span {
  color: #797386;
  font-size: 13px;
  display: block;
}

.onb-drop small {
  text-align: center;
  color: #8a8595;
  width: 100%;
  font-size: 11px;
}

.onb-drop.is-dragging {
  background: #f0eafa;
  border-color: #8164b5;
}

.onb-drop.has-file {
  color: #427a5d;
  background: #f8faf9;
  border-style: solid;
  border-color: #d5e6dc;
  justify-content: flex-start;
}

.onb-file-name {
  flex: 1;
  min-width: 0;
}

.onb-file-name strong {
  overflow-wrap: anywhere;
}

.onb-browse {
  color: #7658a4;
  cursor: pointer;
  font: inherit;
  background: none;
  border: 0;
  padding: 0;
  text-decoration: underline;
}

.onb-remove {
  color: #6d6579;
  cursor: pointer;
  background: none;
  border: 0;
  border-radius: 7px;
  padding: 6px;
}

.onb-remove:hover {
  background: #ece8f3;
}

.onb-browse:focus-visible, .onb-remove:focus-visible, .onb-drop:focus-within {
  outline-offset: 3px;
  outline: 2px solid #9375bd;
}

.onb-file-help {
  color: #8a8494;
  margin: 10px 0 0;
  font-size: 11px;
  line-height: 1.5;
}

.onb-preview {
  border: 1px solid #e8e4ed;
  border-radius: 10px;
  margin-top: 12px;
  overflow: hidden;
}

.onb-preview summary {
  cursor: pointer;
  color: #70617f;
  padding: 10px 14px;
  font-size: 12px;
}

.onb-preview iframe {
  border: 0;
  width: 100%;
  height: 280px;
  display: block;
}

.onb-preview img {
  object-fit: contain;
  max-width: 100%;
  max-height: 320px;
  margin: auto;
  display: block;
}

.onb-error {
  color: #a44038;
  background: #fff2ef;
  border-radius: 9px;
  padding: 11px 14px;
  font-size: 12px;
  line-height: 1.6;
}

.onb-depot-actions > .btn {
  margin-top: 2px;
}

.onboarding-ressource-lecture {
  overscroll-behavior: contain;
  scrollbar-width: thin;
  outline: none;
  max-height: 60vh;
  padding: 4px 14px 20px 2px;
  overflow-y: auto;
}

.onb-reading-progress {
  background: #efeaf5;
  border-radius: 5px;
  height: 3px;
  margin-bottom: 16px;
  overflow: hidden;
}

.onb-reading-progress > i {
  background: #9576c1;
  height: 100%;
  transition: width .2s;
  display: block;
}

.onb-reading-footer {
  border-top: 1px solid #eae6f0;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  padding-top: 16px;
  display: flex;
}

.onb-reading-footer .sm {
  flex: 1;
  min-width: 180px;
  line-height: 1.5;
}

.onb-reading-actions {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.onb-reading-end {
  color: #7e738b;
  text-align: center;
  padding: 12px 0 4px;
  font-size: 12px;
}

@media (max-width: 600px) {
  .onb-document-modal .mpanel {
    padding: 14px;
  }

  .onb-drop {
    padding: 20px 12px;
  }

  .onboarding-ressource-lecture {
    max-height: 56dvh;
    padding-right: 4px;
  }

  .onb-reading-actions {
    width: 100%;
  }

  .onb-reading-actions > .btn {
    flex: 1;
  }

  .onb-reading-footer .sm {
    flex-basis: 100%;
    min-width: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .onb-drop, .onb-reading-progress > i {
    transition: none;
  }
}

.whatsapp-photo-groupe p {
  margin: 6px 0 12px;
  line-height: 1.5;
}

.onb-quiz-voile {
  z-index: 220;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background: #14102880;
  justify-content: center;
  align-items: center;
  padding: 24px;
  display: flex;
  position: fixed;
  inset: 0;
}

#modal2:has(.onboarding-ressource-lecture) {
  z-index: 230;
  align-items: center;
  padding: 16px;
}

#modal2:has(.onboarding-ressource-lecture) .mbox {
  flex-direction: column;
  display: flex;
  overflow: hidden;
}

#modal2:has(.onboarding-ressource-lecture) .mhead {
  flex-shrink: 0;
  position: static;
}

#modal2:has(.onboarding-ressource-lecture) .mbody {
  flex-direction: column;
  min-height: 0;
  display: flex;
  overflow: hidden;
}

.onboarding-ressource-lecture {
  flex: 1;
  min-height: 0;
}

.onb-reading-progress, .onb-reading-footer {
  flex-shrink: 0;
}

.onboarding-ressource-lecture .bn-editor {
  padding: 12px 20px;
  font-size: 14px;
  line-height: 1.65;
}

.onboarding-ressource-lecture .bn-editor [data-content-type="heading"] {
  --level: 23px;
  line-height: 1.35;
}

@media (max-width: 600px) {
  #modal2:has(.onboarding-ressource-lecture) {
    padding: 10px;
  }

  #modal2:has(.onboarding-ressource-lecture) .mhead {
    padding: 16px 18px 4px;
  }

  #modal2:has(.onboarding-ressource-lecture) .mbody {
    padding: 6px 18px 16px;
  }

  .onboarding-ressource-lecture .bn-editor {
    padding: 10px 12px;
  }

  .onboarding-ressource-lecture [data-content-type="heading"] {
    font-size: 20px;
  }

  .onb-reading-footer {
    margin-top: 10px;
    padding-top: 10px;
  }

  .onb-reading-footer .sm {
    margin: 0;
  }

  .onb-reading-actions > .btn {
    min-height: 42px;
  }
}

.onb-quiz {
  background: var(--white, #fff);
  color: var(--txt, #202332);
  border-radius: 22px;
  flex-direction: column;
  display: flex;
  overflow: hidden;
  box-shadow: 0 24px 80px #13102245;
}

.onb-quiz-entete {
  border-bottom: 1px solid var(--line, #ecebf2);
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 24px 28px 18px;
  display: flex;
}

.onb-quiz-entete h2 {
  margin: 6px 0 0;
  font-size: 23px;
}

.onb-quiz-eyebrow {
  color: var(--p, #6850a8);
  font-size: 12px;
  font-weight: 650;
}

.onb-quiz-apercu {
  color: #604286;
  background: #f5f0ff;
  margin: 0;
  padding: 10px 28px;
  font-size: 13px;
  line-height: 1.5;
}

.onb-quiz-corps {
  overscroll-behavior: contain;
  flex: 1;
  min-height: 0;
  padding: 22px 28px;
  overflow: auto;
}

.onb-quiz-meta {
  color: var(--muted, #666b79);
  justify-content: space-between;
  gap: 10px;
  font-size: 12px;
  display: flex;
}

.onb-quiz-barre {
  background: #eeeaf4;
  border-radius: 10px;
  height: 6px;
  margin: 12px 0 28px;
  overflow: hidden;
}

.onb-quiz-barre i {
  border-radius: inherit;
  background: linear-gradient(90deg, #a489d1, #7051b0);
  height: 100%;
  transition: width .25s;
  display: block;
}

.onb-quiz-question {
  animation: .2s onb-question-in;
}

.onb-quiz-question h3 {
  outline: none;
  margin: 0 0 10px;
  font-size: 21px;
  line-height: 1.4;
}

.onb-quiz-question h3:focus-visible, .onb-quiz-resultat h3:focus-visible {
  outline-offset: 5px;
  outline: 2px solid #9577bf;
}

.onb-quiz-question .sm {
  color: #686775;
  font-size: 13px;
}

.onb-quiz-choix {
  gap: 10px;
  margin-top: 20px;
  display: grid;
}

.onb-quiz-choix label {
  cursor: pointer;
  border: 1.5px solid #e9e6ef;
  border-radius: 13px;
  align-items: center;
  gap: 12px;
  padding: 16px;
  font-size: 14px;
  line-height: 1.5;
  transition: background .15s, border-color .15s;
  display: flex;
}

.onb-quiz-choix label:hover {
  background: #faf8fd;
  border-color: #bcacd5;
}

.onb-quiz-choix label.choisie {
  background: #f5f0fb;
  border-color: #9475bd;
}

.onb-quiz-choix input {
  accent-color: #7552a5;
  flex-shrink: 0;
}

.onb-quiz-lettre {
  color: #70558f;
  background: #ece6f4;
  border-radius: 7px;
  flex-shrink: 0;
  place-items: center;
  width: 28px;
  height: 28px;
  font-weight: 600;
  display: grid;
}

.onb-quiz-choix label:focus-within {
  outline-offset: 2px;
  outline: 2px solid #8862b8;
}

.onb-quiz-actions {
  background: #fcfbfe;
  border-top: 1px solid #ecebf2;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 28px;
  display: flex;
}

.onb-quiz-actions .btn {
  justify-content: center;
  align-items: center;
  gap: 8px;
  display: inline-flex;
}

.onb-quiz-resultat {
  text-align: center;
}

.onb-quiz-resultat h3 {
  outline: none;
  font-size: 23px;
}

.onb-quiz-resultat > p {
  line-height: 1.6;
}

.onb-quiz-score {
  color: #7652a5;
  background: #f3effa;
  border-radius: 50%;
  place-items: center;
  width: 76px;
  height: 76px;
  margin: 4px auto 14px;
  display: grid;
}

.onb-quiz-resultat.reussi .onb-quiz-score {
  color: #2d8860;
  background: #e9f5ee;
  animation: .45s ease-out onb-success;
}

.onb-quiz-note {
  margin: 8px;
  font-size: 40px;
  font-weight: 750;
}

.onb-quiz-note span {
  color: #8c8995;
  font-size: 22px;
  font-weight: 500;
}

.onb-quiz-corrections {
  text-align: left;
  gap: 10px;
  margin-top: 24px;
  display: grid;
}

.onb-quiz-corrections details {
  border: 1px solid #e9e6ef;
  border-radius: 12px;
  padding: 14px;
  font-size: 13px;
  line-height: 1.6;
}

.onb-quiz-corrections summary {
  cursor: pointer;
  font-weight: 600;
}

.onb-quiz-corrections summary .ok {
  color: #288160;
}

.onb-quiz-corrections summary .err {
  color: #a16b18;
}

.onb-quiz-corrections p {
  margin: 10px 0;
}

@keyframes onb-question-in {
  from {
    opacity: 0;
    transform: translateY(5px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes onb-success {
  from {
    opacity: .3;
    transform: scale(.8);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@media (max-width: 600px) {
  .onb-quiz-voile {
    padding: 10px;
  }

  .onb-quiz {
    border-radius: 17px;
  }

  .onb-quiz-entete, .onb-quiz-corps {
    padding: 18px;
  }

  .onb-quiz-entete h2 {
    font-size: 20px;
  }

  .onb-quiz-question h3 {
    font-size: 19px;
  }

  .onb-quiz-meta {
    flex-wrap: wrap;
  }

  .onb-quiz-choix label {
    gap: 8px;
    padding: 13px 10px;
  }

  .onb-quiz-lettre {
    display: none;
  }

  .onb-quiz-actions {
    flex-wrap: wrap;
    padding: 14px;
  }

  .onb-quiz-actions .btn {
    flex: 1;
  }

  .onb-quiz-apercu {
    padding: 10px 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .onb-quiz-question, .onb-quiz-resultat.reussi .onb-quiz-score {
    animation: none;
  }

  .onb-quiz-barre i, .onb-quiz-choix label {
    transition: none;
  }
}

@media (max-width: 600px) {
  .onboarding-ressource-lecture .bn-editor [data-content-type="heading"] {
    --level: 20px;
  }
}

@media (max-width: 480px) {
  .whatsapp-photo-groupe {
    flex-wrap: wrap;
    align-items: flex-start;
  }
}

.vj {
  padding: 14px 20px 12px;
}

.vj-tete {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  min-height: 32px;
  display: flex;
}

.vj-titre {
  color: var(--ink-900);
  white-space: nowrap;
  align-items: baseline;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
}

.vj-titre .n2 {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  font-size: 11.5px;
  font-weight: 400;
}

.vj-gestes {
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-left: auto;
  display: flex;
}

.vj-gestes .btn {
  padding: 5px 11px;
  font-size: 12px;
}

.vj-filtres.fbar {
  gap: 8px 16px;
  margin: 10px 0 0;
}

.vj-dates {
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
  display: inline-flex;
}

.logbar .lb2 {
  color: var(--ink-400);
  font-size: 11.5px;
}

.logbar .dt {
  background-image: none;
  padding: 5px 8px;
  font-size: 12px;
}

.logbar .ilink {
  font-size: 11.5px;
}

.vj-table {
  border-top: 1px solid var(--line-2);
  margin-top: 12px;
}

.vj-l {
  grid-template-columns: var(--vj-cols);
  border-bottom: 1px solid var(--line);
  min-height: 38px;
  color: var(--ink-700);
  align-items: center;
  column-gap: 14px;
  padding: 7px 2px;
  font-size: 12.5px;
  line-height: 1.4;
  display: grid;
}

.vj-table .vj-l {
  border-top: 0;
}

.vj-l > * {
  overflow-wrap: anywhere;
  min-width: 0;
}

.vj-l > a, .vj-l > button {
  justify-self: start;
}

.vj-l.vj-cols {
  border-bottom-color: var(--line-2);
  text-transform: uppercase;
  letter-spacing: .06em;
  min-height: 0;
  color: var(--ink-400);
  padding: 7px 2px 6px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.3;
}

.vj-tri {
  font-size: inherit;
  font-weight: inherit;
  text-transform: inherit;
  letter-spacing: inherit;
  color: var(--ink-500);
  white-space: nowrap;
  padding: 0;
}

.vj-tri:hover, .vj-tri:focus-visible {
  color: var(--primary);
}

.vj-date {
  color: var(--ink-500);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  font-size: 12px;
}

.vj-fort {
  color: var(--ink-900);
  font-weight: 500;
}

.vj-doux {
  color: var(--ink-500);
  font-size: 12px;
}

.vj-num {
  font-variant-numeric: tabular-nums;
}

.vj-l .chip {
  white-space: nowrap;
  max-width: 100%;
}

.vj-l .btn {
  padding: 4px 10px;
  font-size: 12px;
}

.vj-vide {
  color: var(--ink-400);
  padding: 14px 2px 4px;
  font-size: 12.5px;
}

.vj-tete + .vj-vide, .vj-filtres + .vj-vide {
  border-top: 1px solid var(--line-2);
  margin-top: 12px;
}

.vj-pied {
  padding: 10px 2px 0;
  font-size: 12.5px;
}

.vj-sig {
  --vj-cols: minmax(0,1.2fr) minmax(0,1.2fr) 150px minmax(0,1.3fr);
}

.vj-logs {
  --vj-cols: 140px 70px minmax(0,1fr) minmax(0,1.6fr) minmax(0,1.2fr);
}

.vj-wh {
  --vj-cols: 140px 168px minmax(0,1fr) 124px 14px;
}

.sigsec > summary {
  cursor: pointer;
  border-bottom: 1px solid var(--line);
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink-700);
  align-items: center;
  gap: 8px;
  padding: 12px 2px 6px;
  font-size: 10.5px;
  font-weight: 700;
  list-style: none;
  display: flex;
}

.sigsec > summary::-webkit-details-marker {
  display: none;
}

.sigsec > summary:before {
  content: "▾";
  width: 10px;
  color: var(--ink-400);
  flex-shrink: 0;
  font-size: 11px;
}

.sigsec:not([open]) > summary:before {
  content: "▸";
}

.sigsec > summary .n2 {
  color: var(--ink-400);
  font-variant-numeric: tabular-nums;
  font-weight: 500;
}

.sigsec ul {
  list-style: none;
}

.whrow > summary {
  cursor: pointer;
  list-style: none;
}

.whrow > summary::-webkit-details-marker {
  display: none;
}

.whrow > summary:hover {
  background: #fbfcfd;
}

.whrow .vj-chevron:before {
  content: "▸";
  color: var(--ink-400);
  font-size: 11px;
}

.whrow[open] .vj-chevron:before {
  content: "▾";
}

.whrow .whdetail {
  border-bottom: 1px solid var(--line);
  padding: 10px 2px 12px;
}

.whrow .whdetail pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: #f8fafc;
  border-radius: 8px;
  max-height: 32rem;
  margin: 6px 0 0;
  padding: 10px 12px;
  font-size: 11.5px;
  line-height: 1.45;
  overflow: auto;
}

.chip.src-qonto-bank {
  color: #047857;
  background: #ecfdf5;
}

.chip.src-wedof {
  color: #1d4ed8;
  background: #eff6ff;
}

.chip.src-plateforme {
  color: #6d28d9;
  background: #f5f3ff;
}

.chip.src-conventions-generation {
  color: #b45309;
  background: #fffbeb;
}

.chip.src-notion-salles {
  color: var(--ink-500);
  background: #f1f5f9;
}

@media (max-width: 820px) {
  .vj-l.vj-cols > span, .vj-sig .vj-cols, .vj-wh .vj-cols {
    display: none;
  }

  .vj-l {
    flex-wrap: wrap;
    gap: 3px 10px;
    min-height: 0;
    display: flex;
  }

  .vj-l > .vj-large, .vj-sig .vj-l > * {
    flex-basis: 100%;
  }

  .vj-sig .vj-l > :empty {
    display: none;
  }
}

.copies-sessions {
  border-top: 1px dashed #e2e8f0;
  margin: 14px 0 6px;
  padding-top: 12px;
}

.copies-sessions summary {
  cursor: pointer;
  color: var(--ink-900);
  margin: 0 0 8px;
  font-size: 12.5px;
  font-weight: 600;
}

.copies-sessions summary:focus-visible {
  outline: 2px solid var(--ink-700);
  outline-offset: 3px;
  border-radius: 3px;
}

.copies-sessions .supports-count {
  color: var(--ink-700);
  background: #eef2f7;
  border-radius: 999px;
  margin-left: 8px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 600;
}

.copies-sessions-vide, .copies-sessions-manques {
  color: var(--ink-700);
  margin: 6px 0 0;
  font-size: 12px;
}

.msections {
  border-top: 1px solid var(--line);
  margin-top: 18px;
}

.msections:empty {
  display: none;
}

#modal2 .mhead {
  padding: 22px 24px 8px;
}

#modal2 .mhead .t {
  letter-spacing: -.015em;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.3;
}

#modal2 .mhead .s {
  color: var(--ink-500);
  margin-top: 3px;
  font-size: 13px;
}

#modal2 .mclose {
  border-radius: 9px;
  width: 32px;
  height: 32px;
}

#modal2 .mbody {
  padding: 8px 24px 22px;
}

#modal2 .k2 {
  text-transform: none;
  letter-spacing: 0;
  color: var(--ink-700);
  font-size: 12.5px;
  font-weight: 600;
}

#modal2 .pd {
  color: var(--ink-500);
  font-size: 12.5px;
  line-height: 1.5;
}

#modal2 .notes-ta {
  background: #fff;
  margin-top: 6px;
}

#modal2 .mactions .btn {
  min-height: 36px;
  padding: 8px 16px;
  font-size: 13px;
}

#modal2 .swbar {
  padding: 6px 24px 14px;
}

#modal2 .swlist {
  padding: 14px 24px 20px;
}

.swactuelle {
  background: var(--primary-50);
  color: var(--primary-dark);
  vertical-align: 1px;
  border-radius: 999px;
  margin-left: 8px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 600;
  display: inline-block;
}

#modal2 .abs-retour {
  color: var(--ink-500);
  border-radius: 6px;
  align-items: center;
  margin: 0 0 8px -4px;
  padding: 3px 6px;
  font-size: 13px;
  font-weight: 500;
  display: inline-flex;
}

#modal2 .abs-retour:hover:not(:disabled) {
  color: var(--primary);
  background: var(--primary-50);
}

#modal2 .abs-q {
  color: var(--ink-900);
  letter-spacing: -.01em;
  margin: 2px 0 14px;
  font-size: 15px;
  font-weight: 600;
}

#modal2 .abs-opts {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

#modal2 .abs-opt {
  border: 1.5px solid var(--line-2);
  text-align: left;
  width: 100%;
  min-height: 50px;
  color: var(--ink-900);
  cursor: pointer;
  background: #fff;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: border-color .12s, background .12s;
  display: flex;
}

#modal2 .abs-opt:hover:not(:disabled), #modal2 .abs-opt:focus-visible {
  border-color: var(--primary);
  background: var(--primary-50);
  outline: none;
}

#modal2 .abs-opt:disabled {
  cursor: not-allowed;
  opacity: .55;
}

#modal2 .abs-opt-fl {
  color: var(--ink-400);
  font-size: 20px;
  line-height: 1;
}

#modal2 .abs-opt:hover:not(:disabled) .abs-opt-fl {
  color: var(--primary);
}

#modal2 .abs-note {
  color: var(--ink-500);
  margin: 8px 0 0;
  font-size: 12.5px;
  line-height: 1.5;
}

#modal2 .abs-consequence {
  margin-top: 18px;
}

#modal2 .abs-lbl {
  color: var(--ink-700);
  margin-bottom: 5px;
  font-size: 12.5px;
  font-weight: 600;
  display: block;
}

#modal2 .abs-champ {
  margin-top: 16px;
  display: block;
}

#modal2 .abs-champ .notes-ta {
  margin-top: 0;
}

#modal2 .abs-jour .edin {
  border-radius: 8px;
  max-width: 200px;
  padding: 7px 10px;
}

#modal2 .abs-motifs {
  border: 0;
  margin: 0;
  padding: 0;
}

#modal2 .abs-coche {
  color: var(--ink-800);
  align-items: center;
  gap: 8px;
  padding: 5px 0;
  font-size: 13.5px;
  display: flex;
}

#modal2 .abs-piece {
  border: 1px solid var(--line-2);
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  padding: 12px 14px;
  display: flex;
}

#modal2 .abs-adire {
  background: var(--primary-50);
  border-radius: 12px;
  padding: 12px 14px;
}

#modal2 .abs-adire p {
  color: var(--ink-900);
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
}

#modal2 .abs-details {
  border: 1px solid var(--line-2);
  border-radius: 12px;
  margin-top: 16px;
  padding: 10px 14px;
}

#modal2 .abs-details summary {
  cursor: pointer;
  color: var(--ink-700);
  font-size: 13px;
  font-weight: 600;
}

#modal2 .abs-details .k2 {
  margin-top: 10px;
}

#modal2 .abs-reperes {
  gap: 10px;
  margin: 10px 0 0;
  display: grid;
}

#modal2 .abs-reperes dt {
  color: var(--ink-800);
  font-size: 13px;
  font-weight: 600;
}

#modal2 .abs-reperes dd {
  color: var(--ink-500);
  margin: 2px 0 0;
  font-size: 12.5px;
}

#modal2 .abs-manque {
  color: var(--ink-500);
  align-self: center;
  margin-right: auto;
  font-size: 12.5px;
}

#modal2 .abs-personne {
  margin: 0 0 16px;
}

@media (max-width: 620px) {
  #modal2 .mhead {
    padding: 16px 16px 6px;
  }

  #modal2 .mbody {
    padding: 6px 16px 18px;
  }

  #modal2 .swbar {
    padding: 6px 16px 12px;
  }

  #modal2 .swlist {
    padding: 12px 16px 16px;
  }

  #modal2 .abs-piece {
    flex-direction: column;
    align-items: stretch;
  }
}

@supports (height: 1dvh) {
  :root {
    --fenetre-hauteur-max: min(88vh,88dvh);
  }
}

.mbox:not(.ou-template-inline > .mbox, [data-espace-formateur-ouvert="oui"] > .mbox, [data-process-duo] > .mbox), .onb-quiz, .ardmodal {
  min-width: 0;
  max-height: var(--fenetre-hauteur-max);
  width: min(var(--fenetre-largeur),100%) !important;
  max-width: none !important;
}

:is(#modal2, #modal3, #tplmodal) > .mbox:not([data-corps], .template-workspace, .pc-fenetre) > .mbody > :not(.mactions), .mbox[data-corps="etroit"] > :is(.mbody, [data-modal-corps]) > :not(.mactions) {
  max-width: var(--fenetre-colonne);
}

/* [project]/src/app/recette-come.css [app-client] (css) */
.carte-closeur {
  color: #64748b;
  margin: -2px 0 10px;
  font-size: 12px;
}

.tl-nat.robot .ic.round {
  background: var(--primary-50);
  color: var(--primary-dark);
  border-color: var(--primary-50);
}

.ct .t {
  white-space: pre-line;
  line-height: 1.5;
}

#visionbanner {
  justify-content: space-between;
  gap: 16px;
  min-height: 36px;
}

#visionbanner > svg {
  flex-shrink: 0;
}

#visionbanner > span {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  overflow: hidden;
}

#visionbanner > span.vision-a-la-ligne {
  white-space: normal;
}

#visionbanner button {
  white-space: nowrap;
  flex-shrink: 0;
}

.sect-h > svg, .secp-i {
  display: none;
}

.marche-filtres {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 24px;
}

.recette-section {
  box-shadow: none;
  margin: 20px 0;
}

.recette-section > .inner {
  padding: 20px;
}

.marche-info-filtre {
  color: #64748b;
  background: none;
  margin: 0 0 16px;
  padding: 0;
  font-size: 13px;
  line-height: 1.5;
}

.profil-documents .tbl {
  width: 100%;
}

.profil-documents .tbl .acts {
  text-align: right;
  white-space: nowrap;
  display: table-cell;
}

.profil-documents .tbl .acts .ilink {
  margin-left: 12px;
  display: inline-block;
}

.profil-documents-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
  display: flex;
}

.chk-head.parcours-progression {
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  width: 100%;
  margin: 0 0 20px;
  padding: 0;
  display: flex;
}

.chk-head.parcours-progression .bar {
  flex: 0 0 100%;
  width: 100%;
  max-width: none;
  margin: 0;
}

.demandes-kanban {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
  display: grid;
}

.demandes-col {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  min-height: 160px;
  padding: 14px;
}

.demandes-col h3 {
  justify-content: space-between;
  align-items: center;
  margin: 0 0 14px;
  font-size: 13px;
  font-weight: 650;
  display: flex;
}

.demandes-col h3 span {
  background: #e2e8f0;
  border-radius: 20px;
  padding: 2px 8px;
  font-size: 12px;
}

.demandes-col.acceptee {
  border-top: 3px solid #10b981;
}

.demandes-col.refusee {
  border-top: 3px solid #f87171;
}

.demandes-col.en_cours {
  border-top: 3px solid #818cf8;
}

.demandes-col .demrow2 {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 9px;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-bottom: 10px;
  padding: 14px;
  display: flex;
}

.demandes-col .demrow2 button {
  align-self: flex-start;
}

.profil-unifie .fsec {
  box-shadow: none;
  border: 1px solid #e2e8f0;
  margin-top: 20px;
  padding: 22px;
}

.profil-unifie .sect-h {
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 12px;
  padding-bottom: 14px;
}

.profil-unifie .accbloc {
  box-shadow: none;
}

.onboarding-entete {
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin: 18px 0 24px;
}

.onboarding-entete > summary {
  cursor: pointer;
  padding: 18px 22px;
  font-size: 15px;
  font-weight: 650;
}

.onboarding-entete[open] > summary {
  border-bottom: 1px solid #e2e8f0;
}

.onboarding-entete > summary {
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  list-style: none;
  display: flex;
}

.onboarding-entete > summary::-webkit-details-marker {
  display: none;
}

.onboarding-entete > summary::marker {
  content: "";
}

.onboarding-entete > summary .chev {
  width: 22px;
  height: 22px;
  color: var(--ink-500);
  border-radius: 6px;
  flex: 0 0 22px;
  justify-content: center;
  align-items: center;
  transition: transform .18s, background .12s;
  display: inline-flex;
}

.onboarding-entete > summary:hover .chev {
  color: var(--ink-800);
  background: #e6eaf1;
}

.onboarding-entete[open] > summary .chev {
  transform: rotate(90deg);
}

.onboarding-entete > :not(summary) {
  margin: 18px;
}

.tache-editor .mbody {
  padding: 24px;
}

.tache-editor .espin {
  margin-bottom: 18px;
}

.tache-editor .genrow {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  display: grid;
}

.tache-editor .genfld {
  min-width: 0;
  margin: 0;
}

.tache-editor .genfld:empty {
  display: none;
}

.tache-editor label, .tache-editor .k {
  font-size: 12px;
  font-weight: 600;
}

.tache-editor .caswrap {
  flex-wrap: wrap;
  gap: 8px;
  display: flex;
}

.tache-editor .casck {
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 8px 10px;
}

.template-create {
  margin-top: 10px;
}

.process-date {
  color: #64748b;
  font-size: 12px;
  font-weight: 500;
}

.vcgrp > summary {
  cursor: pointer;
  padding: 12px 14px;
  font-weight: 600;
}

.vcgrp > summary span {
  float: right;
  color: #94a3b8;
  font-size: 11px;
}

.vcgrp[open] > summary {
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 4px;
}

.selr-tree {
  list-style: none;
}

.selr-tree > details > summary {
  cursor: pointer;
  color: #475569;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
}

.selr-tree > details > summary:hover {
  background: #f1f5f9;
  border-radius: 6px;
}

.selr-sublist {
  margin: 0;
  padding: 0 0 0 10px;
  list-style: none;
}

@media (max-width: 800px) {
  .demandes-kanban, .tache-editor .genrow {
    grid-template-columns: 1fr;
  }

  .profil-unifie .fsec {
    padding: 16px;
  }

  .ardduo {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .ardduo > * {
    min-width: 0;
  }

  .ardduo .swrow {
    flex-wrap: wrap;
  }

  .ardduo .closerow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas: none;
    gap: 4px 12px;
    padding: 12px 0;
  }

  .ardduo .closerow > span {
    overflow-wrap: anywhere;
    grid-area: auto;
    min-width: 0;
  }

  .ardduo .closerow .fintxt {
    white-space: normal;
  }

  .ardduo .closerow .cd {
    text-align: right;
  }

  .ardduo .closerow .cl {
    grid-column: 1 / -1;
  }

  .ardduo .closerow .cr {
    text-align: left;
    grid-column: 1 / -1;
    justify-self: start;
  }
}

@media (max-width: 420px) {
  .tl.todo-card .tl-primary[data-idlink$="::closing"] {
    white-space: normal;
    height: auto;
    min-height: 32px;
    padding-block: 5px;
    line-height: 1.3;
  }

  .tl.todo-card .tl-primary[data-idlink$="::closing"] > span:first-child {
    white-space: normal;
    text-overflow: clip;
    overflow-wrap: anywhere;
    overflow: visible;
  }
}

/* [project]/src/app/onboarding-externe.css [app-client] (css) */
#subnav .onboarding-locked {
  color: #94a3b8;
  cursor: not-allowed;
  opacity: .85;
  background: none;
}

#subnav .onboarding-locked > span {
  -webkit-text-decoration: line-through #a6b2c3;
  text-decoration: line-through #a6b2c3;
  text-decoration-thickness: 1px;
}

#subnav .onboarding-locked > svg {
  opacity: .7;
  flex: none;
  margin-left: auto;
}

.nav-onboarding-note {
  color: #64748b;
  background: #f1f5f9;
  border-radius: 9px;
  margin: 10px 16px 16px;
  padding: 12px;
  font-size: 11px;
  line-height: 1.6;
}

.onboarding-acces-message {
  color: #606b80;
  background: #f3f3fa;
  border: 1px solid #e7e7f1;
  border-radius: 12px;
  gap: 4px;
  margin: 8px 0 16px;
  padding: 15px 18px;
  font-size: 13px;
  line-height: 1.6;
  display: grid;
}

.onboarding-acces-message strong {
  color: #454260;
  font-size: 14px;
  font-weight: 600;
}

:is(.onboarding-entete, [data-parcours]) .chk2 {
  align-items: start;
  gap: 24px;
}

:is(.onboarding-entete, [data-parcours]) .chk2-col {
  border: 1px solid #e9edf3;
  border-radius: 11px;
  padding: 0 14px 10px;
  overflow: hidden;
}

:is(.onboarding-entete, [data-parcours]) .chk2-h {
  background: #f7f8fb;
  border-bottom: 1px solid #edf0f5;
  margin: 0 -14px 4px;
  padding: 15px 16px;
  font-size: 13px;
}

.onboarding-sous-titre {
  letter-spacing: .035em;
  color: #6b7890;
  text-transform: uppercase;
  margin: 18px 0 4px;
  font-size: 11px;
  font-weight: 650;
}

.onboarding-tache-description > summary {
  cursor: pointer;
  list-style: none;
}

.onboarding-tache-description > summary:after {
  content: " ›";
  color: #a2aec0;
}

.onboarding-tache-description[open] > summary:after {
  content: " ⌄";
}

.onboarding-tache-description > p {
  white-space: pre-line;
  color: #64748b;
  margin: 9px 0 3px;
  font-size: 12px;
  line-height: 1.65;
}

:is(.onboarding-entete, [data-parcours]) .chk-row {
  align-items: start;
  padding-top: 12px;
  padding-bottom: 12px;
}

:is(.onboarding-entete, [data-parcours]) .chk-row .apchk {
  margin-top: 2px;
}

[data-parcours] .chk-date {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
  min-width: 0;
  display: flex;
}

[data-parcours] .chk-date .chk-gestes {
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  margin-right: 0;
  display: inline-flex;
}

[data-parcours] .chk-gestes .b2 {
  white-space: normal;
  text-align: center;
}

.onboarding-document-zone {
  background: #fafbfe;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  padding: 20px;
}

.onboarding-document-zone input {
  max-width: 100%;
  margin: 16px 0;
  display: block;
}

.onboarding-document-zone p {
  margin: 0 0 12px;
  line-height: 1.6;
}

.onboarding-document-zone label {
  margin-top: 16px;
  display: block;
}

:is(.onboarding-entete, [data-parcours]) .chk-gestes a {
  text-decoration: none;
}

:is(.onboarding-entete, [data-parcours]) .chk-row:not(.mine) .lbl {
  color: #64748b;
}

.onb-mobile-menu, .onb-mobile-close, .onb-mobile-voile {
  display: none;
}

.onb-quiz-image {
  object-fit: contain;
  background: #f7f8fc;
  border-radius: 9px;
  width: 100%;
  height: auto;
  max-height: 280px;
  margin: 10px 0;
  display: block;
}

.onb-quiz-choix .onb-quiz-image {
  max-height: 210px;
}

.onb-quiz-option-contenu {
  flex: 1;
  min-width: 0;
}

.onb-quiz-choix label:has(.onb-quiz-image) {
  align-items: start;
}

.onb-quiz-corrections .onb-quiz-image {
  max-height: 180px;
}

@media (max-width: 800px) {
  :is(.onboarding-entete, [data-parcours]) .chk2 {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    display: grid;
  }

  .onboarding-entete > :not(summary) {
    margin: 12px;
  }

  :is(.onboarding-entete, [data-parcours]) .chk2 .chk-row {
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 8px;
  }

  :is(.onboarding-entete, [data-parcours]) .chk2 .chk-row .who {
    display: none;
  }

  :is(.onboarding-entete, [data-parcours]) .chk-row .lbl {
    font-size: 13px;
    line-height: 1.5;
  }

  :is(.onboarding-entete, [data-parcours]) .chk2 .chk-row .chk-date {
    white-space: normal;
    overflow-wrap: anywhere;
    grid-column: 2;
    justify-content: flex-start;
  }

  :is(.onboarding-entete, [data-parcours]) .chk2 .chk-row .chk-date:empty {
    display: none;
  }

  :is(.onboarding-entete, [data-parcours]) .chk2 .chk-date .chk-gestes {
    justify-content: flex-start;
  }

  :is(.onboarding-entete, [data-parcours]) .chk-date .chk-gestes {
    margin-right: 0;
  }
}

@media (max-width: 640px) {
  body:has(.onb-mobile-menu) #sidebar {
    display: none;
  }

  body:has(.onb-mobile-menu) #sidebar.onb-mobile-open {
    z-index: 180;
    width: min(280px, 100vw - 48px);
    height: 100dvh;
    display: flex;
    position: fixed;
    inset: 0 auto 0 0;
  }

  body:has(.onb-mobile-menu) #content {
    padding: 16px 12px 40px;
  }

  body:has(.onb-mobile-menu) #topbar {
    flex-wrap: wrap;
    height: auto;
    min-height: 52px;
    padding: 8px 12px 8px 58px;
  }

  body:has(.onb-mobile-menu) #gsearch {
    display: none;
  }

  .onb-mobile-menu, .onb-mobile-close {
    color: #475569;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 9px;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    display: inline-flex;
  }

  .onb-mobile-menu {
    z-index: 40;
    position: fixed;
    top: 8px;
    left: 12px;
  }

  .onb-mobile-close {
    position: absolute;
    top: 12px;
    right: 12px;
  }

  .onb-mobile-voile {
    z-index: 170;
    background: #0f172a4d;
    display: block;
    position: fixed;
    inset: 0;
  }

  .onb-mobile-menu:focus-visible, .onb-mobile-close:focus-visible {
    outline: 2px solid var(--primary);
    outline-offset: 2px;
  }
}

.onb-lieux {
  border: 1px solid var(--line, #e2e8f0);
  background: #fff;
  border-radius: 11px;
  margin-top: 20px;
}

.onb-lieux > summary {
  cursor: pointer;
  color: #26324a;
  padding: 17px 20px;
  font-size: 14px;
  font-weight: 600;
}

.onb-lieux-contenu {
  padding: 0 20px 20px;
}

.onb-lieux-contenu > p {
  color: #64748b;
  max-width: 80ch;
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.6;
}

.onb-lieux-fiches {
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
  gap: 12px;
  display: grid;
}

.onb-lieux-fiches > button {
  text-align: left;
  color: #26324a;
  min-width: 0;
  min-height: 96px;
  font: inherit;
  cursor: pointer;
  overflow-wrap: anywhere;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
}

.onb-lieux-fiches > button:hover {
  background: #faf9ff;
  border-color: #a59bfa;
}

.onb-lieux-fiches > button:focus-visible, .onb-lieux > summary:focus-visible {
  outline-offset: 3px;
  outline: 2px solid #5145ed;
}

.onb-lieux-ouvrir {
  color: #5145ed;
  font-size: 12px;
  font-weight: 600;
}

@media (max-width: 700px) {
  .onb-lieux-fiches {
    grid-template-columns: 1fr;
  }

  .onb-lieux > summary {
    padding: 16px;
  }

  .onb-lieux-contenu {
    padding: 0 16px 16px;
  }

  .onb-lieux-fiches > button {
    min-height: 88px;
  }
}

/* [project]/src/app/shell-navigation.css [app-client] (css) */
.shell-navigation-mobile {
  display: contents;
}

#app:has(#content .onb-mobile-menu) > .shell-navigation-mobile {
  display: none;
}

.sidebar-toggle {
  display: none;
}

@media (min-width: 641px) {
  #app[data-sidebar-collapsed="true"] > #sidebar {
    display: none;
  }

  #topbar > .sidebar-toggle {
    width: 32px;
    height: 32px;
    color: var(--ink-500);
    cursor: pointer;
    background: #fff;
    border: 1px solid #0000;
    border-radius: 8px;
    flex: 0 0 32px;
    justify-content: center;
    align-items: center;
    padding: 0;
    display: inline-flex;
  }

  #topbar > .sidebar-toggle:hover {
    background: var(--bg);
    color: var(--ink-900);
  }

  #topbar > .sidebar-toggle:focus-visible {
    outline: 2px solid var(--primary, #4f46e5);
    outline-offset: 2px;
  }
}

@media (min-width: 641px) and (max-width: 780px) {
  body:has(.orga-maquette) #topbar > .sidebar-toggle {
    display: none;
  }
}

@media (max-width: 640px) {
  #content:has( > .plegend) > .plegend {
    flex-wrap: wrap;
    gap: 8px 12px;
  }

  #content:has( > .plegend) .fsearch {
    width: 100%;
    min-width: 0;
  }

  #content:has( > .plegend) .fsearch input {
    min-width: 0;
  }

  #content:has( > .plegend) .pvmonth .mpct .bar {
    display: none;
  }

  #content:has( > .plegend) .pvmonth > summary .tt {
    white-space: normal;
  }

  #content:has( > .plegend) .pvs > summary {
    flex-wrap: wrap;
  }

  #content:has( > .plegend) .pvs > summary .tt {
    overflow-wrap: anywhere;
    min-width: 0;
  }

  #content:has( > .plegend) .pvs > summary .end {
    flex-wrap: wrap;
    flex-shrink: 1;
  }

  :is(#content:has( > .plegend) .pmat th.pl, #content:has( > .plegend) .pmat td.pl) {
    width: 118px;
    min-width: 118px;
  }

  :is(#content:has( > .plegend) .pmat th.pl > *, #content:has( > .plegend) .pmat td.pl > *) {
    max-width: 106px;
  }
}

/*# sourceMappingURL=src_app_0tneq5_._.css.map*/