:root{--color-primary:#3d3a72;--color-primary-hover:#2d2a5a;--color-primary-light:#f0efff;--color-secondary:#e77726;--color-secondary-hover:#d5661a;--color-secondary-light:#fef3e2;--color-accent:#06b6d4;--color-accent-hover:#0891b2;--color-accent-light:#ecfeff;--color-success:#059669;--color-warning:#d97706;--color-error:#dc2626;--color-info:#0284c7;--color-success-alpha:rgba(5,150,105,0.8);--color-warning-alpha:rgba(217,119,6,0.8);--color-error-alpha:rgba(220,38,38,0.8);--color-secondary-alpha:rgba(231,119,38,0.8);--color-success-light:#d1fae5;--color-warning-light:#fef3c7;--color-error-light:#fee2e2;--color-info-light:#dbeafe;--border-success:#10b981;--border-warning:#f59e0b;--border-error:#ef4444;--border-info:#3b82f6;--surface-primary:#ffffff;--surface-secondary:#f9fafb;--surface-tertiary:#f3f4f6;--surface-elevated:#ffffff;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-border-dark:#d1d5db;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-inverse:#ffffff;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--radius-sm:0.25rem;--radius-md:0.2rem;--radius-lg:0.3rem;--radius-xl:0.75rem;--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--shadow-xl:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--modal-backdrop:rgba(0,0,0,0.5);--modal-max-width:32rem;--modal-max-width-lg:42rem;--modal-max-width-xl:56rem}.btn-base{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25}.btn-base:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn-base:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary-standard{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25;background-color:var(--color-primary);color:var(--text-inverse);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-primary-standard:hover{background-color:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary-standard:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary-standard:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary-small{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-md);line-height:1.25;background-color:var(--color-primary);color:var(--text-inverse);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-primary-small:hover{background-color:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary-small:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary-small:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary-standard{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25;background-color:var(--color-secondary);color:var(--text-inverse);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-secondary-standard:hover{background-color:var(--color-secondary-hover);transform:translateY(-1px)}.btn-secondary-standard:focus{outline:2px solid var(--color-secondary);outline-offset:2px}.btn-secondary-standard:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary-small{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-md);line-height:1.25;background-color:var(--color-secondary);color:var(--text-inverse);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-secondary-small:hover{background-color:var(--color-secondary-hover);transform:translateY(-1px)}.btn-secondary-small:focus{outline:2px solid var(--color-secondary);outline-offset:2px}.btn-secondary-small:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline-standard{border:1px solid var(--color-primary);cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25;background-color:transparent;color:var(--color-primary);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-outline-standard:hover{background-color:var(--color-primary);color:var(--text-inverse);transform:translateY(-1px)}.btn-outline-standard:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn-outline-standard:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline-small{border:1px solid var(--color-primary);cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-md);line-height:1.25;background-color:transparent;color:var(--color-primary);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-outline-small:hover{background-color:var(--color-primary);color:var(--text-inverse);transform:translateY(-1px)}.btn-outline-small:focus{outline:2px solid var(--color-primary);outline-offset:2px}.btn-outline-small:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-success-standard{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25;background-color:var(--color-success);color:var(--text-inverse);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-success-standard:hover{background-color:#047857;transform:translateY(-1px)}.btn-success-standard:focus{outline:2px solid var(--color-success);outline-offset:2px}.btn-success-standard:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-success-small{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-md);line-height:1.25;background-color:var(--color-success);color:var(--text-inverse);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-success-small:hover{background-color:#047857;transform:translateY(-1px)}.btn-success-small:focus{outline:2px solid var(--color-success);outline-offset:2px}.btn-success-small:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost-standard{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-lg);line-height:1.25;background-color:transparent;color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem}.btn-ghost-standard:hover{background-color:var(--surface-tertiary);color:var(--text-primary)}.btn-ghost-small{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-md);line-height:1.25;background-color:transparent;color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.btn-ghost-small:hover{background-color:var(--surface-tertiary);color:var(--text-primary)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--modal-backdrop);backdrop-filter:blur(4px);z-index:50;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);animation:fadeIn .2s ease-out}.modal-container{background-color:var(--surface-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:var(--modal-max-width);max-height:90vh;overflow:hidden;animation:slideIn .3s ease-out}.modal-container-lg{max-width:var(--modal-max-width-lg)}.modal-container-xl{max-width:var(--modal-max-width-xl)}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;background-color:var(--surface-secondary)}.modal-title{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0;line-height:1.5}.modal-close-button{border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:500;border-radius:var(--radius-sm);line-height:1.25;background-color:transparent;font-size:.75rem;padding:var(--spacing-xs);width:2rem;height:2rem;color:var(--text-muted)}.modal-close-button:hover{color:var(--text-primary);background-color:var(--color-error-light)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;max-height:calc(90vh - 8rem)}.modal-body-no-padding{padding:0}.modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);background-color:var(--surface-secondary);display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm)}.modal-footer-start{justify-content:flex-start}.modal-footer-center{justify-content:center}.modal-footer-between{justify-content:space-between}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:640px){.modal-backdrop{padding:var(--spacing-sm);align-items:flex-start;padding-top:var(--spacing-lg)}.modal-container{max-width:100%;max-height:calc(100vh - 2rem)}.modal-body,.modal-footer,.modal-header{padding:var(--spacing-md)}}.status-indicator{font-weight:500;font-size:.875rem;line-height:1.25;display:inline-flex;align-items:center;gap:var(--spacing-xs)}.status-success{color:var(--color-success)}.status-warning{color:var(--color-warning)}.status-error{color:var(--color-error)}.status-info{color:var(--color-info)}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;letter-spacing:.025em;display:inline-flex;align-items:center;gap:var(--spacing-xs)}.status-badge.status-success{background-color:var(--color-success-light);color:var(--color-success)}.status-badge.status-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.status-badge.status-error{background-color:var(--color-error-light);color:var(--color-error)}.status-badge.status-info{background-color:var(--color-info-light);color:var(--color-info)}.surface-primary{background-color:var(--surface-primary)}.surface-secondary{background-color:var(--surface-secondary)}.surface-tertiary{background-color:var(--surface-tertiary)}.surface-elevated{background-color:var(--surface-elevated);box-shadow:var(--shadow-md)}.surface-info{background-color:var(--color-info-light);color:var(--color-info)}.surface-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.surface-error{background-color:var(--color-error-light);color:var(--color-error)}.select-dropdown{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 6px center;background-repeat:no-repeat;background-size:10px}.card-standard{background-color:var(--surface-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);transition:box-shadow .2s ease,transform .1s ease}.card-standard:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-header{background-color:var(--surface-secondary);border-bottom:1px solid var(--color-border);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:calc(-1 * var(--spacing-lg)) calc(-1 * var(--spacing-lg)) var(--spacing-lg) calc(-1 * var(--spacing-lg))}.text-heading{color:var(--text-primary);font-weight:600;line-height:1.25}.text-body{color:var(--text-secondary);line-height:1.5}.text-muted{color:var(--text-muted);line-height:1.5}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-accent{color:var(--color-accent)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.filter-badge{padding:.125rem .5rem;border-radius:.25rem;font-size:.6875rem;border-width:1px;border-style:solid;transition:background-color .2s ease;cursor:pointer;display:inline-flex;align-items:center;font-weight:500}.filter-badge-success{background-color:var(--color-success-light);color:var(--color-success);border-color:#86efac}.filter-badge-success:hover{background-color:#bbf7d0}.filter-badge-error{background-color:var(--color-error-light);color:var(--color-error);border-color:#fca5a5}.filter-badge-error:hover{background-color:#fecaca}.filter-badge-warning{background-color:var(--color-warning-light);color:var(--color-warning);border-color:#fde047}.filter-badge-warning:hover{background-color:#fef08a}.filter-badge-primary{background-color:var(--color-primary-light);color:var(--color-primary);border-color:#c4b5fd}.filter-badge-primary:hover{background-color:#ddd6fe}.filter-badge-info{background-color:var(--color-info-light);color:var(--color-info);border-color:#93c5fd}.filter-badge-info:hover{background-color:#bfdbfe}.status-error-bg{background-color:var(--color-error)}.status-success-bg{background-color:var(--color-success)}.status-warning-bg{background-color:var(--color-warning)}.status-info-bg{background-color:var(--color-info)}.bg-error{background-color:var(--color-error)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-info{background-color:var(--color-info)}.surface-success{background-color:var(--color-success-light)}.border-primary{border-color:var(--color-primary)}.form-control-standard{background-color:var(--surface-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;line-height:1.25;color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-control-standard:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-control-standard::-moz-placeholder{color:var(--text-muted)}.form-control-standard::placeholder{color:var(--text-muted)}.loading-spinner{display:inline-block;width:1rem;height:1rem;border-radius:50%;border:2px solid var(--color-border-light);border-top-color:var(--color-primary);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2}.btn-ghost-small,.btn-ghost-standard,.btn-outline-small,.btn-outline-standard,.btn-primary-small,.btn-primary-standard,.btn-secondary-small,.btn-secondary-standard,.card-standard,.form-control-standard,.modal-container,.status-badge,.theme-transition{transition:color .2s ease,background-color .2s ease,border-color .2s ease}