@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";
:root,html.light-theme,.light-theme{--bg-primary:#faf9f7;--bg-secondary:#fff;--bg-sunken:#f2f1ed;--text-primary:#17181b;--text-secondary:#6a6e76;--text-tertiary:#93979f;--accent-primary:#17181b;--accent-secondary:#4a4e56;--accent-gradient:var(--accent-primary);--accent-contrast:#fff;--udhar:#9e2b25;--jama:#1d6b4f;--pending:#8a5a1b;--danger:var(--udhar);--success:var(--jama);--warning:var(--pending);--accent-blue:#2f5d8c;--accent-purple:var(--accent-secondary);--udhar-tint:#9e2b2517;--jama-tint:#1d6b4f17;--pending-tint:#8a5a1b1a;--on-status:#fff;--border-color:#e5e3de;--border-subtle:#efede8;--border-strong:#d4d1ca;--border:var(--border-color);--hover-bg:#17181b08;--focus-ring:#17181b1f;--glass-bg:var(--bg-secondary);--glass-border:var(--border-color);--shadow-sm:0 1px 2px #17181b0a;--shadow-md:0 1px 3px #17181b0f;--shadow-lg:0 8px 24px #17181b1a;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-full:9999px;--transition-fast:.12s ease;--transition-normal:.2s ease;--font-ui:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-figure:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html.dark-theme,.dark-theme{--bg-primary:#101113;--bg-secondary:#17191c;--bg-sunken:#0b0c0e;--text-primary:#ececea;--text-secondary:#9a9ea6;--text-tertiary:#6d7178;--accent-primary:#ececea;--accent-secondary:#b4b8be;--accent-gradient:var(--accent-primary);--accent-contrast:#101113;--udhar:#e08078;--jama:#63c29a;--pending:#d0a25e;--danger:var(--udhar);--success:var(--jama);--warning:var(--pending);--accent-blue:#7fa8d4;--accent-purple:var(--accent-secondary);--udhar-tint:#e080781f;--jama-tint:#63c29a1f;--pending-tint:#d0a25e1f;--on-status:#101113;--border-color:#26282c;--border-subtle:#1e2023;--border-strong:#34373c;--border:var(--border-color);--hover-bg:#ffffff09;--focus-ring:#ececea2e;--glass-bg:var(--bg-secondary);--glass-border:var(--border-color);--shadow-sm:0 1px 2px #0006;--shadow-md:0 1px 3px #00000073;--shadow-lg:0 8px 24px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{scroll-behavior:smooth;height:100%}html,body{background-color:var(--bg-primary);max-width:100vw;color:var(--text-primary);overflow-x:hidden}body{min-height:100%;font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-size:15px;line-height:1.5;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);letter-spacing:-.012em;font-weight:600;line-height:1.25}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-primary)}button{font-family:var(--font-ui);cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:2px}.figure,.metric-value,.ledger-amount,.ledger-balance{font-family:var(--font-figure);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.num{text-align:right;font-variant-numeric:tabular-nums}.glass-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:none}.text-gradient{color:var(--accent-primary);background:0 0;-webkit-background-clip:border-box;background-clip:border-box}.btn-primary{background:var(--accent-primary);color:var(--accent-contrast);border:1px solid var(--accent-primary);border-radius:var(--radius-md);transition:background var(--transition-fast), border-color var(--transition-fast);padding:.6rem 1.1rem;font-size:.9rem;font-weight:500}.btn-primary:hover{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--accent-contrast)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:background var(--transition-fast), border-color var(--transition-fast);padding:.6rem 1.1rem;font-size:.9rem;font-weight:500}.btn-secondary:hover{background:var(--hover-bg);border-color:var(--border-strong);color:var(--text-primary)}.btn-secondary:disabled{opacity:.45;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.35s cubic-bezier(.16,1,.3,1) forwards fadeIn}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.navbar{z-index:50;background:var(--bg-primary);border:none;border-bottom:1px solid var(--border-color);box-shadow:none;border-radius:0;position:sticky;top:0}.nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:.7rem 1.5rem;display:flex;position:relative}.logo{font-family:var(--font-ui);letter-spacing:-.025em;z-index:60;font-size:1.15rem;font-weight:600}.nav-links{align-items:center;gap:1.1rem;display:flex}.nav-link{color:var(--text-secondary);transition:color var(--transition-fast);white-space:nowrap;font-size:.875rem;font-weight:450}.nav-link:hover{color:var(--text-primary)}.nav-link--button{cursor:pointer;background:0 0;border:none;align-items:center;margin:0;padding:0;font-family:inherit;font-size:.875rem;display:inline-flex}.nav-dropdown{align-items:center;display:flex;position:relative}.nav-dropdown-toggle{color:var(--text-secondary);gap:.35rem}.nav-dropdown-toggle:hover{color:var(--text-primary)}.nav-dropdown-caret{transition:transform var(--transition-fast);font-size:.65rem}.nav-dropdown-caret--open{transform:rotate(180deg)}.nav-dropdown-menu{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:170px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast);z-index:60;flex-direction:column;gap:.1rem;padding:.3rem;display:flex;position:absolute;top:calc(100% + .7rem);left:50%;transform:translate(-50%)translateY(-4px)}.nav-dropdown-menu--open{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.nav-dropdown-menu .nav-link{border-radius:4px;width:100%;padding:.5rem .7rem}.nav-dropdown-menu .nav-link:hover{background:var(--hover-bg);color:var(--text-primary)}.login-btn{padding:.45rem .95rem;font-size:.85rem}.nav-auth-buttons{align-items:center;gap:.5rem;display:flex}.theme-toggle-btn{border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-secondary);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.theme-toggle-btn:hover{background:var(--hover-bg);border-color:var(--border-strong);color:var(--text-primary)}.theme-toggle-btn i{color:inherit;font-size:.95rem}.theme-toggle-text{display:none}.nav-user-section{align-items:center;gap:.6rem;display:flex}.nav-user-avatar{border-radius:var(--radius-full);object-fit:cover;border:1px solid var(--border-color);width:32px;height:32px;transition:border-color var(--transition-fast);flex-shrink:0}.nav-user-avatar:hover{border-color:var(--border-strong)}.nav-user-avatar--initials{background:var(--accent-primary);color:var(--accent-contrast);font-size:.75rem;font-weight:600;font-family:var(--font-ui);justify-content:center;align-items:center;display:flex}.hamburger{cursor:pointer;z-index:60;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:28px;height:28px;padding:0;display:none}.hamburger__line{background:var(--text-primary);transform-origin:50%;border-radius:2px;width:100%;height:1.5px;transition:all .3s;display:block}.hamburger--open .hamburger__line:first-child{transform:translateY(7px)rotate(45deg)}.hamburger--open .hamburger__line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger--open .hamburger__line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-overlay{display:none}.page-wrapper{flex:1}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1rem;display:flex}.form-group label{color:var(--text-secondary);font-size:.8rem;font-weight:500}.form-input,.form-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;font-family:var(--font-ui);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);width:100%;padding:.55rem .7rem}.form-select{cursor:pointer}.form-input:focus,.form-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.form-input::placeholder{color:var(--text-tertiary)}.form-error{color:var(--danger);font-size:.8rem}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1.75rem;display:grid}.metric-card{border-radius:var(--radius-lg);background:var(--bg-secondary);border:1px solid var(--border-color);padding:1rem 1.15rem}.metric-card .metric-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.4rem;font-size:.7rem;font-weight:500}.metric-card .metric-value{color:var(--text-primary);font-size:1.45rem;font-weight:600}.metric-card.due .metric-value{color:var(--pending)}.metric-card.collected .metric-value{color:var(--jama)}.metric-card.overdue .metric-value{color:var(--udhar)}.metric-card.revenue .metric-value{color:var(--text-primary)}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:.15rem .5rem;font-size:.7rem;font-weight:500;display:inline-block}.badge-paid{background:var(--jama-tint);color:var(--jama)}.badge-due{background:var(--pending-tint);color:var(--pending)}.badge-overdue,.badge-udhar{background:var(--udhar-tint);color:var(--udhar)}.badge-jama{background:var(--jama-tint);color:var(--jama)}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.875rem}.data-table th{text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--border-strong);white-space:nowrap;padding:.55rem .9rem;font-size:.7rem;font-weight:500}.data-table td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:.7rem .9rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--hover-bg)}.data-table th.num,.data-table td.num{text-align:right}.data-table td.num{font-family:var(--font-figure);letter-spacing:-.01em}.page-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.page-title{letter-spacing:-.018em;font-size:1.35rem;font-weight:600}.page-subtitle{color:var(--text-secondary);margin-top:.2rem;font-size:.85rem}.filters-bar{flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem;display:flex}.filters-bar .form-input,.filters-bar .form-select{max-width:200px;padding:.45rem .65rem;font-size:.85rem}.ledger-entry{border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast);justify-content:space-between;align-items:center;padding:.8rem 1rem;display:flex}.ledger-entry:last-child{border-bottom:none}.ledger-entry:hover{background:var(--hover-bg)}.ledger-amount.udhar{color:var(--udhar)}.ledger-amount.jama{color:var(--jama)}.ledger-balance{color:var(--text-secondary);font-size:.8rem;font-weight:500}.empty-state{text-align:center;color:var(--text-secondary);padding:3rem 1rem;font-size:.9rem}.empty-state .empty-icon{color:var(--text-tertiary);margin-bottom:.75rem;font-size:1.75rem}@media (max-width:768px){.nav-container{flex-wrap:nowrap;padding:.75rem 1rem}.hamburger{display:flex}.nav-links{background:var(--bg-primary);border-left:1px solid var(--border-color);width:75vw;max-width:320px;height:100dvh;box-shadow:var(--shadow-lg);z-index:55;flex-direction:column;align-items:stretch;gap:0;padding:5rem 1.5rem 2rem;transition:transform .35s cubic-bezier(.16,1,.3,1);position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%)}.nav-links--open{transform:translate(0)}.nav-link{border-bottom:1px solid var(--border-subtle);padding:.85rem 0;font-size:1rem}.nav-dropdown{flex-direction:column;align-items:stretch;width:100%}.nav-dropdown-toggle{display:none}.nav-dropdown-menu{opacity:1;visibility:visible;min-width:0;box-shadow:none;background:0 0;border:none;gap:0;padding:0;position:static;transform:none}.nav-dropdown-menu .nav-link{border-bottom:1px solid var(--border-subtle);border-radius:0;padding:.85rem 0}.nav-dropdown-menu .nav-link:hover{background:0 0}.theme-toggle-btn{border-bottom:1px solid var(--border-subtle);background:0 0;border-top:none;border-left:none;border-right:none;border-radius:0;justify-content:flex-start;gap:.75rem;width:100%;height:auto;padding:.85rem 0}.theme-toggle-btn:hover{background:0 0}.theme-toggle-text{color:var(--text-secondary);font-size:1rem;font-weight:450;display:inline}.theme-toggle-btn:hover .theme-toggle-text{color:var(--text-primary)}.nav-auth-buttons{flex-direction:column;gap:.6rem;width:100%;margin-top:1.5rem}.nav-auth-buttons .login-btn{text-align:center;width:100%;padding:.75rem 1.1rem;font-size:.95rem}.nav-overlay{z-index:52;background:#0006;animation:.3s fadeIn;display:block;position:fixed;inset:0}.nav-links .btn-secondary.login-btn{text-align:center;width:100%;margin-top:1.5rem;padding:.75rem 1.1rem;font-size:.95rem}.nav-user-section{flex-direction:column;align-items:stretch;gap:1rem;width:100%;margin-top:1.5rem}.nav-user-section .nav-user-avatar{align-self:center;width:56px;height:56px;margin-bottom:.5rem}.nav-user-section .nav-user-avatar--initials{font-size:1.25rem}.settings-layout{flex-direction:column!important;gap:1.5rem!important}.settings-sidebar{padding-bottom:.5rem;overflow-x:auto;flex-direction:row!important;width:100%!important}.settings-sidebar button{white-space:nowrap;flex:1;justify-content:center}.nav-user-section .login-btn{text-align:center;flex:1;padding:.75rem 1.1rem;font-size:.95rem}.nav-user-avatar{width:34px;height:34px}.page-container{padding:1rem}.page-title{font-size:1.2rem}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.metric-card{padding:.85rem}.metric-card .metric-value{font-size:1.2rem}.page-container .btn-primary,.page-container .btn-secondary,form .btn-primary,form .btn-secondary{text-align:center;width:100%;padding:.75rem 1.1rem;font-size:.95rem}.form-input,.form-select{padding:.7rem .8rem;font-size:1rem}.data-table{white-space:nowrap;-webkit-overflow-scrolling:touch;font-size:.8rem;display:block;overflow-x:auto}.data-table th,.data-table td{padding:.55rem .5rem}.filters-bar{flex-direction:column}.filters-bar .form-input,.filters-bar .form-select{max-width:100%}.page-header{flex-direction:column;align-items:stretch}}@media (max-width:480px){.metrics-grid{grid-template-columns:1fr}.logo{font-size:1.05rem}.nav-links{width:85vw}}@media (max-width:768px) and (orientation:landscape){.nav-links{gap:0;padding-top:3.5rem}.nav-link{padding:.6rem 0;font-size:.9rem}.nav-auth-buttons{gap:.5rem;margin-top:1rem}.nav-auth-buttons .login-btn{padding:.6rem 1rem;font-size:.9rem}}
