*{box-sizing:border-box;margin:0;padding:0}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{font-family:'Segoe UI',system-ui,sans-serif;background:#f7f6f2;color:#1a1a1a;font-size:14px}

.topbar{background:#111;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100}
.logo{font-size:16px;font-weight:700;color:#fff;display:flex;align-items:center;gap:11px}
.logo-mark{width:34px;height:34px;border:1px solid rgba(52,211,153,.38);border-radius:8px;background:linear-gradient(180deg,#123127,#0f1f1b);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-mark svg{width:24px;height:24px;display:block}
.logo-word{line-height:1.15}
.logo-sub{font-size:11px;color:#6b7280;font-weight:400;margin-top:2px}
.topbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.stat-chip{background:#1f1f1f;border:1px solid #333;border-radius:8px;padding:6px 14px;font-size:12px;color:#9ca3af}
.stat-chip span{color:#34d399;font-weight:700;margin-left:4px}
.credits-chip{cursor:default;flex-direction:column;gap:2px;padding:5px 14px}
.credits-bar-wrap{width:100%;height:3px;background:#333;border-radius:2px;overflow:hidden}
.credits-bar{height:100%;background:#34d399;border-radius:2px;transition:width .4s}
.credits-warn .credits-bar{background:#f59e0b}
.credits-empty .credits-bar{background:#ef4444}
.credits-warn span{color:#f59e0b !important}
.credits-empty span{color:#ef4444 !important}
.plan-chip{cursor:default;padding:6px 10px;border:0;background:transparent;font:inherit;user-select:none}
.plan-chip:disabled{opacity:1}
.plan-chip.is-admin-action{cursor:pointer}
.plan-chip.is-admin-action:hover .plan-badge,.plan-chip.is-admin-action:focus-visible .plan-badge{background:#fde68a;box-shadow:0 0 0 2px rgba(251,191,36,.28)}
.plan-badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}
.badge-free{background:#f3f4f6;color:#374151}
.badge-monthly{background:#dbeafe;color:#1e40af}
.badge-yearly{background:#ede9fe;color:#5b21b6}
.badge-lifetime{background:#d1fae5;color:#065f46}
.badge-admin-plan{background:#fef3c7;color:#92400e}
.badge-blocked{background:#fee2e2;color:#991b1b}
.user-chip{background:#1f1f1f;border:1px solid #333;border-radius:8px;padding:6px 12px;font:inherit;font-size:12px;color:#9ca3af;display:flex;align-items:center;gap:6px;cursor:pointer}
.user-chip:hover{border-color:#555;color:#e5e5e5}
.user-chip strong{color:#e5e5e5}
.btn-dl{background:#059669;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:6px;transition:background .15s}
.btn-dl:hover{background:#047857}
.btn-dl:disabled{background:#374151;cursor:not-allowed}
.btn-reset{background:#1f1f1f;color:#f87171;border:1px solid #7f1d1d;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}
.btn-reset:hover{background:#2d1515;border-color:#ef4444}
.btn-reset:disabled{opacity:.4;cursor:not-allowed}
.btn-logout{background:transparent;color:#6b7280;border:1px solid #333;border-radius:8px;padding:8px 12px;font-size:12px;cursor:pointer;font-family:inherit;transition:all .15s}
.btn-workspace{background:transparent;color:#34d399;border:1px solid #047857;border-radius:8px;padding:6px 10px;font-size:11px;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.btn-workspace:hover{background:#052010;border-color:#10b981}
.btn-logout:hover{color:#e5e5e5;border-color:#555}

.tabs{background:#fff;border-bottom:2px solid #e5e3dc;padding:0 28px;display:flex;gap:4px;align-items:stretch;overflow:visible}
.tab-btn,.nav-trigger{padding:12px 18px;font-size:13px;font-weight:600;color:#9ca3af;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit;transition:all .15s;margin-bottom:-2px;white-space:nowrap}
.tab-btn:hover{color:#374151}
.tab-btn.active,.nav-trigger.active{color:#111;border-bottom-color:#111}
.nav-menu{position:relative;display:flex}
.nav-trigger:hover{color:#374151}
.nav-dropdown{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid #e5e3dc;border-radius:10px;box-shadow:0 16px 32px rgba(17,17,17,.14);padding:6px;z-index:250}
.nav-menu:hover .nav-dropdown,.nav-menu:focus-within .nav-dropdown{display:block}
.nav-menu.force-closed .nav-dropdown{display:none!important}
.nav-dropdown button{width:100%;border:none;background:transparent;text-align:left;padding:9px 10px;border-radius:7px;font:inherit;font-size:13px;color:#374151;cursor:pointer;display:flex;align-items:center;gap:8px}
.nav-dropdown button:hover{background:#f7f6f2;color:#111}
.tab-pane{display:none}
.tab-pane.active{display:block}

.main{max-width:1280px;margin:0 auto;padding:28px 20px 60px}
.boot-placeholder{min-height:300px;color:#6b7280}
.boot-placeholder.is-hidden{display:none}
.boot-skel-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.boot-skel-line,.boot-skel-icon,.boot-skel-card,.boot-skel-panel{background:#ebe8e1;border-radius:8px}
.boot-skel-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}
.boot-skel-title{width:260px;height:28px;margin-bottom:10px}
.boot-skel-sub{width:min(460px,70%);height:14px}
.boot-skel-period{width:132px;height:42px;background:#fff;border:1px solid #e5e3dc;border-radius:8px}
.boot-skel-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.boot-skel-card{height:86px;background:#fff;border:1px solid #e5e3dc;padding:16px;display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:center}
.boot-skel-icon{width:46px;height:46px;border-radius:12px;background:#edf5ef}
.boot-skel-copy{display:grid;gap:9px}.boot-skel-copy .short{width:44%;height:12px}.boot-skel-copy .long{width:76%;height:18px}.boot-skel-copy .tiny{width:58%;height:10px}
.boot-skel-panel{background:#fff;border:1px solid #e5e3dc;padding:18px;margin-top:12px;min-height:180px}
.boot-skel-panel .bar{height:14px;margin-bottom:14px}.boot-skel-panel .row{height:32px;border-radius:6px;margin-top:9px;background:#f0ede6}
.boot-skel-side{display:flex;flex-direction:column;gap:14px}
.boot-skel-side .panel{background:#fff;border:1px solid #e5e3dc;border-radius:10px;padding:18px}
.boot-skel-side .action{height:46px;border-radius:8px;background:#f0ede6;margin-top:12px}
.boot-skel-tabs{display:flex;gap:26px;border-bottom:1px solid #e5e3dc;margin-bottom:24px;padding-left:6px}
.boot-skel-tabs .tab{width:110px;height:14px;margin:0 0 12px;background:#ebe8e1;border-radius:8px}
.boot-skel-actions{display:flex;justify-content:flex-end;gap:12px;margin:0 0 20px}
.boot-skel-actions .button{width:136px;height:42px;background:#ebe8e1;border-radius:8px}
.boot-skel-table{background:#fff;border:1px solid #e5e3dc;border-radius:12px;overflow:hidden}
.boot-skel-table .head{height:44px;background:#f9f7f3;border-bottom:1px solid #e5e3dc}
.boot-skel-table .line{height:18px;background:#ebe8e1;border-radius:6px;margin:17px 22px}
.boot-skel-formgrid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px}
@media(max-width:980px){.boot-skel-layout{grid-template-columns:1fr}.boot-skel-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:980px){.boot-skel-formgrid{grid-template-columns:1fr}}
@media(max-width:640px){.boot-skel-head{flex-direction:column}.boot-skel-kpis{grid-template-columns:1fr}.boot-skel-title{width:72%}.boot-skel-sub{width:90%}.boot-skel-actions{justify-content:flex-start;flex-wrap:wrap}}

.upload-zone{border:2px dashed #d1cfc8;border-radius:14px;background:#fff;padding:44px 24px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:20px;position:relative}
.upload-zone.drag{border-color:#059669;background:#f0fdf4}
.upload-zone.processing{border-color:#d97706;background:#fffbeb;cursor:not-allowed}
.uz-icon{font-size:44px;margin-bottom:10px}
.uz-title{font-size:17px;font-weight:700;color:#111;margin-bottom:6px}
.uz-sub{font-size:13px;color:#9ca3af;margin-bottom:18px}
.btn-pick{background:#111;color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}
.btn-pick:hover{background:#374151}
.uz-types{margin-top:12px;font-size:11px;color:#9ca3af}
#file-input{display:none}

.progress-box{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:18px 20px;margin-bottom:20px;display:none}
.pb-title{font-size:14px;font-weight:600;color:#92400e;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.pb-bar{height:6px;background:#fde68a;border-radius:3px;overflow:hidden;margin-bottom:8px}
.pb-fill{height:100%;background:#d97706;border-radius:3px;width:0%;transition:width .4s}
.pb-step{font-size:12px;color:#92400e}
.spinner{display:inline-block;width:16px;height:16px;border:2px solid #d97706;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.result-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;margin-bottom:16px;overflow:hidden;display:none}
.rc-head{background:#f0fdf4;border-bottom:1px solid #bbf7d0;padding:14px 18px;display:flex;align-items:center;justify-content:space-between}
.rc-title{font-size:14px;font-weight:700;color:#166534;display:flex;align-items:center;gap:8px}
.rc-meta{font-size:11px;color:#6b7280;text-align:right}
.rc-meta strong{color:#111}
.rc-route{padding:9px 16px;background:#eff6ff;border-bottom:1px solid #bfdbfe;color:#1e40af;font-size:12px;font-weight:700}
.rc-route.sales-route{background:#ecfdf5;border-bottom-color:#a7f3d0;color:#047857}
.model-badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px;margin-left:6px}
.badge-haiku{background:#dbeafe;color:#1e40af}
.badge-sonnet{background:#fce7f3;color:#9d174d}
.rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.rc-field{padding:12px 16px;border-bottom:1px solid #f0ede6;border-right:1px solid #f0ede6;border-left:3px solid transparent;transition:border-color .2s}
.rc-field:nth-child(3n){border-right:none}
.rc-field.cf-high{border-left-color:#059669}
.rc-field.cf-mid{border-left-color:#d97706}
.rc-field.cf-low{border-left-color:#dc2626}
.rc-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:3px;display:flex;align-items:center;gap:5px}
.cf-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}
.cf-dot.high{background:#059669}
.cf-dot.mid{background:#d97706}
.cf-dot.low{background:#dc2626}
.rc-val{font-size:13px;color:#111;font-weight:500;word-break:break-word}
.rc-val.empty{color:#d1d5db;font-style:italic;font-weight:400}
.rc-input{width:100%;border:none;border-bottom:1px solid #e5e3dc;background:transparent;font-size:13px;color:#111;font-weight:500;font-family:inherit;padding:2px 0;outline:none}
.rc-input:focus{border-bottom-color:#059669}
.rc-warnings{padding:10px 16px;background:#fffbeb;border-bottom:1px solid #fde68a;display:none}
.rc-warn-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid #fde68a;font-size:12px;color:#92400e;line-height:1.5}
.rc-warn-item:last-child{border-bottom:none;padding-bottom:0}
.rc-warn-icon{font-size:16px;flex-shrink:0}
.rc-confirm{margin:12px 16px;display:flex;align-items:center;gap:8px;color:#92400e;font-size:12px;font-weight:700}
.rc-confirm input{width:auto}
.rc-save-row{padding:12px 16px;border-top:2px solid #e5e3dc;display:flex;align-items:center;gap:10px}
.rc-save-btn{background:#059669;color:#fff;border:none;border-radius:6px;padding:7px 20px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.rc-save-btn:hover{background:#047857}
.rc-save-btn:disabled{background:#9ca3af;cursor:not-allowed}
.rc-save-status{font-size:12px;color:#6b7280}
.batch-review{display:none;background:#fff;border:1px solid #e5e3dc;border-radius:8px;margin-bottom:16px;overflow:hidden}
.batch-review-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid #e5e3dc}
.batch-review-title{font-size:14px;font-weight:800;color:#111827}
.batch-review-summary{font-size:12px;color:#6b7280}
.batch-file-list{display:flex;gap:6px;padding:10px 16px;overflow-x:auto;background:#fafaf9;border-bottom:1px solid #e5e3dc}
.batch-file{flex:0 0 auto;border:1px solid #d6d3d1;background:#fff;border-radius:6px;padding:7px 10px;max-width:190px;font-family:inherit;font-size:11px;font-weight:600;color:#57534e;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.batch-file.active{border-color:#059669;box-shadow:0 0 0 1px #059669;color:#065f46}
.batch-file.saved{background:#ecfdf5;border-color:#86efac}.batch-file.failed,.batch-file.rejected{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.batch-file.skipped{background:#f5f5f4;color:#78716c}.batch-file.duplicate{background:#fffbeb;border-color:#fcd34d;color:#92400e}.batch-file.optimising,.batch-file.processing{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}
.batch-file small{display:block;margin-top:2px;font-size:9px;font-weight:500;line-height:1.25;white-space:normal;opacity:.8}
.batch-review-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.batch-nav-btn{border:1px solid #d6d3d1;background:#fff;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}.batch-nav-btn:disabled{opacity:.45;cursor:not-allowed}
.batch-duplicate-note{display:none;margin:12px 16px 0;padding:10px 12px;border:1px solid #fcd34d;background:#fffbeb;color:#92400e;border-radius:6px;font-size:12px;line-height:1.5}

.home-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.hs-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:14px 18px}
.hs-card.green{border-color:#bbf7d0}
.hs-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:4px}
.hs-value{font-size:22px;font-weight:800;color:#111}
.hs-value.green{color:#059669}
.hs-sub{font-size:11px;color:#9ca3af;margin-top:2px}
.th-sort{cursor:pointer;user-select:none;white-space:nowrap}
.th-sort:hover{color:#059669}
.sort-arrow{margin-left:3px;opacity:.4;font-size:10px}
.sort-arrow.active{opacity:1;color:#059669}
.tfoot-total td{font-weight:700;background:#f7f6f2;border-top:2px solid #e5e3dc;font-size:12px}
@media(max-width:640px){.home-summary{grid-template-columns:1fr 1fr}}

.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.dashboard-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:18px}
.dashboard-head h1{font-size:24px;line-height:1.1;margin-bottom:5px}
.dashboard-head p{font-size:13px;color:#6b7280}
.dash-period{background:#fff;border:1px solid #e5e3dc;border-radius:8px;padding:9px 12px;font-size:12px;color:#374151;white-space:nowrap}
.dash-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}
.dash-card{background:#fff;border:1px solid #e5e3dc;border-radius:10px;padding:15px 16px;box-shadow:0 6px 16px rgba(17,17,17,.03)}
.workspace-setup{display:none;margin-bottom:16px;background:#f8fafc;border:1px solid #dbeafe;border-radius:10px;padding:14px 16px}
.workspace-setup.show{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}
.workspace-setup h3{font-size:14px;margin:0 0 4px;color:#0f172a}
.workspace-setup p{font-size:12px;color:#64748b;margin:0;line-height:1.5}
.workspace-setup-actions{display:flex;gap:8px;flex-wrap:wrap}
.workspace-setup-actions button{border:1px solid #059669;background:#059669;color:#fff;border-radius:6px;padding:8px 12px;font-weight:700;cursor:pointer}
.workspace-setup-actions button.secondary{background:#fff;color:#065f46}
.workspace-onboarding-modal{max-width:720px;background:#f3f4f6!important;color:#111!important;border-color:#d1d5db!important}.workspace-onboarding-modal h2,.workspace-onboarding-modal h3,.workspace-onboarding-modal strong{color:#111!important}.workspace-onboarding-modal .btn-cancel{background:#fff;color:#374151;border-color:#cbd5e1}.workspace-onboarding-modal .section-title{color:#047857}.onboarding-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 20px}.onboarding-step{border-top:3px solid #cbd5e1;background:#e5e7eb;padding:9px 8px;font-size:11px;color:#475569;font-weight:700;min-height:48px}.onboarding-step.done{border-color:#059669;background:#d1fae5;color:#047857}.onboarding-step.current{border-color:#111827;background:#fff;color:#111827}.onboarding-content{min-height:210px;padding:8px 0}.onboarding-content h3{font-size:18px;margin:0 0 8px}.onboarding-content p{font-size:13px;color:#475569;line-height:1.55;max-width:590px}.onboarding-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.onboarding-summary div{border:1px solid #cbd5e1;background:#fff;border-radius:7px;padding:12px}.onboarding-summary span{display:block;font-size:10px;text-transform:uppercase;color:#64748b;font-weight:800}.onboarding-summary strong{display:block;font-size:14px;margin-top:4px}.onboarding-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:18px}.onboarding-actions-right{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.onboarding-feedback{display:none;margin-top:12px;padding:10px 12px;border-radius:6px;background:#e0f2fe;color:#075985;font-size:12px;font-weight:700}.onboarding-feedback.show{display:block}.workspace-onboarding-modal.is-busy button{pointer-events:none;opacity:.58}
@media(max-width:700px){.onboarding-progress{grid-template-columns:1fr 1fr}.onboarding-summary{grid-template-columns:1fr}}
.dash-kpi-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center;min-height:86px}
.dash-icon{width:46px;height:46px;border-radius:12px;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;font-size:23px}
.dash-icon.blue{background:#eff6ff;color:#2563eb}.dash-icon.purple{background:#f3e8ff;color:#7c3aed}.dash-icon.orange{background:#fff7ed;color:#ea580c}
.dash-label{font-size:12px;color:#374151;margin-bottom:3px}
.dash-value{font-size:21px;font-weight:800;color:#111;line-height:1.1}
.dash-value.outstanding{font-size:17px;overflow-wrap:anywhere}
.dash-value.green{color:#059669}
.dash-sub{font-size:11px;color:#6b7280;margin-top:5px}
.dash-sub .up{color:#059669;font-weight:800}
.dash-section{margin-top:12px}
.dash-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.dash-section-head h2{font-size:16px;color:#111}
.ledger-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ledger-title{font-size:13px;font-weight:800;color:#059669;margin-bottom:8px}
.mini-ledger{width:100%;border-collapse:collapse;font-size:11px}
.mini-ledger th{background:#f9f7f3;color:#6b7280;text-align:left;text-transform:uppercase;font-size:10px;padding:8px;border-bottom:1px solid #e5e3dc}
.mini-ledger td{padding:8px;border-bottom:1px solid #f0ede6;color:#374151}
.mini-ledger td.num,.mini-ledger th.num{text-align:right;white-space:nowrap}
.mini-ledger tr:last-child td{border-bottom:none;font-weight:800;color:#111}
.recent-tabs{display:flex;gap:18px;align-items:center}
.recent-tabs button{border:none;background:transparent;color:#6b7280;font:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:3px 0;border-bottom:2px solid transparent}
.recent-tabs button.active{color:#059669;border-bottom-color:#059669}
.dash-filter{position:relative}
.filter-btn{background:#fff;border:1px solid #e5e3dc;border-radius:7px;padding:7px 10px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.filter-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #e5e3dc;border-radius:9px;box-shadow:0 14px 28px rgba(17,17,17,.12);padding:6px;min-width:128px;z-index:20}
.dash-filter:hover .filter-menu,.dash-filter:focus-within .filter-menu{display:block}
.filter-menu button{width:100%;border:none;background:transparent;text-align:left;padding:8px 9px;border-radius:6px;font:inherit;font-size:12px;cursor:pointer;color:#374151}
.filter-menu button:hover,.filter-menu button.active{background:#ecfdf5;color:#047857}
.activity-list{display:flex;flex-direction:column;border-top:1px solid #e5e3dc}
.activity-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #f0ede6}
.activity-row:last-child{border-bottom:none}
.activity-ico{width:28px;height:28px;border-radius:7px;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;font-size:14px}
.activity-title{font-size:12px;font-weight:700;color:#111;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-sub{font-size:11px;color:#6b7280;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-amt{font-size:12px;font-weight:800;color:#111;white-space:nowrap}
.activity-status{font-size:10px;font-weight:800;border-radius:999px;padding:3px 8px;background:#ecfdf5;color:#047857;white-space:nowrap}
.dash-side{display:flex;flex-direction:column;gap:14px}
.quick-list{display:flex;flex-direction:column}
.quick-upload-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid #f0ede6}
.quick-upload-action{border:0;background:#fff;padding:10px 8px 12px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;text-align:center;font:inherit;color:#111;cursor:pointer;min-width:0;min-height:92px}
.quick-upload-action+.quick-upload-action{border-left:1px solid #f0ede6}
.quick-upload-action:hover .quick-title{color:#047857}
.quick-upload-action .dash-icon{width:34px;height:34px;border-radius:9px;font-size:17px}
.quick-upload-action>span:nth-child(2){display:flex;flex-direction:column;align-items:center;min-width:0}
.quick-upload-action .quick-title{font-size:12px;white-space:normal;line-height:1.2}
.quick-upload-action .quick-sub{font-size:10px}
.quick-action{border:none;background:#fff;border-bottom:1px solid #f0ede6;padding:13px 0;display:grid;grid-template-columns:42px minmax(0,1fr) 14px;gap:10px;align-items:center;text-align:left;font:inherit;cursor:pointer;color:#111}
.quick-action:last-child{border-bottom:none;padding-bottom:4px}
.quick-action:hover .quick-title{color:#047857}
.quick-action .dash-icon{width:38px;height:38px;border-radius:10px;font-size:19px}
.quick-action > span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.quick-title{display:block;font-size:13px;font-weight:800;margin-bottom:2px;line-height:1.25}
.quick-sub{display:block;font-size:11px;color:#6b7280;line-height:1.35}
.gst-lines{display:flex;flex-direction:column;gap:0}
.gst-line{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #f0ede6;font-size:12px;color:#374151}
.gst-line:last-child{border-bottom:none;font-weight:800}
.gst-line strong{white-space:nowrap}
.gst-line .green{color:#059669}.gst-line .red{color:#dc2626}
.group-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}
.group-page-head h1{font-size:24px;line-height:1.1;margin-bottom:5px}
.group-page-head p{font-size:13px;color:#6b7280;line-height:1.45}
.group-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.group-action-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:18px;text-align:left;cursor:pointer;font:inherit;transition:all .15s;min-height:132px}
.group-action-card:hover{border-color:#059669;box-shadow:0 10px 22px rgba(5,150,105,.08);transform:translateY(-1px)}
.group-action-card .dash-icon{margin-bottom:12px}
.group-action-title{font-size:15px;font-weight:800;color:#111;margin-bottom:5px}
.group-action-sub{font-size:12px;color:#6b7280;line-height:1.45}
.group-action-card.primary{border-color:#a7f3d0;background:#f0fdf4}
.upload-panel{background:#fff;border:1px solid #e5e3dc;border-radius:14px;padding:18px;margin-top:6px}
.upload-panel-title{font-size:15px;font-weight:800;color:#111;margin-bottom:4px}
.upload-panel-sub{font-size:12px;color:#6b7280;margin-bottom:14px}
@media(max-width:980px){.dashboard-layout{grid-template-columns:1fr}.dash-side{grid-template-columns:1fr}.dash-kpis{grid-template-columns:1fr 1fr}.ledger-grid{grid-template-columns:1fr}}
@media(max-width:980px){.group-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.tabs{overflow-x:auto;padding:0 12px}.main{padding:18px 12px 40px}.dashboard-head,.group-page-head{flex-direction:column}.dash-kpis{grid-template-columns:1fr}.activity-row{grid-template-columns:28px minmax(0,1fr);align-items:start}.activity-amt,.activity-status{grid-column:2}.ledger-grid,.group-action-grid{grid-template-columns:1fr}}

.search-wrap{margin-bottom:14px}
.search-input{width:100%;padding:10px 16px;border:1px solid #e5e3dc;border-radius:10px;font-size:13px;font-family:inherit;background:#fff;outline:none;transition:border .15s}
.search-input:focus{border-color:#059669}

.section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;margin-bottom:10px;padding-left:4px;border-left:3px solid #e5e3dc}
.month-group{margin-bottom:24px}
.month-label{font-size:12px;font-weight:700;color:#374151;background:#f3f2ee;padding:8px 14px;border-radius:8px;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.month-count{font-size:11px;color:#9ca3af;font-weight:400}
.history-wrap{background:#fff;border:1px solid #e5e3dc;border-radius:12px;overflow:hidden}
.history-table{width:100%;border-collapse:collapse}
.history-table th{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;padding:10px 12px;text-align:left;background:#f3f2ee;border-bottom:2px solid #e5e3dc;white-space:nowrap}
.history-table td{padding:10px 12px;border-bottom:1px solid #f7f6f2;font-size:12px;color:#374151;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.history-table tr:last-child td{border-bottom:none}
.history-table tr:hover td{background:#fafaf8}
.empty-state{text-align:center;padding:40px;color:#9ca3af;font-size:13px}
.conf-good{color:#059669;font-weight:600}
.conf-mid{color:#d97706;font-weight:600}
.conf-low{color:#dc2626;font-weight:600}
.payable-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.payable-stat{background:#fff;border:1px solid #e5e3dc;border-radius:8px;padding:12px 14px}
.payable-stat span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;color:#6b7280;margin-bottom:4px}
.payable-stat strong{font-size:18px;color:#111}.payable-stat strong.green{color:#059669}.payable-stat strong.red{color:#dc2626}
.payable-stat select{width:100%;margin-top:7px;border:1px solid #d6d3d1;border-radius:6px;padding:5px 7px;background:#fff;font:inherit;font-size:10px;color:#4b5563}
.payable-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;min-height:38px}
.payable-toolbar select{border:1px solid #d6d3d1;border-radius:7px;padding:8px 10px;background:#fff;font:inherit;font-size:12px}
.payable-selection{display:none;align-items:center;gap:10px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:7px;padding:7px 10px;color:#065f46;font-size:12px;font-weight:700}
.payable-selection.show{display:flex}.payable-selection button{border:0;border-radius:6px;padding:6px 10px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.payable-selection .primary{background:#059669;color:#fff}.payable-selection .clear{background:#fff;color:#374151;border:1px solid #d6d3d1}
.payment-pill{display:inline-flex;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;text-transform:uppercase}.payment-pill.unpaid{background:#f3f4f6;color:#4b5563}.payment-pill.partial{background:#fef3c7;color:#92400e}.payment-pill.paid{background:#d1fae5;color:#065f46}.payment-pill.overdue{background:#fee2e2;color:#991b1b}
.payment-modal{max-width:520px}.payment-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.payment-form label{font-size:11px;font-weight:800;text-transform:uppercase;color:#6b7280}.payment-form input,.payment-form select,.payment-form textarea{display:block;width:100%;margin-top:5px;border:1px solid #d6d3d1;border-radius:7px;padding:9px 10px;font:inherit;font-size:13px}.payment-form .wide{grid-column:1/-1}.payment-feedback{font-size:12px;min-height:18px;margin-top:10px;color:#6b7280}.payment-feedback.error{color:#dc2626}
@media(max-width:760px){.payable-summary{grid-template-columns:1fr 1fr}.payment-form{grid-template-columns:1fr}.payment-form .wide{grid-column:auto}}

.btn-delete{background:transparent;border:none;color:#fca5a5;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:4px;transition:all .15s;line-height:1}
.btn-delete:hover{background:#fef2f2;color:#dc2626}
.btn-view{background:transparent;border:1px solid #d1d5db;color:#6b7280;cursor:pointer;font-size:11px;padding:3px 8px;border-radius:4px;transition:all .15s}
.btn-view:hover{border-color:#059669;color:#059669}
.btn-view.no-img{opacity:.3;cursor:default}
.btn-view.no-img:hover{border-color:#d1d5db;color:#6b7280}

.integration-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:16px;align-items:start}
.integration-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:18px;min-width:0}
.integration-card h3{font-size:15px;margin-bottom:8px}
.integration-card p{font-size:12px;color:#6b7280;line-height:1.6;margin-bottom:14px}
.int-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}
.int-field label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280}
.int-field input,.int-field select{border:1px solid #e5e3dc;border-radius:8px;padding:10px 12px;font:inherit;font-size:13px;background:#fff;outline:none}
.int-field input:focus,.int-field select:focus{border-color:#059669}
.int-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.int-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.btn-int{background:#111;color:#fff;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-int.green{background:#059669}
.btn-int:disabled{opacity:.5;cursor:not-allowed}
.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:700;background:#f3f4f6;color:#374151}
.status-pill.connected{background:#d1fae5;color:#065f46}.status-pill.error{background:#fee2e2;color:#991b1b}
.run-list{display:grid;gap:8px;margin-top:12px}
.run-item{border:1px solid #f0ede6;border-radius:8px;padding:10px 12px;font-size:12px;color:#374151;background:#fafaf8}
.run-item strong{color:#111}
@media(max-width:760px){.integration-grid,.int-row{grid-template-columns:1fr}.integration-card{padding:14px}}

.vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:20px}
.vendor-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:16px;cursor:pointer;transition:all .15s}
.vendor-card:hover{border-color:#059669;box-shadow:0 2px 8px rgba(5,150,105,.1)}
.vendor-card.active{border-color:#059669;background:#f0fdf4}
.vc-name{font-size:13px;font-weight:700;color:#111;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vc-count{font-size:11px;color:#9ca3af}
.vc-last{font-size:11px;color:#6b7280;margin-top:2px}
.back-btn{background:transparent;border:none;color:#059669;cursor:pointer;font-size:13px;font-weight:600;padding:0;margin-bottom:12px;display:flex;align-items:center;gap:4px}

.error-box{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;padding:14px 18px;margin-bottom:16px;font-size:13px;color:#991b1b;display:none}

.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;z-index:200}
.modal-overlay.show{display:flex}
.modal{background:#1a1a1a;border:1px solid #333;border-radius:14px;padding:28px;max-width:380px;width:90%;color:#e5e5e5}
.modal h3{font-size:16px;font-weight:700;margin-bottom:10px;color:#f87171}
.modal p{font-size:13px;color:#9ca3af;margin-bottom:20px;line-height:1.6}
.modal-btns{display:flex;gap:10px;justify-content:flex-end}
.btn-cancel{background:transparent;color:#6b7280;border:1px solid #333;border-radius:8px;padding:9px 18px;font-size:13px;cursor:pointer;font-family:inherit}
.btn-cancel:hover{color:#e5e5e5}
.btn-confirm-reset{background:#dc2626;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .15s}
.btn-confirm-reset:hover{background:#b91c1c}
.profile-modal{max-width:620px}
.profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.profile-form-grid label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}
.profile-form-grid input,.profile-form-grid textarea{width:100%;margin-top:6px;border:1px solid #3f3f46;background:#111;color:#f3f4f6;border-radius:8px;padding:10px 12px;font:inherit;font-size:13px;outline:none;text-transform:none}
.profile-form-grid input:focus,.profile-form-grid textarea:focus{border-color:#10b981}
.profile-form-grid input[readonly]{background:#242424;color:#9ca3af;cursor:not-allowed}
.profile-form-grid textarea{resize:vertical;min-height:86px}
.profile-wide{grid-column:1 / -1}
.profile-message{display:none;margin-top:14px;border-radius:8px;padding:10px 12px;font-size:12px}
.profile-message.error{display:block;background:#3f1010;border:1px solid #991b1b;color:#fca5a5}
.profile-message.success{display:block;background:#052e25;border:1px solid #047857;color:#6ee7b7}
@media(max-width:620px){.profile-form-grid{grid-template-columns:1fr}.profile-wide{grid-column:auto}}

.img-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:300}
.img-modal-overlay.show{display:flex}
.img-modal{background:#1a1a1a;border:1px solid #333;border-radius:14px;width:min(96vw,1400px);height:94vh;overflow:hidden;padding:0;position:relative;display:flex;flex-direction:column}
.img-modal-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#111;border-bottom:1px solid #333;flex-shrink:0}
.img-modal-zoom-btns{display:flex;align-items:center;gap:8px}
.btn-zoom{background:#333;border:none;color:#e5e5e5;width:30px;height:30px;border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .15s}
.btn-zoom:hover{background:#555}
.zoom-level{font-size:12px;color:#9ca3af;min-width:40px;text-align:center}
.img-modal-close{background:#333;border:none;color:#e5e5e5;width:30px;height:30px;border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}
.img-modal-close:hover{background:#555}
.img-modal-body{overflow:auto;flex:1;padding:16px;background:#222;cursor:grab;overscroll-behavior:contain;touch-action:none}
.img-modal-body.dragging{cursor:grabbing;user-select:none}
.img-modal-body img{border-radius:8px;display:block;max-width:none;margin:0 auto;background:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.08)}
.img-modal-body img:active{cursor:grabbing}

.vendor-summary{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:16px 20px;margin-bottom:16px;display:flex;gap:24px;flex-wrap:wrap}
.vs-stat{display:flex;flex-direction:column;gap:2px}
.vs-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af}
.vs-value{font-size:18px;font-weight:700;color:#111}
.vs-value.green{color:#059669}
.month-nav{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.btn-month-nav{background:#fff;border:1px solid #e5e3dc;border-radius:8px;padding:6px 12px;font-size:14px;cursor:pointer;transition:all .15s;color:#374151}
.btn-month-nav:hover{border-color:#059669;color:#059669}
.btn-month-nav:disabled{opacity:.3;cursor:default}
.month-nav-label{font-size:14px;font-weight:700;color:#111;min-width:130px;text-align:center}
.month-stat{font-size:12px;color:#6b7280;margin-left:auto}
.month-stat strong{color:#059669}

.dup-modal{background:#1a1a1a;border:1px solid #d97706;border-radius:14px;padding:28px;max-width:420px;width:90%;color:#e5e5e5}
.dup-modal h3{font-size:16px;font-weight:700;margin-bottom:10px;color:#fbbf24}
.dup-modal p{font-size:13px;color:#9ca3af;margin-bottom:12px;line-height:1.6}
.dup-info{background:#111;border-radius:8px;padding:12px;font-size:12px;color:#d1d5db;margin-bottom:16px;line-height:1.8}
.btn-upload-anyway{background:#d97706;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .15s}
.btn-upload-anyway:hover{background:#b45309}

/* ── Admin panel ────────────────────────────────────────────────────── */
.admin-stats{display:flex;gap:20px;background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:20px 24px;margin-bottom:20px;flex-wrap:wrap}
.as-item{display:flex;flex-direction:column;gap:2px}
.as-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af}
.as-value{font-size:24px;font-weight:800;color:#111}
.as-value.green{color:#059669}
.admin-action-btn{font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;border:1px solid #e5e3dc;background:#fff;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}
.admin-action-btn:hover{border-color:#374151;color:#111}
.admin-action-btn.danger{border-color:#fca5a5;color:#dc2626}
.admin-action-btn.danger:hover{background:#fef2f2}
.admin-action-btn.warn{border-color:#fde68a;color:#92400e}
.admin-action-btn.warn:hover{background:#fffbeb}
.admin-action-btn.success{border-color:#bbf7d0;color:#065f46}
.admin-action-btn.success:hover{background:#f0fdf4}
.admin-plan-select{font-size:11px;padding:3px 6px;border-radius:4px;border:1px solid #e5e3dc;font-family:inherit;background:#fff;color:#374151;margin-right:4px}

/* ── Upgrade modal ────────────────────────────────────────────────── */
.upgrade-modal{background:#1a1a1a;border:1px solid #d97706;border-radius:14px;padding:28px;max-width:420px;width:90%;color:#e5e5e5}
.upgrade-modal h3{font-size:16px;font-weight:700;margin-bottom:12px;color:#fbbf24}
.upgrade-modal p{font-size:13px;color:#9ca3af;line-height:1.7;margin-bottom:8px}
.upgrade-contact{background:#111;border-radius:8px;padding:12px 14px;font-size:13px;line-height:2;color:#d1d5db;margin-bottom:12px}
.upgrade-contact a{color:#34d399;text-decoration:none}
.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.plan-card{background:#111;border:1px solid #333;border-radius:10px;padding:12px 8px;text-align:center;cursor:pointer;transition:border-color .15s}
.plan-card:hover{border-color:#059669}
.pc-pop{border-color:#d97706}
.pc-pop:hover{border-color:#f59e0b}
.pc-name{font-size:11px;font-weight:700;color:#9ca3af;margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em}
.pc-price{font-size:20px;font-weight:800;color:#fff;line-height:1.2}
.pc-per{font-size:10px;color:#6b7280;font-weight:400}
.pc-desc{font-size:11px;color:#6b7280;margin-top:3px}
@media(max-width:360px){.plan-cards{grid-template-columns:1fr}}

/* ── CA Dashboard ────────────────────────────────────────────── */
.ca-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.btn-add-client{background:#059669;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:6px}
.btn-add-client:hover{background:#047857}
.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-bottom:24px}
.client-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:18px;transition:all .15s;position:relative}
.client-card:hover{border-color:#059669;box-shadow:0 2px 8px rgba(5,150,105,.1)}
.cc-name{font-size:15px;font-weight:700;color:#111;margin-bottom:2px}
.cc-gstin{font-size:11px;color:#9ca3af;margin-bottom:10px}
.cc-stats{display:flex;gap:14px;margin-bottom:12px}
.cc-stat{display:flex;flex-direction:column;gap:1px}
.cc-stat-val{font-size:16px;font-weight:700;color:#111}
.cc-stat-val.green{color:#059669}
.cc-stat-label{font-size:10px;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}
.cc-last{font-size:11px;color:#9ca3af;margin-bottom:12px}
.cc-actions{display:flex;gap:6px}
.btn-open-client{flex:1;background:#111;color:#fff;border:none;border-radius:6px;padding:8px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-open-client:hover{background:#374151}
.btn-cc-invite{background:#fff;border:1px solid #059669;border-radius:6px;padding:8px 10px;font-size:12px;cursor:pointer;color:#059669}
.btn-cc-invite:hover{background:#f0fdf4}
.btn-cc-edit{background:#fff;border:1px solid #e5e3dc;border-radius:6px;padding:8px 10px;font-size:12px;cursor:pointer;color:#6b7280}
.btn-cc-edit:hover{border-color:#374151;color:#111}
.btn-cc-del{background:#fff;border:1px solid #fca5a5;border-radius:6px;padding:8px 10px;font-size:12px;cursor:pointer;color:#dc2626}
.btn-cc-del:hover{background:#fef2f2}
.org-context-bar{background:#059669;color:#fff;padding:10px 28px;display:none;align-items:center;gap:12px;font-size:13px;font-weight:600}
.org-context-bar.show{display:flex}
.btn-exit-org{background:rgba(255,255,255,.2);border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:700;color:#fff;cursor:pointer;margin-left:auto}
.btn-exit-org:hover{background:rgba(255,255,255,.3)}
.ca-empty{text-align:center;padding:48px 20px;color:#9ca3af}
.ca-empty-icon{font-size:48px;margin-bottom:12px}
.ca-empty h3{font-size:16px;font-weight:700;color:#374151;margin-bottom:6px}
.ca-empty p{font-size:13px;margin-bottom:20px}

/* CA modal */
.ca-modal{background:#1a1a1a;border:1px solid #333;border-radius:14px;padding:28px;max-width:380px;width:90%;color:#e5e5e5}
.ca-modal h3{font-size:16px;font-weight:700;margin-bottom:16px;color:#fff}
.ca-field{margin-bottom:14px}
.ca-field label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:5px}
.ca-field input{width:100%;background:#111;border:1px solid #333;border-radius:6px;padding:9px 12px;font-size:13px;color:#e5e5e5;font-family:inherit;outline:none}
.ca-field input:focus{border-color:#059669}
.workspace-list{display:grid;gap:8px;margin-bottom:16px}
.workspace-option{width:100%;border:1px solid #333;background:#111;color:#e5e5e5;border-radius:8px;padding:10px 12px;text-align:left;cursor:pointer;font:inherit}
.workspace-option:hover,.workspace-option.active{border-color:#059669;background:#052010}
.workspace-option strong{display:block;font-size:13px;color:#fff}
.workspace-option span{display:block;font-size:11px;color:#9ca3af;margin-top:3px}
.workspace-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.workspace-form-grid label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}
.workspace-form-grid input,.workspace-form-grid select{width:100%;margin-top:5px;border:1px solid #333;background:#111;color:#e5e5e5;border-radius:8px;padding:10px 12px;font:inherit;font-size:13px;outline:none}
.workspace-form-grid input:focus,.workspace-form-grid select:focus{border-color:#059669}
.workspace-wide{grid-column:1 / -1}
.btn-ca-save{background:#059669;color:#fff;border:none;border-radius:8px;padding:10px 22px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-ca-save:hover{background:#047857}

/* ── Team tab ────────────────────────────────────────────────── */
.team-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.team-head h1{font-size:24px;line-height:1.1;margin-bottom:5px}
.team-head p{font-size:13px;color:#6b7280;max-width:680px;line-height:1.45}
.team-layout{display:block}
.team-card{background:#fff;border:1px solid #e5e3dc;border-radius:8px;padding:16px;box-shadow:0 8px 20px rgba(0,0,0,.03);min-width:0}
.team-card-title{font-size:14px;font-weight:800;color:#111;margin-bottom:12px}
.team-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.team-form-grid label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6b7280}
.team-form-grid input,.team-form-grid select,.team-form-grid textarea{width:100%;margin-top:5px;border:1px solid #e5e3dc;background:#fff;color:#111;border-radius:8px;padding:9px 10px;font:inherit;font-size:13px;outline:none;text-transform:none}
.team-form-grid textarea{resize:vertical;min-height:76px}
.team-form-grid input:focus,.team-form-grid select:focus,.team-form-grid textarea:focus{border-color:#059669}
.team-wide{grid-column:1 / -1}
.team-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.team-modal{max-width:780px}
.team-role-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:6px}
.team-role-option{display:flex!important;align-items:center;gap:8px;border:1px solid #e5e3dc;border-radius:8px;padding:9px 10px;color:#111!important;font-size:12px!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important;background:#fff}
.team-role-option input{width:auto!important;margin:0!important}
.team-role-option:has(input:checked){border-color:#059669;background:#ecfdf5;color:#047857!important}
.team-invite-result{margin-top:16px;padding-top:14px;border-top:1px solid #e5e3dc}
.team-link-row{display:flex;gap:8px;align-items:center}
.team-link-row input{flex:1;border:1px solid #e5e3dc;background:#f9f7f3;color:#047857;border-radius:8px;padding:10px;font-family:monospace;font-size:12px;min-width:0}
.team-invite-result p{font-size:11px;color:#6b7280;margin-top:8px;line-height:1.4}
.team-role-badge,.team-status-badge{display:inline-block;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.team-role-badge{background:#ede9fe;color:#5b21b6}
.team-status-badge.draft{background:#eef2ff;color:#3730a3}.team-status-badge.invited,.team-status-badge.pending{background:#fef3c7;color:#92400e}.team-status-badge.active{background:#d1fae5;color:#065f46}.team-status-badge.suspended{background:#fee2e2;color:#991b1b}.team-status-badge.disabled{background:#f3f4f6;color:#6b7280}
.team-access-list{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px;max-width:220px}
.team-access-chip{display:inline-flex;align-items:center;border:1px solid #d1fae5;background:#ecfdf5;color:#047857;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800;white-space:nowrap}
.task-filter-bar{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;margin-bottom:14px}
.task-filter-bar label{font-size:10px;font-weight:800;text-transform:uppercase;color:#6b7280;letter-spacing:.05em}
.task-filter-bar select{width:100%;margin-top:5px;border:1px solid #ddd9d0;border-radius:7px;padding:8px;background:#fff;font:inherit;font-size:12px}
.task-type{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;background:#eef2ff;color:#4338ca}
.assignment-modal{max-width:680px}.assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.assignment-person{display:flex;gap:10px;align-items:flex-start;border:1px solid #e5e3dc;border-radius:7px;padding:10px;background:#fff}.assignment-person input{margin-top:3px}.assignment-person small{display:block;color:#6b7280;margin-top:3px}.assignment-timeline{border-left:2px solid #d1fae5;margin:12px 0 0 8px;padding-left:18px}.assignment-event{position:relative;padding:0 0 18px}.assignment-event:before{content:'';position:absolute;left:-24px;top:4px;width:10px;height:10px;border-radius:50%;background:#059669;border:2px solid #fff}.assignment-event strong{font-size:13px}.assignment-event p{font-size:12px;color:#6b7280;margin:4px 0}.assignment-event time{font-size:10px;color:#9ca3af}.btn-ca-save.is-saving{background:#065f46!important;color:#d1fae5!important;cursor:wait!important;opacity:1!important}
@media(max-width:980px){.team-head{flex-direction:column}.team-form-grid{grid-template-columns:1fr}.team-role-options{grid-template-columns:1fr}}
@media(max-width:980px){.task-filter-bar{grid-template-columns:1fr 1fr}.assignment-grid{grid-template-columns:1fr}}

/* ── Tally tab ────────────────────────────────────────────────── */
.tally-settings{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:20px 24px;margin-bottom:20px}
.tally-settings h4{font-size:13px;font-weight:700;color:#111;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.tally-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tally-field label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:4px}
.tally-field input{width:100%;border:1px solid #e5e3dc;border-radius:6px;padding:8px 10px;font-size:13px;font-family:inherit;outline:none;transition:border .15s}
.tally-field input:focus{border-color:#059669}
.tally-save-row{margin-top:14px;display:flex;align-items:center;gap:10px}
.btn-tally-save{background:#059669;color:#fff;border:none;border-radius:6px;padding:8px 20px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-tally-save:hover{background:#047857}
.tally-save-msg{font-size:12px;color:#059669}
.tally-select-row{display:flex;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}
.btn-tally-export{background:#1d4ed8;color:#fff;border:none;border-radius:8px;padding:9px 20px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:6px;transition:background .15s}
.btn-tally-export:hover{background:#1e40af}
.btn-tally-export:disabled{background:#6b7280;cursor:not-allowed}
.tally-count{font-size:12px;color:#6b7280}
.cb-select-all{cursor:pointer;width:15px;height:15px;accent-color:#059669}
.cb-bill{cursor:pointer;width:14px;height:14px;accent-color:#059669}
@media(max-width:640px){.tally-grid{grid-template-columns:1fr}}

/* ── GSTR-2B tab ──────────────────────────────────────────────── */
.g2b-upload-zone{border:2px dashed #d1cfc8;border-radius:14px;background:#fff;padding:44px 24px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:20px}
.g2b-upload-zone.drag{border-color:#1d4ed8;background:#eff6ff}
.g2b-upload-zone .uz-icon{font-size:44px;margin-bottom:10px}
.g2b-upload-zone .uz-title{font-size:17px;font-weight:700;color:#111;margin-bottom:6px}
.g2b-upload-zone .uz-sub{font-size:13px;color:#9ca3af;margin-bottom:18px}
.btn-g2b-pick{background:#1d4ed8;color:#fff;border:none;border-radius:8px;padding:10px 24px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.btn-g2b-pick:hover{background:#1e40af}
.g2b-how{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:14px 18px;margin-bottom:20px;font-size:12px;color:#1e40af;line-height:2}
.g2b-how strong{font-weight:700}
.itc-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px}
.itc-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:16px 18px}
.itc-card.green{border-color:#bbf7d0;background:#f0fdf4}
.itc-card.amber{border-color:#fde68a;background:#fffbeb}
.itc-card.red{border-color:#fecaca;background:#fef2f2}
.itc-card.blue{border-color:#bfdbfe;background:#eff6ff}
.itc-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;margin-bottom:4px}
.itc-value{font-size:22px;font-weight:800;color:#111}
.itc-sub{font-size:11px;color:#6b7280;margin-top:2px}
.g2b-bucket-tabs{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}
.btn-bucket{padding:8px 14px;font-size:12px;font-weight:600;border-radius:8px;border:1px solid #e5e3dc;background:#fff;cursor:pointer;font-family:inherit;transition:all .15s;display:flex;align-items:center;gap:6px}
.btn-bucket:hover{border-color:#374151}
.btn-bucket.active{background:#111;color:#fff;border-color:#111}
.bucket-badge{display:inline-block;min-width:20px;text-align:center;background:rgba(255,255,255,.2);border-radius:10px;padding:0 5px;font-size:11px}
.btn-bucket:not(.active) .bucket-badge{background:#f3f4f6;color:#374151}
.g2b-table-wrap{background:#fff;border:1px solid #e5e3dc;border-radius:12px;overflow-x:auto}
.g2b-results{display:none}
.diff-pos{color:#dc2626;font-weight:600}
.diff-neg{color:#059669;font-weight:600}
.itc-pill{display:inline-block;background:#dcfce7;color:#166534;font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px}
.btn-g2b-reset{background:transparent;border:1px solid #e5e3dc;border-radius:8px;padding:7px 14px;font-size:12px;color:#6b7280;cursor:pointer;font-family:inherit;margin-bottom:14px}
.btn-g2b-reset:hover{border-color:#374151;color:#111}
@media(max-width:640px){.itc-summary{grid-template-columns:1fr 1fr}}

/* ── Footer ────────────────────────────────────────────────────── */
.site-footer{text-align:center;padding:28px 20px;font-size:12px;color:#9ca3af;border-top:1px solid #e5e3dc;margin-top:40px;line-height:1.9}
.site-footer strong{color:#6b7280}
.site-footer a{color:#9ca3af;text-decoration:none}
.site-footer a:hover{color:#374151}

@media(max-width:640px){
  .topbar{width:100%;padding:12px;flex-wrap:wrap;gap:10px;align-items:flex-start}
  .logo{width:100%;min-width:0}
  .logo-word{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .logo-sub{display:none}
  .topbar-right{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .topbar-right>*{min-width:0;justify-content:center}
  .user-chip,.stat-chip,.btn-workspace,.btn-reset,.btn-dl,.btn-logout{width:100%;padding:7px 8px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .credits-chip{grid-column:1/-1}
  .main{width:100%;padding:16px 12px 44px}
  .upload-zone,.g2b-upload-zone{width:100%;padding:28px 14px;overflow:hidden}
  .uz-title{font-size:16px;overflow-wrap:anywhere}
  .uz-sub,.uz-types{overflow-wrap:anywhere;line-height:1.5}
  .btn-pick,.btn-g2b-pick{max-width:100%}
  .rc-grid{grid-template-columns:1fr 1fr}
  .history-table th:nth-child(n+5),.history-table td:nth-child(n+5){display:none}
  .history-wrap,.inv-table-wrap,.g2b-table-wrap{overflow-x:auto}
  .btn-reset span{display:none}
  .tabs{width:100%;padding:0 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tab-btn{flex:0 0 auto;min-width:74px;padding:10px 9px;font-size:12px;line-height:1.15;text-align:center;white-space:normal}
  .home-summary,.itc-summary{grid-template-columns:1fr}
}

/* ── Invoices Module ──────────────────────────────────────────── */
.inv-subnav{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid #e5e3dc;padding-bottom:0}
.inv-subbtn{padding:9px 16px;font-size:13px;font-weight:600;color:#9ca3af;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;font-family:inherit;transition:all .15s}
.inv-subbtn.active{color:#111;border-bottom-color:#059669}
.inv-subpane{display:none}.inv-subpane.active{display:block}

.inv-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}
.inv-stat{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:18px 20px}
.inv-stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:6px}
.inv-stat-val{font-size:26px;font-weight:800;color:#111}
.inv-stat-sub{font-size:11px;color:#9ca3af;margin-top:3px}
.inv-stat.green .inv-stat-val{color:#059669}
.inv-stat.amber .inv-stat-val{color:#d97706}

.inv-table-wrap{background:#fff;border:1px solid #e5e3dc;border-radius:12px;overflow:hidden}
.inv-table{width:100%;border-collapse:collapse;font-size:13px}
.inv-table th{background:#f9f7f3;padding:10px 14px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;border-bottom:1px solid #e5e3dc}
.inv-table td{padding:12px 14px;border-bottom:1px solid #f5f3ee;color:#374151}
.inv-table tr:last-child td{border-bottom:none}
.inv-table tr:hover td{background:#fafaf8}
.inv-status{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px}
.inv-status.draft{background:#f3f4f6;color:#6b7280}
.inv-status.sent{background:#dbeafe;color:#1d4ed8}
.inv-status.partial{background:#fef3c7;color:#92400e}
.inv-status.paid{background:#dcfce7;color:#166534}
.inv-status.overdue{background:#fee2e2;color:#dc2626}
.inv-status-sel{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:3px 6px;font-size:11px;font-weight:700;cursor:pointer;color:#374151}

.inv-form-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:24px;margin-bottom:16px}
.inv-form-card h3{font-size:14px;font-weight:700;color:#111;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #f0ede6}
.inv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.inv-field{display:flex;flex-direction:column;gap:5px}
.inv-field label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}
.inv-field input,.inv-field select,.inv-field textarea{width:100%;min-width:0;background:#f9f7f3;border:1px solid #e5e3dc;border-radius:8px;padding:9px 12px;font-size:13px;color:#111;font-family:inherit;outline:none;transition:border-color .15s}
.inv-field input:focus,.inv-field select:focus,.inv-field textarea:focus{border-color:#059669;background:#fff}
.inv-field.full{grid-column:1/-1}
.item-master-grid{display:grid;grid-template-columns:minmax(280px,370px) minmax(0,1fr);gap:20px;align-items:start}
.item-master-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.item-master-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:2px}
@media(max-width:900px){.item-master-grid{grid-template-columns:1fr}.item-master-pair{grid-template-columns:1fr}}

.inv-items-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:12px}
.inv-items-table th{background:#f9f7f3;padding:8px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;color:#9ca3af;border-bottom:1px solid #e5e3dc}
.inv-items-table td{padding:6px 6px;border-bottom:1px solid #f5f3ee;vertical-align:middle}
.inv-items-table input,.inv-items-table select{background:#fff;border:1px solid #e5e3dc;border-radius:6px;padding:7px 8px;font-size:12px;width:100%;font-family:inherit;outline:none}
.inv-items-table input:focus,.inv-items-table select:focus{border-color:#059669}
.inv-items-table .col-desc{width:18%}
.inv-items-table .col-process{width:13%}
.inv-items-table .col-hsn{width:7%}
.inv-items-table .col-dim{width:6%}
.inv-items-table .col-vol{width:7%}
.inv-items-table .col-qty{width:6%}
.inv-items-table .col-uqc{width:7%}
.inv-items-table .col-rate{width:8%}
.inv-items-table .col-gst{width:7%}
.inv-items-table .col-amt{width:8%;font-weight:600;color:#111;padding-right:6px;white-space:nowrap}
.inv-items-table .col-del{width:3%;text-align:center}
.inv-subpane.quote-type-general .cad-import-box,
.inv-subpane.quote-type-general .col-process,
.inv-subpane.quote-type-general .col-dim,
.inv-subpane.quote-type-general .col-vol{display:none}
.inv-subpane.quote-type-general .col-desc{width:32%}
.inv-subpane.quote-type-general .col-hsn{width:12%}
.inv-subpane.quote-type-general .col-qty{width:10%}
.inv-subpane.quote-type-general .col-uqc{width:10%}
.inv-subpane.quote-type-general .col-rate{width:12%}
.inv-subpane.quote-type-general .col-gst{width:10%}
.inv-subpane.quote-type-general .col-amt{width:10%}
.cad-import-box{border:1px dashed #93c5fd;background:#eff6ff;border-radius:12px;padding:14px;margin:0 0 14px}
.cad-import-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.cad-import-title{font-weight:800;color:#1e40af;font-size:13px}
.cad-import-sub{font-size:12px;color:#475569;margin-top:4px;line-height:1.5}
.cad-rate-row{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:10px;align-items:end;margin-top:12px;padding:10px;background:#fff;border:1px solid #dbeafe;border-radius:8px}
.cad-rate-row label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;color:#64748b;margin-bottom:5px}
.cad-rate-row select{width:100%;height:38px;border:1px solid #ddd6fe;border-radius:8px;background:#fff;padding:0 10px;font-size:13px}
.cad-rate-help{font-size:11px;color:#64748b;line-height:1.35;padding-bottom:3px}
.cad-part-list{display:grid;gap:8px;margin-top:12px}
.cad-part{position:relative;background:#fff;border:1px solid #dbeafe;border-radius:8px;padding:10px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-size:12px}
.cad-part.child{margin-left:28px;border-left:3px solid #93c5fd}
.cad-level{display:inline-flex;align-items:center;gap:6px;margin-bottom:5px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#64748b}
.cad-level-badge{border:1px solid #dbeafe;background:#eff6ff;border-radius:999px;padding:2px 7px;color:#1d4ed8}
.cad-name-input{width:min(520px,100%);border:1px solid transparent;background:transparent;border-radius:6px;padding:4px 6px;margin-left:-6px;font:inherit;font-size:13px;font-weight:800;color:#111;outline:none}
.cad-name-input:hover,.cad-name-input:focus{border-color:#bfdbfe;background:#f8fbff}
.cad-meta{color:#64748b;margin-top:2px}
.cad-preview{display:none;position:absolute;left:42px;top:calc(100% - 4px);z-index:80;width:330px;background:#171427;border:1px solid #7c3aed;border-radius:10px;box-shadow:0 18px 38px rgba(15,23,42,.35);padding:10px}
.cad-name-wrap:hover .cad-preview,.cad-name-wrap:focus-within .cad-preview{display:block}
.cad-preview svg,.cad-preview img{width:100%;height:220px;display:block;background:#111;border-radius:7px;border:1px solid rgba(124,58,237,.35);object-fit:contain}
.cad-preview-title{font-size:11px;font-weight:800;color:#ddd6fe;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cad-preview-meta{font-size:10px;color:#a78bfa;margin-top:2px}
.inv-desc-preview-wrap{position:relative}
.inv-desc-preview-wrap:hover .cad-preview,.inv-desc-preview-wrap:focus-within .cad-preview{display:block}
.inv-desc-preview-wrap .cad-preview{left:0;top:100%}
.rate-master-grid{display:grid;grid-template-columns:300px 1fr;gap:16px;align-items:start}
.rate-list{display:grid;gap:10px}
.rate-group-card{background:#fff;border:1px solid #e5e3dc;border-radius:10px;padding:12px;cursor:pointer}
.rate-group-card.active{border-color:#059669;background:#f0fdf4}
.rate-service-row{display:grid;grid-template-columns:1.3fr .7fr .5fr .6fr .5fr auto;gap:8px;align-items:center;margin-bottom:8px}
.rate-service-row input{border:1px solid #e5e3dc;border-radius:7px;padding:8px;font:inherit;font-size:12px}
@media(max-width:760px){.rate-master-grid,.rate-service-row,.cad-rate-row{grid-template-columns:1fr}.cad-part{grid-template-columns:auto 1fr}.cad-part.child{margin-left:14px}.cad-preview{left:0;width:min(220px,80vw)}}
.btn-del-row{background:none;border:none;color:#dc2626;cursor:pointer;font-size:16px;padding:0 4px}
.btn-add-row{background:transparent;border:1px dashed #059669;color:#059669;border-radius:7px;padding:7px 16px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s}
.btn-add-row:hover{background:#f0fdf4}

.inv-totals{display:flex;justify-content:flex-end;margin-top:8px}
.inv-totals-box{background:#f9f7f3;border:1px solid #e5e3dc;border-radius:10px;padding:16px 20px;min-width:280px}
.inv-total-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:13px;color:#374151}
.inv-total-row.grand{border-top:2px solid #e5e3dc;margin-top:8px;padding-top:10px;font-weight:800;font-size:15px;color:#111}
.inv-total-row span:last-child{font-weight:600;text-align:right}

.inv-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}
.btn-inv-draft{background:#fff;border:1px solid #e5e3dc;color:#374151;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.btn-inv-draft:hover{border-color:#374151}
.btn-inv-preview{background:#059669;border:none;color:#fff;border-radius:8px;padding:10px 24px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-inv-preview:hover{background:#047857}
.btn-new-inv{background:#111;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;margin-bottom:16px}
.btn-new-inv:hover{background:#374151}
.btn-gstr1-dl{background:#1d4ed8;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;margin-bottom:16px}
.btn-gstr1-dl:hover{background:#1e40af}
.inv-action-row{display:flex;gap:10px;align-items:center;justify-content:flex-end}

.cust-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.cust-card{background:#fff;border:1px solid #e5e3dc;border-radius:12px;padding:16px 18px;transition:all .15s}
.cust-card:hover{border-color:#059669;box-shadow:0 2px 8px rgba(5,150,105,.08)}
.cust-name{font-size:14px;font-weight:700;color:#111;margin-bottom:4px}
.cust-gstin{font-size:11px;color:#059669;font-weight:600;margin-bottom:8px;font-family:monospace}
.cust-meta{font-size:11px;color:#9ca3af}
.cust-actions{display:flex;gap:6px;margin-top:12px}
.btn-cust-inv{flex:1;background:#111;color:#fff;border:none;border-radius:6px;padding:7px;font-size:11px;font-weight:700;cursor:pointer;font-family:inherit}
.btn-cust-edit{background:#fff;border:1px solid #e5e3dc;border-radius:6px;padding:7px 10px;font-size:12px;cursor:pointer;color:#6b7280}
.btn-add-cust{background:#fff;border:2px dashed #d1cfc8;border-radius:12px;padding:24px;text-align:center;cursor:pointer;color:#9ca3af;font-size:13px;font-weight:600;transition:all .15s}
.btn-add-cust:hover{border-color:#059669;color:#059669;background:#f0fdf4}

.inv-prototype-banner{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:12px 16px;margin-bottom:16px;font-size:12px;color:#92400e;display:flex;align-items:center;gap:8px}
