.language-select{align-items:center;gap:8px;display:flex}.language-select-label{color:var(--steel);white-space:nowrap;font-size:13px}.language-select select{height:34px;color:var(--ink);background-color:var(--pure);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;appearance:none;transition:border-color var(--duration) var(--ease);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a92a4' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;flex:none;padding:0 28px 0 10px;font-size:13px}.language-select select:hover{border-color:var(--cloud)}.language-select select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.language-select.is-compact select{height:30px;color:var(--steel);background-color:#0000;border-color:#0000;font-size:12px}.language-select.is-compact select:hover{border-color:var(--border);background-color:var(--pure)}.auth-page{min-height:100vh;display:flex}.auth-brand{color:#fff;background:radial-gradient(120% 90% at 85% -10%,#06b6d440 0%,#0000 55%),radial-gradient(110% 80% at -10% 110%,#2563eb52 0%,#0000 60%),linear-gradient(160deg,#0b1226 0%,#101d40 100%);flex-direction:column;flex:0 0 44%;max-width:560px;padding:48px 52px 0;display:flex;position:relative;overflow:hidden}.auth-brand-head{align-items:center;gap:12px;display:flex}.auth-brand-name{letter-spacing:-.3px;font-size:21px;font-weight:700}.auth-brand-body{flex-direction:column;flex:1;justify-content:center;padding-bottom:48px;display:flex}.auth-brand-title{letter-spacing:-.5px;max-width:20em;margin-bottom:32px;font-size:clamp(24px,2.4vw,32px);font-weight:700;line-height:1.35}.auth-features{flex-direction:column;gap:18px;padding:0;list-style:none;display:flex}.auth-feature{color:#ffffffd1;align-items:flex-start;gap:12px;font-size:14.5px;line-height:1.55;display:flex}.auth-feature-icon{color:#7dd3fc;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;flex:0 0 32px;justify-content:center;align-items:center;height:32px;display:flex}.auth-eq{opacity:.55;align-items:flex-end;gap:6px;height:72px;margin-bottom:40px;display:flex}.auth-eq i{transform-origin:bottom;background:linear-gradient(#38bdf8,#2563eb66);border-radius:3px 3px 0 0;flex:1;max-width:8px;height:100%;animation:2.6s ease-in-out infinite eqPulse}.auth-eq i:nth-child(4n+1){animation-delay:0s}.auth-eq i:nth-child(4n+2){animation-delay:.45s}.auth-eq i:nth-child(4n+3){animation-delay:.9s}.auth-eq i:nth-child(4n){animation-delay:1.35s}.auth-eq i:nth-child(3n){animation-duration:3.4s}.auth-eq i:nth-child(5n){animation-duration:2.1s}@keyframes eqPulse{0%,to{transform:scaleY(.18)}50%{transform:scaleY(1)}}.auth-side{background:var(--pure,#fff);flex:1;justify-content:center;align-items:center;padding:48px 24px;display:flex;position:relative}.auth-lang{position:absolute;top:20px;right:24px}.auth-box{width:100%;max-width:380px;animation:scaleIn .4s var(--ease)}.auth-box-brand{color:var(--ink);align-items:center;gap:10px;margin-bottom:28px;font-size:19px;font-weight:700;display:none}.auth-heading{color:var(--ink);letter-spacing:-.5px;margin-bottom:6px;font-size:26px;font-weight:700}.auth-subheading{color:var(--steel);margin-bottom:28px;font-size:14px}@media (width<=900px){.auth-brand{display:none}.auth-box-brand{display:flex}.auth-side{background:radial-gradient(80% 40% at 100% 0%, #06b6d412 0%, transparent 60%), radial-gradient(70% 40% at 0% 100%, #2563eb12 0%, transparent 60%), var(--pure,#fff)}}.login-page{background:radial-gradient(70% 50% at 100% 0,#06b6d41a 0%,#0000 60%),radial-gradient(70% 50% at 0 100%,#2563eb1a 0%,#0000 60%),linear-gradient(160deg,#f6f9ff 0%,#fbfdff 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-glow-tl,.login-glow-br{pointer-events:none;border-radius:50%;width:480px;height:480px;position:absolute}.login-glow-tl{background:radial-gradient(circle,#2563eb1a 0%,#0000 65%);top:-220px;left:-220px}.login-glow-br{background:radial-gradient(circle,#06b6d41a 0%,#0000 65%);bottom:-220px;right:-220px}.login-card{background:var(--pure,#fff);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);z-index:1;animation:scaleIn .45s var(--ease);padding:40px 36px 36px;position:relative}.login-logo{flex-direction:column;align-items:center;gap:16px;margin-bottom:32px;display:flex}.login-logo-hex{justify-content:center;align-items:center;width:56px;height:56px;display:flex}.login-logo-text{text-align:center}.login-logo-text h1{color:var(--ink);letter-spacing:-.5px;margin-bottom:4px;font-size:22px;font-weight:700}.login-logo-text p{color:var(--steel);font-size:13.5px}.forgot-footer{text-align:center;margin-top:12px;font-size:13px}.forgot-footer a{color:var(--mist);text-decoration:none}.forgot-footer a:hover{color:var(--accent);text-decoration:underline}.register-card{max-width:460px}.register-footer{text-align:center;color:#475569;margin-top:16px;font-size:13px}.register-footer a{color:var(--accent,#3b82f6);margin-left:4px;text-decoration:none}.register-footer a:hover{text-decoration:underline}@font-face{font-family:Outfit;font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/outfit.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/jetbrains-mono.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans.woff2)format("woff2")}:root{--ink:#0c0e12;--ink-light:#161920;--ink-medium:#1e222b;--slate:#272c38;--slate-light:#333a4a;--steel:#5c6478;--mist:#8a92a4;--cloud:#b4bac8;--snow:#e8eaf0;--white:#f5f6f8;--pure:#fff;--accent:#3b82f6;--accent-hover:#2563eb;--accent-glow:#3b82f626;--accent-dim:#3b82f614;--tone-blue:#2563eb;--tone-violet:#7c3aed;--tone-green:#059669;--tone-cyan:#0891b2;--tone-amber:#d97706;--tone-blue-soft:#3b82f61a;--tone-violet-soft:#8b5cf61a;--tone-green-soft:#10b9811a;--tone-cyan-soft:#06b6d41a;--tone-amber-soft:#f59e0b1a;--tone-blue-tint:#3b82f64d;--tone-violet-tint:#8b5cf64d;--tone-green-tint:#10b9814d;--tone-cyan-tint:#06b6d44d;--tone-amber-tint:#f59e0b4d;--success:#34d399;--success-bg:#34d3991a;--danger:#f87171;--danger-bg:#f871711a;--info:#60a5fa;--info-bg:#60a5fa1a;--surface:var(--pure);--surface-raised:var(--white);--surface-inset:#edeef2;--border:#dfe1e8;--border-light:#ecedf1;--admin-bg:var(--ink);--admin-sidebar:var(--ink-light);--admin-card:var(--ink-medium);--admin-border:var(--slate);--admin-text:var(--cloud);--admin-text-dim:var(--steel);--shadow-xs:0 1px 2px #0c0e120d;--shadow-sm:0 1px 3px #0c0e1214, 0 1px 2px #0c0e120a;--shadow-md:0 4px 12px #0c0e121a;--shadow-lg:0 12px 32px #0c0e121f;--shadow-xl:0 24px 48px #0c0e1229;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-full:9999px;--ease:cubic-bezier(.4, 0, .2, 1);--duration:.2s;--font-display:"Outfit", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--ui-card-radius:12px;--ui-card-line:#e3e5ec;--ui-card-shadow:0 1px 3px #0c0e1212;--ui-head-bg:#f5f6f8;--ui-pad:18px;--ui-gap:16px;--ui-page-pad:24px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:15px;line-height:1.6}body{font-family:var(--font-display);color:var(--ink);background:var(--white);min-height:100vh}#root{min-height:100vh}button{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none}input:not([class*=ant-]),select:not([class*=ant-]),textarea:not([class*=ant-]){font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}table{border-collapse:collapse;width:100%}.btn{border-radius:var(--r-md);height:40px;transition:all var(--duration) var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:0 20px;font-size:13.5px;font-weight:600;display:inline-flex}.btn-accent{background:var(--accent);color:var(--pure);box-shadow:0 2px 8px #3b82f640}.btn-accent:hover{background:var(--accent-hover);color:var(--pure);transform:translateY(-1px);box-shadow:0 4px 16px #3b82f659}.btn-primary{background:var(--ink);color:var(--pure)}.btn-primary:hover{background:var(--ink-light);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-ghost{color:var(--steel);border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:var(--surface-inset);color:var(--ink);border-color:var(--cloud)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#ef5350;box-shadow:0 4px 12px #f871714d}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.search-bar{align-items:center;gap:8px;margin-bottom:20px;display:flex}.search-bar input{border:1px solid var(--border);border-radius:var(--r-md);background:var(--pure);min-width:200px;max-width:320px;height:40px;color:var(--ink);transition:border-color var(--duration) var(--ease);outline:none;flex:1 1 0;padding:0 14px;font-size:13.5px}.search-bar input:focus{border-color:var(--accent)}.search-bar select{border:1px solid var(--border);border-radius:var(--r-md);background-color:var(--pure);width:auto;min-width:140px;max-width:220px;height:40px;color:var(--ink);cursor:pointer;transition:border-color var(--duration) var(--ease);outline:none;flex:none;padding:0 32px 0 14px;font-size:13.5px}.search-bar select:focus{border-color:var(--accent)}.search-bar button{border-radius:var(--r-md);background:var(--accent);height:40px;color:var(--pure);white-space:nowrap;cursor:pointer;transition:all var(--duration) var(--ease);border:none;flex:none;padding:0 18px;font-size:13.5px;font-weight:600}.search-bar button:hover{background:var(--accent-hover);box-shadow:0 2px 8px #3b82f640}.search-bar input[type=date],.search-bar .search-bar-date{width:150px;min-width:auto;max-width:none;height:40px;font-size:13px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;border:1px solid var(--border);border-radius:var(--r-md);background-color:var(--pure);color:var(--ink);flex:none;padding:0 12px}.search-bar input[type=date]:focus,.search-bar .search-bar-date:focus{border-color:var(--accent);outline:none}.search-bar .search-bar-sep{color:var(--steel);flex:none;font-size:13px}.table-empty{text-align:center;color:var(--steel);padding:48px 16px;font-size:13.5px}.page-head{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.page-head h1{letter-spacing:-.5px;margin-bottom:4px;font-size:24px;font-weight:700}.page-head p{color:var(--steel);font-size:13.5px}.toast{border-radius:var(--r-md);animation:slideIn .3s var(--ease);align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;font-size:13.5px;font-weight:500;display:flex}.toast-success{background:var(--success-bg);color:#059669}.toast-error{background:var(--danger-bg);color:#dc2626}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin}select:not([class*=ant-]),input[type=text]:not([class*=ant-]),input[type=number]:not([class*=ant-]),input[type=email]:not([class*=ant-]),input[type=password]:not([class*=ant-]),input[type=tel]:not([class*=ant-]),input[type=search]:not([class*=ant-]),input[type=date]:not([class*=ant-]),input:not([class*=ant-]):not([type]),textarea:not([class*=ant-]){height:40px;color:var(--ink);background-color:var(--pure);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);outline:none;width:100%;padding:0 12px;font-size:13.5px}select:not([class*=ant-]):focus,input[type=text]:not([class*=ant-]):focus,input[type=number]:not([class*=ant-]):focus,input[type=email]:not([class*=ant-]):focus,input[type=password]:not([class*=ant-]):focus,input[type=tel]:not([class*=ant-]):focus,input[type=search]:not([class*=ant-]):focus,input[type=date]:not([class*=ant-]):focus,input:not([class*=ant-]):not([type]):focus,textarea:not([class*=ant-]):focus{border-color:var(--accent)}input[type=range]:not([class*=ant-]):focus,input[type=range]:not([class*=ant-]):focus-visible{box-shadow:none;border:none;outline:none}select:not([class*=ant-]):focus,input[type=text]:not([class*=ant-]):focus,input[type=number]:not([class*=ant-]):focus,input[type=email]:not([class*=ant-]):focus,input[type=password]:not([class*=ant-]):focus,input[type=tel]:not([class*=ant-]):focus,input[type=search]:not([class*=ant-]):focus,input[type=date]:not([class*=ant-]):focus,input:not([class*=ant-]):not([type]):focus,textarea:not([class*=ant-]):focus{box-shadow:0 0 0 3px var(--accent-dim)}select:not([class*=ant-]):disabled,input:not([class*=ant-]):disabled,textarea:not([class*=ant-]):disabled{background-color:var(--surface-inset);color:var(--mist);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--mist)}textarea:not([class*=ant-]){resize:vertical;height:auto;min-height:80px;padding:10px 12px}select:not([class*=ant-]){appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235c6478' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.system-badge{color:var(--info);background:var(--info-bg);border-radius:var(--r-full);padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-block}.form-error{color:var(--danger);background:var(--danger-bg);border-radius:var(--r-sm);margin-bottom:12px;padding:8px 12px;font-size:13px;font-weight:500}label{color:var(--steel);letter-spacing:.01em;margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}[class*=-overlay]>[class*=-panel],[class*=-overlay]>[class*=-modal]{max-height:calc(100vh - 120px);overflow-y:auto}.switch-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;width:fit-content;font-size:13px;display:inline-flex}.switch-label input{display:none}.switch-track{background:var(--cloud);border-radius:10px;flex:none;width:36px;height:20px;transition:background .2s;position:relative}.switch-track:after{content:"";background:var(--pure);border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.switch-label input:checked+.switch-track{background:var(--accent)}.switch-label input:checked+.switch-track:after{transform:translate(16px)}.switch-text{color:var(--steel);font-size:12.5px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--cloud);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--steel)}.phone-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;line-height:18px;display:inline-block}.phone-badge-pending{background:var(--surface-inset);border-color:var(--border);color:var(--steel)}.phone-badge-scheduled{background:var(--tone-blue-soft);border-color:var(--tone-blue-tint);color:var(--tone-blue)}.phone-badge-calling{background:var(--tone-green-soft);border-color:var(--tone-green-tint);color:var(--tone-green);animation:1.6s ease-in-out infinite phone-badge-pulse;position:relative}@keyframes phone-badge-pulse{0%,to{box-shadow:0 0 #05966959}50%{box-shadow:0 0 0 5px #05966900}}.phone-badge-completed{background:var(--tone-green);border-color:var(--tone-green);color:#fff}.phone-badge-failed{color:#dc2626;background:#fef2f2;border-color:#fecaca}.phone-badge-invalid{background:repeating-linear-gradient(45deg, var(--surface-inset), var(--surface-inset) 4px, var(--pure) 4px, var(--pure) 8px);border-color:var(--cloud);color:var(--steel);text-decoration:line-through;-webkit-text-decoration-color:var(--mist);text-decoration-color:var(--mist)}.password-rules{flex-direction:column;gap:4px;margin-top:8px;font-size:12px;display:flex}.password-rules .rule-ok{color:#16a34a}.password-rules .rule-fail{color:var(--mist)}.password-rules .rule-icon{width:14px;display:inline-block}[class*=ant-] input:not([class*=ant-]),[class*=ant-] select:not([class*=ant-]),[class*=ant-] textarea:not([class*=ant-]){height:auto;box-shadow:none;font-size:inherit;background-color:#0000;border:none;border-radius:0;width:auto;padding:0}
