:root{--bg: #F0F4F8;--bg-card: #ffffff;--bg-head: #F8FAFC;--bg-hover: #F8FAFC;--text: #1E293B;--text-2: #374151;--text-muted: #64748B;--text-faint: #94A3B8;--border: #E2E8F0;--border-light: #F1F5F9;--shadow: 0 1px 3px rgba(0,0,0,.07);--nav-bg: #1E293B;--green: #2D6A4F;--green-light: #52B788;--blue: #1D4ED8;--orange: #D97706;--grid-line: #F1F5F9}[data-theme=dark]{--bg: #0F172A;--bg-card: #1E293B;--bg-head: #162032;--bg-hover: #243447;--text: #F1F5F9;--text-2: #CBD5E1;--text-muted: #94A3B8;--text-faint: #64748B;--border: #334155;--border-light: #243447;--shadow: 0 1px 3px rgba(0,0,0,.4);--nav-bg: #080F1E;--green: #52B788;--green-light: #52B788;--blue: #60A5FA;--orange: #FBBF24;--grid-line: #1E2D3D}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);overflow:hidden}#root{display:flex;flex-direction:column;height:100%}.navbar{background:var(--nav-bg);height:52px;display:flex;align-items:center;padding:0 24px;gap:4px;flex-shrink:0;z-index:100}.navbar-logo{font-size:17px;font-weight:800;color:#52b788;letter-spacing:-1px;margin-right:16px}.nav-btn{height:34px;padding:0 13px;border-radius:8px;border:none;background:transparent;color:#94a3b8;cursor:pointer;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.nav-btn:hover{background:#2d3f55;color:#e2e8f0}.nav-btn.active{background:#2d6a4f;color:#fff}.nav-btn svg{width:15px;height:15px}.navbar-spacer{flex:1}.navbar-right{display:flex;align-items:center;gap:10px}.navbar-user{font-size:12px;color:#64748b}.dark-toggle{width:30px;height:30px;border-radius:8px;border:none;background:transparent;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.dark-toggle:hover{background:#2d3f55;color:#e2e8f0}.dark-toggle svg{width:15px;height:15px}.logout-btn{background:none;border:1px solid #334155;color:#94a3b8;border-radius:6px;padding:5px 12px;font-size:11px;cursor:pointer;transition:background .15s}.logout-btn:hover{background:#2d3f55;color:#e2e8f0}.main{flex:1;overflow-y:auto;padding:24px}.content-wrap{max-width:1280px;margin:0 auto}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.page-title{font-size:22px;font-weight:700;color:var(--text)}.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.kpi-card{background:var(--bg-card);border-radius:12px;padding:16px 20px;box-shadow:var(--shadow)}.kpi-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.kpi-value{font-size:26px;font-weight:700;color:var(--text)}.kpi-sub{font-size:11px;color:var(--text-faint);margin-top:4px}.kpi-card.green .kpi-value{color:var(--green)}.kpi-card.orange .kpi-value{color:var(--orange)}.kpi-card.blue .kpi-value{color:var(--blue)}.charts-row{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px}.charts-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.chart-card{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow);margin-bottom:0}.chart-card.mb{margin-bottom:14px}.chart-title{font-size:13px;font-weight:600;color:var(--text-2);margin-bottom:16px}.toolbar{display:flex;gap:10px;margin-bottom:16px}.btn{padding:8px 16px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:opacity .15s}.btn:hover{opacity:.85}.btn-primary{background:var(--green);color:#fff}.btn-secondary{background:var(--bg-card);color:var(--text-2);border:1px solid var(--border)}.btn-danger{background:#fee2e2;color:#b91c1c}.btn-sm{padding:4px 10px;font-size:12px}.expense-table-wrap{background:var(--bg-card);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:13px}thead th{background:var(--bg-head);padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border)}tbody tr{border-bottom:1px solid var(--border-light)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--bg-hover)}td{padding:10px 12px;color:var(--text)}.year-row td{background:#1e293b;color:#fff;font-weight:700;font-size:13px;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.year-row:hover td{background:#2d3f55}.summary-row td{background:var(--bg-head);font-weight:700;font-size:12px;color:var(--text-muted);border-top:2px solid var(--border)}.td-kopa{font-weight:700;color:var(--green)!important}.td-no-lienes{font-weight:600;color:var(--blue)!important}.td-empty{color:var(--border)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200}.modal{background:var(--bg-card);border-radius:14px;padding:28px;width:540px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040}.modal-title{font-size:17px;font-weight:700;margin-bottom:20px;color:var(--text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.full{grid-column:span 2}label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}input,select{padding:8px 10px;border:1px solid var(--border);border-radius:7px;font-size:13px;color:var(--text);background:var(--bg-head);outline:none;transition:border-color .15s}input:focus,select:focus{border-color:var(--green);background:var(--bg-card)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.custom-tooltip{background:#1e293b;border-radius:8px;padding:10px 14px;color:#fff;font-size:12px}.custom-tooltip .label{font-weight:600;margin-bottom:4px}.custom-tooltip .item{display:flex;gap:8px;justify-content:space-between}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
