:root{color:#1f2430;font-synthesis:none;--bg:#f7f8fc;--surface:#fff;--primary:#4f46e5;--primary-soft:#eef0ff;--text:#1f2430;--muted:#6b7280;--border:#e7e8f0;--positive:#16a34a;--radius:14px;--shadow:0 1px 2px #1018280a,0 2px 6px #1018280d;--select-arrow:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\" viewBox=\"0 0 10 6\" fill=\"none\"><path d=\"M1 1l4 4 4-4\" stroke=\"%236b7280\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>");background:#f7f8fc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);margin:0;font-size:14px}button,select{font:inherit}button{-webkit-tap-highlight-color:transparent}select{appearance:none;background-image:var(--select-arrow);background-position:right 14px center;background-repeat:no-repeat;background-size:9px 5px;padding-right:34px}.app-shell{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:0 0 64px;align-items:center;width:64px;padding:12px 0 16px;display:flex}.sidebar-nav{flex-direction:column;align-items:center;width:100%;display:flex}.nav-entry{display:contents}.nav-button{color:#747b8b;cursor:pointer;background:0 0;border:0;border-radius:11px;place-items:center;width:42px;height:42px;transition:all .15s;display:grid;position:relative}.nav-button:hover{background:var(--primary-soft);color:var(--primary)}.nav-button.active{background:var(--primary);color:#fff;box-shadow:0 4px 12px #4f46e533}.icon-income{background-color:currentColor;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.nav-divider{background:var(--border);width:26px;height:1px;margin:8px 0}.nav-button.locked{color:#c4c8d1;cursor:not-allowed}.nav-button.locked:hover{color:#c4c8d1;background:0 0}.nav-lock{color:#aeb3bf;font-size:10px;font-weight:800;position:absolute;top:5px;right:6px}.sidebar-spacer{flex:1}.avatar{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:50%;place-items:center;font-size:12px;font-weight:750;display:grid}.main-column{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex:0 0 60px;justify-content:space-between;align-items:center;gap:20px;height:60px;padding:0 28px;display:flex}.topbar h1{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:680}.wallet-controls{align-items:center;gap:8px;display:flex}.plan-badge{background:var(--primary-soft);width:max-content;color:var(--primary);border-radius:999px;align-items:center;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.wallet-selector{border:1px solid var(--border);background-color:var(--surface);min-width:164px;height:35px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;padding:0 30px 0 13px;font-weight:650}.content{scrollbar-gutter:stable;flex:1;padding:28px;overflow:auto}.page-stack{flex-direction:column;gap:20px;max-width:1520px;margin:0 auto;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.segment-control{background:var(--primary-soft);border-radius:9px;align-self:flex-start;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segment-control button{min-height:32px;color:var(--primary);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 13px;font-size:12.5px;font-weight:680}.segment-control button.active{color:#fff;background:var(--primary)}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.summary-card,.service-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.summary-card{flex-direction:column;justify-content:center;min-height:102px;padding:18px 20px;display:flex}.summary-card span{color:var(--muted);margin-bottom:6px;font-size:12.5px}.summary-card strong{letter-spacing:-.025em;font-size:26px}.summary-card strong.positive{color:var(--positive)}.month-filter{align-items:center;gap:10px;display:flex;overflow-x:auto}.month-filter .name-field{flex:none;width:86px}.month-segments{flex:none}.panel{padding:22px}.panel-actions{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.calendar-month-title{margin:0;font-size:16px;font-weight:700}.calendar-empty-message{margin:0 0 10px}.primary-button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;min-height:36px;padding:8px 14px;font-size:13px;font-weight:680}.muted-message{color:var(--muted);margin:0 0 14px;font-size:12.5px}.day-entries-title-row .secondary-button{min-height:36px}.calendar-grid{grid-template-columns:repeat(7,minmax(92px,1fr));gap:6px;min-width:720px;margin-top:16px;display:grid}.calendar-heading{color:var(--muted);text-align:center;text-transform:uppercase;padding:0 0 5px;font-size:10.5px;font-weight:700}.calendar-day,.calendar-empty{border-radius:9px;min-height:108px}.calendar-day{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#fff;grid-template-rows:18px 31px 31px;grid-template-columns:1fr auto;gap:4px;padding:6px;display:grid}.calendar-day:hover{border-color:var(--primary);box-shadow:0 2px 8px #4f46e51a}.calendar-day.today{border:2px solid var(--primary);padding:5px}.day-balance{color:#347c58;background:#e7f5ec;border-radius:5px;place-self:start;padding:3px 5px;font-size:9.5px;font-weight:800}.day-number{color:var(--muted);font-size:10px;font-weight:750}.calendar-day.today .day-number{color:var(--primary)}.day-line{border:1px solid;border-radius:6px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:4px;padding:5px 6px;display:flex;overflow:hidden}.day-line small{color:var(--muted);font-size:8.5px;font-weight:650}.day-line strong{white-space:nowrap;font-size:9.5px}.day-line.expense{color:#a5524e;background:#fbeaea;border-color:#f2d2d0}.day-line.income{color:#347c58;background:#e7f5ec;border-color:#cfe8d8}.calendar-scroll{overflow-x:auto}.modal-overlay{z-index:50;background:#0f111973;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:16px;width:min(440px,100%);max-height:90vh;padding:22px;overflow-y:auto;box-shadow:0 24px 60px #0f111947}.day-entries-card{width:min(560px,100%);min-height:213px}.day-entries{flex-direction:column;gap:16px;margin-top:16px;display:flex}.day-entries h3{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px;font-size:12.5px}.day-entries h3 small{text-transform:none;letter-spacing:0;font-weight:500}.day-entries-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.day-entry-button{border:1px solid var(--border);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.day-entry-button:hover,.day-entry-button:focus-visible{border-color:var(--primary);background:var(--primary-soft)}.day-entry-button span{flex-direction:column;gap:2px;font-size:13px;font-weight:650;display:flex}.day-entry-button small{color:var(--muted);font-size:11px;font-weight:500}.day-entries-list strong.positive{color:var(--positive)}.day-entries-list strong.negative{color:#b85c5c}.day-entries-totals{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:12px;display:flex}.day-entries-totals div{justify-content:space-between;font-weight:700;display:flex}.day-entries-totals strong.positive{color:var(--positive)}.day-entries-totals strong.negative{color:#b85c5c}.page-toolbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.page-toolbar h2{margin:0 0 5px;font-size:18px}.page-toolbar p{color:var(--muted);margin:0;font-size:13px}.service-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.service-card{padding:20px}.service-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.service-category{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.edit-button{background:var(--primary-soft);color:var(--primary);cursor:pointer;border:0;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700}.service-card h2{margin:12px 0 18px;font-size:17px}.service-card dl{margin:0}.service-card dl div{justify-content:space-between;gap:15px;padding:8px 0;display:flex}.service-card dt{color:var(--muted)}.service-card dd{margin:0;font-weight:750}.empty-state{color:var(--muted);text-align:center;padding:42px 20px}.alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:12px 14px}.subscription-alert{margin:0 0 16px}.placeholder-panel{text-align:center;flex-direction:column;align-items:center;max-width:680px;margin:40px auto;padding:44px 32px;display:flex}.placeholder-icon{background:var(--primary-soft);width:50px;height:50px;color:var(--primary);border-radius:14px;place-items:center;margin-bottom:14px;display:grid}.placeholder-panel h2{margin:12px 0 8px;font-size:20px}.placeholder-panel p{max-width:500px;color:var(--muted);margin:0;line-height:1.55}.fixed-expenses-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:20px;max-width:1520px;margin:0 auto;display:grid}.expense-form-panel{padding:20px}.panel-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-title-row h2{margin:0;font-size:16px}.secondary-button{border:1px solid var(--border);min-height:34px;color:var(--muted);cursor:pointer;background:#fff;border-radius:9px;padding:7px 12px;font-size:12.5px;font-weight:650}.expense-form{flex-direction:column;gap:12px;margin-top:18px;display:flex}.expense-form label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.expense-form input,.expense-form select{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.expense-form input:focus,.expense-form select:focus{outline:2px solid var(--primary-soft);border-color:var(--primary)}.expense-form .checkbox-label{color:var(--text);flex-direction:row;align-items:center;font-weight:500}.expense-form .checkbox-label input{width:auto;height:auto}.form-submit{width:100%}.expense-content{flex-direction:column;gap:20px;min-width:0;display:flex}.records-title{margin-bottom:16px}.records-count{color:var(--muted);font-size:12px}.table-scroll{overflow-x:auto}.expenses-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px}.expenses-table th{border-bottom:1px solid var(--border);color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.03em;padding:9px 10px;font-size:10px}.expenses-table td{border-bottom:1px solid var(--border);overflow-wrap:anywhere;padding:10px;font-size:12.5px}.expenses-table th:nth-child(n+3):not(:last-child),.expenses-table td:nth-child(n+3):not(:last-child){text-align:right}.fixed-expenses-table col:first-child{width:25%}.fixed-expenses-table col:nth-child(2){width:14%}.fixed-expenses-table col:nth-child(3){width:21%}.fixed-expenses-table col:nth-child(4){width:12%}.fixed-expenses-table col:nth-child(5),.fixed-expenses-table col:nth-child(6){width:10%}.fixed-expenses-table col:nth-child(7){width:8%}.category-row td{background:#fafaff;font-weight:700}.inactive-row{opacity:.5}.status-dot{vertical-align:1px;border-radius:50%;width:9px;height:9px;margin-right:9px;display:inline-block}.status-dot.on{background:#9cc2a8}.status-dot.off{background:#d9afaf}.row-actions{white-space:nowrap;text-align:right!important}.row-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:4px 2px;font-size:11px;font-weight:650}.row-actions .danger-link{color:#b85c5c}.name-field{position:relative}.name-field-browsable input{padding-right:34px}.name-field-arrow{cursor:pointer;background:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"6\" viewBox=\"0 0 10 6\" fill=\"none\"><path d=\"M1 1l4 4 4-4\" stroke=\"%236b7280\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>") right 14px center/9px 5px no-repeat;border:0;width:34px;position:absolute;top:0;bottom:0;right:0}span.name-field-arrow{pointer-events:none}.name-suggestions{z-index:6;border:1px solid var(--border);max-height:220px;box-shadow:var(--shadow);background:#fff;border-radius:9px;margin:4px 0 0;padding:5px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.name-suggestions li+li{margin-top:2px}.name-suggestions-group{color:var(--muted);text-transform:uppercase;letter-spacing:.02em;margin-top:6px;padding:4px 8px 2px;font-size:10px;font-weight:750}.name-suggestions-group:first-child{margin-top:0}.name-suggestions button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 8px;font-size:13px}.name-suggestions button:hover,.name-suggestions button.active{background:var(--primary-soft);color:var(--primary)}.name-group-row{cursor:pointer}.name-group-row:hover td{background:#fafaff}.name-group-toggle{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.name-group-count{color:var(--muted);font-weight:500}.name-group-chevron{transition:transform .15s;display:inline-block}.name-group-chevron.open{transform:rotate(90deg)}.name-group-detail-row td{background:#fafbff}.name-group-detail-row td:first-child{color:var(--muted);padding-left:24px}.records-toolbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.records-toolbar h2{margin:0;font-size:16px}.period-navigation{justify-content:center;align-items:center;gap:9px;margin:14px 0 18px;display:flex}.period-navigation>button:not(.current-period),.category-summary button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:24px;line-height:1}.period-navigation>button:hover,.category-summary button:hover{background:var(--primary-soft);color:var(--primary)}.period-navigation strong{text-align:center;min-width:170px}.period-navigation .current-period{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;padding:6px 9px;font-size:11px}.category-summary{grid-template-rows:auto auto;grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;display:grid;position:relative}.category-summary span{text-align:center;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.category-summary strong{grid-column:1/-1;margin-top:8px}.variable-expenses-table{min-width:660px}.variable-expenses-table col:first-child{width:50%}.variable-expenses-table col:nth-child(2){width:22%}.variable-expenses-table col:nth-child(3){width:18%}.variable-expenses-table col:nth-child(4){width:10%}.variable-expenses-table th:nth-child(3),.variable-expenses-table td:nth-child(3){text-align:right}.expense-note{color:var(--muted);margin-top:3px;font-size:10.5px;font-weight:400;display:block}.total-row td{border-top:2px solid var(--border);font-weight:750}.form-help{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.form-step-indicator{color:var(--primary);text-transform:uppercase;letter-spacing:.02em;margin:0;font-size:11px;font-weight:700}.income-table{min-width:900px}.income-table col:first-child{width:30%}.income-table col:nth-child(2),.income-table col:nth-child(3){width:16%}.income-table col:nth-child(4){width:14%}.income-table col:nth-child(5){width:16%}.income-table col:nth-child(6){width:8%}.income-table th:nth-child(n+3):not(:last-child),.income-table td:nth-child(n+3):not(:last-child){text-align:right}.income-table small{color:var(--muted);font-size:10px}.workplaces-panel{padding:22px}.workplace-form{border-top:1px solid var(--border);flex-direction:column;gap:18px;margin-top:22px;padding-top:20px;display:flex}.form-section h3{margin:0 0 11px;font-size:13px}.workplace-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.workplace-form label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.workplace-form label.wide{grid-column:1/-1}.workplace-form input,.workplace-form select{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.type-options{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.type-options button{border:2px solid var(--border);color:var(--text);cursor:pointer;background:#fff;border-radius:10px;padding:13px;font-weight:650}.type-options button.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.regime-fields{margin-top:12px}.workplace-form .primary-check{color:var(--text);flex-direction:row;align-items:center}.workplace-form .primary-check input{width:auto;height:auto}.workplace-list{flex-direction:column;gap:10px;display:flex}.workplace-card{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.workplace-card.primary{border-color:var(--primary)}.workplace-name{align-items:center;gap:9px;display:flex}.workplace-name h3{margin:0;font-size:15px}.workplace-name span{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:3px 8px;font-size:10px;font-weight:750}.workplace-card p{color:var(--muted);margin:4px 0 0;font-size:12px}.workplace-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.workplace-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px;font-size:11px;font-weight:650}.workplace-actions button:has(.row-action-icon){padding:6px 4px}.workplace-actions .danger-link{color:#b85c5c}.catalog-layout{grid-template-columns:minmax(270px,340px) minmax(0,1fr);align-items:start;gap:20px;max-width:1520px;margin:0 auto;display:grid}.catalog-sidebar{flex-direction:column;gap:16px;display:flex}.catalog-sidebar h2:not(.panel-title-row h2),.catalog-records>h2{margin:0 0 15px;font-size:16px}.category-manager{flex-direction:column;gap:8px;margin-top:14px;display:flex}.category-super-group{border:1px solid var(--border);border-radius:10px;overflow:hidden}.category-super-header{background:var(--primary-soft);align-items:center;gap:4px;min-height:40px;padding:0 8px;display:flex}.category-super-toggle{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:9px 4px;display:flex}.category-super-toggle strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.category-chevron{flex-shrink:0;font-size:12px;transition:transform .15s;display:inline-block}.category-chevron.open{transform:rotate(90deg)}.category-count{color:var(--muted);flex-shrink:0;font-size:11px}.category-super-body{flex-direction:column;display:flex}.category-sub-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:7px 10px 7px 30px;font-size:11.5px;display:flex}.category-sub-name{font-weight:700}.category-add-sub{border:0;border-top:1px solid var(--border);width:100%;color:var(--primary);font:inherit;text-align:left;cursor:pointer;background:0 0;padding:8px 10px 8px 30px;font-size:11.5px;font-weight:650}.row-action-icon{vertical-align:-2px;width:13px;height:13px}.row-actions .row-action-icon{vertical-align:-3px;width:14px;height:14px}.category-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.category-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px}.category-actions button:first-child{color:var(--primary)}.category-edit-form{align-items:center;gap:2px;display:flex}.category-edit-form input{border:1px solid var(--border);border-radius:6px;flex:1;min-width:0;height:26px;padding:2px 6px;font-size:11px}.category-edit-form button{color:var(--muted);cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:2px;font-weight:700}.category-edit-form button[type=submit]{color:#3c8a5c}.category-super-header .category-edit-form{flex:1;padding:6px 4px}.category-new-dialog{border:1px solid var(--border);background:#fafaff;border-radius:10px;flex-direction:column;gap:10px;margin-top:14px;padding:14px;display:flex}.category-new-dialog label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.category-new-dialog input,.category-new-dialog select{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.category-new-dialog .segment-control{align-self:stretch}.category-new-dialog .segment-control button{flex:1}.category-new-dialog-actions{gap:8px;display:flex}.category-new-dialog-actions button{flex:1}.segment-control button:disabled{opacity:.4;cursor:not-allowed}.quantity-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.cost-preview{background:var(--primary-soft);border-radius:9px;flex-direction:column;gap:4px;padding:12px;display:flex}.cost-preview span{color:var(--muted);font-size:11px}.cost-preview strong{color:var(--primary);font-size:18px}.catalog-records{min-width:0}.product-main-group{border:1px solid var(--border);border-radius:10px;margin-top:12px;overflow:hidden}.product-main-group>header{background:var(--primary-soft);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.product-sub-toggle{border:0;border-top:1px solid var(--border);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:#fafaff;align-items:center;gap:6px;padding:10px 14px;display:flex}.product-sub-toggle h3{margin:0;font-size:12.5px}.product-sub-group .empty-state{font-size:12.5px}.product-sub-toggle .category-chevron{flex-shrink:0}.product-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:800px}.product-table th,.product-table td{border-top:1px solid var(--border);text-align:left;text-overflow:ellipsis;padding:9px 10px;font-size:11.5px;overflow:hidden}.product-table th{color:var(--muted);text-transform:uppercase;font-size:9.5px}.product-table td:nth-child(n+5){white-space:nowrap}.product-table th:first-child,.product-table td:first-child{width:3%}.product-table th:nth-child(2),.product-table td:nth-child(2){width:22%}.product-table th:nth-child(3),.product-table td:nth-child(3),.product-table th:nth-child(4),.product-table td:nth-child(4){width:12%}.product-table th:nth-child(5),.product-table td:nth-child(5){width:10%}.product-table th:nth-child(6),.product-table td:nth-child(6){width:9%}.product-table th:nth-child(7),.product-table td:nth-child(7){width:11%}.product-table th:nth-child(8),.product-table td:nth-child(8){width:21%}.product-table .drag-cell{padding-right:0}.product-table tr.dragging{opacity:.48}.product-table .cell-with-actions{white-space:nowrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.product-table .cell-with-actions>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.product-table .cell-with-actions .row-actions{flex-shrink:0}.product-table td>strong{display:block}.product-table td>small{color:var(--muted);margin-top:3px;display:block}.catalog-error{max-width:420px;position:fixed;bottom:20px;right:20px}.select-field-button{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:8px;padding:8px 34px 8px 10px}.select-field-button:focus{outline:2px solid var(--primary-soft);border-color:var(--primary)}.consumption-step{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:700}.consumption-source{width:100%;display:flex}.consumption-source button{flex:1}.consumption-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:4px;display:flex}.expense-form .segment-control{align-self:stretch}.expense-form .segment-control button{flex:1}.services-layout{grid-template-columns:minmax(280px,350px) minmax(0,1fr);align-items:start;gap:20px;max-width:1520px;margin:0 auto;display:grid}.services-sidebar,.service-detail{flex-direction:column;gap:18px;display:flex}.services-list-title{margin:0 0 14px;font-size:16px}.service-list-group{margin-top:12px}.service-list-group>strong{color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.service-list-group>div{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:3px;margin-bottom:5px;display:grid}.service-list-group button{color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px;font-size:10.5px}.service-list-group button:first-child{text-align:left;color:var(--text);font-size:12px}.service-list-group button:first-child.active{background:var(--primary);color:#fff}.service-list-group .danger-link{color:#b85c5c}.expense-selection{border:1px solid var(--border);border-radius:9px;margin:0;padding:9px 10px}.expense-selection legend{color:var(--text);padding:0 4px;font-size:12px;font-weight:700}.expense-selection>label{border-bottom:1px solid var(--border);color:var(--text);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;padding:6px 0;font-weight:400;display:grid}.expense-selection>label:last-child{border-bottom:0}.expense-selection input{width:auto;height:auto}.expense-selection small{color:var(--muted);font-size:10px}.service-product-form{background:#fafaff;border-radius:10px;margin-top:16px;padding:16px}.product-quantity-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-buttons{gap:8px;display:flex}.service-products-table td:first-child strong,.service-products-table td:first-child small{display:block}.service-products-table td:first-child small{color:var(--muted);margin-top:3px;font-size:10px}.service-cost-table{min-width:600px}.service-cost-table th:not(:first-child),.service-cost-table td:not(:first-child){text-align:right}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.pricing-card{border:1px solid var(--border);border-radius:11px;flex-direction:column;justify-content:center;min-height:100px;padding:17px;display:flex;position:relative}.pricing-card span{color:var(--muted);margin-bottom:7px;font-size:11px}.pricing-card strong{font-size:20px}.pricing-card strong.positive{color:var(--positive)}.pricing-card strong.negative{color:#b85c5c}.pricing-card.editable>button{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);cursor:pointer;border:0;border-radius:7px;position:absolute;top:8px;right:8px}.summary-card strong.negative{color:#b85c5c}.day-balance.negative{color:#a5524e;background:#fbeaea}.dashboard-actions{position:relative}.quick-entry-options{z-index:5;border:1px solid var(--border);min-width:170px;box-shadow:var(--shadow);background:#fff;border-radius:9px;flex-direction:column;padding:6px;display:flex;position:absolute;top:42px;right:0}.quick-entry-options button{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 10px}.quick-entry-options button:hover{background:var(--primary-soft);color:var(--primary)}.financial-report .panel-title-row{margin-bottom:16px}.financial-report .panel-title-row h2{margin:0}.financial-report select{border:1px solid var(--border);background:#fff;border-radius:8px;width:90px;height:36px;padding:6px 9px}.financial-report table{border-collapse:collapse;width:100%;min-width:1200px}.financial-report th,.financial-report td{border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 10px;font-size:11px}.financial-report th{text-align:right;color:var(--muted);text-transform:uppercase;font-size:9.5px}.financial-report th:first-child,.financial-report td:first-child{text-align:left}.financial-report td:not(:first-child){text-align:right}.report-main-row td{background:#fafaff;font-weight:750}.report-sub-row td:first-child{color:var(--muted);padding-left:28px}.financial-report td.positive{color:var(--positive)}.financial-report td.negative{color:#b85c5c}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;max-width:1200px;margin:0 auto;display:grid}.settings-column{flex-direction:column;gap:18px;display:flex}.settings-layout h2{margin:0 0 7px;font-size:16px}.settings-wide{grid-column:1/-1}.settings-grid,.disabled-profile{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.settings-layout label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.settings-layout input,.settings-layout select{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.disabled-profile input{color:var(--muted);background:#f4f4f7}.current-vat{color:var(--muted);margin:12px 0;font-size:12px}.vat-table{border-collapse:collapse;width:100%}.vat-table th,.vat-table td{border-bottom:1px solid var(--border);text-align:right;padding:8px;font-size:11px}.vat-table th:first-child,.vat-table td:first-child{text-align:left}.settings-category-list{flex-direction:column;gap:2px;margin:14px 0;display:flex}.settings-category-row{border-radius:8px;align-items:center;gap:8px;padding:7px 8px 7px 30px;display:flex}.settings-category-row:hover{background:#fafaff}.settings-category-row.dragging{opacity:.48}.settings-category-row>.category-drag-handle{margin-left:-22px}.settings-category-name{flex:1;font-size:12.5px;font-weight:650}.settings-category-row.category-edit-form{padding-left:8px}.add-category{gap:7px;display:flex}.settings-save{width:100%;min-height:42px}.wallet-settings-list{gap:7px;margin:14px 0;display:grid}.wallet-settings-item{border:1px solid var(--border);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.wallet-settings-item.active{border-color:var(--primary);background:var(--primary-soft)}.wallet-settings-item>div:first-child{gap:2px;display:grid}.wallet-settings-item small{color:var(--muted);font-size:10px;display:block}.wallet-settings-actions{gap:10px;display:flex}.wallet-settings-actions .text-button{font-size:11px}.text-button.danger{color:#b42318}.wallet-editor{border-top:1px solid var(--border);gap:10px;padding-top:12px;display:grid}@media (width<=1000px){.fixed-expenses-layout,.catalog-layout,.services-layout{grid-template-columns:1fr}.expense-form-panel{max-width:none}}@media (width<=800px){.content{padding:20px 16px}.topbar{padding:0 16px}.wallet-selector{min-width:128px}.summary-grid,.pricing-grid{grid-template-columns:1fr}.page-toolbar{flex-direction:column;align-items:stretch}.page-toolbar .primary-button{align-self:flex-start}.records-toolbar{flex-direction:column;align-items:stretch}.period-navigation{flex-wrap:wrap}}@media (width<=560px){.sidebar{flex-basis:54px;width:54px}.nav-button{width:40px;height:40px}.topbar h1{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:15px;overflow:hidden}.wallet-selector{min-width:104px;max-width:126px}.plan-badge{display:none}.product-quantity-fields{grid-template-columns:1fr}}.auth-page{background:#f6f7fc;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #e4e6ef;border-radius:24px;width:min(430px,100%);padding:38px;box-shadow:0 18px 60px #191f3717}.auth-card h1{margin:10px 0;font-size:34px}.auth-title{text-align:center}.auth-form{gap:16px;margin:28px 0 14px;display:grid}.auth-form label{gap:7px;font-weight:700;display:grid}.auth-form input{height:46px;font:inherit;border:1px solid #dfe2eb;border-radius:10px;padding:0 13px;font-weight:400}.auth-form .auth-remember{cursor:pointer;align-items:center;gap:9px;font-size:13px;font-weight:600;display:flex}.auth-form .auth-remember input{width:16px;height:16px;accent-color:var(--primary);padding:0}.auth-message{color:#b42318;margin:0}.auth-message-success{color:#0f7a4a}.auth-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-actions .text-button{white-space:nowrap}.text-button{color:#4f46e5;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:700}.signout-button{margin-bottom:10px}.danger-link{color:#b85c5c}.muted{color:var(--muted)}.admin-toolbar-actions{flex-shrink:0;align-items:center;gap:16px;display:flex}.admin-inline-check{color:var(--muted);align-items:center;gap:7px;font-size:12.5px;font-weight:650;display:flex}.admin-inline-check input{width:auto;height:auto}.admin-form{border-top:1px solid var(--border);flex-direction:column;gap:14px;margin-top:20px;padding-top:18px;display:flex}.admin-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.admin-form-grid label,.admin-action-row label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.admin-form-grid input,.admin-form-grid select,.admin-action-row input{border:1px solid var(--border);width:100%;height:38px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.admin-table-scroll{overflow-x:auto}.admin-users-table,.admin-audit-table{border-collapse:collapse;width:100%;min-width:760px}.admin-users-table th,.admin-audit-table th{border-bottom:1px solid var(--border);color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.03em;padding:9px 10px;font-size:10px}.admin-users-table td,.admin-audit-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px;font-size:12.5px}.admin-users-table tr.selected{background:var(--primary-soft)}.status-pill{border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:750;display:inline-flex}.status-pill.status-active{color:#0f7a4a;background:#eafaf0}.status-pill.status-suspended{color:#9a6700;background:#fff6e5}.status-pill.status-deleted{color:#b91c1c;background:#fef2f2}.admin-detail-panel{flex-direction:column;gap:22px;display:flex}.admin-detail-panel h2{margin:0;font-size:17px}.admin-detail-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.admin-detail-columns h3{margin:0 0 11px;font-size:13px}.admin-action-row{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:12px;display:flex}.admin-pagination{color:var(--muted);justify-content:center;align-items:center;gap:14px;margin-top:14px;font-size:12.5px;display:flex}.audit-details{overflow-wrap:anywhere;max-width:420px;color:var(--muted);font-size:11px;display:block}@media (width<=1000px){.admin-detail-columns,.admin-form-grid{grid-template-columns:1fr}}.category-drag-handle{width:16px;color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;flex:0 0 16px;justify-content:center;align-items:center;display:inline-flex}.category-drag-handle:active{cursor:grabbing}.drag-handle-icon{width:13px;height:13px}.category-super-group.dragging,.category-sub-row.dragging{opacity:.48}.category-sub-name{flex:1;min-width:0}.category-sub-row{gap:6px}.category-sub-row>.category-drag-handle{margin-left:-22px}.expense-form select,.workplace-form select,.category-new-dialog select,.settings-layout select,.financial-report select,.admin-form-grid select,.month-filter select{appearance:none;background-image:var(--select-arrow);background-position:right 14px center;background-repeat:no-repeat;background-size:9px 5px;padding-right:34px}.dashboard-calendar-loading{grid-column:1/-1;place-items:center;min-height:180px;display:grid}.calculator-field{position:relative}.calculator-field>input{padding-right:42px}.calculator-trigger{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;font-size:17px;position:absolute;top:50%;right:5px;translate:0 -50%}.calculator-trigger:hover,.calculator-trigger[aria-expanded=true]{background:var(--primary-soft);color:var(--primary)}.calculator-popover{z-index:70;border:1px solid var(--border);width:220px;box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:10px;position:absolute;top:calc(100% + 6px);right:0}.calculator-popover output{background:var(--background);min-height:36px;color:var(--text);text-align:right;border-radius:7px;margin-bottom:8px;padding:8px;font-weight:700;display:block;overflow:hidden}.calculator-buttons{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.calculator-buttons button{border:1px solid var(--border);min-height:34px;color:var(--text);cursor:pointer;background:#fff;border-radius:7px}.calculator-buttons button:hover{border-color:var(--primary);background:var(--primary-soft)}.calculator-buttons .equals{background:var(--primary);color:#fff;grid-column:span 2}.calculator-error{color:#b85c5c;margin-top:6px;display:block}.day-entries-loading{min-height:120px;color:var(--muted);place-items:center;font-weight:650;display:grid}.select-field-validation{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}
