/* Pivoteka ERP Finance Analytics v4 — director-first P&L + cash flow workspace */
:root{--fa-bg:#f5f7fb;--fa-card:#fff;--fa-ink:#172033;--fa-muted:#6b7588;--fa-line:#e2e7ef;--fa-soft:#f8fafc;--fa-accent:#3f6ee8;--fa-accent-soft:#eef4ff;--fa-positive:#16835d;--fa-negative:#c44b55;--fa-shadow:0 18px 50px rgba(25,40,72,.16)}
.fa-shell,.fa-shell *{box-sizing:border-box}.fa-shell{position:relative;background:var(--fa-bg);border:1px solid #e6eaf1;border-radius:18px;overflow:hidden;color:var(--fa-ink);font-size:14px;min-height:700px}.fa-top{padding:20px 22px 14px;background:#fff;border-bottom:1px solid var(--fa-line);position:relative;z-index:2}.fa-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.fa-title h2{margin:0;font-size:28px;line-height:1.1;font-weight:750;letter-spacing:-.025em}.fa-title p{margin:6px 0 0;color:var(--fa-muted);font-size:13px}.fa-mode{display:inline-flex;border:1px solid var(--fa-line);border-radius:11px;padding:3px;background:#f7f9fc;gap:3px}.fa-mode button{border:0;background:transparent;border-radius:8px;padding:8px 13px;color:#566075;font-weight:650;cursor:pointer}.fa-mode button.active{background:#fff;color:var(--fa-ink);box-shadow:0 1px 3px rgba(20,34,60,.1)}
.fa-toolbar{display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(180px,.8fr) minmax(180px,.8fr) minmax(190px,.9fr);gap:10px;margin-top:16px}.fa-control{min-width:0;border:1px solid var(--fa-line);background:#fff;border-radius:11px;padding:8px 10px}.fa-control>span{display:block;color:var(--fa-muted);font-size:11px;font-weight:650;margin-bottom:3px}.fa-control strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-control select,.fa-control input{border:0!important;outline:0;background:transparent;width:100%;padding:0!important;min-width:0;color:var(--fa-ink);font:inherit;font-weight:650}.fa-date-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:5px}.fa-date-pair i{color:#9aa3b2;font-style:normal}.fa-store-strip{display:flex;align-items:center;gap:7px;overflow-x:auto;padding:12px 0 1px;scrollbar-width:thin}.fa-store-strip button{flex:0 0 auto;border:1px solid var(--fa-line);background:#fff;color:#586278;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:650;cursor:pointer}.fa-store-strip button.active{border-color:#b9caf8;background:var(--fa-accent-soft);color:#2457ce}.fa-context-line{margin-top:11px;display:flex;gap:7px;align-items:center;flex-wrap:wrap;color:#566075;font-size:12px}.fa-context-line b{color:var(--fa-ink)}.fa-dot{width:4px;height:4px;border-radius:50%;background:#b8bfcb;display:inline-block}
.fa-content{padding:16px 18px 22px}.fa-summary-grid{display:grid;grid-template-columns:1.15fr 1fr .92fr;gap:12px}.fa-card{background:var(--fa-card);border:1px solid var(--fa-line);border-radius:14px;min-width:0}.fa-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 15px 10px}.fa-card-head h3{margin:0;font-size:15px;font-weight:750}.fa-card-head small{color:var(--fa-muted);font-size:11px}.fa-info{width:22px;height:22px;border-radius:50%;border:1px solid var(--fa-line);display:grid;place-items:center;color:#7f899a;background:#fff;font-size:12px}.fa-metric-list{padding:0 15px 14px}.fa-metric-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:0;border-top:1px solid #edf0f5;background:transparent;padding:10px 2px;text-align:left;color:inherit;cursor:pointer}.fa-metric-row:first-child{border-top:0}.fa-metric-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-metric-row strong{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.fa-metric-row em{font-style:normal;font-size:11px;min-width:58px;text-align:right}.fa-metric-row:hover,.fa-click-row:hover{background:#f8faff}.fa-metric-row.selected,.fa-click-row.selected{background:var(--fa-accent-soft);box-shadow:inset 3px 0 0 var(--fa-accent)}.fa-total{margin-top:3px;border-top:1px solid #cfd6e1;padding-top:13px}.fa-total strong{font-size:20px}.fa-positive{color:var(--fa-positive)!important}.fa-negative{color:var(--fa-negative)!important}.fa-neutral{color:#6f798a!important}
.fa-money-total{padding:4px 15px 12px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.fa-money-total strong{font-size:25px;letter-spacing:-.02em}.fa-money-total small{color:var(--fa-muted)}.fa-wallet-split{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 15px 14px}.fa-wallet-split button{border:1px solid var(--fa-line);background:#fafbfd;border-radius:10px;padding:10px;text-align:left;cursor:pointer}.fa-wallet-split span{display:block;color:var(--fa-muted);font-size:11px}.fa-wallet-split strong{display:block;margin-top:3px;font-size:14px}.fa-balance-list{padding:0 15px 14px;display:grid;gap:2px}.fa-balance-list button{border:0;background:transparent;padding:8px 2px;display:flex;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;border-top:1px solid #edf0f5}.fa-balance-list button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fa-balance-list button strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.fa-main-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:12px;margin-top:12px}.fa-trend{padding:14px 15px}.fa-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.fa-section-title h3{margin:0;font-size:15px}.fa-section-title p{margin:4px 0 0;color:var(--fa-muted);font-size:11px}.fa-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:#626c7d}.fa-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.fa-chart{height:230px;margin-top:8px;position:relative}.fa-chart svg{width:100%;height:100%;overflow:visible}.fa-chart .grid{stroke:#e9edf3;stroke-width:1}.fa-chart .axis-text{fill:#8a94a5;font-size:10px}.fa-chart .line-a{stroke:var(--fa-accent);fill:none;stroke-width:2.5}.fa-chart .line-b{stroke:var(--fa-positive);fill:none;stroke-width:2.2}.fa-chart .line-c{stroke:#8d6bd5;fill:none;stroke-width:2.2}.fa-chart .point{fill:#fff;stroke-width:2}.fa-chart .area{fill:rgba(63,110,232,.05)}
.fa-spend{padding:14px 15px}.fa-table-head,.fa-spend-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 55px 72px;align-items:center;gap:8px}.fa-table-head{padding:9px 7px;color:var(--fa-muted);font-size:10px;border-bottom:1px solid var(--fa-line)}.fa-spend-row{width:100%;border:0;border-bottom:1px solid #edf0f5;background:transparent;padding:10px 7px;color:inherit;text-align:left;cursor:pointer}.fa-spend-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fa-spend-row strong,.fa-spend-row em{text-align:right;white-space:nowrap;font-style:normal;font-variant-numeric:tabular-nums}.fa-spend-row em{font-size:11px}.fa-bar{height:4px;background:#eef1f6;border-radius:999px;overflow:hidden;margin-top:5px}.fa-bar i{display:block;height:100%;background:var(--fa-accent);border-radius:inherit}
.fa-bridge{margin-top:12px;padding:14px 15px}.fa-bridge-flow{display:flex;align-items:stretch;gap:7px;margin-top:12px;overflow-x:auto;padding-bottom:3px}.fa-bridge-node{min-width:145px;flex:1;border:1px solid var(--fa-line);border-radius:10px;padding:10px;background:#fafbfd}.fa-bridge-node span{display:block;color:var(--fa-muted);font-size:10px;min-height:28px}.fa-bridge-node strong{display:block;margin-top:5px;font-size:14px;white-space:nowrap}.fa-bridge-arrow{align-self:center;color:#a6afbd;font-size:18px}.fa-bridge-node.final{background:var(--fa-accent-soft);border-color:#c7d5fb}
.fa-points{margin-top:12px;overflow:hidden}.fa-points .fa-card-head{padding-bottom:12px}.fa-points-table{overflow-x:auto}.fa-points-grid{min-width:760px}.fa-point-head,.fa-point-row{display:grid;grid-template-columns:minmax(150px,1.3fr) repeat(6,minmax(90px,1fr));align-items:center;gap:9px;padding:0 15px}.fa-point-head{height:34px;background:#fafbfd;color:var(--fa-muted);font-size:10px;border-top:1px solid var(--fa-line);border-bottom:1px solid var(--fa-line)}.fa-point-row{min-height:47px;border-bottom:1px solid #edf0f5;background:#fff;cursor:pointer}.fa-point-row:hover{background:#f8faff}.fa-point-row>span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.fa-point-row b{font-weight:700}.fa-point-name{display:flex;align-items:center;gap:8px;min-width:0}.fa-point-name i{width:7px;height:7px;border-radius:50%;background:#9aa7bd;flex:none}.fa-point-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fa-detail-scrim{position:absolute;inset:0;background:rgba(22,31,50,.08);z-index:8;pointer-events:none}.fa-detail{position:absolute;right:0;top:0;bottom:0;width:min(48%,610px);min-width:430px;background:#fff;border-left:1px solid #dfe4ec;box-shadow:var(--fa-shadow);z-index:9;display:flex;flex-direction:column;animation:faSlide .18s ease-out}.fa-detail-head{padding:15px 17px 13px;border-bottom:1px solid var(--fa-line);background:#fff}.fa-detail-nav{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px}.fa-icon-btn{width:34px;height:34px;border:1px solid var(--fa-line);background:#fff;border-radius:9px;color:#596477;display:grid;place-items:center;cursor:pointer;font-size:18px}.fa-icon-btn:disabled{opacity:.35;cursor:default}.fa-detail-title{min-width:0}.fa-detail-title h3{margin:0;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-detail-title p{margin:4px 0 0;color:var(--fa-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-breadcrumb{margin-top:10px;color:#7d8798;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-detail-body{padding:16px 17px 24px;overflow:auto}.fa-detail-kpi{padding:14px;border:1px solid var(--fa-line);border-radius:12px;background:#fafbfd}.fa-detail-kpi span{display:block;color:var(--fa-muted);font-size:11px}.fa-detail-kpi strong{display:block;margin-top:4px;font-size:27px;letter-spacing:-.02em}.fa-tabs{display:flex;gap:4px;border-bottom:1px solid var(--fa-line);margin:14px 0 8px}.fa-tabs button{border:0;background:transparent;padding:9px 10px;color:#687286;font-size:12px;font-weight:650;cursor:pointer;border-bottom:2px solid transparent}.fa-tabs button.active{color:#2457ce;border-bottom-color:var(--fa-accent)}.fa-detail-list{display:grid}.fa-detail-row{display:grid;grid-template-columns:84px minmax(0,1fr) auto 18px;gap:9px;align-items:center;padding:11px 4px;border-bottom:1px solid #edf0f5;cursor:pointer}.fa-detail-row:hover{background:#f8faff}.fa-detail-row time{font-size:11px;color:#748094}.fa-detail-row span{min-width:0}.fa-detail-row span b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-detail-row span small{display:block;color:var(--fa-muted);font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-detail-row strong{font-size:12px;white-space:nowrap}.fa-detail-row i{font-style:normal;color:#9aa4b4}.fa-op-card{display:grid;gap:12px}.fa-op-amount{font-size:30px;font-weight:750;letter-spacing:-.025em}.fa-op-type{color:var(--fa-muted);margin-top:-8px}.fa-op-grid{display:grid;grid-template-columns:130px minmax(0,1fr);gap:9px 12px;border-top:1px solid var(--fa-line);padding-top:13px}.fa-op-grid dt{color:var(--fa-muted);font-size:11px}.fa-op-grid dd{margin:0;font-size:12px;font-weight:600;min-width:0;overflow-wrap:anywhere}.fa-tech{margin-top:14px;border-top:1px solid var(--fa-line);padding-top:12px}.fa-tech summary{cursor:pointer;color:#667185;font-size:12px;font-weight:650}.fa-empty{padding:30px 12px;text-align:center;color:var(--fa-muted);font-size:12px}.fa-loading{padding:14px;text-align:center;color:var(--fa-muted)}
@keyframes faSlide{from{transform:translateX(28px);opacity:.5}to{transform:none;opacity:1}}
@media(max-width:1180px){.fa-summary-grid{grid-template-columns:1fr 1fr}.fa-summary-grid>.fa-card:last-child{grid-column:1/-1}.fa-main-grid{grid-template-columns:1fr}.fa-toolbar{grid-template-columns:1fr 1fr}.fa-detail{width:58%;min-width:420px}}
@media(max-width:820px){.fa-top{padding:16px}.fa-content{padding:12px}.fa-title-row{flex-direction:column}.fa-toolbar{grid-template-columns:1fr}.fa-summary-grid{grid-template-columns:1fr}.fa-summary-grid>.fa-card:last-child{grid-column:auto}.fa-detail{position:fixed;inset:auto 8px 8px 8px;width:auto;min-width:0;max-height:82vh;border:1px solid var(--fa-line);border-radius:15px}.fa-detail-scrim{position:fixed}.fa-main-grid{grid-template-columns:1fr}.fa-chart{height:190px}}
@media(max-width:520px){.fa-mode{width:100%}.fa-mode button{flex:1}.fa-wallet-split{grid-template-columns:1fr}.fa-table-head,.fa-spend-row{grid-template-columns:minmax(0,1fr) 92px 58px}.fa-table-head>*:nth-child(3),.fa-spend-row>*:nth-child(3){display:none}.fa-detail-row{grid-template-columns:72px minmax(0,1fr) auto}.fa-detail-row>i{display:none}.fa-op-grid{grid-template-columns:105px minmax(0,1fr)}}
