:root{--text:#3f4946;--text-h:#141d1a;--bg:#f2fcf6;--bg-subtle:#e6f0eb;--border-color:#e1e5e2;--card-bg:#fff;--card-bg-raised:#fff;--accent:#0f6b5c;--accent-hover:#005145;--accent-contrast:#fff;--accent-soft:#0f6a5c1f;--secondary:#7e5700;--secondary-container:#ffe1a3;--tertiary:#104a7a;--tertiary-container:#d7e6f7;--badge-neutral-bg:#e6f0eb;--badge-neutral-fg:#3f4946;--badge-ok-bg:#dcf3e8;--badge-ok-fg:#0b6b4f;--badge-warn-bg:#fdecc8;--badge-warn-fg:#7e5700;--badge-error-bg:#f9ded4;--badge-error-fg:#a8461f;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--font-display:"Fraunces", Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-pill:9999px;--radius-card:1.25rem;--radius-control:.875rem;--content-max-width:1080px;--bottom-nav-height:64px;--shadow-sm:none;--shadow-md:0 2px 8px #141d1a0f;--shadow-lg:0 16px 32px #141d1a1a, 0 4px 12px #141d1a0d;--shadow-focus:0 0 0 3px #0f6a5c33;font:16px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#a9b4b0;--text-h:#eef5f1;--bg:#101714;--bg-subtle:#16201c;--border-color:#26332d;--card-bg:#1a2420;--card-bg-raised:#1f2b26;--accent:#86d5c3;--accent-hover:#a2f2de;--accent-contrast:#00201a;--accent-soft:#86d5c329;--secondary:#f3be65;--secondary-container:#4a3400;--tertiary:#9ecaff;--tertiary-container:#16324f;--badge-neutral-bg:#232f29;--badge-neutral-fg:#c3cec8;--badge-ok-bg:#123829;--badge-ok-fg:#7fe0bb;--badge-warn-bg:#4a3400;--badge-warn-fg:#f3be65;--badge-error-bg:#4a2013;--badge-error-fg:#ef9575;--shadow-sm:none;--shadow-md:0 2px 8px #0000004d;--shadow-lg:0 16px 32px #00000073, 0 4px 12px #0000004d;--shadow-focus:0 0 0 3px #86d5c340}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-h);margin:0 0 var(--space-2);font-size:32px;font-weight:600;line-height:40px}@media (width<=639px){h1{font-size:28px;line-height:36px}}h2{font-family:var(--sans);letter-spacing:normal;color:var(--text-h);margin:0;font-size:18px;font-weight:600;line-height:24px}a{color:var(--accent)}button,input,select{font:inherit;color:inherit}input,select{border:1px solid var(--border-color);border-radius:var(--radius-control);background:var(--bg);width:100%;padding:.6rem .75rem;transition:border-color .15s,box-shadow .15s}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent);background:0 0;border:none;padding:0}input:focus-visible,select:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.btn{border-radius:var(--radius-control);cursor:pointer;background:var(--accent);color:var(--accent-contrast);box-shadow:none;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.15rem;font-weight:600;transition:background .15s,box-shadow .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--accent-hover)}.btn:active{transform:scale(.98)}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--accent);border:1px solid var(--accent);box-shadow:none;background:0 0}.btn-secondary:hover{background:var(--accent-soft);color:var(--accent);box-shadow:none}.badge{border-radius:var(--radius-pill);white-space:nowrap;align-items:center;padding:.25rem .6rem;font-size:.75rem;display:inline-flex}.badge-neutral{background:var(--badge-neutral-bg);color:var(--badge-neutral-fg)}.badge-ok{background:var(--badge-ok-bg);color:var(--badge-ok-fg)}.badge-warn{background:var(--badge-warn-bg);color:var(--badge-warn-fg)}.badge-error{background:var(--badge-error-bg);color:var(--badge-error-fg)}.figure{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.01em}.page{max-width:var(--content-max-width);width:100%;margin-inline:auto}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);transition:box-shadow .15s,border-color .15s}a.card:hover,.card.card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--accent)}.card.card-interactive:active{transform:scale(.98)}.empty-state{align-items:center;gap:var(--space-3);text-align:center;color:var(--text);background:var(--card-bg);border:1px dashed var(--border-color);border-radius:var(--radius-card);padding:var(--space-6) var(--space-4);flex-direction:column;display:flex}.empty-state svg{color:var(--text);opacity:.5}@media (width<=767px){.toolbar-create-btn{display:none}}.ui-form{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.ui-form{grid-template-columns:repeat(2,1fr);align-items:end}}.ui-field{flex-direction:column;gap:.35rem;display:flex}.ui-field label{font-size:.85rem;font-weight:600}.ui-field-full{grid-column:1/-1}.ui-form-error{background:var(--badge-error-bg);color:var(--badge-error-fg);border-radius:var(--radius-control);padding:.6rem .85rem;font-size:.85rem}.ui-form-card{margin-bottom:var(--space-5)}.auth-page{background:var(--bg-subtle);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.auth-card{background:var(--card-bg-raised);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-lg);padding:2rem}.auth-card h1{color:var(--accent);margin:0 0 1.5rem;font-size:1.4rem}.auth-error{background:var(--badge-error-bg);color:var(--badge-error-fg);border-radius:var(--radius-sm);margin-bottom:1rem;padding:.6rem .75rem;font-size:.85rem}.auth-card .btn{width:100%;margin-top:.5rem}.auth-switch{text-align:center;margin-top:1.5rem;font-size:.85rem}.more-menu-backdrop{z-index:40;background:#08060d59;animation:.15s more-menu-fade-in;position:fixed;inset:0}.more-menu-panel{z-index:41;background:var(--card-bg-raised);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2) var(--space-3) calc(var(--space-4) + env(safe-area-inset-bottom));flex-direction:column;gap:.15rem;max-height:70vh;animation:.18s more-menu-slide-up;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.more-menu-handle{border-radius:var(--radius-pill);background:var(--border-color);flex-shrink:0;width:36px;height:4px;margin:.35rem auto .75rem}.more-menu-item{align-items:center;gap:var(--space-3);padding:.85rem var(--space-3);border-radius:var(--radius-sm);color:var(--text-h);font-weight:500;text-decoration:none;display:flex}.more-menu-item svg{color:var(--text);flex-shrink:0}.more-menu-item:hover,.more-menu-item.active{background:var(--accent-soft);color:var(--accent)}.more-menu-item.active svg{color:var(--accent)}@keyframes more-menu-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes more-menu-fade-in{0%{opacity:0}to{opacity:1}}@media (width>=768px){.more-menu-backdrop{background:0 0}.more-menu-panel{top:4.25rem;right:var(--space-4);border-radius:var(--radius-md);width:230px;padding:var(--space-2);max-height:none;animation:.12s more-menu-dropdown-in;position:fixed;bottom:auto;left:auto}.more-menu-handle{display:none}.more-menu-item{padding:.6rem var(--space-3)}}@keyframes more-menu-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.fab-root{display:none}@media (width<=767px){.fab-root{right:var(--space-4);bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + var(--space-3));z-index:45;display:block;position:fixed}}.fab-backdrop{z-index:44;background:#08060d40;position:fixed;inset:0}.fab-actions{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-3);z-index:46;flex-direction:column;display:flex;position:relative}.fab-action{align-items:center;gap:var(--space-3);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;padding:0;transition:opacity .15s,transform .15s;display:flex;transform:translateY(8px)scale(.9)}.fab-actions.open .fab-action{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.fab-action-label{background:var(--card-bg-raised);color:var(--text-h);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);white-space:nowrap;padding:.45rem .85rem;font-size:.85rem;font-weight:600}.fab-action-icon{background:var(--card-bg-raised);width:44px;height:44px;color:var(--accent);box-shadow:var(--shadow-md);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.fab-trigger{cursor:pointer;background:var(--accent);width:56px;height:56px;color:var(--accent-contrast);box-shadow:var(--shadow-lg);z-index:46;border:none;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;transition:background .15s,transform .1s;display:flex;position:relative}.fab-trigger:hover{background:var(--accent-hover)}.fab-trigger:active{transform:scale(.95)}.layout{flex-direction:column;min-height:100vh;display:flex}@media (width>=1024px){.layout{flex-direction:row}}.layout-sidebar{display:none}@media (width>=1024px){.layout-sidebar{background:var(--card-bg);border-right:1px solid var(--border-color);width:260px;height:100vh;padding:var(--space-5) var(--space-4);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}}.layout-sidebar-brand{font-family:var(--font-display);color:var(--accent);padding:0 var(--space-2);margin-bottom:var(--space-5);font-size:1.4rem;font-weight:600;text-decoration:none}.layout-sidebar-nav{flex-direction:column;flex:1;gap:.15rem;display:flex;overflow-y:auto}.layout-sidebar-link{padding:.6rem var(--space-3);border-radius:var(--radius-control);color:var(--text);align-items:center;gap:.75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.layout-sidebar-link:hover{background:var(--bg-subtle);color:var(--text-h)}.layout-sidebar-link.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.layout-sidebar-footer{padding-top:var(--space-4);border-top:1px solid var(--border-color);flex-direction:column;gap:.6rem;display:flex}.layout-sidebar-rate{color:var(--text);background:var(--bg);border:1px solid var(--border-color);border-radius:var(--radius-pill);text-align:center;padding:.3rem .7rem;font-size:.75rem}.layout-sidebar-user{padding:0 var(--space-2);align-items:center;gap:.6rem;display:flex}.layout-sidebar-user-name{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.layout-sidebar-logout{border:1px solid var(--border-color);color:var(--text-h);border-radius:var(--radius-control);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.85rem;font-weight:600;display:flex}.layout-sidebar-logout:hover{border-color:var(--badge-error-fg);color:var(--badge-error-fg)}.layout-header{z-index:30;background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);position:sticky;top:0}@media (width>=1024px){.layout-header{display:none}}.layout-header-inner{align-items:center;gap:var(--space-4);padding:max(.85rem, env(safe-area-inset-top)) var(--space-4) .85rem;display:flex}@media (width>=768px){.layout-header-inner{padding-left:var(--space-6);padding-right:var(--space-6);padding-top:.85rem}}.layout-brand{color:var(--accent);flex-shrink:0;font-size:1.1rem;font-weight:700;text-decoration:none}.layout-nav-desktop{display:none}@media (width>=768px){.layout-nav-desktop{flex:1;justify-content:center;align-items:center;gap:.15rem;display:flex}}.layout-nav-link{border-radius:var(--radius-sm);color:var(--text);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.4rem;padding:.5rem .6rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.layout-nav-label{display:none}@media (width>=1024px){.layout-nav-link{padding:.45rem .85rem}.layout-nav-label{display:inline}}.layout-nav-link:hover{background:var(--bg-subtle);color:var(--text-h)}.layout-nav-link.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.layout-more-trigger{font:inherit}.layout-chevron{transition:transform .15s}.layout-chevron.open{transform:rotate(180deg)}.layout-user{flex-shrink:0;align-items:center;gap:.6rem;margin-left:auto;display:flex;position:relative}.layout-usd-rate{color:var(--text);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-pill);white-space:nowrap;padding:.3rem .7rem;font-size:.75rem}@media (width<=1023px){.layout-usd-rate{display:none}}.layout-user-trigger{cursor:pointer;border-radius:var(--radius-pill);color:var(--text-h);background:0 0;border:none;align-items:center;gap:.5rem;padding:.2rem .35rem .2rem .2rem;transition:background .15s;display:flex}.layout-user-trigger:hover{background:var(--bg-subtle)}.layout-user-avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.layout-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:10rem;font-size:.85rem;font-weight:600;overflow:hidden}@media (width<=1023px){.layout-user-name{display:none}}.layout-user-menu{z-index:41;background:var(--card-bg-raised);border:1px solid var(--border-color);border-radius:var(--radius-md);width:220px;box-shadow:var(--shadow-lg);padding:var(--space-3);animation:.12s layout-dropdown-in;position:absolute;top:calc(100% + .5rem);right:0}@keyframes layout-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.layout-user-menu-name{color:var(--text-h);margin-bottom:.25rem;font-weight:600}.layout-user-menu-rate{color:var(--text);margin-bottom:var(--space-3);font-size:.8rem}.layout-user-menu-logout{border:1px solid var(--border-color);width:100%;color:var(--text-h);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.55rem .75rem;font-size:.85rem;font-weight:600;display:flex}.layout-user-menu-logout:hover{border-color:var(--badge-error-fg);color:var(--badge-error-fg)}.layout-content{padding:var(--space-4);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom));flex:1}@media (width<=767px){.layout-content{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + var(--space-4))}}@media (width>=768px){.layout-content{padding:var(--space-6)}}@media (width>=1024px){.layout-content{padding:var(--space-6) var(--space-7)}}.layout-bottom-nav{z-index:30;height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb, var(--card-bg-raised) 90%, transparent);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border-color);box-shadow:var(--shadow-lg);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.layout-bottom-nav{display:none}}.layout-bottom-nav-item{cursor:pointer;color:var(--text);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;padding:.35rem 0;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.layout-bottom-nav-item.active{color:var(--accent)}.ui-card-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=640px){.ui-card-grid{grid-template-columns:repeat(auto-fill, minmax(var(--ui-card-grid-min,260px), 1fr))}}.ui-empty-state{color:var(--text);text-align:center;background:var(--card-bg);border:1px dashed var(--border-color);border-radius:var(--radius-card);padding:var(--space-6) var(--space-4);margin:0}.ui-icon-chip{border-radius:var(--radius-pill);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.ui-icon-chip-accent{background:var(--accent-soft);color:var(--accent)}.ui-icon-chip-neutral{background:var(--badge-neutral-bg);color:var(--text)}.ui-icon-chip-ok{background:var(--badge-ok-bg);color:var(--badge-ok-fg)}.ui-icon-chip-warn{background:var(--badge-warn-bg);color:var(--badge-warn-fg)}.ui-icon-chip-error{background:var(--badge-error-bg);color:var(--badge-error-fg)}.ui-list-row{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:inherit;align-items:center;gap:.85rem;padding:.75rem 1rem;font-size:.9rem;text-decoration:none;display:flex}.ui-list-row.muted{opacity:.6}.ui-list-row-leading{flex-shrink:0;align-items:center;font-size:1.2rem;display:flex}.ui-list-row-main{flex:1;min-width:0}.ui-list-row-title{color:var(--text-h);text-overflow:ellipsis;font-weight:600;overflow:hidden}.ui-list-row-subtitle{color:var(--text);margin-top:.1rem;font-size:.78rem}.ui-list-row-trailing{text-align:right;flex-shrink:0}.ui-list-row-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}@media (width<=480px){.ui-list-row{flex-wrap:wrap}}.ui-money-sm{font-size:.85rem}.ui-money-lg{font-size:1.5rem;font-weight:600}.ui-money-negative{color:var(--badge-error-fg)}.ui-money-positive{color:var(--badge-ok-fg)}.ui-section-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:.75rem;display:flex}.ui-section-header-page{margin-bottom:1.25rem}.ui-section-header h1,.ui-section-header h2{margin:0}.ui-section-header-subtitle{color:var(--text);margin:.25rem 0 0;font-size:.9rem}.ui-section-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.ui-stat-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:1.1rem 1.25rem}.ui-stat-card-label{text-transform:uppercase;letter-spacing:.02em;color:var(--text);margin-bottom:.35rem;font-size:.75rem;font-weight:500}.ui-stat-card-value{letter-spacing:-.02em;font-size:1.5rem;font-weight:600}.ui-stat-card-sub{color:var(--text);margin-top:.25rem;font-size:.75rem}.home-section{margin:1.75rem 0}.home-quick-actions{grid-template-columns:repeat(2,1fr);gap:.6rem;margin:1rem 0 1.75rem;display:grid}@media (width>=640px){.home-quick-actions{grid-template-columns:repeat(3,1fr)}}@media (width>=1024px){.home-quick-actions{grid-template-columns:repeat(6,1fr)}}.home-quick-action{text-align:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-control);color:var(--text-h);flex-direction:column;align-items:center;gap:.5rem;padding:.9rem .5rem;font-size:.78rem;font-weight:500;text-decoration:none;transition:box-shadow .15s,border-color .15s,transform .1s;display:flex}.home-quick-action:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.home-quick-action:active{transform:scale(.98)}.home-month-nav{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.home-month-nav-btn{border-radius:var(--radius-control);border:1px solid var(--border-color);background:var(--card-bg);width:2rem;height:2rem;color:var(--text-h);cursor:pointer;justify-content:center;align-items:center;transition:border-color .15s,transform .1s;display:inline-flex}.home-month-nav-btn:active{transform:scale(.94)}.home-month-nav-btn:hover{border-color:var(--accent)}.home-month-label{min-width:9rem;font-weight:600}.home-month-reset{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-left:.25rem;padding:0;font-size:.8rem}.home-more-note{color:var(--text);margin:.5rem 0 0;font-size:.78rem}.home-balance-group{margin-bottom:1.25rem}.home-balance-group:last-child{margin-bottom:0}.home-balance-group-label{text-transform:uppercase;letter-spacing:.02em;color:var(--text);margin-bottom:.5rem;font-size:.75rem;font-weight:500}.home-list,.home-requests-list{flex-direction:column;gap:.5rem;display:flex}.ui-card{flex-direction:column;gap:.6rem;padding:1.25rem;display:flex}.ui-card-accent{border-top:3px solid var(--accent)}.ui-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.ui-card-header h3{color:var(--text-h);margin:0;font-size:1.05rem}.ui-card-header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.account-type,.account-credit-info{color:var(--text);font-size:.8rem}.account-meta{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.account-actions{justify-content:space-between;align-items:center;margin-top:.5rem;font-size:.85rem;display:flex}.link-danger{color:var(--badge-error-fg);cursor:pointer;background:0 0;border:none;padding:.25rem 0;font-size:.8rem}.user-autocomplete{flex:1;position:relative}.user-autocomplete-list{z-index:10;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;max-height:220px;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #00000026}.user-autocomplete-list li{cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .6rem;display:flex}.user-autocomplete-list li:hover{background:var(--bg)}.user-autocomplete-info{flex-direction:column;min-width:0;display:flex}.user-autocomplete-name{font-size:.9rem;font-weight:600}.user-autocomplete-email{color:var(--text);font-size:.75rem}.ui-progress-track{border-radius:var(--radius-pill);background:var(--badge-neutral-bg);overflow:hidden}.ui-progress-fill{border-radius:var(--radius-pill);height:100%;transition:width .2s}.ui-progress-fill-accent{background:var(--accent)}.ui-progress-fill-ok{background:var(--badge-ok-fg)}.ui-progress-fill-warn{background:var(--badge-warn-fg)}.ui-progress-fill-error{background:var(--badge-error-fg)}.ui-segmented{gap:.5rem;display:flex}.ui-segmented-btn{border-radius:var(--radius-control);border:1px solid var(--border-color);background:var(--bg);cursor:pointer;font-weight:600;font:inherit;flex:1;padding:.5rem;transition:background .15s,border-color .15s,color .15s}.ui-segmented-btn.active-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.ui-segmented-btn.active-ok{background:var(--badge-ok-bg);color:var(--badge-ok-fg);border-color:var(--badge-ok-fg)}.ui-segmented-btn.active-error{background:var(--badge-error-bg);color:var(--badge-error-fg);border-color:var(--badge-error-fg)}.tx-back{margin-bottom:.75rem;font-size:.85rem;display:inline-block}.tx-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.account-credit-info{color:var(--text);margin-top:.25rem;font-size:.8rem}.purchases-section{margin:1.5rem 0}.statement-preview{flex-direction:column;gap:.6rem;margin-bottom:1.5rem;display:flex}.statement-row-meta{color:var(--text);font-size:.78rem}.statement-row-catchup{align-items:center;gap:.5rem;display:flex}.link{color:var(--accent,inherit);cursor:pointer;background:0 0;border:none;padding:.25rem 0;font-size:.8rem;text-decoration:underline}.tx-header-actions{gap:.5rem;display:flex}.transfer-preview{background:var(--bg);border:1px solid var(--border-color);border-radius:var(--radius-control);padding:.6rem .75rem;font-size:.85rem}.tx-row-meta{color:var(--text);font-size:.75rem}.tx-list{flex-direction:column;gap:.5rem;display:flex}.tx-row-note{color:var(--text);font-size:.8rem}.tx-template-toggle{align-items:center;gap:.75rem;font-size:.85rem;display:flex}.tx-template-toggle label{align-items:center;gap:.4rem;font-weight:400;display:flex}.tx-row-creator{color:var(--text);opacity:.7;margin-top:.15rem;font-size:.75rem}.tx-row-date{color:var(--text);white-space:nowrap;font-size:.75rem}.tx-row-locked{opacity:.6;font-size:.8rem}.members-section{margin-bottom:1.25rem}.members-section-header{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.members-list{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.invite-form{gap:.5rem;margin-top:1rem;display:flex}.invite-form input{flex:1}.pending-invites{flex-direction:column;gap:.4rem;margin-top:1rem;display:flex}.pending-invite-row{color:var(--text);justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.loan-card-header{justify-content:space-between;align-items:flex-start;display:flex}.loan-card-header h3{margin:0;font-size:1.05rem}.loan-meta{color:var(--text);font-size:.75rem}.loan-amounts{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.loan-pay{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.loan-pay select{flex:auto;min-width:8rem}.loan-pay input{flex:auto;min-width:10rem}.loan-no-account{color:var(--text);margin:.25rem 0 0;font-size:.8rem}.categories-columns{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=768px){.categories-columns{grid-template-columns:1fr 1fr}}.categories-column h2{color:var(--text);margin:0 0 .75rem}.category-list{flex-direction:column;gap:.5rem;display:flex}.category-row-edit{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:.65rem;padding:.75rem 1rem;display:flex}.category-row-actions{gap:.5rem;font-size:.8rem;display:flex}.category-row-actions button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:.15rem .3rem}.category-row-actions .link-danger{color:var(--badge-error-fg)}.budget-card-header{justify-content:space-between;align-items:flex-start;display:flex}.budget-period{color:var(--text);font-size:.75rem}.budget-amounts{justify-content:space-between;font-size:.85rem;display:flex}.budget-percent{font-size:.8rem;font-weight:600}.goal-card-header{justify-content:space-between;align-items:flex-start;display:flex}.goal-meta{color:var(--text);font-size:.75rem}.goal-amounts{justify-content:space-between;font-size:.85rem;display:flex}.goal-contribute{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.goal-contribute select,.goal-contribute input{flex:auto;min-width:8rem}.goal-no-account{color:var(--text);margin:.25rem 0 0;font-size:.8rem}.debts-list{flex-direction:column;gap:.75rem;display:flex}.debt-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.debt-party{font-weight:600}.debt-description{color:var(--text);font-size:.85rem}.debt-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.debt-waiting{color:var(--text);font-size:.8rem;font-style:italic}.debt-settled{color:var(--badge-ok-fg);font-size:.8rem}.friends-section{margin:1.75rem 0}.friends-list,.invitations-list{flex-direction:column;gap:.75rem;display:flex}.forecast-section{margin-bottom:2rem}.summary-card-currency{color:var(--text);margin-bottom:.5rem;font-size:.8rem}.summary-row{justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.9rem;display:flex}.summary-row.net{border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.5rem;font-weight:700}.recurring-list,.suggestions-list{flex-direction:column;gap:.5rem;display:flex}.apply-form{background:var(--bg);border:1px solid var(--border-color);border-radius:0 0 var(--radius-md) var(--radius-md);border-top:none;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-top:-.5rem;padding:.75rem 1rem 1rem;display:grid}.recurring-row-meta{color:var(--text);font-size:.75rem}.recurring-row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}
