*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}:root{--color-primary: #e8590c;--color-primary-hover: #d9480f;--color-primary-light: #fff4e6;--color-success: #2f9e44;--color-success-light: #ebfbee;--color-error: #e03131;--color-error-light: #fff5f5;--color-warning: #f08c00;--color-warning-light: #fff9db;--color-info: #1971c2;--color-info-light: #e7f5ff;--color-bg: #f8f9fa;--color-surface: #ffffff;--color-border: #dee2e6;--color-border-light: #e9ecef;--color-text: #212529;--color-text-secondary: #6c757d;--color-text-muted: #adb5bd;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 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);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal-overlay: 900;--z-modal: 1000;--z-toast: 1100}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-bg)}body.modal-open{overflow:hidden}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;color:var(--color-text)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-center{text-align:center}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:.625rem 1.25rem;font-size:var(--font-size-sm);font-weight:600;line-height:1;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:#c92a2a}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.btn-sm{padding:.375rem .75rem;font-size:var(--font-size-xs)}.btn-lg{padding:.875rem 1.75rem;font-size:var(--font-size-base)}.btn-block{width:100%}.form-group{margin-bottom:var(--space-lg);position:relative}.form-group label{display:block;font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--space-xs);color:var(--color-text)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=number],.form-group input[type=url],.form-group textarea,.form-group select{width:100%;padding:.625rem .875rem;font-size:var(--font-size-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #e8590c1a}.form-group textarea{resize:vertical;min-height:80px}.form-group input.input-error,.form-group textarea.input-error,.form-group select.input-error{border-color:var(--color-error);box-shadow:0 0 0 3px #e031311a}.field-error{display:none;font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-xs)}.form-check{display:flex;align-items:center;gap:var(--space-sm)}.form-check input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.form-check label{margin-bottom:0;cursor:pointer}.form-group input[type=file]{padding:var(--space-sm);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);cursor:pointer}.form-group input[type=file]::file-selector-button{padding:.375rem .75rem;margin-right:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.form-group input[type=file]::file-selector-button:hover{background:var(--color-bg)}.toast-container{position:fixed;top:var(--space-md);right:var(--space-md);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-sm);max-width:380px;width:calc(100% - var(--space-xl))}.toast{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:4px solid var(--color-info);opacity:0;transform:translate(100%);transition:all var(--transition-base)}.toast--visible{opacity:1;transform:translate(0)}.toast--hiding{opacity:0;transform:translate(100%)}.toast--success{border-left-color:var(--color-success)}.toast--error{border-left-color:var(--color-error)}.toast--warning{border-left-color:var(--color-warning)}.toast--info{border-left-color:var(--color-info)}.toast-icon{font-size:var(--font-size-lg);flex-shrink:0}.toast--success .toast-icon{color:var(--color-success)}.toast--error .toast-icon{color:var(--color-error)}.toast--warning .toast-icon{color:var(--color-warning)}.toast--info .toast-icon{color:var(--color-info)}.toast-message{flex:1;font-size:var(--font-size-sm);color:var(--color-text)}.toast-close{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.toast-close:hover{color:var(--color-text)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-overlay);background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-md);opacity:0;transition:opacity var(--transition-base)}.modal-overlay--visible{opacity:1}.modal-overlay--hiding{opacity:0}.modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;transform:scale(.95) translateY(10px);transition:transform var(--transition-base)}.modal-overlay--visible .modal{transform:scale(1) translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--color-border-light)}.modal-title{font-size:var(--font-size-lg);font-weight:700}.modal-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--color-text)}.modal-body{padding:var(--space-lg)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-sm);padding:var(--space-lg);border-top:1px solid var(--color-border-light)}.loading-state,.empty-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-2xl);text-align:center;color:var(--color-text-secondary)}.loading-spinner{width:36px;height:36px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:var(--space-md)}@keyframes spin{to{transform:rotate(360deg)}}.empty-state-icon,.error-state-icon{font-size:3rem;margin-bottom:var(--space-md)}.empty-state p,.error-state p{font-size:var(--font-size-sm);max-width:300px}.error-state .retry-btn{margin-top:var(--space-md)}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin-top:var(--space-lg)}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--space-sm);font-size:var(--font-size-sm);font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled):not(.pagination-btn--active){background:var(--color-bg);border-color:var(--color-primary)}.pagination-btn--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-ellipsis{padding:0 var(--space-xs);color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);line-height:1.5}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-error{background:var(--color-error-light);color:var(--color-error)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-info{background:var(--color-info-light);color:var(--color-info)}.badge-neutral{background:var(--color-bg);color:var(--color-text-secondary)}@media (max-width: 768px){:root{--font-size-3xl: 1.5rem;--font-size-2xl: 1.25rem}.container{padding:0 var(--space-sm)}.modal{max-width:100%;margin:var(--space-sm)}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}:root{--color-accent: var(--color-primary);--font-body: var(--font-family);--font-body-ar: "Noto Sans Arabic", "Noto Kufi Arabic", "Segoe UI", Tahoma, Arial, sans-serif}[dir=rtl] body,[dir=rtl] button,[dir=rtl] input,[dir=rtl] textarea,[dir=rtl] select{font-family:var(--font-body-ar)}[data-theme=elegant]{--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08)}[data-theme=elegant] .section-title,[data-theme=elegant] .list-heading,[data-theme=elegant] .detail-title,[data-theme=elegant] .cat-tile-name,[data-theme=elegant] .topbar-name{font-family:Georgia,Times New Roman,serif;letter-spacing:.02em}[data-theme=playful]{--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--shadow-sm: 0 3px 0 rgba(0, 0, 0, .12);--shadow-md: 0 5px 0 rgba(0, 0, 0, .15)}[data-theme=playful] .chip{border-width:2px;font-weight:700}[data-theme=minimal]{--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--shadow-sm: none;--shadow-md: none;--shadow-lg: none}[data-theme=dark]{--color-bg: #121417;--color-surface: #1c1f24;--color-text: #f2f3f5;--color-text-secondary: #b7bcc4;--color-text-muted: #8a9099;--color-border-light: #2a2e35}
