@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.table-row{display:table-row}.grid{display:grid}.h-\[76px\]{height:76px}.w-full{width:100%}.flex-1{flex:1 1 0%}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.pb-20{padding-bottom:5rem}.text-right{text-align:right}.font-display{font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[1\.85rem\]{font-size:1.85rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.leading-6{line-height:1.5rem}.tracking-\[-0\.04em\]{letter-spacing:-.04em}.tracking-tight{letter-spacing:-.025em}.text-ink\/55{color:#17221c8c}.text-ink\/60{color:#17221c99}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{font-family:DM Sans,sans-serif;color:#17221c;background:#f5f7f2;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}.page-shell{width:min(1120px,calc(100% - 40px));margin:0 auto}.site-header{border-bottom:1px solid rgba(23,34,28,.08);background:#f5f7f2e0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:#17221c;text-decoration:none;font-family:Space Grotesk;font-size:17px;font-weight:700;letter-spacing:-.04em}.brand>span:last-child span,.site-footer span span{color:#5c9a73}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#285c45;color:#fff}.header-nav{display:flex;align-items:center;gap:28px}.nav-link,.login-button,.admin-chip{font-size:13px;color:#17221c99;text-decoration:none;background:none;border:0}.nav-link.active{color:#17221c;font-weight:600}.login-button{display:flex;align-items:center;gap:7px;border:1px solid rgba(23,34,28,.15);border-radius:99px;padding:9px 14px;color:#285c45;font-weight:600}.admin-chip{display:flex;align-items:center;gap:6px;border-radius:99px;background:#dcecdf;padding:9px 12px;color:#285c45;font-weight:600}.menu-button{display:none;border:0;background:none;color:#17221c}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:84px 0 62px}.eyebrow{color:#5c9a73;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:700}.pulse-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5c9a73;box-shadow:0 0 0 4px #dcecdf}.hero h1{max-width:625px;margin:17px 0 16px;font-family:Space Grotesk;font-size:clamp(2.8rem,7vw,5rem);line-height:.98;letter-spacing:-.065em;font-weight:600}.hero h1 em{color:#5c9a73;font-style:normal}.hero-copy>p{max-width:480px;color:#17221c94;line-height:1.7;font-size:15px}.hero-note{display:flex;align-items:flex-start;gap:10px;color:#5c9a73;font-size:12px;line-height:1.5;border-left:1px solid #b9d8bf;padding-left:15px;padding-bottom:5px}.hero-note strong{color:#17221c;font-weight:600}.stats-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px}.stat-card{min-height:164px;border-radius:18px;padding:24px}.stat-dark{color:#fff;background:#285c45}.stat-green{background:#dcecdf}.stat-peach{background:#f1e4d8}.stat-label{font-size:12px;font-weight:600;color:currentColor;opacity:.65}.stat-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#ffffff2e}.stat-green .stat-icon{background:#5c9a7326;color:#285c45}.stat-peach .stat-icon{background:#c95c3a1f;color:#c95c3a}.ledger-section{padding:80px 0 50px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{margin:8px 0 0;font-family:Space Grotesk;font-size:29px;letter-spacing:-.05em}.primary-button,.secondary-button,.danger-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:10px;padding:12px 16px;font-size:13px;font-weight:700;transition:transform .15s,background .15s}.primary-button{color:#fff;background:#285c45;box-shadow:0 8px 18px #285c4524}.primary-button:hover{transform:translateY(-1px);background:#204d39}.filter-bar{display:flex;align-items:center;gap:22px;padding:13px 16px;border:1px solid rgba(23,34,28,.1);border-radius:12px;background:#ffffff6b;margin-bottom:12px}.filter-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;white-space:nowrap}.filter-title svg{color:#5c9a73}.date-fields{display:flex;align-items:center;gap:10px}.date-fields label,.field-label{display:flex;flex-direction:column;gap:7px;color:#17221c99;font-size:11px;font-weight:600}.date-fields input{border:0;background:transparent;color:#17221c;font-size:12px;outline:none}.date-dash{color:#17221c4d}.clear-filter{display:flex;align-items:center;gap:5px;margin-left:auto;border:0;background:none;color:#c95c3a;font-size:11px;font-weight:600}.table-card{overflow:hidden;border:1px solid rgba(23,34,28,.08);border-radius:16px;background:#ffffff8c;box-shadow:0 12px 34px #26453408}.table-header,.table-row{display:grid;grid-template-columns:1.05fr 2.3fr 1.25fr 85px;align-items:center;gap:16px;padding:0 22px}.table-header{min-height:43px;background:#e8e9dd73;color:#17221c7a;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.table-row{min-height:75px;border-top:1px solid rgba(23,34,28,.07);font-size:13px}.transaction-date{display:flex;flex-direction:column;gap:3px}.transaction-date span{font-weight:600}.transaction-date small,.transaction-amount small{color:#17221c73;font-size:10px}.transaction-description{display:flex;align-items:center;gap:10px;font-weight:500}.transaction-dot{width:7px;height:7px;border-radius:50%}.income-dot{background:#5c9a73}.expense-dot{background:#c95c3a}.transaction-amount{display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-variant-numeric:tabular-nums;font-weight:700}.transaction-amount.positive{color:#41845b}.transaction-amount.negative{color:#c95c3a}.transaction-amount.positive small,.transaction-amount.negative small{color:#17221c73;font-weight:400}.manage-actions{display:flex;justify-content:flex-end;gap:4px}.manage-actions button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#17221c73}.manage-actions button:hover{background:#dcecdf;color:#285c45}.manage-actions .delete-button:hover{background:#f1e4d8;color:#c95c3a}.table-footer{display:flex;justify-content:space-between;gap:10px;padding:14px 22px;color:#17221c75;font-size:11px;border-top:1px solid rgba(23,34,28,.07)}.balance-note{display:flex;align-items:center;gap:5px;color:#5c9a73}.empty-state{min-height:190px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#17221c73;font-size:13px}.empty-state strong{color:#17221c}.empty-state svg{color:#5c9a73;margin-bottom:4px}.loading-spinner{width:18px;height:18px;border:2px solid #dcecdf;border-top-color:#285c45;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.about-strip{display:flex;align-items:center;gap:16px;padding:25px 29px;border-radius:16px;background:#e8e9dd}.about-icon{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;border-radius:13px;color:#285c45;background:#dcecdf}.about-strip h3{margin:5px 0 3px;font-family:Space Grotesk;font-size:18px;letter-spacing:-.03em}.about-strip p:not(.eyebrow){margin:0;color:#17221c8c;font-size:12px}.text-button{display:flex;align-items:center;gap:5px;margin-left:auto;border:0;background:none;color:#285c45;font-size:12px;font-weight:700;white-space:nowrap}.site-footer{padding:24px 0;color:#17221c66;font-size:11px}.site-footer span:first-child{color:#17221c;font-family:Space Grotesk;font-size:14px;font-weight:700}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#17221c61;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-card,.confirm-card{position:relative;width:min(100%,430px);border-radius:20px;background:#f5f7f2;padding:30px;box-shadow:0 25px 70px #17221c33}.modal-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:31px;height:31px;border:0;border-radius:8px;background:transparent;color:#17221c80}.modal-close:hover{background:#e8e9dd}.modal-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#dcecdf;color:#285c45}.modal-mark.danger{background:#f1e4d8;color:#c95c3a}.field-label input{width:100%;padding:12px 13px;border:1px solid rgba(23,34,28,.14);border-radius:9px;outline:none;background:#fff9;color:#17221c;font-size:13px;font-weight:400}.field-label input:focus{border-color:#5c9a73;box-shadow:0 0 0 3px #5c9a731f}.form-error{margin:0;border-radius:8px;padding:10px 12px;background:#f1e4d8;color:#a3472e;font-size:12px}.modal-switch{width:100%;margin-top:18px;border:0;background:none;color:#285c45;font-size:11px}.type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:10px;background:#e8e9dd}.type-toggle button{display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:7px;padding:9px;color:#17221c8c;background:transparent;font-size:12px;font-weight:600}.type-toggle button.active.income{background:#dcecdf;color:#285c45}.type-toggle button.active.expense{background:#f1e4d8;color:#c95c3a}.secondary-button{background:#e8e9dd;color:#285c45}.danger-button{background:#c95c3a;color:#fff}.alert-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;border-radius:9px;padding:12px 15px;background:#f1e4d8;color:#a3472e;font-size:12px}.alert-banner button{display:grid;border:0;background:none;color:inherit}@media(max-width:700px){.page-shell{width:min(100% - 28px,560px)}.header-nav{display:none;position:absolute;top:69px;left:14px;right:14px;align-items:stretch;flex-direction:column;gap:4px;padding:10px;border:1px solid rgba(23,34,28,.1);border-radius:14px;background:#f5f7f2;box-shadow:0 14px 35px #17221c1a}.header-nav.mobile-open{display:flex}.nav-link,.login-button,.admin-chip{padding:11px 12px}.login-button,.admin-chip{justify-content:center}.menu-button{display:grid;place-items:center}.hero{align-items:flex-start;flex-direction:column;gap:28px;padding:56px 0 42px}.hero h1{font-size:clamp(2.8rem,14vw,4.3rem)}.hero-note{align-self:stretch}.stats-grid{grid-template-columns:1fr;gap:10px}.stat-card{min-height:134px;padding:19px}.stat-card p{margin-top:10px;font-size:1.7rem}.ledger-section{padding-top:60px}.section-heading{align-items:flex-start;flex-direction:column}.add-entry{width:100%}.filter-bar{align-items:flex-start;flex-wrap:wrap;gap:14px}.date-fields{width:100%;justify-content:space-between}.date-fields label{flex:1}.date-fields input{width:100%}.clear-filter{margin-left:0}.table-card{overflow:visible;border:0;background:transparent;box-shadow:none}.table-header{display:none}.table-row{grid-template-columns:1fr auto;gap:8px 15px;min-height:0;margin-bottom:8px;padding:15px;border:1px solid rgba(23,34,28,.08);border-radius:13px;background:#ffffff8c}.transaction-date{grid-column:1}.transaction-description{grid-column:1 / -1;grid-row:2}.transaction-amount{grid-column:2;grid-row:1;align-items:flex-end}.manage-actions{grid-column:1 / -1;justify-content:flex-start;padding-top:8px;border-top:1px solid rgba(23,34,28,.07)}.table-footer{padding:14px 2px;border-top:0}.balance-note{display:none}.about-strip{align-items:flex-start;flex-wrap:wrap;padding:21px}.text-button{width:100%;margin:7px 0 0 60px}.site-footer .page-shell{align-items:flex-start;flex-direction:column}.modal-card,.confirm-card{padding:25px 20px}}:root{color-scheme:dark;background:#080c0b}body{background:#080c0b;color:#eef5ef}.dashboard-shell{min-height:100vh;background:#080c0b;color:#eef5ef}.site-header{border-bottom-color:#93b19d1f;background:#080c0bc7}.brand{color:#eef5ef}.brand-mark{background:#c7f36b;color:#102014}.brand>span:last-child span,.site-footer span span{color:#c7f36b}.nav-link,.login-button,.admin-chip{color:#94a39a}.nav-link.active{color:#eef5ef}.login-button{border-color:#2b3a31;color:#c7f36b}.admin-chip{background:#172a1d;color:#c7f36b}.menu-button{color:#eef5ef}.eyebrow{color:#9ccf6a}.pulse-dot{background:#c7f36b;box-shadow:0 0 0 4px #c7f36b21}.hero h1 em{color:#c7f36b}.hero-copy>p{color:#91a097}.hero-note{color:#9ccf6a;border-left-color:#344e3c}.hero-note strong{color:#eef5ef}.stat-card{border:1px solid rgba(147,177,157,.13)}.stat-dark{color:#122016;background:#c7f36b;border-color:#c7f36b}.stat-green{color:#eef5ef;background:#112019;border-color:#234232}.stat-peach{color:#eef5ef;background:#211717;border-color:#4a2925}.stat-label{opacity:.7}.stat-dark .stat-label{color:#122016}.stat-icon{background:#ffffff24}.stat-dark .stat-icon{background:#1220161f}.stat-green .stat-icon{background:#9ccf6a21;color:#9ccf6a}.stat-peach .stat-icon{background:#ff8b851f;color:#ff8b85}.stat-card p:last-child{color:currentColor;opacity:.55}.section-heading h2{color:#eef5ef}.primary-button{color:#101b13;background:#c7f36b;box-shadow:0 9px 22px #c7f36b1f}.primary-button:hover{background:#d5ff83}.secondary-button{color:#d2e0d5;background:#202b25}.danger-button{background:#d76663}.filter-bar{border-color:#26372d;background:#111815c7}.filter-title{color:#dce8df}.filter-title svg,.period-field svg,.search-field svg{color:#9ccf6a}.search-field{display:flex;align-items:center;gap:9px;flex:1;min-width:190px}.search-field input{width:100%;border:0;outline:0;color:#eef5ef;background:transparent;font-size:12px}.search-field input::-moz-placeholder{color:#718078}.search-field input::placeholder{color:#718078}.period-field{display:flex;align-items:center;gap:8px;border-left:1px solid #2a3b30;padding-left:18px}.period-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:130px;border:0;outline:0;color:#dce8df;background:transparent;font-size:12px;cursor:pointer}.period-field option{color:#17221c;background:#eef5ef}.date-fields label,.field-label{color:#8b9b91}.date-fields input{color:#dce8df;color-scheme:dark}.date-dash{color:#506057}.clear-filter{color:#ff8b85}.table-card{border-color:#26372d;background:#101714;box-shadow:0 20px 60px #0000002e}.table-header{background:#151e19;color:#718078}.table-row{border-top-color:#223129}.transaction-date span,.transaction-description{color:#e5eee7}.transaction-date small,.transaction-amount small{color:#74837a}.income-dot{background:#9ccf6a}.expense-dot{background:#ff8b85}.transaction-amount.positive{color:#9ee4a9}.transaction-amount.negative,.transaction-balance.negative{color:#ff8b85}.transaction-amount.positive small,.transaction-amount.negative small{color:#74837a}.transaction-balance{color:#c6d8ca;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.manage-actions button{color:#718078}.manage-actions button:hover{background:#203527;color:#c7f36b}.manage-actions .delete-button:hover{background:#3b211f;color:#ff8b85}.table-footer{border-top-color:#223129;color:#718078}.balance-note{color:#9ccf6a}.empty-state{color:#718078}.empty-state strong{color:#e5eee7}.empty-state svg{color:#9ccf6a}.loading-spinner{border-color:#26372d;border-top-color:#c7f36b}.about-strip{background:#131d18;border:1px solid #26372d}.about-icon{color:#c7f36b;background:#1e3526}.about-strip h3{color:#e5eee7}.about-strip p:not(.eyebrow){color:#89988f}.text-button{color:#c7f36b}.site-footer{color:#617068}.site-footer span:first-child{color:#e5eee7}.alert-banner{background:#321e1d;color:#ffaaa5}.modal-backdrop{background:#020504b8}.modal-card,.confirm-card{color:#eef5ef;background:#111916;border:1px solid #2b3b31;box-shadow:0 25px 70px #00000073}.modal-close{color:#8b9b91}.modal-close:hover{background:#202b25}.modal-mark{background:#1e3526;color:#c7f36b}.modal-mark.danger{background:#3b211f;color:#ff8b85}.modal-card p:not(.eyebrow),.confirm-card p{color:#8b9b91}.field-label input{border-color:#314238;background:#0b100e;color:#eef5ef}.field-label input:focus{border-color:#9ccf6a;box-shadow:0 0 0 3px #9ccf6a1f}.form-error{background:#3b211f;color:#ffaaa5}.modal-switch{color:#c7f36b}.type-toggle{background:#202b25}.type-toggle button{color:#8b9b91}.type-toggle button.active.income{background:#1e3526;color:#c7f36b}.type-toggle button.active.expense{background:#3b211f;color:#ff8b85}.table-header:not(.with-manage),.table-row:not(.with-manage){grid-template-columns:1fr 2.4fr 1.25fr 1.25fr}.table-header.with-manage,.table-row.with-manage{grid-template-columns:1fr 2.15fr 1.15fr 1.15fr 85px}@media(max-width:700px){.header-nav.mobile-open{border-color:#26372d;background:#101714;box-shadow:0 14px 35px #00000059}.nav-link,.login-button,.admin-chip{color:#dce8df}.filter-bar{gap:14px}.search-field{flex-basis:100%}.period-field{border-left:0;padding-left:0}.date-fields{width:100%}.table-card{border:0;background:transparent;box-shadow:none}.table-row,.table-row.with-manage,.table-row:not(.with-manage){grid-template-columns:1fr auto;gap:8px 15px;margin-bottom:8px;padding:15px;border:1px solid #26372d;background:#101714}.transaction-date{grid-column:1;grid-row:1}.transaction-description{grid-column:1;grid-row:2}.transaction-amount{grid-column:2;grid-row:1;align-items:flex-end}.transaction-balance{grid-column:2;grid-row:2;text-align:right}.manage-actions{grid-column:1 / -1;grid-row:3;border-top-color:#223129}.table-footer{padding:14px 2px;border-top:0}.balance-note{display:none}.about-strip{border-color:#26372d}.text-button{color:#c7f36b}.modal-card,.confirm-card{padding:25px 20px}.entry-modal{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.amount-hint{color:#718078;font-size:10px;font-weight:500;letter-spacing:.01em}.mobile-fab{display:none}@media(max-width:700px){.entry-modal-backdrop{align-items:flex-start;overflow:hidden;padding:12px}.entry-modal{min-height:0;max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.mobile-fab{position:fixed;right:18px;bottom:18px;z-index:30;display:inline-flex;align-items:center;gap:8px;border:1px solid #d5ff83;border-radius:999px;padding:13px 17px;color:#101b13;background:#c7f36b;box-shadow:0 12px 28px #0000006b,0 0 0 5px #c7f36b14;font-size:12px;font-weight:800}.mobile-fab:active{transform:translateY(1px)}}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:22px}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand>span{color:#e5eee7;font-family:Space Grotesk;font-size:14px;font-weight:700}.footer-brand small{color:#718078;font-size:11px}.footer-contact{display:flex;align-items:center;gap:16px}.footer-contact a{display:inline-flex;align-items:center;gap:6px;color:#9ccf6a;text-decoration:none;font-size:11px;font-weight:600}.footer-contact a:hover{color:#c7f36b}.footer-tagline{white-space:nowrap}@media(max-width:700px){.footer-content{align-items:flex-start;flex-direction:column;gap:15px}.footer-brand{align-items:flex-start;flex-direction:column;gap:4px}.footer-contact{align-items:flex-start;flex-direction:column;gap:9px}.footer-tagline{margin-top:3px}}
