@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.table{display:table}.border-collapse{border-collapse:collapse}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--background:#f4f5f7;--surface:#fff;--surface-soft:#f7f8fa;--surface-raised:#ffffffe6;--text:#101828;--text-soft:#667085;--text-faint:#98a2b3;--border:#eaecf0;--border-strong:#d0d5dd;--primary:#15803d;--primary-hover:#116632;--primary-soft:#edf8f1;--primary-border:#bfe5cc;--positive:#067647;--positive-soft:#ecfdf3;--negative:#b42318;--negative-soft:#fef3f2;--gold:#b54708;--gold-soft:#fff6ed;--info:#175cd3;--info-soft:#eff8ff;--violet:#6941c6;--violet-soft:#f4f3ff;--neutral-soft:#f2f4f7;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--shadow-sm:0 1px 2px #1018280d;--shadow-md:0 4px 14px #10182812;--shadow-lg:0 20px 48px #10182824;--radius-sm:8px;--radius:12px;--radius-lg:16px;--sidebar-width:258px;--topbar-height:72px}html[data-theme=dark]{--background:#0d0f13;--surface:#14171d;--surface-soft:#1a1e25;--surface-raised:#14171de6;--text:#e7eaee;--text-soft:#99a2b0;--text-faint:#6e7787;--border:#232830;--border-strong:#333a46;--primary:#4ade80;--primary-hover:#6ee79b;--primary-soft:#16291d;--primary-border:#2c5238;--positive:#4ade80;--positive-soft:#16291d;--negative:#f97066;--negative-soft:#2e1a19;--gold:#f0a35e;--gold-soft:#2c2016;--info:#6aa8ff;--info-soft:#15243a;--violet:#a78bfa;--violet-soft:#201c33;--neutral-soft:#1e232b;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 16px #0000005c;--shadow-lg:0 24px 56px #00000080}*{box-sizing:border-box}html{background:var(--background);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--background);min-width:320px;min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI Variable Text,Segoe UI,Inter,system-ui,-apple-system,sans-serif;font-size:14px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 28%, transparent)}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px}.app-shell{min-height:100vh}.sidebar{z-index:40;width:var(--sidebar-width);border-right:1px solid var(--border);background:var(--surface);flex-direction:column;transition:width .22s cubic-bezier(.2,.8,.2,1),transform .22s;display:flex;position:fixed;inset:0 auto 0 0}.brand{min-height:var(--topbar-height);border-bottom:1px solid var(--border);align-items:center;padding:11px 14px;display:flex}.brand-link{align-items:center;gap:11px;min-width:0;display:flex}.brand-logo-wrap{border:1px solid var(--primary);flex:none;place-items:center;width:46px;height:46px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.brand-logo-wrap{border:1px solid color-mix(in srgb, var(--primary) 45%, var(--border))}}.brand-logo-wrap{background:#090c09;border-radius:13px;box-shadow:0 7px 18px #0f66232e}.brand-logo-wrap:after{content:"";pointer-events:none;border:1px solid #ffffff1c;border-radius:10px;position:absolute;inset:3px}.brand-logo{object-fit:contain;width:43px;height:43px;transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s}.brand-link:hover .brand-logo{filter:drop-shadow(0 0 8px #53dd686b);transform:rotate(-5deg)scale(1.1)}.brand-copy{white-space:nowrap;flex-direction:column;min-width:0;display:flex}.brand-copy strong{letter-spacing:-.015em;text-overflow:ellipsis;font-size:15px;overflow:hidden}.brand-copy small{color:var(--text-soft);letter-spacing:.02em;margin-top:2px;font-size:11px}.sidebar-nav{flex:1;min-height:0;padding:12px 10px;overflow-y:auto}.sidebar-group{gap:3px;padding:7px 0;display:grid}.sidebar-group+.sidebar-group{border-top:1px solid var(--border)}.sidebar-link{height:41px;color:var(--text-soft);white-space:nowrap;border-radius:9px;align-items:center;gap:12px;padding:0 12px;transition:background .16s,color .16s,transform .16s;display:flex;position:relative;overflow:hidden}.sidebar-link:hover{background:var(--surface-soft);color:var(--text)}.sidebar-link.is-active{background:var(--primary-soft);color:var(--primary);font-weight:640}.sidebar-link svg{flex:none}.sidebar-bottom{border-top:1px solid var(--border);gap:10px;padding:10px;display:grid}.workspace-badge{border:1px solid var(--border);background:var(--surface-soft);white-space:nowrap;border-radius:11px;align-items:center;gap:10px;padding:10px;display:flex;overflow:hidden}.workspace-badge>span{background:var(--surface);width:30px;height:30px;color:var(--primary);border-radius:8px;flex:none;place-items:center;display:grid}.workspace-badge div{flex-direction:column;min-width:0;display:flex}.workspace-badge strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.workspace-badge small{color:var(--text-faint);margin-top:2px;font-size:10px}.sidebar-collapse{border:1px solid var(--border-strong);background:var(--surface);width:26px;height:26px;box-shadow:var(--shadow-sm);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;top:92px;right:-13px}.sidebar-is-collapsed{--sidebar-width:74px}.sidebar-is-collapsed .brand{justify-content:center;padding-inline:10px}.sidebar-is-collapsed .brand-copy,.sidebar-is-collapsed .sidebar-link span,.sidebar-is-collapsed .workspace-badge div{display:none}.sidebar-is-collapsed .sidebar-link,.sidebar-is-collapsed .workspace-badge{justify-content:center;padding-inline:0}.sidebar-mobile-close,.mobile-menu-button,.mobile-sidebar-backdrop{display:none}.app-stage{min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .22s cubic-bezier(.2,.8,.2,1)}.topbar{z-index:30;height:var(--topbar-height);border-bottom:1px solid var(--border);background:var(--surface-raised);-webkit-backdrop-filter:blur(18px)saturate(125%);backdrop-filter:blur(18px)saturate(125%);justify-content:space-between;align-items:center;gap:20px;padding:0 28px;display:flex;position:sticky;top:0}.global-search,.table-search{min-width:0;color:var(--text-faint);align-items:center;gap:9px;display:flex}.global-search{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;width:min(480px,45vw);height:40px;padding:0 11px;transition:border-color .16s,box-shadow .16s,background .16s}.global-search:focus-within{border-color:var(--primary-border);background:var(--surface);box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab, red, red)){.global-search:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 11%, transparent)}}.global-search input,.table-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1}.global-search input::placeholder,.table-search input::placeholder{color:var(--text-faint)}.global-search kbd{border:1px solid var(--border-strong);background:var(--surface);color:var(--text-faint);box-shadow:0 1px 0 var(--border);border-radius:5px;padding:2px 6px;font-family:inherit;font-size:10px}.topbar-actions{flex:none;align-items:center;gap:8px;display:flex}.cloud-save-status{border:1px solid var(--border);background:var(--surface);height:38px;color:var(--text-soft);white-space:nowrap;border-radius:9px;align-items:center;gap:7px;padding:0 10px;font-size:11px;font-weight:650;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.cloud-save-status i{background:var(--text-faint);width:6px;height:6px;box-shadow:0 0 0 3px var(--text-faint);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.cloud-save-status i{box-shadow:0 0 0 3px color-mix(in srgb, var(--text-faint) 12%, transparent)}}.cloud-save-status.is-active{border-color:var(--positive)}@supports (color:color-mix(in lab, red, red)){.cloud-save-status.is-active{border-color:color-mix(in srgb, var(--positive) 38%, var(--border))}}.cloud-save-status.is-active{color:var(--positive)}.cloud-save-status.is-active i{background:var(--positive);box-shadow:0 0 0 3px var(--positive)}@supports (color:color-mix(in lab, red, red)){.cloud-save-status.is-active i{box-shadow:0 0 0 3px color-mix(in srgb, var(--positive) 14%, transparent)}}.cloud-save-status.is-checking i{animation:1.1s ease-in-out infinite cloud-pulse}.cloud-save-status.is-offline{border-color:var(--negative)}@supports (color:color-mix(in lab, red, red)){.cloud-save-status.is-offline{border-color:color-mix(in srgb, var(--negative) 32%, var(--border))}}.cloud-save-status.is-offline{color:var(--negative)}.cloud-save-status.is-offline i{background:var(--negative)}.icon-button{border:1px solid var(--border);background:var(--surface);width:38px;height:38px;color:var(--text-soft);cursor:pointer;border-radius:9px;flex:none;place-items:center;transition:border-color .16s,color .16s,background .16s,transform .16s;display:inline-grid}.icon-button:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary);transform:translateY(-1px)}.theme-toggle:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary)}.theme-icon-sun,html[data-theme=dark] .theme-icon-moon{display:none}html[data-theme=dark] .theme-icon-sun{display:block}.app-content{width:min(1480px,100%);min-height:calc(100vh - var(--topbar-height));margin:0 auto;padding:30px clamp(22px,3vw,46px) 92px}.page-stack{gap:22px;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;min-height:66px;display:flex}.page-header h1,.panel-header h2,.empty-state h2,.modal-header h2,.setting-card h2,.delete-modal h2{color:var(--text);letter-spacing:-.025em;margin:0}.page-header h1{letter-spacing:-.02em;font-size:clamp(21px,1.7vw,26px);font-weight:680}.page-header p,.panel-header p,.empty-state p,.setting-card p,.delete-modal p{color:var(--text-soft);margin:6px 0 0;line-height:1.55}.section-label{color:var(--primary);letter-spacing:.115em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:750;display:block}.page-actions,.toolbar-actions{align-items:center;gap:8px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:39px;padding:0 14px;font-weight:650;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.45}.button-primary{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 5px 14px var(--primary)}@supports (color:color-mix(in lab, red, red)){.button-primary{box-shadow:0 5px 14px color-mix(in srgb, var(--primary) 25%, transparent)}}.button-primary:hover:not(:disabled){border-color:var(--primary);background:var(--surface);color:var(--primary);box-shadow:0 8px 19px var(--primary)}@supports (color:color-mix(in lab, red, red)){.button-primary:hover:not(:disabled){box-shadow:0 8px 19px color-mix(in srgb, var(--primary) 14%, transparent)}}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--text-soft)}.button-secondary:hover:not(:disabled){border-color:var(--primary-border);background:var(--surface);color:var(--primary)}.button-danger-ghost{border-color:var(--negative)}@supports (color:color-mix(in lab, red, red)){.button-danger-ghost{border-color:color-mix(in srgb, var(--negative) 30%, var(--border))}}.button-danger-ghost{background:var(--surface);color:var(--negative)}.button-danger{border-color:var(--negative);background:var(--negative);color:#fff}.transaction-page.tone-income,.transaction-modal.tone-income,.category-manager.tone-income{--transaction-color:var(--positive);--transaction-soft:var(--primary-soft);--transaction-border:var(--primary-border)}.transaction-page.tone-expense,.transaction-modal.tone-expense,.category-manager.tone-expense{--transaction-color:var(--negative);--transaction-soft:var(--negative-soft);--transaction-border:var(--negative)}@supports (color:color-mix(in lab, red, red)){.transaction-page.tone-expense,.transaction-modal.tone-expense,.category-manager.tone-expense{--transaction-border:color-mix(in srgb, var(--negative) 34%, var(--border))}}.button-add{isolation:isolate;background:var(--surface);color:var(--transaction-color);box-shadow:none;border:0;position:relative;overflow:hidden}.button-add:before{z-index:-2;background:conic-gradient(from 0deg, transparent 0deg 220deg, var(--transaction-color) 260deg, var(--transaction-color) 300deg, transparent 345deg);position:absolute;inset:-120%}@supports (color:color-mix(in lab, red, red)){.button-add:before{background:conic-gradient(from 0deg, transparent 0deg 220deg, color-mix(in srgb, var(--transaction-color) 35%, transparent) 260deg, var(--transaction-color) 300deg, transparent 345deg)}}.button-add:before{content:"";animation:3.8s linear infinite add-button-frame}.button-add:after{z-index:-1;background:var(--surface);content:"";border-radius:8px;transition:background .17s;position:absolute;inset:1px}.button-add:hover:not(:disabled){color:var(--transaction-color);box-shadow:0 8px 20px var(--transaction-color)}@supports (color:color-mix(in lab, red, red)){.button-add:hover:not(:disabled){box-shadow:0 8px 20px color-mix(in srgb, var(--transaction-color) 12%, transparent)}}.button-add:hover:after{background:var(--surface)}.button-save{border-color:var(--transaction-border);background:var(--transaction-soft);color:var(--transaction-color);box-shadow:none}.button-save:hover:not(:disabled){border-color:var(--transaction-color);background:var(--surface);color:var(--transaction-color);box-shadow:0 7px 18px var(--transaction-color)}@supports (color:color-mix(in lab, red, red)){.button-save:hover:not(:disabled){box-shadow:0 7px 18px color-mix(in srgb, var(--transaction-color) 12%, transparent)}}.surface-panel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.module-page.tone-brand{--module-color:var(--primary);--module-soft:var(--primary-soft);--module-border:var(--primary-border)}.module-page.tone-amber{--module-color:#b7791f;--module-soft:#fff7e5;--module-border:#ead19b}.module-page.tone-blue{--module-color:#3271b8;--module-soft:#eaf3ff;--module-border:#bdd3ec}.module-page.tone-cyan{--module-color:#167f8f;--module-soft:#e5f7f8;--module-border:#afdce1}.module-page.tone-violet{--module-color:#7955b6;--module-soft:#f2edfa;--module-border:#d4c6e9}.module-page.tone-indigo{--module-color:#5265b4;--module-soft:#edf0fb;--module-border:#c6cee9}.module-page.tone-orange{--module-color:#b8662d;--module-soft:#fff0e6;--module-border:#e7c2a7}.module-page.tone-teal{--module-color:#197c69;--module-soft:#e7f5f1;--module-border:#b4dcd3}html[data-theme=dark] .module-page{--module-soft:var(--module-color)}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .module-page{--module-soft:color-mix(in srgb, var(--module-color) 16%, var(--surface))}}html[data-theme=dark] .module-page{--module-border:var(--module-color)}@supports (color:color-mix(in lab, red, red)){html[data-theme=dark] .module-page{--module-border:color-mix(in srgb, var(--module-color) 38%, var(--border))}}.module-page .page-header .section-label{color:var(--module-color)}.module-workspace{--transaction-color:var(--module-color);--transaction-soft:var(--module-soft);--transaction-border:var(--module-border)}.module-panel{border-top:2px solid var(--module-color);box-shadow:0 10px 28px var(--module-color)}@supports (color:color-mix(in lab, red, red)){.module-panel{box-shadow:0 10px 28px color-mix(in srgb, var(--module-color) 6%, transparent)}}.module-page .empty-state-icon{border-color:var(--module-border);background:var(--module-soft);color:var(--module-color)}.module-workspace .table-search:focus-within{border-color:var(--module-border);box-shadow:0 0 0 3px var(--module-color)}@supports (color:color-mix(in lab, red, red)){.module-workspace .table-search:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--module-color) 9%, transparent)}}.module-workspace .data-table tbody tr:hover{background:var(--surface-soft)}.module-workspace .module-record-table td{height:61px}.module-modal .section-label{color:var(--module-color)}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.kpi-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);padding:18px;transition:border-color .16s,box-shadow .16s;position:relative}.kpi-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.kpi-card-head{color:var(--text-soft);justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.kpi-icon{border-radius:var(--radius-sm);background:var(--primary-soft);width:34px;height:34px;color:var(--primary);flex:none;place-items:center;display:grid}.tone-positive .kpi-icon{background:var(--positive-soft);color:var(--positive)}.tone-negative .kpi-icon{background:var(--negative-soft);color:var(--negative)}.tone-neutral .kpi-icon{background:var(--gold-soft);color:var(--gold)}.kpi-card>strong{letter-spacing:-.035em;margin-top:14px;font-size:clamp(22px,2vw,28px);font-weight:700;display:block}.kpi-card-foot{align-items:center;gap:8px;margin-top:8px;display:flex}.kpi-card>small,.kpi-card-foot small{color:var(--text-faint);font-size:11px;display:block}.trend-badge{background:var(--neutral-soft);color:var(--text-soft);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;align-items:center;gap:3px;padding:2px 7px 2px 5px;font-size:11px;font-weight:650;display:inline-flex}.trend-badge.is-up{background:var(--positive-soft);color:var(--positive)}.trend-badge.is-down{background:var(--negative-soft);color:var(--negative)}.dashboard-split{grid-template-columns:repeat(auto-fit,minmax(370px,1fr));gap:16px;display:grid}.panel-empty{text-align:center;justify-items:center;gap:7px;padding:34px 22px 40px;display:grid}.panel-empty>span{border-radius:var(--radius-sm);background:var(--surface-soft);width:38px;height:38px;color:var(--text-soft);place-items:center;display:grid}.panel-empty strong{font-size:14px}.panel-empty p{max-width:34ch;color:var(--text-soft);margin:0;font-size:12px;line-height:1.5}.distribution-body{flex-wrap:wrap;align-items:center;gap:24px;padding:20px 22px 22px;display:flex}.donut-figure{flex:none;width:166px;height:166px;margin:0;position:relative}.donut-figure svg{width:100%;height:100%;display:block}.donut-track{fill:none;stroke:var(--surface-soft);stroke-width:5.2px}.donut-slice{fill:none;stroke-width:5.2px;transition:stroke-width .16s}.donut-figure figcaption{pointer-events:none;align-content:center;justify-items:center;gap:2px;display:grid;position:absolute;inset:0}.donut-figure figcaption small{color:var(--text-faint);font-size:10px}.donut-figure figcaption strong{letter-spacing:-.02em;font-size:15px}.donut-legend{flex:1;min-width:190px;margin:0;padding:0;list-style:none;display:grid}.donut-legend li{border-bottom:1px solid var(--border);grid-template-columns:9px minmax(0,1fr) auto 46px;align-items:center;gap:10px;padding:8px 0;font-size:12px;display:grid}.donut-legend li:last-child{border-bottom:0}.donut-legend span{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.donut-legend b{font-variant-numeric:tabular-nums}.donut-legend em{color:var(--text-faint);font-variant-numeric:tabular-nums;text-align:right;font-size:11px;font-style:normal}.series-dot{border-radius:3px;width:9px;height:9px;display:block}.donut-slice.series-1{stroke:var(--series-1)}.series-dot.series-1{background:var(--series-1)}.donut-slice.series-2{stroke:var(--series-2)}.series-dot.series-2{background:var(--series-2)}.donut-slice.series-3{stroke:var(--series-3)}.series-dot.series-3{background:var(--series-3)}.donut-slice.series-4{stroke:var(--series-4)}.series-dot.series-4{background:var(--series-4)}.donut-slice.series-5{stroke:var(--series-5)}.series-dot.series-5{background:var(--series-5)}.donut-slice.series-6{stroke:var(--series-6)}.series-dot.series-6{background:var(--series-6)}.activity-feed{margin:0;padding:8px 10px 12px;list-style:none;display:grid}.activity-feed li{border-radius:var(--radius-sm);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;transition:background .14s;display:grid}.activity-feed li:hover{background:var(--surface-soft)}.activity-dot{border-radius:50%;width:8px;height:8px}.activity-dot.is-income{background:var(--positive)}.activity-dot.is-expense{background:var(--negative)}.activity-copy{gap:2px;min-width:0;display:grid}.activity-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.activity-copy small{color:var(--text-faint);font-size:11px}.activity-amount{justify-items:end;gap:2px;display:grid}.activity-amount b{font-variant-numeric:tabular-nums;font-size:13px}.activity-amount small{color:var(--text-faint);font-size:11px}.cashflow-panel{overflow:hidden}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 22px 17px;display:flex}.panel-header h2{font-size:18px}.panel-header p{font-size:12px}.segmented-control{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;gap:2px;padding:3px;display:flex}.segmented-control button{min-width:64px;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 10px;font-size:12px}.segmented-control button.is-active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm);font-weight:700}.segmented-control button:hover:not(.is-active){background:var(--surface);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary-border)}.chart-empty{height:315px;padding:26px 28px 0;position:relative}.chart-grid-lines{border-bottom:1px solid var(--border);background:repeating-linear-gradient(to bottom, var(--border) 0, var(--border) 1px, transparent 1px, transparent 57px);opacity:.7;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:absolute;inset:25px 28px}.chart-grid-lines span{border-left:1px solid var(--border);position:relative}@supports (color:color-mix(in lab, red, red)){.chart-grid-lines span{border-left:1px solid color-mix(in srgb, var(--border) 60%, transparent)}}.chart-grid-lines span:last-child{border-right:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.chart-grid-lines span:last-child{border-right:1px solid color-mix(in srgb, var(--border) 60%, transparent)}}.chart-grid-lines small{color:var(--text-faint);position:absolute;bottom:-24px;left:50%;transform:translate(-50%)}.chart-empty-message{z-index:2;border:1px solid var(--border);background:var(--surface-raised);width:min(390px,100% - 40px);box-shadow:var(--shadow-md);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-direction:column;align-items:center;padding:17px 20px;display:flex;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.chart-empty-message>span{background:var(--primary-soft);width:39px;height:39px;color:var(--primary);border-radius:10px;place-items:center;margin-bottom:8px;display:grid}.chart-empty-message p{color:var(--text-soft);margin:5px 0 0;font-size:12px;line-height:1.5}.chart-legend{color:var(--text-soft);justify-content:center;align-items:center;gap:7px;padding:0 20px 18px;font-size:11px;display:flex}.chart-legend span{border-radius:50%;width:8px;height:8px;margin-left:9px}.chart-legend .income-dot{background:var(--positive)}.chart-legend .expense-dot{background:var(--negative)}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;padding:44px 24px;display:flex}.empty-state-icon,.setting-icon{border:1px solid var(--primary-border);background:var(--primary-soft);width:48px;height:48px;color:var(--primary);box-shadow:inset 0 0 0 3px var(--surface);border-radius:13px;place-items:center;margin-bottom:13px;display:grid}@supports (color:color-mix(in lab, red, red)){.empty-state-icon,.setting-icon{box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--surface) 65%, transparent)}}.empty-state h2{font-size:18px}.empty-state p{max-width:470px}.empty-state .button{margin-top:18px}.compact-empty-state{min-height:350px}.records-panel{min-height:450px;overflow:hidden}.transaction-page .page-header .section-label,.transaction-modal .section-label{color:var(--transaction-color)}.transaction-content-grid{grid-template-columns:280px minmax(0,1fr);min-height:390px;display:grid}.category-totals-panel{border-right:1px solid var(--border);background:var(--transaction-soft);min-width:0;padding:18px 15px}@supports (color:color-mix(in lab, red, red)){.category-totals-panel{background:color-mix(in srgb, var(--transaction-soft) 34%, var(--surface))}}.category-totals-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:0 3px 13px;display:flex}.category-totals-panel h2{letter-spacing:-.02em;margin:0;font-size:15px}.category-totals-panel>header>span{background:var(--surface);min-width:25px;height:25px;color:var(--transaction-color);border-radius:7px;place-items:center;font-size:10px;font-weight:750;display:grid}.category-total-list{gap:7px;padding-top:12px;display:grid}.category-total-list>p{color:var(--text-faint);margin:8px 3px;font-size:11px;line-height:1.5}.category-total-row{background:var(--surface);border:1px solid #0000;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;transition:border-color .15s,background .15s;display:grid}.category-total-row:hover{border-color:var(--transaction-border)}.category-color-dot{background:var(--transaction-color);width:8px;height:8px;box-shadow:0 0 0 3px var(--transaction-color);border-radius:50%;flex:none}@supports (color:color-mix(in lab, red, red)){.category-color-dot{box-shadow:0 0 0 3px color-mix(in srgb, var(--transaction-color) 12%, transparent)}}.category-total-row>div{flex-direction:column;min-width:0;display:flex}.category-total-row strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.category-total-row small{color:var(--text-faint);margin-top:2px;font-size:9px}.category-total-row b{color:var(--transaction-color);white-space:nowrap;font-size:11px}.daily-records-area{min-width:0;padding:15px}.daily-records-area .empty-state{min-height:355px}.daily-accordion-list{gap:9px;display:grid}.daily-accordion{border:1px solid var(--border);background:var(--surface);border-radius:11px;transition:border-color .16s,box-shadow .16s;overflow:hidden}.daily-accordion.is-open{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.daily-accordion-trigger{background:var(--surface-soft);width:100%;min-height:62px;color:var(--text);text-align:left;cursor:pointer;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:9px 12px;display:grid}.daily-accordion.is-open .daily-accordion-trigger{background:var(--surface-soft)}.day-marker{border:1px solid var(--transaction-border);background:var(--surface);min-width:43px;height:38px;color:var(--transaction-color);border-radius:9px;place-items:center;padding:0 7px;font-size:10px;font-weight:750;display:grid}.day-heading{flex-direction:column;min-width:0;display:flex}.day-heading strong{text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.day-heading small{color:var(--text-faint);margin-top:3px;font-size:10px}.daily-accordion-trigger>b{white-space:nowrap;font-size:12px}.accordion-chevron{color:var(--text-faint);transition:transform .18s}.daily-accordion.is-open .accordion-chevron{color:var(--transaction-color);transform:rotate(180deg)}.daily-accordion-body{border-top:1px solid var(--border);animation:.17s accordion-in}.daily-accordion-body .data-table th{background:var(--surface)}.transaction-page .empty-state-icon{border-color:var(--transaction-border);background:var(--transaction-soft);color:var(--transaction-color)}.transaction-page .table-search:focus-within{border-color:var(--transaction-border);box-shadow:0 0 0 3px var(--transaction-color)}@supports (color:color-mix(in lab, red, red)){.transaction-page .table-search:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--transaction-color) 9%, transparent)}}.records-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:59px;padding:10px 15px;display:flex}.table-search{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;width:min(340px,100%);height:37px;padding:0 10px}.record-count,.status-pill{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-soft);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:650}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;white-space:nowrap;width:100%}.data-table th{border-bottom:1px solid var(--border);background:var(--surface-soft);height:43px;color:var(--text-faint);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:0 14px;font-size:10px;font-weight:750}.data-table td{border-bottom:1px solid var(--border);height:57px;color:var(--text-soft);padding:0 14px}.data-table tbody tr{cursor:pointer;transition:background .15s}.data-table tbody tr:hover{background:var(--surface-soft)}.data-table tbody tr.is-selected{background:var(--primary-soft)}.data-table td strong{color:var(--text);font-weight:650}.data-table input[type=radio]{accent-color:var(--primary)}.align-right{text-align:right!important}.amount-positive{font-weight:700;color:var(--positive)!important}.amount-income{font-weight:750;color:var(--positive)!important}.amount-expense{font-weight:750;color:var(--negative)!important}.category-pill{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-size:11px;font-weight:600;display:inline-flex}.category-pill:before{background:var(--transaction-color,var(--module-color,var(--text-faint)));content:"";border-radius:50%;flex:none;width:6px;height:6px}.record-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.record-action{border:1px solid var(--border);background:var(--surface);min-height:31px;color:var(--text-soft);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:650;transition:border-color .15s,background .15s,color .15s,transform .15s;display:inline-flex}.record-action:hover{transform:translateY(-1px)}.record-action-edit:hover{border-color:var(--transaction-border);background:var(--surface);color:var(--transaction-color)}.record-action-delete:hover{border-color:var(--negative)}@supports (color:color-mix(in lab, red, red)){.record-action-delete:hover{border-color:color-mix(in srgb, var(--negative) 34%, var(--border))}}.record-action-delete:hover{background:var(--negative-soft);color:var(--negative)}.empty-filter{min-height:300px;color:var(--text-soft);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.setting-card{grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:20px;display:grid}.setting-card .setting-icon{margin:0}.setting-card h2{font-size:16px}.setting-card p{font-size:12px}.setting-card.is-muted{opacity:.72}.settings-data-manager{overflow:hidden}.settings-data-tabs{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:22px;padding:20px;display:flex}.settings-data-tabs h2{letter-spacing:-.02em;margin:4px 0 0;font-size:17px}.settings-data-tabs p{color:var(--text-soft);margin:5px 0 0;font-size:12px}.settings-data-manager .category-manager.is-embedded{box-shadow:none;border:0;border-radius:0}.category-manager{--transaction-color:var(--positive);--transaction-soft:var(--primary-soft);--transaction-border:var(--primary-border);border-top:2px solid var(--transaction-color);overflow:hidden}.category-manager-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.category-manager-title{align-items:center;gap:13px;display:flex}.category-manager-title .setting-icon{border-color:var(--transaction-border);background:var(--transaction-soft);color:var(--transaction-color);margin:0}.category-manager h2{letter-spacing:-.02em;margin:0;font-size:17px}.category-manager p{color:var(--text-soft);margin:5px 0 0;font-size:12px}.category-tabs button.is-active{color:var(--transaction-color)}.category-add-form{border-bottom:1px solid var(--border);background:var(--surface-soft);padding:17px 20px}.category-add-form>label{color:var(--text-soft);margin-bottom:7px;font-size:11px;font-weight:700;display:block}.category-add-form>div{gap:8px;display:flex}.category-add-form .form-control{background:var(--surface);max-width:420px}.category-add-form .button-add{flex:none}.account-type-add-row .account-family-select{flex:0 0 155px;width:155px}.category-list-head{color:var(--text-soft);justify-content:space-between;align-items:center;padding:14px 20px 8px;font-size:11px;font-weight:750;display:flex}.category-list-head small{color:var(--text-faint);font-weight:600}.category-sort-list{gap:7px;padding:4px 20px 18px;display:grid}.category-sort-row{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:51px;padding:6px 8px;transition:border-color .15s,box-shadow .15s,opacity .15s,transform .15s;display:grid}.category-sort-row.account-type-row{grid-template-columns:auto auto minmax(0,1fr) auto auto}.category-sort-row:hover{border-color:var(--transaction-border);box-shadow:var(--shadow-sm)}.category-sort-row.is-dragging{opacity:.45;transform:scale(.99)}.drag-handle{width:28px;height:32px;color:var(--text-faint);cursor:grab;border-radius:7px;place-items:center;display:grid}.drag-handle:active{cursor:grabbing}.category-sort-row>strong{font-size:12px}.account-family-pill{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-soft);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}.category-row-actions{gap:5px;display:flex}.category-row-actions .icon-button{width:32px;height:32px}.category-confirm-button{color:var(--transaction-color)}.category-delete-button:hover{border-color:var(--negative)}@supports (color:color-mix(in lab, red, red)){.category-delete-button:hover{border-color:color-mix(in srgb, var(--negative) 34%, var(--border))}}.category-delete-button:hover{background:var(--negative-soft);color:var(--negative)}.category-edit-input{height:34px}.category-empty{border:1px dashed var(--border-strong);color:var(--text-faint);text-align:center;border-radius:10px;padding:30px}.category-manager-footer{border-top:1px solid var(--border);background:var(--surface-soft);color:var(--text-faint);align-items:center;gap:7px;padding:12px 20px;font-size:10px;display:flex}.daily-report-panel{border-top:2px solid #25d366;justify-content:space-between;align-items:center;gap:24px;padding:20px;display:flex}.daily-report-panel h2{margin:4px 0 0;font-size:17px}.daily-report-panel p{color:var(--text-soft);margin:5px 0 0;font-size:12px}.daily-report-actions{align-items:flex-end;gap:9px;display:flex}.whatsapp-report-button:hover{border-color:#25d366}@supports (color:color-mix(in lab, red, red)){.whatsapp-report-button:hover{border-color:color-mix(in srgb, #25d366 48%, var(--border))}}.whatsapp-report-button:hover{color:#1a9f4c}.report-preview-modal{width:min(680px,100vw - 28px)}.report-preview-text{resize:vertical;border:1px solid var(--border);background:var(--surface-soft);width:100%;min-height:420px;color:var(--text);font:12px/1.65 var(--font-geist-mono), monospace;border-radius:10px;outline:none;padding:14px}.report-preview-text:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft)}.report-share-note{color:var(--text-soft);margin:10px 0 0;font-size:11px}.partner-ledger-panel{overflow:hidden}.partner-summary-grid{border-bottom:1px solid var(--border);background:var(--surface-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 20px;display:grid}.partner-summary-card{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:13px}.partner-summary-card>strong{margin-bottom:10px;font-size:13px;display:block}.partner-summary-card>div{flex-wrap:wrap;gap:7px;display:flex}.partner-summary-card span{background:var(--surface-soft);color:var(--text-soft);border-radius:7px;gap:5px;padding:5px 7px;font-size:10px;display:flex}.partner-summary-card .is-positive{color:var(--positive)}.partner-summary-card .is-negative{color:var(--negative)}.movement-pill{border-radius:999px;align-items:center;gap:5px;padding:5px 7px;font-size:10px;font-weight:750;display:inline-flex}.movement-pill.is-received{background:var(--negative-soft);color:var(--negative)}.movement-pill.is-given{background:var(--positive-soft);color:var(--positive)}.page-action-group{align-items:center;gap:8px;display:flex}.staff-page{--transaction-color:var(--module-color);--transaction-soft:var(--module-soft);--transaction-border:var(--module-border)}.staff-workspace-panel{border-top:2px solid var(--transaction-color);overflow:hidden}.staff-content-grid{grid-template-columns:400px minmax(0,1fr);min-height:520px;display:grid}.staff-info-panel{border-right:1px solid var(--border);background:var(--transaction-soft);min-width:0;padding:17px 14px}@supports (color:color-mix(in lab, red, red)){.staff-info-panel{background:color-mix(in srgb, var(--transaction-soft) 30%, var(--surface))}}.staff-info-panel>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 3px 12px;display:flex}.staff-info-panel h2{margin:3px 0 0;font-size:16px}.staff-info-panel>header>span{background:var(--surface);min-width:26px;height:26px;color:var(--transaction-color);border-radius:7px;place-items:center;font-size:10px;font-weight:750;display:grid}.staff-filter-all{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-soft);text-align:left;cursor:pointer;border-radius:9px;margin:11px 0 8px;padding:9px;font-size:11px;font-weight:700}.staff-filter-all:hover,.staff-filter-all.is-active{border-color:var(--transaction-border);color:var(--transaction-color)}.staff-card-list{gap:8px;display:grid}.staff-info-card{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;padding:11px;transition:border-color .15s,box-shadow .15s}.staff-info-card:hover,.staff-info-card.is-active{border-color:var(--transaction-border);box-shadow:var(--shadow-sm)}.staff-info-card>header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.staff-info-card>header>div:first-child{flex-direction:column;min-width:0;display:flex}.staff-name-salary{align-items:center;gap:9px;min-width:0;display:flex}.staff-name-salary strong{flex:1}.staff-salary-divider{background:var(--transaction-color);width:2px;height:25px;box-shadow:0 0 0 3px var(--transaction-color);border-radius:999px;flex:none}@supports (color:color-mix(in lab, red, red)){.staff-salary-divider{box-shadow:0 0 0 3px color-mix(in srgb, var(--transaction-color) 10%, transparent)}}.staff-name-salary b{border:1px solid var(--transaction-color);background:var(--transaction-soft);border-radius:7px;flex:none;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.staff-name-salary b{background:color-mix(in srgb, var(--transaction-soft) 78%, var(--surface))}}.staff-name-salary b{color:var(--transaction-color);white-space:nowrap;font-size:12px;font-weight:800}.staff-name-salary b span{letter-spacing:.04em;opacity:.76;text-transform:uppercase;font-size:8px;font-weight:750}.staff-info-card>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.staff-info-card>header small{color:var(--text-faint);margin-top:3px;font-size:9px}.staff-card-actions{gap:4px;display:flex}.staff-card-actions .icon-button{width:27px;height:27px}.staff-info-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 0;display:grid}.staff-info-card dl>div{background:var(--surface-soft);border-radius:7px;flex-direction:column;min-width:0;padding:7px;display:flex}.staff-info-card dt{color:var(--text-faint);font-size:8px}.staff-info-card dd{color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:10px;font-weight:750;overflow:hidden}.staff-info-card .staff-remaining{border:1px solid var(--transaction-color);background:var(--transaction-soft);border-left-width:3px;grid-column:1/-1}@supports (color:color-mix(in lab, red, red)){.staff-info-card .staff-remaining{background:color-mix(in srgb, var(--transaction-soft) 82%, var(--surface))}}.staff-info-card .staff-remaining dt{color:var(--transaction-color);font-weight:750}.staff-info-card .staff-remaining dd{color:var(--transaction-color);font-size:13px;font-weight:850}.staff-info-card dd.is-negative{color:var(--negative)}.staff-movements-area{min-width:0;padding:17px}.staff-movements-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding-bottom:14px;display:flex}.staff-movements-header h2{margin:3px 0 0;font-size:17px}.staff-movements-header p{color:var(--text-soft);margin:5px 0 0;font-size:11px}.month-navigator{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;gap:7px;padding:5px;display:flex}.month-navigator strong{min-width:112px;color:var(--text-soft);text-align:center;text-transform:capitalize;font-size:11px}.month-navigator .icon-button{border-color:#0000;width:29px;height:29px}.staff-movements-area .daily-accordion-list{padding-top:14px}.linked-expense-notice{border:1px solid var(--transaction-border);background:var(--transaction-soft);color:var(--text-soft);border-radius:9px;margin:14px 20px 0;padding:10px;font-size:11px}.date-picker,.date-field{position:relative}.date-picker-trigger{border:1px solid var(--border);background:var(--surface);height:39px;color:var(--text-soft);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:0 11px;font-size:12px;font-weight:600;transition:border-color .16s,background .16s;display:inline-flex}.date-picker-trigger:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary)}.date-popover{z-index:90;border:1px solid var(--border-strong);background:var(--surface-raised);width:354px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(22px)saturate(130%);backdrop-filter:blur(22px)saturate(130%);border-radius:14px;padding:14px;animation:.17s cubic-bezier(.2,.8,.2,1) popover-in;position:absolute;top:calc(100% + 10px);right:0}.date-popover-head,.calendar-head,.date-popover-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.date-popover-head strong{font-size:17px;display:block}.date-presets{grid-template-columns:repeat(4,1fr);gap:5px;margin:13px 0;display:grid}.date-presets button,.today-button{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-soft);cursor:pointer;border-radius:7px;padding:7px 5px;font-size:11px}.date-presets button:hover,.today-button:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary)}.calendar-shell{border:1px solid var(--border);background:var(--surface);border-radius:11px;padding:9px}.calendar-head{height:37px;margin-bottom:6px}.calendar-head strong{text-transform:capitalize;font-size:13px}.calendar-head .icon-button{border-color:#0000;width:30px;height:30px}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.calendar-weekday{height:25px;color:var(--text-faint);place-items:center;font-size:9px;font-weight:700;display:grid}.calendar-day{aspect-ratio:1;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;font-size:11px;display:grid;position:relative}.calendar-day:hover{background:var(--surface-soft);color:var(--text)}.calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--primary-border);color:var(--primary);font-weight:750}.calendar-day.is-in-range{background:var(--primary-soft);color:var(--primary);border-radius:3px}.calendar-day.is-selected{background:var(--primary);color:#fff;box-shadow:0 3px 9px var(--primary);border-radius:7px}@supports (color:color-mix(in lab, red, red)){.calendar-day.is-selected{box-shadow:0 3px 9px color-mix(in srgb, var(--primary) 30%, transparent)}}.calendar-day.is-selected{font-weight:750}.date-selection-summary{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:12px 0;display:grid}.date-selection-summary span{background:var(--surface-soft);border-radius:8px;flex-direction:column;min-width:0;padding:8px;font-size:10px;display:flex}.date-selection-summary small{color:var(--text-faint);margin-bottom:2px}.date-popover-actions{border-top:1px solid var(--border);justify-content:flex-end;padding-top:12px}.date-popover-actions .button{min-height:35px;font-size:12px}.date-field-popover{z-index:120;max-height:calc(100vh - 24px);position:fixed;top:auto;left:auto;right:auto;overflow-y:auto}.date-field-trigger{text-align:left;align-items:center;gap:9px;width:100%;display:flex}.today-button{width:100%;margin-top:10px}.quick-actions-backdrop{z-index:69;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080d0940;border:0;position:fixed;inset:0}.quick-actions-drawer{z-index:70;border-left:1px solid var(--border);background:var(--surface-raised);width:min(370px,92vw);height:100vh;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);flex-direction:column;padding:23px;transition:transform .24s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;top:0;right:0;transform:translate(102%)}.quick-actions-drawer.is-open{transform:translate(0)}.quick-actions-drawer header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:17px;display:flex}.quick-actions-drawer h2{letter-spacing:-.025em;margin:0;font-size:20px}.quick-action-list{gap:8px;padding-top:17px;display:grid}.quick-action-item{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);border-radius:11px;align-items:center;gap:12px;padding:11px;font-weight:650;transition:transform .16s,border-color .16s,color .16s;display:flex}.quick-action-item:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary);transform:translate(-3px)}.quick-action-icon{background:var(--primary-soft);width:37px;height:37px;color:var(--primary);border-radius:9px;place-items:center;display:grid}.quick-action-icon.tone-positive{color:var(--positive)}.quick-action-icon.tone-negative{color:var(--negative);background:var(--negative-soft)}.quick-actions-note{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-faint);border-radius:10px;margin-top:auto;padding:12px;font-size:11px;line-height:1.5}.quick-actions-trigger{z-index:71;border:1px solid var(--border-strong);background:var(--surface-raised);height:46px;color:var(--text-soft);cursor:pointer;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:12px;align-items:center;gap:9px;padding:0 13px 0 7px;font-weight:650;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s,color .18s;display:inline-flex;position:fixed;bottom:22px;right:24px;box-shadow:0 8px 22px #1626191f}.quick-trigger-icon{border:1px solid var(--primary-border);background:var(--surface);width:31px;height:31px;color:var(--primary);border-radius:8px;place-items:center;transition:transform .18s,background .18s;display:grid}.quick-trigger-label{font-size:12px}.quick-actions-trigger:hover{border-color:var(--primary-border);background:var(--surface);color:var(--primary);box-shadow:0 11px 27px var(--primary)}@supports (color:color-mix(in lab, red, red)){.quick-actions-trigger:hover{box-shadow:0 11px 27px color-mix(in srgb, var(--primary) 13%, transparent)}}.quick-actions-trigger:hover{transform:translateY(-2px)}.quick-actions-trigger:hover .quick-trigger-icon{background:var(--primary-soft)}@supports (color:color-mix(in lab, red, red)){.quick-actions-trigger:hover .quick-trigger-icon{background:color-mix(in srgb, var(--primary-soft) 74%, var(--surface))}}.quick-actions-trigger:hover .quick-trigger-icon{transform:rotate(-5deg)}.quick-actions-trigger.is-open{border-color:var(--primary-border);background:var(--surface)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#070c0885;place-items:center;padding:20px;animation:.15s fade-in;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border-strong);background:var(--surface);width:min(590px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);border-radius:17px;animation:.19s cubic-bezier(.2,.8,.2,1) modal-in;overflow:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.modal-header h2{font-size:20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:22px;display:grid}.field{flex-direction:column;gap:7px;min-width:0;display:flex;position:relative}.field-full{grid-column:1/-1}.field label{color:var(--text-soft);font-size:11px;font-weight:700}.field-hint{color:var(--text-soft);font-variant-numeric:tabular-nums;margin-top:-2px;font-size:11px}.form-control{border:1px solid var(--border);background:var(--surface-soft);width:100%;height:42px;color:var(--text);border-radius:9px;outline:0;padding:0 11px;transition:border-color .16s,box-shadow .16s,background .16s}.form-control:hover{border-color:var(--border-strong)}.form-control:focus{border-color:var(--primary-border);background:var(--surface);box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab, red, red)){.form-control:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 11%, transparent)}}.currency-input{position:relative}.currency-input>span{z-index:1;color:var(--primary);font-weight:700;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.currency-input input{padding-left:30px}.modal-actions{border-top:1px solid var(--border);background:var(--surface-soft);justify-content:flex-end;gap:9px;padding:16px 22px;display:flex}.delete-modal{text-align:center;width:min(440px,100%);padding:25px}.delete-warning{border:1px solid var(--negative);place-items:center;width:52px;height:52px;margin:0 auto 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.delete-warning{border:1px solid color-mix(in srgb, var(--negative) 35%, transparent)}}.delete-warning{background:var(--negative-soft);color:var(--negative);border-radius:14px}.delete-modal h2{font-size:21px}.delete-notice{border:1px solid var(--negative);margin-top:16px;padding:10px}@supports (color:color-mix(in lab, red, red)){.delete-notice{border:1px solid color-mix(in srgb, var(--negative) 22%, var(--border))}}.delete-notice{background:var(--negative-soft);color:var(--negative);border-radius:9px;font-size:11px}.delete-modal .modal-actions{border-radius:0 0 17px 17px;margin:22px -25px -25px}@keyframes popover-in{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes add-button-frame{to{transform:rotate(1turn)}}@keyframes accordion-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes cloud-pulse{50%{opacity:.35;transform:scale(.75)}}@media (max-width:1120px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}.transaction-content-grid{grid-template-columns:240px minmax(0,1fr)}}@media (max-width:820px){:root{--topbar-height:64px}.app-stage{margin-left:0}.sidebar,.sidebar-is-collapsed .sidebar{width:min(286px,87vw);transform:translate(-102%)}.sidebar.is-mobile-open{transform:translate(0)}.sidebar-is-collapsed .brand{justify-content:flex-start;padding-inline:14px}.sidebar-is-collapsed .brand-copy,.sidebar-is-collapsed .sidebar-link span,.sidebar-is-collapsed .workspace-badge div{display:flex}.sidebar-is-collapsed .sidebar-link{justify-content:flex-start;padding:0 12px}.sidebar-is-collapsed .workspace-badge{justify-content:flex-start;padding:10px}.sidebar-collapse{display:none}.sidebar-mobile-close{background:var(--surface-soft);cursor:pointer;border:0;border-radius:9px;place-items:center;width:36px;height:36px;margin-left:auto;display:inline-grid}.mobile-menu-button{display:inline-grid}.mobile-sidebar-backdrop{z-index:39;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#070c0873;border:0;display:block;position:fixed;inset:0}.topbar{gap:10px;padding:0 16px}.global-search{flex:1;width:auto}.global-search kbd{display:none}.app-content{padding:24px 17px 88px}.page-header{flex-direction:column;align-items:flex-start}.page-actions{width:100%}.toolbar-actions{width:100%;padding-bottom:2px;overflow-x:auto}.transaction-content-grid{grid-template-columns:1fr}.category-totals-panel{border-right:0;border-bottom:1px solid var(--border)}.category-total-list{grid-template-columns:repeat(2,minmax(0,1fr))}.category-manager-header{flex-direction:column;align-items:stretch}.category-tabs{align-self:flex-start}.staff-content-grid{grid-template-columns:1fr}.staff-info-panel{border-right:0;border-bottom:1px solid var(--border)}.staff-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:590px){.global-search{display:none}.topbar{justify-content:space-between}.date-picker-trigger span{display:none}.date-picker-trigger,.cloud-save-status{justify-content:center;width:39px;padding:0}.cloud-save-status>span,.cloud-save-status i{display:none}.date-popover{width:auto;position:fixed;top:72px;left:10px;right:10px}.kpi-grid{grid-template-columns:1fr}.panel-header{flex-direction:column;align-items:stretch}.segmented-control button{flex:1}.chart-empty{height:300px;padding-inline:12px}.chart-grid-lines{left:12px;right:12px}.form-grid{grid-template-columns:1fr;padding:17px}.field-full{grid-column:auto}.date-field-popover{right:auto;transform:none}.records-toolbar{flex-direction:column;align-items:stretch}.record-count{align-self:flex-start}.quick-actions-trigger .quick-trigger-label{display:none}.quick-actions-trigger{border-radius:13px;justify-content:center;width:48px;height:48px;padding:0}.category-total-list{grid-template-columns:1fr}.daily-accordion-trigger{grid-template-columns:auto minmax(0,1fr) auto}.daily-accordion-trigger>b{grid-area:2/2}.accordion-chevron{grid-area:1/3/span 2}.category-add-form>div{flex-direction:column;align-items:stretch}.category-add-form .form-control{max-width:none}.category-add-form .button-add{align-self:flex-start}.category-sort-row.account-type-row{grid-template-columns:auto auto minmax(0,1fr) auto}.account-type-row .account-family-pill{display:none}.daily-report-panel,.daily-report-actions{flex-direction:column;align-items:stretch}.daily-report-actions .button{align-self:flex-start}.partner-summary-grid{grid-template-columns:1fr}.page-action-group,.staff-movements-header{flex-direction:column;align-items:stretch}.page-action-group .button{justify-content:center;width:100%}.staff-card-list{grid-template-columns:1fr}.month-navigator{align-self:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.login-page{background:radial-gradient(circle at 12% 18%, var(--primary-soft), transparent 32%), var(--app-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--border-strong);background:var(--surface-raised);border-radius:20px;width:min(450px,100%);padding:28px}@supports (color:color-mix(in lab, red, red)){.login-card{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.login-card{box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.login-brand{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding-bottom:22px;display:flex}.login-logo{border:1px solid var(--primary-border);background:var(--surface);width:62px;height:62px;box-shadow:var(--shadow-sm);border-radius:16px;place-items:center;display:grid;overflow:hidden}.login-logo img{object-fit:contain;width:54px;height:54px}.login-brand span{color:var(--text-faint);font-size:11px;font-weight:650}.login-brand h1{letter-spacing:-.03em;margin-top:3px;font-size:21px}.login-copy{padding:25px 0 20px}.login-copy h2{letter-spacing:-.035em;margin-top:6px;font-size:25px}.login-copy p{color:var(--text-soft);margin-top:7px;font-size:13px;line-height:1.55}.login-form{gap:15px;display:grid}.login-input{border:1px solid var(--border);background:var(--surface-soft);height:44px;color:var(--text-faint);border-radius:10px;align-items:center;gap:9px;padding:0 12px;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.login-input:focus-within{border-color:var(--primary-border);background:var(--surface);box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab, red, red)){.login-input:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 11%, transparent)}}.login-input:focus-within{color:var(--primary)}.login-input input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.login-submit{justify-content:center;width:100%;margin-top:4px}.login-message{border:1px solid var(--border);background:var(--surface-soft);color:var(--text-soft);border-radius:9px;padding:10px 11px;font-size:12px;line-height:1.45}.login-note{text-align:center;color:var(--text-soft);margin:18px 0 0;font-size:12px;line-height:1.6}.records-error{border:1px solid var(--negative);margin:0 18px 14px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.records-error{border:1px solid color-mix(in srgb, var(--negative) 28%, var(--border))}}.records-error{background:var(--negative-soft);color:var(--negative);border-radius:9px;font-size:12px}.records-notice{border:1px solid var(--primary-border);background:var(--primary-soft);color:var(--primary);border-radius:9px;margin:0 18px 14px;padding:10px 12px;font-size:12px}.cashflow-bars{border-top:1px solid var(--border);background:repeating-linear-gradient(to bottom, transparent 0, transparent 64px, var(--border) 65px);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:clamp(3px,1vw,12px);height:330px;padding:28px 34px 16px;display:grid;overflow-x:auto}.cashflow-column{text-align:center;grid-template-rows:1fr auto;align-items:end;gap:9px;height:100%;display:grid}.cashflow-bar-area{justify-content:center;align-items:end;gap:min(5px,12%);height:100%;display:flex}.cashflow-bar{border-radius:6px 6px 2px 2px;width:min(18px,34%);min-height:0;transition:height .26s,filter .16s;display:block}.cashflow-bar:hover{filter:brightness(1.08)}.cashflow-bar.income{background:var(--positive)}.cashflow-bar.expense{background:var(--negative)}.cashflow-column small{color:var(--text-faint);text-transform:capitalize;white-space:nowrap;font-size:10px;font-weight:700}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
