.app{flex-direction:column;min-height:100dvh;display:flex}.app-header{padding:var(--space-4) var(--space-4) var(--space-2);background:var(--color-bg);z-index:10;position:sticky;top:0}.app-header h1{font-size:var(--text-large-title);font-weight:var(--weight-bold);letter-spacing:-.02em;margin:0}.app-header p{margin:var(--space-1) 0 0;font-size:var(--text-footnote);color:var(--color-text-secondary)}.app-main{padding:0 var(--space-4) calc(var(--tabbar-height) + env(safe-area-inset-bottom) + var(--space-4));flex:1;width:100%;max-width:640px;margin:0 auto}.tabbar{z-index:20;justify-content:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) env(safe-area-inset-bottom);background:var(--color-tabbar-bg);-webkit-backdrop-filter:saturate(180%)blur(20px);border-top:.5px solid var(--color-separator);display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__tab{appearance:none;color:var(--color-text-secondary);font-family:inherit;font-size:var(--text-caption2);font-weight:var(--weight-medium);min-width:0;max-width:88px;min-height:var(--touch-target);padding:var(--space-1) var(--space-1);border-radius:var(--radius-small);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;display:flex}.tabbar__tab__icon{width:1.5rem;height:1.5rem}.tabbar__tab[aria-current=page]{color:var(--color-accent)}@media (hover:hover){.tabbar__tab:hover{color:var(--color-text)}}@media (width>=768px){.app-header,.app-main{max-width:640px}}.card{background:var(--color-surface);border-radius:var(--radius-large);padding:var(--space-5);box-shadow:var(--shadow-card)}.card+.card{margin-top:var(--space-4)}.card h2{margin:0 0 var(--space-2);font-size:var(--text-title3);font-weight:var(--weight-semibold)}.card :where(p){margin:0 0 var(--space-2);color:var(--color-text-secondary);font-size:var(--text-subheadline)}.card :where(p:last-child){margin-bottom:0}.placeholder-note{font-size:var(--text-caption);color:var(--color-text-secondary);text-align:center;padding:var(--space-6) 0}.list{background:var(--color-surface);border-radius:var(--radius-large);box-shadow:var(--shadow-card);margin:0;padding:0;list-style:none;overflow:hidden}.list__row{align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-2) var(--space-4);display:flex;position:relative}.list__row+.list__row{border-top:.5px solid var(--color-separator)}.list__row__main{flex:1;min-width:0}.list__row__title{font-size:var(--text-body);font-weight:var(--weight-regular);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.list__row__detail{font-size:var(--text-footnote);color:var(--color-text-secondary);margin:0}.list__row__aside{text-align:right;flex-shrink:0}.list__row__amount{font-size:var(--text-subheadline);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;margin:0}.row-link{appearance:none;font:inherit;font-size:var(--text-body);color:var(--color-text);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:100%;margin:0;padding:0;overflow:hidden}.row-link:after{content:"";position:absolute;inset:0}.row-link:focus-visible{outline:none}.row-link:focus-visible:after{outline:2px solid var(--color-accent);outline-offset:-2px}.list__row:has(.row-link):active{background:var(--color-row-pressed)}.list__row:has(.row-link:focus-visible){background:var(--color-row-pressed)}@media (hover:hover){.list__row:has(.row-link):hover{background:var(--color-row-pressed)}}.list__row .button,.list__row .button--link:not(.row-link){z-index:1;position:relative}.list__row__chevron{color:var(--color-text-secondary);flex-shrink:0}.list-section-title{margin:var(--space-4) 0 var(--space-2);font-size:var(--text-footnote);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em}.list-section-title:first-child{margin-top:0}.hero-balance{gap:var(--space-1);flex-direction:column;display:flex}.hero-balance__label{font-size:var(--text-subheadline);color:var(--color-text-secondary);margin:0}.hero-balance__amount{font-size:var(--text-large-title);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:0;line-height:1.1}.hero-balance__detail{font-size:var(--text-footnote);color:var(--color-text-secondary);margin:0}.notice{align-items:flex-start;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-control-border);border-radius:var(--radius-medium);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);display:flex}.notice__text{font-size:var(--text-subheadline);flex:1;margin:0}.balance-positive{color:var(--color-positive)}.balance-negative{color:var(--color-negative)}.balance-zero{color:var(--color-text-secondary);font-weight:var(--weight-regular)}.totals{background:var(--color-surface);border-radius:var(--radius-large);box-shadow:var(--shadow-card);padding:var(--space-4) var(--space-5);justify-content:space-between;gap:var(--space-4);display:flex}.totals__item{margin:0}.totals__item dt{font-size:var(--text-caption);color:var(--color-text-secondary)}.totals__item dd{margin:var(--space-1) 0 0;font-size:var(--text-title3);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.button{appearance:none;border-radius:var(--radius-medium);min-height:var(--touch-target);padding:0 var(--space-5);font-family:inherit;font-size:var(--text-body);font-weight:var(--weight-semibold);cursor:pointer;border:0}.button--primary{background:var(--color-accent);color:var(--color-accent-text)}.button--secondary{background:var(--color-surface-secondary);color:var(--color-text)}.button--link{appearance:none;font-family:inherit;font-size:inherit;font-weight:inherit;color:var(--color-accent);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.link-actions{margin-top:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.link-actions .button--link{min-height:var(--touch-target)}.form{gap:var(--space-3);flex-direction:column;display:flex}.form__label{gap:var(--space-1);font-size:var(--text-footnote);color:var(--color-text-secondary);flex-direction:column;display:flex}.form__input,.form__select{min-height:var(--touch-target);border:1px solid var(--color-control-border);border-radius:var(--radius-medium);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-body);padding:0 var(--space-3)}.form__textarea{min-height:calc(var(--touch-target) * 2);padding:var(--space-2) var(--space-3);resize:vertical;line-height:1.4}.list__row__body{font-size:var(--text-subheadline);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.form__fieldset{border:0;margin:0;padding:0}.form__legend{font-size:var(--text-footnote);color:var(--color-text-secondary);padding:0}.form__check{align-items:center;gap:var(--space-2);min-height:var(--control-min);font-size:var(--text-subheadline);display:flex}.form__check input{width:var(--control-min);height:var(--control-min)}.form__row{gap:var(--space-3);flex-wrap:wrap;display:flex}.form__row>*{flex:1;min-width:0}.form__error{font-size:var(--text-footnote);color:var(--color-negative);margin:0}.form__hint{font-size:var(--text-caption);color:var(--color-text-secondary);margin:0}.progress{background:var(--color-surface-secondary);height:6px;margin-top:var(--space-2);border-radius:999px;overflow:hidden}.progress__fill{background:var(--color-accent);border-radius:999px;height:100%;transition:width .2s}.progress__fill--over{background:var(--color-negative)}.totals-line{margin:var(--space-2) 0;font-size:var(--text-body)}.pix{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.pix__qr{border-radius:var(--radius-small);align-self:center;width:min(220px,70vw);height:auto}.pix__code{font-family:var(--font-family-monospace);font-size:var(--text-caption);word-break:break-all}.bars{margin:var(--space-3) 0 var(--space-2);border-bottom:1px solid var(--color-separator);grid-template-columns:repeat(6,1fr);gap:2px;display:grid}.bars__col{appearance:none;font:inherit;color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:var(--space-1);min-height:var(--touch-target);border-radius:var(--radius-small);background:0 0;border:0;flex-direction:column;padding:0;display:flex}.bars__track{justify-content:center;align-items:flex-end;width:100%;height:120px;display:flex}.bars__bar{background:var(--color-accent);opacity:.55;border-radius:4px 4px 0 0;width:min(24px,60%)}.bars__col--active .bars__bar{opacity:1}.bars__value{font-size:var(--text-caption2);color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap}.bars__label{font-size:var(--text-caption);padding-bottom:var(--space-1)}.bars__col--active .bars__label{color:var(--color-text);font-weight:var(--weight-semibold)}.stat-tiles{gap:var(--space-3);margin:0 0 var(--space-4);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.stat-tile{margin:0}.stat-tile dt{font-size:var(--text-caption);color:var(--color-text-secondary)}.stat-tile dd{margin:var(--space-1) 0 0;font-size:var(--text-title3);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.table-scroll{margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-footnote);font-variant-numeric:tabular-nums}.data-table caption{text-align:left;font-size:var(--text-footnote);color:var(--color-text-secondary);padding-bottom:var(--space-2)}.data-table th,.data-table td{padding:var(--space-2) var(--space-2);border-bottom:.5px solid var(--color-separator);text-align:right;white-space:nowrap}.data-table th[scope=row]{text-align:left;font-weight:var(--weight-regular)}.data-table thead th{color:var(--color-text-secondary);font-weight:var(--weight-medium)}.data-table__total th,.data-table__total td{font-weight:var(--weight-semibold);border-bottom:0}@media (width<=480px){.card{padding:var(--space-4)}.list__row{padding:var(--space-2) var(--space-3);gap:var(--space-2)}}.list__row__detail .balance-positive,.list__row__detail .balance-negative,.list__row__detail .balance-zero{white-space:nowrap}.search{margin-bottom:var(--space-3)}.filters{margin-top:var(--space-2)}.filters__summary{cursor:pointer;min-height:var(--touch-target);color:var(--color-accent-text);font-weight:var(--weight-medium);align-items:center;display:flex}.segmented{margin:0 0 var(--space-3);background:var(--color-surface-secondary);border-radius:var(--radius-medium);grid-template-columns:repeat(3,1fr);gap:2px;padding:2px;display:grid}.segmented__option{appearance:none;font:inherit;color:var(--color-text-secondary);min-height:var(--touch-target);padding:var(--space-2) var(--space-1);border-radius:calc(var(--radius-medium) - 2px);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;display:flex}.segmented__option[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-card)}.segmented__label{font-size:var(--text-caption);font-weight:var(--weight-medium)}.segmented__value{font-size:var(--text-subheadline);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.list__row--stack{flex-wrap:wrap}.list__row--stack .list__row__main{flex:100%}.pending-actions{align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;flex:100%;display:flex}.pending-actions__amount{flex:120px;margin:0}.tag{margin:0 0 var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-small);border:1px solid var(--color-control-border);font-size:var(--text-caption);color:var(--color-text-secondary);display:inline-block}.expense-notes{white-space:pre-wrap;margin:var(--space-2) 0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--color-separator);color:var(--color-text)}.serie{margin:var(--space-3) 0;padding-top:var(--space-2);border-top:1px solid var(--color-separator)}.comment__body{white-space:pre-wrap;font-weight:var(--weight-regular)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-monospace:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--text-caption2:.6875rem;--text-caption:.75rem;--text-footnote:.8125rem;--text-subheadline:.9375rem;--text-body:1.0625rem;--text-title3:1.25rem;--text-title2:1.375rem;--text-title1:1.75rem;--text-large-title:2.125rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--radius-small:8px;--radius-medium:12px;--radius-large:16px;--shadow-card:0 1px 3px #00000014;--color-bg:#f2f2f7;--color-surface:#fff;--color-surface-secondary:#e5e5ea;--color-text:#1c1c1e;--color-text-secondary:#6c6c70;--color-separator:#3c3c434a;--color-accent:#0062e3;--color-accent-text:#fff;--color-positive:#187a3c;--color-negative:#c2352f;--color-warning:#9a6a00;--color-control-border:#86868b;--color-row-pressed:#3c3c4314;--color-tabbar-bg:#f9f9f9eb;--touch-target:44px;--control-min:28px;--tabbar-height:49px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-bg:#000;--color-surface:#1c1c1e;--color-surface-secondary:#2c2c2e;--color-text:#f2f2f7;--color-text-secondary:#98989f;--color-separator:#54545899;--color-accent:#409cff;--color-accent-text:#000;--color-positive:#4cd964;--color-negative:#ff6961;--color-warning:#ffd60a;--color-control-border:#727277;--color-row-pressed:#ebebf514;--color-tabbar-bg:#1c1c1eeb;--shadow-card:none}}@media (prefers-contrast:more){:root{--color-text-secondary:#4a4a4e;--color-separator:#6c6c70;--color-control-border:#4a4a4e;--color-accent:#0050bd;--color-positive:#0f6630;--color-negative:#a3221d;--color-tabbar-bg:#f9f9f9}}@media (prefers-contrast:more) and (prefers-color-scheme:dark){:root{--color-text-secondary:#c7c7cc;--color-separator:#8e8e93;--color-control-border:#aeaeb2;--color-accent:#6cb4ff;--color-positive:#6ee787;--color-negative:#ff8a84;--color-tabbar-bg:#1c1c1e}}@media (prefers-reduced-transparency:reduce){:root{--color-tabbar-bg:var(--color-surface)}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--text-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;line-height:1.45}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
