:root{--ui-bg: #f6f7f9;--ui-surface: #ffffff;--ui-surface-subtle: #fafbfc;--ui-line: #e7eaf0;--ui-line-strong: #d5dae3;--ui-text: #19212e;--ui-text-2: #566074;--ui-text-3: #6b7487;--ui-primary: #14662f;--ui-primary-hover: #0f5226;--ui-primary-tint: #ecf6ef;--ui-success: #17744a;--ui-warning: #9a5b0a;--ui-danger: #b3261e;--ui-danger-tint: #fdf4f3;--ui-s1: 4px;--ui-s2: 8px;--ui-s3: 12px;--ui-s4: 16px;--ui-s5: 24px;--ui-s6: 32px;--ui-s7: 48px;--ui-r: 6px;--ui-r-lg: 8px;--ui-fs-xs: 12px;--ui-fs-sm: 13px;--ui-fs-md: 14px;--ui-fs-lg: 16px;--ui-fs-xl: 20px;--ui-fs-2xl: 24px;--ui-fw-regular: 400;--ui-fw-medium: 500;--ui-fw-semibold: 600;--ui-mono: ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace;--ui-page-max: 1440px}.ui-page-title{margin:0;font-size:var(--ui-fs-2xl);line-height:1.2;font-weight:var(--ui-fw-semibold);letter-spacing:-.02em;color:var(--ui-text)}.ui-section-title{margin:0;font-size:var(--ui-fs-lg);line-height:1.3;font-weight:var(--ui-fw-semibold);color:var(--ui-text)}.ui-eyebrow{margin:0;font-size:var(--ui-fs-xs);font-weight:var(--ui-fw-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--ui-text-3)}.ui-meta{font-size:var(--ui-fs-sm);color:var(--ui-text-2)}.ui-muted{color:var(--ui-text-3)}.ui-mono{font-family:var(--ui-mono);font-size:var(--ui-fs-xs);word-break:break-all}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-s2);min-height:34px;padding:0 var(--ui-s4);border:1px solid transparent;border-radius:var(--ui-r);background:transparent;color:var(--ui-text);font:inherit;font-size:var(--ui-fs-sm);font-weight:var(--ui-fw-medium);line-height:1;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn--primary{background:var(--ui-primary);color:#fff}.ui-btn--primary:hover:not(:disabled){background:var(--ui-primary-hover)}.ui-btn--secondary{background:var(--ui-surface);border-color:var(--ui-line-strong)}.ui-btn--secondary:hover:not(:disabled){background:var(--ui-surface-subtle);border-color:var(--ui-text-3)}.ui-btn--tertiary{color:var(--ui-text-2);padding:0 var(--ui-s3)}.ui-btn--tertiary:hover:not(:disabled){background:var(--ui-bg);color:var(--ui-text)}.ui-btn--link{min-height:0;padding:0;color:var(--ui-primary);font-weight:var(--ui-fw-medium)}.ui-btn--link:hover:not(:disabled){text-decoration:underline}.ui-btn--danger{background:var(--ui-surface);border-color:var(--ui-danger);color:var(--ui-danger)}.ui-btn--sm{min-height:28px;padding:0 var(--ui-s3);font-size:var(--ui-fs-xs)}.ui-surface{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:var(--ui-r-lg)}.ui-section{padding-top:var(--ui-s5);margin-top:var(--ui-s5);border-top:1px solid var(--ui-line)}.ui-section:first-child{padding-top:0;margin-top:0;border-top:0}.ui-tabs{display:flex;gap:var(--ui-s5);border-bottom:1px solid var(--ui-line);overflow-x:auto}.ui-tab{position:relative;display:inline-flex;align-items:center;gap:var(--ui-s2);padding:var(--ui-s3) 0;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ui-text-2);font:inherit;font-size:var(--ui-fs-md);font-weight:var(--ui-fw-medium);border-radius:0;box-shadow:none;cursor:pointer;white-space:nowrap}.ui-tab:hover,button.ui-tab:hover:not(:disabled){background:transparent;border-color:transparent;box-shadow:none;transform:none;color:var(--ui-text)}button.ui-tab[aria-selected=true],button.ui-tab[aria-selected=true]:hover:not(:disabled),.ui-tab[aria-selected=true]{color:var(--ui-text);border-bottom-color:var(--ui-primary);font-weight:var(--ui-fw-semibold)}.ui-tab__count{font-size:var(--ui-fs-xs);font-weight:var(--ui-fw-medium);color:var(--ui-text-3);font-variant-numeric:tabular-nums}.ui-table{width:100%;border-collapse:collapse;font-size:var(--ui-fs-sm);color:var(--ui-text)}.ui-table th{padding:var(--ui-s2) var(--ui-s3);text-align:left;font-size:var(--ui-fs-xs);font-weight:var(--ui-fw-semibold);letter-spacing:.03em;text-transform:uppercase;color:var(--ui-text-3);background:transparent;border:0;border-bottom:1px solid var(--ui-line-strong);white-space:nowrap}.ui-table td{padding:var(--ui-s2) var(--ui-s3);border:0;border-bottom:1px solid var(--ui-line);vertical-align:baseline;background:transparent}.ui-table tbody tr:hover td{background:var(--ui-surface-subtle)}.ui-table .ui-num,.ui-table th.ui-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ui-table .ui-code{width:56px;font-family:var(--ui-mono);font-size:var(--ui-fs-xs);color:var(--ui-text-3)}.ui-field{display:flex;flex-direction:column;gap:var(--ui-s1);margin-bottom:var(--ui-s4)}.ui-field__label{font-size:var(--ui-fs-sm);font-weight:var(--ui-fw-medium);color:var(--ui-text)}.ui-field__label .ui-required{color:var(--ui-danger);margin-left:2px}.ui-field__hint{font-size:var(--ui-fs-xs);color:var(--ui-text-3)}.ui-input{width:100%;padding:var(--ui-s2) var(--ui-s3);border:1px solid var(--ui-line-strong);border-radius:var(--ui-r);background:var(--ui-surface);color:var(--ui-text);font:inherit;font-size:var(--ui-fs-md)}.ui-input:focus{outline:2px solid var(--ui-primary-tint);outline-offset:0;border-color:var(--ui-primary)}.ui-input:disabled{background:var(--ui-surface-subtle);color:var(--ui-text-2)}.ui-notice{display:flex;align-items:flex-start;gap:var(--ui-s3);padding:var(--ui-s3) var(--ui-s4);border-left:2px solid var(--ui-text-3);background:var(--ui-surface-subtle);font-size:var(--ui-fs-sm);color:var(--ui-text)}.ui-notice--danger{border-left-color:var(--ui-danger);background:var(--ui-danger-tint)}.ui-notice--success{border-left-color:var(--ui-success)}.ui-notice--info{border-left-color:var(--ui-primary);background:var(--ui-primary-tint)}.ui-btn:focus-visible,.ui-tab:focus-visible,.ui-input:focus-visible{outline:2px solid var(--ui-primary);outline-offset:2px}.ui-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:root{--color-primary: #14662f;--color-primary-hover: #0f5226;--color-primary-active: #0b3f1d;--color-primary-light: #ecf6ef;--color-primary-border: #b9ddc5;--color-accent-gold: #f2b705;--color-accent-red: #d33a1f;--gray-25: #fcfcfd;--gray-50: #f9fafb;--gray-100: #f2f4f7;--gray-200: #eaecf0;--gray-300: #d0d5dd;--gray-400: #98a2b3;--gray-500: #667085;--gray-600: #475467;--gray-700: #344054;--gray-800: #1d2939;--gray-900: #101828;--text-primary: #101828;--text-secondary: #475467;--text-tertiary: #667085;--text-placeholder: #98a2b3;--text-on-primary: #ffffff;--border-default: #d0d5dd;--border-subtle: #eaecf0;--bg-app: #f8fafc;--bg-surface: #ffffff;--bg-subtle: #f9fafb;--bg-subtle-hover: #f2f4f7;--color-success: #027a48;--color-success-bg: #ecfdf3;--color-success-border: #abefc6;--color-warning: #b54708;--color-warning-bg: #fffaeb;--color-warning-border: #fedf89;--color-danger: #b42318;--color-danger-bg: #fef3f2;--color-danger-border: #fda29b;--color-info: var(--color-primary);--color-info-bg: var(--color-primary-light);--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08);--shadow-md: 0 4px 8px -2px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .06);--shadow-lg: 0 12px 16px -4px rgba(16, 24, 40, .1), 0 4px 6px -2px rgba(16, 24, 40, .04);--shadow-xl: 0 20px 24px -4px rgba(16, 24, 40, .12), 0 8px 8px -4px rgba(16, 24, 40, .04);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Roboto, Arial, sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.5;background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased}body.menu-mobile-ouvert{overflow:hidden;width:100%}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}a{color:var(--color-primary)}::selection{background:var(--color-primary-border)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:999px;border:2px solid var(--bg-app)}.message-erreur{display:flex;align-items:center;gap:.5rem;color:var(--color-danger);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);padding:.65rem .85rem;font-size:.8125rem;margin:0}.etat-vide{color:var(--text-tertiary);text-align:center;padding:2.5rem 1rem;font-size:.875rem}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;line-height:1.4}.carte{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem .95rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;line-height:1.25;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}button:hover:not(:disabled){background:var(--bg-subtle-hover);border-color:var(--gray-400);color:var(--text-primary)}button:disabled{opacity:.5;cursor:not-allowed}.bouton-principal,.bouton-secondaire,.bouton-danger{box-shadow:var(--shadow-xs)}.bouton-principal,button.bouton-principal{border-color:var(--color-primary);background:var(--color-primary);color:var(--text-on-primary)}.bouton-principal:hover:not(:disabled),button.bouton-principal:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);color:var(--text-on-primary)}.bouton-principal:active:not(:disabled),button.bouton-principal:active:not(:disabled){background:var(--color-primary-active);border-color:var(--color-primary-active)}.bouton-secondaire,button.bouton-secondaire{border-color:var(--border-default);background:var(--bg-surface);color:var(--text-secondary)}.bouton-danger,button.bouton-danger{border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger)}.bouton-danger:hover:not(:disabled),button.bouton-danger:hover:not(:disabled){background:var(--color-danger);border-color:var(--color-danger);color:#fff}.bouton-lien,button.bouton-lien{padding:.35rem .6rem;border-color:transparent;background:transparent;box-shadow:none;color:var(--color-primary)}.bouton-lien:hover:not(:disabled),button.bouton-lien:hover:not(:disabled){background:var(--color-primary-light);border-color:transparent;color:var(--color-primary-hover)}.bouton-lien.bouton-discret,button.bouton-lien.bouton-discret{color:var(--text-tertiary);font-weight:500}.bouton-lien.bouton-discret:hover:not(:disabled),button.bouton-lien.bouton-discret:hover:not(:disabled){background:var(--gray-100);color:var(--text-primary)}.bouton-discret:not(.bouton-lien){color:var(--text-tertiary)}.petit,button.petit{padding:.3rem .7rem;font-size:.75rem;border-radius:var(--radius-sm)}input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:inherit;font-size:.875rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:.55rem .75rem;transition:border-color .12s ease,box-shadow .12s ease}input:not([type=checkbox]):not([type=radio])::placeholder,select::placeholder,textarea::placeholder{color:var(--text-placeholder)}input:not([type=checkbox]):not([type=radio]):focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}input:not([type=checkbox]):not([type=radio]):disabled,select:disabled,textarea:disabled{background:var(--bg-subtle);color:var(--text-tertiary);cursor:not-allowed}label{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}table{width:100%;border-collapse:collapse;font-size:.8125rem}th{text-align:left;font-size:.75rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em;padding:.65rem .75rem;border-bottom:1px solid var(--border-subtle);background:var(--bg-subtle)}td{padding:.7rem .75rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}tbody tr:hover{background:var(--bg-subtle)}.point-statut{display:inline-block;width:8px;height:8px;border-radius:999px;flex-shrink:0}.point-statut.succes{background:var(--color-success)}.point-statut.attention{background:var(--color-warning)}.point-statut.danger{background:var(--color-danger)}.point-statut.neutre{background:var(--gray-400)}.badge{background:var(--gray-100);color:var(--text-secondary);white-space:nowrap;border:1px solid transparent}.badge:is(.badge-succes,.badge-validee,.badge-payee,.badge-resolu,.badge-pointee,.badge-deposee,.badge-haute,.badge-genere,.sev-ok){background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.badge:is(.badge-attente,.badge-retard,.badge-ambigu,.badge-ajustement,.sev-warning,.sev-error){background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.badge:is(.badge-erreur,.badge-fraude,.badge-annulee,.badge-non,.sev-blocking){background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.badge:is(.badge-recu,.badge-info,.badge-client,.badge-ia,.badge-lettrage,.badge-entree,.badge-confiance,.sev-info){background:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}.badge:is(.badge-neutre,.badge-inactif,.badge-sortie,.badge-avoir,.badge-type,.badge-origine,.badge-statut){background:var(--gray-100);color:var(--text-secondary);border-color:var(--gray-200)}.tuiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.tuile{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.85rem 1rem;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);color:var(--text-primary);font:inherit;font-weight:500;text-align:left}.tuile:hover:not(:disabled){background:var(--bg-surface);border-color:var(--color-primary-border);box-shadow:var(--shadow-sm)}.tuile.active{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 1px var(--color-primary)}.tuile.tuile-alerte .tuile-nombre{color:var(--color-danger)}.tuile.vide .tuile-nombre{color:var(--text-placeholder)}.tuile-nombre{font-size:1.625rem;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tuile-libelle{font-size:.78rem;font-weight:500;color:var(--text-tertiary)}.entete{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.entete h2{margin:0;font-size:1.375rem;font-weight:700;letter-spacing:-.02em}.sous-titre{margin:.25rem 0 0;max-width:62ch;color:var(--text-tertiary);font-size:.875rem}.compteur{margin:0;color:var(--text-tertiary);font-size:.8125rem;font-weight:500}.aide{margin:.25rem 0;color:var(--text-tertiary);font-size:.8125rem}.pagination{display:flex;justify-content:center;align-items:center;gap:.75rem;padding:.5rem 0;font-size:.8125rem;color:var(--text-secondary)}.message-info,.message-succes{display:flex;align-items:center;gap:.5rem;margin:0;padding:.65rem .85rem;border-radius:var(--radius-md);background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success);font-size:.8125rem;font-weight:500}.filtres{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:flex-end;padding:.85rem 1rem}.champ{display:flex;flex-direction:column;gap:.3rem;min-width:160px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.champ input,.champ select{font-weight:400}.liste{display:flex;flex-direction:column;gap:.65rem}.carte.ligne{padding:1rem 1.15rem;transition:box-shadow .15s ease,border-color .15s ease}.carte.ligne:hover{border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.carte.ligne .actions{margin-top:.15rem;padding-top:.7rem;border-top:1px solid var(--border-subtle)}.etat-vide{border:1px dashed var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface)}
