.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-box{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;width:100%;max-width:440px;padding:48px}.login-header{text-align:center;margin-bottom:40px}.logo-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700}.login-logo{width:60px;height:60px;font-size:28px;margin:0 auto 20px}.login-title{font-size:28px;font-weight:700;margin-bottom:8px;color:#1e293b}.login-subtitle{color:#64748b;font-size:15px;margin:0}.form-group.d-flex{display:flex}.form-label{display:block;font-weight:500;font-size:14px;color:#475569;margin-bottom:8px}.form-control{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;transition:all .2s;box-sizing:border-box}.form-control:disabled{background:#f8fafc;cursor:not-allowed}.error-message-general{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:24px;font-size:14px}.error-message{color:#ef4444;font-size:13px;margin-top:6px;display:block}.d-flex{display:flex}.justify-between{justify-content:space-between}.align-items-center{align-items:center}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#1e40af}@media (max-width: 480px){.login-box{padding:32px 24px}.login-title{font-size:24px}}.register-box{max-width:520px!important}.register-box .form-group{margin-bottom:20px}.register-box textarea.form-control{resize:vertical;min-height:60px;font-family:inherit}.page-header-unified{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;padding-top:3px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.page-header-left{flex:1;display:flex;align-items:center;gap:14px}.page-header-text{flex:1;min-width:0}.page-header-title{font-size:26px;font-weight:700;color:#1e293b;margin:0;line-height:1.3}.page-header-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;flex-shrink:0}.page-header-icon svg{width:20px;height:20px}.page-header-subtitle{font-size:14px;color:#64748b;margin:2px 0 0;line-height:1.5}.page-header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}@media (max-width: 768px){.page-header-unified{flex-direction:column;gap:16px;align-items:stretch}.page-header-subtitle{padding-left:0}.page-header-actions{width:100%;justify-content:stretch}.page-header-actions .btn{flex:1}}.sidebar{position:fixed;left:0;top:0;height:100vh;width:260px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;transition:width .3s ease;z-index:100;overflow:hidden}.sidebar.collapsed{width:70px}.sidebar.collapsed .logo-text,.sidebar.collapsed .nav-section-title,.sidebar.collapsed .nav-label{display:none}.sidebar-header{padding:20px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.logo{display:flex;align-items:center;gap:12px;cursor:pointer}.logo-icon{width:40px;height:40px;background:var(--primary-color);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0}.logo-text{font-size:24px;font-weight:700;color:var(--text-dark);white-space:nowrap}.sidebar-nav{flex:1;padding:20px 0;overflow-y:auto;overflow-x:hidden}.nav-section{margin-bottom:24px}.nav-section-title{font-size:11px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;padding:0 20px 8px;white-space:nowrap}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 20px;color:var(--text-medium);text-decoration:none;transition:all .3s ease;position:relative;white-space:nowrap}.nav-item:hover{background:var(--light-bg);color:var(--primary-color)}.nav-item.active{background:#eff6ff;color:var(--primary-color);font-weight:500;border-right:3px solid var(--primary-color)}.nav-icon{width:20px;height:20px;flex-shrink:0}.nav-icon svg{width:100%;height:100%}.nav-tooltip{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:12px 0}.sidebar.collapsed .nav-tooltip{display:none;position:absolute;left:70px;top:50%;transform:translateY(-50%);background:#1e293b;color:#fff;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 4px 12px #00000026}.sidebar.collapsed .nav-tooltip:before{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent #1e293b transparent transparent}.sidebar.collapsed .nav-item:hover .nav-tooltip{display:block}.sidebar-user-footer{position:relative;flex-shrink:0;border-top:1px solid #e5e7eb}.sidebar-user-trigger{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;transition:background .2s}.sidebar-user-trigger:hover{background:#f8fafc}.sidebar-user-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;letter-spacing:.5px}.sidebar-user-info{flex:1;min-width:0;overflow:hidden}.sidebar-user-name{font-size:13px;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.sidebar-user-chevron{flex-shrink:0;color:#94a3b8;transition:transform .2s}.sidebar-user-popover{position:absolute;bottom:calc(100% + 8px);left:12px;right:12px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f;padding:6px;z-index:200;animation:popoverSlideUp .15s ease-out}@keyframes popoverSlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sidebar-popover-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s;width:100%;border:none;background:none;text-decoration:none;font-family:inherit}.sidebar-popover-item:hover{background:#f1f5f9;color:#1e293b}.sidebar-popover-item svg{flex-shrink:0;color:#64748b}.sidebar-popover-item:hover svg{color:#475569}.sidebar-popover-item.logout{color:#dc2626}.sidebar-popover-item.logout:hover{background:#fef2f2;color:#dc2626}.sidebar-popover-item.logout svg{color:#dc2626}.sidebar-popover-divider{height:1px;background:#e5e7eb;margin:4px 8px}.sidebar.collapsed .sidebar-user-info,.sidebar.collapsed .sidebar-user-chevron{display:none}.sidebar.collapsed .sidebar-user-trigger{justify-content:center;padding:16px 0}.sidebar.collapsed .sidebar-user-popover{left:70px;right:auto;bottom:0;width:200px}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}}.top-bar{position:fixed;top:0;right:0;height:80px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between;padding:0 24px;z-index:90;transition:left .3s ease}.firm-name{display:flex;align-items:center;gap:8px;font-size:16px!important;font-weight:600;color:var(--text-dark);padding:8px 16px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:8px;border:1px solid #bae6fd}.firm-name svg{color:#3b82f6;flex-shrink:0;width:20px;height:20px}.search-container{flex:1;max-width:500px;margin:0 auto;display:flex;align-items:center}.search-box{position:relative;width:100%;display:flex;align-items:center}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.search-box input{width:100%;height:40px;padding:0 14px 0 42px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s;line-height:40px}.search-box input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.top-bar-actions{display:flex;align-items:center;gap:10px;position:relative;min-width:200px;justify-content:flex-end}.topbar-divider{width:1px;height:24px;background:#e2e8f0;flex-shrink:0}.topbar-pill{display:flex;align-items:center;gap:6px;padding:6px 14px 6px 10px;height:34px;background:#2563eb;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.topbar-pill:hover{background:#1d4ed8;transform:translateY(-1px)}.topbar-pill:active{transform:translateY(0)}.topbar-pill.active{background:#1e40af}.topbar-pill-icon{font-size:13px;line-height:1}.topbar-pill-label{font-size:12.5px;font-weight:600;color:#fff;letter-spacing:-.1px}.topbar-utils{display:flex;align-items:center;gap:2px}.topbar-ghost-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s;padding:0;color:#94a3b8}.topbar-ghost-btn:hover{background:#f1f5f9;color:#475569}.topbar-ghost-btn.active{background:#eff6ff;color:#2563eb}.topbar-ghost-btn svg{color:inherit}.btn-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;padding:0}.btn-icon:hover{border-color:#667eea;background:#f3f4f6}.btn-icon.active{border-color:#2563eb;background:#eff6ff}.btn-icon svg{color:#4b5563}.btn-icon:hover svg{color:#667eea}.user-menu{display:flex;align-items:center;gap:12px;height:40px;padding:0 12px;border-radius:8px;cursor:pointer;transition:all .2s}.user-menu:hover{background:#f3f4f6}.user-avatar{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.user-info{display:flex;flex-direction:column}.user-name{font-size:14px;font-weight:600;color:#1e293b;line-height:1.2}.user-role{font-size:12px;color:#6b7280}.dropdown{position:absolute;top:65px;right:24px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #0000001a;min-width:200px;z-index:1000;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.user-dropdown{padding:8px}.dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;color:#4b5563;border-radius:6px;transition:all .2s;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-size:14px}.dropdown-item:hover{background:#f3f4f6;color:#667eea}.dropdown-item svg{color:currentColor}.dropdown-divider{height:1px;background:#e5e7eb;margin:8px 0}.quick-access-panel{width:320px}.panel-header{padding:20px 24px;border-bottom:1px solid #e5e7eb}.panel-header h4{margin:0;font-size:16px;font-weight:600;color:#1e293b}.quick-links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:16px}.quick-link{display:flex;flex-direction:column;align-items:center;padding:20px 12px;text-decoration:none;transition:all .2s;border-radius:8px}.quick-link:hover{background:#f3f4f6}.quick-link-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.quick-link span{font-size:12px;font-weight:500;color:#475569;text-align:center}.panel-divider{height:1px;background:#e5e7eb;margin:0 16px}.quick-actions-section{padding:16px}.section-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding:0 8px}.quick-action-card{display:flex;align-items:center;padding:12px;text-decoration:none;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;transition:all .2s}.quick-action-card:hover{background:#f1f5f9;border-color:#cbd5e1}.quick-action-card:last-child{margin-bottom:0}.action-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-right:12px;flex-shrink:0}.action-content{flex:1}.action-title{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:2px}.action-desc{font-size:11px;color:#64748b}.menu-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:transparent;z-index:89}@media (max-width: 768px){.top-bar{left:0}.firm-name{display:none}.search-container{max-width:none}}.impersonate-btn.active{border-color:#f59e0b;background:#fffbeb}.impersonate-btn.active svg{color:#d97706}.impersonation-dropdown{width:320px;padding:0;overflow:hidden}.impersonation-header{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid #e5e7eb;font-size:13px;font-weight:600;color:#1e293b}.impersonation-header svg{color:#6366f1}.impersonation-list{padding:6px;max-height:340px;overflow-y:auto}.impersonation-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:none;background:none;border-radius:8px;cursor:pointer;transition:background .15s;text-align:left}.impersonation-item:hover{background:#f3f4f6}.impersonation-item.active{background:#f0fdf4}.impersonation-item-label{font-size:13px;font-weight:600;color:#1e293b}.impersonation-item-desc{font-size:11px;color:#94a3b8}.impersonation-item-avatar{width:32px;height:32px;min-width:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;margin-right:10px}.impersonation-item-info{display:flex;flex-direction:column;gap:1px;flex:1}.impersonation-divider{height:1px;background:#e5e7eb;margin:4px 8px}.impersonation-empty{text-align:center;padding:16px 12px;font-size:13px;color:#94a3b8}color: #d97706; font-weight: 600; } .impersonation-banner{position:fixed;top:80px;right:0;height:32px;display:flex;align-items:center;gap:8px;padding:0 16px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:1px solid #fbbf24;font-size:12px;color:#92400e;z-index:90;transition:left .2s ease}.impersonation-banner svg{flex-shrink:0}.impersonation-banner strong{color:#78350f}.impersonation-banner-close{margin-left:auto;background:none;border:1px solid #d97706;border-radius:4px;padding:2px 10px;font-size:11px;font-weight:600;color:#92400e;cursor:pointer;transition:all .15s}.impersonation-banner-close:hover{background:#fbbf24;color:#78350f}.font-size-controls{display:flex;align-items:center;gap:2px;border:1px solid #e5e7eb;border-radius:8px;padding:2px;background:#f8fafc}.font-size-btn{border:none;background:none;padding:4px 9px;border-radius:6px;cursor:pointer;font-weight:600;color:#64748b;font-family:Inter,-apple-system,sans-serif;transition:all .15s;line-height:1}.font-size-btn:hover{color:#1e293b;background:#e2e8f0}.font-size-btn.active{background:#3b82f6;color:#fff}.footer{position:fixed;bottom:0;right:0;height:50px;background:#f8fafc;border-top:1px solid #e5e7eb;z-index:80;transition:left .3s ease}.footer-content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 24px}.footer-left{display:flex;align-items:center;gap:16px}.footer-copyright{font-size:13px;color:#6b7280}.footer-version{font-size:12px;color:#9ca3af;padding:4px 8px;background:#e5e7eb;border-radius:4px;font-weight:500}.footer-links{display:flex;align-items:center;gap:20px}.footer-link{font-size:13px;color:#6b7280;text-decoration:none;transition:color .2s}.footer-link:hover{color:#667eea}@media (max-width: 768px){.footer{left:0}.footer-content{flex-direction:column;padding:12px 16px;height:auto}.footer-left{gap:12px}.footer-links{gap:16px;font-size:12px}}.app-layout{display:flex;height:100vh;overflow:hidden;background:#f8fafc}.main-content{flex:1;display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:margin-left .3s ease}.page-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:85px 24px 64px}.page-content.impersonation-active{padding-top:120px}@media (max-width: 768px){.main-content{margin-left:0}.page-content{padding:16px}}.page-content.font-md{font-size:14px}.page-content.font-md h1,.page-content.font-md h2,.page-content.font-md h3,.page-content.font-md .section-title{font-size:1.25em}.page-content.font-md .muted,.page-content.font-md small{font-size:.9em}.page-content.font-md input,.page-content.font-md select,.page-content.font-md textarea,.page-content.font-md button,.page-content.font-md .btn{font-size:inherit}.page-content.font-lg{font-size:16px}.page-content.font-lg h1,.page-content.font-lg h2,.page-content.font-lg h3,.page-content.font-lg .section-title{font-size:1.25em}.page-content.font-lg .muted,.page-content.font-lg small{font-size:.9em}.page-content.font-lg input,.page-content.font-lg select,.page-content.font-lg textarea,.page-content.font-lg button,.page-content.font-lg .btn{font-size:inherit}.welcome-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.welcome-row h1{font-size:24px;font-weight:700;color:#1e293b;margin:0 0 4px}.welcome-row .welcome-sub{font-size:14px;color:#64748b}.welcome-row .date-badge{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:500;color:#475569}.attention-bar{display:flex;gap:16px;margin-bottom:28px}.attn-card{flex:1;border-radius:12px;padding:20px 24px;display:flex;align-items:center;gap:16px;cursor:pointer;text-decoration:none;transition:all .2s;border:1px solid transparent}.attn-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.attn-card.overdue{background:#fef2f2;border-color:#fecaca}.attn-card.pending{background:#fffbeb;border-color:#fde68a}.attn-card.today{background:#eff6ff;border-color:#bfdbfe}.attn-card.done{background:#f0fdf4;border-color:#bbf7d0}.attn-num{font-size:32px;font-weight:800;line-height:1}.attn-card.overdue .attn-num{color:#dc2626}.attn-card.pending .attn-num{color:#d97706}.attn-card.today .attn-num{color:#2563eb}.attn-card.done .attn-num{color:#16a34a}.attn-label{font-size:13px;font-weight:600;color:#334155}.attn-sub{font-size:11px;color:#64748b;margin-top:2px}.home-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.home-panel-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9}.home-panel-head h3{font-size:14px;font-weight:600;color:#1e293b;margin:0;display:flex;align-items:center;gap:6px}.home-panel-head .badge-count{font-size:11px;font-weight:700;background:#ef4444;color:#fff;border-radius:10px;padding:2px 7px;min-width:18px;text-align:center}.home-panel-head .panel-link{font-size:12px;color:#3b82f6;text-decoration:none;font-weight:500;cursor:pointer}.home-panel-head .panel-link:hover{text-decoration:underline}.home-panel-body{padding:0}.tl-item{display:flex;gap:12px;padding:14px 20px;border-bottom:1px solid #f8fafc;align-items:flex-start;transition:background .15s}.tl-item:hover{background:#fafbfc}.tl-item:last-child{border-bottom:none}.tl-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.tl-dot.red{background:#ef4444}.tl-dot.amber{background:#f59e0b}.tl-dot.blue{background:#3b82f6}.tl-dot.green{background:#22c55e}.tl-dot.purple{background:#8b5cf6}.tl-content{flex:1;min-width:0}.tl-title{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:2px}.tl-meta{font-size:11px;color:#94a3b8}.tl-right{flex-shrink:0;text-align:right}.tl-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap}.tl-badge.red{background:#fef2f2;color:#dc2626}.tl-badge.amber{background:#fffbeb;color:#d97706}.tl-badge.blue{background:#eff6ff;color:#2563eb}.tl-badge.green{background:#f0fdf4;color:#16a34a}.tl-time{font-size:11px;color:#94a3b8}.pipeline{display:flex;gap:0;padding:20px}.pipe-stage{flex:1;text-align:center;position:relative}.pipe-stage:after{content:"";position:absolute;top:20px;right:0;width:1px;height:24px;background:#e5e7eb}.pipe-stage:last-child:after{display:none}.pipe-num{font-size:24px;font-weight:800;color:#1e293b;line-height:1.2}.pipe-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.pipe-stage.active .pipe-num{color:#3b82f6}.pipe-stage.completed .pipe-num{color:#16a34a}.task-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #f8fafc;transition:background .15s}.task-row:hover{background:#fafbfc}.task-row:last-child{border-bottom:none}.task-client{font-size:13px;font-weight:600;color:#1e293b;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-service{font-size:11px;color:#64748b;width:100px;text-align:center;flex-shrink:0}.task-assignee{display:flex;align-items:center;gap:6px;flex-shrink:0}.task-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;flex-shrink:0}.task-status{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;flex-shrink:0;white-space:nowrap}.home-3col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-bottom:28px}.home-2col{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.rev-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px}.rev-box{border-radius:10px;padding:16px;text-align:center}.rev-box .rev-label{font-size:11px;font-weight:600;margin-bottom:4px}.rev-box .rev-val{font-size:22px;font-weight:800}.rev-box.collected{background:#f0fdf4}.rev-box.collected .rev-label{color:#16a34a}.rev-box.collected .rev-val{color:#15803d}.rev-box.outstanding{background:#fef2f2}.rev-box.outstanding .rev-label{color:#dc2626}.rev-box.outstanding .rev-val{color:#b91c1c}.rev-box.invoiced{background:#eff6ff}.rev-box.invoiced .rev-label{color:#2563eb}.rev-box.invoiced .rev-val{color:#1d4ed8}.rev-box.clients{background:#faf5ff}.rev-box.clients .rev-label{color:#7c3aed}.rev-box.clients .rev-val{color:#6d28d9}.home-staff-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #f8fafc}.home-staff-row:last-child{border-bottom:none}.home-staff-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.home-staff-info{flex:1;min-width:0}.home-staff-name{font-size:13px;font-weight:600;color:#1e293b}.home-staff-tasks{font-size:11px;color:#94a3b8}.home-staff-bar-wrap{width:80px;height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden;flex-shrink:0}.home-staff-bar{height:100%;border-radius:3px}.home-staff-count{font-size:12px;font-weight:700;color:#1e293b;width:24px;text-align:right;flex-shrink:0}.progress-panel{display:flex;align-items:center;gap:40px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px 32px;margin-bottom:28px}.progress-ring-wrap{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ring-text{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);font-size:20px;font-weight:800;color:#1e293b}.ring-label{position:absolute;top:62%;left:50%;transform:translate(-50%);font-size:9px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.progress-stages{flex:1;display:flex;gap:0}.prog-stage{flex:1;text-align:center;position:relative}.prog-stage:after{content:"→";position:absolute;top:8px;right:-6px;font-size:14px;color:#cbd5e1}.prog-stage:last-child:after{display:none}.prog-num{font-size:22px;font-weight:800;line-height:1.2}.prog-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.progress-summary{border-left:1px solid #e5e7eb;padding-left:32px;display:flex;flex-direction:column;gap:6px;flex-shrink:0}.progress-summary-label{font-size:12px;color:#64748b}.progress-summary-num{font-size:28px;font-weight:800;color:#1e293b}.progress-summary-sub{font-size:11px;color:#94a3b8}.task-priority{width:4px;height:36px;border-radius:2px;flex-shrink:0}.task-priority.high{background:#ef4444}.task-priority.medium{background:#f59e0b}.task-priority.normal{background:#3b82f6}.task-priority.low{background:#22c55e}.task-info{flex:1;min-width:0}.task-detail{font-size:11px;color:#94a3b8;margin-top:2px}.task-due{font-size:11px;font-weight:600;color:#64748b;flex-shrink:0;white-space:nowrap}.task-due.overdue-text{color:#dc2626}.client-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid #f8fafc;transition:background .15s;cursor:pointer}.client-row:hover{background:#fafbfc}.client-row:last-child{border-bottom:none}.client-avatar{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.client-info-col{flex:1;min-width:0}.client-name-text{font-size:13px;font-weight:600;color:#1e293b}.client-gstin{font-size:11px;color:#94a3b8}.client-tasks-count{font-size:12px;font-weight:600;color:#475569;background:#f1f5f9;padding:3px 10px;border-radius:6px;flex-shrink:0}.notif-item{display:flex;gap:12px;padding:14px 20px;border-bottom:1px solid #f8fafc;align-items:flex-start}.notif-item:last-child{border-bottom:none}.notif-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-icon.info{background:#dbeafe;color:#2563eb}.notif-icon.warning{background:#fef3c7;color:#d97706}.notif-icon.success{background:#dcfce7;color:#16a34a}.notif-text{flex:1;font-size:13px;color:#334155;line-height:1.5}.notif-text strong{font-weight:600;color:#1e293b}.notif-time{font-size:11px;color:#94a3b8;flex-shrink:0;white-space:nowrap}.dialog-overlay,.modal-overlay{background:#00000080;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;animation:fadeIn .2s ease-out}.dialog-content,.modal-content{background:#fff;border-radius:12px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;z-index:9999;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modal-title{margin:0;font-size:20px;font-weight:600;color:var(--text-dark)}.modal-close{background:none;border:none;outline:none;font-size:32px;line-height:1;cursor:pointer;color:var(--text-light);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:focus{outline:none;border:none}.modal-body .form-group{margin-bottom:20px}.modal-body .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-dark);font-size:14px}.modal-body .form-input,.modal-body select,.modal-body textarea{width:100%;padding:10px 14px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .2s;background:#fff;box-sizing:border-box;color:var(--text-dark)}.modal-body .form-input:focus,.modal-body select:focus,.modal-body textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}.modal-body select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}.modal-body textarea{resize:vertical;min-height:80px}.modal-body input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.modal-body input[type=number]::-webkit-outer-spin-button,.modal-body input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.modal-footer{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #f0f0f0}.form-row{display:flex;gap:16px}.form-row .form-group{margin-bottom:20px}.error-message{display:block;color:var(--danger-color);font-size:13px;margin-top:4px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.btn-primary:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 2px 4px #2563eb4d}.btn-secondary{background:#fff;color:var(--text-medium);border:1px solid #e5e7eb}.btn-secondary:hover:not(:disabled){background:var(--light-bg);border-color:#d1d5db}.btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 2px 4px #ef44444d}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (max-width: 640px){.dialog-content{width:95%;max-height:95vh}.form-row{flex-direction:column;gap:0}.modal-header,.modal-body{padding:20px}}.modal-large{max-width:800px}.schedule-editor{display:flex;flex-direction:column;gap:16px}.schedule-day-row{display:flex;align-items:center;gap:20px;padding:16px;background:var(--light-bg);border-radius:8px;border:1px solid var(--border-color)}.day-toggle{min-width:140px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.day-name{font-size:15px;color:var(--text-dark)}.time-inputs{display:flex;align-items:center;gap:12px;flex:1}.time-inputs .form-group{margin:0;flex:1}.time-inputs .form-group label{font-size:13px;margin-bottom:6px}.time-inputs input[type=time]{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px}.time-separator{color:var(--text-light);font-weight:500;padding-top:20px}.off-label{color:var(--text-light);font-style:italic;flex:1;text-align:center}.info-box{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:14px;font-weight:500;margin:16px 0}.info-box svg{flex-shrink:0}.page-title{margin:0 0 8px;color:#1f2937;font-size:28px;font-weight:700;display:flex;align-items:center}.page-subtitle{margin:0 0 0 40px;color:#6b7280;font-size:15px}.stat-label{font-size:13px;color:#6b7280;font-weight:500}.stat-value-row{display:flex;align-items:center}.stat-change{font-size:14px!important;color:#6b7280!important;margin-top:8px!important;font-weight:400!important;display:block!important;line-height:1.5!important}.stat-change.positive{color:#10b981!important;font-weight:500!important}.stat-change.negative{color:#ef4444!important;font-weight:500!important}.btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.filters-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.clients-filters{display:flex;gap:16px;align-items:center}.search-box-large{position:relative;flex:1;max-width:500px}.search-box-large .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.search-box-large input{width:100%;height:44px;padding:0 14px 0 42px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s}.search-box-large input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-group{display:flex;gap:12px}.filter-select{height:44px;padding:0 32px 0 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 4.5L6 8L9.5 4.5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.error-banner{display:flex;align-items:center;gap:12px;padding:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;margin-bottom:24px}.clients-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;margin-bottom:24px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#6b7280}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.clients-table td{padding:8px 16px;font-size:14px;color:#374151}.client-name-cell{font-weight:600}.pan-cell{font-family:Courier New,monospace;font-size:13px}.client-type-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.client-type-badge.individual{background:#dbeafe;color:#1e40af}.client-type-badge.business,.client-type-badge.business-regular{background:#dcfce7;color:#166534}.client-type-badge.business-composition,.client-type-badge.composition{background:#fef3c7;color:#92400e}.status-badge.active{background:#d1fae5;color:#065f46}.actions-cell{display:flex;gap:6px}.btn-icon-table{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s;padding:0}.pagination{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.pagination-info{font-size:14px;color:#6b7280}.pagination-controls{display:flex;align-items:center;gap:16px}.btn-pagination{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.btn-pagination:hover:not(:disabled){border-color:#667eea;color:#667eea}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.page-indicator{font-size:14px;font-weight:600;color:#374151}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.clients-filters{flex-wrap:wrap}.search-box-large{max-width:none;width:100%}.filter-group{width:100%}.filter-select{flex:1}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.page-subtitle{margin-left:0}.clients-table-container{overflow-x:auto}.clients-table{min-width:800px}.pagination{flex-direction:column;gap:16px}.pagination-controls{width:100%;justify-content:space-between}}.breadcrumb-nav{display:flex;align-items:center;gap:6px;margin-bottom:12px;padding-top:3px;font-size:13px;color:#94a3b8}.breadcrumb-nav-link{color:#3b82f6;text-decoration:none;cursor:pointer;transition:color .15s ease}.breadcrumb-nav-link:hover{text-decoration:underline}.breadcrumb-nav-separator{color:#94a3b8;-webkit-user-select:none;user-select:none}.breadcrumb-nav-current{color:#64748b}@media print{.breadcrumb-nav{display:none}}.client-detail-page{padding:0}.detail-header{margin-bottom:24px}.btn-back{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;margin-bottom:16px}.btn-back:hover{background:#f8fafc;border-color:#cbd5e1}.detail-header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.detail-header-left{display:flex;align-items:flex-start;gap:20px;flex:1}.client-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;flex-shrink:0}.detail-title-section{flex:1}.detail-title{font-size:28px;font-weight:700;color:#1e293b;margin:0 0 12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.detail-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.meta-item{display:flex;align-items:center;gap:6px;color:#64748b;font-size:14px}.meta-item svg{width:16px;height:16px;flex-shrink:0}.detail-header-actions{display:flex;gap:12px}.detail-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e2e8f0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.detail-tabs::-webkit-scrollbar{display:none}.detail-tabs .tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-bottom:3px solid transparent;color:#64748b;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;margin-bottom:-2px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;line-height:1;text-align:left}.detail-tabs .tab::-webkit-inner-spin-button,.detail-tabs .tab::-webkit-outer-spin-button,.detail-tabs .tab::-webkit-calendar-picker-indicator{display:none;-webkit-appearance:none}.detail-tabs .tab:after,.detail-tabs .tab:before{display:none!important}.detail-tabs .tab svg{width:18px;height:18px;flex-shrink:0}.detail-tabs .tab:hover{color:#2563eb;background:#f8fafc}.detail-tabs .tab.active{color:#2563eb;border-bottom-color:#2563eb;background:transparent}.detail-content{margin-top:24px}.tab-content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:start}.detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0000000d;height:100%;display:flex;flex-direction:column}.detail-card .card-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.detail-card .card-header h3{margin:0}.info-grid{padding:24px;display:flex;flex-direction:column;gap:16px;flex:1}.info-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 0;border-bottom:1px solid #f1f5f9}.info-label{font-size:13px;color:#64748b;font-weight:500;min-width:140px}.info-value{font-size:14px;color:#1e293b;font-weight:500;flex:1;text-align:right}.status-badge,.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.badge-primary{background:#eff6ff;color:#2563eb}.badge-success{background:#f0fdf4;color:#10b981}.badge-warning{background:#fffbeb;color:#f59e0b}.badge-danger{background:#fef2f2;color:#ef4444}.badge-secondary{background:#f1f5f9;color:#64748b}.badge-info{background:#e0f2fe;color:#0284c7}.card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0000000d;margin-bottom:24px}.card-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.card-title{font-size:16px;font-weight:600;margin:0;color:#1e293b}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1e40af}.btn-secondary{background:transparent;color:#64748b;border:1px solid #e2e8f0}.btn-icon{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid #e2e8f0;background:transparent;color:#64748b;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#f8fafc;border-color:#cbd5e1}.btn-icon svg{width:16px;height:16px}.table-container{overflow-x:auto;border-radius:8px}.data-table thead{background:#f8fafc}.data-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0}.data-table td{padding:16px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#1e293b}.data-table tbody tr:last-child td{border-bottom:none}.table-actions{display:flex;gap:8px;align-items:center}.empty-state{text-align:center;padding:60px 20px;color:#94a3b8}.empty-state svg{width:48px;height:48px;margin:0 auto 16px;opacity:.5}.empty-state h3{font-size:16px;font-weight:600;color:#475569;margin-bottom:8px}.empty-state p{font-size:14px;color:#94a3b8;margin:0}.data-table td.empty-state{text-align:center!important;padding:60px 20px!important}.data-table td.empty-state svg{display:block;margin:0 auto 16px;opacity:.5}.data-table td.empty-state p{margin:0;color:#94a3b8}.loading-state{text-align:center;padding:60px 20px}.spinner{width:40px;height:40px;margin:0 auto 16px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:spin .6s linear infinite}.error-banner{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;margin-bottom:16px}@media (max-width: 768px){.card-body,.card-header{padding:16px}}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;padding:24px}.schedule-day{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:24px;transition:all .2s;box-shadow:0 1px 3px #0000000f}.schedule-day.non-working{background:#fafafa;border-color:#e5e7eb;opacity:.85}.schedule-day:hover{border-color:#2563eb;box-shadow:0 4px 12px #2563eb1a;transform:translateY(-2px)}.day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.day-name{font-weight:600;font-size:15px;color:#1e293b;letter-spacing:.3px}.day-badge{font-size:11px;padding:4px 10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.day-time{display:flex;flex-direction:column;gap:8px}.time-slot{display:flex;align-items:center;gap:8px;font-size:14px;color:#475569;font-weight:500}.time-slot svg{flex-shrink:0;color:#64748b}.duration{font-size:12px;color:#64748b;padding-left:22px;font-weight:500}.off-day{font-size:13px;color:#94a3b8;font-style:italic}.absence-type{display:inline-block;font-weight:500;color:#475569}.skills-list{display:flex;flex-wrap:wrap;gap:8px;padding:24px}.skill-tag{display:inline-flex;align-items:center;padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:6px;font-size:13px;font-weight:500}.empty-text{color:#94a3b8;font-size:14px;margin:0}.highlight-amount{font-size:16px;font-weight:600;color:#2563eb}.amount{font-weight:500;color:#1e293b}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leave-balance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.leave-balance-card{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s ease}.leave-balance-card:hover{box-shadow:0 4px 6px #0000000d;transform:translateY(-2px)}.leave-balance-card.annual{border-left:4px solid #3b82f6}.leave-balance-card.sick{border-left:4px solid #ef4444}.leave-balance-card.personal{border-left:4px solid #8b5cf6}.leave-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;flex-shrink:0}.leave-balance-card.annual .leave-icon{background:#eff6ff;color:#3b82f6}.leave-balance-card.sick .leave-icon{background:#fef2f2;color:#ef4444}.leave-balance-card.personal .leave-icon{background:#f5f3ff;color:#8b5cf6}.leave-info{flex:1}.leave-type{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px}.leave-stats{display:flex;align-items:center;gap:20px}.stat{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 12px}.stat-value{font-size:24px;font-weight:700;color:#1e293b;line-height:1}.stat-label{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.stat-divider{width:1px;height:50px;background:#e2e8f0;margin:0 4px}.header-actions{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;gap:4px;background:#f1f5f9;padding:4px;border-radius:8px}.toggle-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:transparent;color:#64748b;font-size:13px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;font-family:inherit;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.toggle-btn:before,.toggle-btn:after{display:none!important}.toggle-btn svg{flex-shrink:0}.toggle-btn:hover{background:#ffffff80;color:#475569}.toggle-btn.active{background:#fff;color:#2563eb;box-shadow:0 1px 3px #0000001a}.monthly-schedule{padding:24px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.calendar-title{font-size:18px;font-weight:600;color:#1e293b;margin:0}.calendar-nav-right{display:flex;align-items:center;gap:8px}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#64748b}.btn-icon:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.calendar-grid{margin-bottom:20px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px}.calendar-weekday{text-align:center;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;padding:8px 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar-day{position:relative;aspect-ratio:1;padding:6px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;transition:all .2s ease;min-height:65px}.calendar-day.empty{background:#fafafa;border-color:#f1f5f9}.calendar-day:not(.empty):hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.calendar-day.today{border-color:#2563eb;background:#eff6ff}.calendar-day.today .day-number{background:#2563eb;color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.calendar-day.non-working{background:#fafafa}.calendar-day.absent{background:#fef2f2;border-color:#fecaca}.day-number{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:2px}.day-hours{font-size:10px;color:#64748b;margin-top:2px;text-align:center;line-height:1.2}.day-status{display:flex;align-items:center;justify-content:center;gap:3px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;margin-top:4px;padding:3px 6px;border-radius:4px}.day-status.working-badge{background:#dcfce7;color:#16a34a;padding:2px;margin-bottom:1px}.day-status.working-badge svg{width:12px;height:12px}.day-status.off-badge{background:#f1f5f9;color:#64748b}.day-status.absent-badge{background:#fee2e2;color:#dc2626}.calendar-legend{display:flex;flex-wrap:wrap;gap:16px;padding:16px;background:#f8fafc;border-radius:8px;margin-top:0;margin-bottom:16px}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569}.legend-dot{width:16px;height:16px;border-radius:4px;border:2px solid;flex-shrink:0}.legend-dot.working{background:#fff;border-color:#e2e8f0}.legend-dot.off{background:#fafafa;border-color:#e2e8f0}.legend-dot.absent{background:#fef2f2;border-color:#fecaca}.legend-dot.today{background:#eff6ff;border-color:#2563eb}.card-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#1e293b;margin:0}.card-title svg{color:#64748b}@media (max-width: 1024px){.schedule-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;padding:20px}.leave-balance-grid{grid-template-columns:repeat(2,1fr)}.calendar-day{min-height:60px}.day-hours{font-size:9px}}@media (max-width: 768px){.detail-header-content{flex-direction:column}.detail-title{font-size:24px}.detail-grid{grid-template-columns:1fr}.schedule-grid{grid-template-columns:1fr;gap:16px;padding:16px}.schedule-day{padding:20px}.detail-tabs{gap:4px}.detail-tabs .tab{padding:10px 16px;font-size:13px}.leave-balance-grid{grid-template-columns:1fr;gap:16px}.leave-balance-card{padding:16px}.stat-value{font-size:20px}.header-actions{flex-direction:column;width:100%;align-items:stretch}.view-toggle{width:100%}.toggle-btn{flex:1;justify-content:center}.monthly-schedule{padding:16px}.calendar-header{flex-wrap:wrap;gap:12px}.calendar-title{font-size:16px}.calendar-day{min-height:55px;padding:4px}.day-number{font-size:12px}.day-hours{font-size:8px}.calendar-legend{gap:12px}.legend-item{font-size:12px}}@media (max-width: 480px){.calendar-weekday{font-size:11px;padding:6px 0}.calendar-days{gap:4px}.calendar-day{min-height:50px;padding:4px}.day-number{font-size:12px}.day-hours{display:none}.day-status{font-size:9px;padding:2px 4px}}.form-section-title{font-size:14px;font-weight:600;color:#1e293b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px}.form-row.single{grid-template-columns:1fr}.form-group label{font-size:13px;font-weight:600;color:#475569;margin-bottom:8px;display:flex;align-items:center;gap:4px}.required{color:#ef4444;font-weight:700}.form-control{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1e293b;background:#fff;transition:all .2s}.form-control:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-control.error{border-color:#ef4444;background:#fef2f2}.form-control:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}textarea.form-control{resize:vertical;min-height:80px;font-family:inherit}select.form-control{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.help-text{font-size:12px;color:#94a3b8;margin:6px 0 0}.error-text{font-size:12px;color:#ef4444;margin:6px 0 0;display:flex;align-items:center;gap:4px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:#1e293b}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2563eb}.actions-bar{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:2px solid #e2e8f0;margin-top:32px}.btn-danger{background:#ef4444;color:#fff}.btn-danger:disabled{background:#fca5a5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:999}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;width:90%;z-index:1000}.modal-header{padding:20px 24px;border-bottom:1px solid #e2e8f0}.modal-body p{margin:0 0 8px;color:#475569;font-size:14px;line-height:1.6}.modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.actions-bar{flex-direction:column-reverse}.actions-bar button{width:100%;justify-content:center}}.services-accordion{display:flex;flex-direction:column;gap:12px}.accordion-item{border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden;transition:all .2s}.accordion-header{padding:16px 20px;background:#fafafa;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .2s;-webkit-user-select:none;user-select:none}.accordion-header:hover{background:#f5f5f5}.accordion-header.active{background:#fff;border-bottom:1px solid #e5e7eb}.accordion-title{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;color:#1e293b}.accordion-count{background:#e5e7eb;color:#6b7280;padding:2px 10px;border-radius:12px;font-size:13px;font-weight:500}.accordion-header.active .accordion-count{background:#dbeafe;color:#2563eb}.accordion-icon{transition:transform .3s ease;color:#64748b;flex-shrink:0}.accordion-header.active .accordion-icon{transform:rotate(180deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.accordion-content.active{max-height:2000px;transition:max-height .5s ease-in}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding:16px}.service-item-compact{padding:12px 16px;background:#fafafa;border-radius:6px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;transition:all .2s;border:1px solid #f0f0f0}.service-item-compact:hover{background:#fff;border-color:#e5e7eb;box-shadow:0 1px 3px #0000000d;transform:translate(2px)}.service-info-compact{flex:1;min-width:0}.service-name-compact{font-size:14px;font-weight:500;color:var(--text-dark);margin-bottom:4px;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4}.service-code-compact{display:inline-block;background:#e0e7ff;color:#4f46e5;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;margin-bottom:6px}.service-details-compact{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-light);flex-wrap:wrap}.service-frequency{color:#64748b}.service-separator{color:#cbd5e1}.service-price{color:#059669;font-weight:600}.service-hours{color:#64748b}.service-actions-compact{display:flex;gap:4px;flex-shrink:0}.btn-icon-compact{background:transparent;border:none;padding:6px;cursor:pointer;border-radius:6px;transition:all .2s;color:#64748b;display:inline-flex;align-items:center;justify-content:center}.btn-icon-compact:hover{background:#e0e7ff;color:#4f46e5}.btn-icon-danger-compact{color:#94a3b8}.btn-icon-danger-compact:hover{background:#fef2f2;color:#dc2626}.btn-icon{background:transparent;border:none;padding:8px;cursor:pointer;border-radius:6px;transition:all .2s;color:#64748b;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f1f5f9;color:#3b82f6}.btn-icon-danger{color:#94a3b8}.btn-icon-danger:hover{background:#fef2f2;color:#dc2626}.badge-secondary{background:#f1f5f9;color:#475569;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.table thead{background:#f8fafc;border-bottom:1px solid #e2e8f0}.table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s}.table tbody tr:hover{background:#f8fafc}.table tbody tr:last-child{border-bottom:none}.table td{padding:16px;font-size:14px;color:#1e293b}.assign-services-page{padding:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.page-title{font-size:28px;font-weight:700;color:var(--text-dark);margin:0 0 8px;display:flex;align-items:center}.card{background:#fff;border-radius:12px;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a;margin-bottom:5px!important;overflow:hidden}.card-header{padding:12px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.card-title{font-size:18px;font-weight:600;color:var(--text-dark);margin:0}.card-body{padding:16px 24px 24px}.card-body:has(.services-checklist){padding:16px}.card.blurred{opacity:.6;pointer-events:none;filter:blur(1px)}.filter-btn{padding:8px 16px;border:2px solid #e5e7eb;background:#fff;color:#64748b;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.filter-btn+.filter-btn{margin-left:0}.card-body>.form-group:first-child{margin-bottom:12px}.filter-btn:hover{border-color:#cbd5e1;background:#f8fafc}.filter-btn.active{border-color:#3b82f6;background:#eff6ff;color:#3b82f6}.left-column>.card:first-child .form-group:first-child{padding-top:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.form-row .form-group{margin-bottom:0}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-dark);margin-bottom:8px}.form-group small{display:block;font-size:12px;color:var(--text-light);margin-top:4px}.form-input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:6px;font-size:14px;transition:all .2s;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}select.form-input{padding:12px 16px;font-size:15px;font-weight:500;cursor:pointer;background:#fff}select.form-input:focus{box-shadow:0 0 0 4px #2563eb1a}textarea.form-input{resize:vertical}.form-input:disabled{background:#f3f4f6;cursor:not-allowed}.search-input{padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;width:250px}.search-input:focus{outline:none;border-color:var(--primary-color)}.two-column-layout{display:grid;grid-template-columns:1fr 550px;gap:24px;align-items:start}.left-column{display:flex;flex-direction:column;gap:24px}.services-checklist{max-height:none;overflow-y:visible;border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#fafafa}.service-category{margin-bottom:16px}.service-category:last-child{margin-bottom:0}.category-header{font-weight:600;font-size:14px;color:var(--text-dark);margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid #e5e7eb}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.service-checkbox-item{display:flex;align-items:flex-start;padding:12px 14px;margin:0;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.service-checkbox-item:hover{border-color:var(--primary-color);background:#f0f9ff}.service-checkbox-item.selected{border-color:var(--primary-color);background:#eff6ff}.service-checkbox-item.disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.service-checkbox-item.disabled:hover{border-color:#e5e7eb;background:#f9fafb}.service-checkbox-item input[type=checkbox],.service-checkbox-item input[type=radio]{width:18px;height:18px;margin-right:10px;cursor:pointer;flex-shrink:0;margin-top:2px}.service-details{flex:1;min-width:0}.service-name{font-weight:500;color:var(--text-dark);margin-bottom:8px;font-size:13px;line-height:1.3}.service-description{margin:10px 0;display:flex;flex-direction:column;gap:8px}.service-step{font-size:13px;color:var(--text-dark);padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;border-left:3px solid var(--primary-color);line-height:1.5;font-weight:500}.service-meta{font-size:11px;color:var(--text-medium);display:flex;align-items:center;gap:8px;margin-top:12px}.selected-services-panel{position:sticky;top:24px;align-self:start;margin-bottom:10px}.selected-services-panel .card-header{border-bottom:1px solid #e5e7eb}.selected-services-panel .card-body{padding:16px 24px 24px}.summary-box{background:#f9fafb;border:1px solid #e5e7eb;padding:14px 16px;border-radius:6px;margin-bottom:16px}.summary-row{display:flex;justify-content:space-between;margin-bottom:8px}.summary-total{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;color:var(--text-dark)}.summary-total>div:first-child{font-size:13px;font-weight:500;color:var(--text-medium)}.summary-total>div:last-child{font-size:16px;font-weight:600;color:var(--primary-color)}.summary-total>div:last-child{font-size:24px;font-weight:700}.selected-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.selected-service-item{display:flex;flex-direction:column;padding:8px 10px;background:#eff6ff;border:1px solid #dbeafe;border-radius:6px;position:relative}.selected-service-name{font-weight:500;font-size:13px;margin-bottom:4px;color:var(--text-dark)}.selected-service-meta{display:flex;align-items:center;gap:8px;font-size:11px}.remove-service-btn{background:none;border:none;color:var(--danger-color);cursor:pointer;padding:2px;border-radius:4px;transition:background .2s;position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center}.remove-service-btn:hover{background:#fee}.remove-service-btn svg{stroke:#c33}.selected-service-name{flex:1;font-size:13px;font-weight:500;color:var(--text-dark)}.selected-service-meta{display:flex;align-items:center;gap:8px;font-size:12px}.badge{padding:3px 8px;border-radius:4px;font-size:10px;font-weight:500;display:inline-block;white-space:nowrap}.badge-primary{background:#e0f2fe;color:#0284c7;border:1px solid #bae6fd}.badge-secondary{background:#f9fafb;color:#6b7280;border:1px solid #e5e7eb}.badge-warning{background:#fef9c3;color:#ca8a04;border:1px solid #fde047}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:#4f46e5}.btn-secondary{background:#fff;color:var(--text-primary);border:1px solid #d1d5db}.btn-secondary:hover{background:#f9fafb}.client-info-box{margin-top:16px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.client-info-grid{display:grid;grid-template-columns:minmax(120px,auto) minmax(140px,auto) 1fr;gap:24px;align-items:start}.client-info-item{display:flex;flex-direction:column;min-width:0}.client-info-label{font-size:12px;color:var(--text-light);margin-bottom:4px}.client-info-value{font-weight:500;color:var(--text-dark)}.current-services-container{display:flex;flex-wrap:wrap;gap:8px}.service-badge{padding:5px 12px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;border-radius:5px;font-size:12px;font-weight:500;white-space:nowrap}.summary-section{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #e5e7eb}.summary-section:first-child{padding-top:0}.summary-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.summary-section-title{font-size:13px;font-weight:600;color:var(--text-dark);margin:0 0 10px;display:flex;align-items:center}.summary-section-title svg{flex-shrink:0}.client-detail-list{display:flex;flex-direction:column;gap:6px}.client-detail-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:12px}.detail-label{color:var(--text-light);font-weight:500;min-width:50px}.detail-value{color:var(--text-dark);font-weight:500;text-align:right;flex:1}.current-services-list{display:flex;flex-direction:column;gap:6px}.current-service-item{padding:8px 10px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.current-service-name{font-size:12px;font-weight:500;color:var(--text-dark);margin-bottom:4px}.current-service-meta{display:flex;align-items:center;gap:8px;font-size:11px}.current-service-price{color:var(--text-medium);font-weight:500}.selected-services-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.empty-state{text-align:center;padding:16px 12px;color:var(--text-light);font-size:12px}.empty-state p{margin:0}.assignment-details{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.assignment-details .form-group{margin-bottom:14px}.assignment-details .form-group label{font-size:12px;margin-bottom:6px}.assignment-details .form-input{padding:8px 10px;font-size:13px}.assignment-details textarea.form-input{padding:8px 10px}.sticky-actions{background:#fff;padding:16px 0 0;margin-top:12px;border-top:1px solid #e5e7eb}@media (max-width: 1200px){.two-column-layout{grid-template-columns:1fr}.selected-services-panel{position:static}.services-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}.work-items-page{padding:0}.create-work-item-page{padding:24px}.page-header{margin-bottom:32px}.page-title{font-size:28px;font-weight:700;color:var(--text-dark);margin:0 0 8px}.page-subtitle{font-size:15px;color:var(--text-medium);margin:0}.card-header{padding:20px 24px;border-bottom:1px solid var(--border-color)}.card-header h3{font-size:16px;font-weight:600;color:var(--text-dark);margin:0}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-dark);margin-bottom:8px}.required{color:var(--danger-color)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color)}.form-group textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:8px}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-secondary:hover:not(:disabled){background:#f8fafc}.btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.create-work-item-page{padding:16px}.form-row{grid-template-columns:1fr}}.page-header{margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.header-left{display:flex;align-items:center;gap:12px}.page-title{font-size:24px;font-weight:600;margin:0;color:var(--text-dark)}.btn-icon{display:flex;align-items:center;justify-content:center;padding:10px;min-width:40px;min-height:40px}.btn-icon svg{display:block;flex-shrink:0}.content-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}.main-column{display:flex;flex-direction:column}.sidebar-column{display:flex;flex-direction:column;gap:24px}@media (max-width: 1024px){.content-grid{grid-template-columns:1fr}}.card{background:#fff;border-radius:12px;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a}.card.mb-3,.card:not(:last-child){margin-bottom:24px}.card-header{padding:16px 24px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;min-height:60px}.card-header h3,.card-title{font-size:16px;font-weight:600;margin:0;color:var(--text-dark)}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.detail-item{display:flex;flex-direction:column;align-items:flex-start}.detail-label{font-size:13px;color:var(--text-light);margin-bottom:4px;text-align:left}.detail-value{font-weight:500;color:#1e293b;text-align:left;width:100%}.detail-value a{font-weight:500;color:#2563eb;text-decoration:none;text-align:left}.detail-value a:hover{text-decoration:underline}.detail-value.warning{color:#f59e0b;font-weight:500}.detail-value-with-avatar{display:flex;align-items:center;gap:8px;width:100%}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:#fff;color:var(--text-dark);border:1px solid var(--border-color)}.btn-secondary:hover{background:#f8fafc}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover{background:#059669}.btn-sm{padding:8px 16px;font-size:13px}.add-note-form{margin-bottom:24px}.note-textarea{width:100%;min-height:80px;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:14px;resize:vertical;color:#1e293b}.note-textarea::placeholder{color:#94a3b8}.note-textarea:focus{outline:none;border-color:var(--primary-color)}.notes-timeline{display:flex;flex-direction:column;gap:16px}.note-item{padding:16px;background:#f8fafc;border-radius:8px;border-left:3px solid var(--primary-color)}.note-item:nth-child(2n){border-left-color:#10b981}.note-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.note-header>div{display:flex;align-items:center;gap:8px}.user-avatar{width:32px;height:32px;border-radius:50%;background:#8b5cf6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex-shrink:0}.note-author{font-weight:600;color:#1e293b}.note-date{font-size:12px;color:#94a3b8}.note-text{color:#1e293b;line-height:1.6}.attachments-list{display:flex;flex-direction:column;gap:12px}.attachment-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-light);border-radius:8px}.attachment-item svg{flex-shrink:0;color:var(--text-light)}.attachment-name{font-weight:500;color:var(--text-dark)}.attachment-meta{font-size:12px;color:var(--text-light)}.activity-timeline{position:relative}.timeline-item{position:relative;padding-left:32px;padding-bottom:24px}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:6px;top:8px;bottom:-8px;width:2px;background:#e2e8f0}.timeline-item:last-child:before{display:none}.timeline-dot{position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid;z-index:1}.timeline-dot.status-primary{border-color:#2563eb}.timeline-dot.status-success{border-color:#10b981}.timeline-dot.status-warning{border-color:#f59e0b}.timeline-dot.status-danger{border-color:#ef4444}.timeline-content{display:flex;flex-direction:column;gap:4px}.timeline-title{font-size:13px;font-weight:600;color:var(--text-dark)}.timeline-desc{font-size:12px;color:var(--text-light)}.timeline-time{font-size:12px;color:var(--text-light);margin-top:4px}.quick-actions{display:flex;flex-direction:column;gap:8px}.error-banner{padding:16px;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;display:flex;align-items:center;gap:12px;margin-bottom:20px}.mb-3{margin-bottom:24px}.mt-3{margin-top:24px}.dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:4px 0;z-index:1000;min-width:200px}.dropdown-item{width:100%;padding:10px 16px;border:none;background:none;text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:14px;color:#1e293b;transition:background-color .2s}.dropdown-item:hover{background-color:#f8fafc}.dropdown-item svg{flex-shrink:0}.work-item-detail-v2{padding:0}.work-item-detail-v2 .grid-layout{display:grid;grid-template-columns:1fr 400px;gap:24px;align-items:start}.work-item-detail-v2 .card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000d}.work-item-detail-v2 .card-header{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;height:58px;margin-bottom:0}.work-item-detail-v2 .card-header.clickable{cursor:pointer;transition:background .2s}.work-item-detail-v2 .card-header.clickable:hover{background:#f9fafb}.work-item-detail-v2 .card-body{padding:20px}.work-item-detail-v2 .card-title{font-size:16px;font-weight:600;color:#1e293b;margin:0;display:flex;align-items:center}.work-item-detail-v2 .mb-3{margin-bottom:24px}.task-timeline{display:flex;flex-direction:column;gap:0;position:relative}.task-item{display:flex;gap:16px;padding:20px 0;position:relative}.task-item:not(:last-child):after{content:"";position:absolute;left:19px;top:52px;bottom:-20px;width:2px;background:#e5e7eb}.task-item.active:after{background:#3b82f6}.task-item.completed:after{background:#10b981}.task-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;background:#fff;border:2px solid #e5e7eb;color:#94a3b8;transition:all .3s}.task-item.pending .task-icon{background:#f3f4f6;border-color:#e5e7eb;color:#9ca3af}.task-item.active .task-icon{background:#dbeafe;border-color:#3b82f6;color:#3b82f6;box-shadow:0 4px 12px #3b82f64d;animation:pulse 2s infinite}.task-item.completed .task-icon{background:#10b981;border-color:#10b981;color:#fff}@keyframes pulse{0%,to{box-shadow:0 4px 12px #3b82f64d}50%{box-shadow:0 4px 20px #3b82f680}}.task-content{flex:1;background:#fff;padding:16px;border-radius:12px;border:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000d;transition:all .3s}.task-item.active .task-content{border-color:#93c5fd;box-shadow:0 4px 16px #3b82f633}.task-item.completed .task-content{border-color:#d1fae5;box-shadow:0 2px 8px #10b9811a}.task-header{display:flex;justify-content:space-between;align-items:start;gap:12px;padding-top:4px}.task-title{font-size:15px;font-weight:600;color:#1e293b}.task-item.pending .task-title{color:#64748b}.task-description{font-size:13px;color:#64748b;line-height:1.5;margin-top:8px}.time-badge{font-size:11px;background:#f3f4f6;color:#6b7280;padding:2px 8px;border-radius:4px;font-weight:600;white-space:nowrap}.task-item.active .time-badge{background:#dbeafe;color:#2563eb}.task-item.completed .time-badge{background:#d1fae5;color:#059669}.task-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:#64748b}.avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:600;flex-shrink:0}.task-checklist{margin-top:12px;border-top:1px solid #e5e7eb;padding-top:12px}.checklist-header{font-size:13px;font-weight:600;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:8px;background:#f8fafc;border-radius:6px;transition:background .2s}.checklist-header:hover{background:#f1f5f9}.checklist-items{display:flex;flex-direction:column;gap:4px;margin-top:8px}.checklist-item{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;transition:background .2s}.checklist-item:hover{background:#f9fafb}.checklist-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#3b82f6}.checklist-item label{flex:1;font-size:13px;color:#475569;cursor:pointer;margin:0}.checklist-item input[type=checkbox]:checked+label{text-decoration:line-through;color:#94a3b8}.task-actions{margin-top:12px;display:flex;gap:8px}.badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.badge-light{background:#f1f5f9;color:#64748b}.badge-primary{background:#dbeafe;color:#2563eb;border:1px solid #93c5fd}.badge-success{background:#d1fae5;color:#059669;border:1px solid #6ee7b7}.badge-warning{background:#fef3c7;color:#d97706;border:1px solid #fcd34d}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-icon{padding:8px;display:flex;align-items:center;justify-content:center}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-success{background:#10b981;color:#fff}.btn-success:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-secondary{background:#fff;color:#64748b;border:1px solid #e5e7eb}.btn-secondary:hover{background:#f9fafb;border-color:#cbd5e1}.btn-icon-sm{padding:6px;background:transparent;border:none;color:#64748b;cursor:pointer;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-icon-sm:hover{background:#f1f5f9;color:#3b82f6}.attachment-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border-radius:8px;transition:all .2s}.attachment-item:hover{background:#f1f5f9}.attachment-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.note-form .form-control{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s}.note-form .form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;animation:modalFadeIn .2s ease-out}.modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-footer{padding:16px 24px;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.work-item-detail-v2 .mb-3{margin-bottom:20px!important}@media (max-width: 1200px){.work-item-detail-v2 .grid-layout{grid-template-columns:1fr}}.work-item-v3{position:relative}.work-item-v3 .wi-header{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px 24px;margin-bottom:20px}.work-item-v3 .wi-header-top{display:flex;align-items:center;gap:12px;margin-bottom:8px}.work-item-v3 .wi-title{font-size:22px;font-weight:700;color:#1e293b;margin:0}.work-item-v3 .wi-code{font-size:11px;font-weight:600;color:#64748b;background:#f1f5f9;padding:4px 10px;border-radius:4px;font-family:SF Mono,Cascadia Code,Consolas,monospace;letter-spacing:.3px}.work-item-v3 .wi-status-badge{font-size:11px;font-weight:600;padding:4px 12px;border-radius:20px;text-transform:capitalize;margin-left:auto}.work-item-v3 .wi-status-badge.not-started{background:#f1f5f9;color:#64748b}.work-item-v3 .wi-status-badge.in-progress{background:#dbeafe;color:#2563eb}.work-item-v3 .wi-status-badge.completed{background:#dcfce7;color:#16a34a}.work-item-v3 .wi-status-badge.under-review{background:#fef3c7;color:#d97706}.work-item-v3 .wi-status-badge.on-hold{background:#fee2e2;color:#dc2626}.work-item-v3 .wi-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px}.work-item-v3 .wi-meta-item{display:flex;align-items:center;gap:6px;color:#64748b}.work-item-v3 .wi-meta-item a{color:#3b82f6;text-decoration:none;font-weight:500}.work-item-v3 .wi-meta-item a:hover{text-decoration:underline}.work-item-v3 .wi-meta-value{font-weight:600;color:#1e293b}.work-item-v3 .wi-meta-dot{color:#cbd5e1}.work-item-v3 .wi-owner-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:600}.work-item-v3 .stage-tabs-card{overflow:hidden;margin-bottom:0}.work-item-v3 .stage-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb}.work-item-v3 .stage-tab{flex:1;padding:12px 14px;font-size:13px;font-weight:600;text-align:center;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.work-item-v3 .stage-tab:hover{color:#334155;background:#f8fafc}.work-item-v3 .stage-tab.active{color:#1e293b;border-bottom-color:#3b82f6}.work-item-v3 .stage-tab-num{flex-shrink:0;font-size:10px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e2e8f0;color:#64748b;font-weight:700;line-height:1}.work-item-v3 .stage-tab.active .stage-tab-num{background:#334155;color:#fff}.work-item-v3 .stage-tab.completed{background:#f0fdf4;color:#16a34a;border-bottom-color:#22c55e}.work-item-v3 .stage-tab.completed .stage-tab-num{background:#22c55e;color:#fff}.work-item-v3 .stage-tab.completed.active{background:#dcfce7;color:#15803d;border-bottom-color:#16a34a}.work-item-v3 .stage-tab.completed.active .stage-tab-num{background:#16a34a;color:#fff}.work-item-v3 .stage-tab.in-progress{background:#eff6ff;color:#2563eb;border-bottom-color:#3b82f6}.work-item-v3 .stage-tab.in-progress .stage-tab-num{background:#3b82f6;color:#fff}.work-item-v3 .stage-tab-name{overflow:hidden;text-overflow:ellipsis}.work-item-v3 .pill-blue{background:#eff6ff;color:#2563eb}.work-item-v3 .stage-content{display:flex;flex-direction:column;gap:0}.work-item-v3 .stage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 14px;border-bottom:1px solid #f1f5f9;margin-bottom:16px;flex-wrap:wrap}.work-item-v3 .stage-toolbar-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.work-item-v3 .stage-toolbar-who{display:flex;align-items:center;gap:8px}.work-item-v3 .toolbar-avatar{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.work-item-v3 .toolbar-avatar.unassigned{background:#e2e8f0;color:#94a3b8}.work-item-v3 .toolbar-name{font-size:13px;font-weight:600;color:#1e293b}.work-item-v3 .toolbar-name.muted{color:#94a3b8;font-weight:500}.work-item-v3 .assign-me-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border:1px dashed #93c5fd;border-radius:6px;background:#eff6ff;font-size:12px;font-weight:600;color:#2563eb;cursor:pointer;transition:all .15s}.work-item-v3 .assign-me-btn:hover:not(:disabled){background:#dbeafe;border-color:#3b82f6;border-style:solid}.work-item-v3 .assign-me-btn:disabled{opacity:.6;cursor:not-allowed}.work-item-v3 .toolbar-sep{color:#d1d5db;font-size:12px;-webkit-user-select:none;user-select:none}.work-item-v3 .toolbar-step{font-size:12px;font-weight:500;color:#64748b}.work-item-v3 .toolbar-date{font-size:11px;color:#94a3b8}.work-item-v3 .stage-toolbar-right{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap}.work-item-v3 .toolbar-link{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:none;border:none;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;border-radius:4px;transition:all .15s}.work-item-v3 .toolbar-link:hover{background:#f1f5f9;color:#3b82f6}.work-item-v3 .toolbar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#e2e8f0;color:#475569;font-size:10px;font-weight:700}.work-item-v3 .toolbar-link:hover .toolbar-badge{background:#dbeafe;color:#2563eb}.work-item-v3 .stage-workspace{display:flex;flex-direction:column;gap:20px}.work-item-v3 .todo-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px}.work-item-v3 .todo-header{display:flex;align-items:center;margin-bottom:8px}.work-item-v3 .todo-title{font-size:13px;font-weight:700;color:#334155;display:flex;align-items:center;gap:8px}.work-item-v3 .todo-progress-text{font-size:11px;font-weight:500;color:#94a3b8}.work-item-v3 .todo-items{display:flex;flex-direction:column;gap:0}.work-item-v3 .todo-item{display:flex;align-items:center;gap:10px;padding:8px 4px;border-radius:6px;cursor:pointer;transition:background .1s}.work-item-v3 .todo-item:hover{background:#f1f5f9}.work-item-v3 .todo-item+.todo-item{border-top:1px solid #eef2f6}.work-item-v3 .todo-item input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.work-item-v3 .todo-check{width:20px;height:20px;border-radius:6px;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;background:#fff}.work-item-v3 .todo-item.done .todo-check{background:#22c55e;border-color:#22c55e}.work-item-v3 .todo-label{font-size:13px;font-weight:500;color:#334155;flex:1;line-height:1.4}.work-item-v3 .todo-item.done .todo-label{text-decoration:line-through;color:#94a3b8}.work-item-v3 .todo-item.saving{opacity:.5}.work-item-v3 .todo-saving{font-size:10px;color:#94a3b8;flex-shrink:0}.work-item-v3 .stage-files-row{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.work-item-v3 .files-row-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.work-item-v3 .files-row-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.work-item-v3 .files-upload-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}.work-item-v3 .files-upload-btn:hover{background:#eff6ff;border-color:#93c5fd;color:#2563eb}.work-item-v3 .stage-comments{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.work-item-v3 .comments-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.work-item-v3 .comments-thread{display:flex;flex-direction:column;gap:0;margin-bottom:10px}.work-item-v3 .comment-bubble{padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #f1f5f9;margin-bottom:6px}.work-item-v3 .comment-header{display:flex;align-items:center;gap:8px;margin-bottom:3px}.work-item-v3 .comment-author{font-size:12px;font-weight:600;color:#1e293b}.work-item-v3 .comment-time{font-size:10px;color:#94a3b8}.work-item-v3 .comment-text{font-size:13px;color:#334155;line-height:1.5;word-break:break-word}.work-item-v3 .comments-show-all{display:block;width:100%;text-align:center;padding:8px 0;font-size:12px;font-weight:500;color:#3b82f6;background:none;border:none;cursor:pointer}.work-item-v3 .comments-show-all:hover{text-decoration:underline}.work-item-v3 .comment-compose{display:flex;gap:8px;align-items:flex-end}.work-item-v3 .comment-input{flex:1;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:13px;font-family:inherit;resize:none;min-height:40px;box-sizing:border-box;color:#1e293b;background:#fff;transition:border-color .15s}.work-item-v3 .comment-input::placeholder{color:#94a3b8}.work-item-v3 .comment-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f614}.work-item-v3 .comment-send{width:38px;height:38px;border-radius:50%;border:none;background:#3b82f6;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.work-item-v3 .comment-send:hover:not(:disabled){background:#2563eb}.work-item-v3 .comment-send:disabled{background:#cbd5e1;cursor:not-allowed}.work-item-v3 .drop-zone-compact{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border:2px dashed #93c5fd;border-radius:8px;background:#eff6ff;font-size:13px;font-weight:500;color:#2563eb;margin-bottom:8px;animation:wi3FadeIn .15s ease}.work-item-v3 .drop-zone-compact.dragging{border-color:#3b82f6;background:#dbeafe}.work-item-v3 .progress-strip{display:flex;align-items:center;gap:12px;padding:10px 20px;background:linear-gradient(to right,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;font-size:12px;font-weight:500}.work-item-v3 .progress-bar-track{flex:1;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.work-item-v3 .progress-bar-fill{height:100%;background:linear-gradient(90deg,#16a34a,#22c55e);border-radius:3px;transition:width .4s ease}.work-item-v3 .progress-stats{display:flex;gap:16px;align-items:center}.work-item-v3 .progress-stat{display:flex;align-items:center;gap:4px}.work-item-v3 .progress-stat .dot{width:8px;height:8px;border-radius:50%}.work-item-v3 .progress-stat .dot.done{background:#16a34a}.work-item-v3 .progress-stat .dot.active{background:#3b82f6}.work-item-v3 .progress-stat .dot.pending{background:#d1d5db}.work-item-v3 .progress-pct{font-weight:700;color:#1e293b;padding-left:12px;border-left:2px solid #cbd5e1}.work-item-v3 .content-grid{display:block}.work-item-v3 .stage-panel{min-width:0;overflow:hidden}.work-item-v3 .card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.work-item-v3 .card+.card{margin-top:0}.work-item-v3 .mb-3{margin-bottom:24px}.work-item-v3 .card-header{padding:16px 20px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;height:58px;margin-bottom:0}.work-item-v3 .card-header.clickable{cursor:pointer;transition:background .2s}.work-item-v3 .card-header.clickable:hover{background:#f9fafb}.work-item-v3 .card-body{padding:20px}.work-item-v3 .card-title{font-size:16px;font-weight:600;color:#1e293b;margin:0;display:flex;align-items:center}.work-item-v3 .section-title{font-size:14px;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.work-item-v3 .muted{font-size:12px;color:#64748b}.work-item-v3 .tiny{font-size:11px;color:#94a3b8}.work-item-v3 .input{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;background:#fff;box-sizing:border-box;font-family:inherit}.work-item-v3 .input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.work-item-v3 .stage-panel{min-height:200px}.work-item-v3 .stage-info-bar{display:flex;align-items:center;gap:16px;padding:14px 20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:10px;margin-bottom:20px}.work-item-v3 .stage-info-avatar{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;font-weight:600;flex-shrink:0}.work-item-v3 .stage-info-text{flex:1;min-width:0}.work-item-v3 .stage-info-name{font-size:14px;font-weight:600;color:#1e293b}.work-item-v3 .stage-info-role{font-size:12px;color:#64748b}.work-item-v3 .stage-info-badge{font-size:11px;font-weight:600;padding:4px 12px;border-radius:20px}.work-item-v3 .stage-info-badge.pending{background:#f1f5f9;color:#64748b}.work-item-v3 .stage-info-badge.active{background:#dbeafe;color:#2563eb}.work-item-v3 .stage-info-badge.completed{background:#dcfce7;color:#16a34a}.work-item-v3 .stage-description{font-size:13px;color:#64748b;line-height:1.6;padding:0 0 12px;border-bottom:1px solid #f1f5f9;margin-bottom:4px}.work-item-v3 .stage-actions{display:flex;gap:10px;margin-top:20px}.work-item-v3 .btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500;border:1px solid #e5e7eb;background:#fff;color:#334155;cursor:pointer;transition:all .15s;white-space:nowrap}.work-item-v3 .btn:hover:not(:disabled){background:#f8fafc}.work-item-v3 .btn:disabled{opacity:.6;cursor:not-allowed}.work-item-v3 .btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.work-item-v3 .btn-primary:hover:not(:disabled){background:#2563eb}.work-item-v3 .btn-success{background:#16a34a;color:#fff;border-color:#16a34a}.work-item-v3 .btn-success:hover:not(:disabled){background:#15803d}.work-item-v3 .btn-secondary{background:#f8fafc;color:#475569}.work-item-v3 .btn-secondary:hover:not(:disabled){background:#e2e8f0}.work-item-v3 .btn-warning{background:#f59e0b;color:#fff;border-color:#f59e0b}.work-item-v3 .btn-warning:hover:not(:disabled){background:#d97706}.work-item-v3 .btn-sm{padding:6px 12px;font-size:12px}.work-item-v3 .drop-zone{border:2px dashed #d1d5db;border-radius:16px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;background:#fafbfc}.work-item-v3 .drop-zone:hover{border-color:#93c5fd;background:#eff6ff}.work-item-v3 .drop-zone.dragging{border-color:#3b82f6;background:#dbeafe;border-style:solid}.work-item-v3 .drop-icon{font-size:40px;margin-bottom:12px}.work-item-v3 .drop-title{font-size:16px;font-weight:600;color:#1e293b;margin-bottom:4px}.work-item-v3 .drop-subtitle{font-size:13px;color:#64748b;margin-bottom:8px}.work-item-v3 .drop-formats{font-size:11px;color:#94a3b8}.work-item-v3 .file-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.work-item-v3 .file-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;color:#334155;cursor:pointer;transition:all .15s;max-width:220px}.work-item-v3 .file-chip:hover{background:#eff6ff;border-color:#93c5fd}.work-item-v3 .file-chip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.work-item-v3 .file-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.work-item-v3 .file-chip-dl{flex-shrink:0;color:#94a3b8;opacity:0;transition:opacity .15s}.work-item-v3 .file-chip:hover .file-chip-dl{opacity:1;color:#3b82f6}.work-item-v3 .upload-inline{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#3b82f6;font-weight:500;padding:4px 0}.work-item-v3 .upload-spinner-sm{width:14px;height:14px;border:2px solid #bfdbfe;border-top-color:#3b82f6;border-radius:50%;animation:wi3-spin .7s linear infinite;flex-shrink:0}@keyframes wi3-spin{to{transform:rotate(360deg)}}.work-item-v3 .pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600}.work-item-v3 .pill-success{background:#dcfce7;color:#16a34a}.work-item-v3 .more-menu-wrapper{position:relative}.work-item-v3 .btn-more{min-width:36px;justify-content:center;font-size:16px;font-weight:700;padding:6px 8px;letter-spacing:2px;line-height:1}.work-item-v3 .more-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f;min-width:170px;z-index:50;padding:4px;animation:wi3FadeIn .12s ease}.work-item-v3 .more-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;border:none;background:none;font-size:13px;color:#334155;cursor:pointer;border-radius:6px;transition:background .1s;text-align:left}.work-item-v3 .more-menu-item:hover{background:#f1f5f9;color:#0f172a}.work-item-v3 .sidebar-tabs-card{overflow:hidden}.work-item-v3 .mini-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb}.work-item-v3 .mini-tab{flex:1;padding:10px 12px;font-size:12px;font-weight:600;text-align:center;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease}.work-item-v3 .mini-tab:hover{color:#334155;background:#f8fafc}.work-item-v3 .mini-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.work-item-v3 .mini-tab-content{display:none}.work-item-v3 .mini-tab-content.active{display:block}.work-item-v3 .notes-list{max-height:240px;overflow-y:auto;padding:2px 0}.work-item-v3 .note-item{padding:10px 12px;border-radius:8px;background:#f8fafc;border:1px solid #f1f5f9}.work-item-v3 .note-item+.note-item{margin-top:8px}.work-item-v3 .note-item .note-meta{font-size:11px;color:#94a3b8;margin-bottom:4px;display:flex;align-items:center;gap:4px}.work-item-v3 .note-item .note-meta strong{color:#1e293b;font-weight:600;font-size:12px}.work-item-v3 .note-item .note-text{font-size:13px;color:#334155;line-height:1.6;word-break:break-word}.work-item-v3 .note-input{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:10px;font-size:12px;font-family:inherit;resize:vertical;min-height:48px;box-sizing:border-box}.work-item-v3 .note-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.work-item-v3 .view-all-link{font-size:11px;color:#3b82f6;cursor:pointer;border:none;background:none;padding:0;font-weight:500}.work-item-v3 .view-all-link:hover{text-decoration:underline}.work-item-v3 .activity-list{display:flex;flex-direction:column;gap:10px}.work-item-v3 .activity-item{display:grid;grid-template-columns:16px 1fr;gap:10px;align-items:start}.work-item-v3 .activity-dot{width:8px;height:8px;border-radius:999px;background:#cbd5e1;margin-top:6px}.work-item-v3 .activity-dot.dot-green{background:#16a34a}.work-item-v3 .activity-dot.dot-blue{background:#3b82f6}.work-item-v3 .activity-dot.dot-amber{background:#f59e0b}.work-item-v3 .activity-item strong{font-size:12px;color:#0f172a}.work-item-v3 .sidebar-file-list{display:flex;flex-direction:column;gap:2px}.work-item-v3 .sidebar-file-item{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .1s}.work-item-v3 .sidebar-file-item:hover{background:#f1f5f9}.work-item-v3 .sidebar-file-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}.work-item-v3 .sidebar-file-name{font-size:12px;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-item-v3 .sidebar-file-meta{font-size:10px;color:#94a3b8;margin-top:1px}.work-item-v3 .sidebar-file-dl{width:24px;height:24px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .1s}.work-item-v3 .sidebar-file-item:hover .sidebar-file-dl{opacity:1}.work-item-v3 .file-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:9px;font-weight:700;padding:0 4px;margin-left:4px}.work-item-v3 .file-actions{display:flex;gap:4px}.work-item-v3~.drawer-backdrop,.drawer-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:400}.work-item-v3~.drawer-backdrop.open,.drawer-backdrop.open{display:block}.work-item-v3 .empty-state{text-align:center;padding:32px 20px;color:#94a3b8}.work-item-v3 .empty-state-icon{font-size:32px;margin-bottom:8px;opacity:.5}.work-item-v3 .empty-state-text{font-size:13px}.work-item-v3 .loading-center{padding:60px 20px;text-align:center;color:#6b7280;font-size:14px}.work-item-v3 .loading-spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:wi3-spin .7s linear infinite;margin:0 auto 12px}.work-item-v3 .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:wi3FadeIn .2s ease}.work-item-v3 .modal-content{background:#fff;border-radius:12px;width:500px;max-width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;animation:wi3ModalIn .2s ease-out}.work-item-v3 .modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.work-item-v3 .modal-header h3{font-size:18px;font-weight:600;margin:0;color:#1e293b}.work-item-v3 .modal-body{padding:24px}.work-item-v3 .modal-footer{padding:16px 24px;background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end}.work-item-v3 .modal-close{background:none;border:none;cursor:pointer;padding:4px;color:#64748b;transition:color .15s}.work-item-v3 .modal-close:hover{color:#1e293b}.work-item-v3 .pending-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.work-item-v3 .pending-overlay-icon{font-size:48px;margin-bottom:16px;opacity:.4}.work-item-v3 .pending-overlay-title{font-size:16px;font-weight:600;color:#64748b;margin-bottom:6px}.work-item-v3 .pending-overlay-text{font-size:13px;color:#94a3b8;max-width:380px;line-height:1.5}@keyframes wi3FadeIn{0%{opacity:0}to{opacity:1}}@keyframes wi3ModalIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.work-item-v3 .stage-tabs{flex-wrap:wrap}.work-item-v3 .stage-tab{font-size:11px;padding:8px 6px}.work-item-v3 .wi-meta{gap:8px}.work-item-v3 .wi-header{padding:16px}}.header-left{flex:1}.page-title{font-size:28px;font-weight:700;color:var(--text-dark);margin:0 0 8px;display:flex;align-items:center;gap:12px}.page-subtitle{font-size:15px;color:var(--text-medium);margin:0 0 0 40px}.stat-card{background:#fff;border-radius:12px;padding:20px;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a}.stat-header{display:flex;justify-content:space-between;align-items:flex-start}.stat-label{font-size:13px;font-weight:500;color:var(--text-medium);margin-bottom:8px}.stat-value{font-size:32px;font-weight:700;color:var(--text-dark);line-height:1}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-icon.primary{background:#eff6ff;color:var(--primary-color)}.stat-icon.secondary{background:#f1f5f9;color:var(--text-medium)}.stat-icon.success{background:#dcfce7;color:var(--success-color)}.stat-icon.danger{background:#fee2e2;color:var(--danger-color)}.action-bar{display:flex;gap:16px;align-items:center}.search-box{position:relative;flex:1;max-width:400px}.filters{display:flex;gap:12px;flex-wrap:nowrap}.filters-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.search-box{position:relative;flex:1 1 300px;min-width:250px}.search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;outline:none;transition:border-color .2s}.search-input:focus{border-color:var(--primary-color)}.filter-select{padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:#fff;cursor:pointer;outline:none;transition:border-color .2s;min-width:140px;flex-shrink:0}.filter-select:focus{border-color:var(--primary-color)}.date-input{min-width:140px;flex-shrink:0}.results-count{margin-left:auto;font-size:14px;color:var(--text-medium);white-space:nowrap;font-weight:500;flex-shrink:0}.results-summary{margin:16px 0;font-size:14px;color:var(--text-medium);font-weight:500}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:#f8fafc;border-bottom:2px solid var(--border-color)}.data-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-medium);text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer;transition:background .2s}.data-table th.sortable:hover{background:#f1f5f9}.th-content{display:flex;align-items:center;gap:6px}.th-content svg{flex-shrink:0;transition:transform .2s}.data-table td{padding:16px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-dark)}.data-table tbody tr{transition:background .2s}.data-table tbody tr:hover{background:#f8fafc}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.badge-primary{background:#dbeafe;color:#1e40af}.badge-secondary{background:#f1f5f9;color:#475569}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background:var(--primary-color)!important;color:#fff!important}.btn-primary:hover{background:var(--primary-dark)!important;color:#fff!important}.btn-icon{background:none;border:none;padding:8px;cursor:pointer;color:var(--text-medium);border-radius:6px;transition:all .2s}.btn-icon:hover{background:#f1f5f9;color:var(--text-dark)}.card{background:#fff;border-radius:12px;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.error-banner{padding:16px;background:#fee;border:1px solid #fcc;border-radius:8px;display:flex;align-items:center;gap:12px;color:#c33;margin-bottom:24px}@media (max-width: 768px){.work-items-page{padding:16px}.page-header{flex-direction:column;gap:16px}.page-subtitle{margin-left:0}.stats-grid{grid-template-columns:repeat(2,1fr)}.action-bar{flex-direction:column}.search-box{max-width:100%}.filters{width:100%;flex-wrap:wrap}.filter-select{flex:1;min-width:0}}.create-invoice-page{padding:0}.page-header{margin-bottom:24px}.page-title{font-size:28px;font-weight:600;color:var(--text-primary);margin:0}.invoice-card{max-width:1200px;margin:0 auto}.card-body-large{padding:40px}.error-banner{background:#fee;border:1px solid #fcc;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:8px;max-width:1200px;margin-left:auto;margin-right:auto}.invoice-header-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:20px;margin-bottom:30px}.client-section{margin-bottom:30px}.client-select{max-width:400px}.client-info-box{margin-top:16px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;max-width:400px}.client-info-name{font-weight:600;font-size:16px;color:var(--text-primary);margin-bottom:8px}.client-info-details{font-size:14px;color:var(--text-medium);line-height:1.6}.client-info-details div{margin-bottom:4px}.form-group{margin-bottom:0}.form-label{display:block;font-size:13px;font-weight:500;color:var(--text-medium);margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.form-control{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);background:var(--bg-primary);transition:border-color .2s}.form-control:focus{outline:none;border-color:var(--primary-color)}textarea.form-control{resize:vertical;font-family:inherit;line-height:1.5}.item-table-section{margin:30px 0}.item-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.item-table-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.create-invoice-page .btn-add-row{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--primary-color)!important;color:#fff!important;border:none!important;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.create-invoice-page .btn-add-row:hover{background:var(--primary-hover)!important;color:#fff!important;border-color:transparent!important}.create-invoice-page .btn-add-row svg{color:#fff!important}.table-wrapper{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;margin-bottom:12px}.invoice-table{width:100%;border-collapse:collapse;background:var(--bg-primary)}.invoice-table thead th{background:var(--bg-secondary);padding:12px 16px;font-size:11px;font-weight:600;color:var(--text-medium);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.invoice-table tbody td{padding:12px 16px;border-bottom:1px solid var(--border-color)}.table-input{width:100%;padding:8px 0;border:none;background:transparent;font-size:14px;color:var(--text-primary);font-family:inherit}.table-input:focus{outline:none}.table-input.text-center{text-align:center}.table-input.text-right{text-align:right}.table-input[readonly]{font-weight:500}.btn-remove-item{width:28px;height:28px;padding:0;border:none;background:var(--error-color);color:#fff;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s;flex-shrink:0}.btn-remove-item:hover:not(:disabled){opacity:.8}.btn-remove-item:disabled{opacity:.3;cursor:not-allowed}.bulk-add-link{text-align:center;margin-top:12px}.btn-link{background:none;border:none;color:var(--primary-color);font-size:14px;cursor:pointer;text-decoration:none;transition:opacity .2s}.btn-link:hover{opacity:.8;text-decoration:underline}.totals-section{margin:30px 0;display:flex;justify-content:flex-end}.totals-container{width:400px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:20px}.total-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.total-row:last-child{border-bottom:none}.total-row span:first-child{font-size:14px;color:var(--text-medium);font-weight:500}.total-value{font-size:14px;color:var(--text-primary);font-weight:600;font-family:Courier New,monospace}.total-input{width:140px;padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;text-align:right;color:var(--text-primary);background:var(--bg-primary);font-family:Courier New,monospace}.total-input:focus{outline:none;border-color:var(--primary-color)}.grand-total-row{padding-top:16px;margin-top:8px;border-top:2px solid var(--border-color)!important}.grand-total-row span:first-child{font-size:16px;font-weight:600;color:var(--text-primary)}.grand-total-value{font-size:18px;font-weight:700;color:var(--primary-color)}.form-actions-bottom{margin-top:40px;padding-top:24px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.create-invoice-page .btn{padding:10px 24px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:8px}.create-invoice-page .btn-primary{background:var(--primary-color)!important;color:#fff!important}.create-invoice-page .btn-primary:hover:not(:disabled){background:var(--primary-hover)!important;color:#fff!important}.create-invoice-page .btn-secondary{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}.create-invoice-page .btn-secondary:hover:not(:disabled){background:var(--bg-hover)!important;color:var(--text-primary)!important}.create-invoice-page .btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.card-body-large{padding:30px}.invoice-header-grid{grid-template-columns:1fr 1fr}.totals-container{width:100%}}@media (max-width: 768px){.card-body-large{padding:20px}.invoice-header-grid{grid-template-columns:1fr}.invoice-table{font-size:12px}.invoice-table thead th,.invoice-table tbody td{padding:8px 12px}.form-actions-bottom{flex-direction:column;gap:12px}.form-actions-bottom>div{width:100%}.form-actions-bottom button{width:100%}}.invoice-detail-page{padding:0}.header-left{display:flex;align-items:center;gap:16px}.page-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.badge{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500}.badge-success{background:var(--success-light);color:var(--success-color)}.badge-warning{background:var(--warning-light);color:var(--warning-color)}.badge-danger{background:var(--error-light);color:var(--error-color)}.invoice-container{max-width:900px;margin:0 auto;background:#fff;padding:48px;border-radius:12px;box-shadow:0 4px 6px #0000001a}.invoice-header{display:flex;justify-content:space-between;margin-bottom:48px;padding-bottom:24px;border-bottom:2px solid var(--border-color)}.firm-name{font-size:28px;font-weight:700;color:var(--primary-color);margin-bottom:8px;border:none;outline:none}.firm-details{color:var(--text-medium);line-height:1.6}.invoice-meta{text-align:right}.invoice-title{font-size:32px;font-weight:700;margin-bottom:16px}.invoice-info{display:flex;flex-direction:column;gap:4px;color:var(--text-medium)}.bill-to-section{margin-bottom:32px}.section-label{font-weight:700;margin-bottom:8px;color:var(--text-primary)}.client-details{color:var(--text-medium);line-height:1.6}.invoice-table{width:100%;margin:32px 0;border-collapse:collapse}.invoice-table th{text-align:left;padding:12px;background:var(--bg-light);font-weight:600;border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.invoice-table td{padding:12px;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.invoice-table tbody tr:last-child td{border-bottom:none}.work-item-ref{font-size:13px;color:var(--text-light);margin-top:4px}.invoice-summary{display:flex;justify-content:flex-end;margin-top:32px}.invoice-summary-table{width:300px}.invoice-summary-table td{padding:8px 12px;border-bottom:none}.invoice-summary-table td:first-child{text-align:left;color:var(--text-medium)}.invoice-summary-table td:last-child{text-align:right;font-weight:500}.invoice-summary-table .total-row{font-weight:700;font-size:18px;border-top:2px solid var(--border-color)}.invoice-summary-table .total-row td{padding-top:16px}.payment-instructions{margin-top:48px;padding:24px;background:var(--bg-light);border-radius:8px}.payment-details{color:var(--text-medium);line-height:1.8;margin-top:12px}.invoice-notes{margin-top:32px;font-size:13px;color:var(--text-medium);line-height:1.6}.invoice-footer{margin-top:48px;padding-top:24px;border-top:2px solid var(--border-color);text-align:center;color:var(--text-light);font-size:13px}.invoice-detail-page .btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:8px}.invoice-detail-page .btn-primary{background:var(--primary-color)!important;color:#fff!important}.invoice-detail-page .btn-primary:hover{background:var(--primary-hover)!important;color:#fff!important}.invoice-detail-page .btn-secondary{background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}.invoice-detail-page .btn-secondary:hover{background:var(--bg-hover)!important}.invoice-detail-page .btn-success{background:var(--success-color)!important;color:#fff!important}.invoice-detail-page .btn-success:hover{background:var(--success-dark)!important;color:#fff!important}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@media print{.no-print{display:none!important}.invoice-container{box-shadow:none;padding:24px}}@media (max-width: 768px){.invoice-container{padding:24px}.invoice-header{flex-direction:column;gap:24px}.invoice-meta{text-align:left}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%;flex-wrap:wrap}.header-actions .btn{flex:1;min-width:120px}}.client-communications-page{padding:0}.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:14px}.breadcrumb a{color:var(--text-medium);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--primary-color)}.breadcrumb-separator{color:var(--text-light)}.breadcrumb-current{color:var(--text-primary);font-weight:500}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:#fff;padding:24px;border-radius:12px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000001a;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-details{flex:1}.stat-value{font-size:32px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:4px}.stat-label{font-size:14px;color:var(--text-medium);font-weight:500}.tabs-container{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:0}.filter-tab{background:none;border:none;padding:12px 20px;font-size:14px;font-weight:500;color:var(--text-medium);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;display:flex;align-items:center;gap:8px}.filter-tab:hover{color:var(--primary-color);background:var(--bg-hover)}.filter-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:transparent}.tab-count{background:var(--bg-secondary);color:var(--text-medium);padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600}.filter-tab.active .tab-count{background:var(--primary-color);color:#fff}.card-filters{padding:20px;border-bottom:1px solid var(--border-color);display:flex;gap:12px;flex-wrap:wrap}.card-filters .form-control{width:200px}.card-body{padding:24px}.table thead{background:var(--bg-light)}.table th{padding:12px 16px;text-align:left;font-weight:600;font-size:14px;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.table td{padding:16px;border-bottom:1px solid var(--border-color);font-size:14px;color:var(--text-primary)}.table tbody tr:hover{background:var(--bg-hover)}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.badge-success{background:var(--success-light);color:var(--success-dark)}.badge-warning{background:var(--warning-light);color:#d97706}.badge-danger{background:var(--error-light);color:var(--danger-color)}.badge-info{background:#dbeafe;color:#2563eb}.badge-secondary{background:var(--bg-secondary);color:var(--text-medium)}.scheduled-messages-list{display:flex;flex-direction:column;gap:16px}.scheduled-message-card{padding:20px;background:var(--bg-secondary);border-radius:12px;border-left:4px solid var(--primary-color)}.scheduled-message-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:12px}.scheduled-message-title{font-weight:600;margin-bottom:4px}.scheduled-message-subtitle{font-size:14px;color:var(--text-medium)}.scheduled-message-body{font-size:14px;color:var(--text-secondary);margin-bottom:12px;line-height:1.5}.scheduled-message-meta{display:flex;gap:16px;font-size:13px;color:var(--text-medium);margin-bottom:16px}.scheduled-message-actions{display:flex;gap:8px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.template-card{display:flex;flex-direction:column}.template-card-header{display:flex;justify-content:space-between;align-items:start;padding:20px 20px 12px}.template-card-header h3{font-size:16px;font-weight:600;margin:0}.template-card-body{padding:0 20px 20px;color:var(--text-secondary);font-size:14px;line-height:1.5;flex:1}.template-card-actions{display:flex;gap:8px;padding:0 20px 20px}.btn,.btn-primary,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s}.client-communications-page .btn-primary{background:var(--primary-color)!important;color:#fff!important}.client-communications-page .btn-primary:hover{background:var(--primary-dark)!important}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover{background:#dc2626}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.stats-grid{grid-template-columns:1fr}.tabs-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.card-filters{flex-direction:column}.card-filters .form-control{width:100%}.table-container{overflow-x:scroll}.templates-grid{grid-template-columns:1fr}}.send-message-page{padding:0}.send-message-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.message-composition{display:flex;flex-direction:column;gap:20px}.message-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.radio-card{position:relative;cursor:pointer}.radio-card input[type=radio]{position:absolute;opacity:0}.radio-card-content{padding:16px;border:2px solid var(--border-color);border-radius:12px;text-align:center;transition:all .2s;background:#fff}.radio-card:hover .radio-card-content{border-color:var(--primary-color);background:var(--bg-hover)}.radio-card.selected .radio-card-content,.radio-card input[type=radio]:checked+.radio-card-content{border-color:var(--primary-color);background:#eff6ff}.radio-card-title{font-weight:600;margin-top:6px;font-size:13px}.radio-card-subtitle{font-size:11px;color:var(--text-medium)}.message-controls{display:flex;justify-content:space-between;margin-top:8px;flex-wrap:wrap;gap:8px}.variable-tags{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.variable-tag{background:var(--bg-secondary);padding:4px 8px;border-radius:4px;cursor:pointer;color:var(--text-medium);transition:all .2s}.variable-tag:hover{background:var(--primary-color);color:#fff}.char-count{color:var(--text-medium);white-space:nowrap}.schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.action-buttons{display:flex;gap:12px;justify-content:flex-end}.preview-card{margin-top:20px}.preview-subject{margin-bottom:16px}.preview-subject label{font-size:12px;color:var(--text-medium);display:block;margin-bottom:6px}.preview-subject-content{padding:10px;background:var(--bg-secondary);border-radius:6px;font-weight:600;font-size:14px}.preview-message-box{padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);min-height:120px;white-space:pre-wrap;line-height:1.6}.preview-note{margin-top:12px;padding:12px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;font-size:12px;color:#92400e}.recipients-column .card{position:sticky;top:20px}.selected-count{color:var(--primary-color);font-weight:600}.recipient-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.recipient-actions .btn-sm{font-size:13px;padding:10px;display:flex;align-items:center;justify-content:center;gap:6px}.clients-list{max-height:600px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.client-checkbox-card{display:flex;align-items:start;gap:12px;padding:12px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.client-checkbox-card:hover{background:var(--bg-hover);border-color:var(--primary-color)}.client-checkbox-card input[type=checkbox]{margin-top:2px;cursor:pointer}.client-info{flex:1}.client-name{font-weight:500;margin-bottom:4px}.client-contact{font-size:12px;color:var(--text-medium);display:flex;flex-direction:column;gap:2px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0;width:16px;height:16px;flex-shrink:0}.checkbox-label span{font-weight:500;font-size:14px;margin-left:4px}.quick-filters-section{margin-bottom:16px}.quick-filters-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.btn-quick-filter{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:500;color:var(--text-dark);background:var(--white);border:1.5px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-quick-filter:hover{border-color:var(--primary-color);background:#eff6ff;color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px #2563eb26}.btn-quick-filter:active{transform:translateY(0)}.btn-quick-filter svg{flex-shrink:0}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:var(--text-primary)}.form-control{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:#fff;transition:border-color .2s,box-shadow .2s}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a}textarea.form-control{resize:vertical;font-family:inherit;line-height:1.6}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.card-header{padding:20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.card-header h3{font-size:18px;font-weight:600;margin:0}.card-body{padding:20px}.btn,.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s}.send-message-page .btn-primary{background:var(--primary-color)!important;color:#fff!important}.send-message-page .btn-primary:hover:not(:disabled){background:var(--primary-dark)!important}.send-message-page .btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-hover)}.badge-primary{background:#dbeafe;color:var(--primary-color)}.error-message{margin-top:20px;padding:16px;background:var(--error-light);color:var(--danger-color);border-radius:8px;border-left:4px solid var(--danger-color)}@media (max-width: 1024px){.send-message-grid{grid-template-columns:1fr}.recipients-column .card{position:static}.message-type-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.message-type-grid{grid-template-columns:repeat(2,1fr)}.schedule-fields{grid-template-columns:1fr}.action-buttons{flex-direction:column}.action-buttons .btn{width:100%;justify-content:center}.recipient-actions{grid-template-columns:1fr}.clients-list{max-height:400px}}.page-header-section{margin-bottom:32px;display:flex;justify-content:space-between;align-items:center}.page-title{font-size:28px;font-weight:700;color:var(--text-dark);margin-bottom:8px;display:flex;align-items:center;gap:12px}.page-title svg{color:var(--primary-color)}.page-subtitle{color:var(--text-medium);font-size:15px;margin:0;padding-left:40px}.warning-banner{background:linear-gradient(90deg,#ef44441a,#ef44440d);border-left:4px solid var(--danger-color);padding:16px 20px;border-radius:8px;margin-bottom:24px;display:flex;align-items:flex-start;gap:12px}.warning-banner svg{color:var(--danger-color);flex-shrink:0;margin-top:2px}.warning-banner strong{color:var(--danger-color);display:block;margin-bottom:4px}.warning-banner p{margin:0;color:var(--text-medium);font-size:14px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px}.filters-card{margin-bottom:24px}.filters-container{display:flex;gap:12px;align-items:center;flex-wrap:nowrap}.search-box{flex:1;min-width:250px;position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-light)}.search-box input{padding-left:40px;height:44px}.filter-group{display:flex;gap:12px;align-items:center;flex-wrap:nowrap}.filter-select{min-width:160px;white-space:nowrap}.btn{white-space:nowrap;flex-shrink:0}.btn-clear,.btn-advanced{white-space:nowrap;flex-shrink:0;min-width:fit-content}.alphabet-filter{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center}.alphabet-btn{min-width:34px;height:34px;padding:0 10px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:13px;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.alphabet-btn:hover{border-color:#667eea;background:#f9fafb;color:#667eea}.alphabet-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.alphabet-btn:first-child{min-width:45px;font-weight:700}.spin{animation:spin 1s linear infinite}.table-responsive{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table thead{background:var(--light-bg)}.table th{padding:16px;text-align:left;font-weight:600;font-size:13px;color:var(--text-medium);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color)}.table tbody tr{border-bottom:1px solid var(--border-color);transition:background .2s}.table tbody tr:hover{background:var(--light-bg)}.table tbody tr.missing-row{background:#ef44440d}.table td{padding:16px}.client-name{font-weight:500;color:var(--text-dark)}.client-type{font-size:12px;color:var(--text-light);margin-top:2px}.gstin-code{font-family:Courier New,monospace;color:var(--text-medium);font-size:14px}.credential-value{font-family:Courier New,monospace;font-size:14px}.password-field{display:flex;align-items:center;gap:8px}.password-input{border:none;background:transparent;font-family:Courier New,monospace;width:120px;padding:0;font-size:14px}.time-ago{font-size:12px;color:var(--text-light);margin-top:2px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000}.modal-content.gst-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:1000px!important;width:90vw!important;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-dark)}.modal-close{background:none;border:none;font-size:28px;color:var(--text-light);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:var(--light-bg);color:var(--text-dark)}.modal-body{padding:32px;max-height:70vh;overflow-y:auto}.form-group{margin-bottom:24px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px;font-weight:500;font-size:14px;color:var(--text-dark)}.form-control{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;transition:all .2s}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #677eea1a}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%)}.credentials-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;margin-bottom:24px}.credential-section{padding:24px;background:var(--light-bg);border-radius:8px;border:1px solid var(--border-color)}.credential-section .form-group:last-child{margin-bottom:0}.section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--primary-color)}@media (max-width: 768px){.credentials-grid{grid-template-columns:1fr}}.info-box{background:var(--light-bg);padding:16px;border-radius:8px;display:flex;align-items:flex-start;gap:12px;margin-top:24px}.info-box svg{flex-shrink:0;margin-top:2px;color:var(--primary-color)}.info-box p{margin:0;font-size:13px;color:var(--text-medium)}.modal-actions{display:flex;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid var(--border-color);align-items:center}.btn-portal-login{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-portal-login:hover{background:linear-gradient(135deg,#5a6fd6,#6a4292);transform:translateY(-1px);box-shadow:0 2px 8px #667eea66}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.badge-danger{background:#ef44441a;color:var(--danger-color)}.badge-warning{background:#f59e0b1a;color:#b45309}.badge-success{background:#16a34a1a;color:#166534}.success-banner,.error-banner{padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;margin-bottom:20px;animation:slideDown .3s ease}.success-banner{background:#10b9811a;border-left:4px solid var(--success-color);color:var(--success-color)}.error-banner{background:#ef44441a;border-left:4px solid var(--danger-color);color:var(--danger-color)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.btn{padding:8px 16px;border-radius:8px;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0%,#764ba2 100%);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #677eea4d;transform:translateY(-1px)}.btn-secondary{background:#fff;border:1px solid var(--border-color);color:var(--text-dark)}.btn-secondary:hover{background:var(--light-bg)}.btn-sm{padding:6px 12px;font-size:13px}.btn-icon{padding:6px;background:transparent;border:none;cursor:pointer;border-radius:0;display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--text-muted)}.btn-icon:hover{background:transparent;color:var(--primary-color)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon-table{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:#64748b;cursor:pointer;transition:all .2s}.btn-icon-table:hover{background:#f1f5f9;color:#2563eb}.btn-icon-table:disabled{opacity:.5;cursor:not-allowed}.btn-icon-table svg{width:18px;height:18px}.portal-launch-modal{max-width:480px}.portal-launch-client{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--light-bg, #f8fafc);border-radius:8px;margin-bottom:16px;flex-wrap:wrap}.portal-launch-label{font-size:12px;color:var(--text-light, #94a3b8);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.portal-launch-value{font-size:15px;font-weight:600;color:var(--text-color, #1e293b)}.portal-launch-gstin{font-size:12px;font-family:SF Mono,monospace;color:var(--text-medium, #64748b);background:#fff;padding:2px 8px;border-radius:4px;border:1px solid var(--border-color, #e2e8f0);margin-left:auto}.portal-launch-instructions{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:#eff6ff;border-radius:6px;margin-bottom:20px;font-size:13px;color:#1d4ed8}.portal-launch-instructions svg{flex-shrink:0;margin-top:1px;color:#3b82f6}.portal-launch-fields{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.portal-launch-field label{display:block;font-size:13px;font-weight:500;color:var(--text-medium, #64748b);margin-bottom:6px}.portal-launch-input-group{display:flex;gap:6px;align-items:center}.portal-launch-input-group .form-control{flex:1;font-family:SF Mono,Consolas,monospace;font-size:14px;letter-spacing:.3px;background:var(--light-bg, #f8fafc)}.btn-portal-copy{display:flex;align-items:center;gap:4px;padding:8px 14px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;background:#fff;color:var(--text-medium, #64748b);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-portal-copy:hover{background:#f1f5f9;color:var(--primary-color, #667eea);border-color:var(--primary-color, #667eea)}.btn-portal-copy.copied{background:#ecfdf5;color:#059669;border-color:#059669}.btn-portal-eye{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;background:#fff;color:var(--text-medium, #64748b);cursor:pointer;transition:all .2s;flex-shrink:0}.btn-portal-eye:hover{background:#f1f5f9;color:var(--primary-color, #667eea)}.btn-portal-open{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.btn-portal-open:hover{background:linear-gradient(135deg,#5a6fd6,#6a4292);transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.portal-url{font-size:12px;font-weight:400;opacity:.8;margin-left:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.credential-view-page *{box-sizing:border-box}@media (max-width: 480px){.credential-view-page{padding:12px!important}}.work-dashboard .header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.work-dashboard .header-left h1{font-size:20px;font-weight:600;color:#1f2937;margin:0}.work-dashboard .header-title-row{display:flex;align-items:center;gap:16px}.work-dashboard .type-toggle{display:flex;gap:4px;background:#f3f4f6;padding:3px;border-radius:6px}.work-dashboard .type-toggle button{padding:4px 14px;border:none;background:transparent;color:#6b7280;font-size:13px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s;white-space:nowrap}.work-dashboard .type-toggle button:hover{color:#374151}.work-dashboard .type-toggle button.active{background:#6366f1;color:#fff;box-shadow:0 1px 2px #0000001a}.work-dashboard .header-left p{font-size:13px;color:#6b7280;margin-top:2px}.work-dashboard .view-toggle{display:flex;gap:8px;background:#f3f4f6;padding:4px;border-radius:6px}.work-dashboard .view-toggle button{padding:6px 12px;border:none;background:transparent;color:#6b7280;font-size:13px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .2s}.work-dashboard .view-toggle button.active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.work-dashboard .summary-bar{background:#fff;padding:20px 24px;border-radius:12px;border:1px solid #e5e7eb;margin-bottom:16px}.work-dashboard .summary-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.work-dashboard .summary-card{padding:16px;border-radius:8px;border:1px solid #e5e7eb}.work-dashboard .summary-card .label{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.work-dashboard .summary-card .value{font-size:32px;font-weight:700;margin-bottom:4px}.work-dashboard .summary-card .subtitle{font-size:13px;color:#6b7280}.work-dashboard .summary-card.green{background:#ecfdf5;border-color:#10b981}.work-dashboard .summary-card.green .value{color:#059669}.work-dashboard .summary-card.yellow{background:#fffbeb;border-color:#f59e0b}.work-dashboard .summary-card.yellow .value{color:#d97706}.work-dashboard .summary-card.red{background:#fef2f2;border-color:#ef4444}.work-dashboard .summary-card.red .value{color:#dc2626}.work-dashboard .summary-card.blue{background:#eff6ff;border-color:#3b82f6}.work-dashboard .summary-card.blue .value{color:#2563eb}.work-dashboard .summary-card.purple{background:#faf5ff;border-color:#a855f7}.work-dashboard .summary-card.purple .value{color:#9333ea}.work-dashboard .wd-filters{background:#fff;padding:16px 24px;border-bottom:1px solid #e5e7eb;margin-bottom:5px;border-radius:8px;border:1px solid #e5e7eb}.work-dashboard .filters-container{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.work-dashboard .filter-group{display:flex;align-items:center;gap:8px}.work-dashboard .filter-group label{font-size:13px;color:#6b7280;font-weight:500}.work-dashboard .filter-group select,.work-dashboard .filter-group input[type=search]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;cursor:pointer}.work-dashboard .filter-group input[type=search]{width:250px}.work-dashboard .filter-toggle{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;background:#fff;color:#6b7280;cursor:pointer;transition:all .2s;white-space:nowrap;margin-left:auto}.work-dashboard .filter-toggle:hover{border-color:#9ca3af;color:#374151}.work-dashboard .filter-toggle.active{background:#f3f4f6;border-color:#6b7280;color:#374151}.work-dashboard .filter-clear{padding:6px 12px;border:1px solid #fca5a5;border-radius:6px;font-size:12px;background:#fef2f2;color:#dc2626;cursor:pointer;transition:all .2s;white-space:nowrap}.work-dashboard .filter-clear:hover{background:#fee2e2;border-color:#f87171}.work-dashboard .board-view{display:none}.work-dashboard .board-view.active{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;min-height:calc(100vh - 340px)}.work-dashboard .board-view.active.show-archived{grid-template-columns:repeat(6,1fr)}.work-dashboard .column{background:#f9fafb;border-radius:8px;padding:8px;display:flex;flex-direction:column;min-width:0}.work-dashboard .column.archived{display:none}.work-dashboard .board-view.show-archived .column.archived{display:flex}.work-dashboard .column-header{padding:8px 10px;border-radius:6px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:4px}.work-dashboard .column-header h3{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.work-dashboard .column-header .count{background:#0000001a;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.work-dashboard .column.data-collection .column-header{background:#dbeafe;color:#1e40af}.work-dashboard .column.validation .column-header{background:#e0e7ff;color:#4338ca}.work-dashboard .column.gstr1 .column-header{background:#fef3c7;color:#92400e}.work-dashboard .column.gstr2b .column-header{background:#fce7f3;color:#9f1239}.work-dashboard .column.gstr3b .column-header{background:#dcfce7;color:#166534}.work-dashboard .column.archived .column-header{background:#f3f4f6;color:#374151}.work-dashboard .cards{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.work-dashboard .work-card{background:#fff;border:1px solid #e5e7eb;border-top:3px solid #cbd5e1;border-radius:6px;padding:8px 10px;cursor:pointer;transition:all .2s}.work-dashboard .work-card:hover{border-color:#3b82f6;border-top-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-2px)}.work-dashboard .column.data-collection .work-card{border-top-color:#3b82f6}.work-dashboard .column.validation .work-card{border-top-color:#6366f1}.work-dashboard .column.gstr1 .work-card{border-top-color:#f59e0b}.work-dashboard .column.gstr2b .work-card{border-top-color:#ec4899}.work-dashboard .column.gstr3b .work-card{border-top-color:#22c55e}.work-dashboard .column.archived .work-card{border-top-color:#9ca3af}.work-dashboard .work-card.blocked{box-shadow:inset 3px 0 #ef4444;background:#fef2f2}.work-dashboard .work-card.urgent{box-shadow:inset 3px 0 #f59e0b;background:#fffbeb}.work-dashboard .card-client{font-size:12.5px;font-weight:600;color:#1f2937;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-dashboard .card-gstin{font-size:10.5px;color:#6b7280;font-family:Courier New,monospace;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-dashboard .card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;padding-top:6px;border-top:1px solid #f3f4f6}.work-dashboard .card-assignee{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;min-width:0;overflow:hidden}.work-dashboard .card-assignee span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-dashboard .avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:600;flex-shrink:0}.work-dashboard .card-due{font-size:11px;padding:3px 8px;border-radius:4px;font-weight:500;white-space:nowrap;flex-shrink:0}.work-dashboard .card-due.ok{background:#dcfce7;color:#166534}.work-dashboard .card-due.warning{background:#fef3c7;color:#92400e}.work-dashboard .card-due.overdue{background:#fecaca;color:#991b1b}.work-dashboard .card-tags{display:flex;gap:4px;margin-top:8px;flex-wrap:wrap}.work-dashboard .tag{font-size:10px;padding:2px 6px;border-radius:3px;background:#f3f4f6;color:#6b7280;text-transform:uppercase}.work-dashboard .tag.monthly{background:#dbeafe;color:#1e40af}.work-dashboard .team-view{display:none}.work-dashboard .team-view.active{display:block}.work-dashboard .team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.work-dashboard .team-member-card{background:#fff;border-radius:8px;padding:20px;border:1px solid #e5e7eb}.work-dashboard .team-member-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.work-dashboard .team-avatar-large{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;font-weight:600}.work-dashboard .team-member-info h3{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 4px}.work-dashboard .team-member-info p{font-size:13px;color:#6b7280;margin:0}.work-dashboard .workload-bar{margin-bottom:16px}.work-dashboard .workload-label{display:flex;justify-content:space-between;font-size:12px;color:#6b7280;margin-bottom:6px}.work-dashboard .workload-progress{height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden}.work-dashboard .workload-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s}.work-dashboard .workload-fill.high{background:linear-gradient(90deg,#f59e0b,#d97706)}.work-dashboard .team-work-list{display:flex;flex-direction:column;gap:8px}.work-dashboard .team-work-item{padding:10px;background:#f9fafb;border-radius:6px;border-left:3px solid #e5e7eb;font-size:13px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.work-dashboard .team-work-item.data-collection{border-left-color:#3b82f6}.work-dashboard .team-work-item.validation{border-left-color:#6366f1}.work-dashboard .team-work-item.gstr1{border-left-color:#f59e0b}.work-dashboard .team-work-item.gstr2b{border-left-color:#ec4899}.work-dashboard .team-work-item.gstr3b{border-left-color:#10b981}.work-dashboard .team-work-client{font-weight:500;color:#1f2937}.work-dashboard .team-work-phase{font-size:11px;color:#6b7280;text-transform:uppercase}.work-dashboard .calendar-view{display:none}.work-dashboard .calendar-view.active{display:block}.work-dashboard .calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;background:#fff;padding:10px 16px;border-radius:8px;border:1px solid #e5e7eb}.work-dashboard .calendar-header h2{font-size:15px;font-weight:600;color:#1f2937;margin:0}.work-dashboard .calendar-nav{display:flex;gap:12px}.work-dashboard .calendar-nav button{padding:5px 12px;border:1px solid #d1d5db;background:#fff;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;color:#374151}.work-dashboard .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.work-dashboard .calendar-day{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:6px 8px;min-height:80px;display:flex;flex-direction:column}.work-dashboard .calendar-day.other-month{background:#f9fafb;opacity:.5}.work-dashboard .calendar-day.today{border:2px solid #3b82f6;background:#eff6ff}.work-dashboard .calendar-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;padding-bottom:4px;border-bottom:1px solid #f3f4f6}.work-dashboard .calendar-day-number{font-size:12px;font-weight:600;color:#1f2937}.work-dashboard .calendar-day-count{font-size:11px;padding:2px 6px;background:#3b82f6;color:#fff;border-radius:10px;font-weight:600}.work-dashboard .calendar-events{display:flex;flex-direction:column;gap:4px;overflow-y:auto}.work-dashboard .calendar-event{font-size:10px;padding:2px 5px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:all .2s}.work-dashboard .calendar-event.gstr1{background:#fef3c7;color:#92400e;border-left:3px solid #f59e0b}.work-dashboard .calendar-event.gstr2b{background:#fce7f3;color:#9f1239;border-left:3px solid #ec4899}.work-dashboard .calendar-event.gstr3b{background:#dcfce7;color:#166534;border-left:3px solid #10b981}.work-dashboard .calendar-event.data-collection{background:#dbeafe;color:#1e40af;border-left:3px solid #3b82f6}.work-dashboard .calendar-weekday-header{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:6px;text-align:center;font-weight:600;font-size:11px;color:#6b7280;text-transform:uppercase}.tour-start-btn{color:#3b82f6;border-color:#bfdbfe;background:#eff6ff;transition:all .2s}.tour-start-btn:hover{background:#dbeafe;border-color:#93c5fd}.gstr1-data-entry .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.gstr1-data-entry .page-header-compact{margin-bottom:14px;padding:12px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:16px}.gstr1-data-entry .header-info-col{flex:0 0 auto;font-size:11px;border-left:1px solid #e5e7eb;padding-left:16px;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;align-content:center}.gstr1-data-entry .section-title{font-size:14px;font-weight:600;color:#0f172a}.gstr1-data-entry .muted{color:#64748b;font-size:12px}.gstr1-data-entry .tiny{font-size:11px;color:#94a3b8}.gstr1-data-entry .card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;margin-bottom:16px}.gstr1-data-entry .card-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.gstr1-data-entry .card-body{padding:20px}.gstr1-data-entry .badge{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600}.gstr1-data-entry .badge-soft{background:#eff6ff;color:#1e40af}.gstr1-data-entry .pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f1f5f9;font-size:12px;color:#334155}.gstr1-data-entry .stage-nav{display:flex;align-items:flex-start;justify-content:space-between;padding:6px 0;position:relative;overflow:hidden}.gstr1-data-entry .stage-nav:before{display:none}.gstr1-data-entry .stage-step{position:relative;border:none;background:none;padding:0;font-size:11px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:all .2s ease;z-index:1;flex:1;min-width:0}.gstr1-data-entry .stage-step:after{content:"";position:absolute;top:7px;left:50%;width:100%;height:2px;background:#e5e7eb;z-index:-1}.gstr1-data-entry .stage-step:last-child:after{display:none}.gstr1-data-entry .stage-step.completed:after{background:#86efac}.gstr1-data-entry .stage-step.active:after{background:#e5e7eb}.gstr1-data-entry .stage-step .dot{width:16px;height:16px;border-radius:999px;border:2.5px solid #cbd5e1;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#64748b;background:#fff;transition:all .2s ease;flex-shrink:0}.gstr1-data-entry .stage-step .stage-label{color:#64748b;font-weight:500;text-align:center;line-height:1.3;word-break:break-word;white-space:normal}.gstr1-data-entry .stage-step.selected .dot{box-shadow:0 0 0 3px #3b82f633}.gstr1-data-entry .stage-step.selected .stage-label{font-weight:700}.gstr1-data-entry .stage-step.completed .dot{background:#16a34a;border-color:#16a34a;color:#fff}.gstr1-data-entry .stage-step.completed .stage-label{color:#166534}.gstr1-data-entry .stage-step.active .dot{background:#3b82f6;border-color:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.gstr1-data-entry .stage-step.active .stage-label{color:#1d4ed8;font-weight:600}.gstr1-data-entry .stage-step.locked .dot{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8}.gstr1-data-entry .stage-step.locked .stage-label{color:#94a3b8}.gstr1-data-entry .stage-step.locked{cursor:not-allowed}.gstr1-data-entry .stage-progress{height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.gstr1-data-entry .stage-progress-bar{height:100%;background:#3b82f6;transition:width .3s}.gstr1-data-entry .workitem-grid{display:grid;grid-template-columns:1fr minmax(280px,340px);gap:16px;align-items:start}.gstr1-data-entry .workitem-main{min-width:0;overflow:hidden}.gstr1-data-entry .workitem-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:16px}.gstr1-data-entry .stage-action-bar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.gstr1-data-entry .stage-action-bar .action-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.gstr1-data-entry .stage-action-bar .stage-label{font-size:13px;font-weight:600;color:#0f172a}.gstr1-data-entry .stage-action-bar .stage-hint{font-size:11px;color:#94a3b8;margin-left:8px}.gstr1-data-entry .btn{padding:8px 12px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:13px;display:inline-flex;align-items:center;gap:6px}.gstr1-data-entry .btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.gstr1-data-entry .btn-secondary{background:#f8fafc}.gstr1-data-entry .btn-success{background:#16a34a;color:#fff;border-color:#16a34a}.gstr1-data-entry .btn-success:hover{background:#15803d}.gstr1-data-entry .btn-warn{background:#f59e0b;color:#fff;border-color:#f59e0b}.gstr1-data-entry .seg-toggle{display:inline-flex;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.gstr1-data-entry .seg-toggle button{padding:6px 14px;font-size:12px;font-weight:500;border:none;background:#fff;color:#64748b;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px}.gstr1-data-entry .seg-toggle button:not(:last-child){border-right:1px solid #e2e8f0}.gstr1-data-entry .seg-toggle button:hover{background:#f8fafc}.gstr1-data-entry .seg-toggle button.active{background:#3b82f6;color:#fff}.gstr1-data-entry .form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gstr1-data-entry .input{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;background:#fff;box-sizing:border-box}.gstr1-data-entry .input.readonly{background:#f8fafc;color:#475569}.gstr1-data-entry .table{width:100%;border-collapse:collapse;font-size:12px}.gstr1-data-entry .table th,.gstr1-data-entry .table td{padding:10px 8px;border-bottom:1px solid #e5e7eb;text-align:left;white-space:nowrap}.gstr1-data-entry .table th{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#64748b}.gstr1-data-entry .manual-table{table-layout:fixed;width:100%;max-width:100%}.gstr1-data-entry .manual-table th,.gstr1-data-entry .manual-table td{overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:break-word}.gstr1-data-entry .manual-pad{padding:24px}.gstr1-data-entry .action-btn{border:1px solid #e5e7eb;background:#fff;border-radius:6px;padding:4px 6px;cursor:pointer;font-size:14px;line-height:1;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.gstr1-data-entry .action-btn.danger{color:#dc2626;border-color:#fee2e2;background:#fff5f5}.gstr1-data-entry .row-editing td{background:#f8fafc}.gstr1-data-entry .row-editing td[contenteditable=true]{outline:1px solid #cbd5e1;outline-offset:-1px;background:#fff}.gstr1-data-entry .row-editing td[contenteditable=true]:focus{outline:2px solid #3b82f6;background:#eef6ff}.gstr1-data-entry .action-btn.action-edit{background:#f8fafc}.gstr1-data-entry .row-editing .action-btn.action-edit{background:#3b82f6;color:#fff;border-color:#3b82f6}.gstr1-data-entry .table-pager{display:flex;align-items:center;justify-content:space-between;padding:10px 0 0;font-size:12px;color:#64748b}.gstr1-data-entry .pager-info{font-size:11px;color:#94a3b8}.gstr1-data-entry .pager-btns{display:flex;gap:4px}.gstr1-data-entry .pager-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:12px;font-weight:500;color:#475569;cursor:pointer;display:flex;align-items:center;justify-content:center}.gstr1-data-entry .pager-btn:hover{background:#f1f5f9}.gstr1-data-entry .pager-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.gstr1-data-entry .pager-btn:disabled{opacity:.4;cursor:default}.gstr1-data-entry .upload-box{border:2px dashed #e5e7eb;border-radius:12px;padding:18px;text-align:center;background:#f8fafc}.gstr1-data-entry .inline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gstr1-data-entry .info-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gstr1-data-entry .mini-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb}.gstr1-data-entry .mini-tab{flex:1;padding:10px 12px;font-size:12px;font-weight:600;text-align:center;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease}.gstr1-data-entry .mini-tab:hover{color:#334155;background:#f8fafc}.gstr1-data-entry .mini-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.gstr1-data-entry .notes-list{max-height:180px;overflow-y:auto}.gstr1-data-entry .note-item{padding:10px 0;border-bottom:1px solid #f1f5f9}.gstr1-data-entry .note-item:last-child{border-bottom:none}.gstr1-data-entry .note-item .note-meta{font-size:11px;color:#94a3b8;margin-bottom:3px}.gstr1-data-entry .note-item .note-meta strong{color:#475569;font-weight:600}.gstr1-data-entry .note-item .note-text{font-size:12px;color:#334155;line-height:1.5}.gstr1-data-entry .note-input{min-height:80px;resize:vertical}.gstr1-data-entry .view-all-link{font-size:11px;color:#3b82f6;cursor:pointer;border:none;background:none;padding:0;font-weight:500}.gstr1-data-entry .view-all-link:hover{text-decoration:underline}.gstr1-data-entry .activity-list{display:flex;flex-direction:column;gap:10px}.gstr1-data-entry .activity-item{display:grid;grid-template-columns:16px 1fr;gap:10px;align-items:start}.gstr1-data-entry .activity-dot{width:8px;height:8px;border-radius:999px;background:#cbd5e1;margin-top:6px}.gstr1-data-entry .activity-dot.dot-green{background:#16a34a}.gstr1-data-entry .activity-dot.dot-blue{background:#3b82f6}.gstr1-data-entry .activity-dot.dot-amber{background:#f59e0b}.gstr1-data-entry .activity-item strong{font-size:12px;color:#0f172a}.gstr1-data-entry .file-list{display:flex;flex-direction:column;gap:2px}.gstr1-data-entry .file-item{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .1s}.gstr1-data-entry .file-item:hover{background:#f1f5f9}.gstr1-data-entry .file-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}.gstr1-data-entry .file-icon.xlsx{background:#dcfce7}.gstr1-data-entry .file-icon.json{background:#dbeafe}.gstr1-data-entry .file-icon.png{background:#fef3c7}.gstr1-data-entry .file-name{font-size:12px;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gstr1-data-entry .file-meta{font-size:10px;color:#94a3b8;margin-top:1px}.gstr1-data-entry .file-dl{width:24px;height:24px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .1s}.gstr1-data-entry .file-item:hover .file-dl{opacity:1}.gstr1-data-entry .file-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:9px;font-weight:700;padding:0 4px;margin-left:4px}.gstr1-data-entry .tab-content{display:none}.gstr1-data-entry .tab-content.active{display:block}.gstr1-data-entry .tab-stack{display:flex;flex-direction:column;gap:16px}.gstr1-data-entry .status-pass{color:#16a34a;font-weight:600}.gstr1-data-entry .status-warn{color:#d97706;font-weight:600}.gstr1-data-entry .mini-tab-content{display:none}.gstr1-data-entry .mini-tab-content.active{display:block}.drawer-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:400}.drawer-backdrop.open{display:block}.drawer-panel{position:fixed;right:-420px;top:0;width:400px;height:100vh;background:#fff;box-shadow:-8px 0 30px #0000001f;z-index:401;display:flex;flex-direction:column;transition:right .25s ease}.drawer-panel.open{right:0}.drawer-header{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.drawer-header .section-title{font-size:15px}.drawer-close{width:32px;height:32px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.drawer-close:hover{background:#f1f5f9}.drawer-tabs{display:flex;gap:0;border-bottom:1px solid #e5e7eb}.drawer-tab{flex:1;padding:12px 16px;font-size:13px;font-weight:600;text-align:center;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease}.drawer-tab:hover{color:#334155;background:#f8fafc}.drawer-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.drawer-tab-content{display:none;flex:1;overflow:hidden}.drawer-tab-content.active{display:flex;flex-direction:column}.drawer-body{flex:1;overflow-y:auto;padding:20px}.drawer-body .activity-list{gap:16px}.drawer-body .activity-item{gap:12px}.drawer-body .activity-dot{width:10px;height:10px;margin-top:4px}.compose-area{padding:16px 20px;border-top:1px solid #e5e7eb;background:#f8fafc;margin-top:auto}.compose-area textarea{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:10px;font-size:12px;font-family:inherit;resize:vertical;min-height:60px;box-sizing:border-box}.compose-area .compose-actions{display:flex;gap:8px;margin-top:8px;justify-content:flex-end}.upload-zone{border:2px dashed #e2e8f0;border-radius:10px;padding:16px;text-align:center;color:#94a3b8;font-size:12px;cursor:pointer;transition:all .15s}.upload-zone:hover{border-color:#93c5fd;color:#3b82f6;background:#eff6ff}.upload-zone .upload-icon{font-size:20px;margin-bottom:4px}.file-actions{display:flex;gap:4px}@media (max-width: 1280px){.gstr1-data-entry .workitem-grid{grid-template-columns:1fr}.gstr1-data-entry .workitem-side{position:static}}@media (max-width: 1024px){.gstr1-data-entry .page-header-compact{flex-direction:column;gap:12px}.gstr1-data-entry .header-info-col{border-left:none;padding-left:0;border-top:1px solid #e5e7eb;padding-top:10px}}.gst-data-import{position:relative}.gst-data-import .context-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffbf;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:13px;color:#64748b;font-weight:500;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-radius:12px}.gst-data-import .context-loading-spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:ctx-spin .7s linear infinite}@keyframes ctx-spin{to{transform:rotate(360deg)}}.gst-data-import .page-header-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.gst-data-import .auto-load-indicator{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px 24px;color:#64748b;font-size:14px;font-weight:500}.gst-data-import .auto-load-spinner{width:20px;height:20px;border:2.5px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:autoLoadSpin .7s linear infinite}@keyframes autoLoadSpin{to{transform:rotate(360deg)}}.gst-data-import .btn-clear-data{background-color:#ef4444;border-color:#ef4444;font-size:12px;padding:6px 14px;border-radius:6px;color:#fff;cursor:pointer;transition:background .15s}.gst-data-import .btn-clear-data:hover{background-color:#dc2626;border-color:#dc2626}.gst-data-import .context-bar{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:18px 22px 14px;margin-bottom:24px}.gst-data-import .context-bar-fields{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.gst-data-import .context-field{display:flex;flex-direction:column}.gst-data-import .context-field-client{flex:1 1 260px;min-width:200px}.gst-data-import .context-field-fy{flex:0 0 155px}.gst-data-import .context-field-period{flex:0 0 165px}.gst-data-import .context-label{display:block;font-size:11px;font-weight:600;color:#475569;margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}.gst-data-import .context-label .required{color:#ef4444;margin-left:1px}.gst-data-import .context-select{width:100%;padding:9px 12px;border-radius:8px;border:1px solid #cbd5e1;font-size:13px;font-family:inherit;color:#0f172a;background-color:#fff;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.gst-data-import .context-select:hover:not(:disabled){border-color:#93c5fd}.gst-data-import .context-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.gst-data-import .context-select.disabled,.gst-data-import .context-select:disabled{background-color:#f1f5f9;color:#64748b;cursor:not-allowed;border-color:#e2e8f0}.gst-data-import .context-summary-chip{display:inline-flex;align-items:center;gap:6px;margin-top:14px;margin-right:10px;padding:8px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;font-size:12px;color:#1e40af;line-height:1.4}.gst-data-import .chip-icon{font-size:14px}.gst-data-import .chip-name{font-weight:600}.gst-data-import .chip-separator{color:#93c5fd;font-weight:400}.gst-data-import .chip-gstin{font-family:SF Mono,Cascadia Code,Consolas,monospace;font-size:11.5px;letter-spacing:.3px;color:#2563eb}.gst-data-import .chip-period{font-weight:500;color:#1d4ed8}.gst-data-import .context-workitem-chip{cursor:pointer;transition:all .15s ease}.gst-data-import .context-workitem-chip:hover{background:#dbeafe;border-color:#93c5fd;box-shadow:0 1px 4px #2563eb26}.gst-data-import .wi-chip-status{padding:2px 8px;border-radius:10px;font-size:10.5px;font-weight:600;letter-spacing:.2px;text-transform:uppercase}.gst-data-import .wi-status-not-started{background:#f1f5f9;color:#64748b}.gst-data-import .wi-status-in-progress{background:#dbeafe;color:#1d4ed8}.gst-data-import .wi-status-under-review{background:#fef3c7;color:#b45309}.gst-data-import .wi-status-completed{background:#dcfce7;color:#15803d}.gst-data-import .wi-status-on-hold{background:#fecaca;color:#dc2626}.gst-data-import .more-menu-wrapper{position:relative}.gst-data-import .more-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.gst-data-import .more-menu-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:220px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:6px;z-index:100;animation:menuFadeIn .12s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.gst-data-import .more-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;border:none;background:none;border-radius:6px;font-size:13px;font-family:inherit;color:#334155;cursor:pointer;transition:background .1s;text-align:left}.gst-data-import .more-menu-item:hover{background:#f1f5f9}.gst-data-import .more-menu-item.more-menu-danger{color:#dc2626}.gst-data-import .more-menu-item.more-menu-danger:hover{background:#fef2f2}.gst-data-import .more-menu-divider{height:1px;background:#e2e8f0;margin:4px 8px}.gst-data-import .expand-table-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:16px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#64748b;cursor:pointer;transition:all .15s ease;padding:0;flex-shrink:0}.gst-data-import .expand-table-btn:hover{background:#e2e8f0;color:#334155;border-color:#cbd5e1}.gst-data-import .table-expanded-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.gst-data-import .card.table-expanded{position:fixed;top:16px;right:16px;bottom:16px;left:16px;z-index:9999;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.gst-data-import .card.table-expanded .card-header{flex-shrink:0}.gst-data-import .card.table-expanded .card-body{flex:1;overflow:auto!important}.gst-data-import .card.table-expanded .expand-table-btn{background:#fee2e2;color:#dc2626;border-color:#fca5a5;font-size:18px;font-weight:600}.gst-data-import .card.table-expanded .expand-table-btn:hover{background:#fecaca}.gst-data-import .expanded-context-strip{display:flex;align-items:center;gap:16px;padding:8px 20px;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0}.gst-data-import .expanded-context-item{display:flex;align-items:center;gap:6px}.gst-data-import .expanded-context-label{font-size:11px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.gst-data-import .expanded-context-value{font-size:13px;font-weight:600;color:#1e293b}.gst-data-import .expanded-context-gstin{font-size:11px;font-family:SF Mono,Consolas,monospace;color:#64748b;background:#e2e8f0;padding:1px 6px;border-radius:4px}.gst-data-import .expanded-context-divider{width:1px;height:20px;background:#cbd5e1}.gst-data-import .card.table-expanded .validation-summary-bar{flex-shrink:0}.gst-data-import .tax-combined{cursor:help;border-bottom:1px dashed #94a3b8;padding-bottom:1px}.gst-data-import .step-indicator{display:flex;justify-content:space-between;position:relative;margin-bottom:24px;padding:20px 32px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;counter-reset:step}.gst-data-import .step-indicator:before{content:"";position:absolute;top:33px;left:46px;right:46px;height:2px;background:#e2e8f0;z-index:0}.gst-data-import .step-item{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;flex:1}.gst-data-import .step-item:first-child{align-items:flex-start}.gst-data-import .step-item:last-child{align-items:flex-end}.gst-data-import .step-circle{width:28px;height:28px;border-radius:50%;border:2px solid #e2e8f0;background:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#94a3b8;transition:all .2s;line-height:1;flex-shrink:0}.gst-data-import .step-label{margin-top:6px;font-size:11.5px;font-weight:600;color:#94a3b8;white-space:nowrap;transition:all .2s}.gst-data-import .step-item.active .step-circle{border-color:#3b82f6;background:#3b82f6;color:#fff;box-shadow:0 0 0 3px #3b82f61f}.gst-data-import .step-item.active .step-label{color:#1e293b}.gst-data-import .step-item.completed .step-circle{border-color:#16a34a;background:#16a34a;color:#fff}.gst-data-import .step-item.completed .step-label{color:#16a34a}.gst-data-import .step-item.clickable{cursor:pointer}.gst-data-import .step-item.clickable:hover .step-circle{transform:scale(1.15);box-shadow:0 0 0 4px #16a34a26}.gst-data-import .step-item.clickable:hover .step-label{text-decoration:underline;text-underline-offset:2px}.gst-data-import .step-item.completed:not(.clickable){opacity:.6}.gst-data-import .card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.gst-data-import .card-header{padding:16px 20px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.gst-data-import .card-body{padding:20px}.gst-data-import .section-title{font-size:14px;font-weight:700;color:#0f172a}.gst-data-import .muted{font-size:12px;color:#94a3b8}.gst-data-import .upload-top-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.gst-data-import .upload-progress-circle{position:relative;width:44px;height:44px;flex-shrink:0}.gst-data-import .circular-progress{width:44px;height:44px;transform:rotate(-90deg)}.gst-data-import .circle-bg{fill:none;stroke:#e5e7eb;stroke-width:3}.gst-data-import .circle-fill{fill:none;stroke:#3b82f6;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .3s ease}.gst-data-import .progress-pct{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:700;color:#3b82f6}.gst-data-import .drop-zone{border:2px dashed #d1d5db;border-radius:16px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .2s;background:#fafbfc}.gst-data-import .drop-zone:hover{border-color:#93c5fd;background:#eff6ff}.gst-data-import .drop-zone.active{border-color:#3b82f6;background:#dbeafe;border-style:solid}.gst-data-import .drop-icon{font-size:40px;margin-bottom:12px}.gst-data-import .drop-title{font-size:16px;font-weight:600;color:#1e293b;margin-bottom:4px}.gst-data-import .drop-subtitle{font-size:13px;color:#64748b;margin-bottom:8px}.gst-data-import .drop-formats{font-size:11px;color:#94a3b8}.gst-data-import .file-chips-section{margin-bottom:12px}.gst-data-import .file-chips-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.gst-data-import .file-chips-label{font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px}.gst-data-import .file-chips-count{font-size:11px;color:#94a3b8}.gst-data-import .btn-clear-files{font-size:11px;color:#94a3b8;background:none;border:1px solid #e5e7eb;border-radius:4px;padding:1px 6px;cursor:pointer;transition:all .15s}.gst-data-import .btn-clear-files:hover{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.gst-data-import .file-chips{display:flex;flex-wrap:wrap;gap:6px}.gst-data-import .file-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;transition:all .15s;max-width:280px}.gst-data-import .file-chip:hover{background:#f1f5f9;border-color:#cbd5e1}.gst-data-import .file-chip-icon{font-size:13px;flex-shrink:0}.gst-data-import .file-chip-name{font-weight:500;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.gst-data-import .file-chip-size{color:#94a3b8;font-size:10px;flex-shrink:0}.gst-data-import .file-chip-remove{width:16px;height:16px;border-radius:50%;border:none;background:#e2e8f0;font-size:9px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;line-height:1;transition:all .15s}.gst-data-import .file-chip-remove:hover{color:#fff;background:#ef4444}.gst-data-import .drop-zone.compact{padding:20px 24px;border-radius:10px}.gst-data-import .drop-zone.compact .drop-icon{font-size:24px;margin-bottom:4px}.gst-data-import .drop-zone.compact .drop-title{font-size:13px}.gst-data-import .drop-zone.compact .drop-subtitle{font-size:11px;margin-bottom:2px}.gst-data-import .drop-zone.compact .drop-formats{font-size:10px}.gst-data-import .progress-section{display:flex;align-items:center;gap:12px;margin-top:16px}.gst-data-import .progress-bar-container{flex:1;height:6px;background:#e5e7eb;border-radius:999px;overflow:hidden}.gst-data-import .progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:999px;transition:width .3s ease}.gst-data-import .upload-actions{margin-top:24px;display:flex;flex-direction:column;align-items:center;gap:16px}.gst-data-import .feature-pills{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.gst-data-import .pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:11px;font-weight:500;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.gst-data-import .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap}.gst-data-import .btn:hover{background:#f1f5f9}.gst-data-import .btn:disabled{opacity:.5;cursor:not-allowed}.gst-data-import .btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.gst-data-import .btn-primary:hover{background:#2563eb}.gst-data-import .btn-secondary{background:#f8fafc;border-color:#e2e8f0}.gst-data-import .btn-success{background:#dcfce7;color:#16a34a;border-color:#bbf7d0}.gst-data-import .btn-success:hover{background:#bbf7d0}.gst-data-import .btn-danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}.gst-data-import .btn-danger:hover{background:#fecaca}.gst-data-import .btn-lg{padding:12px 32px;font-size:15px;border-radius:10px}.gst-data-import .btn-sm{padding:4px 10px;font-size:11px;border-radius:6px}.gst-data-import .processing-animation{display:flex;justify-content:center;margin-bottom:8px}.gst-data-import .spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.gst-data-import .processing-stats{display:flex;justify-content:center;gap:32px}.gst-data-import .stat-box{text-align:center}.gst-data-import .stat-value{font-size:28px;font-weight:700;color:#1e293b}.gst-data-import .stat-label{font-size:12px;color:#94a3b8;margin-top:2px}.gst-data-import .error-banner{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:16px;font-size:13px;color:#dc2626}.gst-data-import .error-close{background:none;border:none;font-size:14px;cursor:pointer;color:#dc2626;padding:4px}.gst-data-import .review-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.gst-data-import .summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;text-align:center}.gst-data-import .summary-value{font-size:22px;font-weight:700;color:#1e293b}.gst-data-import .summary-label{font-size:11px;color:#94a3b8;margin-top:4px;font-weight:500}.gst-data-import .pending-color{color:#d97706}.gst-data-import .validated-color{color:#16a34a}.gst-data-import .rejected-color{color:#dc2626}.gst-data-import .validation-summary-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-radius:10px;margin-bottom:16px;font-size:13px}.gst-data-import .validation-summary-bar.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.gst-data-import .validation-summary-bar.has-errors{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.gst-data-import .validation-summary-left{display:flex;align-items:center;gap:8px}.gst-data-import .validation-summary-icon{font-size:16px}.gst-data-import .validation-summary-text{font-size:13px}.gst-data-import .validation-summary-badges{display:flex;align-items:center;gap:8px}.gst-data-import .validation-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;border:none;cursor:pointer;transition:all .15s}.gst-data-import .validation-badge.badge-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.gst-data-import .validation-badge.badge-error:hover{background:#fee2e2;box-shadow:0 0 0 3px #dc26261a}.gst-data-import .validation-badge.badge-warning{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.gst-data-import .validation-badge.badge-warning:hover{background:#fef3c7;box-shadow:0 0 0 3px #d977061a}.gst-data-import .validation-dismiss{width:24px;height:24px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;font-size:12px;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;transition:all .15s}.gst-data-import .validation-dismiss:hover{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.gst-data-import .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.gst-data-import .validation-modal{background:#fff;border-radius:14px;width:760px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003;animation:modalSlideIn .2s ease-out;margin:24px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.gst-data-import .validation-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.gst-data-import .validation-modal-header h3{margin:0;font-size:16px;font-weight:700;color:#1e293b}.gst-data-import .validation-modal-context{padding:14px 24px;background:#f8fafc;border-bottom:1px solid #e5e7eb}.gst-data-import .vm-context-row{display:flex;flex-wrap:wrap;gap:20px}.gst-data-import .vm-context-item{display:flex;align-items:center;gap:6px}.gst-data-import .vm-context-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#94a3b8}.gst-data-import .vm-context-value{font-size:13px;font-weight:600;color:#334155}.gst-data-import .vm-context-gstin{font-size:11px;font-family:SF Mono,Consolas,monospace;color:#64748b;background:#e2e8f0;padding:1px 6px;border-radius:4px}.gst-data-import .vm-context-files{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed #e2e8f0}.gst-data-import .vm-files-list{display:flex;flex-wrap:wrap;gap:6px}.gst-data-import .vm-file-chip{font-size:11.5px;font-weight:500;color:#475569;background:#e2e8f0;padding:2px 10px;border-radius:12px;white-space:nowrap}.gst-data-import .modal-close{width:28px;height:28px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;font-size:14px;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;transition:all .15s}.gst-data-import .modal-close:hover{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.gst-data-import .validation-modal-tabs{display:flex;gap:0;padding:0 24px;border-bottom:1px solid #e5e7eb}.gst-data-import .validation-modal-tab{padding:12px 16px;font-size:13px;font-weight:600;border:none;background:none;cursor:pointer;color:#64748b;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.gst-data-import .validation-modal-tab:hover{color:#1e293b}.gst-data-import .validation-modal-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.gst-data-import .validation-modal-body{overflow-y:auto;padding:16px 20px 20px;max-height:60vh}.gst-data-import .validation-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.gst-data-import .validation-table th{position:sticky;top:0;background:#f1f5f9;padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;text-align:left;border-bottom:1px solid #e5e7eb}.gst-data-import .validation-table td{padding:10px 16px;font-size:13px;border-bottom:1px solid #f1f5f9;color:#334155}.gst-data-import .validation-table tr:last-child td{border-bottom:none}.gst-data-import .validation-table tr:hover td{background:#f8fafc}.gst-data-import .clear-modal{background:#fff;border-radius:16px;width:420px;max-width:90vw;padding:32px;box-shadow:0 20px 60px #0003;animation:modalSlideIn .2s ease-out;text-align:center}.gst-data-import .clear-modal-icon{font-size:40px;margin-bottom:12px;line-height:1}.gst-data-import .clear-modal-icon.warning{filter:none}.gst-data-import .clear-modal-title{margin:0 0 8px;font-size:18px;font-weight:700;color:#1e293b}.gst-data-import .clear-modal-desc{margin:0 0 16px;font-size:13.5px;color:#64748b;line-height:1.5}.gst-data-import .clear-modal-context{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 18px;margin-bottom:16px;text-align:left}.gst-data-import .clear-context-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0}.gst-data-import .clear-context-row:not(:last-child){border-bottom:1px solid #f1f5f9}.gst-data-import .clear-context-label{font-size:12px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px}.gst-data-import .clear-context-value{font-size:13.5px;font-weight:600;color:#334155}.gst-data-import .clear-context-value.muted{font-weight:500;color:#64748b;font-size:12.5px}.gst-data-import .clear-modal-warning{margin:0 0 20px;font-size:12px;font-weight:600;color:#dc2626;letter-spacing:.2px}.gst-data-import .clear-modal-actions{display:flex;gap:10px;justify-content:center}.gst-data-import .clear-modal-actions .btn{min-width:120px;padding:10px 20px;font-size:13.5px;font-weight:600;border-radius:8px}.gst-data-import .clear-spinner{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#dc2626;border-radius:50%;animation:autoLoadSpin .7s linear infinite;margin:0 auto}.gst-data-import .clear-modal-stats{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}.gst-data-import .clear-stat{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:10px 16px;min-width:80px;text-align:center}.gst-data-import .clear-stat-num{display:block;font-size:20px;font-weight:700;color:#16a34a;line-height:1.2}.gst-data-import .clear-stat-label{display:block;font-size:11px;font-weight:600;color:#64748b;margin-top:2px;text-transform:uppercase;letter-spacing:.3px}.gst-data-import .filter-pills{display:flex;gap:4px}.gst-data-import .filter-pill{padding:4px 12px;border-radius:999px;font-size:11px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s;font-family:inherit}.gst-data-import .filter-pill:hover{background:#f1f5f9}.gst-data-import .filter-pill.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.gst-data-import .filter-pill-type.active{background:#6366f1;border-color:#6366f1}.gst-data-import .filter-pill-warning{border-color:#f59e0b;color:#b45309}.gst-data-import .filter-pill-warning:hover{background:#fffbeb}.gst-data-import .filter-pill-warning.active{background:#f59e0b;color:#fff;border-color:#f59e0b}.gst-data-import .filter-pill-mismatch{border-color:#f472b6;color:#be185d}.gst-data-import .filter-pill-mismatch:hover{background:#fdf2f8}.gst-data-import .filter-pill-mismatch.active{background:#ec4899;color:#fff;border-color:#ec4899}.gst-data-import .gstin-mismatch-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fdf2f8;border:1px solid #f9a8d4;border-radius:10px;margin-bottom:12px}.gst-data-import .gstin-mismatch-icon{font-size:24px;flex-shrink:0}.gst-data-import .gstin-mismatch-text{flex:1;font-size:12.5px;color:#9d174d;line-height:1.4}.gst-data-import .table tbody tr.row-mismatch{background:#fdf2f8!important}.gst-data-import .table tbody tr.row-mismatch:hover{background:#fce7f3!important}.gst-data-import .btn-icon-danger{background:none;border:1px solid #e5e7eb;color:#9ca3af;width:28px;height:28px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s}.gst-data-import .btn-icon-danger:hover{background:#fef2f2;border-color:#fca5a5;color:#ef4444}.gstin-confirm-context{background:#fffbeb;border:1px solid #fbbf24;border-radius:10px;padding:14px 16px;margin:16px 0 12px}.gstin-confirm-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.gstin-confirm-row+.gstin-confirm-row{border-top:1px solid #fde68a}.gstin-confirm-label{font-size:12px;color:#92400e;font-weight:600;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0;min-width:60px}.gstin-confirm-value{font-size:13px;color:#78350f;font-weight:600;text-align:right;word-break:break-all}.gstin-confirm-value.gstin-mono{font-family:SF Mono,Fira Code,monospace;font-size:13.5px;letter-spacing:.5px;color:#b45309}.gstin-confirm-question{font-size:13px;color:#475569;text-align:center;margin:14px 0 4px;line-height:1.5}.gst-data-import .sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.gst-data-import .sortable-th:hover{color:#3b82f6}.gst-data-import .table{width:100%;border-collapse:collapse;font-size:12px}.gst-data-import .table th{padding:10px 12px;text-align:left;font-weight:600;color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc;border-bottom:1px solid #e5e7eb;white-space:nowrap}.gst-data-import .table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle}.gst-data-import .table tbody tr:hover{background:#f8fafc}.gst-data-import .table tbody tr.row-rejected{background:#fef2f2}.gst-data-import .table tbody tr.row-rejected:hover{background:#fee2e2}.gst-data-import .confidence-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700}.gst-data-import .confidence-badge.high{background:#dcfce7;color:#16a34a}.gst-data-import .confidence-badge.medium{background:#fef3c7;color:#d97706}.gst-data-import .confidence-badge.low{background:#fef2f2;color:#dc2626}.gst-data-import .review-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700}.gst-data-import .review-badge.pending{background:#fef3c7;color:#d97706}.gst-data-import .review-badge.validated{background:#dcfce7;color:#16a34a}.gst-data-import .review-badge.rejected{background:#fef2f2;color:#dc2626}.gst-data-import .review-badge.warning{background:transparent;padding:0;font-size:12px;cursor:help}.gst-data-import .review-badge-wrapper{display:inline-flex;align-items:center;gap:3px}.gst-data-import .type-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:700;background:#eff6ff;color:#3b82f6}.gst-data-import .type-badge-warn{background:#fef3c7;color:#d97706}.gst-data-import .rate-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:700;background:#f1f5f9;color:#475569}.gst-data-import .rate-badge.rate-multi{background:#fef3c7;color:#92400e;font-style:italic}.gst-data-import .file-status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:600}.gst-data-import .file-status-badge.completed{background:#dcfce7;color:#16a34a}.gst-data-import .file-status-badge.processing{background:#dbeafe;color:#3b82f6}.gst-data-import .file-status-badge.failed{background:#fef2f2;color:#dc2626}.gst-data-import .file-status-badge.pending{background:#f1f5f9;color:#94a3b8}.gst-data-import .source-name{font-size:11px;color:#64748b;cursor:help}.gst-data-import .edit-input{width:100%;padding:7px 8px;border:1px solid #93c5fd;border-radius:6px;font-size:12px;font-family:inherit;background:#eff6ff;box-sizing:border-box;color:#1e293b}.gst-data-import .table tbody tr:has(.edit-input) td{padding:8px 10px;background:#f0f7ff}.gst-data-import .edit-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.gst-data-import select.edit-input{color:#1e293b!important;background:#eff6ff!important;-webkit-appearance:menulist;-moz-appearance:menulist;appearance:menulist;min-width:120px;width:auto}.gst-data-import select.edit-input option{color:#1e293b;background:#fff}.gst-data-import .action-btns{display:flex;gap:4px}.gst-data-import .pagination-row{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 16px;border-top:1px solid #f1f5f9}.gst-data-import .pager-btn{padding:6px 14px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:12px;font-weight:600;color:#3b82f6;cursor:pointer;font-family:inherit}.gst-data-import .pager-btn:hover:not(:disabled){background:#eff6ff}.gst-data-import .pager-btn:disabled{opacity:.4;cursor:default}@media (max-width: 1024px){.gst-data-import .review-summary{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.gst-data-import .page-header-row{flex-direction:column}.gst-data-import .review-summary{grid-template-columns:repeat(2,1fr)}.gst-data-import .step-line{width:30px;margin:0 6px}.gst-data-import .step-label{font-size:11px}.gst-data-import .card-header{flex-direction:column;align-items:flex-start}}.gst-data-import .page-progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:10px;text-align:center}.gst-data-import .page-progress-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 6px 8px;transition:all .3s ease}.gst-data-import .page-progress-item.queued{background:#f8fafc;border-color:#e2e8f0}.gst-data-import .page-progress-item.analyzing{background:#eff6ff;border-color:#93c5fd;animation:pulse-border 1.5s ease-in-out infinite}.gst-data-import .page-progress-item.done{background:#f0fdf4;border-color:#86efac}.gst-data-import .page-progress-item.noinvoice{background:#fefce8;border-color:#fde68a}.gst-data-import .page-progress-item.failed{background:#fef2f2;border-color:#fca5a5}.gst-data-import .page-num{font-size:11px;font-weight:600;color:#64748b;margin-bottom:4px}.gst-data-import .page-status-icon{font-size:18px;line-height:1}.gst-data-import .page-detail{font-size:10px;color:#94a3b8;margin-top:3px;white-space:nowrap}.gst-data-import .page-invoice-num{font-size:10px;font-weight:600;color:#16a34a;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@keyframes pulse-border{0%,to{border-color:#93c5fd;box-shadow:0 0 #3b82f600}50%{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}}.gst-data-import .mini-spinner{display:inline-block;width:16px;height:16px;border:2px solid #93c5fd;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.gst-data-import .review-tabs{display:flex;border-bottom:2px solid #e2e8f0;margin-bottom:16px;gap:0}.gst-data-import .review-tab{padding:10px 20px;font-size:13px;font-weight:600;font-family:inherit;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.gst-data-import .review-tab:hover{color:#3b82f6;background:#f8fafc}.gst-data-import .review-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.gst-data-import .review-tab .tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;font-size:11px;font-weight:700;background:#f1f5f9;color:#64748b}.gst-data-import .review-tab.active .tab-count{background:#dbeafe;color:#3b82f6}.gst-data-import .source-files-toggle{margin-left:auto;padding:6px 14px;font-size:12px;font-weight:600;font-family:inherit;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;margin-bottom:2px}.gst-data-import .source-files-toggle:hover{color:#3b82f6;background:#eff6ff;border-color:#bfdbfe}.gst-data-import .source-files-toggle.active{color:#3b82f6;background:#eff6ff;border-color:#93c5fd}.gst-data-import .source-files-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;overflow:hidden;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:400px}}.gst-data-import .source-files-table{font-size:12px;margin:0}.gst-data-import .source-files-table th{background:#f1f5f9;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#64748b;padding:8px 12px}.gst-data-import .source-files-table td{padding:6px 12px;color:#475569}.gst-data-import .file-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:#94a3b8;cursor:pointer;transition:all .15s}.gst-data-import .file-remove-btn:hover{background:#fef2f2;color:#dc2626}.gst-data-import .file-remove-btn:disabled{cursor:not-allowed;opacity:.5}.gst-data-import .spinner-tiny{display:inline-block;width:14px;height:14px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .6s linear infinite}.gst-data-import .detection-summary{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.gst-data-import .detection-stat{display:flex;flex-direction:column;align-items:center;padding:12px 20px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;min-width:100px}.gst-data-import .detection-count{font-size:24px;font-weight:700;line-height:1.2}.gst-data-import .detection-count.sales{color:#16a34a}.gst-data-import .detection-count.purchase{color:#2563eb}.gst-data-import .detection-count.unknown{color:#f59e0b}.gst-data-import .detection-label{font-size:11px;font-weight:600;color:#64748b;margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.gst-data-import .type-badge.sales-badge{background:#dcfce7;color:#16a34a}.gst-data-import .type-badge.purchase-badge{background:#dbeafe;color:#2563eb}.gst-data-import .type-badge.unknown-badge{background:#fef3c7;color:#d97706}.gst-data-import .itc-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:600;white-space:nowrap}.gst-data-import .itc-badge.eligible{background:#dcfce7;color:#16a34a}.gst-data-import .itc-badge.ineligible{background:#fef2f2;color:#dc2626}.gst-data-import .row-warning{background:#fffbeb!important}.gst-data-import .row-warning:hover{background:#fef3c7!important}.gst-data-import .detection-table td select{width:100%;padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-family:inherit;background:#fff;cursor:pointer}.gst-data-import .detection-table td select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.gst-data-import .detection-method{font-size:10px;color:#94a3b8;font-style:italic}.add-invoice-modal{background:#fff;border-radius:12px;width:90%;max-width:720px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.add-invoice-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e2e8f0}.add-invoice-modal .modal-header h3{margin:0;font-size:16px;font-weight:700;color:#1e293b}.add-invoice-modal .modal-close{background:none;border:none;font-size:18px;cursor:pointer;color:#94a3b8;padding:4px 8px;border-radius:4px}.add-invoice-modal .modal-close:hover{background:#f1f5f9;color:#475569}.add-invoice-modal .modal-body{padding:20px 24px;overflow-y:auto;flex:1}.add-invoice-modal .modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #e2e8f0}.add-invoice-modal .form-row{display:flex;gap:12px;margin-bottom:12px}.add-invoice-modal .form-group{flex:1;display:flex;flex-direction:column;gap:4px}.add-invoice-modal .form-group label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.add-invoice-modal .form-group input,.add-invoice-modal .form-group select{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-family:inherit;background:#fff}.add-invoice-modal .form-group input:focus,.add-invoice-modal .form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.add-invoice-modal .form-section-label{font-size:12px;font-weight:700;color:#475569;margin:8px 0;padding-top:8px;border-top:1px solid #f1f5f9}.add-invoice-modal .cn-dn-fields{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px;margin-bottom:12px}.add-invoice-modal .readonly-field{background:#f1f5f9!important;color:#475569;cursor:default;font-weight:600}.add-invoice-modal .gstin-state-hint{font-size:11px;color:#059669;font-weight:500;margin-top:2px}.add-invoice-modal .tax-type-indicator{font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;margin-bottom:8px}.add-invoice-modal .tax-type-indicator.intra{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.add-invoice-modal .tax-type-indicator.inter{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.add-invoice-modal .label-with-toggle{display:inline-flex!important;align-items:center;gap:4px;white-space:nowrap}.add-invoice-modal .pos-override-toggle{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:500;color:#94a3b8;margin-left:4px;cursor:pointer;text-transform:none;letter-spacing:0}.add-invoice-modal .pos-override-toggle input[type=checkbox]{width:12px;height:12px;cursor:pointer}.sf-toast{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:10px;font-size:14px;font-weight:500;color:#fff;box-shadow:0 8px 24px #0000002e;z-index:10000;animation:sf-toast-in .3s ease-out;cursor:pointer;max-width:480px}@keyframes sf-toast-in{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sf-toast-success{background:#059669}.sf-toast-error{background:#dc2626}.sf-toast-warning{background:#d97706}.sf-toast-info{background:#2563eb}.sf-toast-icon{font-size:16px;flex-shrink:0;width:20px;text-align:center}.sf-toast-msg{flex:1;line-height:1.4}.sf-toast-close{background:none;border:none;color:#ffffffb3;font-size:14px;cursor:pointer;padding:0 2px;flex-shrink:0}.sf-toast-close:hover{color:#fff}.btn-danger{background:#dc2626;color:#fff;border:none;padding:8px 18px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.btn-danger:hover{background:#b91c1c}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:10001;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.confirm-modal{background:#fff;border-radius:16px;width:440px;max-width:92vw;padding:28px 32px 24px;box-shadow:0 20px 60px #00000038;animation:modalSlideIn .2s ease-out}.confirm-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.confirm-modal-icon{font-size:28px;line-height:1;flex-shrink:0}.confirm-modal-title{font-size:18px;font-weight:600;color:#1e293b;margin:0}.confirm-modal-message{font-size:14px;color:#475569;line-height:1.6;margin:0 0 22px;padding-left:40px}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-modal-actions .btn{min-width:100px;justify-content:center}.page-header h1{margin:0 0 8px;font-size:28px;font-weight:700;color:#1f2937}.page-subtitle{margin:0;color:#6b7280;font-size:15px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:transform .2s,box-shadow .2s;position:relative}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.stat-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.stat-value{font-size:32px;font-weight:700;color:#1f2937;line-height:1}.stat-icon{position:absolute;top:24px;right:24px;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.purple{background:#faf5ff;color:#8b5cf6}.stat-icon.danger{background:#fef2f2;color:#ef4444}.filters-bar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;display:flex;gap:16px;align-items:center}.search-input{flex:1;max-width:500px;height:44px;padding:0 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;transition:all .2s}.search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-select{height:44px;padding:0 32px 0 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.5 4.5L6 8L9.5 4.5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.filter-select:hover{border-color:#d1d5db}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.firms-table{width:100%;border-collapse:collapse}.firms-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.firms-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.firms-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s}.firms-table tbody tr:hover{background:#f9fafb}.firms-table td{padding:16px;font-size:14px;color:#374151}.firms-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s;position:relative}.firms-table th.sortable:hover{background-color:#f3f4f6;color:#374151}.sort-icon{margin-left:8px;font-size:14px;color:#667eea;font-weight:700}.firm-name-cell{display:flex;flex-direction:column;gap:4px}.firm-name-cell strong{color:#111827;font-weight:600}.firm-name-cell small{color:#6b7280;font-size:12px}.contact-cell{display:flex;flex-direction:column;gap:2px}.contact-cell small{color:#6b7280;font-size:12px}.count-cell{display:flex;align-items:baseline;gap:4px}.count-cell span{font-weight:600;color:#111827}.count-cell small{color:#9ca3af;font-size:12px}.badge-trial{background-color:#fef3c7;color:#92400e}.badge-basic{background-color:#dbeafe;color:#1e40af}.badge-professional{background-color:#ddd6fe;color:#5b21b6}.badge-enterprise{background-color:#d1fae5;color:#065f46}.status-active{background-color:#d1fae5;color:#065f46}.status-inactive{background-color:#fee2e2;color:#991b1b}.expiry-warning{color:#dc2626;font-weight:600}.text-muted{color:#9ca3af}.actions-cell{display:flex;gap:8px}.btn-icon-table{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s;padding:0}.btn-icon-table:hover{border-color:#667eea;background:#f9fafb}.btn-icon-table svg{color:#6b7280}.btn-icon-table:hover svg{color:#667eea}.btn-icon-table.btn-icon-danger:hover{border-color:#ef4444;background:#fef2f2}.btn-icon-table.btn-icon-danger:hover svg{color:#ef4444}.empty-state{padding:60px 20px;text-align:center}.empty-icon{font-size:48px;display:block;margin-bottom:16px;opacity:.5}.empty-state p{color:#6b7280;font-size:16px;margin:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:24px;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:32px;color:#9ca3af;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.modal-close:hover{color:#374151}.modal-body{padding:24px}.modal-body h3{margin:24px 0 16px;font-size:16px;font-weight:600;color:#111827}.modal-body h3:first-child{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input,.form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.plan-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.plan-option{padding:16px;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;text-align:center;transition:all .2s}.plan-option:hover{border-color:#3b82f6;background-color:#eff6ff}.plan-option.selected{border-color:#3b82f6;background-color:#dbeafe}.plan-option strong{display:block;font-size:14px;font-weight:600;color:#111827;margin-bottom:4px}.plan-option small{display:block;font-size:12px;color:#6b7280}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.btn-secondary{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.plan-selector{grid-template-columns:repeat(2,1fr)}.form-grid,.stats-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column}}.create-firm-container{padding:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-header h1{margin:0;font-size:28px;font-weight:600;color:#111827}.page-subtitle{margin:4px 0 0;color:#6b7280;font-size:14px}.error-banner{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:32px}.form-section{margin-bottom:32px}.form-section:last-of-type{margin-bottom:24px}.form-section h2{margin:0 0 20px;font-size:20px;font-weight:600;color:#111827;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.plan-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.plan-option{padding:20px;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;text-align:center;transition:all .2s;background:#fff}.plan-option:hover{border-color:#3b82f6;background-color:#eff6ff;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.plan-option.selected{border-color:#3b82f6;background-color:#dbeafe;box-shadow:0 0 0 3px #3b82f61a}.plan-option strong{display:block;font-size:16px;font-weight:600;color:#111827;margin-bottom:8px}.plan-option small{display:block;font-size:13px;color:#6b7280}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-primary{padding:12px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s}.btn-primary:hover:not(:disabled){background-color:#2563eb;box-shadow:0 4px 6px #0000001a}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:12px 24px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.plan-selector{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-card{padding:20px}}.step-indicator-wrapper{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.onboarding-title{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a202c;text-align:center}.step-indicator{display:flex;justify-content:space-between;margin-bottom:0;padding:0;position:relative}.step-indicator:before{content:"";position:absolute;top:16px;left:calc(100% / 12);right:calc(100% / 12);height:2px;background:#e2e8f0;z-index:0}.step-item{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;z-index:1}.step-item.clickable{cursor:pointer;transition:transform .2s}.step-item.clickable:hover{transform:translateY(-2px)}.step-item.clickable:hover .step-number{border-color:#667eea;box-shadow:0 2px 8px #667eea4d}.step-item.clickable:hover .step-label{color:#667eea}.step-number{width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;color:#a0aec0;transition:all .3s}.step-item.active .step-number{background:#667eea;border-color:#667eea;color:#fff}.step-item.completed .step-number{background:#48bb78;border-color:#48bb78;color:#fff}.step-label{font-size:13px;color:#718096;font-weight:500;text-align:center}.step-item.active .step-label{color:#667eea;font-weight:600}.step-item.completed .step-label{color:#48bb78}.onboarding-content{background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.form-content-area{display:flex;flex-direction:column;min-height:500px}.onboarding-step{flex:1;display:flex;flex-direction:column}.form-2-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px;flex:1}.form-column{display:flex;flex-direction:column;padding:20px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e2e8f0}.form-column h3{margin:0 0 20px;font-size:16px;font-weight:600;color:#2d3748;padding-bottom:12px;border-bottom:2px solid #667eea}.step-header-with-bot{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:16px}.step-header-with-bot>div{flex:1}.btn-autofill{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-autofill:hover{transform:translateY(-1px);box-shadow:0 4px 8px #667eea66}.btn-autofill svg{flex-shrink:0}.btn-icon{background:none;border:2px solid #667eea;cursor:pointer;padding:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:50%}.btn-icon-robot svg{color:#667eea}.btn-icon:hover{transform:scale(1.1);border-color:#5568d3;background-color:#667eea0d}.btn-icon-robot:hover svg{color:#5568d3}.onboarding-step h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a202c}.step-description{margin:0 0 24px;color:#718096;font-size:14px}.form-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#2d3748}.form-row{display:flex;gap:16px;margin-bottom:12px}.form-group{flex:1;display:flex;flex-direction:column;gap:6px}.form-group.full-width{width:100%}.form-group label{font-size:13px;font-weight:500;color:#4a5568}.form-group input,.form-group select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.plan-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.plan-card{padding:20px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.plan-card:hover{border-color:#cbd5e0;transform:translateY(-2px)}.plan-card.selected{border-color:#667eea;background:#f7faff}.plan-card h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#2d3748}.plan-limits{font-size:13px;color:#718096;display:flex;flex-direction:column;gap:4px}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:8px}.service-card{padding:20px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.service-card:hover{border-color:#cbd5e0;transform:translateY(-2px)}.service-card.selected{border-color:#48bb78;background:#f0fff4}.service-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.service-header input[type=checkbox]{width:18px;height:18px;cursor:pointer}.service-header h4{margin:0;font-size:16px;font-weight:600;color:#2d3748}.service-description{margin:0 0 12px 30px;font-size:13px;color:#718096}.service-price{margin-left:30px;font-size:14px;font-weight:600;color:#667eea}.selection-summary{text-align:center;padding:16px;background:#f7fafc;border-radius:8px;font-weight:500;color:#4a5568}.upload-section{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:32px;padding:32px;background:#f7fafc;border-radius:8px;border:2px dashed #cbd5e0}.upload-box{width:100%;max-width:400px}.upload-label{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;background:#fff;border:2px dashed #cbd5e0;border-radius:8px;cursor:pointer;transition:all .2s}.upload-label:hover{border-color:#667eea;background:#f7faff}.upload-label svg{color:#667eea}.upload-label span{font-weight:500;color:#4a5568}.file-name{text-align:center;margin-top:8px;font-size:13px;color:#48bb78;font-weight:500}.download-template{font-size:13px;color:#667eea;text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-color .2s}.download-template:hover{border-bottom-color:#667eea}.staff-list{margin-top:24px}.staff-list h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#2d3748}.staff-item{display:flex;gap:8px;margin-bottom:12px;padding:12px;background:#f7fafc;border-radius:8px}.staff-fields{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.staff-fields input,.staff-fields select{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px}.btn-remove{width:32px;height:32px;border:none;background:#fc8181;color:#fff;border-radius:6px;cursor:pointer;font-size:20px;line-height:1;transition:background .2s}.btn-remove:hover{background:#f56565}.clients-preview{margin-top:24px}.clients-preview h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#2d3748}.preview-table-container{max-height:400px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px}.preview-table{width:100%;border-collapse:collapse}.preview-table thead{position:sticky;top:0;background:#f7fafc;z-index:1}.preview-table th{padding:12px;text-align:left;font-size:12px;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0}.preview-table td{padding:12px;font-size:13px;color:#2d3748;border-bottom:1px solid #e2e8f0}.preview-note{font-size:13px;color:#718096;text-align:center}.review-step .review-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e2e8f0}.review-step .review-section:last-of-type{border-bottom:none}.review-section h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#2d3748}.review-columns-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.review-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.review-list{display:flex;flex-direction:column;gap:8px}.review-list-item{padding:8px 12px;background:#f7fafc;border-radius:6px;color:#2d3748;font-size:13px}.review-list-item span{display:block}.review-note{color:#a0aec0;font-style:italic;padding:8px 12px;font-size:13px}.review-columns-4 .review-section{border:1px solid #e2e8f0;padding:16px;border-radius:8px;background:#fff}.review-columns-4 .review-item{display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid #f7fafc;gap:4px}.review-columns-4 .review-item:last-child{border-bottom:none}.review-columns-4 .review-label{font-size:11px;font-weight:500;color:#718096;text-transform:uppercase}.review-columns-4 .review-value{color:#2d3748;font-weight:500;font-size:13px}.review-item{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f7fafc}.review-label{font-weight:500;color:#718096}.review-value{color:#2d3748;font-weight:500}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:16px}.summary-card{text-align:center;padding:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff}.summary-number{font-size:32px;font-weight:700;margin-bottom:8px}.summary-label{font-size:14px;opacity:.9}.onboarding-actions{display:flex;justify-content:space-between;margin-top:32px;padding-top:24px;border-top:1px solid #e2e8f0}.btn-left{min-width:120px}.btn-right{min-width:120px;display:flex;justify-content:flex-end}.btn-primary,.btn-secondary{padding:12px 32px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;color:#4a5568;border:1px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#f7fafc;border-color:#cbd5e0}.error-message{margin-top:16px;padding:12px 16px;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#c53030;font-size:14px}@media (max-width: 768px){.step-indicator{flex-wrap:wrap;gap:16px;padding:0}.step-indicator:before{display:none}.step-item{flex:0 0 auto}.form-row{flex-direction:column}.plan-selector{grid-template-columns:1fr 1fr}.services-grid,.summary-cards{grid-template-columns:1fr}.onboarding-actions{flex-direction:column;gap:12px}.btn-primary,.btn-secondary{width:100%}}.import-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px}.import-column{background:#f9f9f9;border-radius:8px;padding:24px}.import-column h3{margin:0 0 20px;font-size:18px;color:#1a1a1a;font-weight:600}.import-column h4{margin:20px 0 12px;font-size:15px;color:#333;font-weight:600}.import-preview{margin-top:20px}.preview-list{display:flex;flex-direction:column;gap:12px}.preview-item{background:#fff;padding:12px 16px;border-radius:6px;border:1px solid #e5e5e5;display:flex;flex-direction:column;gap:4px}.preview-item strong{font-size:14px;color:#1a1a1a;font-weight:600}.preview-item span{font-size:13px;color:#666}.preview-item .badge{display:inline-block;padding:4px 8px;background:#e3f2fd;color:#1976d2;border-radius:4px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;width:fit-content;margin-top:4px}@media (max-width: 1024px){.import-columns{grid-template-columns:1fr;gap:24px}}.import-modal-content{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden}.modal-header{padding:30px 40px 20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:flex-start;flex-shrink:0}.modal-header h2{margin:0 0 4px;font-size:24px;color:#1f2937;font-weight:700}.modal-subtitle{margin:0;font-size:14px;color:#6b7280}.close-button{background:none;border:none;font-size:32px;color:#9ca3af;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s;line-height:1}.wizard-steps{display:flex;align-items:center;justify-content:center;padding:30px 40px 20px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.wizard-step{display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.step-number{width:40px;height:40px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px;transition:all .3s}.wizard-step.active .step-number{background:#667eea;color:#fff;box-shadow:0 4px 12px #667eea4d}.wizard-step.completed .step-number{background:#10b981;color:#fff}.step-label{font-size:13px;color:#6b7280;font-weight:500;white-space:nowrap}.wizard-step.active .step-label{color:#667eea;font-weight:600}.step-line{width:100px;height:2px;background:#e5e7eb;margin:0 20px 28px}.modal-body{flex:1;overflow-y:auto;padding:30px 40px}.modal-footer{padding:20px 40px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:12px;flex-shrink:0;background:#fff}.upload-step{padding:20px 0}.dropzone{border:2px dashed #d1d5db;border-radius:8px;padding:60px 40px;text-align:center;transition:all .3s;background:#f9fafb;cursor:pointer}.dropzone:hover{border-color:#667eea;background:#f5f7ff}.dropzone.active{border-color:#667eea;background:#f5f7ff;box-shadow:0 0 0 4px #667eea1a}.dropzone svg{margin:0 auto 20px;color:#9ca3af}.dropzone h3{margin:0 0 8px;font-size:18px;color:#1f2937}.dropzone p{margin:0 0 20px;color:#6b7280;font-size:14px}.dropzone .file-name{margin-top:20px;color:#667eea;font-weight:500;font-size:14px}.upload-instructions{margin-top:30px;padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.upload-instructions h4{margin:0 0 12px;font-size:14px;color:#1f2937;font-weight:600}.upload-instructions ul{margin:0;padding-left:20px}.upload-instructions li{margin-bottom:8px;color:#4b5563;font-size:13px;line-height:1.6}.upload-instructions strong{color:#1f2937;font-weight:600}.preview-step{padding:20px 0}.preview-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.summary-card{padding:20px;border-radius:8px;text-align:center;border:2px solid}.summary-card.success{background:#f0fdf4;border-color:#10b981}.summary-card.error{background:#fef2f2;border-color:#ef4444}.summary-card.info{background:#eff6ff;border-color:#3b82f6}.summary-number{font-size:36px;font-weight:700;margin-bottom:8px}.summary-card.success .summary-number{color:#10b981}.summary-card.error .summary-number{color:#ef4444}.summary-card.info .summary-number{color:#3b82f6}.summary-label{font-size:14px;color:#6b7280;font-weight:500}.preview-table-container{margin-top:20px;overflow-x:auto;overflow-y:auto;max-height:400px;border:1px solid #e5e7eb;border-radius:8px}.preview-table-container h4{margin:0 0 16px;font-size:14px;color:#1f2937;font-weight:600}.preview-table{width:100%;min-width:800px;border-collapse:collapse;font-size:13px;background:#fff}.preview-table thead{background:#f9fafb}.preview-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.preview-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;color:#4b5563;vertical-align:top}.preview-table tbody tr:last-child td{border-bottom:none}.preview-table tbody tr.invalid-row{background:#fef2f2}.preview-table tbody tr:not(.invalid-row):hover{background:#f9fafb}.status-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-weight:700;font-size:14px}.status-icon.success{background:#d1fae5;color:#10b981}.status-icon.error{background:#fee2e2;color:#ef4444}.error-list{display:flex;flex-direction:column;gap:4px}.error-item{color:#dc2626;font-size:12px;padding:4px 8px;background:#fee2e2;border-radius:4px;border-left:3px solid #ef4444}.table-note{margin-top:12px;text-align:center;color:#6b7280;font-size:13px;font-style:italic}.importing-step{padding:60px 40px;text-align:center}.progress-container{position:relative;width:64px;height:64px;margin:0 auto 30px}.progress-spinner{animation:rotate 2s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;font-weight:700;color:#667eea}.importing-step h3{margin:0 0 12px;font-size:20px;color:#1f2937}.importing-step p{margin:0;color:#6b7280;font-size:14px}.complete-step{padding:60px 40px;text-align:center}.success-icon{margin:0 auto 24px;color:#10b981;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.complete-step h3{margin:0 0 30px;font-size:24px;color:#1f2937;font-weight:700}.result-summary{display:flex;gap:30px;justify-content:center;margin-top:30px}.result-item{display:flex;flex-direction:column;align-items:center;gap:8px}.result-number{font-size:48px;font-weight:700;line-height:1}.result-item.success .result-number{color:#10b981}.result-item.error .result-number{color:#ef4444}.result-label{font-size:14px;color:#6b7280;font-weight:500}.alert{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.alert svg{flex-shrink:0}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.btn-secondary{padding:10px 24px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-primary{padding:10px 24px;border:none;background:#667eea;color:#fff;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#5568d3;box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.import-modal-content{width:95%;max-height:95vh}.wizard-steps{padding:20px 20px 15px}.step-line{width:60px;margin:0 10px 28px}.step-label{font-size:11px}.modal-body{padding:20px}.preview-summary{grid-template-columns:1fr;gap:12px}.preview-table-container{overflow-x:auto}.preview-table{font-size:12px}.preview-table th,.preview-table td{padding:8px 12px}.result-summary{flex-direction:column;gap:20px}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.back-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#6b7280;cursor:pointer;transition:all .2s;margin-bottom:16px}.back-button:hover{border-color:#667eea;color:#667eea}.page-header h1{margin:0 0 8px;font-size:32px;font-weight:700;color:#1f2937}.firm-subtitle{margin:0;font-size:16px;color:#6b7280}.header-actions{display:flex;gap:12px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:32px}.info-card{background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.info-card h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#1f2937}.info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f3f4f6}.info-row:last-child{border-bottom:none}.info-row .label{font-size:14px;color:#6b7280;font-weight:500;flex-shrink:0;width:140px}.info-row .value{font-size:14px;color:#1f2937;text-align:right;flex:1}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.stat-box{background:#fff;padding:24px;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;display:flex;align-items:center;gap:16px;transition:transform .2s,box-shadow .2s}.stat-box:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.primary{background:#eff6ff;color:#667eea}.stat-icon.success{background:#f0fdf4;color:#10b981}.stat-icon.warning{background:#fffbeb;color:#f59e0b}.stat-content{flex:1}.stat-label{font-size:13px;color:#6b7280;font-weight:500;margin-bottom:4px}.stat-value{font-size:28px;font-weight:700;color:#1f2937;line-height:1}.clients-section{background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.section-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.section-actions{display:flex;gap:12px}.table-container{overflow-x:auto}.clients-table{width:100%;border-collapse:collapse}.clients-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.clients-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.clients-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s}.clients-table tbody tr:hover{background:#f9fafb}.clients-table td{padding:16px;font-size:14px;color:#374151}.client-name{font-weight:600;color:#1f2937}.email-cell{color:#667eea}.pan-cell,.gst-cell{font-family:Courier New,monospace;font-size:13px}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.badge-active{background:#dcfce7;color:#166534}.badge-inactive{background:#fee2e2;color:#991b1b}.subscription-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.badge-trial{background:#fef3c7;color:#92400e}.badge-basic{background:#dbeafe;color:#1e40af}.badge-professional{background:#ddd6fe;color:#5b21b6}.badge-enterprise{background:#d1fae5;color:#065f46}.days-badge{margin-left:8px;padding:2px 8px;border-radius:8px;font-size:11px;font-weight:600;background:#e0e7ff;color:#3730a3}.days-badge.expiring-soon{background:#fee2e2;color:#991b1b}.type-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.type-individual{background:#dbeafe;color:#1e40af}.type-business{background:#dcfce7;color:#166534}.type-composition{background:#fef3c7;color:#92400e}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#991b1b}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#6b7280}.empty-state svg{margin-bottom:16px;opacity:.5}.empty-state h3{margin:0 0 8px;color:#374151;font-size:18px;font-weight:600}.empty-state p{margin:0;font-size:14px}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:600;color:#374151;cursor:pointer;transition:all .2s}.btn-secondary:hover{border-color:#667eea;color:#667eea;background:#f9fafb}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#6b7280}.spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.close-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;border-radius:6px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:24px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb}.my-profile-page .profile-avatar{width:72px;height:72px;font-size:28px}.profile-toast{position:fixed;top:20px;right:20px;z-index:1000;display:flex;align-items:center;gap:8px;padding:12px 20px;background:#16a34a;color:#fff;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 4px 16px #16a34a4d;animation:slideInToast .3s ease-out,fadeOutToast .3s 2.7s ease-in forwards}@keyframes slideInToast{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOutToast{to{opacity:0;transform:translateY(-10px)}}.profile-input{width:100%;padding:9px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-family:inherit;color:#1e293b;background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.profile-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.profile-textarea{resize:vertical;min-height:80px}.profile-input option{font-size:14px}.profile-readonly-hint{font-size:11px;color:#94a3b8;font-weight:400;margin-left:6px}.profile-alert-error{padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:13px;font-weight:500}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.3px}.empty-state-inline{text-align:center;padding:32px 16px;color:#94a3b8}.empty-state-inline span{font-size:32px;display:block;margin-bottom:10px}.empty-state-inline p{font-size:13px;color:#64748b;margin:0}.my-profile-page .leave-balance-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.my-profile-page .leave-balance-card{display:flex;flex-direction:column;align-items:stretch;gap:0;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #3b82f6;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.my-profile-page .leave-balance-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.my-profile-page .lb-header{font-size:13px;font-weight:600;color:#334155;margin-bottom:14px;text-transform:uppercase;letter-spacing:.3px}.my-profile-page .lb-numbers{display:flex;gap:20px;margin-bottom:14px}.my-profile-page .lb-stat{display:flex;flex-direction:column;gap:2px}.my-profile-page .lb-value{font-size:24px;font-weight:700;line-height:1}.my-profile-page .lb-value.primary{color:#16a34a}.my-profile-page .lb-value.used{color:#ea580c}.my-profile-page .lb-value.total{color:#475569}.my-profile-page .lb-label{font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px;font-weight:600}.my-profile-page .lb-bar-track{height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.my-profile-page .lb-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:999px;transition:width .3s ease}.leave-form{padding:24px;border-top:1px solid #f1f5f9}.leave-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.leave-duration-badge{display:inline-flex;align-items:center;padding:8px 16px;background:#eff6ff;color:#2563eb;border-radius:8px;font-weight:600;font-size:14px}.password-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;flex:1}.password-prompt-icon{margin-bottom:16px;opacity:.6}.password-prompt-text{color:#64748b;font-size:14px;margin:0 0 20px;text-align:center;max-width:280px;line-height:1.5}.password-form{padding:24px;display:flex;flex-direction:column;gap:18px;flex:1}.password-form-actions{display:flex;gap:10px;margin-top:4px}.security-tips-box{margin-top:8px;padding:16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px}.security-tips-title{font-size:13px;font-weight:700;color:#15803d;margin-bottom:10px}.security-tips-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.security-tips-list li{font-size:13px;color:#475569;line-height:1.5}@media (max-width: 768px){.my-profile-page .leave-balance-row,.leave-form-grid{grid-template-columns:1fr}.my-profile-page .profile-avatar{width:56px;height:56px;font-size:22px}}#root{width:100%;min-height:100vh}:root{--primary-color: #2563eb;--primary-dark: #1e40af;--primary-hover: #1e40af;--secondary-color: #64748b;--success-color: #10b981;--success-dark: #059669;--success-light: #d1fae5;--warning-color: #f59e0b;--warning-light: #fef3c7;--danger-color: #ef4444;--error-color: #ef4444;--error-light: #fee2e2;--light-bg: #f8fafc;--bg-light: #f8fafc;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-hover: #f1f5f9;--white: #ffffff;--text-primary: #1e293b;--text-dark: #1e293b;--text-medium: #475569;--text-light: #94a3b8;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;height:100vh;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:var(--text-dark);background-color:var(--light-bg);line-height:1.6}#root{height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-dark)}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}.page-header{margin-top:10px}a{font-weight:500;color:var(--primary-color);text-decoration:inherit}a:hover{color:var(--primary-dark)}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}}
