/* Finance layout stays inside the existing workspace. All rules are scoped. */
.expenses-page{width:100%;max-width:1120px;min-width:0;margin:0 auto;padding:20px 0 32px;box-sizing:border-box;color:var(--ink)}
.expenses-page *, .expenses-page *::before,.expenses-page *::after{box-sizing:border-box}
.expenses-page button,.expenses-page summary{min-height:44px;font:inherit;font-size:14px;line-height:1.4;padding:10px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;white-space:normal}
.expenses-page button:disabled{opacity:.5;cursor:default}.expenses-page :is(button,summary,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.expenses-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:14px}
.expenses-period{display:grid;grid-template-columns:minmax(120px,180px) minmax(86px,110px);gap:10px;align-items:end;min-width:0}.expenses-period label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:13px;min-width:0}
.expenses-page :is(input,select,textarea){width:100%;min-width:0;max-width:100%;min-height:46px;padding:11px 12px;font:inherit;font-size:16px;line-height:1.4;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:9px}
.expenses-add{position:relative;flex-shrink:0}.expenses-add summary{list-style:none;color:var(--accent)}.expenses-add summary::-webkit-details-marker{display:none}.expenses-add>div{position:absolute;right:0;top:calc(100% + 8px);width:200px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #0002;z-index:5}.expenses-add>div button{width:100%;justify-content:flex-start;border:0}
.expenses-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;margin:0 0 16px;background:var(--surface);border:1px solid var(--line);border-radius:10px;max-width:560px}.expenses-tabs button{width:100%;min-width:0;border-color:transparent;background:transparent;padding:8px 4px;font-size:13px}.expenses-tabs button[aria-current=page]{background:var(--accent-soft);color:var(--accent);border-color:var(--line)}
.expenses-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:24px}.expenses-currency{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.expenses-currency-title{font-size:13px;color:var(--muted);padding:18px 20px 0}
.expenses-profit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.expenses-profit>div{min-width:0}.expenses-profit small{display:block;font-size:13px;color:var(--muted);line-height:1.5}.expenses-profit strong{display:block;font-size:24px;font-weight:650;line-height:1.35;font-variant-numeric:tabular-nums;margin-top:8px;overflow-wrap:anywhere}.expenses-profit p{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 0}
.expenses-breakdown{margin:0;padding:0 20px 10px}.expenses-breakdown>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:13px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.5}.expenses-breakdown dt{color:var(--muted)}.expenses-breakdown dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.expenses-note,.expenses-empty{font-size:14px;line-height:1.65;color:var(--muted);margin:18px 0}.expenses-error{font-size:14px;line-height:1.5;color:var(--warn);margin:12px 0}.expenses-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.65fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line);align-items:start}.expenses-row strong{font-size:16px;line-height:1.5;display:block;overflow-wrap:anywhere}.expenses-row small{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin-top:4px}.expenses-row p{font-size:14px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}.expenses-row-value{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}.expenses-row-value b{font-size:16px;line-height:1.5;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.expenses-row-value button{font-size:13px;padding:8px 10px;min-height:44px}.expenses-void{opacity:.6}
.expenses-search{display:flex;gap:10px;align-items:center;color:var(--muted);margin-bottom:10px}.expenses-search input{flex:1}.expenses-pages{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:20px;font-size:13px}
.expenses-form{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:20px;margin:0 0 24px;scroll-margin-top:90px}.expenses-form h2{font-size:20px;line-height:1.4;margin:0 0 18px}.expenses-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.expenses-field{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--muted);min-width:0}.expenses-field:has(textarea){grid-column:1/-1}.expenses-field textarea{resize:vertical;min-height:86px}.expenses-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.expenses-page .expenses-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
@media(max-width:600px){.expenses-page{padding-top:10px}.expenses-toolbar{flex-wrap:wrap;gap:12px}.expenses-period{flex:1;grid-template-columns:minmax(0,1fr) 86px}.expenses-tabs{gap:2px}.expenses-tabs button{font-size:12px;padding:8px 2px}.expenses-profit{gap:16px;padding:18px 16px}.expenses-profit strong{font-size:21px}.expenses-currency-title{padding:16px 16px 0}.expenses-breakdown{padding:0 16px 6px}.expenses-breakdown>div{font-size:13px;gap:12px}.expenses-form{padding:16px}.expenses-form-fields{grid-template-columns:minmax(0,1fr)}.expenses-row{gap:12px;grid-template-columns:minmax(0,1fr) minmax(112px,.65fr)}.expenses-row-value b{font-size:14px}.expenses-row-value button{padding:9px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.expenses-form{scroll-behavior:auto}}
@media(max-width:600px){.expenses-add summary{font-size:13px;padding:8px 10px}.expenses-toolbar{align-items:end}}
@media(max-width:600px){.expenses-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.expenses-period{width:100%;grid-template-columns:minmax(0,1fr) 96px;gap:8px}.expenses-add{justify-self:end}} .expenses-page .vippi-select-trigger{font-size:16px;justify-content:space-between;gap:8px}.expenses-page button:disabled{opacity:.7}

.expenses-closing{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:8px 12px;margin:0 0 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:inherit;text-align:left}.expenses-closing span{flex:1;min-width:0;line-height:1.5}.expenses-closing strong{font-weight:600}

.expenses-form-actions button,.expenses-tabs button,.expenses-pages button{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:8px;min-height:44px;line-height:1.35}

@media(max-width:360px){.expenses-add summary{width:44px;height:44px;padding:0}.expenses-add summary>span{display:none}}
