@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-main:#131c16;--bg-surface:#1d2a21;--text-primary:#ecf3ee;--text-secondary:#8a988e;--accent-primary:#7cb36f;--accent-hover:#94c788;--accent-glow:#7cb36f26;--border-color:#7cb36f29;--border-color-subtle:#7cb36f14;--bg-overlay:#7cb36f0a;--bg-overlay-hover:#7cb36f14;--bg-overlay-deep:#7cb36f1f;--glass-bg:#1d2a21cc;--input-bg:#00000040;--shadow-color:#0006;--status-pending-bg:#e67e2226;--status-pending-text:#f5b041;--status-approved-bg:#82c7a526;--status-approved-text:#82c7a5;--status-denied-bg:#ef535026;--status-denied-text:#ef5350;--status-resolved-bg:#4fc3f726;--status-resolved-text:#81d4fa;--priority-high-bg:#ef535026;--priority-high-text:#ef5350;--priority-medium-bg:#e67e2226;--priority-medium-text:#f5b041;--priority-low-bg:#4fc3f726;--priority-low-text:#81d4fa;--border-radius:12px;--transition:all .3s ease}body[data-theme=light]{--bg-main:#faf9f6;--bg-surface:#f2f1e8;--text-primary:#1c251f;--text-secondary:#5a655d;--accent-primary:#2d5a27;--accent-hover:#1f3f1b;--accent-glow:#2d5a2733;--border-color:#2d5a2729;--border-color-subtle:#2d5a2714;--bg-overlay:#2d5a270a;--bg-overlay-hover:#2d5a2714;--bg-overlay-deep:#2d5a271f;--glass-bg:#f2f1e8cc;--input-bg:#ffffffa6;--shadow-color:#202d241f;--status-pending-bg:#c25e001f;--status-pending-text:#c25e00;--status-approved-bg:#1f6e4c1f;--status-approved-text:#1f6e4c;--status-denied-bg:#9a33281f;--status-denied-text:#9a3328;--status-resolved-bg:#2e5b701f;--status-resolved-text:#2e5b70;--priority-high-bg:#9a33281f;--priority-high-text:#9a3328;--priority-medium-bg:#c25e001f;--priority-medium-text:#c25e00;--priority-low-bg:#2e5b701f;--priority-low-text:#2e5b70}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;transition:background-color .3s,color .3s;display:flex}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 8px 32px var(--shadow-color);transition:background-color .3s,border-color .3s,box-shadow .3s}.btn-primary{background-color:var(--accent-primary);color:#fff;cursor:pointer;transition:var(--transition);box-shadow:0 2px 4px var(--shadow-color);border:none;border-radius:8px;padding:10px 20px;font-weight:600}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:0 4px 8px var(--shadow-color);transform:translateY(-2px)}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;transition:var(--transition);background-color:#0000;border-radius:8px;padding:10px 20px;font-weight:600}.btn-secondary:hover:not(:disabled){background-color:var(--bg-overlay-hover);color:var(--text-primary);border-color:var(--accent-primary);box-shadow:0 2px 6px var(--shadow-color);transform:translateY(-2px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.financial-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font-size:.82rem}.financial-table thead tr:first-child th{background-color:var(--accent-primary);color:#fff;text-transform:uppercase;letter-spacing:.5px;border:none;padding:14px 12px;font-size:.8rem;font-weight:600}.financial-table thead tr:first-child th:first-child{border-top-left-radius:8px}.financial-table thead tr:first-child th:last-child{border-top-right-radius:8px}.financial-table thead tr:nth-child(2) th{background-color:var(--bg-overlay-deep);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color);border-top:1px solid #ffffff0d;padding:10px 12px;font-size:.75rem;font-weight:600}.financial-table th.group-divider,.financial-table td.group-divider{border-right:1px solid var(--border-color-subtle)!important}.financial-table tbody tr{transition:background-color .2s}.financial-table tbody tr:hover{background-color:var(--bg-overlay-hover)!important}.financial-table tr.section-header-row{font-weight:700;background-color:var(--bg-overlay-deep)!important}.financial-table tr.section-header-row td{color:var(--accent-primary);border-left:4px solid var(--accent-primary);border-bottom:1px solid var(--border-color);padding:12px 14px;font-size:.85rem;font-weight:700}.financial-table tr.category-header-row{font-weight:700;background-color:var(--bg-overlay)!important}.financial-table tr.category-header-row td{color:var(--accent-primary);border-left:3px solid var(--accent-primary);border-bottom:1px solid var(--border-color-subtle);padding:10px 14px;font-size:.8rem}.financial-table td{vertical-align:middle;border-bottom:1px solid var(--border-color-subtle);padding:8px 12px}.financial-table tr.total-summary-row{font-weight:600;background-color:var(--bg-overlay)!important}.financial-table tr.total-summary-row td{border-bottom:2px solid var(--border-color);border-top:1px solid var(--border-color-subtle);padding:12px;font-size:.82rem}.financial-table tr.grand-total-row{font-weight:700;background-color:#7cb36f14!important}.financial-table tr.grand-total-row td{color:var(--text-primary);border-bottom:2px solid var(--accent-primary);border-top:2px solid var(--accent-primary);padding:14px 12px;font-size:.85rem}.financial-table tr.net-income-row{font-size:.88rem;font-weight:800;background-color:var(--bg-overlay-deep)!important}.financial-table tr.net-income-row td{border-bottom:4px double var(--border-color);border-top:1px solid var(--border-color);padding:16px 12px}.budget-cell-input{text-align:right;width:100%;max-width:90px;color:var(--text-primary);box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;padding:6px 8px;font-family:inherit;font-size:.82rem;font-weight:500;transition:all .2s}.budget-cell-input:hover{border-color:var(--border-color);background-color:var(--bg-overlay-hover)}.budget-cell-input:focus{border-color:var(--accent-primary);background-color:var(--input-bg);box-shadow:0 0 0 2px var(--accent-glow)}.budget-cell-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.budget-cell-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.budget-cell-input[type=number]{appearance:textfield}
