.login-mfa-step .login-mfa-form .form-group{margin-bottom:1.5rem}.login-mfa-step .login-mfa-form .form-group label{display:block;font-size:.875rem;font-weight:600;color:#0f172a;margin-bottom:.5rem}.login-mfa-step .login-mfa-form .mfa-code-input{display:block;width:100%;min-height:52px;padding:12px 14px;font-size:1.35rem;font-weight:600;letter-spacing:.4em;text-align:center;line-height:1.4;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .2s,box-shadow .2s;background:#fff;color:#0f172a;box-sizing:border-box;font-variant-numeric:tabular-nums}.login-mfa-step .login-mfa-form .mfa-code-input:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--dv-shadow-focus)}.login-mfa-step .login-mfa-form .mfa-code-input::placeholder{color:#cbd5e1;letter-spacing:.35em;font-weight:500}.login-mfa-step .login-mfa-form .mfa-code-input:disabled{background:#f8fafc;cursor:not-allowed}.login-mfa-step .login-mfa-form .login-btn{width:100%;padding:12px 16px;font-size:1rem;font-weight:600;color:#fff;background:var(--primary-color);border:none;border-radius:10px;cursor:pointer;transition:background .2s}.login-mfa-step .login-mfa-form .login-btn:hover:not(:disabled){background:var(--primary-hover)}.login-mfa-step .login-mfa-form .login-btn:disabled{opacity:.7;cursor:not-allowed}.login-mfa-step .login-mfa-form .login-mfa-back{display:block;width:100%;margin-top:1rem;padding:10px;background:none;border:none;color:var(--primary-color);font-size:.875rem;font-weight:500;cursor:pointer;text-align:center;transition:color .2s}.login-mfa-step .login-mfa-form .login-mfa-back:hover:not(:disabled){color:var(--primary-hover);text-decoration:underline}.login-mfa-step .login-mfa-form .login-mfa-back:disabled{opacity:.6;cursor:not-allowed}
.login-page{min-height:100vh;display:flex;background:#fff}.login-left{flex:1;background:linear-gradient(to right, #f0f7ff 0%, #faf8ff 40%, #fff8f2 80%, #fff5ee 100%);display:flex;align-items:center;justify-content:center;padding:3rem 2.5rem}.login-left-content{max-width:420px;width:100%}.login-illustration{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.login-illus-card{display:flex;align-items:center;gap:.75rem;background:rgba(255,255,255,.6);border:1px solid rgba(226,232,240,.5);border-radius:var(--dv-radius-lg);padding:1rem 1.25rem;color:#475569;font-size:.9rem;font-weight:500;box-shadow:0 1px 2px rgba(0,0,0,.03);transition:box-shadow .2s}.login-illus-card svg{flex-shrink:0;color:#64748b}.login-illus-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.05)}.login-tagline{font-size:.875rem;color:#64748b;margin:0 0 .5rem}.login-benefit-title{font-size:1.75rem;font-weight:700;color:#475569;line-height:1.3;margin:0 0 .75rem;font-family:var(--dv-font-heading);display:flex;flex-direction:column;gap:.375rem}.login-benefit-title-line{display:block}.login-benefit-desc{font-size:1rem;color:#64748b;line-height:1.6;margin:0}.login-right{flex:1;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border-left:1px solid #e2e8f0;position:relative}.login-form-wrap{width:100%;max-width:440px;background:#fff;border-radius:16px;padding:2.25rem 2rem;box-shadow:var(--dv-shadow-card),0 2px 8px rgba(0,0,0,.04);border:1px solid rgba(226,232,240,.8)}.login-form-wrap--mfa .login-subtitle{margin-bottom:1.5rem}.login-mfa-icon-wrap{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;background:rgba(71,99,234,.1);color:var(--primary-color);margin-bottom:1.25rem}.login-welcome{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 .25rem;font-family:var(--dv-font-heading)}.login-subtitle{font-size:.9375rem;color:#64748b;margin:0 0 2rem}.login-form .form-group{margin-bottom:1.5rem}.login-form .form-group label{display:block;font-size:.875rem;font-weight:600;color:#0f172a;margin-bottom:.5rem}.login-form .input-wrapper{position:relative;display:block;width:100%}.login-form .input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none;z-index:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;overflow:hidden}.login-form input{display:block;width:100%;min-height:44px;padding:12px 14px 12px 72px;font-size:15px;line-height:1.4;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .2s,box-shadow .2s;background:#fff;color:#0f172a;box-sizing:border-box;position:relative;z-index:1}.login-form input:focus{outline:none;border-color:var(--primary-color);box-shadow:var(--dv-shadow-focus)}.login-form input::placeholder{color:#94a3b8}.login-form input:disabled{background:#f8fafc;cursor:not-allowed}.login-form .password-input input{padding-right:52px}.login-form .password-input .toggle-password{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;color:#94a3b8;z-index:0}.login-form .password-input .toggle-password:hover{color:#64748b}.login-form .forgot-password{text-align:right;margin-bottom:1.25rem}.login-form .forgot-password a{color:var(--primary-color);font-size:.875rem;text-decoration:none;font-weight:500}.login-form .forgot-password a:hover{text-decoration:underline}.login-form .login-btn{width:100%;padding:12px 16px;font-size:1rem;font-weight:600;color:#fff;background:var(--primary-color);border:none;border-radius:10px;cursor:pointer;transition:background .2s}.login-form .login-btn:hover:not(:disabled){background:var(--primary-hover)}.login-form .login-btn:disabled{opacity:.7;cursor:not-allowed}.login-form .login-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0 1rem;font-size:.8125rem;color:#94a3b8}.login-form .login-divider::before,.login-form .login-divider::after{content:"";flex:1;height:1px;background:#e2e8f0}.login-form .social-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.login-form .social-btn{flex:1;min-width:100px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:10px 14px;font-size:.875rem;font-weight:500;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:border-color .2s,background .2s}.login-form .social-btn:hover:not(:disabled){border-color:#cbd5e1;background:#f8fafc}.login-form .social-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer-links{margin-top:1.5rem;text-align:center}.login-footer-links .go-back{color:var(--primary-color);font-size:.875rem;text-decoration:none;font-weight:500}.login-footer-links .go-back:hover{text-decoration:underline}.login-powered{position:absolute;bottom:1.5rem;left:0;right:0;text-align:center;margin:0;font-size:.75rem;color:#94a3b8}@media(max-width: 900px){.login-page{flex-direction:column}.login-left{display:none}.login-right{flex:1;width:100%;min-height:100vh;border-left:none;border-top:none;padding:2rem 1.5rem;justify-content:center}.login-form-wrap{max-width:100%}}@media(max-width: 480px){.login-illus-card{width:100%}.social-buttons{flex-direction:column}.social-btn{min-width:100%}}
.whatsapp-support {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  line-height: 0;
  border-radius: 50%;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
  transition: box-shadow 0.2s ease, filter 0.2s ease;
}

.whatsapp-support:hover {
  filter: brightness(1.06);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
}

.whatsapp-support__icon {
  display: block;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  shape-rendering: geometricPrecision;
}

@media (max-width: 640px) {
  .whatsapp-support {
    bottom: 16px;
    right: 16px;
  }

  .whatsapp-support__icon {
    width: 48px;
    height: 48px;
  }
}

:root{--dv-font-sans: "Google Sans Flex", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--dv-font-body: var(--dv-font-sans);--dv-font-heading: var(--dv-font-sans);--dv-font-weight-body: 500;--dv-font-weight-medium: 500;--dv-font-weight-semibold: 600;--dv-font-weight-heading: 700;--dv-font-stretch-heading: semi-expanded;--dv-font-stretch-body: normal;--dv-font-variation-body: "wdth" 100;--dv-font-variation-heading: "wdth" 112;--dv-letter-spacing-body: 0.018em;--dv-letter-spacing-ui: 0.012em;--dv-letter-spacing-heading: -0.02em;--dv-text-body-lg: 1.1875rem;--dv-text-body-md: 1.0625rem;--dv-text-body-sm: 0.9375rem;--dv-leading-body-md: 1.7;--dv-leading-heading: 1.25;--dv-radius-sm: 0.5rem;--dv-radius-md: 0.625rem;--dv-radius-lg: 0.875rem;--dv-radius-xl: 1rem;--dv-radius-2xl: 1.5rem;--dv-radius-dialog: var(--dv-radius-2xl);--dv-radius-full: 9999px;--dv-shadow-sm: 0 1px 2px rgb(15 23 42 / 0.06);--dv-shadow-card: 0 10px 24px rgb(15 23 42 / 0.08);--dv-shadow-elevated: 0 18px 40px rgb(15 23 42 / 0.12);--dv-shadow-focus: 0 0 0 2px rgba(71, 99, 234, 0.14);--motion-duration-press: 0.14s;--motion-duration-fast: 0.16s;--motion-duration-ui: 0.2s;--motion-duration-dropdown: 0.22s;--motion-duration-modal: 0.28s;--motion-ease-out: cubic-bezier(0.23, 1, 0.32, 1);--motion-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);--dv-ease: cubic-bezier(0.2, 0.8, 0.2, 1);--dv-duration: 0.2s;--dv-selection-bg: rgb(71 99 234 / 0.22)}:root{--primary-color: #4763ea;--primary-hover: #3751d8;--accent: #e8920a;--foreground: #1c2636;--text-dark: #1e293b;--text-primary: #1e293b;--text-secondary: #374558;--text-muted: #64748b;--text-tertiary: #8496ab;--bg-light: #f5f7fa;--bg-white: #ffffff;--surface-subtle: #f2f4f8;--surface-elevated: #ffffff;--secondary-color: #f0f4f8;--border-color: #dde2ea;--success: #22a87b;--success-subtle: #edfaf4;--warning: #e8920a;--warning-subtle: #fff8eb;--error: #d4382a;--error-subtle: #fff5f5;--info: #1179e0;--info-subtle: #f0f7ff;--font-family-body: var(--dv-font-body);--font-family-heading: var(--dv-font-heading);--bs-font-sans-serif: var(--dv-font-body);--bs-body-font-family: var(--dv-font-body);--bs-primary: #4763ea;--bs-primary-rgb: 71, 99, 234}#root{font-family:var(--dv-font-body);font-weight:var(--dv-font-weight-body);font-size:var(--dv-text-body-md);line-height:var(--dv-leading-body-md);letter-spacing:var(--dv-letter-spacing-body);font-optical-sizing:auto;font-variation-settings:var(--dv-font-variation-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--dv-font-body);font-weight:var(--dv-font-weight-body);font-stretch:var(--dv-font-stretch-body);font-size:var(--dv-text-body-md);line-height:var(--dv-leading-body-md);letter-spacing:var(--dv-letter-spacing-body);font-optical-sizing:auto;font-variation-settings:var(--dv-font-variation-body);background:var(--bg-light);color:var(--text-dark)}h1,h2,h3,h4,h5,h6{font-family:var(--dv-font-heading);font-weight:var(--dv-font-weight-heading);font-stretch:var(--dv-font-stretch-heading);letter-spacing:var(--dv-letter-spacing-heading);line-height:var(--dv-leading-heading);font-variation-settings:var(--dv-font-variation-heading);color:var(--text-dark)}::selection{background:var(--dv-selection-bg);color:var(--text-dark)}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:16px;background:var(--bg-light)}.loading-screen .spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.loading-screen p{color:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}input,select,textarea,button{font-family:inherit}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--primary-color) !important;box-shadow:var(--dv-shadow-focus) !important}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-light)}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.btn-primary,.btn-secondary,.btn-destructive,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:var(--dv-radius-lg);font-family:inherit;font-size:var(--dv-text-body-sm);font-weight:var(--dv-font-weight-semibold);letter-spacing:var(--dv-letter-spacing-ui);white-space:nowrap;cursor:pointer;text-decoration:none;transition:background var(--motion-duration-ui) var(--motion-ease-out),border-color var(--motion-duration-ui) var(--motion-ease-out),box-shadow var(--motion-duration-ui) var(--motion-ease-out),opacity var(--motion-duration-ui) var(--motion-ease-out)}.btn-primary:disabled,.btn-primary[disabled],.btn-secondary:disabled,.btn-secondary[disabled],.btn-destructive:disabled,.btn-destructive[disabled],.btn-ghost:disabled,.btn-ghost[disabled]{opacity:.5;pointer-events:none;cursor:not-allowed}.btn-primary.btn-sm,.btn-secondary.btn-sm,.btn-destructive.btn-sm,.btn-ghost.btn-sm{min-height:36px;padding:0 12px;font-size:var(--dv-text-caption, 0.8125rem)}.btn-primary.btn-lg,.btn-secondary.btn-lg,.btn-destructive.btn-lg,.btn-ghost.btn-lg{min-height:44px;padding:0 24px}.btn-primary.btn-icon,.btn-secondary.btn-icon,.btn-destructive.btn-icon,.btn-ghost.btn-icon{min-height:40px;min-width:40px;padding:0;border-radius:var(--dv-radius-md)}.btn-primary{background:var(--primary-color);color:#fff;border:1px solid rgba(0,0,0,.1)}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:active{background:var(--primary-hover)}.btn-secondary{background:var(--bg-white);color:var(--text-dark);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--surface-subtle);border-color:#c5cdd8}.btn-destructive{background:var(--error);color:#fff;border:1px solid rgba(0,0,0,.08)}.btn-destructive:hover{background:#b82d21}.btn-ghost{background:rgba(0,0,0,0);color:var(--text-dark);border:none}.btn-ghost:hover{background:var(--surface-subtle)}table{width:100%;border-collapse:collapse}table th{background:#f8f9fb;font-size:var(--dv-text-label, 0.75rem);font-weight:600;text-transform:uppercase;letter-spacing:var(--dv-letter-spacing-label, 0.05em);color:var(--text-muted);padding:10px 16px;border-bottom:1px solid var(--border-color);white-space:nowrap;text-align:left}table td{font-size:var(--dv-text-body-sm);padding:10px 16px;border-bottom:1px solid rgba(221,226,234,.5);vertical-align:middle}table tbody tr:hover{background:rgba(242,244,248,.5)}table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;border-radius:var(--dv-radius-full);font-size:var(--dv-text-label, 0.75rem);font-weight:600;padding:3px 8px;letter-spacing:.04em;line-height:1.4}.badge-success{background:var(--success-subtle);color:var(--success)}.badge-warning{background:var(--warning-subtle);color:var(--warning)}.badge-error{background:var(--error-subtle);color:var(--error)}.badge-info{background:var(--info-subtle);color:var(--info)}.badge-default{background:var(--surface-subtle);color:var(--text-dark);border:1px solid var(--border-color)}@keyframes modal-enter{from{opacity:0;transform:scale(0.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-overlay{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;background:rgba(28,38,54,.45) !important;display:flex !important;align-items:center !important;justify-content:center !important;z-index:9999 !important;padding:20px !important}.modal{background:var(--bg-white) !important;border-radius:var(--dv-radius-dialog) !important;animation:modal-enter var(--motion-duration-modal, 0.28s) var(--motion-ease-out, cubic-bezier(0.23, 1, 0.32, 1)) both !important;width:100% !important;max-width:520px !important;max-height:90vh !important;overflow-y:auto !important;position:relative !important;z-index:10000 !important;box-shadow:var(--dv-shadow-elevated) !important}.modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal .modal-header h3{font-size:var(--dv-text-body-lg);font-weight:var(--dv-font-weight-semibold);letter-spacing:var(--dv-letter-spacing-heading);color:var(--text-dark);margin:0}.modal .modal-header .close-btn{width:32px;height:32px;border-radius:var(--dv-radius-lg);border:none;background:var(--bg-light);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal .modal-header .close-btn:hover{background:var(--border-color);color:var(--text-dark)}.ant-btn,.ant-input,.ant-input-affix-wrapper,.ant-select,.ant-select-dropdown,.ant-modal,.ant-modal-confirm-body,.ant-picker,.ant-picker-dropdown,.ant-steps,.ant-table,.ant-form,.ant-tabs,.ant-spin-nested-loading,.ant-notification,.ant-message,.ant-tooltip,.ant-popover{font-family:var(--dv-font-body);font-variation-settings:var(--dv-font-variation-body)}:root{--ant-color-primary: #4763ea;--ant-color-primary-hover: #3751d8;--ant-color-primary-active: #3751d8;--ant-color-error: #d4382a;--ant-color-success: #22a87b;--ant-color-warning: #e8920a;--ant-color-info: #1179e0;--ant-color-border: #dde2ea;--ant-color-bg-container: var(--bg-white);--ant-color-bg-elevated: var(--bg-white);--ant-border-radius: 10px;--ant-border-radius-lg: 14px}.ant-input:focus,.ant-input-focused,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused{border-color:var(--primary-color) !important;box-shadow:var(--dv-shadow-focus) !important;outline:none !important}.ant-btn-primary{background:var(--primary-color) !important;border-color:var(--primary-color) !important}.ant-btn-primary:hover,.ant-btn-primary:focus{background:var(--primary-hover) !important;border-color:var(--primary-hover) !important}.ant-table-thead>tr>th{background:#f8f9fb !important;font-size:.75rem !important;font-weight:600 !important;text-transform:uppercase !important;letter-spacing:.05em !important;color:var(--text-muted) !important}.ant-table-tbody>tr:hover>td{background:rgba(242,244,248,.5) !important}
