:root{--ink: oklch(24% .02 155);--ink-soft: oklch(48% .02 155);--ink-faint: oklch(64% .015 150);--page-bg: oklch(96.5% .018 95);--page-bg-admin: oklch(94% .012 150);--card: oklch(99% .004 90);--card-soft: oklch(96.5% .012 140);--line: oklch(90% .018 100);--sidebar: oklch(19% .025 155);--sidebar-line: oklch(30% .03 155);--green-900: oklch(20% .03 155);--green-700: oklch(38% .1 152);--green-600: oklch(50% .13 152);--green-500: oklch(58% .13 150);--green-100: oklch(93% .045 148);--gold-600: oklch(72% .14 78);--gold-100: oklch(94% .05 85);--red-600: oklch(55% .17 25);--red-100: oklch(94% .045 25);--blue-600: oklch(55% .1 240);--blue-100: oklch(93% .03 240);--terracotta: oklch(58% .14 40);--gray-500: oklch(58% .01 150);--gray-100: oklch(93% .008 150);--accent: var(--green-600);--radius-card: 16px;--radius-panel: 24px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--page-bg);color:var(--ink);font-family:Karla,ui-sans-serif,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,.font-display{font-family:Sora,ui-sans-serif,system-ui,-apple-system,sans-serif;margin:0}a{color:var(--green-600);text-decoration:none}a:hover{color:var(--green-700)}button,input,textarea,select{font-family:inherit}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card)}.field{width:100%;box-sizing:border-box;background:var(--gray-100);border:1px solid var(--line);border-radius:11px;padding:11px 14px;font-size:13.5px;color:var(--ink)}.btn-primary{background:var(--accent);color:#fff;border:none;font-weight:700;font-size:13.5px;padding:11px 18px;border-radius:11px;cursor:pointer}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{background:var(--card);color:var(--ink);border:1px solid var(--line);font-weight:600;font-size:13px;padding:10px 16px;border-radius:11px;cursor:pointer}.btn-danger{background:var(--red-600);color:#fff;border:none;font-weight:700;font-size:13.5px;padding:11px 18px;border-radius:11px;cursor:pointer}.status-pill{display:inline-flex;align-items:center;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px}.status-en-attente{background:var(--gold-100);color:oklch(45% .11 75)}.status-valide{background:var(--green-100);color:var(--green-700)}.status-rejete{background:var(--red-100);color:var(--red-600)}.status-terminer{background:var(--gray-100);color:var(--gray-500)}
