.login-container[data-v-7925e7ed]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#a78bfa,#7c3aed);padding:var(--spacing-lg)}.login-card[data-v-7925e7ed]{width:100%;max-width:420px;background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-2xl) var(--spacing-2xl) var(--spacing-xl);box-shadow:0 20px 60px #0000004d}.login-header[data-v-7925e7ed]{text-align:center;margin-bottom:var(--spacing-2xl)}.login-logo[data-v-7925e7ed]{display:flex;justify-content:center;margin-bottom:var(--spacing-lg)}.logo-image[data-v-7925e7ed]{width:64px;height:64px;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026}.login-header h1[data-v-7925e7ed]{margin:0 0 var(--spacing-sm);color:var(--color-text-primary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}.subtitle[data-v-7925e7ed]{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.login-form[data-v-7925e7ed]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.error-message[data-v-7925e7ed]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;font-size:var(--font-size-sm);text-align:center}.form-group[data-v-7925e7ed]{display:flex;flex-direction:column;gap:.5rem}.form-label[data-v-7925e7ed]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.form-input[data-v-7925e7ed]{width:100%;padding:.875rem var(--spacing-md);border:2px solid var(--color-border-light);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-family:var(--font-family);transition:all var(--transition-base);box-sizing:border-box}.form-input[data-v-7925e7ed]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.form-input[data-v-7925e7ed]:disabled{opacity:.6;cursor:not-allowed;background:var(--color-bg-tertiary)}.password-input-wrapper[data-v-7925e7ed]{position:relative;display:flex;align-items:center}.password-toggle[data-v-7925e7ed]{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:var(--font-size-lg);transition:color var(--transition-base);z-index:1}.password-toggle[data-v-7925e7ed]:hover{color:var(--color-text-primary)}.password-toggle[data-v-7925e7ed]:focus{outline:2px solid var(--color-border-focus);outline-offset:2px;border-radius:var(--radius-sm)}.login-button[data-v-7925e7ed]{width:100%;padding:.875rem var(--spacing-lg);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);font-family:var(--font-family);cursor:pointer;transition:all var(--transition-base);margin-top:var(--spacing-sm)}.login-button[data-v-7925e7ed]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.login-button[data-v-7925e7ed]:active:not(:disabled){transform:translateY(0)}.login-button[data-v-7925e7ed]:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-footer[data-v-7925e7ed]{margin-top:var(--spacing-xl);text-align:center}.footer-text[data-v-7925e7ed]{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.footer-link[data-v-7925e7ed]{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}.footer-link[data-v-7925e7ed]:hover{color:var(--color-primary-dark);text-decoration:underline}.fullpage-form[data-v-d9ee264c]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-primary);z-index:1000;display:flex;flex-direction:column;animation:pageIn-d9ee264c .2s ease}.fullpage-header[data-v-d9ee264c]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);flex-shrink:0}.fullpage-back[data-v-d9ee264c]{display:flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);transition:background var(--transition-fast)}.fullpage-back[data-v-d9ee264c]:hover{background:var(--color-bg-tertiary)}.fullpage-title[data-v-d9ee264c]{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.fullpage-body[data-v-d9ee264c]{flex:1;overflow-y:auto;padding:var(--spacing-xl)}.fullpage-content[data-v-d9ee264c]{max-width:640px;margin:0 auto}.fullpage-content--wide[data-v-d9ee264c]{max-width:1000px}@keyframes pageIn-d9ee264c{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.base-input-wrapper[data-v-4fc0c1b7]{display:flex;flex-direction:column;gap:5px}.base-input__label[data-v-4fc0c1b7]{font-size:.7rem;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.065em;transition:color var(--transition-fast)}.base-input-wrapper:focus-within .base-input__label[data-v-4fc0c1b7]{color:var(--color-primary)}.base-input__container[data-v-4fc0c1b7]{position:relative;display:flex;align-items:center}.base-input[data-v-4fc0c1b7]{width:100%;height:40px;padding:0 .875rem;background:var(--color-bg-secondary);border:1.5px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text-primary);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;box-sizing:border-box;outline:none}.base-input[data-v-4fc0c1b7]::placeholder{color:var(--color-text-muted)}.base-input[data-v-4fc0c1b7]:hover:not(:disabled):not(:focus){border-color:var(--color-border-medium)}.base-input[data-v-4fc0c1b7]:focus{background:var(--color-bg-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px #1e56d91f}.base-input[data-v-4fc0c1b7]:disabled{opacity:.55;cursor:not-allowed}.base-input[type=date][data-v-4fc0c1b7],.base-input[type=number][data-v-4fc0c1b7]{padding:0 .75rem}.base-input__hint[data-v-4fc0c1b7]{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.base-button[data-v-e43af241]{border:none;border-radius:var(--radius-md);font-family:var(--font-family);font-weight:var(--font-weight-semibold);letter-spacing:.01em;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;outline:none}.base-button--sm[data-v-e43af241]{height:32px;padding:0 10px;font-size:.78rem;border-radius:var(--radius-sm)}.base-button--md[data-v-e43af241]{height:38px;padding:0 14px;font-size:.875rem}.base-button--lg[data-v-e43af241]{height:44px;padding:0 20px;font-size:.925rem}.base-button--primary[data-v-e43af241]{background:var(--color-primary);color:#fff;border:1.5px solid transparent}.base-button--primary[data-v-e43af241]:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 2px 8px #1e56d94d}.base-button--primary[data-v-e43af241]:focus-visible{box-shadow:0 0 0 3px #1e56d940}.base-button--ghost[data-v-e43af241]{background:transparent;color:var(--color-text-secondary);border:1.5px solid var(--color-border-medium)}.base-button--ghost[data-v-e43af241]:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-medium)}.base-button--ghost[data-v-e43af241]:focus-visible{box-shadow:0 0 0 3px #1e56d91f}.base-button--secondary[data-v-e43af241]{background:var(--color-primary-light);color:var(--color-primary);border:1.5px solid transparent}.base-button--secondary[data-v-e43af241]:hover:not(:disabled){background:#d4e4fc}.base-button--secondary[data-v-e43af241]:focus-visible{box-shadow:0 0 0 3px #1e56d92e}.base-button--danger[data-v-e43af241]{background:var(--color-error);color:#fff;border:1.5px solid transparent}.base-button--danger[data-v-e43af241]:hover:not(:disabled){background:var(--color-error-dark);box-shadow:0 2px 8px #dc26264d}.base-button--danger[data-v-e43af241]:focus-visible{box-shadow:0 0 0 3px #dc262633}.base-button--disabled[data-v-e43af241],.base-button[data-v-e43af241]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.base-button--loading[data-v-e43af241]{cursor:wait;pointer-events:none}.base-button__spinner[data-v-e43af241]{width:14px;height:14px;border:2px solid transparent;border-top-color:currentColor;border-right-color:currentColor;border-radius:50%;animation:spin-e43af241 .65s linear infinite;flex-shrink:0}@keyframes spin-e43af241{to{transform:rotate(360deg)}}.sidebar[data-v-09397896]{position:fixed;left:0;top:0;bottom:0;width:240px;background:var(--color-bg-sidebar);border-right:none;display:flex;flex-direction:column;transition:width .3s ease;z-index:100;box-shadow:4px 0 16px #00000026}.sidebar.collapsed[data-v-09397896]{width:60px}.sidebar-header[data-v-09397896]{padding:var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center}.sidebar-brand[data-v-09397896]{display:flex;align-items:center;gap:var(--spacing-md);text-decoration:none;transition:opacity var(--transition-base)}.sidebar-brand[data-v-09397896]:hover{opacity:.8}.sidebar-logo[data-v-09397896]{width:40px;height:40px;object-fit:contain;flex-shrink:0}.sidebar-title[data-v-09397896]{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:#fff;white-space:nowrap;transition:opacity var(--transition-base);line-height:1.3;letter-spacing:.02em}.sidebar.collapsed .sidebar-title[data-v-09397896]{opacity:0;width:0;overflow:hidden}.sidebar-nav[data-v-09397896]{flex:1;overflow-y:auto;padding:var(--spacing-md) 0}.nav-list[data-v-09397896]{list-style:none;margin:0;padding:0 var(--spacing-sm)}.nav-item[data-v-09397896]{margin:2px 0}.nav-link[data-v-09397896]{display:flex;align-items:center;gap:var(--spacing-md);padding:.6rem var(--spacing-md);color:#ffffff8c;text-decoration:none;transition:all var(--transition-fast);border-left:2px solid transparent;border-radius:var(--radius-md)}.nav-link[data-v-09397896]:hover{background:#ffffff0f;color:#ffffffe6}.nav-link.active[data-v-09397896]{background:#ffffff14;color:#fff;border-left-color:#60a5fa;font-weight:var(--font-weight-semibold)}.nav-icon[data-v-09397896]{width:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-label[data-v-09397896]{flex:1;font-size:var(--font-size-md);white-space:nowrap}.sidebar.collapsed .nav-label[data-v-09397896]{display:none}.sidebar.collapsed .nav-list[data-v-09397896]{padding:0 var(--spacing-xs)}.sidebar.collapsed .nav-link[data-v-09397896]{justify-content:center;padding:.6rem;border-left-color:transparent}.sidebar.collapsed .nav-link.active[data-v-09397896]{border-bottom:2px solid #60a5fa}.sidebar-footer[data-v-09397896]{padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.08);background:#00000026}.sidebar-user[data-v-09397896]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.sidebar-user-header[data-v-09397896]{display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-user-info[data-v-09397896]{display:flex;flex-direction:column;gap:2px;overflow:hidden}.sidebar-user-name[data-v-09397896]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email[data-v-09397896]{font-size:var(--font-size-xs);color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .sidebar-user-info[data-v-09397896]{display:none}.sidebar.collapsed .sidebar-user-header[data-v-09397896]{justify-content:center;padding-bottom:0;border-bottom:none}.sidebar-user-settings-btn[data-v-09397896]{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff14;color:#ffffff8c;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.sidebar-user-settings-btn[data-v-09397896]:hover{background:#ffffff24;color:#ffffffe6}.sidebar.collapsed .sidebar-user-settings-btn[data-v-09397896]{width:40px;height:40px}.sidebar-logout-btn[data-v-09397896]{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#dc262626;color:#fca5a5;border:1px solid rgba(220,38,38,.25);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.sidebar-logout-icon[data-v-09397896]{flex-shrink:0}.sidebar-logout-btn[data-v-09397896]:hover{background:#dc262640;color:#fecaca}.sidebar-logout-label[data-v-09397896]{text-align:center;white-space:nowrap}.sidebar.collapsed .sidebar-logout-label[data-v-09397896]{display:none}.sidebar.collapsed .sidebar-logout-btn[data-v-09397896]{padding:var(--spacing-sm);min-width:32px}.change-password-form[data-v-09397896]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.error-message[data-v-09397896]{padding:var(--spacing-sm);background:#fee2e2;border:1px solid #fca5a5;border-radius:var(--radius-md);color:#991b1b;font-size:var(--font-size-sm)}.success-message[data-v-09397896]{padding:var(--spacing-sm);background:#d1fae5;border:1px solid #6ee7b7;border-radius:var(--radius-md);color:#065f46;font-size:var(--font-size-sm)}.form-actions[data-v-09397896]{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.sidebar-toggle[data-v-09397896]{padding:var(--spacing-md);background:#ffffff0a;border:none;border-top:1px solid rgba(255,255,255,.08);cursor:pointer;color:#fff6;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sidebar-toggle[data-v-09397896]:hover{background:#ffffff14;color:#ffffffb3}.sidebar-nav[data-v-09397896]::-webkit-scrollbar{width:4px}.sidebar-nav[data-v-09397896]::-webkit-scrollbar-track{background:transparent}.sidebar-nav[data-v-09397896]::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:var(--radius-full)}.sidebar-nav[data-v-09397896]::-webkit-scrollbar-thumb:hover{background:#ffffff40}.app-layout[data-v-35e314bc]{display:flex;min-height:100vh;background:var(--color-bg-secondary)}.app-content-wrapper[data-v-35e314bc]{flex:1;display:flex;flex-direction:column;margin-left:240px;transition:margin-left .3s ease}.app-layout:has(.sidebar.collapsed) .app-content-wrapper[data-v-35e314bc]{margin-left:60px}.main-content[data-v-35e314bc]{flex:1;padding:var(--spacing-lg);overflow-y:auto}.base-textarea-wrapper[data-v-c904fe6a]{display:flex;flex-direction:column;gap:.35rem}.base-textarea__label[data-v-c904fe6a]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.base-textarea[data-v-c904fe6a]{width:100%;min-height:60px;padding:.875rem var(--spacing-md);border:2px solid var(--color-border-light);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-family:var(--font-family);transition:all var(--transition-base);box-sizing:border-box;resize:vertical}.base-textarea[data-v-c904fe6a]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.base-textarea[data-v-c904fe6a]:disabled{opacity:.6;cursor:not-allowed;background:var(--color-bg-tertiary)}.base-textarea__hint[data-v-c904fe6a]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.base-select-wrapper[data-v-28a34695]{display:flex;flex-direction:column;gap:5px}.base-select__label[data-v-28a34695]{font-size:.7rem;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.065em;transition:color var(--transition-fast)}.base-select-wrapper:focus-within .base-select__label[data-v-28a34695]{color:var(--color-primary)}.base-select__container[data-v-28a34695]{position:relative;display:flex;align-items:center}.base-select[data-v-28a34695]{width:100%;height:40px;padding:0 2.25rem 0 .875rem;background:var(--color-bg-secondary);border:1.5px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;box-sizing:border-box;outline:none}.base-select[data-v-28a34695]:hover:not(:disabled):not(:focus){border-color:var(--color-border-medium)}.base-select[data-v-28a34695]:focus{background:var(--color-bg-primary);border-color:var(--color-primary);box-shadow:0 0 0 3px #1e56d91f}.base-select[data-v-28a34695]:disabled{opacity:.55;cursor:not-allowed}.base-select__chevron[data-v-28a34695]{position:absolute;right:10px;pointer-events:none;color:var(--color-text-muted);display:flex;align-items:center;transition:color var(--transition-fast),transform .15s ease}.base-select__chevron--focused[data-v-28a34695]{color:var(--color-primary)}.base-select__hint[data-v-28a34695]{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.base-badge[data-v-7ced9b30]{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);font-family:var(--font-family-mono);line-height:1;letter-spacing:.02em}.base-badge--default[data-v-7ced9b30]{background:#f3f4f6;color:#374151}.base-badge--primary[data-v-7ced9b30]{background:var(--color-primary-light);color:var(--color-primary)}.base-badge--success[data-v-7ced9b30]{background:#d1fae5;color:#065f46}.base-badge--warning[data-v-7ced9b30]{background:#fef3c7;color:#92400e}.base-badge--error[data-v-7ced9b30]{background:#fee2e2;color:#991b1b}.base-badge--sm[data-v-7ced9b30]{padding:.15rem .4rem;font-size:.7rem}.base-badge--md[data-v-7ced9b30]{padding:.2rem .6rem;font-size:var(--font-size-xs)}.base-badge--lg[data-v-7ced9b30]{padding:.3rem .75rem;font-size:var(--font-size-sm)}.base-table-wrapper[data-v-5772b31d]{overflow:hidden;background:var(--color-bg-primary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.base-table[data-v-5772b31d]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.base-table thead[data-v-5772b31d]{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light)}.base-table th[data-v-5772b31d]{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-family:var(--font-family-mono);text-transform:uppercase;letter-spacing:.05em}.base-table tbody tr[data-v-5772b31d]{border-bottom:1px solid var(--color-border-light);transition:background-color var(--transition-fast)}.base-table tbody tr[data-v-5772b31d]:last-child{border-bottom:none}.base-table tbody tr[data-v-5772b31d]:hover{background:var(--color-bg-secondary)}.base-table td[data-v-5772b31d]{padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-primary)}.loading-cell[data-v-5772b31d],.empty-cell[data-v-5772b31d]{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.actions-column[data-v-5772b31d]{width:150px;text-align:right}.actions-cell[data-v-5772b31d]{text-align:right;white-space:nowrap;display:flex;justify-content:flex-end;gap:var(--spacing-xs);justify-content:center}.bureau-page[data-v-e31f92bf]{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.page-header[data-v-e31f92bf]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.page-header h1[data-v-e31f92bf]{margin:0}.page-actions[data-v-e31f92bf]{display:flex;gap:var(--spacing-sm)}.kpis-grid[data-v-e31f92bf]{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--spacing-md)}.kpi-card[data-v-e31f92bf]{padding:var(--spacing-lg);text-align:center}.kpi-value[data-v-e31f92bf]{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.kpi-label[data-v-e31f92bf]{margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.panel-section[data-v-e31f92bf]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.section-header[data-v-e31f92bf]{display:flex;align-items:center;justify-content:space-between}.section-header h2[data-v-e31f92bf]{margin:0;font-size:var(--font-size-2xl)}.projet-form[data-v-e31f92bf]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-actions[data-v-e31f92bf]{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.error-message[data-v-e31f92bf]{padding:var(--spacing-sm);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;font-size:var(--font-size-sm)}.error[data-v-e31f92bf]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;margin-bottom:var(--spacing-lg)}.files-section[data-v-e31f92bf]{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-light)}.files-section-title[data-v-e31f92bf]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.files-grid[data-v-e31f92bf]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.file-input-group[data-v-e31f92bf]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.file-label[data-v-e31f92bf]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.file-input[data-v-e31f92bf]{padding:var(--spacing-sm);border:2px solid var(--color-border-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-base)}.file-input[data-v-e31f92bf]:hover{border-color:var(--color-border-focus)}.file-input[data-v-e31f92bf]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.selected-file[data-v-e31f92bf]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.remove-file-btn[data-v-e31f92bf]{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-text-secondary);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-base)}.remove-file-btn[data-v-e31f92bf]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.current-file[data-v-e31f92bf]{padding:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-style:italic}.viewer-layout[data-v-e56b498f]{display:flex;min-height:100vh;background:var(--color-bg-gradient-secondary)}.viewer-main[data-v-e56b498f]{flex:1;width:100%;display:flex;flex-direction:column;overflow:hidden}.viewer-shell[data-v-8dac8505]{display:flex;flex-direction:column;height:100vh;gap:var(--spacing-md);padding:var(--spacing-md)}.app-content[data-v-8dac8505]{flex:1;min-height:0;display:flex}.viewer-panel[data-v-8dac8505]{background:var(--color-bg-primary);border-radius:var(--radius-lg);position:relative;width:100%;height:100%;overflow:hidden;box-shadow:var(--shadow-sm)}.viewer-canvas[data-v-8dac8505]{width:100%;height:100%;position:relative}.viewer-panel canvas[data-v-8dac8505]{width:100%!important;height:100%!important}.viewer-status[data-v-8dac8505]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f8fafcd9;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);z-index:10}.bottom-panel[data-v-8dac8505]{background:var(--color-bg-primary);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.status-section[data-v-8dac8505]{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-md);width:100%}.status-section h3[data-v-8dac8505]{margin:0;color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);flex-shrink:0}.actions[data-v-8dac8505]{margin-left:auto;flex-shrink:0}.legend[data-v-8dac8505]{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-md)}.legend li[data-v-8dac8505]{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);flex-shrink:0}.legend .color[data-v-8dac8505]{width:16px;height:16px;border-radius:var(--radius-sm);flex-shrink:0}.legend strong[data-v-8dac8505]{color:var(--color-text-primary)}.legend small[data-v-8dac8505]{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.error-banner[data-v-8dac8505]{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);background:#fee;color:#c33;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:1000;max-width:90%;text-align:center}.empty[data-v-8dac8505]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:var(--font-size-md)}.base-card[data-v-fa8760ad]{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:all var(--transition-fast)}.base-card--hoverable[data-v-fa8760ad]:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.base-card--clickable[data-v-fa8760ad]{cursor:pointer}.base-card--clickable[data-v-fa8760ad]:active{transform:translateY(-1px)}.usine-page[data-v-8a7a3f5b]{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.page-header[data-v-8a7a3f5b]{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.page-header h1[data-v-8a7a3f5b]{margin:0}.page-actions[data-v-8a7a3f5b]{display:flex;gap:var(--spacing-sm)}.filters-card[data-v-8a7a3f5b]{padding:var(--spacing-md)}.filters-grid[data-v-8a7a3f5b]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md)}.kpis-grid[data-v-8a7a3f5b]{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--spacing-md)}.kpi-card[data-v-8a7a3f5b]{padding:var(--spacing-lg);text-align:center}.kpi-value[data-v-8a7a3f5b]{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.kpi-label[data-v-8a7a3f5b]{margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.panel-section[data-v-8a7a3f5b]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.section-header[data-v-8a7a3f5b]{display:flex;align-items:center;justify-content:space-between}.section-header h2[data-v-8a7a3f5b]{margin:0}.error[data-v-8a7a3f5b]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33}.modal-form[data-v-8a7a3f5b]{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-error[data-v-8a7a3f5b]{padding:var(--spacing-sm);border:1px solid #fcc;border-radius:var(--radius-md);background:#fee;color:#c33;font-size:var(--font-size-sm)}.form-warning[data-v-8a7a3f5b]{padding:var(--spacing-sm);border:1px solid #e8c860;border-radius:var(--radius-md);background:#fef9e7;color:#8a6d00;font-size:var(--font-size-sm)}.besoin-info[data-v-8a7a3f5b]{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--spacing-xs) 0}.form-actions[data-v-8a7a3f5b]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.expedition-form-grid[data-v-8a7a3f5b]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.expedition-items-section[data-v-8a7a3f5b]{margin-top:var(--spacing-lg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.expedition-items-header[data-v-8a7a3f5b]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light)}.expedition-items-header h3[data-v-8a7a3f5b]{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.expedition-items-count[data-v-8a7a3f5b]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.expedition-items-table-wrap[data-v-8a7a3f5b]{overflow-x:auto}.expedition-items-table[data-v-8a7a3f5b]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.expedition-items-table th[data-v-8a7a3f5b]{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-tertiary, #eef1f6);border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary);white-space:nowrap}.expedition-items-table td[data-v-8a7a3f5b]{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}.col-code[data-v-8a7a3f5b]{width:100px}.col-desig[data-v-8a7a3f5b]{min-width:140px}.col-num[data-v-8a7a3f5b]{text-align:right;width:80px;font-variant-numeric:tabular-nums}.col-qty[data-v-8a7a3f5b]{width:100px;text-align:center}.cell-mono[data-v-8a7a3f5b]{font-family:var(--font-mono, monospace);font-size:var(--font-size-xs)}.cell-warn[data-v-8a7a3f5b]{color:#b45309;font-weight:var(--font-weight-semibold)}.cell-danger[data-v-8a7a3f5b]{color:#c33;font-weight:var(--font-weight-semibold)}.row-alt[data-v-8a7a3f5b]{background:var(--color-bg-secondary)}.row-zero-stock[data-v-8a7a3f5b]{opacity:.5}.row-total[data-v-8a7a3f5b]{background:var(--color-bg-secondary);font-weight:var(--font-weight-semibold)}.row-total td[data-v-8a7a3f5b]{padding:var(--spacing-sm);border-top:2px solid var(--color-border-light)}.total-qty[data-v-8a7a3f5b]{font-size:var(--font-size-base);color:var(--color-primary)}.qty-input[data-v-8a7a3f5b]{width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:right;font-variant-numeric:tabular-nums}.qty-input[data-v-8a7a3f5b]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #1e56d926}.qty-input[data-v-8a7a3f5b]:disabled{background:var(--color-bg-tertiary, #eef1f6);cursor:not-allowed;opacity:.5}.empty-hint[data-v-8a7a3f5b]{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-lg);font-size:var(--font-size-sm)}.loading-hint[data-v-8a7a3f5b]{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-md);font-size:var(--font-size-sm)}.items-header[data-v-8a7a3f5b]{display:flex;align-items:center;justify-content:space-between}.items-header h3[data-v-8a7a3f5b]{margin:0;font-size:var(--font-size-lg)}.item-row[data-v-8a7a3f5b]{display:grid;grid-template-columns:2fr 1fr auto;gap:var(--spacing-sm);align-items:end}@media (max-width: 900px){.item-row[data-v-8a7a3f5b]{grid-template-columns:1fr}}.site-page[data-v-4567b81a]{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.page-header[data-v-4567b81a]{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.page-header h1[data-v-4567b81a]{margin:0}.page-actions[data-v-4567b81a]{display:flex;gap:var(--spacing-sm)}.filters-card[data-v-4567b81a]{padding:var(--spacing-md)}.filters-grid[data-v-4567b81a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md)}.kpis-grid[data-v-4567b81a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--spacing-md)}.kpi-card[data-v-4567b81a]{padding:var(--spacing-lg);text-align:center}.kpi-value[data-v-4567b81a]{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.kpi-label[data-v-4567b81a]{margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.panel-section[data-v-4567b81a]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.section-header[data-v-4567b81a]{display:flex;align-items:center;justify-content:space-between}.section-header h2[data-v-4567b81a]{margin:0}.modal-form[data-v-4567b81a]{display:flex;flex-direction:column;gap:var(--spacing-md)}.items-header[data-v-4567b81a]{display:flex;align-items:center;justify-content:space-between}.items-header h3[data-v-4567b81a]{margin:0;font-size:var(--font-size-lg)}.reception-item-row[data-v-4567b81a]{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr auto;gap:var(--spacing-sm);align-items:end}.reception-form-grid[data-v-4567b81a]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.reception-items-section[data-v-4567b81a]{margin-top:var(--spacing-lg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.reception-items-header[data-v-4567b81a]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light)}.reception-items-header h3[data-v-4567b81a]{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.reception-items-count[data-v-4567b81a]{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.reception-items-table-wrap[data-v-4567b81a]{overflow-x:auto}.reception-items-table[data-v-4567b81a]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.reception-items-table th[data-v-4567b81a]{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-tertiary, #eef1f6);border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary);white-space:nowrap}.reception-items-table td[data-v-4567b81a]{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}.col-code[data-v-4567b81a]{width:100px}.col-desig[data-v-4567b81a]{min-width:140px}.col-num[data-v-4567b81a]{text-align:right;width:100px;font-variant-numeric:tabular-nums}.cell-mono[data-v-4567b81a]{font-family:var(--font-mono, monospace);font-size:var(--font-size-xs)}.row-alt[data-v-4567b81a]{background:var(--color-bg-secondary)}.row-total[data-v-4567b81a]{background:var(--color-bg-secondary);font-weight:var(--font-weight-semibold)}.row-total td[data-v-4567b81a]{padding:var(--spacing-sm);border-top:2px solid var(--color-border-light)}.qty-input[data-v-4567b81a]{width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:right;font-variant-numeric:tabular-nums}.qty-input[data-v-4567b81a]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #1e56d926}.form-error[data-v-4567b81a]{padding:var(--spacing-sm);border:1px solid #fcc;border-radius:var(--radius-md);background:#fee;color:#c33;font-size:var(--font-size-sm)}.form-actions[data-v-4567b81a]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.stock-site-section[data-v-4567b81a]{margin:var(--spacing-md) 0}.stock-site-section h3[data-v-4567b81a]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.stock-table[data-v-4567b81a]{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.stock-table th[data-v-4567b81a]{text-align:left;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-light);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;color:var(--color-text-secondary)}.stock-table td[data-v-4567b81a]{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}.stock-qty-input[data-v-4567b81a]{width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.stock-qty-input[data-v-4567b81a]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:var(--shadow-focus)}.empty-hint[data-v-4567b81a]{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-lg);font-size:var(--font-size-sm)}.error[data-v-4567b81a]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33}.stock-info[data-v-4567b81a]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.stock-info strong[data-v-4567b81a]{color:var(--color-text-primary)}@media (max-width: 1100px){.reception-item-row[data-v-4567b81a]{grid-template-columns:1fr}}.users-page[data-v-35d99048]{max-width:1400px;margin:0 auto}.page-header[data-v-35d99048]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.page-header h1[data-v-35d99048]{margin:0}.pagination[data-v-35d99048]{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.pagination-info[data-v-35d99048]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.user-form[data-v-35d99048]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-actions[data-v-35d99048]{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.error-message[data-v-35d99048]{padding:var(--spacing-sm);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;font-size:var(--font-size-sm)}.error[data-v-35d99048]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;margin-bottom:var(--spacing-lg)}.user-detail-page[data-v-9d0eae4a]{max-width:1200px;margin:0 auto}.page-header[data-v-9d0eae4a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}.page-header h1[data-v-9d0eae4a]{margin:var(--spacing-sm) 0 0 0}.header-actions[data-v-9d0eae4a]{display:flex;gap:var(--spacing-sm)}.user-detail[data-v-9d0eae4a]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.detail-section[data-v-9d0eae4a]{padding:var(--spacing-lg)}.detail-section h2[data-v-9d0eae4a]{margin:0 0 var(--spacing-lg);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.detail-grid[data-v-9d0eae4a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.detail-item[data-v-9d0eae4a]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-item label[data-v-9d0eae4a]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.detail-item p[data-v-9d0eae4a]{margin:0;font-size:var(--font-size-md);color:var(--color-text-primary)}.user-form[data-v-9d0eae4a]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-actions[data-v-9d0eae4a]{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.error-message[data-v-9d0eae4a]{padding:var(--spacing-sm);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;font-size:var(--font-size-sm)}.error[data-v-9d0eae4a]{padding:var(--spacing-md);background:#fee;border:1px solid #fcc;border-radius:var(--radius-md);color:#c33;margin-bottom:var(--spacing-lg)}.loading[data-v-9d0eae4a]{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}:root{--color-primary: #1e56d9;--color-primary-dark: #1741b0;--color-primary-light: #e8effe;--color-error: #dc2626;--color-error-dark: #b91c1c;--color-success: #059669;--color-warning: #d97706;--color-text-primary: #111827;--color-text-secondary: #6b7280;--color-text-light: #ffffff;--color-text-muted: #9ca3af;--color-bg-primary: #ffffff;--color-bg-secondary: #f1f4f9;--color-bg-tertiary: #e8ecf3;--color-bg-sidebar: #0d1b2a;--color-border-light: #e5e7eb;--color-border-medium: #d1d5db;--color-border-focus: #1e56d9;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 24px rgba(0,0,0,.1);--shadow-xl: 0 16px 40px rgba(0,0,0,.12);--shadow-focus: 0 0 0 3px rgba(30,86,217,.15);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--spacing-3xl: 3rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-full: 999px;--font-family: "Instrument Sans", system-ui, -apple-system, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .85rem;--font-size-base: .9rem;--font-size-md: .95rem;--font-size-lg: 1rem;--font-size-xl: 1.1rem;--font-size-2xl: 1.2rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2rem;--font-size-5xl: 2.25rem;--font-size-6xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.4;--line-height-relaxed: 1.5;--transition-fast: .2s ease;--transition-base: .3s ease;--transition-slow: .6s ease;--z-base: 1;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal: 40;--z-popover: 50;--z-tooltip: 60}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.slide-up{animation:slideUp var(--transition-slow) ease-out}.spin{animation:spin 1s linear infinite}:root{font-family:var(--font-family);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background-color:var(--color-bg-secondary)}body{margin:0;min-height:100vh}#app{min-height:100vh}.modal-form{display:flex;flex-direction:column;gap:14px}.modal-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:6px;margin-top:4px;border-top:1px solid var(--color-border-light)}.error-message{font-size:.8rem;color:var(--color-error);background:#dc26260f;border:1px solid rgba(220,38,38,.18);border-radius:var(--radius-sm);padding:8px 10px;line-height:1.4}
