.reports-page{background:radial-gradient(circle at 78% 2%,#f1efff 0,transparent 24%),var(--bg);min-height:100vh}
.report-top-nav{align-items:center;display:flex;gap:22px;margin-left:auto}
.report-top-nav a{color:#979aaa;font-size:14px;font-weight:600;text-decoration:none}
.report-top-nav a.active{color:var(--purple)}
.reports-content{max-width:1440px}
.reports-intro{align-items:center}
.report-context{align-items:center;background:#fff;border:1px solid #ebeaf4;border-radius:9px;display:flex;gap:9px;padding:10px 13px}
.context-dot{background:#7a70e8;border:4px solid #efedff;border-radius:50%;height:12px;width:12px}
.report-context small,.report-context strong{display:block}
.report-context small{color:#a1a4b3;font-size:13px}
.report-context strong{font-size:14px;margin-top:3px}
.reports-shell{align-items:stretch;display:grid;gap:16px;grid-template-columns:260px minmax(0,1fr)}
.report-area-nav,.report-workspace{background:#fff;border:1px solid #eaeaf2;border-radius:13px;box-shadow:var(--shadow)}
.report-area-nav{display:flex;flex-direction:column;min-height:650px;padding:18px 13px}
.area-nav-heading{align-items:center;display:flex;justify-content:space-between;padding:0 8px 13px}
.area-nav-heading span{color:#8f92a3;font-size:13px;font-weight:800;letter-spacing:1.1px}
.area-nav-heading small{color:#b0b2bf;font-size:13px}
.area-nav-list{display:flex;flex-direction:column;gap:4px}
.area-nav-item{align-items:center;background:transparent;border:1px solid transparent;border-radius:9px;color:#6f7388;cursor:pointer;display:grid;font-family:inherit;gap:10px;grid-template-columns:32px 1fr 12px;padding:10px;text-align:left;transition:background .16s,border-color .16s,transform .16s;width:100%}
.area-nav-item:hover{background:#faf9ff;border-color:#efedf9;transform:translateX(2px)}
.area-nav-item.active{background:#f2f0ff;border-color:#e5e1ff;color:#6259d2}
.area-nav-item>span:nth-child(2){min-width:0}
.area-nav-item strong,.area-nav-item small{display:block}
.area-nav-item strong{font-size:14px}
.area-nav-item small{color:#a0a3b2;font-size:12px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.area-nav-item b{color:#b1b3c1;font-size:20px;font-weight:400}
.area-nav-item.active b{color:#7065e8}
.area-icon,.placeholder-icon{border-radius:8px;display:inline-block;flex-shrink:0;font-size:18px;font-style:normal;font-weight:700;height:32px;line-height:32px;text-align:center;width:32px}
.area-icon.purple,.placeholder-icon.purple{background:#e8e5ff;color:#6c62df}
.area-icon.blue,.placeholder-icon.blue{background:#e8f1ff;color:#5c8dd1}
.area-icon.orange,.placeholder-icon.orange{background:#fff1dc;color:#dc9142}
.area-icon.teal,.placeholder-icon.teal{background:#e2f7f3;color:#279f92}
.area-icon.green,.placeholder-icon.green{background:#e8f7ed;color:#399b65;font-size:13px}
.area-icon.red,.placeholder-icon.red{background:#ffebee;color:#d96670}
.area-nav-note{align-items:flex-start;background:#fafaff;border:1px solid #efedf8;border-radius:9px;display:flex;gap:9px;margin-top:auto;padding:11px}
.area-nav-note>span{background:#e7e4ff;border-radius:50%;color:#6d63dc;flex-shrink:0;font-size:13px;font-weight:800;height:18px;line-height:18px;text-align:center;width:18px}
.area-nav-note p{color:#9a9dac;font-size:12px;line-height:1.55;margin:0}
.area-nav-note strong{color:#696d80;display:block;font-size:13px;margin-bottom:2px}
.area-mobile-select{display:none}
.report-workspace{min-height:650px;overflow:hidden;padding:23px}
.workspace-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}
.workspace-header p{color:#7065e8;font-size:13px;font-weight:800;letter-spacing:1.2px;margin:0 0 8px}
.workspace-header h2{font-family:'Plus Jakarta Sans';font-size:22px;letter-spacing:-.4px;margin:0}
.workspace-header>div>span{color:#9699a9;display:block;font-size:14px;line-height:1.5;margin-top:6px}
.workspace-actions{align-items:center;display:flex;gap:8px}
.workspace-actions button{border-radius:7px;cursor:pointer;font:700 14px 'DM Sans';padding:10px 12px}
.secondary-action{background:#fff;border:1px solid var(--line);color:#73778a}
.secondary-action:hover{border-color:#cfcbea;color:#6259d2}
.primary-action{background:#6e63e8;border:1px solid #6e63e8;color:#fff}
.primary-action:disabled{background:#b6b1ef;border-color:#b6b1ef;cursor:not-allowed}
.workspace-breadcrumb{align-items:center;border-bottom:1px solid #eeeef4;color:#a0a3b1;display:flex;font-size:13px;gap:7px;margin-top:18px;padding-bottom:13px}
.workspace-breadcrumb b{color:#d0d1d9;font-weight:400}
.workspace-breadcrumb strong{color:#6b6f82}
.report-panel{animation:panel-in .22s ease;padding-top:18px}
.panel-placeholder{background:linear-gradient(135deg,#faf9ff,#fff);border:1px solid #eceaf7;border-radius:11px;min-height:250px;padding:21px}
.panel-placeholder-wide{display:grid;gap:28px;grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr)}
.placeholder-copy{align-items:flex-start;display:flex;gap:13px}
.placeholder-copy small{color:#9fa2b2;font-size:12px;font-weight:700;letter-spacing:1px}
.placeholder-copy h3,.empty-area h3{font-family:'Plus Jakarta Sans';font-size:19px;margin:6px 0}
.placeholder-copy p,.empty-area p{color:#9a9dac;font-size:14px;line-height:1.6;margin:0;max-width:340px}
.skeleton-chart{align-items:flex-end;background:repeating-linear-gradient(to bottom,transparent,transparent 39px,#efeff5 40px);display:flex;gap:13px;height:195px;padding:18px 20px 0}
.skeleton-chart i{background:linear-gradient(#c9c4f6,#e9e6ff);border-radius:5px 5px 2px 2px;display:block;flex:1;min-width:12px}
.placeholder-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:12px}
.placeholder-grid article{background:#fff;border:1px solid #ececf3;border-radius:10px;padding:17px}
.placeholder-grid span{background:#f0eff6;border-radius:4px;display:block;height:7px;margin-top:9px}
.placeholder-grid span:first-child{background:#e5e2fa;height:22px;margin:0;width:42%}
.placeholder-grid span:nth-child(2){width:76%}
.placeholder-grid span:nth-child(3){width:58%}
.empty-area{align-items:center;border:1px dashed #dbd9ea;border-radius:11px;display:flex;flex-direction:column;justify-content:center;min-height:430px;padding:40px;text-align:center}
.empty-area .placeholder-icon{height:40px;line-height:40px;width:40px}
.empty-area p{max-width:420px}
.report-toast{background:#27283a;border-radius:8px;bottom:22px;color:#fff;font-size:14px;left:50%;opacity:0;padding:11px 15px;pointer-events:none;position:fixed;transform:translate(-50%,10px);transition:.2s;z-index:20}
.report-toast.show{opacity:1;transform:translate(-50%,0)}
.sales-report-heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}
.sales-report-heading>div>p{color:#5c8dd1;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.sales-report-heading h3{font-family:'Plus Jakarta Sans';font-size:19px;margin:0}
.sales-report-heading>div>span{color:#9a9dac;display:block;font-size:14px;margin-top:6px}
.period-picker{display:block}
.period-picker>span{color:#9699aa;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.period-picker select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#64687c;font:600 14px 'DM Sans';min-width:155px;padding:9px 10px}
.sales-kpi-grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin:17px 0 12px}
.sales-kpi-grid article{align-items:center;background:#fff;border:1px solid #ececf3;border-radius:10px;display:flex;gap:10px;padding:13px}
.sales-kpi-icon{border-radius:7px;flex-shrink:0;font-size:16px;font-weight:700;height:29px;line-height:29px;text-align:center;width:29px}
.sales-kpi-icon.purple{background:#ece9ff;color:#6d63dd;font-size:12px}
.sales-kpi-icon.teal{background:#e5f8f4;color:#2aa48f}
.sales-kpi-icon.orange{background:#fff3df;color:#d99542}
.sales-kpi-icon.blue{background:#e8f1ff;color:#5c8dd1}
.sales-kpi-grid small,.sales-kpi-grid strong,.sales-kpi-grid em{display:block}
.sales-kpi-grid small{color:#9ca0af;font-size:12px}
.sales-kpi-grid strong{font-family:'Plus Jakarta Sans';font-size:18px;margin-top:4px}
.sales-kpi-grid strong.positive{color:#27936a}
.sales-kpi-grid strong.negative{color:#d96670}
.sales-kpi-grid em{color:#afb1bd;font-size:12px;font-style:normal;margin-top:3px;white-space:nowrap}
.sales-chart-card{border:1px solid #ececf3;border-radius:11px;overflow:hidden;padding:17px}
.sales-chart-toolbar{align-items:flex-start;display:flex;justify-content:space-between}
.sales-chart-toolbar h4{font-family:'Plus Jakarta Sans';font-size:15px;margin:0}
.sales-chart-toolbar p{color:#a0a3b2;font-size:13px;margin:4px 0 0}
.sales-chart-legend{align-items:center;display:flex;gap:14px}
.sales-chart-legend span{color:#8e92a3;font-size:13px}
.sales-chart-legend i{border-radius:50%;display:inline-block;height:6px;margin-right:5px;width:6px}
.sales-chart-legend i.actual{background:#7065e8}
.sales-chart-legend i.target{background:#e4ad48}
.sales-chart-scroll{overflow-x:auto}
.sales-chart-canvas{min-width:610px;position:relative}
.sales-chart-canvas svg{display:block;height:245px;width:100%}
.sales-y-axis{bottom:35px;color:#afb1bd;display:flex;flex-direction:column;font-size:12px;justify-content:space-between;left:0;position:absolute;top:18px}
.sales-grid-line{stroke:#ececf3;stroke-dasharray:3 4;stroke-width:1}
.sales-area-path{fill:url(#salesReportFill)}
.sales-actual-line{fill:none;stroke:#7065e8;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}
.sales-target-line{fill:none;stroke:#e4ad48;stroke-dasharray:5 5;stroke-linecap:round;stroke-width:1.8}
.sales-point{fill:#fff;stroke:#7065e8;stroke-width:3}
.sales-month-label{fill:#a0a3b1;font:16px 'DM Sans'}
.sales-chart-footer{border-top:1px solid #f0f0f5;color:#9a9dac;display:flex;font-size:13px;gap:24px;padding-top:12px}
.sales-chart-footer strong{color:#5f6377;margin-left:3px}
.sales-table-component{background:#fff;border:1px solid #ececf3;border-radius:11px;display:block;margin-top:12px;padding:17px}
.sales-table-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}
.sales-table-heading>div:first-child>p{color:#5c8dd1;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.sales-table-heading h3{font-family:'Plus Jakarta Sans';font-size:17px;margin:0}
.sales-table-heading>div:first-child>span{color:#9a9dac;display:block;font-size:13px;margin-top:5px}
.sales-table-filters{align-items:flex-end;display:flex;gap:7px}
.sales-search{align-items:center;border:1px solid var(--line);border-radius:7px;display:flex;height:34px;padding:0 9px}
.sales-search>span{color:#9295a7;font-size:20px;margin-right:5px}
.sales-search input{border:0;color:#5f6376;font:17px 'DM Sans';outline:0;width:170px}
.sales-table-filters>label:last-child>span{color:#999cab;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.sales-table-filters select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#65697d;font:600 13px 'DM Sans';height:34px;padding:0 9px}
.sales-table-scroll{margin-top:15px;overflow-x:auto}
.sales-table-component table{border-collapse:collapse;min-width:760px;width:100%}
.sales-table-component th{border-bottom:1px solid var(--line);padding:0 9px 9px;text-align:left;white-space:nowrap}
.sales-table-component th:first-child,.sales-table-component td:first-child{padding-left:0}
.sales-table-component th:last-child,.sales-table-component td:last-child{padding-right:0}
.sales-table-component th button{background:none;border:0;color:#adafbd;cursor:pointer;font:700 12px 'DM Sans';padding:0}
.sales-table-component th button i{color:#6f65dd;font-size:14px;font-style:normal;margin-left:3px}
.sales-table-component td{border-bottom:1px solid #f0f0f5;color:#85899b;font-size:13px;padding:12px 9px;white-space:nowrap}
.sales-table-component tbody tr:last-child td{border-bottom:0}
.sales-table-component tbody tr:hover{background:#fcfbff}
.sales-table-component .align-right{text-align:right}
.sales-order-id{color:#6259d2}
.sales-customer{align-items:center;display:flex;gap:7px}
.sales-customer i{background:#eeebff;border-radius:50%;color:#6e63df;font-size:12px;font-style:normal;font-weight:700;height:22px;line-height:22px;text-align:center;width:22px}
.sales-customer strong{color:#565a70;font-weight:600}
.sales-amount{color:#565a70}
.sales-status{border-radius:12px;display:inline-block;font-size:12px;font-weight:700;padding:5px 7px}
.sales-status.paid{background:#e5f8f4;color:#299c89}
.sales-status.issued{background:#e9efff;color:#6278c8}
.sales-status.partial{background:#fff3df;color:#d38d3d}
.sales-status.overdue{background:#ffebed;color:#d96670}
.sales-table-empty{padding:42px 20px;text-align:center}
.sales-table-empty>span{background:#f1efff;border-radius:50%;color:#7065e8;display:inline-block;font-size:23px;height:36px;line-height:36px;width:36px}
.sales-table-empty strong,.sales-table-empty p{display:block}
.sales-table-empty strong{font-size:14px;margin-top:10px}
.sales-table-empty p{color:#a0a3b2;font-size:13px;margin:5px 0 0}
.sales-table-footer{align-items:center;border-top:1px solid #f0f0f5;color:#a0a3b1;display:flex;font-size:13px;justify-content:space-between;padding-top:12px}
.sales-table-footer strong{color:#5f6377}
.production-report-heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}
.production-report-heading>div>p{color:#dc9142;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.production-report-heading h3{font-family:'Plus Jakarta Sans';font-size:19px;margin:0}
.production-report-heading>div>span{color:#9a9dac;display:block;font-size:14px;margin-top:6px}
.production-period-picker>span{color:#9699aa;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.production-period-picker select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#64687c;font:600 14px 'DM Sans';min-width:155px;padding:9px 10px}
.production-kpi-grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin:17px 0 12px}
.production-kpi-grid article{align-items:center;background:#fff;border:1px solid #ececf3;border-radius:10px;display:flex;gap:10px;padding:13px}
.production-kpi-icon{border-radius:7px;flex-shrink:0;font-size:16px;font-weight:700;height:29px;line-height:29px;text-align:center;width:29px}
.production-kpi-icon.orange{background:#fff1dc;color:#dc9142}
.production-kpi-icon.purple{background:#ece9ff;color:#6d63dd}
.production-kpi-icon.teal{background:#e5f8f4;color:#2aa48f}
.production-kpi-icon.blue{background:#e8f1ff;color:#5c8dd1}
.production-kpi-grid small,.production-kpi-grid strong,.production-kpi-grid em{display:block}
.production-kpi-grid small{color:#9ca0af;font-size:12px}
.production-kpi-grid strong{font-family:'Plus Jakarta Sans';font-size:18px;margin-top:4px}
.production-kpi-grid strong.positive,.production-chart-footer .positive{color:#27936a}
.production-kpi-grid strong.warning{color:#d38d3d}
.production-kpi-grid em{color:#afb1bd;font-size:12px;font-style:normal;margin-top:3px;white-space:nowrap}
.production-chart-card{border:1px solid #ececf3;border-radius:11px;overflow:hidden;padding:17px}
.production-chart-toolbar{align-items:flex-start;display:flex;justify-content:space-between}
.production-chart-toolbar h4{font-family:'Plus Jakarta Sans';font-size:15px;margin:0}
.production-chart-toolbar p{color:#a0a3b2;font-size:13px;margin:4px 0 0}
.production-chart-legend{display:flex;gap:14px}
.production-chart-legend span{color:#8e92a3;font-size:13px}
.production-chart-legend i{border-radius:2px;display:inline-block;height:7px;margin-right:5px;width:7px}
.production-chart-legend i.output{background:#e5a33f}
.production-chart-legend i.target{background:#e9e6f7;border:1px solid #aaa3d6}
.production-chart-body{display:grid;grid-template-columns:28px minmax(580px,1fr);margin-top:17px;overflow-x:auto}
.production-scale{color:#afb1bd;display:flex;flex-direction:column;font-size:12px;height:220px;justify-content:space-between;padding-bottom:26px;text-align:right}
.production-plot{height:220px;position:relative}
.production-grid{bottom:26px;display:flex;flex-direction:column;justify-content:space-between;left:10px;position:absolute;right:0;top:0}
.production-grid i{border-top:1px dashed #ececf3}
.production-bars{bottom:0;display:flex;gap:16px;height:220px;justify-content:space-around;left:16px;position:absolute;right:6px}
.production-bar-group{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:flex-end;max-width:84px;min-width:48px}
.production-bar-stack{align-items:flex-end;display:flex;gap:5px;height:185px;justify-content:center;width:100%}
.production-bar{border-radius:4px 4px 1px 1px;display:block;min-height:3px;position:relative;width:27%}
.production-bar.output{background:linear-gradient(#efb052,#dd933b)}
.production-bar.target{background:#eeecf8;border:1px solid #b8b2da}
.production-bar i{background:#2d2e41;border-radius:4px;color:#fff;font-size:11px;font-style:normal;left:50%;opacity:0;padding:3px 4px;pointer-events:none;position:absolute;top:-18px;transform:translateX(-50%);transition:.15s;white-space:nowrap}
.production-bar:hover i{opacity:1}
.production-bar-group>strong{color:#a0a3b1;font-size:12px;font-weight:500;margin-top:9px;white-space:nowrap}
.production-chart-footer{border-top:1px solid #f0f0f5;color:#9a9dac;display:flex;font-size:13px;gap:24px;padding-top:12px}
.production-chart-footer strong{color:#5f6377;margin-left:3px}
.production-chart-footer strong.negative{color:#d96670}
.production-table-component{background:#fff;border:1px solid #ececf3;border-radius:11px;display:block;margin-top:12px;padding:17px}
.production-table-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}
.production-table-heading>div:first-child>p{color:#dc9142;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.production-table-heading h3{font-family:'Plus Jakarta Sans';font-size:17px;margin:0}
.production-table-heading>div:first-child>span{color:#9a9dac;display:block;font-size:13px;margin-top:5px}
.production-table-filters{align-items:flex-end;display:flex;gap:7px}
.production-search{align-items:center;border:1px solid var(--line);border-radius:7px;display:flex;height:34px;padding:0 9px}
.production-search>span{color:#9295a7;font-size:20px;margin-right:5px}
.production-search input{border:0;color:#5f6376;font:17px 'DM Sans';outline:0;width:180px}
.production-table-filters>label:last-child>span{color:#999cab;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.production-table-filters select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#65697d;font:600 13px 'DM Sans';height:34px;padding:0 9px}
.production-table-scroll{margin-top:15px;overflow-x:auto}
.production-table-component table{border-collapse:collapse;min-width:850px;width:100%}
.production-table-component th{border-bottom:1px solid var(--line);padding:0 8px 9px;text-align:left;white-space:nowrap}
.production-table-component th:first-child,.production-table-component td:first-child{padding-left:0}
.production-table-component th:last-child,.production-table-component td:last-child{padding-right:0}
.production-table-component th button{background:none;border:0;color:#adafbd;cursor:pointer;font:700 12px 'DM Sans';padding:0}
.production-table-component th button i{color:#dc9142;font-size:14px;font-style:normal;margin-left:3px}
.production-table-component td{border-bottom:1px solid #f0f0f5;color:#85899b;font-size:13px;padding:11px 8px;white-space:nowrap}
.production-table-component tbody tr:last-child td{border-bottom:0}
.production-table-component tbody tr:hover{background:#fffdfa}
.production-job-id{color:#c47d30}
.production-job-copy strong,.production-job-copy small,.production-output strong,.production-output small{display:block}
.production-job-copy strong{color:#565a70;font-size:13px}
.production-job-copy small,.production-output small{color:#a5a8b6;font-size:12px;margin-top:3px}
.production-output i{background:#f0f0f4;border-radius:3px;display:block;height:3px;margin-top:5px;overflow:hidden;width:84px}
.production-output i b{background:#e4a143;border-radius:3px;display:block;height:100%}
.production-efficiency{font-size:13px}
.production-efficiency.good{color:#299c89}
.production-efficiency.watch{color:#d38d3d}
.production-efficiency.low{color:#d96670}
.production-status{border-radius:12px;display:inline-block;font-size:12px;font-weight:700;padding:5px 7px}
.production-status.done{background:#e5f8f4;color:#299c89}
.production-status.wip{background:#e9efff;color:#6278c8}
.production-status.qc{background:#f0efff;color:#6f65d9}
.production-status.rework{background:#ffebed;color:#d96670}
.production-table-empty{padding:42px 20px;text-align:center}
.production-table-empty>span{background:#fff1dc;border-radius:50%;color:#dc9142;display:inline-block;font-size:23px;height:36px;line-height:36px;width:36px}
.production-table-empty strong,.production-table-empty p{display:block}
.production-table-empty strong{font-size:14px;margin-top:10px}
.production-table-empty p{color:#a0a3b2;font-size:13px;margin:5px 0 0}
.production-table-footer{align-items:center;border-top:1px solid #f0f0f5;color:#a0a3b1;display:flex;font-size:13px;justify-content:space-between;padding-top:12px}
.production-table-footer strong{color:#5f6377}
.production-table-component .sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}
.production-table-component :where(button,input,select):focus-visible{outline:3px solid #7a4310;outline-offset:3px}
.production-search:focus-within{border-color:#b76c20;box-shadow:0 0 0 3px #fff1dc}
.production-search input:focus-visible{outline:0}
.finance-report-heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}
.finance-report-heading>div>p{color:#399b65;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.finance-report-heading h3{font-family:'Plus Jakarta Sans';font-size:19px;margin:0}
.finance-report-heading>div>span{color:#9a9dac;display:block;font-size:14px;margin-top:6px}
.finance-period-picker>span{color:#9699aa;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.finance-period-picker select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#64687c;font:600 14px 'DM Sans';min-width:155px;padding:9px 10px}
.finance-kpi-grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin:17px 0 12px}
.finance-kpi-grid article{align-items:center;background:#fff;border:1px solid #ececf3;border-radius:10px;display:flex;gap:10px;padding:13px}
.finance-kpi-icon{border-radius:7px;flex-shrink:0;font-size:16px;font-weight:700;height:29px;line-height:29px;text-align:center;width:29px}
.finance-kpi-icon.blue{background:#e8f1ff;color:#5c8dd1}
.finance-kpi-icon.green{background:#e8f7ed;color:#399b65}
.finance-kpi-icon.orange{background:#fff1dc;color:#dc9142}
.finance-kpi-icon.purple{background:#ece9ff;color:#6d63dd}
.finance-kpi-grid small,.finance-kpi-grid strong,.finance-kpi-grid em{display:block}
.finance-kpi-grid small{color:#9ca0af;font-size:12px}
.finance-kpi-grid strong{font-family:'Plus Jakarta Sans';font-size:18px;margin-top:4px}
.finance-kpi-grid strong.positive,.finance-chart-footer .positive{color:#27936a}
.finance-kpi-grid strong.warning{color:#d38d3d}
.finance-kpi-grid strong.negative{color:#d96670}
.finance-kpi-grid em{color:#afb1bd;font-size:12px;font-style:normal;margin-top:3px;white-space:nowrap}
.finance-chart-card{border:1px solid #ececf3;border-radius:11px;overflow:hidden;padding:17px}
.finance-chart-toolbar{align-items:flex-start;display:flex;justify-content:space-between}
.finance-chart-toolbar h4{font-family:'Plus Jakarta Sans';font-size:15px;margin:0}
.finance-chart-toolbar p{color:#a0a3b2;font-size:13px;margin:4px 0 0}
.finance-chart-legend{display:flex;gap:14px}
.finance-chart-legend span{color:#8e92a3;font-size:13px}
.finance-chart-legend i{border-radius:2px;display:inline-block;height:7px;margin-right:5px;width:7px}
.finance-chart-legend i.income{background:#4aad7a}
.finance-chart-legend i.expense{background:#e78589}
.finance-chart-body{display:grid;grid-template-columns:28px minmax(580px,1fr);margin-top:17px;overflow-x:auto}
.finance-scale{color:#afb1bd;display:flex;flex-direction:column;font-size:12px;height:220px;justify-content:space-between;padding-bottom:26px;text-align:right}
.finance-plot{height:220px;position:relative}
.finance-grid{bottom:26px;display:flex;flex-direction:column;justify-content:space-between;left:10px;position:absolute;right:0;top:0}
.finance-grid i{border-top:1px dashed #ececf3}
.finance-bars{bottom:0;display:flex;gap:16px;height:220px;justify-content:space-around;left:16px;position:absolute;right:6px}
.finance-bar-group{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:flex-end;max-width:84px;min-width:48px}
.finance-bar-stack{align-items:flex-end;display:flex;gap:5px;height:185px;justify-content:center;width:100%}
.finance-bar{border-radius:4px 4px 1px 1px;display:block;min-height:3px;position:relative;width:27%}
.finance-bar.income{background:linear-gradient(#65c18f,#3aa66e)}
.finance-bar.expense{background:linear-gradient(#f1a0a3,#dd7479)}
.finance-bar i{background:#2d2e41;border-radius:4px;color:#fff;font-size:11px;font-style:normal;left:50%;opacity:0;padding:3px 4px;pointer-events:none;position:absolute;top:-18px;transform:translateX(-50%);transition:.15s;white-space:nowrap}
.finance-bar:hover i{opacity:1}
.finance-bar-group>strong{color:#a0a3b1;font-size:12px;font-weight:500;margin-top:9px;white-space:nowrap}
.finance-chart-footer{border-top:1px solid #f0f0f5;color:#9a9dac;display:flex;font-size:13px;gap:24px;padding-top:12px}
.finance-chart-footer strong{color:#5f6377;margin-left:3px}
.receivables-table-component{background:#fff;border:1px solid #ececf3;border-radius:11px;display:block;margin-top:12px;padding:17px}
.receivables-table-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}
.receivables-table-heading>div:first-child>p{color:#399b65;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.receivables-table-heading h3{font-family:'Plus Jakarta Sans';font-size:17px;margin:0}
.receivables-table-heading>div:first-child>span{color:#9a9dac;display:block;font-size:13px;margin-top:5px}
.receivables-table-filters{align-items:flex-end;display:flex;gap:7px}
.receivables-search{align-items:center;border:1px solid var(--line);border-radius:7px;display:flex;height:34px;padding:0 9px}
.receivables-search>span{color:#9295a7;font-size:20px;margin-right:5px}
.receivables-search input{border:0;color:#5f6376;font:17px 'DM Sans';outline:0;width:175px}
.receivables-table-filters>label:last-child>span{color:#999cab;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.receivables-table-filters select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#65697d;font:600 13px 'DM Sans';height:34px;padding:0 9px}
.receivables-table-scroll{margin-top:15px;overflow-x:auto}
.receivables-table-component table{border-collapse:collapse;min-width:850px;width:100%}
.receivables-table-component th{border-bottom:1px solid var(--line);padding:0 7px 9px;text-align:left;white-space:nowrap}
.receivables-table-component th:first-child,.receivables-table-component td:first-child{padding-left:0}
.receivables-table-component th:last-child,.receivables-table-component td:last-child{padding-right:0}
.receivables-table-component th button{background:none;border:0;color:#adafbd;cursor:pointer;font:700 12px 'DM Sans';padding:0}
.receivables-table-component th button i{color:#399b65;font-size:14px;font-style:normal;margin-left:3px}
.receivables-table-component td{border-bottom:1px solid #f0f0f5;color:#85899b;font-size:13px;padding:11px 7px;white-space:nowrap}
.receivables-table-component tbody tr:last-child td{border-bottom:0}
.receivables-table-component tbody tr:hover{background:#fafffb}
.receivables-table-component .align-right{text-align:right}
.receivable-invoice-id{color:#399b65}
.receivable-customer{align-items:center;display:flex;gap:7px}
.receivable-customer i{background:#e8f7ed;border-radius:50%;color:#399b65;font-size:12px;font-style:normal;font-weight:700;height:22px;line-height:22px;text-align:center;width:22px}
.receivable-customer strong{color:#565a70;font-weight:600}
.receivable-aging{border-radius:11px;display:inline-block;font-size:12px;font-weight:700;padding:5px 7px}
.receivable-aging.current{background:#e9efff;color:#6278c8}
.receivable-aging.days30{background:#fff3df;color:#d38d3d}
.receivable-aging.days60,.receivable-aging.days90{background:#ffebed;color:#d96670}
.aging-caption{color:#a5a8b6;display:block;font-size:11px;margin-top:3px}
.receivable-balance{color:#565a70}
.receivables-table-empty{padding:42px 20px;text-align:center}
.receivables-table-empty>span{background:#e8f7ed;border-radius:50%;color:#399b65;display:inline-block;font-size:23px;height:36px;line-height:36px;width:36px}
.receivables-table-empty strong,.receivables-table-empty p{display:block}
.receivables-table-empty strong{font-size:14px;margin-top:10px}
.receivables-table-empty p{color:#a0a3b2;font-size:13px;margin:5px 0 0}
.receivables-table-footer{align-items:center;border-top:1px solid #f0f0f5;color:#a0a3b1;display:flex;font-size:13px;gap:16px;padding-top:12px}
.receivables-table-footer strong{color:#5f6377}
.receivables-table-footer a{color:#399b65;font-weight:700;margin-left:auto;text-decoration:none}
.stock-report-heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}
.stock-report-heading>div>p{color:#279f92;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.stock-report-heading h3{font-family:'Plus Jakarta Sans';font-size:19px;margin:0}
.stock-report-heading>div>span{color:#9a9dac;display:block;font-size:14px;margin-top:6px}
.stock-period-picker>span{color:#9699aa;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.stock-period-picker select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#64687c;font:600 14px 'DM Sans';min-width:155px;padding:9px 10px}
.stock-kpi-grid{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin:17px 0 12px}
.stock-kpi-grid article{align-items:center;background:#fff;border:1px solid #ececf3;border-radius:10px;display:flex;gap:10px;padding:13px}
.stock-kpi-icon{border-radius:7px;flex-shrink:0;font-size:16px;font-weight:700;height:29px;line-height:29px;text-align:center;width:29px}
.stock-kpi-icon.teal{background:#e2f7f3;color:#279f92}
.stock-kpi-icon.orange{background:#fff1dc;color:#dc9142}
.stock-kpi-icon.purple{background:#ece9ff;color:#6d63dd;font-size:12px}
.stock-kpi-icon.red{background:#ffebed;color:#d96670}
.stock-kpi-grid small,.stock-kpi-grid strong,.stock-kpi-grid em{display:block}
.stock-kpi-grid small{color:#9ca0af;font-size:12px}
.stock-kpi-grid strong{font-family:'Plus Jakarta Sans';font-size:18px;margin-top:4px}
.stock-kpi-grid strong.positive,.stock-chart-footer .positive{color:#27936a}
.stock-kpi-grid strong.negative,.stock-chart-footer .negative{color:#d96670}
.stock-kpi-grid em{color:#afb1bd;font-size:12px;font-style:normal;margin-top:3px;white-space:nowrap}
.stock-chart-card{border:1px solid #ececf3;border-radius:11px;overflow:hidden;padding:17px}
.stock-chart-toolbar{align-items:flex-start;display:flex;justify-content:space-between}
.stock-chart-toolbar h4{font-family:'Plus Jakarta Sans';font-size:15px;margin:0}
.stock-chart-toolbar p{color:#a0a3b2;font-size:13px;margin:4px 0 0}
.stock-chart-legend{display:flex;gap:14px}
.stock-chart-legend span{color:#8e92a3;font-size:13px}
.stock-chart-legend i{border-radius:2px;display:inline-block;height:7px;margin-right:5px;width:7px}
.stock-chart-legend i.incoming{background:#3fb09f}
.stock-chart-legend i.outgoing{background:#e2a24a}
.stock-chart-body{display:grid;grid-template-columns:28px minmax(580px,1fr);margin-top:17px;overflow-x:auto}
.stock-scale{color:#afb1bd;display:flex;flex-direction:column;font-size:12px;height:220px;justify-content:space-between;padding-bottom:26px;text-align:right}
.stock-plot{height:220px;position:relative}
.stock-grid{bottom:26px;display:flex;flex-direction:column;justify-content:space-between;left:10px;position:absolute;right:0;top:0}
.stock-grid i{border-top:1px dashed #ececf3}
.stock-bars{bottom:0;display:flex;gap:16px;height:220px;justify-content:space-around;left:16px;position:absolute;right:6px}
.stock-bar-group{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:flex-end;max-width:84px;min-width:48px}
.stock-bar-stack{align-items:flex-end;display:flex;gap:5px;height:185px;justify-content:center;width:100%}
.stock-bar{border-radius:4px 4px 1px 1px;display:block;min-height:3px;position:relative;width:27%}
.stock-bar.incoming{background:linear-gradient(#5ac7b7,#329f91)}
.stock-bar.outgoing{background:linear-gradient(#efba69,#da9540)}
.stock-bar i{background:#2d2e41;border-radius:4px;color:#fff;font-size:11px;font-style:normal;left:50%;opacity:0;padding:3px 4px;pointer-events:none;position:absolute;top:-18px;transform:translateX(-50%);transition:.15s;white-space:nowrap}
.stock-bar:hover i{opacity:1}
.stock-bar-group>strong{color:#a0a3b1;font-size:12px;font-weight:500;margin-top:9px;white-space:nowrap}
.stock-chart-footer{border-top:1px solid #f0f0f5;color:#9a9dac;display:flex;font-size:13px;gap:24px;padding-top:12px}
.stock-chart-footer strong{color:#5f6377;margin-left:3px}
.stock-table-component{background:#fff;border:1px solid #ececf3;border-radius:11px;display:block;margin-top:12px;padding:17px}
.stock-table-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}
.stock-table-heading>div:first-child>p{color:#279f92;font-size:13px;font-weight:800;letter-spacing:1.1px;margin:0 0 7px}
.stock-table-heading h3{font-family:'Plus Jakarta Sans';font-size:17px;margin:0}
.stock-table-heading>div:first-child>span{color:#9a9dac;display:block;font-size:13px;margin-top:5px}
.stock-table-filters{align-items:flex-end;display:flex;gap:7px}
.stock-search{align-items:center;border:1px solid var(--line);border-radius:7px;display:flex;height:34px;padding:0 9px}
.stock-search>span{color:#9295a7;font-size:20px;margin-right:5px}
.stock-search input{border:0;color:#5f6376;font:17px 'DM Sans';outline:0;width:150px}
.stock-table-filters>label:not(.stock-search)>span{color:#999cab;display:block;font-size:12px;font-weight:700;margin:0 0 5px 2px}
.stock-table-filters select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#65697d;font:600 13px 'DM Sans';height:34px;padding:0 8px}
.stock-table-scroll{margin-top:15px;overflow-x:auto}
.stock-table-component table{border-collapse:collapse;min-width:980px;width:100%}
.stock-table-component th{border-bottom:1px solid var(--line);padding:0 7px 9px;text-align:left;white-space:nowrap}
.stock-table-component th:first-child,.stock-table-component td:first-child{padding-left:0}
.stock-table-component th:last-child,.stock-table-component td:last-child{padding-right:0}
.stock-table-component th button{background:none;border:0;color:#adafbd;cursor:pointer;font:700 12px 'DM Sans';padding:0}
.stock-table-component th button i{color:#279f92;font-size:14px;font-style:normal;margin-left:3px}
.stock-table-component td{border-bottom:1px solid #f0f0f5;color:#85899b;font-size:13px;padding:11px 7px;white-space:nowrap}
.stock-table-component tbody tr:last-child td{border-bottom:0}
.stock-table-component tbody tr:hover{background:#fafffe}
.stock-table-component .align-right{text-align:right}
.stock-sku{color:#279f92}
.stock-material{align-items:center;display:flex;gap:7px}
.stock-material i{background:#e2f7f3;border-radius:7px;color:#279f92;font-size:15px;font-style:normal;height:25px;line-height:25px;text-align:center;width:25px}
.stock-material strong{color:#565a70;font-weight:600}
.stock-quantity strong,.stock-quantity small{display:block}
.stock-quantity strong{color:#5c6074}
.stock-quantity small{color:#a5a8b6;font-size:11px;margin-top:3px}
.stock-availability{align-items:center;display:flex;gap:6px}
.stock-availability>strong{font-size:12px;width:26px}
.stock-availability>i{background:#f0f0f4;border-radius:3px;display:block;height:4px;overflow:hidden;width:70px}
.stock-availability>i b{border-radius:3px;display:block;height:100%}
.stock-availability>i b.healthy{background:#3eae87}
.stock-availability>i b.low{background:#dda043}
.stock-availability>i b.critical{background:#df7479}
.stock-value{color:#565a70}
.stock-condition{border-radius:12px;display:inline-block;font-size:12px;font-weight:700;padding:5px 7px}
.stock-condition.healthy{background:#e5f8f4;color:#299c89}
.stock-condition.low{background:#fff3df;color:#d38d3d}
.stock-condition.critical{background:#ffebed;color:#d96670}
.stock-table-empty{padding:42px 20px;text-align:center}
.stock-table-empty>span{background:#e2f7f3;border-radius:50%;color:#279f92;display:inline-block;font-size:23px;height:36px;line-height:36px;width:36px}
.stock-table-empty strong,.stock-table-empty p{display:block}
.stock-table-empty strong{font-size:14px;margin-top:10px}
.stock-table-empty p{color:#a0a3b2;font-size:13px;margin:5px 0 0}
.stock-table-footer{align-items:center;border-top:1px solid #f0f0f5;color:#a0a3b1;display:flex;font-size:13px;gap:16px;padding-top:12px}
.stock-table-footer strong{color:#5f6377}
.stock-table-footer a{color:#279f92;font-weight:700;margin-left:auto;text-decoration:none}
@keyframes panel-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.sales-kpi-grid,.production-kpi-grid,.finance-kpi-grid,.stock-kpi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1000px){.report-top-nav{display:none}.reports-shell{grid-template-columns:220px minmax(0,1fr)}.panel-placeholder-wide{grid-template-columns:1fr}.skeleton-chart{height:150px}}
@media(max-width:760px){.reports-shell{grid-template-columns:1fr}.report-area-nav{min-height:0;padding:13px}.area-nav-heading,.area-nav-list,.area-nav-note{display:none}.area-mobile-select{display:block}.area-mobile-select span{color:#9295a7;display:block;font-size:13px;font-weight:700;margin:0 0 6px 2px}.area-mobile-select select{background:#fff;border:1px solid var(--line);border-radius:7px;color:#5f6378;font:600 15px 'DM Sans';padding:10px;width:100%}.report-workspace{min-height:560px;padding:18px}.workspace-header{align-items:flex-start;flex-direction:column}.workspace-actions{width:100%}.workspace-actions button{flex:1}.placeholder-grid{grid-template-columns:1fr}.empty-area{min-height:330px}}
@media(max-width:700px){.sales-table-heading,.production-table-heading,.receivables-table-heading,.stock-table-heading{flex-direction:column}.sales-table-filters,.production-table-filters,.receivables-table-filters,.stock-table-filters{width:100%}.sales-search,.production-search,.receivables-search,.stock-search{flex:1}.sales-search input,.production-search input,.receivables-search input,.stock-search input{width:100%}.stock-table-filters{flex-wrap:wrap}.stock-search{min-width:100%}}
@media(max-width:520px){.reports-intro{align-items:flex-start}.report-context{width:100%}.panel-placeholder{padding:16px}.panel-placeholder-wide{grid-template-columns:1fr}.skeleton-chart{gap:7px;padding-left:5px;padding-right:5px}.workspace-actions{flex-direction:column}.workspace-actions button{width:100%}.sales-report-heading,.production-report-heading,.finance-report-heading,.stock-report-heading{flex-direction:column}.period-picker,.period-picker select,.production-period-picker,.production-period-picker select,.finance-period-picker,.finance-period-picker select,.stock-period-picker,.stock-period-picker select{width:100%}.sales-kpi-grid,.production-kpi-grid,.finance-kpi-grid,.stock-kpi-grid{grid-template-columns:1fr}.sales-chart-card,.production-chart-card,.finance-chart-card,.stock-chart-card{padding:13px}.sales-chart-footer,.production-chart-footer,.finance-chart-footer,.stock-chart-footer{align-items:flex-start;flex-direction:column;gap:6px}.sales-table-filters,.production-table-filters,.receivables-table-filters,.stock-table-filters{align-items:stretch;flex-direction:column}.sales-table-filters select,.production-table-filters select,.receivables-table-filters select,.stock-table-filters select{width:100%}.sales-table-footer,.production-table-footer,.receivables-table-footer,.stock-table-footer{align-items:flex-start;flex-direction:column;gap:6px}.receivables-table-footer a,.stock-table-footer a{margin-left:0}}
