.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:200px}.loading-spinner{width:48px;height:48px;border:4px solid var(--surface-container);border-top-color:var(--primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}.loading-message{margin-top:var(--spacing-md);color:var(--on-surface-variant);font-size:14px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--abte-vert-teinte2) 0%,var(--abte-vert-teinte1) 100%);padding:var(--spacing-lg)}.login-container{width:100%;max-width:440px;background:var(--surface-container-lowest);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:0 10px 30px #1a563226}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-logo{width:120px;height:120px;object-fit:contain;margin:0 auto var(--spacing-md);display:block;border-radius:var(--radius-md)}.login-header h1{font-family:Montserrat,sans-serif;font-size:28px;font-weight:900;color:var(--abte-vert-fonce);margin-bottom:var(--spacing-sm)}.login-header p{font-family:Raleway,sans-serif;font-size:14px;font-weight:400;color:var(--abte-vert-teinte3)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{color:var(--on-surface)}.input-wrapper{position:relative}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--on-surface-variant)}.input-with-icon{padding-left:44px}.btn-full{width:100%;margin-top:var(--spacing-md)}.alert{display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 16px;border-radius:var(--radius);font-size:14px}.alert-error{background-color:var(--error-container);color:var(--on-error-container)}.login-footer{margin-top:var(--spacing-xl);text-align:center;color:var(--on-surface-variant)}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;display:inline-block;margin-right:8px}:root{--abte-vert-fonce: #1A5632;--abte-vert-signal: #4CAF50;--abte-blanc-pur: #FFFFFF;--abte-vert-nuit: #1B5E20;--abte-vert-teinte1: #C8E6C9;--abte-vert-teinte2: #E8F5E9;--abte-vert-teinte3: #388E3C;--abte-vert-teinte4: #1B5E20;--surface: var(--abte-vert-teinte2);--surface-dim: #c5ddc7;--surface-bright: var(--abte-blanc-pur);--surface-container-lowest: var(--abte-blanc-pur);--surface-container-low: #f5faf5;--surface-container: var(--abte-vert-teinte2);--surface-container-high: var(--abte-vert-teinte1);--surface-container-highest: #b8ddb9;--on-surface: var(--abte-vert-fonce);--on-surface-variant: var(--abte-vert-teinte3);--inverse-surface: var(--abte-vert-nuit);--inverse-on-surface: var(--abte-blanc-pur);--outline: var(--abte-vert-teinte3);--outline-variant: var(--abte-vert-teinte1);--surface-tint: var(--abte-vert-signal);--primary: var(--abte-vert-fonce);--on-primary: var(--abte-blanc-pur);--primary-container: var(--abte-vert-nuit);--on-primary-container: var(--abte-vert-teinte1);--inverse-primary: var(--abte-vert-signal);--secondary: var(--abte-vert-signal);--on-secondary: var(--abte-blanc-pur);--secondary-container: var(--abte-vert-teinte1);--on-secondary-container: var(--abte-vert-fonce);--tertiary: var(--abte-vert-teinte3);--on-tertiary: var(--abte-blanc-pur);--tertiary-container: var(--abte-vert-teinte2);--on-tertiary-container: var(--abte-vert-fonce);--error: #ba1a1a;--on-error: #ffffff;--error-container: #ffdad6;--on-error-container: #93000a;--primary-fixed: var(--abte-vert-teinte1);--primary-fixed-dim: var(--abte-vert-teinte3);--on-primary-fixed: var(--abte-vert-fonce);--on-primary-fixed-variant: var(--abte-vert-nuit);--secondary-fixed: var(--abte-vert-teinte2);--secondary-fixed-dim: var(--abte-vert-teinte1);--on-secondary-fixed: var(--abte-vert-fonce);--on-secondary-fixed-variant: var(--abte-vert-teinte3);--tertiary-fixed: var(--abte-vert-teinte1);--tertiary-fixed-dim: var(--abte-vert-teinte3);--on-tertiary-fixed: var(--abte-vert-fonce);--on-tertiary-fixed-variant: var(--abte-vert-nuit);--background: var(--abte-blanc-pur);--on-background: var(--abte-vert-fonce);--surface-variant: var(--abte-vert-teinte2);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--container-margin: 40px;--sidebar-width: 260px;--radius-sm: .125rem;--radius: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, .05), 0 1px 2px -1px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,Raleway,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--on-background);font-size:14px;font-weight:400;line-height:20px}#root{min-height:100vh}h1{font-family:Montserrat,sans-serif;font-size:30px;font-weight:900;line-height:38px;letter-spacing:-.02em;color:var(--abte-vert-fonce)}h2{font-family:Montserrat,sans-serif;font-size:24px;font-weight:700;line-height:32px;letter-spacing:-.01em;color:var(--abte-vert-fonce)}h3{font-family:Montserrat,sans-serif;font-size:20px;font-weight:700;line-height:28px;letter-spacing:-.01em;color:var(--abte-vert-fonce)}.body-lg{font-size:16px;line-height:24px}.body-md{font-size:14px;line-height:20px}.body-sm{font-size:13px;line-height:18px}.label-caps{font-size:12px;font-weight:600;line-height:16px;letter-spacing:.05em;text-transform:uppercase}.label-md{font-size:12px;font-weight:500;line-height:16px}.text-muted{color:var(--on-surface-variant);font-style:italic}.container{max-width:1440px;margin:0 auto;padding:0 var(--container-margin)}.card{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:10px 16px;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none}.btn-primary{background-color:var(--primary);color:var(--on-primary)}.btn-primary:hover{background-color:var(--primary-container)}.btn-secondary{background-color:var(--surface-container-lowest);color:var(--on-surface);border:1px solid var(--outline-variant)}.btn-secondary:hover{background-color:var(--surface-container)}.input{width:100%;padding:10px 16px;border:1px solid var(--outline-variant);border-radius:var(--radius);font-size:14px;font-family:inherit;background-color:var(--surface-container-lowest);color:var(--on-surface);transition:border-color .2s ease}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1a56321a}.input-with-icon,.search-input,.input-wrapper .input{padding-left:44px}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:500;line-height:16px}.badge-new{background-color:var(--abte-vert-teinte2);color:var(--abte-vert-fonce)}.badge-in-progress{background-color:#fff9c4;color:#f57f17}.badge-pending{background-color:#ffe0b2;color:#e65100}.badge-processed{background-color:var(--abte-vert-teinte1);color:var(--abte-vert-nuit)}.badge-archived{background-color:#e0e0e0;color:#424242}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--outline-variant);-webkit-overflow-scrolling:touch}table{width:100%;min-width:600px;border-collapse:collapse;background-color:var(--surface-container-lowest)}thead{background-color:var(--surface-container)}th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--on-surface-variant);border-bottom:1px solid var(--outline-variant)}td{padding:12px 16px;border-bottom:1px solid var(--surface-container)}tbody tr:hover{background-color:var(--surface-container-low);cursor:pointer}tbody tr:last-child td{border-bottom:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);text-align:center;min-height:300px}.error-container h3{color:var(--error);margin-bottom:var(--spacing-md)}.error-container p{color:var(--on-surface-variant)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){:root{--sidebar-width: 240px;--container-margin: 24px}h1{font-size:26px;line-height:34px}h2{font-size:22px;line-height:30px}}@media (max-width: 768px){:root{--sidebar-width: 0;--container-margin: 16px;--spacing-xl: 24px;--spacing-lg: 20px}h1{font-size:24px;line-height:32px}h2{font-size:20px;line-height:28px}h3{font-size:18px;line-height:26px}.card{padding:var(--spacing-md)}.btn{width:100%;justify-content:center}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:600px}}@media (max-width: 480px){:root{--container-margin: 12px}.btn{padding:12px 16px;font-size:15px}.input{padding:12px;font-size:16px}}
