:root{--background:#ffffff;--foreground:#171717;--primary-color:#3b82f6;--primary-hover:#2563eb;--secondary-color:#1d4ed8;--primary-gradient:linear-gradient(135deg,#2563eb,#1d4ed8);--primary-soft:#eff6ff;--primary-ring:rgba(59,130,246,0.16);--accent-color:#f59e0b;--success-color:#10b981;--warning-color:#f59e0b;--error-color:#ef4444;--text-primary:#1f2937;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--border-color:#e5e7eb;--border-strong:#d1d5db;--bg-light:#f9fafb;--bg-muted:#f3f4f6;--bg-white:#ffffff;--surface-color:#ffffff;--surface-subtle:#fbfdff;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--shadow:0 1px 3px 0 rgba(0,0,0,0.1),0 1px 2px 0 rgba(0,0,0,0.06);--shadow-sm:0 1px 2px rgba(15,23,42,0.06);--shadow-md:0 8px 24px rgba(15,23,42,0.08);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-focus:0 0 0 3px var(--primary-ring);--control-font-size:14px;--control-font-size-lg:10px;--control-font-size-sm:12px;--control-font-size-xs:10px;--control-font-weight:500;--control-font-weight-bold:700}@media(prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}*{box-sizing:border-box;padding:0;margin:0}body{font-family:var(--font-inter),var(--font-roboto),system-ui,sans-serif;line-height:1.6;color:var(--foreground);background:var(--background);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}.loading{opacity:.6;pointer-events:none}.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}.error-message{color:var(--error-color);font-size:.875rem;display:block;font-weight:500;text-align:right}.ant-card,.ant-input,.ant-pagination-item,.ant-pagination-options .ant-select-selector,.ant-select-selector,.ant-table{border-color:var(--border-color)}.auth-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--bg-light);padding:1rem}.auth-page .auth-container{width:100%;max-width:450px;background-color:var(--bg-white);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}.auth-form{padding:2.5rem}.auth-form h1{text-align:center;color:var(--text-primary);margin-bottom:.5rem;font-size:1.875rem;font-weight:700}.auth-form .auth-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem;font-size:.875rem}.auth-form .form-group{margin-bottom:1.5rem}.auth-form .form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-weight:500;font-size:.875rem}.auth-form .form-group .form-control{width:100%;padding:.875rem 1rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .2s ease;background-color:var(--bg-white)}.auth-form .form-group .form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(59,130,246,.1)}.auth-form .form-group .form-control:disabled{background-color:var(--bg-light);cursor:not-allowed;opacity:.7}.auth-form .form-group .form-control::placeholder{color:var(--text-tertiary)}.auth-form .form-group .form-control.error,.auth-form .form-group .form-control.error:focus{border-color:var(--error-color);box-shadow:0 0 0 3px rgba(239,68,68,.1)}.auth-form .form-group .password-input-container{position:relative;display:flex;align-items:center}.auth-form .form-group .password-input-container .form-control{padding-right:3rem}.auth-form .form-group .password-input-container .password-toggle-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.auth-form .form-group .password-input-container .password-toggle-btn:hover{color:var(--text-secondary);background:none}.auth-form .form-group .password-input-container .password-toggle-btn:focus{outline:none;color:var(--primary-color);background:none}.auth-form .form-group .password-input-container .password-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.auth-form .form-group .password-input-container .password-toggle-btn svg{width:20px;height:20px}.auth-form .form-group .field-error{display:block;color:var(--error-color);font-size:.75rem;margin-top:.25rem}.auth-form .checkbox-group{margin-bottom:1.5rem}.auth-form .checkbox-group .checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:.875rem;color:var(--text-secondary)}.auth-form .checkbox-group .checkbox-label input[type=checkbox]{margin-right:.5rem;width:1rem;height:1rem;accent-color:var(--primary-color)}.auth-form .btn-primary{width:100%;padding:.875rem 1rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:1.5rem;position:relative;display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-inter)}.auth-form .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,99,235,.3)}.auth-form .btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.auth-form .btn-primary .button-icon{font-size:1.125rem}.auth-form .btn-primary .loading-spinner{width:16px;height:16px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.auth-form .btn-primary.loading{pointer-events:none}.auth-form .btn-secondary{width:100%;padding:.875rem 1rem;background-color:rgba(0,0,0,0);color:var(--text-secondary);border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem}.auth-form .btn-secondary:hover:not(:disabled){background-color:var(--bg-light);border-color:var(--text-secondary);color:var(--text-primary)}.auth-form .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.auth-form .btn-secondary:active:not(:disabled){transform:translateY(1px)}.auth-form .error-message{background-color:#fef2f2;border:1px solid #fecaca;color:var(--error-color);border-radius:8px}.auth-form .error-message,.auth-form .success-message{padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.875rem;text-align:center}.auth-form .success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;color:var(--success-color);border-radius:8px}.auth-form .auth-links{text-align:center;font-size:.875rem}.auth-form .auth-links a{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s ease}.auth-form .auth-links a:hover{color:var(--primary-hover);text-decoration:underline}.auth-form .auth-links .divider{margin:0 .5rem;color:var(--text-tertiary)}.auth-form .auth-links span{color:var(--text-secondary)}.success-state{text-align:center;padding:1rem 0}.success-state .success-icon{width:4rem;height:4rem;background-color:var(--success-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.5rem}.success-state .success-message{background:none;border:none;color:var(--text-primary);font-size:1rem;margin-bottom:.5rem;padding:0}.success-state .success-message strong{color:var(--primary-color)}.success-state .success-subtitle{color:var(--text-secondary);font-size:.875rem;margin-bottom:2rem;line-height:1.5}.error-state{text-align:center;padding:1rem 0}.error-state .error-icon{width:4rem;height:4rem;background-color:var(--error-color);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1.5rem}.error-state .error-message{background:none;border:none;color:var(--text-primary);font-size:1rem;margin-bottom:.5rem;padding:0}.error-state .error-subtitle{color:var(--text-secondary);font-size:.875rem;margin-bottom:2rem;line-height:1.5}.error-state .error-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.error-state .error-actions .btn-primary,.error-state .error-actions .btn-secondary{margin-bottom:0}.loading-state{text-align:center;padding:2rem 0}.loading-state .loading-spinner{width:3rem;height:3rem;border-top:3px solid var(--border-color);border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.loading-state h1{color:var(--text-primary);margin-bottom:.5rem}.loading-state p{color:var(--text-secondary);font-size:.875rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media(max-width:640px){.auth-page{padding:.5rem}.auth-page .auth-container{max-width:100%;border-radius:0;box-shadow:none}.auth-form{padding:1.5rem}.auth-form h1{font-size:1.5rem}.auth-form .btn-primary{padding:.75rem 1rem}}@media(max-width:480px){.auth-form{padding:1rem}.auth-form .form-group{margin-bottom:1rem}.auth-form .btn-primary,.auth-form .form-group .form-control{padding:.75rem}}:root{--font-inter:"Inter","Segoe UI",system-ui,sans-serif;--font-roboto:"Roboto","Segoe UI",system-ui,sans-serif}