:root{font-family:IBM Plex Sans,Trebuchet MS,Segoe UI,sans-serif;line-height:1.45;font-weight:500;color:#202124;background:#d9d9d9;--bg: #d9d9d9;--bg-panel: #f3f3f3;--surface: #ffffff;--surface-soft: #f7f7f7;--border: #bebebe;--border-strong: #979797;--text: #202124;--muted: #666c73;--blue: #2f6ea5;--blue-soft: #dce9f6;--orange: #df7b0f;--green: #92ab3b;--red: #b35f57;--amber: #bb8b2a;--shadow: inset 0 1px 0 rgba(255, 255, 255, .78)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:linear-gradient(180deg,#ffffff52 0,#fff0 16%),linear-gradient(180deg,#dadada 0,#d0d0d0);color:var(--text)}body,button,input,select,textarea{font:inherit}button,input,select{margin:0}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:340px minmax(0,1fr)}.shell-sidebar{min-height:100vh;display:grid;grid-template-columns:56px minmax(0,1fr);border-right:1px solid var(--border-strong);background:linear-gradient(180deg,#efefef 0,#ddd 55%,#d4d4d4)}.sidebar-rail{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:.9rem .45rem;border-right:1px solid var(--border);background:linear-gradient(180deg,#f7f7f7 0,#e4e4e4)}.rail-brand{width:100%;display:flex;justify-content:center}.rail-brand-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cc9f67;background:linear-gradient(180deg,#fff1dc 0,#f1d0a0);color:#7b4d10;font-size:.82rem;font-weight:800}.rail-actions{display:grid;gap:.55rem}.rail-button{width:36px;height:36px;border:1px solid var(--border);background:linear-gradient(180deg,#fbfbfb 0,#e6e6e6);color:var(--blue);box-shadow:var(--shadow)}.rail-button.active{border-color:#9fb8cf;background:linear-gradient(180deg,#e4eef9 0,#cfdff1)}.rail-status{margin-top:auto;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:linear-gradient(180deg,#f7f7f7 0,#e0e0e0);color:#595959;font-weight:700}.sidebar-panel{display:flex;flex-direction:column;min-width:0}.panel-header{padding:.95rem 1rem .85rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#fbfbfb 0,#ececec)}.panel-kicker,.topbar-kicker,.page-eyebrow{margin:0;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700}.panel-title,.topbar-title{margin:.22rem 0 0;font-weight:700}.company-select,.panel-search-input,.global-search,.field-input{width:100%;border:1px solid var(--border-strong);background:#fff;color:var(--text);padding:.48rem .62rem;box-shadow:inset 0 1px #ffffffe6}.company-select{margin-top:.75rem}.panel-search{padding:.8rem 1rem;border-bottom:1px solid var(--border)}.panel-search-label{display:block;margin-bottom:.35rem;color:var(--muted);font-size:.76rem;font-weight:700}.nav-tree,.drawer-view{flex:1;overflow-y:auto;padding:.85rem 1rem}.nav-group+.nav-group{margin-top:1rem}.nav-group-label{margin:0 0 .45rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:700}.nav-group-items{display:grid;gap:.3rem}.nav-link,.search-result{display:flex;align-items:center;gap:.65rem;padding:.54rem .62rem;border:1px solid transparent}.nav-link:hover,.search-result:hover{background:#eef4fa;border-color:#d8e2ee}.nav-link.active{background:linear-gradient(180deg,#d9e6f3 0,#c7d9ea);border-color:#aac0d3}.nav-badge{min-width:2rem;height:1.7rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:linear-gradient(180deg,#fafafa 0,#e6e6e6);color:var(--blue);font-size:.72rem;font-weight:700}.drawer-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.drawer-kicker{margin:0;font-size:.9rem;font-weight:700}.drawer-description{margin:.25rem 0 0;color:var(--muted);font-size:.86rem}.close-button,.ghost-button,.primary-button,.toolbar-pill,.settings-tab{border:1px solid var(--border);background:linear-gradient(180deg,#fbfbfb 0,#e6e6e6);color:var(--text);padding:.46rem .72rem;box-shadow:var(--shadow)}.primary-button{border-color:#2d6da4;background:linear-gradient(180deg,#4f9ce0 0,#2c6fa8);color:#fff}.drawer-list{display:grid;gap:.6rem}.drawer-link{display:grid;gap:.18rem;padding:.72rem;border:1px solid var(--border);background:var(--surface)}.drawer-link span{color:var(--muted);font-size:.84rem}.panel-footer{display:grid;gap:.25rem;padding:.8rem 1rem;border-top:1px solid var(--border);color:var(--muted);font-size:.78rem;background:linear-gradient(180deg,#ececec 0,#e3e3e3)}.shell-main{min-width:0;display:flex;flex-direction:column}.topbar{display:grid;grid-template-columns:auto minmax(320px,520px) auto;align-items:center;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-strong);background:linear-gradient(180deg,#f8f8f8 0,#e6e6e6)}.topbar-copy{min-width:0}.topbar-search{position:relative}.search-results{position:absolute;top:calc(100% + .25rem);left:0;right:0;z-index:20;border:1px solid var(--border-strong);background:#fff;box-shadow:0 10px 26px #0000001f}.topbar-actions{display:flex;align-items:center;gap:.5rem}.user-chip{border:1px solid #727272;background:linear-gradient(180deg,#5f5f5f 0,#454545);color:#fff;padding:.46rem .72rem;font-weight:700}.workspace{flex:1;padding:1rem;background:linear-gradient(180deg,#ffffff42 0,#fff0 16%),linear-gradient(180deg,#d9d9d9 0,#d0d0d0)}.page{display:grid;gap:1rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.page-title{margin:.18rem 0 0;font-size:2rem;font-weight:700}.page-subtitle{margin:.45rem 0 0;max-width:70ch;color:var(--muted)}.page-actions,.toolbar-pills{display:flex;flex-wrap:wrap;gap:.5rem}.toolbar-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.toolbar-pill.active,.settings-tab.active{border-color:#a7c0d7;background:linear-gradient(180deg,#e5eff9 0,#d3e2f0);color:var(--blue)}.toolbar-note{color:var(--muted);font-size:.84rem}.surface{border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow)}.inline-surface{padding:.9rem}.surface-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;padding:.72rem .86rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#f6f6f6 0,#e3e3e3)}.surface-head h2{margin:0;font-size:1rem}.surface-head p{margin:.22rem 0 0;color:var(--muted);font-size:.84rem}.selection-grid,.stats-grid,.form-grid,.content-grid,.dashboard-grid{display:grid;gap:1rem}.selection-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.selection-chip,.help-card{padding:.8rem;border:1px solid var(--border);background:var(--surface-soft)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:.9rem}.form-grid-inline{padding:0}.field{display:grid;gap:.35rem}.field span{font-size:.84rem;font-weight:700}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.widget-wide{grid-column:span 2}.widget-hero{display:flex;justify-content:space-between;align-items:baseline;padding:.9rem}.widget-hero strong{font-size:1.7rem}.widget-hero span,.text-link,.report-trend,.filter-meta{color:var(--blue);font-size:.84rem}.mini-table,.category-list,.report-bars,.stack-list{display:grid}.mini-table-row,.report-bar-row,.category-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.82rem .9rem;border-top:1px solid #ececec}.mini-table-row div,.category-copy{display:grid;gap:.2rem}.mini-table-row span,.category-copy span,.stat-card p,.report-card p,.bank-sync-card p,.empty-state p,.help-card p{color:var(--muted)}.status-chip{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:.2rem .48rem;border:1px solid var(--border);background:#f2f2f2;font-size:.76rem;font-weight:700}.status-chip.ok{border-color:#b4c98c;background:#eef4db;color:#607820}.status-chip.warn{border-color:#d4be8f;background:#fbefd3;color:#7f601b}.status-chip.danger{border-color:#d1a6a0;background:#f8e3e0;color:#8b4742}.status-chip.neutral{border-color:#c9c9c9;background:#f2f2f2;color:#5d5d5d}.triple-metric{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border)}.triple-metric div,.stat-card,.report-card{padding:.9rem;background:var(--surface)}.triple-metric span,.stat-card span{color:var(--muted);font-size:.82rem}.triple-metric strong,.stat-card strong{display:block;margin-top:.22rem;font-size:1.35rem}.trend-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem;align-items:end;padding:.9rem;min-height:250px}.trend-column{display:flex;flex-direction:column;align-items:center;gap:.45rem}.trend-bars{height:180px;display:flex;align-items:flex-end;gap:.28rem}.trend-bar{width:14px;border:1px solid var(--border)}.trend-bar.income{background:linear-gradient(180deg,#c6d790 0,#97b34e)}.trend-bar.expense{background:linear-gradient(180deg,#f1a4af 0,#d46d7d)}.trend-bar.profit{background:linear-gradient(180deg,#9ca1cd 0,#787cad)}.trend-label{color:var(--muted);font-size:.78rem}.category-meter,.report-bar-track{width:180px;height:12px;border:1px solid var(--border);background:#ececec}.category-meter span,.report-bar-track span{display:block;height:100%;background:linear-gradient(180deg,#88b4de 0,#4f89c0)}.bank-sync-card{display:grid;gap:.6rem;padding:1rem .9rem}.inline-action{width:fit-content}.notice-banner{padding:.8rem .9rem;border:1px solid #d6c08f;background:#fbefd3;color:#7f601b}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-grid{grid-template-columns:minmax(0,1fr) 320px}.content-main,.side-stack{display:grid;gap:1rem;align-content:start}.filter-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.86rem;border-bottom:1px solid var(--border)}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.68rem .86rem;border-bottom:1px solid #ececec;text-align:left;vertical-align:top}.data-table th{background:#f6f6f6;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.compact-table .data-table th,.compact-table .data-table td{padding:.54rem .7rem}.empty-state{display:grid;gap:.4rem;padding:1.25rem .9rem}.stack-list{margin:0;padding:.9rem 1rem 1rem 1.2rem;gap:.65rem}.report-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.report-card-top{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}.report-bars{padding:.75rem .9rem .9rem}.settings-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.help-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:.9rem}.help-card strong{display:block;margin-bottom:.35rem}.bank-status{padding:.9rem}.bank-status-copy{display:flex;flex-wrap:wrap;gap:.45rem}@media (max-width: 1400px){.report-grid,.selection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1220px){.app-shell{grid-template-columns:1fr}.shell-sidebar{min-height:auto}.dashboard-grid,.content-grid,.stats-grid,.report-grid{grid-template-columns:1fr}.widget-wide{grid-column:auto}}@media (max-width: 900px){.topbar,.form-grid,.help-grid,.selection-grid,.triple-metric{grid-template-columns:1fr}.page-header,.toolbar-row,.mini-table-row,.report-bar-row,.category-row{flex-direction:column;align-items:flex-start}.category-meter,.report-bar-track{width:100%}}@media (max-width: 680px){.shell-sidebar{grid-template-columns:1fr}.sidebar-rail{flex-direction:row;justify-content:space-between;border-right:0;border-bottom:1px solid var(--border)}.rail-actions{grid-auto-flow:column}.workspace,.topbar,.panel-header,.panel-search,.nav-tree,.drawer-view,.panel-footer{padding-left:.8rem;padding-right:.8rem}}
