@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f3f5fb;--surface:#fff;--surface2:#f8f9fd;--text:#172033;--muted:#788198;--border:#e5e9f2;--primary:#6657e8;--primary2:#a855f7;--primary-soft:#efedff;--green:#13956c;--green-soft:#e4f8f0;--orange:#b97716;--orange-soft:#fff4df;--red:#d94d68;--red-soft:#ffebef;--shadow:0 8px 28px rgba(29,36,71,.055)}
[data-theme="dark"]{--bg:#10131c;--surface:#191d29;--surface2:#202534;--text:#f1f3fa;--muted:#9ca5bb;--border:#2b3142;--primary:#9589ff;--primary2:#c084fc;--primary-soft:#302b4c;--green:#4bd1a3;--green-soft:#193b34;--orange:#f5bf62;--orange-soft:#3a3020;--red:#ff8295;--red-soft:#432630;--shadow:0 8px 28px rgba(0,0,0,.16)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.hidden{display:none!important}
.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,.85fr);background:var(--surface)}.login-art{padding:38px 7%;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 15% 15%,#9b8aff55,transparent 34%),radial-gradient(circle at 85% 75%,#b65dfb33,transparent 28%),linear-gradient(140deg,#17172c,#242049 60%,#332258);color:#fff;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:460px;height:460px;border:1px solid #ffffff12;border-radius:50%;right:-180px;top:15%;box-shadow:0 0 0 55px #ffffff06,0 0 0 110px #ffffff04}.login-brand,.brand{display:flex;align-items:center;gap:11px;position:relative;z-index:1}.brand-mark{width:39px;height:39px;border-radius:13px;background:linear-gradient(135deg,#6557e8,#bd68f4);color:white;display:grid;place-items:center;font-family:Manrope;font-weight:800;font-size:22px;box-shadow:0 5px 14px #7d69ec44}.login-brand b,.brand b{display:block;font-family:Manrope;font-size:16px;letter-spacing:-.5px}.login-brand small,.brand small{display:block;font-size:10px;color:#aeb1d0;margin-top:3px}.login-hero{max-width:610px;position:relative;z-index:1;padding:55px 0}.eyebrow{font-size:10px;color:var(--primary);letter-spacing:1.3px;font-weight:800;margin:0 0 8px}.login-hero .eyebrow{color:#c6baff}.login-hero h1{font:800 clamp(34px,4.4vw,57px)/1.12 Manrope;letter-spacing:-2px;margin:18px 0}.login-hero h1 em{font-style:normal;background:linear-gradient(90deg,#c2a5ff,#edb9ff);color:transparent;background-clip:text}.login-hero p{max-width:460px;color:#c7c8dc;line-height:1.8;font-size:14px}.login-art-stats{display:flex;gap:36px;margin-top:45px}.login-art-stats b{display:block;font-size:12px}.login-art-stats small{display:block;color:#aaaed0;font-size:10px;margin-top:6px}.login-foot{color:#9fa2c1;font-size:10px;position:relative;z-index:1}.login-panel{display:grid;place-items:center;padding:35px}.login-form-wrap{width:min(390px,100%)}.login-form-wrap h2{font:800 27px Manrope;margin:0 0 10px;letter-spacing:-.8px}.muted{color:var(--muted)}.login-form-wrap>p:not(.eyebrow){font-size:12px;line-height:1.6;margin-bottom:26px}.login-mobile-brand{display:none}.field{display:flex;flex-direction:column;gap:7px;min-width:0;margin-bottom:14px}.field label{font-size:10px;font-weight:700;color:var(--muted)}.field input,.field select,.field textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);color:var(--text);font-size:12px}.field textarea{min-height:72px;resize:vertical}.field-help{font-size:9px;color:var(--muted);line-height:1.4}.btn{border:1px solid var(--border);border-radius:9px;padding:10px 14px;background:var(--surface);color:var(--text);font-weight:700;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:transform .15s,border-color .15s,filter .15s}.btn:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--primary),#8664ed);color:white;border-color:transparent;box-shadow:0 5px 15px #7564e52b}.btn.primary:hover{filter:brightness(1.07);color:white}.btn.wide{width:100%;padding:12px}.btn.danger{color:var(--red)}.btn.small{padding:7px 10px;font-size:10px}.form-error{color:var(--red);font-size:11px;margin-top:10px;min-height:14px}.login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px;margin:20px 0}.login-divider:before,.login-divider:after{content:"";height:1px;background:var(--border);flex:1}.demo-credentials{margin-top:25px;background:var(--surface2);border:1px solid var(--border);padding:13px;border-radius:10px;display:flex;flex-direction:column;gap:5px;font-size:10px;color:var(--muted)}.demo-credentials b{color:var(--text);margin-bottom:3px}.demo-credentials small{font-size:9px;color:var(--orange);line-height:1.5;margin-top:4px}
.app-shell{display:flex;min-height:100vh}.sidebar{width:252px;flex:0 0 252px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:23px 14px 15px;min-height:100vh}.brand{padding:0 10px 24px}.workspace{border:1px solid var(--border);border-radius:12px;padding:12px 10px;display:flex;align-items:center;gap:8px;margin:0 2px 22px;min-width:0;background:var(--surface);color:var(--text);text-align:left;width:calc(100% - 4px)}.workspace>div:nth-child(2){min-width:0;flex:1}.workspace b{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.workspace-dot{width:8px;height:8px;background:#7b6df0;border-radius:50%;flex-shrink:0}.chevron{color:var(--muted)}.nav{display:flex;flex-direction:column;gap:3px;flex:1}.nav-label{font-size:9px;letter-spacing:1.15px;color:var(--muted);font-weight:700;padding:13px 10px 7px}.nav-link{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:12px;text-align:left;padding:10px 11px;border-radius:9px;font-size:12px;font-weight:600;width:100%;transition:.15s}.nav-link>span:first-child{font-size:17px;width:18px;text-align:center}.nav-link>span:nth-child(2){flex:1}.nav-link em{font-style:normal;font-size:10px;background:var(--surface2);border-radius:6px;padding:2px 6px}.nav-link:hover{background:var(--surface2);color:var(--text)}.nav-link.active{background:var(--primary-soft);color:var(--primary)}.sidebar-bottom{border-top:1px solid var(--border);padding:15px 5px 0;display:flex;align-items:center;gap:9px;margin-top:15px}.avatar{width:34px;height:34px;display:grid;place-items:center;background:#f7d8ed;color:#893d78;border-radius:50%;font-weight:700;font-size:11px;flex-shrink:0}.user-meta{flex:1;min-width:0}.user-meta b{font-size:11px;display:block}.user-meta small{font-size:9px;color:var(--muted);display:block;margin-top:4px}.main{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid var(--border);background:var(--surface)}.top-left,.top-actions{display:flex;align-items:center;gap:15px}.breadcrumbs{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.breadcrumbs b{color:var(--text);font-weight:600}.top-actions{gap:10px}.demo-pill{font-size:9px;color:var(--orange);background:var(--orange-soft);padding:7px 10px;border-radius:20px;display:flex;align-items:center;gap:6px;font-weight:800;letter-spacing:.5px}.demo-pill span{width:6px;height:6px;border-radius:50%;background:var(--orange)}.icon-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-size:16px;flex-shrink:0}.icon-btn:hover{border-color:var(--primary);color:var(--primary)}#languageSelect{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px;border-radius:8px}.help-btn{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:7px;font-size:12px}.content{padding:29px 34px;flex:1;max-width:1700px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head h1{font:800 25px Manrope,sans-serif;letter-spacing:-.8px;margin:0}.page-head p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:19px}.stat-card,.panel,.table-panel,.welcome-card,.settings-card,.plan-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.stat-card{padding:17px;position:relative;overflow:hidden;animation:riseIn .5s both}.stat-card:after{content:"";position:absolute;width:100px;height:100px;right:-44px;bottom:-55px;border-radius:50%;background:var(--primary-soft);opacity:.7}.stat-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;font-weight:600;position:relative;z-index:1}.stat-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:17px;background:var(--primary-soft);color:var(--primary)}.stat-value{font:800 23px Manrope;letter-spacing:-.8px;margin:12px 0 7px;position:relative;z-index:1}.stat-foot{font-size:10px;color:var(--muted);position:relative;z-index:1}.positive{color:var(--green);font-weight:700}@keyframes riseIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes growBar{from{transform:scaleY(.08);opacity:.4}to{transform:scaleY(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:17px}.panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.panel-head h3{font:700 14px Manrope;margin:0}.panel-head p{font-size:10px;color:var(--muted);margin:5px 0 0}.link-btn{border:0;background:transparent;color:var(--primary);font-weight:700;font-size:11px}.chart-wrap{height:210px;display:flex;gap:14px;align-items:stretch}.chart-y{display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:9px;padding:3px 0 20px}.chart-area{position:relative;flex:1;display:flex;flex-direction:column;min-width:0}.chart-grid{position:absolute;inset:0 0 22px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 48px,var(--border) 49px,var(--border) 50px)}.chart-bars{height:calc(100% - 22px);display:flex;align-items:end;gap:clamp(5px,1.3vw,15px);position:relative;z-index:1;padding:0 7px}.bar-group{height:100%;display:flex;align-items:end;justify-content:center;gap:4px;flex:1;position:relative;min-width:0}.bar{width:min(16px,40%);border-radius:5px 5px 0 0;background:linear-gradient(180deg,var(--primary2),var(--primary));min-height:3px;transform-origin:bottom;animation:growBar .8s cubic-bezier(.2,.7,.2,1) both;box-shadow:0 3px 10px #7463e522}.bar.alt{background:linear-gradient(180deg,#cfc9ff,#aaa1f8);animation-delay:.08s}.chart-labels{display:flex;justify-content:space-around;padding-top:8px;color:var(--muted);font-size:9px;position:relative;z-index:2}.donut-area{display:flex;align-items:center;justify-content:center;gap:22px;min-height:210px}.donut{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--primary) 0 53%,var(--green) 53% 75%,#f4b85c 75% 91%,#cfd4e4 91% 100%);position:relative;animation:donutIn .8s ease-out both}.donut:after{content:"";position:absolute;inset:22px;background:var(--surface);border-radius:50%}.donut-center{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.donut-center b{font:800 23px Manrope}.donut-center small{font-size:9px;color:var(--muted)}@keyframes donutIn{from{transform:rotate(-45deg) scale(.85);opacity:.4}to{transform:rotate(0) scale(1);opacity:1}}.legend{display:flex;flex-direction:column;gap:12px}.legend-row{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.legend-row b{color:var(--text);margin-left:auto;padding-left:12px}.legend-dot{width:8px;height:8px;border-radius:3px;background:var(--primary)}.legend-dot.green{background:var(--green)}.legend-dot.orange{background:#f4b85c}.legend-dot.gray{background:#cfd4e4}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick-action{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--surface);color:var(--text);transition:.15s}.quick-action:hover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-2px)}.qa-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--primary-soft);color:var(--primary);font-size:16px;flex-shrink:0}.quick-action b{display:block;font-size:11px}.quick-action small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.table-panel{overflow:hidden;margin-top:18px}.table-toolbar{padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--border)}.table-toolbar h3{font:700 14px Manrope;margin:0}.toolbar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search input{width:220px;max-width:100%;padding:9px 11px;border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:8px;font-size:11px}.filter-select{padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:11px}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:var(--surface2);color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.5px;text-align:left;padding:12px 18px;font-weight:800}td{padding:12px 18px;border-top:1px solid var(--border);font-size:11px}tbody tr:hover{background:var(--surface2)}.doc-ref{font-weight:800;color:var(--primary)}.client-cell b{display:block;font-size:11px}.client-cell small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.money{font-weight:700;font-variant-numeric:tabular-nums}.status{display:inline-flex;padding:5px 8px;border-radius:20px;font-size:9px;font-weight:800;background:var(--surface2);color:var(--muted)}.status.paid,.status.accepted,.status.confirmed{background:var(--green-soft);color:var(--green)}.status.pending,.status.sent,.status.partially_paid{background:var(--orange-soft);color:var(--orange)}.status.draft{background:var(--primary-soft);color:var(--primary)}.status.cancelled,.status.rejected,.status.overdue{background:var(--red-soft);color:var(--red)}.row-actions{display:flex;gap:5px}.mini-btn{border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);padding:5px 8px;font-size:10px}.mini-btn:hover{color:var(--primary);border-color:var(--primary)}.mini-btn:disabled{opacity:.35;cursor:not-allowed}.empty{padding:45px 20px;text-align:center;color:var(--muted)}.empty strong{display:block;color:var(--text);margin:10px}.welcome-card{padding:22px;background:linear-gradient(120deg,var(--surface),var(--primary-soft));margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:18px;overflow:hidden;position:relative}.welcome-card:after{content:"";position:absolute;width:180px;height:180px;border:1px solid var(--primary);opacity:.13;border-radius:50%;right:20px;top:-70px;box-shadow:0 0 0 25px var(--primary-soft),0 0 0 50px #a99fff15}.welcome-card h2{font:800 19px Manrope;margin:0 0 7px}.welcome-card p{color:var(--muted);font-size:11px;line-height:1.5;margin:0}.welcome-symbol{font-size:42px;color:var(--primary);opacity:.8;position:relative;z-index:1}.notice{padding:13px 15px;border:1px solid var(--border);background:var(--surface2);border-radius:10px;color:var(--muted);font-size:11px;line-height:1.5;margin-bottom:16px}.notice strong{color:var(--text)}.notice.warning{border-color:#edcf95;background:var(--orange-soft);color:var(--text)}.settings-card{padding:21px;margin-bottom:15px}.settings-card h3{font:700 14px Manrope;margin:0 0 5px}.settings-card>p{color:var(--muted);font-size:11px;margin:0 0 18px;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.split-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:18px}.logo-upload{display:flex;align-items:center;gap:15px;padding:14px;border:1px dashed var(--border);border-radius:11px;margin-bottom:18px}.logo-preview{width:78px;height:78px;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:10px;overflow:hidden;color:var(--muted);font-size:10px;text-align:center;flex-shrink:0}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.bank-account{display:grid;grid-template-columns:1.1fr 1fr 1.2fr auto;gap:8px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:10px;margin-bottom:10px}.bank-account .field{margin:0}.bank-account .field input{padding:9px}.doc-preview{background:white;color:#1a1a1a;padding:16mm 15mm;border:1px solid #ddd;width:210mm;min-height:297mm;margin:0 auto;font-family:Arial,sans-serif;font-size:11pt;box-shadow:0 10px 35px #0001;position:relative}.doc-preview .doc-header{display:flex;justify-content:space-between;gap:25px;border-bottom:2px solid var(--doc-accent,#6557e8);padding-bottom:16px}.doc-preview .doc-brand{display:flex;align-items:center;gap:12px}.doc-preview .doc-brand img{max-width:80px;max-height:60px;object-fit:contain}.doc-preview h2{font-size:18pt;color:var(--doc-accent,#6557e8);margin:0 0 6px}.doc-preview .doc-number{font-size:17pt;font-weight:800;margin:18px 0}.doc-preview table{margin:18px 0;white-space:normal}.doc-preview th{background:#f1efff;color:#333}.doc-preview td{border-bottom:1px solid #ddd;white-space:normal}.doc-preview .doc-total{margin-left:auto;width:75mm}.doc-preview .doc-total div{display:flex;justify-content:space-between;padding:5px}.doc-preview .doc-total .grand{font-weight:bold;border-top:2px solid var(--doc-accent,#6557e8);font-size:14pt}.doc-preview .doc-footer{margin-top:30px;border-top:1px solid #ddd;padding-top:12px;color:#555;font-size:9pt}.doc-preview .bank-list{display:flex;gap:25px;flex-wrap:wrap;margin-top:16px}.doc-preview .bank-list>div{border:1px solid #ddd;padding:8px 10px;border-radius:4px;min-width:45%}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.plan-card{padding:21px}.plan-card.featured{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.plan-card h3{font:800 16px Manrope;margin:0}.plan-price{font:800 25px Manrope;margin:17px 0 5px}.plan-price small{font-size:10px;color:var(--muted);font-weight:500}.plan-card p,.plan-card li{font-size:11px;color:var(--muted);line-height:1.6}.plan-card ul{padding-left:17px;margin:15px 0 20px}.plan-card .btn{width:100%}.admin-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-kpi{padding:15px;border:1px solid var(--border);border-radius:11px;background:var(--surface2)}.admin-kpi small{display:block;color:var(--muted);font-size:10px}.admin-kpi b{display:block;font:800 22px Manrope;margin-top:8px}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.security-item{padding:13px;border:1px solid var(--border);border-radius:10px;display:flex;gap:10px}.security-item b{font-size:11px;display:block}.security-item small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:4px}.modal-backdrop{position:fixed;inset:0;background:#10132199;display:grid;place-items:center;padding:20px;z-index:50;overflow:auto}.modal{width:min(1000px,100%);max-height:calc(100vh - 40px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:17px;box-shadow:0 20px 80px #0003;padding:23px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.modal-head h2{font:800 21px Manrope;margin:0}.modal-head .eyebrow{margin-bottom:5px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.toast{position:fixed;bottom:25px;right:25px;background:var(--text);color:var(--surface);padding:12px 17px;border-radius:10px;box-shadow:var(--shadow);z-index:90;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s;font-size:12px}.toast.show{opacity:1;transform:translateY(0)}footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:15px 34px;color:var(--muted);font-size:9px}.secure-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%}.mobile-menu{display:none}.form-error{color:var(--red)}.tagline{font-size:10px;color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:7px;background:var(--surface2);font-size:9px;color:var(--muted)}.modal .doc-preview{transform-origin:top left;max-width:100%;overflow:auto}.lock-note{font-size:9px;color:var(--orange);display:block;margin-top:4px}.empty-state{padding:35px;text-align:center;color:var(--muted)}
@page{size:A4;margin:0} @media print{body{background:white!important}.app-shell,.login-screen,.modal-head,.modal-actions,.modal-backdrop{display:none!important}.doc-preview{display:block!important;border:0;margin:0;width:210mm;min-height:297mm;box-shadow:none;padding:16mm 15mm;page-break-after:always}.doc-preview:last-child{page-break-after:auto}}
@media(max-width:1120px){.sidebar{width:220px;flex-basis:220px}.content{padding:24px}.topbar{padding:0 24px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.plan-grid{grid-template-columns:1fr}.login-screen{grid-template-columns:1fr 1fr}.login-art{padding:30px 5%}}
@media(max-width:760px){.login-screen{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100vh;padding:25px}.login-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:35px}.sidebar{position:fixed;z-index:40;left:-270px;top:0;bottom:0;transition:left .2s;width:252px}.sidebar.open{left:0;box-shadow:10px 0 40px #0002}.mobile-menu{display:grid}.topbar{height:60px;padding:0 14px}.top-actions{gap:6px}.demo-pill{display:none}.help-btn span{display:none}.breadcrumbs{font-size:10px;gap:6px}.content{padding:19px 14px}.page-head{flex-direction:column;align-items:stretch}.page-head>.btn,.page-head>div>.btn{align-self:flex-start}.stats-grid{gap:9px}.stat-card{padding:13px}.stat-value{font-size:19px}.stat-top{font-size:10px}.split-layout{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.table-panel{overflow-x:auto}.table-toolbar{align-items:flex-start;flex-direction:column}.toolbar-right{width:100%}.search{flex:1}.search input{width:100%}.welcome-symbol{display:none}.admin-kpis,.security-grid{grid-template-columns:1fr}.modal{padding:17px}.modal-backdrop{padding:8px}.doc-preview{width:210mm;max-width:none;padding:12mm}.bank-account{grid-template-columns:1fr 1fr}.login-art-stats{gap:15px}footer{padding:13px 14px;flex-direction:column}}

/* Fiscal A4 layout based on the user's supplied AT-known invoice model */
.doc-preview.fiscal-document{width:210mm;min-height:297mm;padding:7mm 7mm 8mm;margin:0 auto;background:#fff;color:#111;font-family:Arial,sans-serif;font-size:8pt;display:flex;flex-direction:column;box-shadow:0 10px 35px #0001}
.fiscal-logo{height:24mm;display:flex;align-items:flex-start;margin-bottom:2mm}.fiscal-logo img{max-width:76mm;max-height:22mm;object-fit:contain;object-position:left top}
.fiscal-top{display:grid;grid-template-columns:1fr 38%;gap:18mm;min-height:29mm;font-size:7.5pt}.fiscal-top h2{font-size:11pt;margin:0 0 3mm;color:#222}.fiscal-top h3{font-size:9pt;margin:2mm 0}.fiscal-top p{margin:1mm 0;line-height:1.35}
.fiscal-invoice-box{border:1.5px solid #111;padding:2mm 2.5mm;margin-top:2mm}.fiscal-invoice-box h3{font-size:9pt;margin:0 0 2mm}.fiscal-invoice-box h3 small{font-size:8pt;font-weight:normal}
.fiscal-meta{display:grid;grid-template-columns:17% 17% 1fr;gap:3mm;border-bottom:1px solid #333;padding-bottom:2mm}.fiscal-meta div{display:flex;flex-direction:column;gap:1mm}.fiscal-lines{width:100%;border-collapse:collapse;margin:2mm 0 0!important;font-size:7pt}.fiscal-lines th{background:#fff!important;color:#222!important;text-transform:none!important;letter-spacing:0!important;padding:1.5mm 1mm!important;border-top:1px solid #333;border-bottom:1px solid #333;text-align:left}.fiscal-lines td{padding:1.5mm 1mm!important;border-bottom:0!important;font-size:7pt;vertical-align:top}
.fiscal-spacer{flex:1;min-height:55mm}
.fiscal-summary{border:1.5px solid #111;padding:3mm;display:grid;grid-template-columns:62% 1fr;gap:8mm;margin-top:0}.fiscal-summary h4,.fiscal-banks h4{font-size:7.5pt;margin:0 0 2mm;border-bottom:1px solid #555;padding-bottom:1mm}.fiscal-summary table{font-size:6.5pt;margin:0!important}.fiscal-summary th,.fiscal-summary td{background:#fff!important;color:#222!important;text-transform:none!important;letter-spacing:0!important;padding:1mm!important;border-bottom:0!important;font-size:6.5pt}.fiscal-summary dl{display:grid;grid-template-columns:1fr auto;gap:1mm;margin:0;font-size:7pt}.fiscal-summary dt,.fiscal-summary dd{margin:0}.fiscal-summary dd{text-align:right}.fiscal-grand{font-weight:bold;border-top:1px solid #222;padding-top:1mm!important}
.fiscal-banks{margin-top:3mm;font-size:7pt}.fiscal-bank-list{display:flex;gap:12mm;flex-wrap:wrap}.fiscal-bank-list>div{min-width:42%;padding:1mm 0}.fiscal-conditions{border-top:1px solid #333;border-bottom:1px solid #333;padding:3mm 0;margin-top:3mm;font-size:7pt}.fiscal-footer{display:flex;justify-content:space-between;border-top:1px solid #777;margin-top:auto;padding-top:2mm;font-size:6.5pt}
@media print{.doc-preview.fiscal-document{box-shadow:none;margin:0;page-break-after:always}.fiscal-spacer{min-height:55mm}}

/* Executive SaaS workspace and clean fiscal document layout */
:root{--navy:#101827;--navy2:#172338;--accent:#6957e8;--line:#d6d8de}
.sidebar{background:linear-gradient(180deg,#111827 0%,#172338 100%);color:#dbe5f5;border-right:1px solid #263348}
.sidebar .brand,.sidebar .company-switch{border-color:#2b374b}
.nav-label{color:#8393ad;letter-spacing:1.3px;font-weight:700;font-size:10px}
.nav-link{border-radius:9px;margin:3px 8px;padding:11px 12px;color:#c5d1e4;transition:background .22s,transform .22s,color .22s}
.nav-link:hover{background:#243149;color:#fff;transform:translateX(2px)}
.nav-link.active{background:linear-gradient(100deg,#6657df,#5144b6);color:white;box-shadow:0 7px 18px #5444bd38}
.nav-link em{border-radius:6px;background:#ffffff18}
.main,.workspace{background:var(--bg)}
.card,.panel,.table-panel,.metric-card,.chart-card{border:1px solid #e6eaf1;border-radius:14px;box-shadow:0 5px 20px #16213a08}
.page-head h1{letter-spacing:-.5px}
.btn{border-radius:9px;box-shadow:0 3px 8px #6657e815}
input,select,textarea{border-radius:8px}
.doc-preview.fiscal-document{box-sizing:border-box;width:210mm;min-height:297mm;padding:10mm 8mm 8mm;margin:0 auto;background:#fff;color:#111;font-family:"Times New Roman",serif;font-size:8pt;display:flex;flex-direction:column;box-shadow:0 8px 30px #10182714}
.fiscal-logo{height:24mm;display:flex;align-items:flex-start;margin-bottom:3mm}.fiscal-logo img{max-width:70mm;max-height:22mm;object-fit:contain;object-position:left top}
.fiscal-top{display:grid;grid-template-columns:1fr 28%;gap:14mm;min-height:27mm;font-size:8pt}.fiscal-top section{display:flex;flex-direction:column;align-items:flex-start}.fiscal-top b{font-size:9pt}.fiscal-top p{margin:2mm 0;line-height:1.3}.fiscal-top small{font-size:8pt}.fiscal-client{margin-top:2mm}
.fiscal-title{border-bottom:1px solid #222;padding:2mm 0 1.5mm;font-size:9pt}.fiscal-title b{margin-left:2mm;font-size:8pt}
.fiscal-meta{display:grid;grid-template-columns:20% 20% 1fr;gap:3mm;padding:1.5mm 0 2mm;border-bottom:1px solid #222;font-size:8pt}.fiscal-meta div{display:flex;flex-direction:column;gap:1mm}.fiscal-meta b{border-bottom:1px solid #333;padding-bottom:1mm}
.fiscal-lines{width:100%;border-collapse:collapse!important;margin:0!important;font-size:7.5pt;border:0!important}.fiscal-lines th{background:white!important;color:#111!important;text-transform:none!important;letter-spacing:0!important;padding:1.5mm 1mm!important;border:0!important;border-bottom:1px solid #222!important;border-top:1px solid #222!important;text-align:left;font-weight:bold}.fiscal-lines td{padding:1.2mm 1mm!important;border:0!important;font-size:7.5pt;vertical-align:top}.fiscal-lines tbody tr+tr td{border-top:0!important}
.fiscal-spacer{flex:1;min-height:45mm}
.fiscal-summary{border:0!important;border-top:1px solid #777!important;padding:2mm 0 0!important;display:grid;grid-template-columns:65% 1fr;gap:10mm;margin-top:0}.fiscal-summary h4,.fiscal-banks h4{font-size:8pt;margin:0 0 2mm;border-bottom:1px solid #333;padding-bottom:1.5mm}.fiscal-summary table{width:100%;font-size:7pt;border-collapse:collapse;margin:0!important}.fiscal-summary th,.fiscal-summary td{background:white!important;color:#111!important;text-transform:none!important;letter-spacing:0!important;padding:1mm!important;border:0!important;font-size:7pt}.fiscal-summary th{border-bottom:1px solid #555!important}.fiscal-summary dl{display:grid;grid-template-columns:1fr auto;gap:1mm;margin:0;font-size:7.5pt}.fiscal-summary dt,.fiscal-summary dd{margin:0}.fiscal-summary dd{text-align:right}.fiscal-grand{font-weight:bold;border-top:1px solid #222!important;padding-top:1mm!important}
.fiscal-banks{margin-top:3mm;font-size:7.5pt;border-top:1px solid #777;padding-top:2mm}.fiscal-bank-list{display:flex;gap:12mm;flex-wrap:wrap}.fiscal-bank{min-width:42%;padding:1mm 0}.fiscal-conditions{border-top:1px solid #222;border-bottom:1px solid #222;padding:3mm 0;margin-top:3mm;font-size:7.5pt}.fiscal-footer{display:flex;justify-content:space-between;border-top:0;margin-top:auto;padding-top:2mm;font-size:7pt}
@media print{.doc-preview.fiscal-document{box-shadow:none;margin:0;width:210mm;min-height:297mm}.fiscal-spacer{min-height:45mm}}
/* Document item entry: compact, aligned columns */
#lineBody tr{display:table-row!important}
#lineBody td{padding:8px 6px!important;vertical-align:middle}
#lineBody input,#lineBody select{box-sizing:border-box;min-width:0!important;width:100%!important;height:36px;margin:0!important}
#lineBody .productPick{max-width:none!important;margin-bottom:5px!important}
#lineBody .ld{min-width:150px!important}

.nav-sub{margin-left:18px!important;padding-top:8px!important;padding-bottom:8px!important;font-size:12px!important}
.module-panel{margin-top:18px;padding:20px}.module-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:780px;margin:0 auto;padding:32px}.module-empty p{max-width:560px;color:var(--muted,#7b8498);line-height:1.7}.module-symbol{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#6c5ce7,#a855f7);color:white;font-size:26px;box-shadow:0 12px 30px #6c5ce735}.module-empty .quick-actions{width:100%;margin-top:20px}

/* Navigation groups behave as expandable ERP submenus */
.nav-label.nav-group-toggle{cursor:pointer;position:relative;padding-right:22px;user-select:none;transition:color .2s}
.nav-label.nav-group-toggle:after{content:"⌄";position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:13px;transition:transform .2s}
.nav-label.nav-group-toggle.collapsed:after{transform:translateY(-50%) rotate(-90deg)}
.nav-label.nav-group-toggle:hover{color:#e7e9ff}
.nav-link.nav-hidden{display:none!important}
.nav-link.nav-sub{margin-left:18px!important;padding-top:8px!important;padding-bottom:8px!important;font-size:12px!important;border-left:1px solid #35435b}
.nav-group-toggle{margin-top:10px}
.chart-bars .bar{transition:height .55s cubic-bezier(.2,.8,.2,1);border-radius:5px 5px 1px 1px}
.chart-bars .bar-group:hover .bar{filter:brightness(1.15);transform:scaleX(1.06);transform-origin:bottom;cursor:pointer}
.dashboard-grid{align-items:stretch}
.welcome-card{border-radius:18px;background:radial-gradient(circle at 88% 15%,#9b8cff66,transparent 28%),linear-gradient(120deg,#1c2540,#41388e 65%,#6556d9);box-shadow:0 14px 35px #2d286b24}
.stats-grid .stat-card,.stats-grid .metric-card{transition:transform .22s,box-shadow .22s}
.stats-grid .stat-card:hover,.stats-grid .metric-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #18233a13}
.panel{transition:box-shadow .2s,transform .2s}
.panel:hover{box-shadow:0 10px 28px #18233a0c}

/* Separate fiscal receipt template: receipt is not an invoice */
.doc-preview.fiscal-receipt{font-family:"Times New Roman",serif;color:#111;background:#fff;font-size:8pt}
.fiscal-receipt .receipt-parties{display:grid;grid-template-columns:1fr 30%;gap:14mm;min-height:30mm;font-size:8pt}
.fiscal-receipt .receipt-parties section{display:flex;flex-direction:column;align-items:flex-start}
.fiscal-receipt .receipt-parties b{font-size:8pt}
.fiscal-receipt .receipt-parties p{margin:2mm 0;line-height:1.35}
.fiscal-receipt .receipt-heading{font-size:9pt;margin:2mm 0 0;padding:2mm 0;border-bottom:1px solid #222}
.fiscal-receipt .receipt-heading b{font-size:8pt}
.fiscal-receipt .receipt-payment-meta{display:grid;grid-template-columns:15% 16% 18% 1fr 16%;gap:2mm;padding:2mm 0;border-bottom:1px solid #222;font-size:7pt}
.fiscal-receipt .receipt-payment-meta div{display:flex;flex-direction:column;gap:1mm;min-width:0}
.fiscal-receipt .receipt-payment-meta b{border-bottom:1px solid #333;padding-bottom:1mm}
.fiscal-receipt .receipt-payment-meta span{overflow-wrap:anywhere}
.fiscal-receipt .receipt-invoices{width:100%;border-collapse:collapse;margin-top:4mm!important;font-size:7pt}
.fiscal-receipt .receipt-invoices th{font-weight:bold;text-align:left;border-bottom:1px solid #222;padding:1.5mm!important}
.fiscal-receipt .receipt-invoices td{padding:1.5mm!important;border:0!important}
.fiscal-receipt .receipt-invoices tbody tr+tr td{border-top:1px solid #888!important}
.fiscal-receipt .receipt-total-row{font-weight:bold}
.fiscal-receipt .receipt-summary{width:62mm;margin:8mm 0 0 auto;font-size:7.5pt}
.fiscal-receipt .receipt-summary h4{border-bottom:1px solid #333;margin:0 0 2mm;padding-bottom:1mm}
.fiscal-receipt .receipt-summary div{display:flex;justify-content:space-between;padding:1mm 0}
.fiscal-receipt .receipt-words{margin-top:16mm;font-size:8pt}
.fiscal-receipt .receipt-signature{height:55mm;display:flex;align-items:center;justify-content:center}
.fiscal-receipt .receipt-signature img{max-width:85mm;max-height:42mm;object-fit:contain}
.fiscal-receipt .receipt-footer{margin-top:auto;border-top:1px solid #777;padding-top:2mm;display:flex;justify-content:space-between;font:7pt Arial,sans-serif}

/* XBS Stellix brand-aligned BI dashboard */
:root{--chart-grid:#e7e5f5}
[data-theme="dark"]{--chart-grid:#33354b}
.welcome-card{background:radial-gradient(circle at 90% 12%,#a58bff55,transparent 24%),linear-gradient(115deg,#100d1b 0%,#261846 42%,#6045bd 100%);border:1px solid #6553b8}
.welcome-card .eyebrow{color:#c7baff;letter-spacing:1.5px}
.welcome-card h2{color:#fff}.welcome-card p{color:#d8d1f4}
.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bi-kpi{position:relative;overflow:hidden;min-height:116px;padding:16px;border:1px solid var(--border);border-radius:13px;background:linear-gradient(140deg,var(--surface),var(--surface2));box-shadow:var(--shadow);animation:kpiEnter .55s both;animation-delay:var(--kpi-delay)}
.bi-kpi:after{content:"";position:absolute;width:80px;height:80px;right:-34px;bottom:-40px;border-radius:50%;background:#8b5cf622}
.bi-kpi-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:700}.bi-kpi-top i{font-style:normal;background:#8b5cf625;color:var(--primary2);border-radius:7px;padding:6px 8px}
.bi-kpi strong{display:block;font-size:clamp(15px,1.2vw,22px);letter-spacing:-.5px;margin-top:12px;color:var(--text);font-variant-numeric:tabular-nums}
.bi-kpi small{display:block;color:var(--muted);font-size:10px;margin-top:5px}
.kpi-spark{height:22px;display:flex;align-items:flex-end;gap:3px;position:absolute;right:12px;bottom:10px;opacity:.45}
.kpi-spark span{display:block;width:3px;border-radius:4px 4px 0 0;background:linear-gradient(#b28aff,#6657e8);animation:sparkRise .8s both}
.bi-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:14px;margin-top:14px}
.bi-bottom-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}
.bi-panel{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px;box-shadow:var(--shadow);color:var(--text)}
.bi-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.bi-panel-head h3{margin:5px 0 4px;font-size:15px;letter-spacing:-.3px}.bi-panel-head p{margin:0;color:var(--muted);font-size:10px}
.bi-eyebrow{font-size:9px;font-weight:800;letter-spacing:1.2px;color:var(--primary2)}
.bi-chip{font-size:9px;color:var(--primary2);background:var(--primary-soft);padding:6px 8px;border-radius:6px}
.bi-chart-summary{display:flex;align-items:baseline;gap:10px;margin:16px 0 2px}.bi-chart-summary strong{font-size:21px;letter-spacing:-.5px}.bi-chart-summary span{font-size:10px;color:var(--muted)}.bi-chart-summary .bi-trend{margin-left:auto;color:var(--green)}
.bi-svg-chart{width:100%;overflow:hidden}.bi-svg-chart svg{display:block;width:100%;height:auto;min-height:130px;overflow:visible}.bi-svg-chart polyline{stroke-dasharray:900;stroke-dashoffset:900;animation:drawLine 1.6s ease-out forwards}.bi-svg-chart circle{animation:dotIn .4s both;transition:r .2s}.bi-svg-chart circle:hover{r:6}
.bi-month-labels{display:grid;grid-template-columns:repeat(12,1fr);gap:2px;color:var(--muted);font-size:9px;text-align:center}.bi-chart-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--border);margin-top:10px;padding-top:10px;color:var(--muted);font-size:9px}
.bi-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#8b75ff}.bi-dot.purple{background:#9b7cff}.bi-dot.green{background:#45c6a2}.bi-dot.orange{background:#f4b85c}.bi-dot.gray{background:#aeb5ca}.bi-dot.red{background:#e777a7}
.bi-wallet-content{display:flex;align-items:center;justify-content:center;gap:20px;min-height:230px}.bi-donut{width:142px;height:142px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;position:relative;animation:donutIn .8s both}.bi-donut:before{content:"";position:absolute;inset:15px;border-radius:50%;background:var(--surface)}.bi-donut>div{position:relative;display:flex;flex-direction:column;align-items:center}.bi-donut strong{font-size:25px}.bi-donut small{font-size:9px;color:var(--muted)}
.bi-legend{display:flex;flex-direction:column;gap:13px;min-width:125px}.bi-legend div{display:grid;grid-template-columns:10px 1fr auto;gap:6px;align-items:center;font-size:10px}.bi-legend .bi-dot{margin:0}.bi-legend span{color:var(--muted)}.bi-legend b{font-size:10px}
.bi-progress-row{margin-top:19px}.bi-progress-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:11px;margin-bottom:7px}.bi-progress-row span{color:var(--muted)}.bi-progress-row b{font-size:11px}.bi-progress{height:7px;border-radius:99px;background:var(--surface2);overflow:hidden}.bi-progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#8b5cf6,#c084fc);animation:progressIn .9s both}
.bi-footnote{margin-top:18px;font-size:9px;line-height:1.6;color:var(--muted)}
.bi-cash-row{display:flex;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid var(--border);font-size:11px}.bi-cash-row span{color:var(--muted)}.bi-cash-row strong{font-variant-numeric:tabular-nums}.bi-cash-total{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding:15px;border-radius:9px;background:var(--primary-soft);font-size:11px}.bi-cash-total strong{color:var(--primary2)}
.bi-quick-panel{margin-top:14px}
@keyframes kpiEnter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes sparkRise{from{height:0}to{height:var(--spark-height,80%)}}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes dotIn{from{opacity:0}to{opacity:1}}@keyframes donutIn{from{transform:rotate(-90deg);opacity:.3}to{transform:rotate(0);opacity:1}}@keyframes progressIn{from{width:0}}
@media(max-width:1050px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bi-main-grid,.bi-bottom-grid{grid-template-columns:1fr}}
@media(max-width:620px){.kpi-grid{grid-template-columns:1fr 1fr}.bi-panel{padding:13px}.bi-wallet-content{gap:10px;flex-wrap:wrap}.bi-donut{width:115px;height:115px}.bi-legend{min-width:115px}.bi-month-labels{font-size:8px}}

/* Theme consistency: all app surfaces follow the selected theme */
.main,.workspace{background:var(--bg)!important}
.content{background:transparent!important;color:var(--text)}
.page-head,.page-head h1,.page-head p{color:var(--text)}
.table-panel,.panel,.card,.modal{background:var(--surface);color:var(--text);border-color:var(--border)}
.topbar{background:var(--surface);color:var(--text);border-color:var(--border)}
input,select,textarea{background:var(--surface2);color:var(--text);border-color:var(--border)}
.sidebar{background:linear-gradient(180deg,#100d1b 0%,#17142a 58%,#20163b 100%)}
.brand-mark{background:linear-gradient(135deg,#a855f7,#5b5bd6);box-shadow:0 5px 18px #8b5cf633}
.nav-link.active{background:linear-gradient(105deg,#7047db,#5745b8);box-shadow:0 7px 20px #6c47d83b}


/* Stellix ERP Phase 1 UI: brand-aware workspace, collapsible sidebar and navigation helpers */
.brand{display:flex;align-items:center;gap:10px;padding-right:12px}
.brand-mark-small{flex:0 0 36px;width:36px;height:36px}
.brand-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.brand-copy b{font:800 13px Manrope,sans-serif;letter-spacing:-.2px;color:#fff}
.brand-copy small{font-size:9px;color:#b7addf;letter-spacing:.3px}
.sidebar-collapse{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border:1px solid #ffffff20;background:#ffffff08;color:#eee7ff;border-radius:9px}
.workspace{display:flex;align-items:center;gap:10px;width:calc(100% - 24px);margin:12px;border:1px solid #ffffff12;border-radius:12px;padding:10px;background:#ffffff0b;color:#f4f0ff;text-align:left;min-width:0;transition:background .2s,border-color .2s}
.workspace:hover{background:#ffffff13;border-color:#9d83ff66}
.workspace.switch-disabled{cursor:default}
.workspace.switch-disabled:hover{background:#ffffff0b;border-color:#ffffff12}
.workspace-logo{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:9px;background:#fff;color:#6546cc;overflow:hidden;font-size:18px;font-weight:800}
.workspace-logo img{width:100%;height:100%;object-fit:contain;background:#fff;padding:2px}
.workspace-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.workspace-copy b{font-size:10px;line-height:1.3;white-space:normal;overflow-wrap:anywhere;color:#fff}
.workspace-copy small{font-size:8px;color:#b7addf}
.workspace .chevron{color:#c7b9f8}
.top-left{min-width:0}
.top-company-brand{display:flex;align-items:center;gap:8px;min-width:0;margin-right:12px}
.top-company-logo{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface2);color:var(--primary);font-weight:900;font-size:15px}
.top-company-logo img{width:100%;height:100%;object-fit:contain;background:white;padding:2px}
.top-company-name{font-size:10px;font-weight:700;color:var(--text);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.breadcrumbs{border-left:1px solid var(--border);padding-left:13px}
.login-security-note{font-size:11px;line-height:1.5;color:var(--muted);padding:10px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:9px}
.floating-help{position:fixed;right:22px;bottom:22px;z-index:35;width:46px;height:46px;border:0;border-radius:50%;color:#fff;font-weight:800;font-size:20px;background:linear-gradient(135deg,#8b5cf6,#5b4acb);box-shadow:0 9px 28px #6847d54d;transition:transform .2s,box-shadow .2s}
.floating-help:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 14px 32px #6847d566}
.scroll-tools{position:fixed;right:27px;bottom:82px;z-index:34;display:flex;flex-direction:column;gap:6px;align-items:center;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .2s,transform .2s}
.scroll-tools.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.scroll-progress-track{width:3px;height:52px;background:var(--border);border-radius:99px;overflow:hidden}
.scroll-progress-track span{display:block;width:100%;height:0;background:linear-gradient(180deg,#a855f7,#6557e8);border-radius:99px;transition:height .1s}
.scroll-tools button{display:grid;place-items:center;width:29px;height:29px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-size:15px}
.scroll-tools button:disabled{opacity:.35;cursor:default}
/* Desktop collapse: keep icons visible and preserve accessible labels via title */
@media(min-width:761px){.app-shell{display:flex}.sidebar{width:252px;flex:0 0 252px;transition:width .24s,flex-basis .24s;overflow-x:hidden}.main{min-width:0;flex:1}.sidebar-collapsed .sidebar{width:76px;flex-basis:76px}.sidebar-collapsed .brand{justify-content:center;padding:0 8px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .workspace-copy,.sidebar-collapsed .workspace .chevron,.sidebar-collapsed .user-meta,.sidebar-collapsed .sidebar-bottom .icon-btn{display:none!important}.sidebar-collapsed .sidebar-collapse{position:absolute;right:7px;top:27px;width:23px;height:23px;font-size:10px}.sidebar-collapsed .brand{position:relative;justify-content:flex-start;padding:0 10px}.sidebar-collapsed .workspace{justify-content:center;width:52px;margin:14px 12px;padding:8px}.sidebar-collapsed .workspace-logo{width:34px;flex-basis:34px}.sidebar-collapsed .nav-label{font-size:0;height:15px;padding:0!important;margin-top:8px}.sidebar-collapsed .nav-label:after{display:none}.sidebar-collapsed .nav-link{justify-content:center;margin:4px 10px;padding:12px 4px;gap:0}.sidebar-collapsed .nav-link>span:nth-child(2),.sidebar-collapsed .nav-link em{display:none!important}.sidebar-collapsed .nav-link>span:first-child{font-size:17px}.sidebar-collapsed .sidebar-bottom{justify-content:center;padding:12px 8px}.sidebar-collapsed .avatar{margin:0}.sidebar-collapsed .nav-link{position:relative}.sidebar-collapsed .nav-link:hover:after{content:attr(data-page);position:absolute;left:57px;top:50%;transform:translateY(-50%);padding:7px 9px;background:#241b3d;color:white;border-radius:7px;white-space:nowrap;z-index:100;font-size:10px;box-shadow:0 5px 20px #0003}.sidebar-collapsed .nav-link.nav-sub{margin-left:10px!important;border-left:0}}
@media(max-width:760px){.top-company-brand{display:none}.breadcrumbs{border-left:0;padding-left:0}.sidebar-collapse{display:none}.floating-help{right:15px;bottom:15px;width:43px;height:43px}.scroll-tools{right:21px;bottom:68px}.workspace{margin-top:14px}.top-actions .help-btn{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

@media(min-width:761px){.sidebar{height:100vh;min-height:100vh;overflow-y:auto;position:sticky;top:0}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:8px}}


/* v4.2 visual alignment: compact dark ERP navigation and fixed utility header */
:root{--erp-ink:#070a13;--erp-panel:#0d1220;--erp-border:#20283a;--erp-muted:#8792a8;--erp-cyan:#18c6c1}
.app-shell{height:100vh;min-height:100vh;overflow:hidden;background:#070a13}
.sidebar{height:100vh;min-height:0;position:relative;top:auto;overflow-y:auto;overflow-x:hidden;width:228px;flex:0 0 228px;padding:15px 8px 10px;background:#050812;border-right:1px solid #1a2232;color:#d8dfed}
.sidebar .brand{padding:0 10px 14px;min-height:42px;border-bottom:1px solid #171e2d}
.sidebar .brand-mark-small{width:28px;height:28px;flex-basis:28px;border-radius:8px;font-size:16px}
.sidebar .brand-copy b{font-size:12px;letter-spacing:.5px}.sidebar .brand-copy small{font-size:8px}
.sidebar-collapse{display:none!important}
.workspace{margin:10px 4px 12px;width:calc(100% - 8px);padding:7px 8px;background:#0c1220;border:1px solid #1c2638;border-radius:8px;min-height:43px}
.workspace-logo{width:27px;height:27px;flex-basis:27px;border-radius:7px;font-size:13px}
.workspace-copy b{font-size:9px}.workspace-copy small{font-size:8px}
.nav{gap:1px;padding-bottom:10px}.nav-label{font-size:8px;letter-spacing:1px;padding:11px 10px 5px;color:#75839c}
.nav-link{min-height:32px;padding:7px 10px;margin:1px 0;border-radius:6px;gap:10px;font-size:11px;font-weight:500;color:#9aa6bb;transition:background .16s,color .16s,border-color .16s}
.nav-link>span:first-child{display:grid;place-items:center;width:17px;height:17px;font-size:0;flex:0 0 17px}
.nav-link>span:first-child svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.nav-link>span:nth-child(2){font-size:10.5px;line-height:1.25}
.nav-link:hover{background:#111a2b;color:#eaf0ff;transform:none}
.nav-link.active{background:#12182a;color:#dbe7ff;box-shadow:none;border-left:2px solid #22c5c0;padding-left:8px}
.nav-link.active>span:first-child{color:#3ed5cf}.nav-link em{font-size:9px;padding:2px 5px;background:#1b2639}
.nav-link.nav-sub{margin-left:8px!important;padding-top:6px!important;padding-bottom:6px!important;font-size:10px!important;border-left:1px solid #26334a}
.nav-label.nav-group-toggle:after{right:9px;font-size:11px}
.sidebar-bottom{margin-top:auto;padding:10px 5px 2px;border-top:1px solid #1a2232;min-height:49px}
.sidebar .avatar{width:27px;height:27px;font-size:9px;background:#18324b;color:#7bd7e5}
.sidebar .user-meta b{font-size:10px;color:#e4eafa}.sidebar .user-meta small{font-size:8px}
.main{height:100vh;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:#080b14}
.topbar{position:relative;z-index:25;top:0;flex:0 0 56px;height:56px;min-height:56px;padding:0 18px;gap:15px;background:#070a13;color:#dfe6f5;border-bottom:1px solid #1d2637;box-shadow:0 3px 16px #0002}
.topbar-left,.top-actions{display:flex;align-items:center;gap:10px;min-width:0}.topbar-left{flex:1;overflow:hidden}.top-company-brand{display:flex;align-items:center;gap:8px;min-width:0;max-width:245px}.top-company-logo{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:7px;background:#101c30;color:#7ad7e0;font-size:13px;font-weight:800;overflow:hidden}.top-company-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.top-brand-stack{display:flex;flex-direction:column;min-width:0;gap:2px}.top-brand-stack>b{font-size:10px;letter-spacing:.9px;color:#f0f4ff;white-space:nowrap}.top-brand-stack>b small{font-size:8px;color:#7889a4;font-weight:500;letter-spacing:0}.top-company-name{font-size:9px;color:#8390a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.breadcrumbs{font-size:10px;gap:7px;border-left:1px solid #222b3c;padding-left:13px;white-space:nowrap}.breadcrumbs b{color:#e3eaf7}.topbar-center{position:relative;flex:0 1 280px;min-width:140px}.global-search{display:flex;align-items:center;gap:8px;height:32px;border:1px solid #222b3d;border-radius:7px;background:#0d1321;padding:0 8px;color:#7e8ba3}.global-search:focus-within{border-color:#5263a0;box-shadow:0 0 0 2px #5363a022}.global-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:#e5ebf8;font-size:10px}.global-search input::placeholder{color:#6f7b91}.global-search kbd{white-space:nowrap;font-size:8px;border:1px solid #293348;background:#111a2a;padding:3px 4px;border-radius:4px;color:#9aa6ba}.search-glass{font-size:18px;line-height:1;color:#8e9ab0}.global-search-results{position:absolute;top:38px;left:0;right:0;background:#0d1320;border:1px solid #283247;border-radius:8px;box-shadow:0 12px 32px #0007;padding:5px;z-index:60;max-height:330px;overflow:auto}.global-search-results button{display:flex;align-items:center;gap:9px;width:100%;padding:9px;border:0;border-radius:5px;background:transparent;color:#dce5f5;text-align:left;font-size:10px}.global-search-results button:hover{background:#19243a}.global-search-results button svg{width:15px;height:15px;stroke:#9d8cff;fill:none;stroke-width:1.7}.global-search-empty{padding:10px;color:#8792a8;font-size:10px}
.top-actions{gap:7px;flex:0 0 auto}.top-date{font-size:9px;color:#8794aa;white-space:nowrap;padding-right:6px}.top-actions .icon-btn{width:29px;height:29px;min-width:29px;border:1px solid #222c3f;background:#0d1321;color:#aeb9cd;border-radius:7px;font-size:13px}.top-actions #languageSelect{height:29px;padding:5px 7px;background:#0d1321;border:1px solid #222c3f;color:#b9c5da;font-size:9px;border-radius:7px}.notification-btn{position:relative}.notification-badge{position:absolute;right:-4px;top:-4px;min-width:13px;height:13px;padding:0 3px;display:grid;place-items:center;background:#e75c79;color:#fff;border-radius:8px;font-size:7px;font-style:normal;border:1px solid #070a13}.profile-trigger{display:flex;align-items:center;gap:7px;padding:2px 0 2px 7px;border:0;border-left:1px solid #222b3d;background:transparent;color:#e5ebf8;min-width:0;text-align:left}.profile-avatar{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#2457a2;color:#fff;font-size:9px;font-weight:800;flex:0 0 27px}.profile-meta{display:flex;flex-direction:column;gap:3px;min-width:0;max-width:115px}.profile-meta b{font-size:9px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-meta small{font-size:8px;color:#8190a8;white-space:nowrap}.profile-chevron{color:#8b98ad;font-size:11px}.top-sidebar-toggle{width:29px;height:29px;min-width:29px;border:0;background:transparent;color:#9eabc0;font-size:14px}
.content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;padding:24px 22px 28px;max-width:none;width:100%;margin:0;background:#080b14!important;color:var(--text);scrollbar-width:thin;scrollbar-color:#2b3549 transparent}.content::-webkit-scrollbar{width:7px}.content::-webkit-scrollbar-thumb{background:#2b3549;border-radius:8px}footer{flex:0 0 auto;background:#070a13;border-top:1px solid #1b2434;padding:8px 18px;font-size:8px;color:#68758c}
[data-theme="dark"] .stat-card,[data-theme="dark"] .panel,[data-theme="dark"] .table-panel,[data-theme="dark"] .settings-card,[data-theme="dark"] .plan-card{background:#0d1220;border-color:#20283a}
.sidebar-collapsed .sidebar{width:62px;flex-basis:62px;padding-left:5px;padding-right:5px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .workspace-copy,.sidebar-collapsed .workspace .chevron,.sidebar-collapsed .user-meta,.sidebar-collapsed .sidebar-bottom .icon-btn{display:none!important}.sidebar-collapsed .brand{justify-content:center;padding:0 4px 14px}.sidebar-collapsed .brand-mark-small{width:29px;height:29px;flex-basis:29px}.sidebar-collapsed .workspace{justify-content:center;width:42px;margin:10px auto;padding:5px}.sidebar-collapsed .nav-label{font-size:0;height:10px;padding:0!important;margin-top:6px}.sidebar-collapsed .nav-label:after{display:none}.sidebar-collapsed .nav-link{justify-content:center;margin:2px 1px;padding:8px 3px;gap:0}.sidebar-collapsed .nav-link>span:nth-child(2),.sidebar-collapsed .nav-link em{display:none!important}.sidebar-collapsed .nav-link>span:first-child{font-size:17px}.sidebar-collapsed .sidebar-bottom{justify-content:center;padding:9px 2px}.sidebar-collapsed .avatar{margin:0}.sidebar-collapsed .nav-link:hover:after{content:attr(data-label);position:absolute;left:53px;top:50%;transform:translateY(-50%);padding:7px 9px;background:#141c2d;color:white;border:1px solid #2b3549;border-radius:6px;white-space:nowrap;z-index:100;font-size:10px;box-shadow:0 5px 20px #0007}.sidebar-collapsed .nav-link.nav-sub{margin-left:1px!important;border-left:0}
.scroll-tools{z-index:30}.floating-help{z-index:31}
@media(max-width:1150px){.top-date{display:none}.top-company-name{max-width:120px}.topbar{padding:0 12px;gap:8px}.topbar-center{flex-basis:220px}.profile-meta{display:none}}
@media(min-width:761px){.app-shell{display:flex}.sidebar{position:relative;top:auto;height:100vh;min-height:0;overflow-y:auto}.main{height:100vh}.top-sidebar-toggle{display:grid}}
@media(max-width:760px){.app-shell{height:100vh;min-height:100vh}.sidebar{position:fixed;z-index:45;left:-270px;top:0;bottom:0;height:100vh;width:245px;min-height:0;transition:left .2s}.sidebar.open{left:0}.main{height:100vh;width:100%;min-width:0}.topbar{height:54px;min-height:54px;flex-basis:54px;padding:0 9px;gap:6px}.top-sidebar-toggle{display:none}.topbar-left{flex:0 1 auto}.top-company-brand{display:none}.breadcrumbs{border-left:0;padding-left:0;font-size:9px}.topbar-center{flex:1;min-width:70px}.global-search{height:29px;padding:0 6px;gap:4px}.global-search kbd{display:none}.global-search input{font-size:9px}.top-actions{gap:4px}.top-actions .icon-btn{width:27px;min-width:27px;height:27px}.top-actions #languageSelect{height:27px;padding:4px}.top-date,.profile-meta,.profile-chevron,.top-utility{display:none!important}.profile-trigger{padding-left:5px}.profile-avatar{width:25px;height:25px;flex-basis:25px}.content{padding:17px 12px 22px}.global-search-results{left:auto;width:min(300px,80vw);right:0}.sidebar-collapse{display:none!important}.sidebar-collapsed .sidebar{width:245px;flex-basis:245px}.sidebar-collapsed .brand-copy,.sidebar-collapsed .workspace-copy,.sidebar-collapsed .workspace .chevron,.sidebar-collapsed .user-meta,.sidebar-collapsed .sidebar-bottom .icon-btn{display:initial!important}.sidebar-collapsed .nav-link>span:nth-child(2){display:initial!important}.sidebar-collapsed .nav-link em{display:initial!important}.sidebar-collapsed .nav-link{justify-content:flex-start;padding:7px 10px;gap:10px}.sidebar-collapsed .nav-label{font-size:8px;height:auto;padding:11px 10px 5px!important}.sidebar-collapsed .workspace{justify-content:flex-start;width:calc(100% - 8px);margin:10px 4px 12px;padding:7px 8px}.sidebar-collapsed .brand{justify-content:flex-start;padding:0 10px 14px}.sidebar-collapsed .nav-link:hover:after{display:none}footer{padding:8px 12px;flex-direction:column;gap:4px}}

.header-icon-svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;display:block}

/* v4.3 — dashboard inspirado na referência NAIQX, com temas realmente globais */
:root{--shell-bg:#f3f5fb;--sidebar-bg:#ffffff;--topbar-bg:#ffffff;--content-bg:#f3f5fb;--panel-bg:#ffffff;--panel-border:#e5e9f2;--chart-grid:#e7eaf2}
[data-theme="dark"]{--shell-bg:#070a13;--sidebar-bg:#050812;--topbar-bg:#070a13;--content-bg:#080b14;--panel-bg:#0d1220;--panel-border:#20283a;--chart-grid:#283247}
.app-shell{background:var(--shell-bg)!important}.sidebar{background:var(--sidebar-bg)!important;border-color:var(--panel-border)!important;color:var(--text)}
.topbar{background:var(--topbar-bg)!important;border-color:var(--panel-border)!important;color:var(--text)}.main{background:var(--content-bg)!important}
.content{background:var(--content-bg)!important;color:var(--text)}footer{background:var(--topbar-bg)!important;border-color:var(--panel-border)!important;color:var(--muted)}
.workspace{background:var(--surface)!important;color:var(--text);border-color:var(--border)}
.sidebar .brand-copy b,.sidebar .user-meta b{color:var(--text)}.sidebar .brand-copy small,.sidebar .user-meta small{color:var(--muted)}
.nav-label{color:var(--muted)!important}.nav-link{color:var(--muted)!important}.nav-link:hover{background:var(--surface2)!important;color:var(--text)!important}
.nav-link.active{background:var(--primary-soft)!important;color:var(--primary)!important;border-left-color:var(--primary)!important}
.top-company-name,.top-date,.breadcrumbs,.profile-meta small{color:var(--muted)!important}.top-brand-stack>b,.breadcrumbs b,.profile-meta b{color:var(--text)!important}
.global-search,.top-actions .icon-btn,.top-actions #languageSelect{background:var(--surface2)!important;color:var(--text)!important;border-color:var(--border)!important}
.global-search input{color:var(--text)!important}.global-search-results{background:var(--surface)!important;border-color:var(--border)!important}
.global-search-results button{color:var(--text)!important}.global-search-results button:hover{background:var(--surface2)!important}
.stat-card,.panel,.table-panel,.settings-card,.plan-card,.bi-panel,.reference-chart-panel{background:var(--panel-bg);border-color:var(--panel-border);color:var(--text)}
table th{background:var(--surface2);color:var(--muted)}table td{color:var(--text);border-color:var(--border)}
.field input,.field select,.field textarea,input,select,textarea{color:var(--text)}
#lineBody input,#lineBody select{background:var(--surface2)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:7px!important;box-shadow:none!important}
#lineBody input:focus,#lineBody select:focus{border-color:var(--primary)!important;outline:2px solid color-mix(in srgb,var(--primary) 25%,transparent)}
#docForm input[name="number"]{background:var(--surface2);color:var(--muted);border-style:dashed;cursor:not-allowed;font-weight:700;letter-spacing:.2px}
#docForm input[name="number"]:focus{outline:none;border-color:var(--border)}.field-help{color:var(--muted);font-size:9px;line-height:1.4}
[data-theme="light"] .nav-link:hover{background:#f2f4fb!important}[data-theme="light"] .topbar .icon-btn{background:#f7f8fc!important}
[data-theme="light"] .ai-summary-panel{background:#fff;border-color:#e4e7f1}[data-theme="light"] .ai-summary-panel p{color:#566177}[data-theme="light"] .ai-summary-panel .ai-summary-foot{color:#788198}
.dash-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.dash-heading-row h2{font:800 23px Manrope;margin:0 0 5px;letter-spacing:-.7px}.dash-heading-row p{margin:0;color:var(--muted);font-size:12px}
.dashboard-period{font-size:10px;color:var(--muted);padding:7px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface)}
.reference-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.reference-kpi{position:relative;isolation:isolate;overflow:hidden;min-height:118px;border-radius:13px;padding:17px 18px;display:flex;flex-direction:column;box-shadow:0 7px 18px #080b1412;animation:kpiEnter .45s both;animation-delay:var(--kpi-delay)}
.reference-kpi:before,.reference-kpi:after{content:"";position:absolute;z-index:-1;border-radius:50%;background:#ffffff12}.reference-kpi:before{width:110px;height:110px;right:-24px;top:-40px;box-shadow:0 0 0 20px #ffffff08}.reference-kpi:after{width:68px;height:68px;right:5px;bottom:-43px}
.reference-kpi.teal{background:linear-gradient(125deg,#11b6a5,#0795a7)}.reference-kpi.blue{background:linear-gradient(125deg,#3d82f6,#3158d9)}.reference-kpi.indigo{background:linear-gradient(125deg,#625df0,#384fda)}.reference-kpi.orange{background:linear-gradient(125deg,#f5a10b,#ef6d00)}.reference-kpi.purple{background:linear-gradient(125deg,#a23eea,#7543e6)}.reference-kpi.red{background:linear-gradient(125deg,#ef4059,#d81f39)}.reference-kpi.amber{background:linear-gradient(125deg,#f3a30b,#eb7600)}
.reference-kpi-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#ffffffd9;font-size:11px;font-weight:600}.reference-kpi-head i{font-style:normal;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#ffffff25;color:white;font-size:15px}
.reference-kpi strong{font:800 clamp(17px,1.35vw,23px) Manrope;letter-spacing:-.5px;margin-top:12px;color:#fff;overflow-wrap:anywhere}.reference-kpi small{font-size:10px;color:#ffffffb8;margin-top:4px}
.ai-summary-panel{margin-top:16px;padding:17px 19px;border:1px solid var(--panel-border);border-radius:13px;background:var(--panel-bg);box-shadow:var(--shadow)}
.ai-summary-head{display:flex;align-items:center;gap:10px}.ai-summary-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#7566f5,#a855f7);color:#fff;font-size:17px}
.ai-summary-head>div{display:flex;flex-direction:column;gap:3px}.ai-summary-head b{font-size:12px}.ai-summary-head small{font-size:9px;color:var(--muted)}.ai-summary-status{margin-left:auto;color:#15a58f;font-size:9px;white-space:nowrap}
.ai-summary-panel p{font-size:11px;line-height:1.7;color:var(--muted);margin:13px 0 8px}.ai-summary-foot{font-size:9px;color:var(--muted)}
.reference-chart-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:16px}.reference-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}
.reference-chart-panel{min-width:0;border:1px solid var(--panel-border);border-radius:13px;padding:17px;background:var(--panel-bg);box-shadow:var(--shadow);color:var(--text)}
.reference-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.reference-chart-head h3{font:700 13px Manrope;margin:0 0 5px;letter-spacing:-.2px}.reference-chart-head p{font-size:10px;color:var(--muted);margin:0}
.chart-legend{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;white-space:nowrap}.chart-legend i,.portfolio-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;flex:0 0 7px}.legend-teal{background:#17b7a5}.legend-amber{background:#f59e0b}
.chart-summary-number{font:800 19px Manrope;margin:15px 0 5px;font-variant-numeric:tabular-nums}.chart-summary-number small{font:400 9px "DM Sans",sans-serif;color:var(--muted);margin-left:5px}
.reference-line-chart svg,.reference-bar-chart svg{display:block;width:100%;height:auto;overflow:visible}.reference-line-chart polyline{stroke-dasharray:900;stroke-dashoffset:900;animation:drawLine 1.3s ease-out forwards}
.chart-month-labels{display:grid;grid-template-columns:repeat(12,1fr);gap:2px;color:var(--muted);font-size:8px;text-align:center;margin-top:2px}.chart-footnote{font-size:9px;color:var(--muted);margin-top:7px;line-height:1.5}
.portfolio-layout{display:flex;align-items:center;justify-content:center;gap:24px;padding:20px 5px 8px}.reference-donut{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;flex:0 0 145px;position:relative;animation:donutIn .65s ease-out both}
.reference-donut:before{content:"";position:absolute;inset:14px;border-radius:50%;background:var(--panel-bg)}.reference-donut>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}
.reference-donut strong{font:800 23px Manrope}.reference-donut small{font-size:9px;color:var(--muted)}.portfolio-legend{display:flex;flex-direction:column;gap:12px;min-width:135px}
.portfolio-legend>div{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.portfolio-legend b{margin-left:auto;color:var(--text);padding-left:8px}
.legend-purple{background:#7566f5}.legend-gray{background:#8c96aa}.legend-red{background:#e75c79}
.dashboard-finance-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--border);font-size:10px;color:var(--muted)}.dashboard-finance-row b{font-size:10px;color:var(--text);font-variant-numeric:tabular-nums;text-align:right}
.dashboard-finance-total{display:flex;justify-content:space-between;gap:10px;padding:13px 10px;margin-top:10px;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:10px}.dashboard-finance-total b{font-weight:800}
.recent-dashboard-docs{margin-top:14px}.recent-doc-list{display:flex;flex-direction:column;margin-top:10px}
.recent-doc-row{width:100%;display:flex;align-items:center;gap:16px;text-align:left;padding:12px 3px;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text)}
.recent-doc-row>span:first-child{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.recent-doc-row b{font-size:10px;color:var(--primary)}.recent-doc-row small{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-doc-value{font-size:10px;font-weight:800;white-space:nowrap}
@media(max-width:1150px){.reference-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-chart-grid,.reference-lower-grid{grid-template-columns:1fr}}
@media(max-width:560px){.reference-kpi-grid{grid-template-columns:1fr}.dash-heading-row{align-items:flex-start}.portfolio-layout{gap:14px;flex-wrap:wrap}.reference-donut{width:125px;height:125px;flex-basis:125px}.portfolio-legend{min-width:125px}.recent-doc-row{gap:8px;flex-wrap:wrap}.recent-doc-value{margin-left:auto}}

/* v4.4 — fluxo de onboarding multiempresa e widgets executivos do dashboard */
.onboarding-section-title{display:flex;align-items:center;gap:11px;margin:5px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.onboarding-section-title>span{width:29px;height:29px;flex:0 0 29px;border-radius:9px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);font-weight:800;font-size:11px}
.onboarding-section-title>div{display:flex;flex-direction:column;gap:3px}.onboarding-section-title b{font-size:12px;color:var(--text)}.onboarding-section-title small{font-size:10px;color:var(--muted)}
.onboarding-account-title{margin-top:21px}
.onboarding-logo-field{display:flex;align-items:center;gap:13px;border:1px dashed var(--border);border-radius:9px;padding:10px;background:var(--surface2)}
.onboarding-logo-preview{width:58px;height:58px;border-radius:10px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:800;overflow:hidden;flex:0 0 58px}
.onboarding-logo-preview img{width:100%;height:100%;object-fit:contain;background:#fff}
.onboarding-logo-field small{display:block;font-size:9px;line-height:1.5;color:var(--muted);margin-top:5px}
.onboarding-security-note{margin-top:14px}
.onboarding-success{text-align:left}.onboarding-success-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#d9f8e9;color:#07875f;font-size:22px;font-weight:900;margin-bottom:10px}
.onboarding-success h3{margin:0 0 6px;font-size:18px}.onboarding-success>p{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 15px}
.credential-card{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid var(--border);border-radius:10px;padding:14px;background:var(--surface2);margin:14px 0}
.credential-card>div{display:flex;flex-direction:column;gap:5px;min-width:0}.credential-card small{font-size:9px;color:var(--muted)}.credential-card b{font-size:11px;overflow-wrap:anywhere;color:var(--text)}
.top-items-list{display:flex;flex-direction:column;gap:15px;margin-top:19px}
.top-item-row{display:flex;align-items:center;gap:10px}.top-item-rank{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--border);font-size:10px;font-weight:800;color:var(--muted);flex:0 0 24px}
.top-item-main{flex:1;min-width:0}.top-item-main>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px}.top-item-main b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-item-main small{font-size:10px;font-weight:800;white-space:nowrap;color:var(--text)}
.top-item-track{height:6px;border-radius:99px;background:var(--surface2);overflow:hidden}.top-item-track i{display:block;height:100%;border-radius:99px;animation:growBar .8s ease-out both}
.purchase-recent-row{cursor:default}.dashboard-extra-grid{margin-top:14px}
@keyframes growBar{from{width:0;opacity:.5}to{opacity:1}}
@media(max-width:700px){.credential-card{grid-template-columns:1fr}.onboarding-logo-field{align-items:flex-start;flex-direction:column}.onboarding-logo-preview{width:48px;height:48px;flex-basis:48px}}

/* v4.5.1 verified implementation: module permissions and accounting overview */
.module-permissions-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.module-permissions-header>div:first-child{display:flex;flex-direction:column;gap:4px}.module-permissions-header small{font-size:10px;color:var(--muted)}
.module-permissions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.module-permission-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);font-size:10px;color:var(--text);cursor:pointer;min-width:0}
.module-permission-item input{flex:0 0 auto;accent-color:var(--primary)}.module-permission-item span{overflow-wrap:anywhere}
.accounting-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.accounting-source-panel{margin-top:16px;padding:16px}.accounting-source-panel .table-scroll{overflow:auto;margin-top:12px}.accounting-source-panel table{min-width:780px}
@media(max-width:900px){.module-permissions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.accounting-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.module-permissions-grid,.accounting-kpi-grid{grid-template-columns:1fr}}

/* v4.6: permission clarity, financial navigation and chart filters */
.permission-groups{display:grid;gap:12px;margin-top:12px}.permission-group{border:1px solid var(--border);border-radius:12px;padding:13px;background:var(--surface)}
.permission-group-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.permission-group-head h4{font-size:12px;margin:0 0 4px;color:var(--text)}.permission-group-head p{font-size:10px;margin:0;color:var(--muted);line-height:1.45}
.module-permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:0}.module-permission-item{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);font-size:11px;color:var(--text);cursor:pointer;min-width:0;min-height:54px;width:100%;box-sizing:border-box}.module-permission-item input{flex:0 0 auto;width:15px;height:15px;margin:2px 0 0;accent-color:var(--primary)}.module-permission-item .permission-copy{display:flex;flex-direction:column;gap:4px;min-width:0;white-space:normal;writing-mode:horizontal-tb;overflow-wrap:anywhere}.module-permission-item .permission-copy b{font-size:11px;line-height:1.35;display:block}.module-permission-item .permission-copy small{font-size:9px;line-height:1.4;color:var(--muted);display:block;white-space:normal;writing-mode:horizontal-tb}
.security-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.security-item{align-items:center;min-width:0}.security-item input{flex:0 0 auto;width:18px;height:18px}.security-item span{min-width:0;overflow-wrap:anywhere}
.finance-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.finance-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.finance-link-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:16px;box-shadow:var(--shadow)}.finance-link-card h3{font:800 13px Manrope;margin:0 0 6px}.finance-link-card>p{font-size:10px;line-height:1.5;color:var(--muted);margin:0 0 12px}.finance-link-list{display:grid;gap:5px}.finance-link{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:9px;border:1px solid transparent;border-radius:8px;background:var(--surface2);color:var(--text);cursor:pointer}.finance-link:hover{border-color:var(--primary);background:var(--primary-soft)}.finance-link span{display:flex;flex-direction:column;gap:3px;min-width:0}.finance-link b{font-size:10px}.finance-link small{font-size:9px;color:var(--muted);line-height:1.4}.finance-link i{font-style:normal;color:var(--primary);flex:0 0 auto}.chart-head-with-filters{align-items:flex-start;flex-wrap:wrap}.chart-filters{display:flex;gap:8px;flex-wrap:wrap}.chart-filters label{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--muted)}.chart-filters select{border:1px solid var(--border);border-radius:7px;padding:7px 9px;background:var(--surface);color:var(--text);font-size:10px;max-width:130px}
@media(max-width:1000px){.finance-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-permissions-grid{grid-template-columns:1fr}}
@media(max-width:680px){.finance-report-grid,.finance-shortcuts{grid-template-columns:1fr}.permission-group-head{align-items:flex-start;flex-direction:column}.chart-head-with-filters{display:grid}.chart-filters{width:100%}.chart-filters label{flex:1}.chart-filters select{max-width:none;width:100%}}
