.loading-overlay{position:fixed;inset:0;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeInOverlay .25s cubic-bezier(.4,0,.2,1)}.loading-overlay-inline{display:inline-flex;align-items:center;justify-content:center}.loading-overlay-inline .loading-overlay-content{gap:8px}.loading-overlay-inline .loading-message{font-size:.875rem}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.loading-overlay-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.k-loading-spinner{display:flex;align-items:center;justify-content:center}.k-loading-container{background:#e3f2fdcc;border:1px solid rgba(33,150,243,.15);border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #2196f31f,0 0 0 1px #2196f30d;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.k-loading-spinner-large .k-loading-container{width:64px;height:64px;border-radius:18px}.k-loading-spinner-medium .k-loading-container{width:48px;height:48px;border-radius:14px}.k-loading-spinner-small .k-loading-container{width:38px;height:38px;border-radius:10px}.k-letter{font-size:32px;font-weight:800;color:#2196f3;letter-spacing:-1px;line-height:1;animation:kRotate 2s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;text-shadow:0 1px 2px rgba(33,150,243,.1)}.k-loading-spinner-medium .k-letter{font-size:24px}.k-loading-spinner-small .k-letter{font-size:18px}@keyframes kRotate{0%,to{transform:rotate(0) scale(1);opacity:1}25%{transform:rotate(-15deg) scale(1.05);opacity:.9}50%{transform:rotate(0) scale(1);opacity:1}75%{transform:rotate(15deg) scale(1.05);opacity:.9}}.k-loading-container{animation:kPulse 2s ease-in-out infinite}@keyframes kPulse{0%,to{box-shadow:0 4px 20px #2196f31f,0 0 0 1px #2196f30d;transform:scale(1)}50%{box-shadow:0 6px 28px #2196f32e,0 0 0 1px #2196f314;transform:scale(1.02)}}.loading-message{color:#2196f3;font-size:16px;font-weight:500;margin:0;opacity:.9;animation:fadeInMessage .4s ease-out .1s both}@keyframes fadeInMessage{0%{opacity:0;transform:translateY(-8px)}to{opacity:.9;transform:translateY(0)}}.loading-spinner-large{width:60px;height:60px;border:4px solid #E3F2FD;border-top-color:#2196f3;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;animation:fadeInAuth .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeInAuth{0%{opacity:0}to{opacity:1}}.auth-box{background:#fff;border-radius:24px;box-shadow:0 8px 32px #2196f326;padding:40px;width:100%;max-width:450px;position:relative;overflow:hidden;animation:slideUpAuth .5s cubic-bezier(.4,0,.2,1);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}@keyframes slideUpAuth{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-box:hover{transform:translateY(-2px);box-shadow:0 12px 40px #2196f333}.auth-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2196f3,#03a9f4,#00bcd4)}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{font-size:32px;font-weight:700;color:#2196f3;margin:0 0 8px;letter-spacing:-.5px}.auth-header p{color:#90caf9;font-size:14px;margin:0}.auth-form{display:block}.auth-form h2{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 24px;text-align:center}.form-group{margin-bottom:20px;animation:fadeInFormGroup .4s cubic-bezier(.4,0,.2,1) backwards}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.15s}.form-group:nth-child(3){animation-delay:.2s}.form-group:nth-child(4){animation-delay:.25s}.form-group:nth-child(5){animation-delay:.3s}.form-group-2fa{animation:slideDown2FA .35s cubic-bezier(.4,0,.2,1)}@keyframes slideDown2FA{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:200px;transform:translateY(0)}}@keyframes fadeInFormGroup{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.form-group label{display:block;font-size:14px;font-weight:500;color:#424242;margin-bottom:8px}.form-group input{width:100%;padding:12px 16px;border:2px solid #E0E0E0;border-radius:12px;font-size:15px;background:#fafafa;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-group input:focus{outline:none;border-color:#2196f3;background:#fff;box-shadow:0 0 0 3px #2196f31a;transform:translateY(-1px)}.form-group input:hover:not(:focus){border-color:#bbdefb;background:#f5f5f5;transform:translateY(-1px)}.form-group small{display:block;font-size:12px;color:#757575;margin-top:6px}.btn{padding:12px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer}.btn-primary{background:linear-gradient(135deg,#2196f3,#03a9f4);color:#fff;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #2196f34d;background:linear-gradient(135deg,#1976d2,#0288d1)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #2196f333}.btn-primary:disabled{opacity:.7;cursor:not-allowed;position:relative;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn-primary:disabled:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;margin:0}.k-loading-spinner{display:inline-flex;align-items:center;justify-content:center}.k-loading-spinner-small .k-loading-container{width:24px;height:24px;border-radius:8px}.k-loading-spinner-small .k-letter{font-size:14px}.k-loading-container{background:#ffffff40;border:1px solid rgba(255,255,255,.3);border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #ffffff1a;animation:kPulseButton 2s ease-in-out infinite}@keyframes kPulseButton{0%,to{box-shadow:0 2px 8px #ffffff1a;transform:scale(1)}50%{box-shadow:0 3px 12px #fff3;transform:scale(1.05)}}.k-letter{font-size:14px;font-weight:800;color:#fff;letter-spacing:-.5px;line-height:1;animation:kRotateButton 2s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;text-shadow:0 1px 2px rgba(0,0,0,.1)}@keyframes kRotateButton{0%,to{transform:rotate(0) scale(1);opacity:1}25%{transform:rotate(-12deg) scale(1.05);opacity:.9}50%{transform:rotate(0) scale(1);opacity:1}75%{transform:rotate(12deg) scale(1.05);opacity:.9}}.btn-block{width:100%}.auth-links{margin-top:20px;text-align:center}.auth-links a{color:#2196f3;text-decoration:none;font-size:14px;display:block;margin:8px 0}.auth-links a:hover{color:#1976d2;text-decoration:underline}.error-message{background:#ffebee;color:#c62828;padding:12px;border-radius:8px;margin-bottom:16px;font-size:14px;text-align:center;border-left:4px solid #C62828;animation:slideInMessage .3s cubic-bezier(.4,0,.2,1)}.success-message{background:#e8f5e9;color:#2e7d32;padding:12px;border-radius:8px;margin-bottom:16px;font-size:14px;text-align:center;border-left:4px solid #2E7D32;animation:slideInMessage .3s cubic-bezier(.4,0,.2,1)}@keyframes slideInMessage{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.settings-section-title--license{margin-top:8px}.settings-card--license{min-height:80px}.settings-license-loading,.settings-license-error{padding:16px;color:#6b7280;font-size:14px}.settings-license-error{color:#9ca3af}.settings-license-table-wrap{overflow-x:auto;margin-top:12px}.settings-license-table{width:100%;border-collapse:collapse;font-size:14px}.settings-license-table th,.settings-license-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e5e7eb}.settings-license-table th{font-weight:600;color:#374151;background:#f9fafb}.settings-license-table td{color:#111827}.settings-license-table tbody tr:last-child td{border-bottom:none}.verify-2fa-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:6000;animation:fadeIn .2s ease-out;padding:20px}.verify-2fa-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:270px;width:100%;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.verify-2fa-header{padding:12px 16px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.verify-2fa-title{font-size:.875rem;font-weight:600;color:#111827;margin:0;display:flex;align-items:center;gap:8px}.verify-2fa-title i{color:#3b82f6;font-size:.875rem}.verify-2fa-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;width:24px;height:24px;font-size:.875rem}.verify-2fa-close:hover:not(:disabled){background:#f3f4f6;color:#111827}.verify-2fa-close:disabled{opacity:.5;cursor:not-allowed}.verify-2fa-body{padding:16px}.verify-2fa-message{font-size:.8125rem;color:#6b7280;margin:0 0 12px;line-height:1.5;text-align:center}.verify-2fa-input-wrapper{margin-bottom:0}.verify-2fa-input{width:100%;padding:10px;font-size:1rem;letter-spacing:.35em;text-align:center;font-weight:600;font-family:Monaco,Menlo,Ubuntu Mono,monospace;border:2px solid #d1d5db;border-radius:8px;outline:none;transition:all .2s;box-sizing:border-box}.verify-2fa-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.verify-2fa-input:disabled{background:#f9fafb;cursor:not-allowed}.verify-2fa-input::-moz-placeholder{letter-spacing:.35em;color:#d1d5db}.verify-2fa-input::placeholder{letter-spacing:.35em;color:#d1d5db}.verify-2fa-error{margin-top:8px;font-size:.75rem;color:#dc2626;text-align:center;line-height:1.4}.verify-2fa-actions{display:flex;gap:8px;padding:12px 16px;border-top:1px solid #e5e7eb}.verify-2fa-btn-cancel,.verify-2fa-btn-verify{flex:1;padding:8px 12px;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;border:none;outline:none}.verify-2fa-btn-cancel{background:#fff;color:#374151;border:1.5px solid #d1d5db}.verify-2fa-btn-cancel:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.verify-2fa-btn-verify{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 4px -1px #3b82f64d}.verify-2fa-btn-verify:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px -2px #3b82f666}.verify-2fa-btn-cancel:disabled,.verify-2fa-btn-verify:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.verify-2fa-modal{max-width:calc(100% - 32px);min-width:240px}.verify-2fa-header{padding:10px 12px}.verify-2fa-body{padding:12px}.verify-2fa-actions{padding:10px 12px}}.settings-facebook-api-desc{margin:0 0 1rem;font-size:.9rem;color:var(--text-secondary, #666)}.settings-form-group--toggle{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.settings-toggle-wrap{display:inline-flex;align-items:center;gap:.5rem}.settings-toggle-input{width:2.5rem;height:1.25rem;accent-color:var(--primary, #2563eb)}.settings-toggle-label{font-size:.9rem;color:var(--text-secondary, #666)}.settings-system-loading{margin:0;color:var(--text-secondary, #666)}.settings-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out;padding:20px}.settings-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:1100px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.settings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid #e5e7eb;background:linear-gradient(to bottom,#fff,#f9fafb);flex-shrink:0}.settings-modal-title{font-size:22px;font-weight:600;color:#111827;margin:0;letter-spacing:-.02em}.settings-modal-close{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:#6b7280;transition:all .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.settings-modal-close:hover{background:#e5e7eb;color:#111827}.settings-modal-body{display:flex;flex:1;overflow:hidden;min-height:0}.settings-sidebar{width:260px;background:#f9fafb;border-right:1px solid #e5e7eb;padding:20px 12px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex-shrink:0}.settings-sidebar-item{display:flex;align-items:center;gap:12px;padding:14px 16px;border:none;background:transparent;border-radius:10px;cursor:pointer;color:#6b7280;font-size:14px;font-weight:500;transition:all .2s ease;text-align:left;width:100%}.settings-sidebar-item:hover{background:#e5e7eb;color:#111827;transform:translate(2px)}.settings-sidebar-item.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.settings-sidebar-item.active:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translate(2px)}.settings-sidebar-item svg{flex-shrink:0}.settings-content{flex:1;padding:28px 32px;overflow-y:auto;background:#fff}.settings-section{display:flex;flex-direction:column;gap:20px;max-width:800px}.settings-section-title{font-size:22px;font-weight:600;color:#111827;margin:0 0 4px;letter-spacing:-.02em}.settings-section-description{font-size:14px;color:#6b7280;margin:0 0 24px;line-height:1.5}.settings-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:28px;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.settings-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db}.settings-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:24px}.settings-card-header>div:first-child{flex:1;min-width:0}.settings-card-header .btn,.settings-card-header .settings-inline-form{flex-shrink:0;margin-top:0}.settings-card-title{font-size:17px;font-weight:600;color:#111827;margin:0 0 6px;letter-spacing:-.01em}.settings-card-description{font-size:14px;color:#6b7280;margin:0;line-height:1.5}.settings-card-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.settings-info-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #f3f4f6}.settings-info-row:first-child{padding-top:0}.settings-info-row:last-child{border-bottom:none;padding-bottom:0}.settings-info-label{font-size:14px;color:#6b7280;font-weight:500}.settings-info-value{font-size:14px;color:#111827;font-weight:600;text-align:right}.settings-form-group{margin-bottom:24px}.settings-form-group:last-child{margin-bottom:0}.settings-form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:10px}.settings-form-hint{display:block;font-size:12px;color:#6b7280;margin-top:6px;line-height:1.4}.required{color:#ef4444;margin-left:2px}.optional{color:#9ca3af;font-weight:400;margin-left:2px}.input{width:100%;padding:11px 14px;border:1.5px solid #d1d5db;border-radius:8px;font-size:14px;transition:all .2s ease;background:#fff;color:#111827;font-family:inherit}.input::-moz-placeholder{color:#9ca3af}.input::placeholder{color:#9ca3af}.input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input:disabled{background:#f9fafb;cursor:not-allowed;color:#9ca3af}.input-code{width:140px;text-align:center;font-size:18px;letter-spacing:6px;font-weight:600;padding:0 8px;height:42px;box-sizing:border-box;line-height:42px}.btn{padding:11px 22px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;box-shadow:0 1px 2px #0000000d;height:42px;box-sizing:border-box}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary{background:linear-gradient(135deg,#2196f3,#03a9f4);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#0288d1);box-shadow:0 4px 12px #2196f34d;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background:#4b5563;box-shadow:0 4px 12px #6b72804d;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.btn-sm{padding:9px 18px;font-size:13px;height:38px}.settings-inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.settings-2fa-setup{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.settings-2fa-setup-header{margin-bottom:24px;text-align:center}.settings-2fa-setup-header h5{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827}.settings-2fa-setup-desc{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.settings-qr-container{display:flex;flex-direction:column;align-items:center;margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb}.settings-qr-code{width:220px;height:220px;border:2px solid #e5e7eb;border-radius:12px;padding:12px;background:#fff;box-shadow:0 2px 8px #0000000d;margin-bottom:12px}.settings-qr-hint{margin:0;font-size:13px;color:#6b7280;font-weight:500}.settings-manual-key{margin-bottom:24px;padding:16px;background:#f9fafb;border-radius:10px;border:1px solid #e5e7eb;text-align:center}.settings-manual-label{margin:0 0 12px;font-size:14px;color:#6b7280;font-weight:500}.settings-secret-code{display:inline-block;font-family:Courier New,monospace;font-size:14px;background:#fff;padding:10px 16px;border-radius:8px;border:1.5px solid #e5e7eb;color:#111827;font-weight:600;letter-spacing:2px;word-break:break-all;max-width:100%}.settings-verify-section{margin-top:24px}.settings-verify-label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#374151}.settings-verify-input{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.settings-verify-input .input-code{flex:1;min-width:150px;font-size:18px;text-align:center;letter-spacing:4px;font-weight:600;font-family:Courier New,monospace}.settings-verify-hint{font-size:12px;color:#6b7280;margin:8px 0 0;text-align:center}.settings-verify-error{display:flex;align-items:center;gap:8px;margin-top:12px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.settings-verify-error .error-icon{font-size:18px;flex-shrink:0}.settings-verify-error .error-message{font-size:14px;color:#dc2626;font-weight:500;line-height:1.5}.settings-verify-success{display:flex;align-items:center;gap:8px;margin-top:12px;padding:12px 16px;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;animation:slideDown .3s ease-out}.settings-verify-success .success-icon{font-size:18px;flex-shrink:0}.settings-verify-success .success-message{font-size:14px;color:#16a34a;font-weight:500;line-height:1.5}.input-error{border-color:#f87171!important;background-color:#fef2f2!important}.input-error:focus{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef44441a!important}.settings-field-error{color:#ef4444;font-size:13px;margin-top:4px;margin-bottom:0;display:block}.settings-2fa-success{text-align:center;padding:32px 24px;animation:fadeIn .4s ease-in}.settings-2fa-success-icon{font-size:64px;margin-bottom:16px;animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.settings-2fa-success-title{margin:0 0 16px;font-size:20px;font-weight:600;color:#059669}.settings-2fa-warning{margin:0 0 24px;padding:12px 16px;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;font-size:14px;color:#92400e;line-height:1.5;display:flex;align-items:flex-start;gap:8px}.settings-warning-icon{font-size:18px;flex-shrink:0}.settings-2fa-success .btn{min-width:120px}.settings-password-form{display:flex;flex-direction:column;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.settings-status-badges{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:12px;font-size:12px;font-weight:500;box-shadow:0 1px 2px #0000000d}.badge-success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #10b981}.badge-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #3b82f6}.settings-alert{padding:14px 18px;border-radius:10px;margin:20px 0;display:flex;flex-direction:column;gap:6px;border-left:4px solid}.alert-success{background:#ecfdf5;color:#065f46;border-color:#10b981}.alert-error{background:#fef2f2;color:#991b1b;border-color:#ef4444}.alert-message{font-size:14px;font-weight:500;line-height:1.5}.alert-detail{font-size:13px;opacity:.85;margin-top:2px}.settings-loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280;font-size:14px}@media(max-width:768px){.settings-modal-overlay{padding:0}.settings-modal{width:100vw;max-width:100vw;max-height:100vh;border-radius:0}.settings-modal-header{padding:16px 20px}.settings-modal-title{font-size:20px}.settings-modal-body{flex-direction:column}.settings-sidebar{width:100%;border-right:none;border-bottom:1px solid #e5e7eb;flex-direction:row;overflow-x:auto;padding:12px;gap:4px}.settings-sidebar-item{white-space:nowrap;min-width:-moz-fit-content;min-width:fit-content;padding:10px 14px;font-size:13px}.settings-content{padding:20px}.settings-section{gap:16px}.settings-card{padding:20px}.settings-card-header{flex-direction:column;gap:16px;align-items:stretch}.settings-card-header .btn,.settings-card-header .settings-inline-form{width:100%;justify-content:center}.settings-inline-form{flex-direction:column;width:100%}.settings-inline-form .input,.input-code{width:100%}}.settings-info-grid{display:flex;flex-direction:column;gap:12px;margin-top:16px}.settings-features-list{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px}.settings-features-list li{background:#f5f5f5;border-radius:6px;font-size:14px;color:#333;position:relative;padding:8px 12px 8px 28px}.settings-features-list li:before{content:"✓";position:absolute;left:10px;color:#4caf50;font-weight:700}.settings-legal-links{display:flex;flex-direction:column;gap:12px;margin-top:16px}.settings-link-button{display:flex;flex-direction:column;padding:16px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;text-decoration:none;color:#1976d2;transition:all .2s}.settings-link-button:hover{background:#f0f0f0;border-color:#1976d2;transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.settings-link-meta{font-size:12px;color:#666;margin-top:4px}.settings-link{color:#1976d2;text-decoration:none;transition:color .2s}.settings-link:hover{color:#1565c0;text-decoration:underline}.settings-copyright{margin-top:24px;padding:16px;text-align:center;color:#666;font-size:12px;border-top:1px solid #e0e0e0}.settings-error{padding:16px;background:#ffebee;color:#c62828;border-radius:8px;text-align:center}.app-container{display:flex;height:100vh;overflow:hidden;background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.sidebar{width:210px;background:linear-gradient(180deg,#fff,#fafafa);box-shadow:4px 0 20px #00000014,0 0 0 1px #0000000a;display:flex;flex-direction:column;position:fixed;height:100vh;overflow:hidden;transition:width .35s cubic-bezier(.34,1.56,.64,1);z-index:1000}.sidebar.collapsed{width:65px}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.logo-section{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.sidebar.collapsed .logo-section{display:none}.sidebar-toggle{background:#2196f31a;border:1px solid rgba(33,150,243,.2);border-radius:8px;width:30px;height:30px;min-width:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #2196f326;flex-shrink:0;color:#2196f3}.sidebar-toggle:hover{background:#2196f326;border-color:#2196f34d;transform:scale(1.05);box-shadow:0 4px 12px #2196f333}.sidebar-toggle:active{transform:scale(.95)}.sidebar.collapsed .sidebar-toggle{margin:0 auto}.toggle-icon{transition:all .3s cubic-bezier(.4,0,.2,1);stroke-width:2.5}.sidebar-header{padding:8px;border-bottom:1px solid rgba(224,224,224,.5);white-space:nowrap;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(180deg,rgba(33,150,243,.02) 0%,transparent 100%);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.sidebar.collapsed .sidebar-header{padding:8px 4px;text-align:center;align-items:center;justify-content:center;border-bottom:1px solid rgba(224,224,224,.3)}.logo-section h1{font-size:17px;font-weight:800;color:#2196f3;margin:0 0 1px;letter-spacing:-.2px;transition:all .3s cubic-bezier(.4,0,.2,1);text-shadow:0 1px 2px rgba(33,150,243,.1);line-height:1.2}.logo-section p{font-size:9px;color:#90caf9;margin:0;font-weight:500;letter-spacing:.2px;transition:all .3s cubic-bezier(.4,0,.2,1);line-height:1.3;opacity:.9}.sidebar-nav{flex:1;padding:4px 0;overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#2196f333;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#2196f34d}.nav-item{display:flex;align-items:center;justify-content:flex-start;padding:6px 10px;margin:1px 5px;color:#424242;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);border-left:3px solid transparent;border-radius:6px;position:relative;overflow:hidden;white-space:nowrap;font-weight:500;font-size:13px;background:transparent;gap:8px}.sidebar.collapsed .nav-item{padding:8px;margin:1px 4px;justify-content:center;border-radius:6px}.nav-item:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:linear-gradient(180deg,#2196f3,#03a9f4);transform:scaleY(0);transition:transform .3s cubic-bezier(.4,0,.2,1);border-radius:0 2px 2px 0}.nav-item:hover{background:linear-gradient(90deg,#2196f314,#2196f30a);color:#2196f3;transform:translate(2px);box-shadow:0 2px 8px #2196f31a}.sidebar.collapsed .nav-item:hover{transform:scale(1.05);background:#2196f31f}.nav-item:hover:before{transform:scaleY(1)}.nav-item.active{background:linear-gradient(90deg,#2196f326,#2196f314);color:#2196f3;border-left-color:#2196f3;font-weight:700;transform:translate(0);box-shadow:0 2px 12px #2196f326,inset 0 0 0 1px #2196f31a}.nav-item.active:before{transform:scaleY(1)}.sidebar.collapsed .nav-item.active{background:#2196f333;box-shadow:0 0 0 2px #2196f34d}.nav-item span{font-size:13px;transition:all .3s cubic-bezier(.4,0,.2,1);line-height:1.3}.nav-icon{flex-shrink:0;opacity:.75;transition:all .3s cubic-bezier(.4,0,.2,1);width:18px;height:18px;color:#424242;stroke-width:2}.nav-item:hover .nav-icon,.nav-item.active .nav-icon{opacity:1;color:#2196f3}.nav-item.active .nav-icon{stroke-width:2.5}.sidebar.collapsed .nav-item span{display:none}.sidebar-footer{padding:6px 10px 8px;border-top:1px solid rgba(224,224,224,.5);background:linear-gradient(180deg,transparent 0%,rgba(33,150,243,.02) 100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed .sidebar-footer{padding:6px 6px 8px}.settings-icon-btn{width:100%;min-height:36px;display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:5px 8px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);margin-bottom:3px}.settings-icon-btn:hover{background:linear-gradient(90deg,#2196f314,#2196f30a);transform:translate(1px)}.settings-icon-btn:active{transform:translate(0);background:#2196f30f}.settings-icon{flex-shrink:0;opacity:.75;transition:all .25s cubic-bezier(.4,0,.2,1);width:18px;height:18px;color:#424242;stroke-width:2}.settings-icon-btn:hover .settings-icon{transform:rotate(12deg);opacity:1;color:#2196f3}.settings-user-info{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden;gap:1px;justify-content:center}.settings-user-name{font-size:11px;font-weight:600;color:#212121;margin:0;letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.settings-user-email{font-size:9px;color:#616161;margin:0 0 0 2px;font-weight:400;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.sidebar.collapsed .settings-icon-btn{justify-content:center;padding:6px;min-height:auto}.sidebar.collapsed .settings-user-info{display:none}.sidebar.collapsed .settings-icon{margin:0 auto}.logout-separator{height:1px;background:#e0e0e066;margin:6px 0;width:100%}.btn-logout{width:100%;padding:6px 10px;background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;border:1px solid rgba(198,40,40,.15);border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #c6282814;position:relative;display:flex;align-items:center;justify-content:center;gap:5px}.logout-icon{flex-shrink:0;opacity:.9;width:16px;height:16px;color:#c62828;stroke-width:2.5;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-logout:hover:not(:disabled) .logout-icon{opacity:1;transform:translate(-2px)}.btn-logout:hover:not(:disabled){background:linear-gradient(135deg,#ffcdd2,#ef9a9a);transform:translateY(-1px);box-shadow:0 2px 8px #c6282826;border-color:#c6282840}.btn-logout:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px #c628281f}.sidebar.collapsed .btn-logout{padding:6px;border-radius:6px}.sidebar.collapsed .btn-logout span{display:none}.btn-logout:disabled{opacity:.55;cursor:not-allowed;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.main-content{flex:1;margin-left:210px;display:flex;flex-direction:column;height:100vh;overflow:hidden;padding-bottom:4px;box-sizing:border-box;transition:margin-left .35s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.app-container.sidebar-collapsed .main-content{margin-left:65px}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.form-input,.form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s}.form-input:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled,.form-select:disabled{background-color:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.6}.error-message{color:#ef4444;font-size:.75rem;margin-top:4px}.action-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.action-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.action-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.action-modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:10px;margin:0}.action-modal-title i{color:#2563eb}.action-modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;transition:all .2s}.action-modal-close:hover{background:#f3f4f6;color:#374151}.action-modal-content{padding:16px;display:flex;flex-direction:column;gap:8px}.action-modal-item{display:flex;align-items:center;gap:12px;padding:16px;text-align:left;border-radius:8px;border:none;background:#fff;cursor:pointer;transition:all .2s;width:100%}.action-modal-item:hover:not(.disabled){background:#f9fafb}.action-modal-item.disabled{cursor:pointer;opacity:.6}.action-modal-item.disabled:hover{background:#f3f4f6;opacity:.8}.action-modal-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.25rem}.action-modal-text{flex:1;min-width:0}.action-modal-label{font-size:.9375rem;font-weight:600;margin-bottom:4px;line-height:1.4}.action-modal-desc{font-size:.8125rem;line-height:1.4}.action-modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}.action-modal-btn-close{padding:10px 20px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.action-modal-btn-close:hover{background:#f9fafb;border-color:#9ca3af}.bg-gray-100{background-color:#f3f4f6}.text-gray-400{color:#9ca3af}.text-gray-900{color:#111827}.bg-blue-100{background-color:#dbeafe}.bg-green-100{background-color:#dcfce7}.bg-purple-100{background-color:#e9d5ff}.avatar{position:relative;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,#60a5fa,#2563eb);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0}.avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.avatar-square{border-radius:0;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px -1px #667eea4d}.avatar-square .avatar-img{border-radius:0}.menu-permission-overlay{animation:none!important;transition:none!important}.menu-permission-overlay .menu-permission-modal{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}.menu-permission-modal{max-width:800px}.menu-permission-list{display:flex;flex-direction:column;gap:12px}.menu-permission-item{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;transition:all .2s}.menu-permission-item:hover{border-color:#3b82f6;box-shadow:0 2px 4px #3b82f61a}.menu-permission-info{display:flex;align-items:center;gap:12px;flex:1}.menu-permission-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.menu-permission-name{font-size:1rem;font-weight:600;color:#111827}.menu-permission-actions{display:flex;gap:8px}.menu-permission-btn{padding:8px 16px;border:1.5px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;min-width:90px}.menu-permission-btn:hover{background:#f9fafb}.menu-permission-btn.active.green{background:#dcfce7;border-color:#16a34a;color:#166534}.menu-permission-btn.active.blue{background:#dbeafe;border-color:#2563eb;color:#1e40af}.menu-permission-btn.active.red{background:#fee2e2;border-color:#dc2626;color:#991b1b}.menu-permission-btn.readonly{cursor:not-allowed;opacity:.6}.menu-permission-btn.readonly:hover{background:#fff}.permission-user-info{display:flex;align-items:center;gap:16px;padding:20px 24px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb;margin:0}.permission-user-avatar{flex-shrink:0}.permission-user-details{flex:1;min-width:0}.permission-user-name{font-size:1rem;font-weight:700;color:#111827;margin-bottom:8px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-user-email{display:flex;align-items:center;gap:6px;font-size:.875rem;color:#4b5563;margin-bottom:6px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-user-email i{font-size:.75rem;color:#6b7280;flex-shrink:0}.permission-user-role{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;color:#6366f1;font-weight:500;padding:4px 10px;background:#eef2ff;border-radius:6px;width:-moz-fit-content;width:fit-content}.permission-user-role i{font-size:.75rem;color:#6366f1;flex-shrink:0}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px;border-bottom:1px solid #e5e7eb}.modal-title{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 4px;display:flex;align-items:center;line-height:1.4}.modal-subtitle{font-size:.875rem;color:#6b7280;margin:0;line-height:1.5}.employee-info-modal{max-width:700px}.employee-info-header{display:flex;align-items:center;gap:16px}.employee-info-avatar-large{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#60a5fa,#2563eb);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.5rem;flex-shrink:0;box-shadow:0 4px 6px #2563eb4d;position:relative;overflow:hidden}.employee-info-avatar-large img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.employee-info-avatar-large .avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.employee-info-subtitle{color:#6b7280;font-size:.875rem;margin:4px 0 0}.employee-info-content{display:flex;flex-direction:column;gap:24px}.employee-info-section{border-bottom:1px solid #f3f4f6;padding-bottom:24px}.employee-info-section:last-child{border-bottom:none;padding-bottom:0}.employee-info-section-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 16px;display:flex;align-items:center;gap:8px}.employee-info-section-title i{color:#2563eb}.employee-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.employee-info-item{display:flex;flex-direction:column;gap:6px}.employee-info-item label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.employee-info-value{display:flex;align-items:center;gap:8px;font-size:.9375rem;color:#111827}.employee-info-value i{color:#6b7280;font-size:.875rem}.employee-info-permissions{display:flex;gap:12px;flex-wrap:wrap}.employee-info-permission-btn{padding:12px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.employee-info-permission-btn:hover{background:#f9fafb;border-color:#3b82f6;color:#3b82f6}.employee-info-permission-btn i{font-size:1rem}.employee-info-permission-display{padding:12px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#6b7280;font-size:.875rem;font-weight:500;cursor:default;display:flex;align-items:center;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.8}.employee-info-permission-display i{font-size:1rem;color:#9ca3af}.employee-info-permission-display span:first-of-type{color:#374151}.permission-display-note{margin-left:auto;font-size:.75rem;color:#9ca3af;font-style:italic;font-weight:400}.employee-info-section-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-bottom:1px solid #f3f4f6;padding-bottom:24px}.employee-info-section-half{border-bottom:none;padding-bottom:0}.employee-info-delete-section{display:flex;align-items:flex-start;justify-content:flex-start}.employee-info-delete-section .employee-info-grid{width:100%}.employee-info-delete-button{width:100%;padding:8px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.employee-info-delete-button:hover{background:#b91c1c}.employee-info-delete-button:active{transform:scale(.98)}.employee-info-delete-button i{font-size:.875rem}.change-password-modal{max-width:500px}.form-info{padding:12px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:.875rem;display:flex;align-items:center;margin-top:8px}.form-info i{color:#3b82f6}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:3000;padding:20px;animation:fadeIn .3s ease-in-out}.modal-content{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;max-height:90vh;overflow-y:auto;position:relative;z-index:3001;display:flex;flex-direction:column;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.avatar-edit-modal{max-width:600px;width:100%}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid #f3f4f6;flex-shrink:0;background:linear-gradient(to bottom,#fff,#fafafa)}.modal-header h2{font-size:1.375rem;font-weight:700;color:#111827;margin:0;letter-spacing:-.02em}.modal-close{background:none;border:none;font-size:1.25rem;color:#6b7280;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1)}.modal-close:hover:not(:disabled){background:#f3f4f6;color:#111827;transform:rotate(90deg)}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:32px 28px;flex:1;overflow-y:auto;background:#fff}.avatar-preview{width:220px;height:220px;margin:0 auto 32px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#3b82f6,#2563eb,#1d4ed8);display:flex;align-items:center;justify-content:center;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 25px -5px #3b82f64d,0 0 0 1px #3b82f61a;padding:4px}.avatar-preview:after{content:"";position:absolute;inset:4px;border-radius:50%;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);z-index:0}.avatar-preview img{position:relative;z-index:1;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.avatar-preview .avatar-placeholder{position:relative;z-index:1;width:100%;height:100%;border-radius:50%}.avatar-preview img{transition:opacity .3s ease}.avatar-preview.loading img{opacity:.5}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#9ca3af;font-size:72px;transition:all .3s ease}.avatar-loading-overlay{position:absolute;inset:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;z-index:10;animation:fadeIn .2s ease-in-out}.avatar-loading-overlay .spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:10px}.avatar-loading-overlay span{font-size:14px;color:#374151;font-weight:500}.crop-wrapper{position:relative;width:100%;height:450px;margin-bottom:24px;background:#000;border-radius:12px;overflow:hidden;transition:opacity .3s ease;box-shadow:0 10px 25px -5px #0000004d}.crop-wrapper.loading{opacity:.6;pointer-events:none}.crop-loading-overlay{position:absolute;inset:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;border-radius:8px;animation:fadeIn .2s ease-in-out}.crop-loading-overlay .spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:15px}.crop-loading-overlay span{color:#fff;font-size:16px;font-weight:500}.crop-controls{margin-bottom:24px;padding:20px;background:#f9fafb;border-radius:12px;transition:opacity .3s ease}.crop-controls.loading{opacity:.5;pointer-events:none}.crop-controls label{display:block;margin-bottom:12px;font-weight:600;color:#374151;font-size:.9375rem;letter-spacing:-.01em}.crop-controls input[type=range]{width:100%;height:8px;margin-top:8px;border-radius:4px;background:#e5e7eb;outline:none;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.crop-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);cursor:pointer;box-shadow:0 2px 4px #3b82f64d;-webkit-transition:all .2s ease;transition:all .2s ease}.crop-controls input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 4px 8px #3b82f666}.crop-controls input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);cursor:pointer;border:none;box-shadow:0 2px 4px #3b82f64d;-moz-transition:all .2s ease;transition:all .2s ease}.crop-controls input[type=range]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 4px 8px #3b82f666}.crop-controls input[type=range]:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:24px;transition:opacity .3s ease}.form-group.loading{opacity:.6;pointer-events:none}.form-group label{display:block;margin-bottom:12px;font-weight:600;color:#374151;font-size:.9375rem;letter-spacing:-.01em}.form-group input[type=file]{width:100%;padding:12px 16px;border:2px dashed #d1d5db;border-radius:12px;font-size:.875rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fafafa;cursor:pointer;color:#374151}.form-group input[type=file]:hover:not(:disabled){border-color:#3b82f6;background:#f0f9ff;transform:translateY(-1px);box-shadow:0 4px 12px -2px #3b82f633}.form-group input[type=file]:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.form-group input[type=file]:disabled{opacity:.5;cursor:not-allowed;background:#f3f4f6}.error-text{color:#ef4444;font-size:.8125rem;margin-top:8px;display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;animation:slideDown .2s ease-out}.error-text:before{content:"⚠";font-size:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:24px;border-top:1px solid #f3f4f6}.modal-actions .btn{padding:12px 24px;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;min-width:140px;letter-spacing:-.01em;box-shadow:0 1px 2px #0000000d}.modal-actions .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-actions .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 6px -1px #3b82f64d,0 2px 4px -1px #3b82f633}.modal-actions .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 10px 15px -3px #3b82f666,0 4px 6px -2px #3b82f64d}.modal-actions .btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px -1px #3b82f64d}.modal-actions .btn-secondary{background:#fff;color:#374151;border:2px solid #e5e7eb;box-shadow:0 1px 2px #0000000d}.modal-actions .btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.modal-actions .btn-secondary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000000d}.modal-body>*{transition:opacity .3s ease,transform .3s ease}.modal-overlay{z-index:3000!important}.modal-content.avatar-edit-modal{z-index:3001!important}.employee-management-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 16px 0;max-width:1600px;margin:0 auto;width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.page-title{font-size:2rem;font-weight:700;color:#111827;margin:0 0 8px;line-height:1.2}.page-subtitle{color:#6b7280;font-size:.9375rem;font-weight:400;margin:0;line-height:1.5}.btn-add-employee{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:12px 28px;border-radius:10px;border:none;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:10px;box-shadow:0 4px 6px -1px #2563eb4d,0 2px 4px -1px #2563eb33;white-space:nowrap}.btn-add-employee:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 12px -2px #2563eb66,0 4px 6px -1px #2563eb4d}.btn-add-employee:active{transform:translateY(0)}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:12px;flex-shrink:0}@media(max-width:768px){.statistics-grid{grid-template-columns:repeat(2,1fr);gap:16px}}.stat-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px -2px #0000001a,0 8px 12px -2px #00000014}.stat-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.stat-label{font-size:.875rem;font-weight:500;color:#6b7280;margin:0 0 10px;line-height:1.4}.stat-value{font-size:2rem;font-weight:700;color:#111827;margin:0;line-height:1.2;letter-spacing:-.02em}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.5rem}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;border:1px solid #e5e7eb;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.table-wrapper{flex:1;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch}.employee-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px}.employee-table thead{background:linear-gradient(180deg,#f9fafb,#f3f4f6);position:sticky;top:0;z-index:10}.employee-table th{padding:16px 20px;text-align:left;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap;vertical-align:middle;position:sticky;top:0;z-index:10;background:#f8fafc;box-shadow:0 1px #e5e7eb}.employee-table th:first-child{padding-left:24px}.employee-table th:last-child{padding-right:24px;text-align:center}.employee-table tbody tr{transition:background-color .15s ease}.employee-table tbody tr:hover{background:#f9fafb}.employee-table tbody tr:last-child td{border-bottom:none}.employee-table td{padding:18px 20px;border-bottom:1px solid #f3f4f6;vertical-align:middle;text-align:left}.employee-table td:first-child{padding-left:24px}.employee-table td:last-child{padding-right:24px;text-align:center}.user-info{display:flex;align-items:center;gap:12px;min-width:0}.user-name{font-size:.9375rem;font-weight:600;color:#111827;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-table td:nth-child(2){color:#374151;font-size:.875rem;font-weight:400}.phone-code{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f3f4f6;padding:4px 10px;border-radius:6px;font-size:.8125rem;color:#374151;display:inline-block}.badge{display:inline-flex;align-items:center;padding:5px 14px;border-radius:9999px;border:1px solid;font-size:.75rem;font-weight:500;white-space:nowrap}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:9999px;border:1px solid;font-size:.75rem;font-weight:500;white-space:nowrap}.status-active{background:#dcfce7;color:#166534;border-color:#86efac}.status-suspended{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.date-info{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#6b7280}.date-info i{font-size:.75rem;opacity:.6}.action-buttons{display:flex;align-items:center;justify-content:center;gap:4px}.action-btn{padding:8px;background:none;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:.875rem;color:#6b7280}.action-btn:hover{background:#f3f4f6;color:#374151}.action-btn:active{transform:scale(.95)}.action-btn.text-blue-600{color:#2563eb}.action-btn.text-blue-600:hover{background:#eff6ff;color:#1d4ed8}.action-btn.text-yellow-600{color:#ca8a04}.action-btn.text-yellow-600:hover{background:#fef9c3;color:#a16207}.action-btn.text-green-600{color:#16a34a}.action-btn.text-green-600:hover{background:#dcfce7;color:#15803d}.action-btn.text-red-600{color:#dc2626}.action-btn.text-red-600:hover{background:#fee2e2;color:#b91c1c}.empty-state{text-align:center;padding:64px 24px}.empty-content{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-content i{opacity:.3;margin-bottom:8px;font-size:3rem;color:#d1d5db}.empty-content p{font-size:1rem;color:#6b7280;margin:0}.empty-content p:first-of-type{font-weight:600;color:#374151;font-size:1.125rem}.pagination-container{padding:20px 24px;background:linear-gradient(180deg,#fafbfc,#f9fafb);border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:16px}@media(min-width:768px){.pagination-container{flex-direction:row;justify-content:space-between;align-items:center;padding:20px 32px}}.pagination-info{font-size:.875rem;color:#374151}.pagination-controls{display:flex;align-items:center;gap:8px}.pagination-btn{padding:8px 12px;font-size:.875rem;font-weight:500;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.pagination-number{padding:8px 12px;font-size:.875rem;font-weight:500;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer;transition:all .2s;min-width:40px;text-align:center}.text-gray-700{color:#374151}.text-blue-600{color:#2563eb}.text-green-600{color:#16a34a}.text-red-600{color:#dc2626}.text-purple-600{color:#9333ea}.text-indigo-600{color:#4f46e5}.text-yellow-600{color:#ca8a04}.bg-blue-100{background:#dbeafe}.bg-green-100{background:#dcfce7}.bg-red-100{background:#fee2e2}.bg-purple-100{background:#f3e8ff}.bg-indigo-100{background:#e0e7ff}.ml-1{margin-left:4px}.font-medium{font-weight:500}.text-sm{font-size:.875rem}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-body{padding:24px;flex:1;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.close-btn:hover{background-color:#f3f4f6;color:#111827}.modal-form{padding:24px;flex:1;overflow-y:auto}.form-group{margin-bottom:20px}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:8px}.field-error-inline{color:#ef4444;font-weight:500;margin-left:6px;font-size:.75rem}.form-label i{margin-right:8px;color:#6b7280}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s;font-family:inherit}.form-input.error,.form-select.error,.form-textarea.error{border-color:#ef4444}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef444426}.form-input:disabled{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.error-message{color:#ef4444;font-size:.75rem;margin-top:4px;display:flex;align-items:center;gap:4px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb}.btn-secondary{padding:10px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.btn-primary{padding:10px 20px;border:none;border-radius:8px;background:linear-gradient(135deg,#2196f3,#03a9f4);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.text-xs{font-size:.75rem}.text-gray-500{color:#6b7280}.mt-1{margin-top:4px}.mr-1{margin-right:4px}.modal::-webkit-scrollbar{width:8px}.modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.modal::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.modal::-webkit-scrollbar-thumb:hover{background:#555}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:700px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center}.modal-body{padding:24px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:16px;min-height:0}.selection-info-section{padding:16px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #93c5fd;border-radius:10px;box-shadow:0 2px 4px #3b82f61a}.selection-info-content{display:flex;align-items:center;gap:12px}.selection-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;flex-shrink:0;box-shadow:0 2px 4px #3b82f633}.selection-text{flex:1;min-width:0}.selection-count{font-size:.9375rem;font-weight:600;color:#111827;margin-bottom:4px}.selection-preview{font-size:.8125rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-section{flex-shrink:0}.search-input-wrapper{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none;font-size:.875rem}.search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s;box-sizing:border-box}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-clear-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.search-clear-btn:hover{color:#374151;background-color:#f3f4f6}.bulk-actions{display:flex;gap:8px;flex-shrink:0}.bulk-action-btn{padding:8px 16px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center}.bulk-action-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.bulk-action-btn:disabled{opacity:.5;cursor:not-allowed}.employees-container{flex:1;overflow-y:auto;min-height:0}.loading-container,.empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.clear-search-button{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;margin-top:12px}.clear-search-button:hover{background:#2563eb}.employees-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}@media(max-width:768px){.employees-grid{grid-template-columns:1fr}}.employee-item{display:flex;align-items:center;gap:12px;padding:14px;border:2px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;transition:all .2s}.employee-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px)}.employee-item.selected{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 2px 8px #3b82f633}.employee-avatar{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.125rem;flex-shrink:0;box-shadow:0 2px 4px #3b82f633}.employee-details{flex:1;min-width:0}.employee-name{font-size:.9375rem;font-weight:600;color:#111827;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-item.selected .employee-name{color:#1e40af}.employee-email{font-size:.8125rem;color:#6b7280;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-role{font-size:.75rem;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-checkbox{width:20px;height:20px;border:2px solid #d1d5db;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s;background:#fff}.employee-checkbox.checked{background:#3b82f6;border-color:#3b82f6}.employee-checkbox.checked i{color:#fff;font-size:.75rem}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#555}.fee-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:5000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.fee-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:800px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.fee-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.fee-modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;margin-bottom:4px}.modal-subtitle{font-size:.875rem;color:#6b7280;margin-top:4px}.fee-close-btn{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;transition:all .2s;flex-shrink:0}.fee-close-btn:hover:not(:disabled){background-color:#f3f4f6;color:#111827}.fee-close-btn:disabled{opacity:.5;cursor:not-allowed}.tabs-container{display:flex;border-bottom:1px solid #e5e7eb;flex-shrink:0;background:#f9fafb}.tab-button{padding:12px 24px;border:none;background:transparent;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;display:flex;align-items:center;position:relative}.tab-button:hover{color:#374151;background:#f3f4f6}.tab-button.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#fff}.fee-badge-count{display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;font-size:.75rem;font-weight:600;border-radius:9999px;padding:2px 6px;margin-left:8px;min-width:20px}.fee-modal-body{padding:24px;flex:1;overflow-y:auto;min-height:0}.fee-form{display:flex;flex-direction:column;gap:20px}.fee-form-group{display:flex;flex-direction:column}.fee-form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:8px;display:flex;align-items:center}.fee-form-input,.fee-form-select,.fee-form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s;box-sizing:border-box}.fee-form-input:focus,.fee-form-select:focus,.fee-form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.fee-form-input:-moz-read-only{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.fee-form-input:read-only{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.input-with-suffix{position:relative}.input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#6b7280;font-weight:600;pointer-events:none}.fee-form-textarea{resize:vertical;min-height:80px}.history-container,.pending-container{display:flex;flex-direction:column;gap:16px}.section-title{font-size:1.125rem;font-weight:600;color:#111827;margin-bottom:8px}.fee-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.history-list,.pending-list{display:flex;flex-direction:column;gap:12px}.history-item,.pending-item{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fff;transition:all .2s}.history-item:hover,.pending-item:hover{box-shadow:0 2px 8px #0000000d}.pending-item{border-color:#fbbf24;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.history-header,.pending-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.fee-change{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fee-badge{padding:4px 12px;border-radius:6px;font-size:.8125rem;font-weight:600}.fee-badge.old{background:#f3f4f6;color:#6b7280}.fee-badge.new{background:#dbeafe;color:#1e40af}.fee-badge.new.pending{background:#fef3c7;color:#92400e}.status-badge{padding:4px 12px;border-radius:6px;font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:4px}.status-badge.applied{background:#dcfce7;color:#166534}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.cancelled{background:#fee2e2;color:#991b1b}.change-type{display:flex;align-items:center}.type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:500}.type-badge.immediate{background:#fef3c7;color:#92400e}.type-badge.scheduled{background:#dbeafe;color:#1e40af}.history-description,.pending-description{font-size:.875rem;color:#6b7280;margin-bottom:8px}.history-meta,.pending-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:#9ca3af}.history-meta span,.pending-meta span{display:flex;align-items:center;gap:4px}.scheduled-date{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:#92400e}.fee-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}.fee-modal-body::-webkit-scrollbar{width:8px}.fee-modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.fee-modal-body::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.fee-modal-body::-webkit-scrollbar-thumb:hover{background:#555}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:5000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.balance-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:700px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;margin-bottom:12px}.customer-info{display:flex;flex-direction:column;gap:4px;font-size:.875rem}.customer-info p{display:flex;align-items:center;gap:8px;color:#6b7280}.customer-info .label{font-weight:500;color:#374151}.customer-info .value{color:#111827;font-weight:600}.customer-info .value.code{color:#3b82f6}.customer-info .value.balance{color:#16a34a}.customer-info .value.loading{display:flex;align-items:center;gap:6px;color:#6b7280}.header-actions{display:flex;align-items:center;gap:12px}.action-button{padding:8px 16px;border:1px solid;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.action-button.history{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.action-button.history:hover{background:#bfdbfe;border-color:#60a5fa}.action-button.topup{background:#dcfce7;border-color:#86efac;color:#166534}.action-button.topup:hover{background:#bbf7d0;border-color:#4ade80}.close-btn{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;transition:all .2s}.close-btn:hover:not(:disabled){background-color:#f3f4f6;color:#111827}.close-btn:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:24px;flex:1;overflow-y:auto;min-height:0}.balance-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:8px;display:flex;align-items:center}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s;box-sizing:border-box}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-hint{font-size:.75rem;color:#6b7280;margin-top:4px}.amount-preview{font-size:.875rem;color:#16a34a;font-weight:500;margin-top:4px}.form-textarea{resize:vertical;min-height:80px}.info-box{padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;font-size:.875rem}.info-box.loading{background:#f3f4f6;border:1px solid #e5e7eb;color:#6b7280}.info-box.previous-balance{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #93c5fd}.info-content{display:flex;justify-content:space-between;align-items:center;width:100%}.info-title{font-size:.875rem;color:#1e40af;margin-bottom:4px;display:flex;align-items:center;gap:6px}.info-value{font-size:1rem;font-weight:700;color:#1e3a8a}.use-button{padding:6px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.use-button:hover{background:#2563eb}.info-box.no-balance{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1.5px solid #fbbf24;color:#92400e}.history-container{display:flex;flex-direction:column;gap:16px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#6b7280}.loading-state i{font-size:2rem;margin-bottom:12px;color:#3b82f6}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:3rem;color:#d1d5db;margin-bottom:12px;opacity:.5}.empty-text{font-size:.9375rem;color:#6b7280}.history-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.history-item{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fff;transition:all .2s}.history-item:hover{box-shadow:0 2px 8px #0000000d}.history-header{margin-bottom:12px}.activity-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:6px;font-size:.75rem;font-weight:600}.activity-badge.topup{background:#dcfce7;color:#166534}.activity-badge.update{background:#dbeafe;color:#1e40af}.history-description{font-size:.875rem;color:#6b7280;margin-bottom:8px}.history-note{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin-bottom:8px;font-size:.8125rem;color:#1e40af}.history-note i{margin-top:2px;flex-shrink:0}.balance-change{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f3f4f6;border-radius:6px;margin-bottom:8px;font-size:.8125rem;color:#374151;font-weight:500}.history-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:#9ca3af}.history-meta span{display:flex;align-items:center;gap:4px}.history-meta .role{color:#3b82f6;margin-left:4px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}.btn-secondary{padding:10px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-primary{padding:10px 20px;border:none;border-radius:8px;background:linear-gradient(135deg,#2196f3,#03a9f4);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#0288d1)}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.modal-body::-webkit-scrollbar,.history-list::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track,.history-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.modal-body::-webkit-scrollbar-thumb,.history-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover,.history-list::-webkit-scrollbar-thumb:hover{background:#555}.customer-password-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .2s ease-out}.customer-password-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .2s ease-out}.customer-password-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.customer-password-modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;margin:0}.customer-password-modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;transition:all .2s}.customer-password-modal-close:hover:not(:disabled){background-color:#f3f4f6;color:#111827}.customer-password-modal-close:disabled{opacity:.5;cursor:not-allowed}.customer-password-modal-body{padding:24px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.customer-password-info{padding:16px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #93c5fd;border-radius:10px;box-shadow:0 2px 4px #3b82f61a}.customer-password-info-label{font-size:.8125rem;font-weight:600;color:#1e40af;margin-bottom:4px}.customer-password-info-value{font-size:.9375rem;color:#111827;font-weight:500}.customer-password-form{display:flex;flex-direction:column;gap:16px}.customer-password-form-group{display:flex;flex-direction:column;gap:6px}.customer-password-form-label{font-size:.875rem;font-weight:500;color:#374151}.customer-password-form-input{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s;box-sizing:border-box}.customer-password-form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.customer-password-form-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.customer-password-form-input.error{border-color:#ef4444}.customer-password-form-error{font-size:.75rem;color:#ef4444;margin-top:-4px}.customer-password-form-note{font-size:.8125rem;color:#6b7280;padding:12px;background:#f9fafb;border-radius:8px;display:flex;align-items:flex-start}.customer-password-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e5e7eb;flex-shrink:0}.customer-password-btn-secondary{padding:10px 20px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center}.customer-password-btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.customer-password-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.customer-password-btn-primary{padding:10px 20px;border:none;border-radius:8px;background:linear-gradient(135deg,#2196f3,#03a9f4);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center}.customer-password-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#0288d1)}.customer-password-btn-primary:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.customer-management-container{padding:12px 16px 0;max-width:1600px;margin:0 auto;width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.loading-container i{font-size:2rem;margin-bottom:12px;color:#3b82f6}.header-section{display:flex;flex-direction:column;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb;flex-shrink:0}@media(min-width:768px){.header-section{flex-direction:row;justify-content:space-between;align-items:flex-start}}.page-title{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 6px;line-height:1.2}.page-subtitle{color:#6b7280;font-size:.875rem;font-weight:400;margin:0;line-height:1.5}.readonly-notice{display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1.5px solid #93c5fd;border-radius:8px;margin-top:10px;font-size:.8125rem;color:#1e40af}.readonly-notice i{flex-shrink:0}.btn-add-customer{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:10px 24px;border-radius:8px;border:none;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;box-shadow:0 4px 6px -1px #2563eb4d,0 2px 4px -1px #2563eb33;white-space:nowrap}.btn-add-customer:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 12px -2px #2563eb66,0 4px 6px -1px #2563eb4d}.btn-add-customer:active{transform:translateY(0)}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:12px;flex-shrink:0}@media(max-width:768px){.statistics-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media(max-width:480px){.statistics-grid{grid-template-columns:1fr}}.customer-stat-card{background:#fff;padding:16px;border-radius:10px;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1)}.customer-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px -2px #0000001a,0 8px 12px -2px #00000014}.customer-stat-content{display:flex;align-items:center;justify-content:space-between;gap:12px}.customer-stat-label{font-size:.8125rem;font-weight:500;color:#6b7280;margin:0 0 8px;line-height:1.4}.customer-stat-value{font-size:1.75rem;font-weight:700;color:#111827;margin:0;line-height:1.2;letter-spacing:-.02em}.customer-stat-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.25rem}.customer-stat-icon-blue{background:#dbeafe;color:#2563eb}.customer-stat-icon-green{background:#dcfce7;color:#16a34a}.customer-stat-icon-yellow{background:#fef3c7;color:#ca8a04}.customer-stat-icon-purple{background:#f3e8ff;color:#9333ea}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;border:1px solid #e5e7eb;overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:0}.table-section-header{padding:10px 18px;border-bottom:1px solid #e5e7eb;background:#fafbfc;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.table-section-title{font-size:1rem;font-weight:600;color:#111827;margin:0}.table-wrapper{flex:1;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch;background:#fff}.customer-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1200px}.customer-table thead{background:linear-gradient(180deg,#f9fafb,#f3f4f6);position:sticky;top:0;z-index:10}.customer-table th{padding:8px 12px;text-align:left;font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap;vertical-align:middle;position:sticky;top:0;z-index:10;background:#f8fafc;box-shadow:0 1px #e5e7eb}.customer-table th:first-child{padding-left:18px}.customer-table th:last-child{padding-right:18px;text-align:center}.customer-table tbody tr{transition:background-color .15s ease}.customer-group-row{background:#f9fafb}.customer-group-cell{padding:6px 12px;border-bottom:1px solid #e5e7eb}.customer-group-toggle{width:100%;border:none;background:transparent;display:flex;align-items:center;gap:10px;font-weight:600;color:#111827;cursor:pointer;padding:0}.customer-group-toggle i{color:#6b7280}.customer-group-label{font-size:.875rem}.customer-group-count{font-size:.8125rem;color:#6b7280;font-weight:500}.customer-child-row td:first-child{padding-left:24px}.customer-table tbody tr:hover{background:#f9fafb}.customer-table tbody tr:last-child td{border-bottom:none}.customer-table td{padding:8px 12px;border-bottom:1px solid #f3f4f6;vertical-align:middle;text-align:left;font-size:.875rem;color:#374151}.customer-table td:first-child{padding-left:12px}.customer-table td:last-child{padding-right:12px;text-align:center}.employee-cell{display:flex;flex-direction:column;gap:4px}.employee-name-row{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.employee-name{font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.customer-name{font-size:.8125rem;color:#6b7280}.customer-tag-btn-icon{background:none;border:none;color:#3b82f6;cursor:pointer;padding:4px 6px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s;font-size:.8125rem;flex-shrink:0;border-radius:4px;width:24px;height:24px}.customer-tag-btn-icon:hover:not(:disabled){color:#2563eb;background:#eff6ff}.customer-tag-btn-icon:disabled{opacity:.5;cursor:not-allowed}.customer-tag-btn-icon-empty{display:inline-flex;align-items:center;justify-content:center;padding:6px;border:1px dashed #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s;width:32px;height:32px;flex-shrink:0}.customer-tag-btn-icon-empty:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.customer-tag-btn-icon-empty:disabled{opacity:.5;cursor:not-allowed}.customer-badge{display:inline-flex;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600}.customer-badge-blue{background:#dbeafe;color:#1e40af}.contact-cell{font-size:.875rem;color:#374151}.customer-fee-cell{display:flex;align-items:center;gap:8px}.customer-fee-value{font-weight:600;color:#16a34a;font-size:.875rem}.customer-fee-btn{background:none;border:none;color:#3b82f6;cursor:pointer;padding:4px;display:inline-flex;align-items:center;transition:all .2s;font-size:.75rem}.customer-fee-btn:hover:not(:disabled){color:#2563eb;background:#eff6ff;border-radius:4px}.customer-fee-btn:disabled{opacity:.5;cursor:not-allowed}.customer-fee-btn-empty{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px dashed #d1d5db;border-radius:6px;background:#fff;color:#6b7280;font-size:.75rem;cursor:pointer;transition:all .2s}.customer-fee-btn-empty:hover:not(:disabled){border-color:#3b82f6;color:#3b82f6;background:#eff6ff}.customer-fee-btn-empty:disabled{opacity:.5;cursor:not-allowed}.customer-balance-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;background:#dcfce7;color:#166534;border:1px solid #86efac;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.customer-balance-btn:hover:not(:disabled){background:#bbf7d0;border-color:#4ade80;color:#15803d}.customer-balance-btn:disabled{opacity:.5;cursor:not-allowed}.customer-balance-btn i{font-size:.75rem}.customer-action-buttons{display:flex;gap:8px;justify-content:center}.customer-action-btn{background:none;border:none;padding:8px;border-radius:6px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:.875rem;color:#6b7280}.customer-action-btn:hover{background:#f3f4f6;color:#374151}.customer-action-btn:active{transform:scale(.95)}.customer-action-btn.customer-text-blue{color:#2563eb}.customer-action-btn.customer-text-blue:hover{background:#eff6ff;color:#1d4ed8}.customer-action-btn.customer-text-yellow{color:#ca8a04}.customer-action-btn.customer-text-yellow:hover{background:#fef9c3;color:#a16207}.customer-action-btn.customer-text-green{color:#16a34a}.customer-action-btn.customer-text-green:hover{background:#dcfce7;color:#15803d}.customer-action-btn.customer-text-red{color:#dc2626}.customer-action-btn.customer-text-red:hover{background:#fee2e2;color:#b91c1c}.empty-state-cell{padding:48px 24px!important;text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state i{font-size:3rem;color:#d1d5db;opacity:.5;margin-bottom:4px}.empty-state p{font-size:1rem;color:#374151;font-weight:500;margin:0}.empty-hint{font-size:.875rem;color:#6b7280;font-weight:400}.pagination-container{padding:14px 18px;background:linear-gradient(180deg,#fafbfc,#f9fafb);border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px}@media(min-width:768px){.pagination-container{flex-direction:row;justify-content:space-between;align-items:center;padding:14px 24px}}.pagination-info{font-size:.8125rem;color:#374151}.pagination-controls{display:flex;align-items:center;gap:6px}.pagination-btn{padding:6px 12px;font-size:.8125rem;font-weight:500;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.pagination-btn:hover:not(.disabled){background:#f9fafb}.pagination-btn.disabled{color:#9ca3af;background:#f3f4f6;cursor:not-allowed}.pagination-numbers{display:flex;gap:4px}.pagination-number{padding:6px 12px;font-size:.8125rem;font-weight:500;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;cursor:pointer;transition:all .2s;min-width:36px;text-align:center}.pagination-number:hover{background:#f9fafb}.pagination-number.active{background:#2563eb;color:#fff;border-color:#2563eb}.payment-statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:12px;flex-shrink:0}@media(max-width:768px){.payment-statistics-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media(max-width:480px){.payment-statistics-grid{grid-template-columns:1fr}}.payment-stat-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1)}.payment-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px -2px #0000001a,0 8px 12px -2px #00000014}.payment-stat-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.payment-stat-label{font-size:.875rem;font-weight:500;color:#6b7280;margin:0 0 10px;line-height:1.4}.payment-stat-value{font-size:2rem;font-weight:700;color:#111827;margin:0;line-height:1.2;letter-spacing:-.02em}.payment-stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.5rem}.payment-stat-card-blue{border-left:4px solid #2563eb}.payment-stat-card-green{border-left:4px solid #16a34a}.payment-stat-card-yellow{border-left:4px solid #d97706}.payment-stat-card-purple{border-left:4px solid #7c3aed}.payment-stat-icon-blue{background:#e0ecff;color:#2563eb}.payment-stat-icon-green{background:#dcfce7;color:#16a34a}.payment-stat-icon-yellow{background:#fef3c7;color:#d97706}.payment-stat-icon-purple{background:#ede9fe;color:#7c3aed}.payment-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.payment-filter-label{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:#374151}.payment-filter-icon{font-size:1rem;color:#6b7280}.payment-filter-select{min-width:100px;padding:8px 32px 8px 12px;font-size:.875rem;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s ease,box-shadow .15s ease}.payment-filter-select:hover{border-color:#9ca3af}.payment-filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.payment-filter-select-year{min-width:80px}.payment-table-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.payment-table-header{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.payment-table-header-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.payment-table-title{font-size:1.05rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:10px;margin:0}.payment-table-left{display:flex;align-items:center;gap:16px}.payment-table-body{flex:1;overflow:auto;min-height:0}.payment-table-body table{width:100%;border-collapse:separate;border-spacing:0}.payment-table-body thead th{background:#f8fafc;color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:12px 16px;line-height:1.2;white-space:nowrap;vertical-align:middle;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10;box-shadow:0 1px #e5e7eb}.payment-table-body tbody td{padding:12px 16px;vertical-align:middle}.payment-status-filter-header{white-space:nowrap}.payment-status-filter-cell{display:inline-flex;align-items:center;gap:6px;position:relative}.payment-status-filter-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:6px;background:transparent;color:#6b7280;cursor:pointer;transition:background .15s ease,color .15s ease}.payment-status-filter-btn:hover{background:#e5e7eb;color:#374151}.payment-status-filter-btn.active{background:#dbeafe;color:#2563eb}.payment-status-filter-btn i{font-size:.75rem}.payment-status-filter-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:140px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:6px;box-shadow:0 10px 25px #0f172a1f,0 4px 10px #0f172a14;z-index:20;display:flex;flex-direction:column;gap:2px}.payment-status-filter-dropdown button{width:100%;padding:8px 12px;border:none;border-radius:6px;background:transparent;font-size:.8125rem;text-align:left;color:#374151;cursor:pointer;transition:background .15s ease}.payment-status-filter-dropdown button:hover{background:#f3f4f6}.payment-status-filter-dropdown button.selected{background:#eff6ff;color:#2563eb;font-weight:500}.payment-check-wrapper{position:relative;display:inline-flex}.payment-check-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:140px;max-width:180px;display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:6px;box-shadow:0 10px 25px #0f172a26,0 4px 10px #0f172a1a;z-index:9999}.payment-check-option{width:100%;border:none;background:transparent;text-align:left;padding:8px 12px;font-size:.8125rem;line-height:1.2;color:#111827;border-radius:6px;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px;transition:all .15s ease}.payment-check-option:hover{background:#f3f4f6}.payment-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;background:transparent}.payment-status-badge:disabled{cursor:default;opacity:.8}.payment-status-badge.done{background:#dcfce7;color:#166534}.payment-status-badge.done:hover:not(:disabled){background:#bbf7d0}.payment-status-badge.check{background:#fef3c7;color:#92400e}.payment-status-badge.check:hover:not(:disabled){background:#fde68a}.payment-status-badge.cancel{background:#fee2e2;color:#991b1b}.payment-status-badge.cancel:hover:not(:disabled){background:#fecaca}.payment-table-row{transition:background-color .15s ease}.payment-table-row:hover{background-color:#f9fafb}.payment-table-row td{padding:12px 16px;white-space:nowrap;font-size:.875rem;color:#111827;vertical-align:middle}.payment-amount-credit{font-weight:600;color:#16a34a}.payment-amount-debit{font-weight:600;color:#dc2626}.payment-amount-empty{color:#9ca3af}.payment-currency-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600;background:#dbeafe;color:#1e40af}.payment-note-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:#2563eb;cursor:pointer;transition:all .2s ease}.payment-action-btn:hover{background:#eff6ff;color:#1d4ed8}.payment-check-option.done{color:#166534}.payment-check-option.done:hover{background:#dcfce7}.payment-check-option.check{color:#92400e}.payment-check-option.check:hover{background:#fef3c7}.payment-check-option.cancel{color:#991b1b}.payment-check-option.cancel:hover{background:#fee2e2}.payment-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px 24px 8px}@media(max-width:768px){.payment-option-grid{grid-template-columns:1fr}}.payment-option-card{border:2px solid #e5e7eb;border-radius:12px;padding:20px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:center}.payment-option-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px -8px #0003}.payment-option-icon{width:64px;height:64px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:12px}.payment-option-icon-green{background:#dcfce7;color:#16a34a}.payment-option-icon-orange{background:#ffedd5;color:#f97316}.payment-option-card-green:hover{border-color:#86efac;background:#f0fdf4}.payment-option-card-orange:hover{border-color:#fdba74;background:#fff7ed}.payment-option-title{font-size:1.1rem;font-weight:600;color:#111827;margin:0 0 8px}.payment-option-desc{font-size:.9rem;color:#6b7280;margin:0 0 12px}.payment-option-meta{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.payment-modal-actions{display:flex;justify-content:flex-end;padding:16px 24px 24px}.payment-btn-secondary{background:#f3f4f6;color:#374151;border:none;border-radius:8px;padding:10px 18px;font-weight:600;cursor:pointer;transition:all .2s}.payment-form-section-green{background:#f0fdf4;border-left:4px solid #16a34a}.payment-form-section-icon-green{background:#dcfce7;color:#16a34a}.payment-btn-primary{color:#fff;background:#16a34a}.payment-btn-primary:hover{background:#15803d}.payment-form-section{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-radius:10px;margin:0 24px 20px}.payment-form-section-left{display:flex;align-items:center;gap:12px}.payment-form-section-title{font-size:1rem;font-weight:600;margin:0;color:#111827}.payment-form-section-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.payment-form-section-orange{background:#fff7ed;border-left:4px solid #f97316}.payment-form-section-icon-orange{background:#ffedd5;color:#f97316}.payment-form-back{background:none;border:none;color:#6b7280;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.payment-form{padding:0 24px 24px}.payment-btn-primary{color:#fff;background:#f97316}.payment-btn-primary:hover{background:#ea580c}.payment-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.payment-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-height:90vh;overflow-y:auto}.payment-modal-lg{max-width:720px}.payment-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;gap:16px}.payment-modal-title{font-size:1.25rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:10px;margin:0 0 6px}.payment-modal-subtitle{font-size:.9rem;color:#6b7280;margin:0}.payment-modal-close{background:none;border:none;font-size:1.25rem;color:#6b7280;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;transition:all .2s}.payment-modal-close:hover{background-color:#f3f4f6;color:#111827}.payment-form{padding:24px}.payment-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.payment-form-group{display:flex;flex-direction:column;gap:8px}.payment-form-group-full{margin-bottom:20px}.payment-form-label{font-size:.875rem;font-weight:500;color:#374151;display:flex;align-items:center;gap:8px}.payment-form-input,.payment-form-select,.payment-form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s}.payment-form-input:focus,.payment-form-select:focus,.payment-form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.payment-form-input-readonly{background-color:#f3f4f6;color:#6b7280}.payment-form-select:disabled,.payment-form-input:disabled{cursor:not-allowed}.payment-edit-status-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:.875rem;font-weight:600;width:-moz-fit-content;width:fit-content;min-width:100px}.payment-edit-status-badge.done{background:#dcfce7;color:#166534}.payment-edit-status-badge.cancel{background:#fee2e2;color:#991b1b}.payment-edit-status-badge.check{background:#fef3c7;color:#92400e}.payment-form-textarea{resize:none}.payment-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.payment-btn-primary,.payment-btn-secondary{border:none;border-radius:8px;padding:10px 18px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s}.payment-btn-secondary{background:#f3f4f6;color:#374151}.payment-btn-secondary:hover{background:#e5e7eb;color:#111827}.payment-btn-primary{background:#2563eb;color:#fff}.payment-btn-primary:hover{background:#1d4ed8}.payment-btn-primary:disabled{opacity:.6;cursor:not-allowed}.payment-btn-primary-blue{background:#2563eb}.payment-btn-primary-blue:hover{background:#1d4ed8}@media(max-width:768px){.payment-form-row{grid-template-columns:1fr}}.bank-account-modal{max-width:900px}.bank-account-modal-body{display:flex;flex-direction:column;gap:20px}.bank-account-form{border:1px solid #e5e7eb;border-radius:12px;padding:16px;background:#fff}.bank-account-form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.bank-account-form-title{font-size:1rem;font-weight:600;color:#111827}.bank-account-reset{background:transparent;border:none;color:#2563eb;font-weight:600;cursor:pointer}.bank-account-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:16px}.bank-account-upload{display:flex;flex-direction:column;gap:8px}.bank-account-label{font-weight:600;color:#374151}.bank-account-upload-card{border:1px dashed #cbd5f5;border-radius:10px;padding:16px;background:#f8fafc;text-align:center;font-size:.875rem;color:#6b7280;display:flex;flex-direction:column;gap:8px}.bank-account-upload-card input[type=file]{width:100%}.bank-account-preview img{width:100%;max-height:220px;-o-object-fit:contain;object-fit:contain;border-radius:10px;border:1px solid #e5e7eb;background:#fff}.bank-account-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bank-account-field{display:flex;flex-direction:column;gap:6px}.bank-account-field label{font-size:.875rem;font-weight:600;color:#374151}.bank-account-field input,.bank-account-field select,.bank-account-field textarea{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;font-size:.875rem}.bank-account-field textarea{min-height:80px;resize:vertical}.bank-account-field-full{grid-column:1 / -1}.bank-account-actions{display:flex;justify-content:flex-end;margin-top:12px}.bank-account-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.bank-account-empty{padding:24px 20px;border:1px dashed #d1d5db;border-radius:12px;text-align:center;color:#6b7280;font-size:.9375rem;background:#f9fafb}.bank-account-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0000000a;transition:box-shadow .15s ease,border-color .15s ease}.bank-account-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f}.bank-account-card-main{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.bank-account-card-qr{flex-shrink:0;width:56px;height:56px;border-radius:10px;overflow:hidden;background:#f3f4f6;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center}.bank-account-card-qr img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.bank-account-card-info{min-width:0}.bank-account-card-title{font-size:1rem;font-weight:600;color:#111827;line-height:1.35;letter-spacing:-.01em}.bank-account-card-subtitle{font-size:.8125rem;color:#6b7280;line-height:1.45;margin-top:2px}.bank-account-card-note{font-size:.8125rem;color:#9ca3af;margin-top:4px;line-height:1.4}.bank-account-card-actions{display:flex;gap:8px;flex-shrink:0}.bank-account-card-actions .payment-btn-secondary{padding:8px 14px;font-size:.8125rem;font-weight:500;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#374151;transition:background .15s ease,border-color .15s ease,color .15s ease}.bank-account-card-actions .payment-btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;color:#111827}.bank-account-card-actions .payment-btn-primary-red{padding:8px 14px;font-size:.8125rem;font-weight:500;border-radius:8px;border:1px solid transparent;background:transparent;color:#dc2626;transition:background .15s ease,color .15s ease}.bank-account-card-actions .payment-btn-primary-red:hover{background:#fef2f2;color:#b91c1c}.payment-management-container{padding:12px 16px 0;max-width:1600px;margin:0 auto;width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.btn-add-payment{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:8px 16px;border-radius:8px;border:none;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:10px;box-shadow:0 4px 6px -1px #2563eb4d,0 2px 4px -1px #2563eb33;white-space:nowrap}.payment-table-right{display:flex;align-items:center;gap:12px}.btn-bank-account{background:#fff;color:#1f2937;padding:8px 14px;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-bank-account:hover{border-color:#c7d2fe;color:#1d4ed8}.btn-add-payment:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 12px -2px #2563eb66,0 4px 6px -1px #2563eb4d}.btn-add-payment:active{transform:translateY(0)}.tag-kh-modal-backdrop{position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000}.tag-kh-modal-box{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001f,0 0 0 1px #0000000a;width:340px;max-width:calc(100vw - 24px);max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.tag-kh-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #eef2f6;background:#fafbfc}.tag-kh-modal-title{margin:0;font-size:.9375rem;font-weight:600;color:#0f172a;letter-spacing:-.01em}.tag-kh-modal-close{width:32px;height:32px;padding:0;border:none;background:none;font-size:1.35rem;line-height:1;color:#64748b;cursor:pointer;border-radius:8px;transition:background .15s ease,color .15s ease}.tag-kh-modal-close:hover{background:#e2e8f0;color:#334155}.tag-kh-modal-search-wrap{padding:12px 16px}.tag-kh-modal-search{width:100%;padding:8px 12px;font-size:.8125rem;border:1px solid #e2e8f0;border-radius:8px;outline:none;background:#f8fafc;color:#0f172a;transition:border-color .15s ease,box-shadow .15s ease}.tag-kh-modal-search::-moz-placeholder{color:#94a3b8}.tag-kh-modal-search::placeholder{color:#94a3b8}.tag-kh-modal-search:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.tag-kh-modal-list-wrap{flex:1;min-height:120px;max-height:300px;overflow-y:auto;padding:0 12px 12px}.tag-kh-modal-list-header{display:flex;align-items:center;gap:12px;padding:8px 12px 6px 22px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#64748b;border-bottom:1px solid #e2e8f0;background:#f8fafc;position:sticky;top:0;z-index:1}.tag-kh-modal-list-header-code{flex-shrink:0;min-width:5em}.tag-kh-modal-list-header-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-kh-modal-loading,.tag-kh-modal-empty{padding:24px 16px;text-align:center;font-size:.8125rem;color:#64748b}.tag-kh-modal-list{list-style:none;margin:0;padding:0}.tag-kh-modal-list li{border-bottom:1px solid #f1f5f9}.tag-kh-modal-list li:last-child{border-bottom:none}.tag-kh-modal-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:none;border-radius:8px;background:none;font-size:.8125rem;text-align:left;cursor:pointer;color:#334155;transition:background .12s ease,color .12s ease}.tag-kh-modal-item:hover{background:#f1f5f9}.tag-kh-modal-item.selected{background:linear-gradient(90deg,#3b82f61a,#3b82f60f);color:#1d4ed8;font-weight:500}.tag-kh-modal-item.selected .tag-kh-modal-item-code{color:#2563eb;font-weight:600}.tag-kh-modal-item-code{flex-shrink:0;font-weight:500;min-width:5em;font-variant-numeric:tabular-nums;color:#475569}.tag-kh-modal-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-account-table-wrapper{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;flex:1;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch;--ad-account-row-height: 42px;--ad-account-grid-columns: 2.25rem 2.5rem 88px minmax(140px, 1fr) minmax(140px, 1fr) minmax(90px, 1fr) 70px minmax(90px, 210px) minmax(70px, 1fr) 60px minmax(110px, 1fr) minmax(80px, 1fr) minmax(80px, 1fr) minmax(110px, 1fr) minmax(80px, 110px) minmax(90px, 120px) 44px}.ad-account-table-layout{min-width:1360px;width:100%}.ad-account-table-header{display:grid;grid-template-columns:var(--ad-account-grid-columns);background:#f8fafc;position:sticky;top:0;z-index:10;border-bottom:1px solid #e2e8f0;box-shadow:0 1px #e2e8f0}.ad-account-table-header-cell{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:4px 8px;text-align:left;font-size:.6875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;vertical-align:middle;line-height:1.3;display:flex;align-items:center;border-right:1px solid #eef2f6}.ad-account-table-header-cell:first-child{padding-left:8px}.ad-account-table-header-cell:last-child{padding-right:8px;border-right:none}.ad-account-table-header-cell-wrapper{position:relative;display:flex;align-items:stretch;min-width:0}.ad-account-table-header-cell-wrapper .ad-account-table-header-cell{flex:1;min-width:0}.ad-account-column-resize-handle{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;z-index:1;margin-right:-3px}.ad-account-column-resize-handle:hover,.ad-account-column-resize-handle:active{background:#2563eb26}.ad-account-table-header-cell.ad-account-cell-checkbox,.ad-account-virtual-cell.ad-account-cell-checkbox{display:flex;align-items:center;justify-content:center;padding-left:2px;padding-right:2px}.ad-account-virtual-cell.ad-account-cell-checkbox input[type=checkbox]{cursor:pointer}.ad-account-cell-stt{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:2.5rem;min-width:2.5rem;text-align:left;color:#64748b;font-size:.525rem;font-weight:500;padding-left:4px}.ad-account-table-header-cell.ad-account-cell-stt{text-align:center;padding-left:4px;white-space:nowrap}.ad-account-cell-tt.ad-account-table-header-cell,.ad-account-virtual-cell.ad-account-cell-tt{padding-left:2px;justify-content:flex-start;text-align:left}.ad-account-filter-header{white-space:nowrap;position:relative}.ad-account-filter-cell{display:inline-flex;align-items:center;gap:6px;position:relative}.ad-account-filter-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:transparent;color:#6b7280;cursor:pointer;transition:background .15s ease,color .15s ease}.ad-account-filter-btn:hover{background:#e5e7eb;color:#374151}.ad-account-filter-btn.active{background:#dbeafe;color:#2563eb}.ad-account-filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:120px;max-height:240px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:4px;box-shadow:0 4px 12px #00000014;z-index:20;display:flex;flex-direction:column;gap:1px}.ad-account-filter-dropdown button{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;padding:6px 10px;border:none;border-radius:4px;background:transparent;font-size:.75rem;text-align:left;color:#374151;cursor:pointer;transition:background .15s ease;white-space:nowrap}.ad-account-filter-dropdown button:hover{background:#f3f4f6}.ad-account-filter-dropdown button.selected{background:#eff6ff;color:#2563eb;font-weight:500}.ad-account-edit-cell-wrapper{position:relative;display:inline-flex}.ad-account-edit-badge{display:inline-flex;align-items:center;padding:0;border:none;background:none;cursor:pointer;border-radius:6px;transition:box-shadow .15s ease}.ad-account-edit-badge:hover:not(:disabled){box-shadow:0 0 0 2px #2563eb4d}.ad-account-edit-badge:disabled{cursor:default}.ad-account-edit-placeholder{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#94a3b8;font-size:.8125rem}.ad-account-edit-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:120px;max-height:220px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:4px;box-shadow:0 4px 12px #00000014;z-index:25;display:flex;flex-direction:column;gap:1px}.ad-account-edit-dropdown button{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;padding:6px 10px;border:none;border-radius:4px;background:transparent;font-size:.75rem;text-align:left;color:#374151;cursor:pointer;transition:background .15s ease;white-space:nowrap}.ad-account-edit-dropdown button:hover{background:#f3f4f6}.ad-account-edit-dropdown button.selected{background:#eff6ff;color:#2563eb;font-weight:500}.ad-account-edit-dropdown-portal{min-width:120px;max-height:220px;overflow-y:auto;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:4px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;gap:1px}.ad-account-cell-mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;text-align:left;padding-left:6px}.ad-account-virtual-cell.ad-account-cell-mono{justify-content:flex-start;padding-left:4px}.ad-account-cell-center{text-align:center}.ad-account-cell-name{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-account-cell-note{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ad-account-cell-vat{display:flex;align-items:center;justify-content:flex-start;gap:6px}.ad-account-vat-cell{display:inline-flex;align-items:center;gap:6px}.ad-account-vat-warning{color:#d97706;flex-shrink:0}.ad-account-vat-warning i{font-size:.75rem}.ad-account-cell-search-match{background-color:#fef08a!important}.ad-account-tt-badge{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:.6875rem;font-weight:600;white-space:nowrap;line-height:1.2}.ad-account-tt-empty{background:#e8eaed;color:#5f6368}.ad-account-tt-die{background:#ffcfc9;color:#b10202}.ad-account-tt-warn{background:#ffe5a0;color:#473821}.ad-account-tt-live{background:#d4edbc;color:#11734b}.ad-account-tt-default{background:#e8eaed;color:#1c1e21}.ad-account-tt-custom{display:inline-flex}.ad-account-status-empty{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#9ca3af}.ad-account-status-badge{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:.6875rem;font-weight:600;white-space:nowrap;line-height:1.2}.ad-account-status-dang-dung{background:#dbeafe;color:#1e40af}.ad-account-status-chot{background:#fef3c7;color:#92400e}.ad-account-status-default{background:#f3f4f6;color:#374151}.ad-account-status-custom{display:inline-flex}.ad-account-card-badge{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:.6875rem;font-weight:500;background:#fef3c7;color:#92400e;white-space:nowrap;line-height:1.2}.ad-account-card-badge-custom{display:inline-flex}.ad-account-table-loading-row,.ad-account-table-empty-row{display:grid;grid-template-columns:var(--ad-account-grid-columns)}.ad-account-table-loading,.ad-account-table-empty{padding:32px 16px!important;text-align:center;vertical-align:middle;grid-column:1 / -1}.ad-account-loading-spinner{display:inline-block;width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:ad-account-spin .8s linear infinite;margin-right:10px;vertical-align:middle}@keyframes ad-account-spin{to{transform:rotate(360deg)}}.ad-account-table-loading span:last-child{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#6b7280;font-size:.875rem}.ad-account-empty-content{display:flex;flex-direction:column;align-items:center;gap:8px}.ad-account-empty-icon{font-size:2.5rem;color:#d1d5db;opacity:.8}.ad-account-empty-title{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;font-weight:600;color:#374151;margin:0}.ad-account-empty-desc{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;color:#6b7280;margin:0}.ad-account-th-actions{width:44px;min-width:44px;text-align:right;justify-content:flex-end;padding-right:6px;padding-left:0}.ad-account-td-actions{text-align:center;width:44px;min-width:44px;vertical-align:middle}.ad-account-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:#2563eb;cursor:pointer;transition:background .15s ease,color .15s ease}.ad-account-action-btn:hover{background:#eff6ff;color:#1d4ed8}.ad-account-action-empty{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#94a3b8;font-size:.8125rem}.ad-account-table-virtual-body{box-sizing:border-box}.ad-account-virtual-row{box-sizing:border-box;align-items:center;padding:0;border-bottom:1px solid #eef2f6;transition:background-color .12s ease;min-height:var(--ad-account-row-height, 50px)}.ad-account-virtual-row:hover{background:#f8fafc}.ad-account-virtual-cell{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:2px 4px;font-size:.8125rem;line-height:1.35;color:#334155;vertical-align:middle;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-right:1px solid #eef2f6}.ad-account-virtual-cell:first-child{padding-left:6px}.ad-account-virtual-cell.ad-account-cell-stt{padding-left:2px;justify-content:flex-start;font-size:.65rem;white-space:nowrap}.ad-account-virtual-cell:last-child{padding-right:6px;border-right:none}.ad-account-input-edit-popup{display:flex;flex-direction:column;gap:8px;padding:10px;min-width:180px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f}.ad-account-input-edit-field{font-family:inherit;font-size:.8125rem;padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;width:100%;min-width:160px;box-sizing:border-box}.ad-account-input-edit-field:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.ad-account-input-edit-field::-moz-placeholder{color:#9ca3af}.ad-account-input-edit-field::placeholder{color:#9ca3af}.ad-account-input-edit-actions{display:flex;gap:6px;justify-content:flex-end}.ad-account-input-edit-btn{font-family:inherit;font-size:.75rem;padding:5px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer}.ad-account-input-edit-btn:hover{background:#f3f4f6}.ad-account-input-edit-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.ad-account-input-edit-btn.primary:hover{background:#1d4ed8}.ad-account-edit-vat{display:inline-flex;align-items:center;gap:6px}.add-ad-account-modal-overlay{position:fixed;inset:0;background-color:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:5000;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.add-ad-account-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000026,0 0 0 1px #0000000a;max-width:1280px;width:100%;max-height:88vh;display:flex;flex-direction:column;animation:add-ad-account-modal-fade .2s ease-out}@keyframes add-ad-account-modal-fade{0%{opacity:0;transform:scale(.98) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.add-ad-account-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e5e7eb;flex-shrink:0;background:#f8fafc;border-radius:14px 14px 0 0}@media(max-width:640px){.add-ad-account-modal-header{flex-wrap:wrap;padding:12px 16px}.add-ad-account-modal-header-right{width:100%;justify-content:flex-end}}.add-ad-account-modal-header-left{min-width:0}.add-ad-account-modal-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 4px;line-height:1.3;letter-spacing:-.02em}.add-ad-account-modal-subtitle{font-size:.875rem;color:#6b7280;margin:0;line-height:1.4}.add-ad-account-modal-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.add-ad-account-header-btn{white-space:nowrap}.add-ad-account-paste-toggle.add-ad-account-header-btn,.add-ad-account-btn-add-row.add-ad-account-header-btn{min-height:34px;padding:8px 14px;border-radius:8px;font-size:.875rem;font-weight:500;display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;transition:background .15s,border-color .15s,color .15s}.add-ad-account-paste-toggle.add-ad-account-header-btn:hover,.add-ad-account-btn-add-row.add-ad-account-header-btn:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1;color:#111827}.add-ad-account-modal-close{background:transparent;border:none;padding:6px;color:#6b7280;cursor:pointer;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.add-ad-account-modal-close:hover{background:#e5e7eb;color:#111827}.add-ad-account-modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.add-ad-account-modal-body{padding:16px 20px;overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:0;gap:16px}.add-ad-account-form-error{background:#fef2f2;color:#b91c1c;padding:12px 16px;border-radius:8px;font-size:.875rem;border:1px solid #fecaca;flex-shrink:0}.add-ad-account-validation-error{font-size:.8125rem;color:#b91c1c;padding:0 10px;max-width:280px;line-height:1.3}.add-ad-account-validation-passed{font-size:.8125rem;color:#059669;padding:0 10px}.add-ad-account-paste-section{flex-shrink:0}.add-ad-account-paste-toggle{display:inline-flex;align-items:center;gap:6px}.add-ad-account-paste-box{margin-top:12px;padding:16px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.add-ad-account-paste-textarea{width:100%;padding:12px 14px;border:1px solid #cbd5e1;border-radius:8px;font-size:.8125rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;resize:vertical;min-height:100px;margin-bottom:10px;background:#fff;transition:border-color .15s,box-shadow .15s}.add-ad-account-paste-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.add-ad-account-paste-hint{font-size:.75rem;color:#64748b;margin:0 0 12px;line-height:1.45}.add-ad-account-paste-apply{padding:8px 18px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,transform .1s}.add-ad-account-paste-apply:hover:not(:disabled){background:#1d4ed8}.add-ad-account-paste-apply:disabled{background:#94a3b8;cursor:not-allowed}.add-ad-account-rows-wrap{margin:0;min-height:0;flex:1;display:flex;flex-direction:column;gap:12px}.add-ad-account-quick-apply-bar{display:flex;align-items:center;gap:12px;padding:10px 14px;flex-shrink:0;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.add-ad-account-quick-apply-label{font-size:.8125rem;color:#92400e;font-weight:500}.add-ad-account-btn-quick-apply{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#fbbf24;color:#422006;border:1px solid #f59e0b;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.add-ad-account-btn-quick-apply:hover{background:#f59e0b;border-color:#d97706;color:#fff}.add-ad-account-th-checkbox{width:40px;min-width:40px;text-align:center;vertical-align:middle}.add-ad-account-th-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.add-ad-account-td-checkbox{text-align:center;width:40px;min-width:40px;vertical-align:middle}.add-ad-account-td-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.add-ad-account-rows-table tbody tr.add-ad-account-row-selected{background:#eff6ff}.add-ad-account-rows-table tbody tr.add-ad-account-row-selected:hover{background:#dbeafe}.add-ad-account-th-filter{position:relative;white-space:nowrap}.add-ad-account-th-filter>span{margin-right:4px}.add-ad-account-filter-btn{display:inline-flex;align-items:center;justify-content:center;padding:2px;background:none;border:none;color:#9ca3af;cursor:pointer;border-radius:4px;vertical-align:middle;transition:color .2s,background .2s}.add-ad-account-filter-btn:hover{color:#6b7280;background:#e5e7eb}.add-ad-account-filter-btn .active{color:#2563eb}.add-ad-account-filter-dropdown{position:absolute;top:100%;left:0;margin-top:6px;padding:6px 0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px -5px #00000014,0 0 0 1px #00000008;z-index:20;min-width:130px;max-height:240px;overflow-y:auto}.add-ad-account-filter-option{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:block;width:100%;padding:8px 14px;border:none;background:none;font-size:.875rem;color:#6b7280;text-align:left;cursor:pointer;transition:background .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.add-ad-account-filter-option:hover{background:#f1f5f9}.add-ad-account-filter-option:first-child{font-weight:600;color:#6b7280;border-bottom:1px solid #e5e7eb;margin-bottom:4px;padding-bottom:8px}.add-ad-account-btn-add-row{display:inline-flex;align-items:center;gap:6px;background:#eff6ff;color:#1d4ed8;border:1px solid #93c5fd}.add-ad-account-btn-add-row:hover:not(:disabled){background:#dbeafe;border-color:#60a5fa;color:#1e40af}.add-ad-account-btn-add-row:disabled{opacity:.6;cursor:not-allowed}.add-ad-account-table-scroll{overflow-x:auto;overflow-y:auto;flex:1;min-height:0;border:1px solid #e5e7eb;border-radius:10px;background:#fff;-webkit-overflow-scrolling:touch}.add-ad-account-rows-table{width:100%;border-collapse:collapse;min-width:900px}.add-ad-account-rows-table thead{background:#f1f5f9;position:sticky;top:0;z-index:1}.add-ad-account-rows-table th{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 16px;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e5e7eb;white-space:nowrap}.add-ad-account-th-stt{width:44px;min-width:44px;text-align:center;white-space:nowrap}.add-ad-account-rows-table td.add-ad-account-cell-stt{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-align:center;width:44px;min-width:44px;color:#6b7280;font-size:.875rem;font-weight:400;white-space:nowrap}.add-ad-account-th-actions{width:52px;text-align:center}.add-ad-account-input-mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem}.add-ad-account-rows-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background .12s}.add-ad-account-rows-table tbody tr:hover{background:#f8fafc}.add-ad-account-rows-table tbody tr:last-child{border-bottom:none}.add-ad-account-rows-table td{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 16px;vertical-align:middle;color:#6b7280}.add-ad-account-input{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;min-width:0;padding:6px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;line-height:1.4;color:#6b7280;background:#fff;transition:border-color .15s,box-shadow .15s}.add-ad-account-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.add-ad-account-input.error{border-color:#dc2626;background:#fef2f2}.add-ad-account-select{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;min-width:0;padding:6px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;line-height:1.4;background:#fff;color:#6b7280;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:border-color .15s,box-shadow .15s}.add-ad-account-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.add-ad-account-input.error:focus{box-shadow:0 0 0 2px #dc262626}.add-ad-account-input-narrow{max-width:72px}.add-ad-account-th-tiny{min-width:58px;width:58px}.add-ad-account-td-tiny{width:58px;min-width:58px;max-width:58px}.add-ad-account-th-small{min-width:96px;width:96px}.add-ad-account-td-small{width:96px;min-width:96px;max-width:96px}.add-ad-account-input-small{max-width:86px;padding:5px 8px;font-size:.875rem;color:#6b7280}.add-ad-account-input-tiny{max-width:48px;padding:4px 6px;font-size:.75rem;text-align:center;color:#6b7280}.add-ad-account-cell-err{display:block;font-size:.6875rem;color:#dc2626;margin-top:4px}.add-ad-account-td-actions{text-align:center;width:52px}.add-ad-account-btn-remove{padding:8px;background:transparent;border:none;color:#6b7280;cursor:pointer;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.add-ad-account-btn-remove:hover{background:#fee2e2;color:#dc2626}.add-ad-account-max-hint{font-size:.75rem;color:#64748b;margin:4px 0 0}.add-ad-account-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid #e5e7eb;flex-shrink:0;background:#f8fafc;border-radius:0 0 14px 14px}.add-ad-account-modal-footer .add-ad-account-footer-left{min-width:0;flex:1;display:flex;align-items:center;gap:12px}.add-ad-account-modal-footer .add-ad-account-footer-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.add-ad-account-quick-apply-bar-inline{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 12px;border-radius:6px;border:1px solid #fcd34d;background:#fefce8;flex-shrink:0}.add-ad-account-quick-apply-bar-inline .add-ad-account-quick-apply-label{font-size:.75rem;color:#92400e;font-weight:500;white-space:nowrap}.add-ad-account-quick-apply-bar-inline .add-ad-account-btn-quick-apply{padding:4px 10px;font-size:.75rem;border-radius:6px}.add-ad-account-btn-cancel{min-height:38px;padding:9px 18px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.add-ad-account-btn-cancel:hover{background:#f8fafc;border-color:#94a3b8;color:#111827}.add-ad-account-btn-check{min-height:38px;padding:9px 18px;border:1px solid #94a3b8;border-radius:8px;background:#f1f5f9;color:#475569;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.add-ad-account-btn-check:hover{background:#e5e7eb;border-color:#64748b;color:#6b7280}.add-ad-account-btn-submit{min-height:38px;padding:9px 22px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}.add-ad-account-btn-submit:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 12px #2563eb40}.add-ad-account-btn-submit:disabled{opacity:.65;cursor:not-allowed}.add-ad-account-quick-apply-overlay{position:absolute;inset:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:6000;border-radius:14px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.add-ad-account-quick-apply-modal{background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #0003,0 0 0 1px #0000000d;max-width:440px;width:92%;max-height:85vh;overflow-y:auto}.add-ad-account-quick-apply-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#f8fafc;border-radius:14px 14px 0 0}.add-ad-account-quick-apply-header h3{margin:0;font-size:1.0625rem;font-weight:600;color:#111827;letter-spacing:-.02em}.add-ad-account-quick-apply-desc{font-size:.875rem;color:#6b7280;margin:0;padding:12px 20px;border-bottom:1px solid #f1f5f9;line-height:1.45}.add-ad-account-quick-apply-form{padding:20px;display:flex;flex-direction:column;gap:14px}.add-ad-account-quick-apply-row{display:flex;align-items:center;gap:12px}.add-ad-account-quick-apply-row label{flex:0 0 100px;font-size:.875rem;font-weight:500;color:#6b7280}.add-ad-account-quick-apply-row .add-ad-account-input{flex:1;min-width:0}.add-ad-account-quick-apply-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 14px 14px}.edit-ad-account-modal-overlay{position:fixed;inset:0;background-color:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:5000;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.edit-ad-account-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000026,0 0 0 1px #0000000a;max-width:520px;width:100%;max-height:88vh;display:flex;flex-direction:column;animation:edit-ad-account-modal-fade .2s ease-out}@keyframes edit-ad-account-modal-fade{0%{opacity:0;transform:scale(.98) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.edit-ad-account-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc;border-radius:14px 14px 0 0}.edit-ad-account-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#0f172a;line-height:1.3;letter-spacing:-.02em}.edit-ad-account-modal-close{background:transparent;border:none;padding:6px;color:#64748b;cursor:pointer;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.edit-ad-account-modal-close:hover{background:#e2e8f0;color:#0f172a}.edit-ad-account-modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.edit-ad-account-modal-body{padding:16px 20px;overflow-y:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}.edit-ad-account-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.edit-ad-account-field{margin-bottom:14px}.edit-ad-account-field:last-of-type{margin-bottom:0}.edit-ad-account-field-label{display:block;font-size:.875rem;font-weight:600;color:#334155;margin-bottom:6px}.edit-ad-account-readonly{padding:8px 10px;font-size:.8125rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:#64748b;background:#f1f5f9;border-radius:6px;border:1px solid #e2e8f0}.edit-ad-account-input,.edit-ad-account-select{width:100%;min-width:0;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.8125rem;line-height:1.4;background:#fff;color:#334155;transition:border-color .15s,box-shadow .15s}.edit-ad-account-input:focus,.edit-ad-account-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.edit-ad-account-select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.edit-ad-account-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0;border-radius:0 0 14px 14px}.edit-ad-account-btn-cancel{min-height:38px;padding:9px 18px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease,border-color .2s ease}.edit-ad-account-btn-cancel:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.edit-ad-account-btn-save{min-height:38px;padding:9px 22px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.edit-ad-account-btn-save:hover{background:#1d4ed8;box-shadow:0 4px 12px #2563eb40}.column-setup-modal-overlay{position:fixed;inset:0;background-color:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:5000;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:column-setup-overlay-fade .2s ease-out}@keyframes column-setup-overlay-fade{0%{opacity:0}to{opacity:1}}.column-setup-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000026,0 0 0 1px #0000000a;max-width:520px;width:100%;max-height:88vh;display:flex;flex-direction:column;animation:column-setup-modal-fade .2s ease-out;outline:none}@keyframes column-setup-modal-fade{0%{opacity:0;transform:scale(.98) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.column-setup-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc;border-radius:14px 14px 0 0}.column-setup-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#0f172a;line-height:1.3;letter-spacing:-.02em}.column-setup-modal-close{background:transparent;border:none;padding:6px;color:#64748b;cursor:pointer;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.column-setup-modal-close:hover{background:#e2e8f0;color:#0f172a}.column-setup-modal-body{padding:16px 20px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.column-setup-modal-desc{font-size:.8125rem;color:#64748b;margin:0 0 20px;line-height:1.5}.column-setup-fields{display:flex;flex-direction:column;gap:20px}.column-setup-field{margin-bottom:0}.column-setup-field:last-of-type{margin-bottom:0}.column-setup-field-label{display:block;font-size:.875rem;font-weight:600;color:#334155;margin-bottom:8px}.column-setup-options-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.column-setup-option-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(0,0,0,.06);border-radius:8px;font-size:.8125rem;color:#1f2937;transition:border-color .2s ease,box-shadow .2s ease}.column-setup-option-chip:focus-within{box-shadow:0 0 0 2px #3b82f626}.column-setup-option-text{white-space:nowrap}.column-setup-color-picker-wrap{position:relative;display:inline-flex}.column-setup-color-swatch{width:20px;height:20px;padding:0;border:2px solid rgba(0,0,0,.12);border-radius:6px;cursor:pointer;flex-shrink:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.column-setup-color-swatch:hover{transform:scale(1.06);box-shadow:0 2px 8px #0000001f;border-color:#0003}.column-setup-palette-dropdown{position:absolute;top:calc(100% + 6px);left:0;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 25px -5px #00000014,0 0 0 1px #00000008;z-index:30;min-width:160px;animation:column-setup-dropdown-fade .15s ease-out}.column-setup-palette-dropdown-fixed{position:fixed;z-index:5001}@keyframes column-setup-dropdown-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.column-setup-palette-swatch{width:28px;height:28px;padding:0;border:2px solid rgba(0,0,0,.08);border-radius:8px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.column-setup-palette-swatch:hover{transform:scale(1.08);box-shadow:0 2px 10px #00000026}.column-setup-option-remove{display:inline-flex;align-items:center;justify-content:center;padding:4px;background:none;border:none;color:#64748b;cursor:pointer;border-radius:6px;transition:background .2s ease,color .2s ease}.column-setup-option-remove:hover{background:#fee2e2;color:#dc2626}.column-setup-add-row{display:flex;align-items:center;gap:10px}.column-setup-input{flex:1;min-width:0;padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.8125rem;line-height:1.4;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.column-setup-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.column-setup-btn-add{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#eff6ff;color:#1d4ed8;border:1px solid #93c5fd;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease;white-space:nowrap}.column-setup-btn-add:hover:not(:disabled){background:#dbeafe;border-color:#60a5fa}.column-setup-btn-add:disabled{opacity:.5;cursor:not-allowed}.column-setup-2fa-notice{margin:0 20px 12px;padding:10px 14px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.8125rem;font-weight:500;display:flex;align-items:center;gap:8px;flex-shrink:0;animation:column-setup-notice-in .2s ease-out}@keyframes column-setup-notice-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.column-setup-2fa-notice i{flex-shrink:0}.column-setup-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0;border-radius:0 0 14px 14px}.column-setup-btn-cancel{min-height:38px;padding:9px 18px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease,border-color .2s ease}.column-setup-btn-cancel:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.column-setup-btn-save{min-height:38px;padding:9px 22px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s ease,box-shadow .2s ease}.column-setup-btn-save:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 12px #2563eb40}.column-setup-btn-save:disabled{opacity:.6;cursor:not-allowed}.auto-update-columns-modal-overlay{position:fixed;inset:0;background-color:#0f172a66;display:flex;align-items:center;justify-content:center;z-index:5000;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:auto-update-columns-overlay-fade .2s ease-out}@keyframes auto-update-columns-overlay-fade{0%{opacity:0}to{opacity:1}}.auto-update-columns-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000026,0 0 0 1px #0000000a;max-width:min(560px,92vw);width:100%;max-height:88vh;display:flex;flex-direction:column;animation:auto-update-columns-modal-fade .2s ease-out;outline:none}@keyframes auto-update-columns-modal-fade{0%{opacity:0;transform:scale(.98) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.auto-update-columns-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc;border-radius:14px 14px 0 0}.auto-update-columns-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#0f172a;line-height:1.3;letter-spacing:-.02em}.auto-update-columns-modal-close{background:transparent;border:none;padding:6px;color:#64748b;cursor:pointer;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.auto-update-columns-modal-close:hover{background:#e2e8f0;color:#0f172a}.auto-update-columns-modal-body{padding:20px;overflow-y:auto;flex:1;min-height:0}.auto-update-columns-modal-desc{margin:0 0 16px;font-size:.875rem;color:#64748b;line-height:1.5}.auto-update-columns-table-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.auto-update-columns-table-head{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:10px 14px 8px;font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #e2e8f0;background:#f8fafc}.auto-update-columns-th-label,.auto-update-columns-th-desc{min-width:0}.auto-update-columns-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.auto-update-columns-item{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;padding:12px 14px;border-bottom:1px solid #f1f5f9;transition:background .15s}.auto-update-columns-item:last-child{border-bottom:none}.auto-update-columns-item:hover{background:#f8fafc}.auto-update-columns-cell-label{min-width:0}.auto-update-columns-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-size:.9375rem;color:#0f172a;font-weight:500}.auto-update-columns-checkbox{width:18px;height:18px;accent-color:#1877f2;cursor:pointer;flex-shrink:0}.auto-update-columns-label:has(.auto-update-columns-checkbox:disabled){cursor:default;opacity:.8}.auto-update-columns-label-text{-webkit-user-select:none;-moz-user-select:none;user-select:none}.auto-update-columns-cell-desc{font-size:.8125rem;color:#64748b;line-height:1.45}.auto-update-columns-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc;border-radius:0 0 14px 14px}.auto-update-columns-btn-close{padding:8px 16px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-weight:500;font-size:.875rem;cursor:pointer;transition:border-color .2s,background .2s,color .2s}.auto-update-columns-btn-close:hover{border-color:#cbd5e1;background:#f1f5f9;color:#0f172a}.auto-update-columns-btn-save{padding:8px 18px;border-radius:8px;border:none;background:linear-gradient(135deg,#1877f2,#0d65d9);color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;transition:filter .2s,transform .1s}.auto-update-columns-btn-save:hover:not(:disabled){filter:brightness(1.08)}.auto-update-columns-btn-save:active:not(:disabled){transform:scale(.98)}.auto-update-columns-btn-save:disabled{opacity:.6;cursor:not-allowed}.facebook-user-modal-overlay{position:fixed;inset:0;background-color:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:5000;padding:24px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:facebook-user-overlay-fade .2s ease-out}@keyframes facebook-user-overlay-fade{0%{opacity:0}to{opacity:1}}.facebook-user-modal{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative;background:#fff;border-radius:12px;box-shadow:0 24px 48px -12px #0000002e,0 0 0 1px #0000000d;max-width:min(900px,92vw);width:100%;max-height:90vh;display:flex;flex-direction:column;animation:facebook-user-modal-fade .22s ease-out;outline:none}@keyframes facebook-user-modal-fade{0%{opacity:0;transform:scale(.98) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}.facebook-user-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#fafbfc;border-radius:12px 12px 0 0}.facebook-user-modal-title{margin:0;font-size:1.125rem;font-weight:600;color:#0f172a;letter-spacing:-.01em}.facebook-user-modal-close{background:transparent;border:none;padding:6px;color:#64748b;cursor:pointer;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.facebook-user-modal-close:hover{background:#e2e8f0;color:#0f172a}.facebook-user-modal-body{padding:20px 20px 16px;overflow-y:auto;flex:1;min-height:0}.facebook-user-modal-desc{margin:0 0 16px;font-size:.875rem;color:#64748b;line-height:1.5}.facebook-user-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:14px 16px;margin-bottom:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.facebook-user-scan-block{display:flex;flex-direction:column;gap:6px}.facebook-user-scan-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.facebook-user-scan-select{min-width:152px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;background:#fff;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.facebook-user-scan-select:hover{border-color:#cbd5e1}.facebook-user-scan-select:focus{outline:none;border-color:#1877f2;box-shadow:0 0 0 2px #1877f233}.facebook-user-scan-select:disabled{opacity:.6;cursor:not-allowed;background:#f1f5f9}.facebook-user-toolbar .facebook-user-btn-autoupdate{margin-left:auto}.facebook-user-btn-autoupdate{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-weight:500;font-size:.8125rem;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.facebook-user-btn-autoupdate:hover:not(:disabled){border-color:#86efac;color:#059669;background:#ecfdf5}.facebook-user-btn-autoupdate:active:not(:disabled){transform:scale(.98)}.facebook-user-btn-autoupdate:disabled{opacity:.6;cursor:not-allowed}.facebook-user-btn-login{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:none;background:linear-gradient(135deg,#1877f2,#0d65d9);color:#fff;font-weight:600;font-size:.8125rem;cursor:pointer;transition:filter .2s ease,transform .1s ease}.facebook-user-btn-login:hover{filter:brightness(1.06)}.facebook-user-btn-login:active{transform:scale(.98)}.facebook-user-btn-login:disabled{opacity:.7;cursor:not-allowed;filter:none}.facebook-user-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid #e2e8f0}.facebook-user-tabs .facebook-user-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.facebook-user-tabs .facebook-user-tab:hover{color:#0f172a;background:#f8fafc}.facebook-user-tabs .facebook-user-tab.active{color:#1877f2;border-bottom-color:#1877f2;background:transparent}[role=tabpanel][hidden]{display:none!important}.facebook-user-list-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.facebook-user-list-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.facebook-user-list-title{margin:0;font-size:.875rem;font-weight:600;color:#0f172a}.facebook-user-btn-refresh-token{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:.8125rem;font-weight:500;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.facebook-user-btn-refresh-token:hover{border-color:#1877f2;color:#1877f2;background:#eff6ff}.facebook-user-empty{padding:32px 20px;text-align:center}.facebook-user-empty p{margin:0;font-size:.875rem;color:#64748b}.facebook-user-scan-history-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.facebook-user-scan-history-panel-title{margin:0 0 12px;padding:12px 16px 0;font-size:.9375rem;font-weight:600;color:#334155}.facebook-user-scan-history-loading{padding:32px 20px;text-align:center;font-size:.875rem;color:#64748b}.facebook-user-scan-history-table-wrap{overflow-x:auto;overflow-y:auto;max-height:min(380px,45vh)}.facebook-user-scan-history-table .facebook-user-td{white-space:nowrap}.facebook-user-table-wrap{overflow-x:auto;overflow-y:auto;max-height:min(380px,45vh)}.facebook-user-table{width:100%;border-collapse:collapse;font-size:.8125rem}.facebook-user-th{text-align:left;padding:12px 14px;font-weight:600;font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.03em;background:#f8fafc;border-bottom:1px solid #e2e8f0;white-space:nowrap;position:sticky;top:0;z-index:1}.facebook-user-td{padding:12px 14px;border-bottom:1px solid #f1f5f9;vertical-align:middle;transition:background .15s ease}.facebook-user-row:last-child .facebook-user-td{border-bottom:none}.facebook-user-row:hover .facebook-user-td{background:#f8fafc}.facebook-user-cell-name{display:flex;align-items:center;gap:10px;min-width:0}.facebook-user-item-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#1877f2,#0d65d9);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8125rem;flex-shrink:0;overflow:hidden}.facebook-user-avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.facebook-user-item-name{font-weight:600;font-size:.8125rem;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.facebook-user-cell-value{color:#334155;word-break:break-all;font-size:.8125rem}.facebook-user-td-id .facebook-user-cell-value{font-family:ui-monospace,monospace;font-size:.75rem}.facebook-user-status-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap}.facebook-user-status-badge.valid{background:#d1fae5;color:#059669}.facebook-user-status-badge.expired{background:#fee2e2;color:#dc2626}.facebook-user-th-name,.facebook-user-td-name{min-width:130px}.facebook-user-th-id,.facebook-user-td-id{min-width:110px;max-width:150px}.facebook-user-th-email,.facebook-user-td-email{min-width:130px;max-width:180px}.facebook-user-th-date,.facebook-user-td-date,.facebook-user-th-updated,.facebook-user-td-updated,.facebook-user-th-expiry,.facebook-user-td-expiry{width:88px;white-space:nowrap}.facebook-user-th-status,.facebook-user-td-status{width:100px}.facebook-user-th-action,.facebook-user-td-action{width:92px;text-align:right}.facebook-user-btn-disconnect{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#64748b;font-size:.75rem;font-weight:500;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease;white-space:nowrap}.facebook-user-btn-disconnect:hover{border-color:#f87171;color:#dc2626;background:#fef2f2}.facebook-user-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e2e8f0;flex-shrink:0;background:#fafbfc;border-radius:0 0 12px 12px}.facebook-user-btn-scan-now{padding:8px 18px;border-radius:8px;border:none;background:#2563eb;color:#fff;font-weight:500;font-size:.875rem;cursor:pointer;transition:background .2s ease,opacity .2s ease}.facebook-user-btn-scan-now:hover:not(:disabled){background:#1d4ed8}.facebook-user-btn-scan-now:disabled{opacity:.7;cursor:not-allowed}.facebook-user-btn-close{padding:8px 18px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-weight:500;font-size:.875rem;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.facebook-user-btn-close:hover{border-color:#cbd5e1;background:#f1f5f9;color:#0f172a}.advertising-account-management-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 4px 0;width:100%;max-width:none;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.advertising-account-table-container{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.advertising-account-toolbar{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.advertising-account-toolbar-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.advertising-account-toolbar-left{display:flex;align-items:center;gap:12px}.advertising-account-search-wrap{display:flex;align-items:center;gap:6px}.advertising-account-search-input-box{position:relative;width:210px;height:34px;flex-shrink:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:border-color .2s,box-shadow .2s}.advertising-account-search-input-box:focus-within{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.advertising-account-search-input{width:100%;height:100%;padding:0 10px;border:none;border-radius:8px;font-size:.8125rem;color:#1f2937;background:transparent;box-sizing:border-box}.advertising-account-search-input::-moz-placeholder{color:#9ca3af}.advertising-account-search-input::placeholder{color:#9ca3af}.advertising-account-search-input:focus{outline:none}.advertising-account-search-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#4b5563;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.advertising-account-search-btn:hover{background:#2563eb;color:#fff;border-color:#2563eb}.advertising-account-search-nav{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;border-left:1px solid #e5e7eb;padding-left:6px;gap:2px;background:#fff;border-radius:0 8px 8px 0}.advertising-account-search-count{font-size:.8125rem;color:#4b5563;min-width:2rem;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-right:4px}.advertising-account-search-nav-sep{width:1px;height:16px;background:#e5e7eb;flex-shrink:0}.advertising-account-search-nav-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:#4b5563;cursor:pointer;transition:background .15s,color .15s}.advertising-account-search-nav-btn:hover{background:#e5e7eb;color:#1f2937}.advertising-account-search-nav-btn:disabled{opacity:.4;cursor:default}.advertising-account-toolbar-right{display:flex;align-items:center;gap:12px}.btn-add-ad-account{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:8px 16px;border-radius:8px;border:none;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:10px;box-shadow:0 4px 6px -1px #2563eb4d,0 2px 4px -1px #2563eb33;white-space:nowrap}.btn-add-ad-account:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 12px -2px #2563eb66,0 4px 6px -1px #2563eb4d}.btn-add-ad-account:active{transform:translateY(0)}.btn-facebook-user{background:#fff;color:#1f2937;padding:8px 14px;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-facebook-user:hover{border-color:#93c5fd;color:#1877f2}.btn-setup-columns{background:#fff;color:#1f2937;padding:8px 14px;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-setup-columns:hover{border-color:#c7d2fe;color:#1d4ed8}.advertising-account-bulk-inline{display:flex;align-items:center;gap:10px}.advertising-account-bulk-label{font-size:.875rem;color:#1e40af;font-weight:500;white-space:nowrap}.advertising-account-bulk-quick-apply-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid #f59e0b;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1f2937;font-weight:600;font-size:.8125rem;cursor:pointer;transition:background .2s,transform .15s;white-space:nowrap}.advertising-account-bulk-quick-apply-btn:hover{background:linear-gradient(135deg,#f59e0b,#d97706);transform:translateY(-1px)}.advertising-account-bulk-quick-apply-btn:active{transform:translateY(0)}.expense-table-wrapper{--expense-row-h: 52px;--expense-border: 1px solid #e5e7eb;--expense-border-light: 1px solid #f1f5f9;--expense-bg-header: #f8fafc;--expense-bg-hover: #f8fafc;--expense-bg-level1: #f8fafc;--expense-bg-level2: #f1f5f9;--expense-bg-level3: #ffffff;--expense-accent-left-1: #94a3b8;--expense-accent-left-2: #cbd5e1;--expense-text: #111827;--expense-text-muted: #6b7280;--expense-text-muted2: #64748b;--expense-link: #2563eb;--expense-link-hover: #1d4ed8;--expense-tag-bg: #e0e7ff;--expense-tag-text: #3730a3;--expense-status-active: #16a34a;--expense-status-pending: #2563eb;--expense-status-paused: #ca8a04;--expense-status-archived: #6b7280;--expense-status-declined: #dc2626}.expense-table-wrapper{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;flex:1;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch}.expense-table-layout{min-width:1400px;width:100%}.expense-table-header{display:grid;grid-template-columns:var(--expense-grid-columns);background:var(--expense-bg-header);position:sticky;top:0;z-index:10;border-bottom:var(--expense-border);box-shadow:0 1px #e5e7eb}.expense-table-header-cell-wrapper{position:relative;display:flex;align-items:stretch;min-width:0}.expense-table-header-cell-wrapper .expense-table-header-cell{flex:1;min-width:0}.expense-table-header-cell{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:6px 8px;text-align:left;font-size:.6875rem;font-weight:600;color:var(--expense-text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;line-height:1.2;display:flex;align-items:center;border-right:var(--expense-border-light)}.expense-table-header-cell:first-child{padding-left:10px}.expense-table-header-cell:last-child{padding-right:10px;border-right:none}.expense-table-header-cell.expense-cell-stt{text-align:center;justify-content:center}.expense-table-header-cell.expense-cell-mono{font-variant-numeric:tabular-nums}.expense-table-header-cell.expense-cell-right{text-align:right;justify-content:flex-end}.expense-table-header-cell.expense-cell-center{text-align:center;justify-content:center}.expense-column-resize-handle{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;z-index:1;margin-right:-3px}.expense-column-resize-handle:hover,.expense-column-resize-handle:active{background:#2563eb1a}.expense-table-virtual-body{box-sizing:border-box}.expense-virtual-row{box-sizing:border-box;display:grid;align-items:flex-start;min-height:var(--expense-row-h);border-bottom:var(--expense-border-light);transition:background-color .15s ease}.expense-virtual-row:hover{background:var(--expense-bg-hover)}.expense-loading-inline{font-size:.75rem;color:var(--expense-text-muted2);font-style:italic}.expense-loading-spinner-inline{margin-left:6px;font-size:.75rem;color:var(--expense-text-muted)}.expense-row-campaign{background:var(--expense-bg-level1);border-left:4px solid var(--expense-accent-left-1);font-weight:600;font-size:.875rem}.expense-row-campaign:hover{background:#f1f5f9}.expense-group-row.expense-row-adset{background:var(--expense-bg-level2);border-left:4px solid var(--expense-accent-left-2);font-weight:500;font-size:.8125rem}.expense-group-row.expense-row-adset:hover{background:#e2e8f0}.expense-child-row{background:var(--expense-bg-level3);font-size:.8125rem}.expense-child-row:hover{background:#fafafa}.expense-row-adset-loading{background:var(--expense-bg-level3)}.expense-row-adset-loading:hover{background:#fafafa}.expense-row-campaign .expense-cell-expand{padding-left:12px}.expense-row-adset .expense-cell-expand,.expense-row-adset .expense-cell-indent--level2{padding-left:44px}.expense-child-row .expense-cell-indent{padding-left:52px}.expense-cell-indent--level2,.expense-cell-indent--level3{display:flex;align-items:center;gap:6px}.expense-level-marker{color:var(--expense-accent-left-2);font-size:.75rem;line-height:1;flex-shrink:0}.expense-level-marker--level3{color:var(--expense-text-muted);margin-left:.25rem}.expense-cell-expand{display:flex;align-items:center;justify-content:center;padding:0 6px;align-self:center}.expense-expand-toggle{border:none;background:transparent;padding:6px;cursor:pointer;color:var(--expense-text-muted);display:inline-flex;align-items:center;justify-content:center;border-radius:4px;transition:color .15s,background .15s}.expense-row-campaign .expense-expand-toggle,.expense-row-adset .expense-expand-toggle{color:var(--expense-text-muted2)}.expense-expand-toggle:hover{color:var(--expense-text);background:#0000000f}.expense-expand-toggle i{font-size:.6875rem}.expense-group-count-inline{font-size:.75rem;color:var(--expense-text-muted2);font-weight:500}.expense-row-campaign .expense-group-count-inline{font-weight:600;color:var(--expense-text-muted)}.expense-virtual-cell{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:6px 8px;font-size:.8125rem;color:var(--expense-text);line-height:1.35;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-right:var(--expense-border-light)}.expense-virtual-cell:first-child{padding-left:10px}.expense-virtual-cell:last-child{border-right:none;padding-right:10px}.expense-virtual-cell.expense-cell-stt{justify-content:center;font-size:.75rem;color:var(--expense-text-muted);font-variant-numeric:tabular-nums}.expense-virtual-cell.expense-cell-mono{font-variant-numeric:tabular-nums}.expense-virtual-cell.expense-cell-right{justify-content:flex-end;text-align:right;font-variant-numeric:tabular-nums}.expense-virtual-cell.expense-cell-center{justify-content:center;text-align:center}.expense-virtual-cell.expense-cell-name{min-width:0}.expense-virtual-cell.expense-cell-name-budget{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;min-height:calc(var(--expense-row-h) - 12px);padding-top:8px;padding-bottom:8px}.expense-cell-name-line{line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-cell-budget-line{font-size:.6875rem;color:var(--expense-text-muted);line-height:1.3;flex-shrink:0}.expense-budget-current{color:#16a34a;font-weight:500}.expense-budget-arrow{color:var(--expense-text-muted);margin:0 2px}.expense-budget-old{color:#dc2626}.expense-virtual-cell.expense-cell-id-status{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:3px;min-height:calc(var(--expense-row-h) - 12px);padding-top:8px;padding-bottom:8px}.expense-cell-id-line{font-variant-numeric:tabular-nums;font-size:inherit;line-height:1.3;flex-shrink:0}.expense-cell-status-line{font-size:.6875rem;line-height:1.3;flex-shrink:0}.expense-virtual-cell.expense-cell-tag-kh{padding:4px 6px}.expense-tag-kh-trigger{width:100%;padding:0;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-tag-kh-trigger:hover{color:var(--expense-link);text-decoration:underline}.expense-tag-kh-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:.6875rem;font-weight:600;line-height:1.2;background:var(--expense-tag-bg);color:var(--expense-tag-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.expense-tag-kh-placeholder{color:#9ca3af}.expense-tag-kh-readonly{cursor:default;pointer-events:none}.expense-status-trigger{padding:0;border:none;background:none;font:inherit;cursor:pointer;text-align:left;width:100%;border-radius:2px}.expense-status-trigger:hover{text-decoration:underline}.expense-cell-status-line:not([class*=expense-status-]){color:var(--expense-text-muted)}.expense-status-active{color:var(--expense-status-active);font-weight:500}.expense-status-pending{color:var(--expense-status-pending);font-weight:500}.expense-status-paused{color:var(--expense-status-paused);font-weight:500}.expense-status-archived{color:var(--expense-status-archived)}.expense-status-declined{color:var(--expense-status-declined);font-weight:500}.expense-status-dropdown{display:flex;flex-direction:column;min-width:140px;padding:6px;background:#fff;border:var(--expense-border);border-radius:8px;box-shadow:0 4px 12px #0000001a}.expense-status-dropdown-option{padding:6px 10px;border:none;background:none;font-size:.8125rem;text-align:left;cursor:pointer;border-radius:4px}.expense-status-dropdown-option:hover{background:var(--expense-bg-hover)}.expense-status-dropdown-option.selected{background:var(--expense-tag-bg);font-weight:500}.expense-status-dropdown-option.expense-status-active{color:var(--expense-status-active)}.expense-status-dropdown-option.expense-status-pending{color:var(--expense-status-pending)}.expense-status-dropdown-option.expense-status-paused{color:var(--expense-status-paused)}.expense-status-dropdown-option.expense-status-archived{color:var(--expense-status-archived)}.expense-status-dropdown-option.expense-status-declined{color:var(--expense-status-declined)}.expense-tagkh-filter-trigger,.expense-idtkqc-filter-trigger,.expense-chot-filter-trigger{cursor:pointer;border:none;background:transparent;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:2px}.expense-tagkh-filter-trigger:hover,.expense-idtkqc-filter-trigger:hover,.expense-chot-filter-trigger:hover{background:#0000000a}.expense-idtkqc-filter-dropdown{display:flex;flex-direction:column;min-width:200px;max-width:320px;max-height:360px;padding:0;background:#fff;border:var(--expense-border);border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.expense-idtkqc-filter-search{flex-shrink:0;margin:8px;padding:6px 10px;font-size:.8125rem;border:1px solid #e5e7eb;border-radius:6px;outline:none}.expense-idtkqc-filter-search:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.expense-idtkqc-filter-actions{flex-shrink:0;display:flex;gap:8px;padding:0 8px 6px;border-bottom:1px solid #e5e7eb}.expense-idtkqc-filter-action-btn{padding:4px 8px;font-size:.75rem;font-weight:500;color:#2563eb;background:none;border:none;cursor:pointer;border-radius:4px}.expense-idtkqc-filter-action-btn:hover{background:#eff6ff}.expense-idtkqc-filter-list{overflow-y:auto;padding:6px 8px;max-height:260px}.expense-idtkqc-filter-option{display:flex;align-items:center;gap:8px;padding:4px 6px;font-size:.8125rem;cursor:pointer;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expense-idtkqc-filter-option:hover{background:#f3f4f6}.expense-idtkqc-filter-option input{flex-shrink:0;cursor:pointer}.expense-idtkqc-filter-empty{padding:12px;font-size:.8125rem;color:var(--expense-text-muted);text-align:center}.expense-chot-filter-dropdown{display:flex;flex-direction:column;min-width:120px;padding:6px;background:#fff;border:var(--expense-border);border-radius:8px;box-shadow:0 4px 12px #0000001a}.expense-chot-filter-option{padding:6px 10px;border:none;background:none;font-size:.8125rem;text-align:left;cursor:pointer;border-radius:4px}.expense-chot-filter-option:hover{background:var(--expense-bg-hover)}.expense-chot-filter-option.selected{background:var(--expense-tag-bg);font-weight:500}.expense-chot-cell-trigger{width:100%;padding:0;border:none;background:none;font:inherit;color:inherit;text-align:center;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-chot-cell-trigger:hover .expense-chot-badge{filter:brightness(.96)}.expense-chot-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:.6875rem;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.expense-chot-badge--closed{background:#dcfce7;color:#16a34a}.expense-chot-badge--not-closed{background:#fef3c7;color:#ca8a04}.expense-chot-placeholder{color:#9ca3af}.expense-chot-badge-readonly{cursor:default;pointer-events:none}.expense-virtual-cell.expense-cell-link a{color:var(--expense-link);text-decoration:none}.expense-virtual-cell.expense-cell-link a:hover{color:var(--expense-link-hover);text-decoration:underline}.expense-table-loading-row,.expense-table-empty-row{display:grid;grid-template-columns:var(--expense-grid-columns)}.expense-table-empty-row{min-height:calc(100vh - 104px)}.expense-table-loading,.expense-table-empty{padding:40px 16px;text-align:center;grid-column:1 / -1}.expense-table-empty{display:flex;align-items:center;justify-content:center;min-height:100%}.expense-loading-spinner{display:inline-block;width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:var(--expense-link);border-radius:50%;animation:expense-spin .8s linear infinite;margin-right:10px;vertical-align:middle}@keyframes expense-spin{to{transform:rotate(360deg)}}.expense-table-loading span:last-child{color:var(--expense-text-muted);font-size:.875rem}.expense-empty-content{display:flex;flex-direction:column;align-items:center;gap:8px}.expense-empty-icon{font-size:2.5rem;color:#d1d5db;opacity:.8}.expense-empty-title{font-size:1rem;font-weight:600;color:var(--expense-text);margin:0}.expense-empty-desc{font-size:.875rem;color:var(--expense-text-muted);margin:0}.expense-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.expense-filter-label{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:#374151}.expense-filter-icon{font-size:1rem;color:#6b7280}.expense-filter-select{min-width:100px;padding:8px 32px 8px 12px;font-size:.875rem;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s ease,box-shadow .15s ease}.expense-filter-select:hover{border-color:#9ca3af}.expense-filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.expense-filter-select-year{min-width:80px}.expense-scan-drawer-overlay{position:fixed;inset:0;background:#0f172a59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;justify-content:flex-end;animation:expense-scan-overlay-in .2s ease-out}@keyframes expense-scan-overlay-in{0%{opacity:0}to{opacity:1}}.expense-scan-drawer{--expense-scan-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--expense-scan-bg: #ffffff;--expense-scan-bg-subtle: #f8fafc;--expense-scan-border: #e2e8f0;--expense-scan-text: #0f172a;--expense-scan-text-muted: #64748b;--expense-scan-accent: #2563eb;--expense-scan-accent-hover: #1d4ed8;--expense-scan-success: #059669;--expense-scan-fail: #dc2626;--expense-scan-warn: #d97706;--expense-scan-running: #0284c7;font-family:var(--expense-scan-font);width:min(92vw,980px);max-width:980px;height:100%;background:var(--expense-scan-bg);box-shadow:-8px 0 32px #0f172a1f;display:flex;flex-direction:column;overflow:hidden;animation:expense-scan-drawer-in .25s ease-out}@keyframes expense-scan-drawer-in{0%{transform:translate(24px);opacity:.95}to{transform:translate(0);opacity:1}}.expense-scan-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--expense-scan-border);background:var(--expense-scan-bg);flex-shrink:0}.expense-scan-drawer-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--expense-scan-text);letter-spacing:-.01em}.expense-scan-drawer-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--expense-scan-text-muted);border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.expense-scan-drawer-close:hover{background:var(--expense-scan-bg-subtle);color:var(--expense-scan-text)}.expense-scan-drawer-summary{padding:1rem 1.5rem;background:var(--expense-scan-bg-subtle);border-bottom:1px solid var(--expense-scan-border);flex-shrink:0}.expense-scan-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem 1rem}.expense-scan-summary-item{display:flex;flex-direction:column;gap:.25rem;padding:.625rem .75rem;background:var(--expense-scan-bg);border:1px solid var(--expense-scan-border);border-radius:8px}.expense-scan-summary-label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;color:var(--expense-scan-text-muted)}.expense-scan-summary-value{font-size:1rem;font-weight:600;color:var(--expense-scan-text)}.expense-scan-drawer-summary .expense-scan-summary-loading,.expense-scan-drawer-summary .expense-scan-summary-empty{font-size:.875rem;color:var(--expense-scan-text-muted)}.expense-scan-drawer-tabs{display:flex;gap:.25rem;padding:0 1.5rem;border-bottom:1px solid var(--expense-scan-border);background:var(--expense-scan-bg);flex-shrink:0}.expense-scan-tab{padding:.75rem 1rem;border:none;background:none;cursor:pointer;font-family:var(--expense-scan-font);font-size:.875rem;font-weight:500;color:var(--expense-scan-text-muted);border-radius:0;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}.expense-scan-tab:hover{color:var(--expense-scan-text)}.expense-scan-tab.active{color:var(--expense-scan-accent);border-bottom-color:var(--expense-scan-accent)}.expense-scan-drawer-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:1.25rem 1.5rem}.expense-scan-panel{flex:1;min-height:0;display:flex;flex-direction:column}.expense-scan-panel-loading,.expense-scan-panel-empty{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--expense-scan-text-muted);font-size:.875rem}.expense-scan-panel-loading .loading-overlay-inline{padding:1rem}.expense-scan-panel-empty-icon{margin-bottom:.5rem;opacity:.6}.expense-scan-table-wrap{flex:1;min-height:0;overflow:auto;border:1px solid var(--expense-scan-border);border-radius:10px;background:var(--expense-scan-bg)}.expense-scan-table{width:100%;border-collapse:collapse;font-size:.8125rem;font-family:var(--expense-scan-font)}.expense-scan-table th,.expense-scan-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--expense-scan-border);white-space:nowrap}.expense-scan-table th{position:sticky;top:0;z-index:1;background:var(--expense-scan-bg-subtle);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--expense-scan-text-muted)}.expense-scan-table tbody tr:hover{background:var(--expense-scan-bg-subtle)}.expense-scan-table tbody tr:last-child td{border-bottom:none}.expense-scan-table td{vertical-align:middle;color:var(--expense-scan-text)}.expense-scan-status{display:inline-block;padding:.2em .5em;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;border-radius:4px}.expense-scan-status.success{background:#0596691f;color:var(--expense-scan-success)}.expense-scan-status.failed{background:#dc26261a;color:var(--expense-scan-fail)}.expense-scan-status.running{background:#0284c71f;color:var(--expense-scan-running)}.expense-scan-status.partial{background:#d977061f;color:var(--expense-scan-warn)}.expense-scan-token-ok{color:var(--expense-scan-success)}.expense-scan-token-cooldown{color:var(--expense-scan-warn)}.expense-scan-token-invalid{color:var(--expense-scan-fail)}.expense-scan-pagination{flex-shrink:0;display:flex;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--expense-scan-border);font-size:.8125rem;color:var(--expense-scan-text-muted)}.expense-scan-pagination-info{flex:1}.expense-scan-pagination-actions{display:flex;gap:.5rem}.expense-scan-pagination button{padding:.4rem .875rem;font-family:var(--expense-scan-font);font-size:.8125rem;font-weight:500;border:1px solid var(--expense-scan-border);background:var(--expense-scan-bg);color:var(--expense-scan-text);border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.expense-scan-pagination button:hover:not(:disabled){background:var(--expense-scan-bg-subtle);border-color:var(--expense-scan-accent);color:var(--expense-scan-accent)}.expense-scan-pagination button:disabled{opacity:.5;cursor:not-allowed}.expense-management-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 16px 0;max-width:1600px;margin:0 auto;width:100%;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.expense-management-statistics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.expense-management-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;display:flex;align-items:center;gap:8px;box-shadow:0 1px 2px #0000000d}.expense-management-stat-card.expense-management-stat-spend{border-color:#2563eb4d;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.expense-management-stat-card>svg{flex-shrink:0;color:#4b5563}.expense-management-stat-spend>svg{color:#2563eb}.expense-management-stat-content{display:flex;flex-direction:column;gap:1px;min-width:0}.expense-management-stat-content--spend{flex:1;min-width:0}.expense-management-stat-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.expense-management-stat-spend .expense-management-stat-header{justify-content:flex-end}.expense-management-stat-header .expense-management-stat-label{flex-shrink:0}.expense-management-stat-label{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.6875rem;color:#6b7280;font-weight:500;line-height:1.2}.expense-management-stat-value{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;font-weight:700;color:#111827;line-height:1.25}.expense-management-stat-view-more{display:inline-flex;align-items:center;gap:2px;margin:0;padding:0;font-size:.625rem;font-weight:500;color:#2563eb;background:none;border:none;cursor:pointer;transition:color .2s;flex-shrink:0}.expense-management-stat-view-more:hover{color:#1d4ed8;text-decoration:underline}.expense-management-stat-view-more-wrap{position:relative}.expense-management-stat-currency-line{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.625rem;line-height:1.3;margin-top:2px}.expense-management-stat-currency-code{color:#6b7280;font-weight:500}.expense-management-stat-currency-value{color:#1d4ed8;font-weight:600}.expense-progress-bar{margin-bottom:8px;padding:6px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.8125rem;color:#475569}.expense-progress-bar span{display:block;margin-bottom:4px}.expense-management-last-updated{padding:4px 16px 8px;font-size:.8125rem;color:#64748b}.expense-progress-track{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.expense-progress-fill{height:100%;background:#2563eb;border-radius:3px;transition:width .2s ease}.expense-management-stat-content--combined{flex-direction:row;flex-wrap:nowrap;gap:10px;align-items:stretch}.expense-management-stat-item-v{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;min-width:0}.expense-management-stat-item-v .expense-management-stat-label{font-size:.625rem}.expense-management-stat-item-v .expense-management-stat-value{font-size:.8125rem}.expense-management-stat-combined .expense-management-stat-content--combined{flex:1}.expense-spend-detail-backdrop{position:fixed;inset:0;background:#0003;z-index:999;cursor:default}.expense-spend-detail-popup{position:absolute;top:100%;left:0;margin-top:6px;z-index:1000;min-width:280px;max-width:340px;background:#fff;border-radius:10px;box-shadow:0 10px 30px #0000001f,0 0 0 1px #0000000f;overflow:hidden;display:flex;flex-direction:column;animation:expense-spend-popup-in .2s ease-out}@keyframes expense-spend-popup-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.expense-spend-detail-popup-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:linear-gradient(180deg,#fafbfc,#fff)}.expense-spend-detail-popup-header h3{margin:0;font-size:.9375rem;font-weight:600;color:#111827}.expense-spend-detail-popup-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;transition:background .15s,color .15s}.expense-spend-detail-popup-close:hover{background:#f3f4f6;color:#111827}.expense-spend-detail-popup-body{padding:10px 14px 12px;overflow-y:auto;max-height:60vh}.expense-spend-detail-loading,.expense-spend-detail-empty{margin:0;font-size:.8125rem;color:#6b7280}.expense-spend-detail-list{margin:0;padding:0;list-style:none}.expense-spend-detail-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:.875rem}.expense-spend-detail-row:last-child{border-bottom:none}.expense-spend-detail-currency{font-weight:600;color:#374151}.expense-spend-detail-value{font-weight:600;color:#1d4ed8}@media(max-width:900px){.expense-management-statistics{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.expense-management-statistics{grid-template-columns:1fr}}.expense-management-table-container{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.expense-management-toolbar{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.expense-management-toolbar-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.expense-management-toolbar-left,.expense-management-toolbar-right{display:flex;align-items:center;gap:12px}.expense-management-tkqc-select-wrap{display:flex;align-items:center;gap:8px}.expense-management-tkqc-label{font-size:.875rem;font-weight:500;color:#374151;white-space:nowrap}.expense-management-tkqc-select{min-width:180px;max-width:280px;padding:8px 32px 8px 12px;font-size:.875rem;color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.expense-management-tkqc-select:hover{border-color:#9ca3af}.expense-management-tkqc-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.expense-management-search-wrap{display:flex;align-items:center;gap:6px}.expense-management-search-input-box{position:relative;width:210px;height:34px;flex-shrink:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:border-color .2s,box-shadow .2s}.expense-management-search-input-box:focus-within{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.expense-management-search-input{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;height:100%;padding:0 10px;border:none;border-radius:8px;font-size:.8125rem;color:#111827;background:transparent;box-sizing:border-box}.expense-management-search-input::-moz-placeholder{color:#9ca3af}.expense-management-search-input::placeholder{color:#9ca3af}.expense-management-search-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#4b5563;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.expense-management-search-btn:hover{background:#2563eb;color:#fff;border-color:#2563eb}.expense-management-search-nav{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;border-left:1px solid #e5e7eb;padding-left:6px;gap:2px;background:#fff;border-radius:0 8px 8px 0}.expense-management-search-count{font-size:.8125rem;color:#4b5563;min-width:2rem;text-align:center;padding-right:4px}.expense-management-search-nav-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:#4b5563;cursor:pointer;transition:background .15s,color .15s}.expense-management-search-nav-btn:hover{background:#e5e7eb;color:#1f2937}.btn-expense-toolbar{background:#fff;color:#1f2937;padding:8px 14px;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}.btn-expense-toolbar:hover{border-color:#c7d2fe;color:#1d4ed8}.btn-expense-toolbar-icon-only{padding:8px}.btn-expense-toolbar.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;box-shadow:0 4px 6px -1px #2563eb4d}.btn-expense-toolbar.primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.expense-management-toolbar-right{display:flex;align-items:center;gap:12px}.audit-log-table-wrapper{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;flex:1;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch}.audit-log-table-layout{min-width:1000px;width:100%;--audit-grid-cols: 2.5rem 5.5rem minmax(120px, 1.2fr) minmax(110px, 1fr) minmax(90px, .9fr) 4.5rem 5rem minmax(160px, 1.4fr) minmax(160px, 1.4fr)}.audit-log-table-header{display:grid;grid-template-columns:var(--audit-grid-cols);background:#f8fafc;position:sticky;top:0;z-index:10;border-bottom:1px solid #e2e8f0;box-shadow:0 1px #e2e8f0}.audit-log-table-header-cell{padding:10px;font-size:.6875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;display:flex;align-items:center}.audit-log-cell-expand{justify-content:center;text-align:center}.audit-log-cell-time{font-variant-numeric:tabular-nums;padding-left:12px}.audit-log-cell-actor,.audit-log-cell-action,.audit-log-cell-entity{min-width:0;overflow:hidden;text-overflow:ellipsis}.audit-log-cell-status{justify-content:center;text-align:center}.audit-log-cell-request-id{font-family:ui-monospace,monospace;font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis}.audit-log-cell-before,.audit-log-cell-after{min-width:0}.audit-log-table-row-wrap{border-bottom:1px solid #e2e8f0}.audit-log-table-row-wrap[data-expanded=true]{z-index:1;background:#fff;box-shadow:0 4px 6px -1px #0000001a}.audit-log-table-row{display:grid;grid-template-columns:var(--audit-grid-cols);min-height:44px;align-items:center;padding:0;background:#fff;font-size:.8125rem;color:#374151}.audit-log-table-row[data-expandable=true]{cursor:pointer}.audit-log-table-row[data-expandable=true]:hover{background:#f8fafc}.audit-log-table-cell{padding:8px 10px;min-width:0;overflow:hidden;text-overflow:ellipsis}.audit-log-table-cell.audit-log-cell-expand{display:flex;align-items:center;justify-content:center;color:#64748b;flex-shrink:0}.audit-log-table-cell.audit-log-cell-time{font-variant-numeric:tabular-nums;color:#64748b;white-space:nowrap;padding-left:12px}.audit-log-table-cell.audit-log-cell-actor{color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-log-table-cell.audit-log-cell-action{font-weight:500;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-log-table-cell.audit-log-cell-entity{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#475569}.audit-log-table-cell.audit-log-cell-status{display:flex;align-items:center;justify-content:center}.audit-log-table-cell.audit-log-cell-request-id{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audit-log-table-cell.audit-log-cell-before,.audit-log-table-cell.audit-log-cell-after{overflow:hidden;align-self:start;padding-top:10px}.audit-log-status{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:500}.audit-log-status-success{background:#dcfce7;color:#166534}.audit-log-status-failed,.audit-log-status-error{background:#fee2e2;color:#b91c1c}.audit-log-table-detail{padding:12px 12px 12px 3rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:.8125rem;max-height:min(50vh,400px);overflow-y:auto;overflow-x:hidden}.audit-log-detail-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 20px;margin-bottom:12px}.audit-log-detail-row:last-child{margin-bottom:0}.audit-log-detail-row .audit-log-detail-section:only-child{grid-column:1 / -1}.audit-log-detail-section{margin-bottom:12px;min-width:0}.audit-log-detail-meta{display:grid;gap:6px 12px;margin:0;font-size:.8125rem}.audit-log-detail-meta-row{display:grid;grid-template-columns:120px 1fr;align-items:baseline;gap:8px}.audit-log-detail-meta-row dt{margin:0;font-weight:500;color:#475569}.audit-log-detail-meta-row dd{margin:0;color:#0f172a;word-break:break-word}.audit-log-detail-request-id{font-family:ui-monospace,monospace;font-size:.75rem}.audit-log-detail-section:last-child{margin-bottom:0}.audit-log-detail-title{font-weight:600;color:#0f172a;margin-bottom:6px}.audit-log-detail-ids{margin:0;padding-left:20px;list-style:disc;color:#475569}.audit-log-detail-ids li{font-family:ui-monospace,monospace;font-size:.75rem;word-break:break-all;margin-bottom:2px}.audit-log-detail-diff{display:flex;flex-direction:column;gap:6px}.audit-log-diff-row{display:flex;flex-direction:column;gap:2px;padding:4px 0}.audit-log-diff-key{font-weight:500;color:#475569;font-size:.75rem}.audit-log-diff-old{color:#b91c1c;font-size:.8125rem;padding-left:8px}.audit-log-diff-new{color:#15803d;font-size:.8125rem;padding-left:8px}.audit-log-preview{display:block;overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap;word-break:break-word;font-size:.75rem;line-height:1.4;max-height:4.5em}.audit-log-preview-before{color:#b91c1c}.audit-log-preview-after{color:#15803d}.audit-log-table-loading{padding:32px 16px;text-align:center;color:#64748b;font-size:.875rem}.audit-log-table-virtual-body{min-height:0}.audit-log-table-row-wrap[data-virtual-row=true]{will-change:transform}.audit-log-management-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:12px 4px 0;width:100%;max-width:none;flex:1;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.audit-log-table-container{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 4px -1px #0000000f,0 4px 6px -1px #0000001a;flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.audit-log-toolbar{padding:12px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.audit-log-toolbar-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.audit-log-toolbar-left{display:flex;align-items:center;gap:12px}.audit-log-search-wrap{display:flex;align-items:center;gap:6px}.audit-log-search-input-box{position:relative;width:220px;height:34px;flex-shrink:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:border-color .2s,box-shadow .2s}.audit-log-search-input-box:focus-within{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.audit-log-search-input{width:100%;height:100%;padding:0 10px;border:none;border-radius:8px;font-size:.8125rem;color:#1f2937;background:transparent;box-sizing:border-box}.audit-log-search-input::-moz-placeholder{color:#9ca3af}.audit-log-search-input::placeholder{color:#9ca3af}.audit-log-search-input:focus{outline:none}.audit-log-search-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#4b5563;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.audit-log-search-btn:hover{background:#2563eb;color:#fff;border-color:#2563eb}.audit-log-filter-wrap{display:flex;align-items:center;gap:8px;height:34px}.audit-log-filter-icon{color:#64748b;flex-shrink:0}.audit-log-filter-select{height:34px;min-width:160px;padding:0 10px;border:1px solid #e5e7eb;border-radius:8px;font-size:.8125rem;color:#374151;background:#fff;cursor:pointer;transition:border-color .2s}.audit-log-filter-select:hover{border-color:#c7d2fe}.audit-log-filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.audit-log-toolbar-right{display:flex;align-items:center;gap:12px}.audit-log-result-count{font-size:.8125rem;color:#64748b;font-variant-numeric:tabular-nums}.audit-log-table-wrapper{height:calc(100vh - 280px)}.page-transition,.page-transition.visible{opacity:1}.toast-container{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:12px;pointer-events:none;width:400px;max-width:400px}.toast{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;border-left:4px solid;pointer-events:auto;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;width:400px;max-width:400px;max-height:200px;min-height:60px;box-sizing:border-box}.toast:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:currentColor;opacity:.3;transform:scaleX(0);transform-origin:left;animation:progress 5s linear forwards}@keyframes progress{to{transform:scaleX(1)}}.toast-success{border-left-color:#4caf50;color:#2e7d32;background:linear-gradient(135deg,#e8f5e9,#fff)}.toast-error{border-left-color:#f44336;color:#c62828;background:linear-gradient(135deg,#ffebee,#fff)}.toast-warning{border-left-color:#ff9800;color:#f57c00;background:linear-gradient(135deg,#fff3e0,#fff)}.toast-info{border-left-color:#2196f3;color:#1976d2;background:linear-gradient(135deg,#e3f2fd,#fff)}.toast-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;border-radius:50%;background:#fffc}.toast-success .toast-icon{background:#4caf501a;color:#4caf50}.toast-error .toast-icon{background:#f443361a;color:#f44336}.toast-warning .toast-icon{background:#ff98001a;color:#ff9800}.toast-info .toast-icon{background:#2196f31a;color:#2196f3}.toast-content{flex:1;min-width:0;max-height:168px;overflow-y:auto;overflow-x:hidden;padding-right:4px}.toast-content::-webkit-scrollbar{width:6px}.toast-content::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.toast-content::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.toast-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.toast-message{font-size:14px;line-height:1.5;font-weight:500;word-wrap:break-word;overflow-wrap:break-word}.toast-close{flex-shrink:0;width:20px;height:20px;border:none;background:transparent;color:currentColor;font-size:20px;line-height:1;cursor:pointer;opacity:.6;transition:opacity .2s ease;padding:0;display:flex;align-items:center;justify-content:center}.toast-close:hover{opacity:1}.toast-enter{animation:slideInRight .3s cubic-bezier(.4,0,.2,1) forwards}.toast-exit{animation:slideOutRight .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast:hover{transform:translate(-4px);box-shadow:0 6px 24px #0003}@media(max-width:768px){.toast-container{bottom:16px;right:16px;left:16px;width:calc(100% - 32px);max-width:calc(100% - 32px)}.toast{width:100%;max-width:100%;padding:14px 16px}.toast-content{max-height:150px}.toast-message{font-size:13px}}@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-600:oklch(57.7% .245 27.325);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-600:oklch(64.6% .222 41.116);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-600:oklch(68.1% .162 75.834);--color-green-100:oklch(96.2% .044 156.743);--color-green-600:oklch(62.7% .194 149.214);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-800:oklch(42.4% .199 265.638);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-600:oklch(51.1% .262 276.966);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-600:oklch(55.8% .288 302.321);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-600:oklch(59.2% .249 .584);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-medium:500;--font-weight-bold:700;--tracking-wider:.05em;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-3{margin-top:calc(var(--spacing)*3)}.mr-1{margin-right:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-12{height:calc(var(--spacing)*12)}.h-64{height:calc(var(--spacing)*64)}.min-h-0{min-height:calc(var(--spacing)*0)}.w-12{width:calc(var(--spacing)*12)}.w-full{width:100%}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-600{border-color:var(--color-blue-600)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-100{background-color:var(--color-green-100)}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-orange-100{background-color:var(--color-orange-100)}.bg-pink-100{background-color:var(--color-pink-100)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-red-100{background-color:var(--color-red-100)}.bg-white{background-color:var(--color-white)}.bg-yellow-100{background-color:var(--color-yellow-100)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-6{padding:calc(var(--spacing)*6)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-3{padding-block:calc(var(--spacing)*3)}.py-12{padding-block:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-blue-600{color:var(--color-blue-600)}.text-blue-800{color:var(--color-blue-800)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-indigo-600{color:var(--color-indigo-600)}.text-orange-600{color:var(--color-orange-600)}.text-pink-600{color:var(--color-pink-600)}.text-purple-600{color:var(--color-purple-600)}.text-red-600{color:var(--color-red-600)}.text-yellow-600{color:var(--color-yellow-600)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.opacity-50{opacity:.5}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media(hover:hover){.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#e3f2fd,#bbdefb);height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;transition:background .3s;overflow:hidden}#root{height:100vh;position:relative;overflow:hidden}.page-transition-enter{opacity:0;transform:translate(20px)}.page-transition-enter-active{opacity:1;transition:opacity .3s ease-out,transform .3s ease-out;transform:translate(0)}.page-transition-exit{opacity:1;transform:translate(0)}.page-transition-exit-active{opacity:0;transition:opacity .2s ease-in,transform .2s ease-in;transform:translate(-20px)}.fade-in{animation:.4s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}html{scroll-behavior:smooth}@keyframes spin{to{transform:rotate(360deg)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}button,a,input,select,textarea{transition:all .3s cubic-bezier(.4,0,.2,1)}button:hover:not(:disabled){transform:translateY(-2px)}button:active:not(:disabled){transform:translateY(0)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes checkmark{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}.page-enter{opacity:0;transform:translate(20px)}.page-enter-active{opacity:1;transform:translate(0);transition:opacity .4s ease-out,transform .4s ease-out}.page-exit{opacity:1;transform:translate(0)}.page-exit-active{opacity:0;transform:translate(-20px);transition:opacity .3s ease-in,transform .3s ease-in}
