@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&family=Sora:wght@400;500;600;700;800&display=swap";.theme-toggle{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text);cursor:pointer;transition:all .2s ease;font-size:.85rem;font-weight:500;white-space:nowrap}.theme-toggle:hover{background:var(--card);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.theme-toggle:active{transform:translateY(0)}.theme-toggle__icon{width:18px;height:18px;flex-shrink:0;transition:transform .3s ease}.theme-toggle:hover .theme-toggle__icon{transform:rotate(20deg)}.theme-toggle__label{display:none}@media (min-width: 768px){.theme-toggle__label{display:inline}}@media (max-width: 768px){.theme-toggle{padding:.5rem;gap:0}.theme-toggle__icon{width:20px;height:20px}}@media (prefers-reduced-motion: no-preference){.theme-toggle:active .theme-toggle__icon{animation:spin .6s ease}}.mobile-nav{display:none}@media (max-width: 900px){.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--card);border-top:1px solid var(--border);z-index:100;padding:.25rem 0;padding-bottom:env(safe-area-inset-bottom,.25rem);overflow-x:auto;overflow-y:hidden}}.mobile-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.35rem .1rem;min-width:0;background:none;border:none;cursor:pointer;color:var(--muted);font-family:var(--font);transition:color var(--transition);-webkit-tap-highlight-color:transparent}.mobile-nav__item:hover,.mobile-nav__item--active{color:var(--accent)}.mobile-nav__icon{font-size:1.2rem;line-height:1;flex-shrink:0}.mobile-nav__label{font-size:.55rem;font-weight:600;letter-spacing:.01em;line-height:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;padding:0 2px}.sidebar{width:var(--sidebar-w);height:100vh;position:sticky;top:0;display:flex;flex-direction:column;padding:1.2rem .9rem;background:color-mix(in srgb,var(--card) 93%,#000 7%);border-right:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.sidebar__logo{display:flex;align-items:center;gap:.75rem;padding-inline:.3rem;flex:1}.sidebar__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1rem}.sidebar__logo-mark{width:2rem;height:2rem;display:grid;place-items:center;border-radius:var(--radius-sm);background:linear-gradient(160deg,var(--card2),color-mix(in srgb,var(--accent) 24%,var(--card2)))}.sidebar__logo-name{color:var(--accent);font-weight:800;line-height:1}.sidebar__logo-sub{color:var(--muted);font-size:.8rem;margin-top:.12rem}.sidebar__nav{display:flex;flex-direction:column;gap:.34rem}.sidebar__item{width:100%;border:1px solid transparent;border-left:3px solid transparent;background:transparent;color:var(--text);text-align:left;font:inherit;font-size:.95rem;border-radius:var(--radius-sm);padding:.58rem .68rem;display:flex;align-items:center;gap:.58rem;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.sidebar__item:hover{background:color-mix(in srgb,var(--card2) 86%,transparent);border-color:color-mix(in srgb,var(--muted) 25%,var(--border));transform:translate(1px)}.sidebar__item--active{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--card2));border-left-color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.sidebar__item-icon{width:1.2rem;text-align:center}.sidebar__footer{margin-top:auto;padding:.9rem .4rem .2rem;color:var(--muted);font-size:.76rem}@media (max-width: 900px){.sidebar{width:100%;height:auto;position:static;border-right:0;border-bottom:1px solid var(--border);padding:.85rem}.sidebar__nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem}.sidebar__item{justify-content:center;border-left-width:1px;font-size:.84rem;padding:.5rem .4rem}.sidebar__item span:last-child{display:none}.sidebar__footer{display:none}}@media (max-width: 600px){.sidebar__nav{grid-template-columns:repeat(3,minmax(0,1fr))}}.global-search{position:relative;width:100%;max-width:400px}.global-search__input-wrapper{position:relative;display:flex;align-items:center;gap:.5rem}.global-search__icon{position:absolute;left:.75rem;font-size:1rem;pointer-events:none;color:var(--muted)}.global-search__input{width:100%;padding:.6rem .75rem .6rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font-size:.9rem;transition:all .2s ease}.global-search__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.global-search__input::placeholder{color:var(--muted)}.global-search__clear{position:absolute;right:.75rem;background:none;border:none;color:var(--muted);cursor:pointer;font-size:1rem;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.global-search__clear:hover{background:var(--border);color:var(--text)}.global-search__results{position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;max-height:400px;overflow-y:auto;z-index:100;animation:slideDown .2s ease}.global-search__list{list-style:none;margin:0;padding:.5rem;display:grid;gap:.5rem}.global-search__result-item{width:100%;background:none;border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem;cursor:pointer;transition:all .2s ease;display:grid;gap:.5rem;text-align:left}.global-search__result-item:hover{border-color:var(--accent);background:color-mix(in srgb,var(--card2) 80%,transparent)}.global-search__result-header{display:flex;align-items:center;gap:.75rem}.global-search__result-icon{font-size:1.2rem;flex-shrink:0}.global-search__result-main{display:grid;gap:.25rem;flex:1;min-width:0}.global-search__result-description{font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem}.global-search__result-meta{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search__result-value{font-weight:600;font-size:.9rem;flex-shrink:0}.global-search__result-footer{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.global-search__result-badge{padding:.2rem .5rem;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.global-search__result-badge.expense{background:color-mix(in srgb,var(--danger) 20%,transparent);color:var(--danger)}.global-search__result-badge.income{background:color-mix(in srgb,var(--success) 20%,transparent);color:var(--success)}.global-search__result-date{color:var(--muted)}.global-search__empty{padding:2rem 1rem;text-align:center;display:grid;gap:.5rem}.global-search__empty-icon{font-size:2rem;display:block}.global-search__empty p{margin:0;color:var(--muted);font-size:.9rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.global-search__results::-webkit-scrollbar{width:6px}.global-search__results::-webkit-scrollbar-track{background:transparent}.global-search__results::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.global-search__results::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (max-width: 768px){.global-search{max-width:100%}.global-search__results{max-height:300px}.global-search__input{font-size:1rem}}@media (max-width: 480px){.global-search__result-header{gap:.5rem}.global-search__result-description,.global-search__result-value{font-size:.85rem}}.layout{display:flex;min-height:100vh;background:transparent}.layout__sidebar-wrap{width:var(--sidebar-w);flex:0 0 var(--sidebar-w)}.layout__content{flex:1;display:flex;flex-direction:column;overflow:hidden}.layout__search-header{flex:0 0 auto;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.6rem;border-bottom:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50}.layout__search-header>:first-child{flex:1;min-width:0}.layout__main{flex:1;max-width:1140px;width:100%;padding:1.4rem 1.6rem 2.2rem;overflow-y:auto;margin-inline:auto}@media (max-width: 900px){.layout{flex-direction:column}.layout__sidebar-wrap{display:none}.layout__content{flex-direction:column}.layout__search-header{padding:.75rem 1rem}.layout__main{max-width:100%;padding:1rem 1rem calc(5.2rem + env(safe-area-inset-bottom))}}.layout__theme-mobile{display:none;flex-shrink:0}@media (max-width: 768px){.layout__theme-mobile{display:flex;align-items:center}}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.page-header__main{display:grid;gap:.2rem}.page-header__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.page-header__subtitle{font-size:.95rem}.page-header__right{display:flex;align-items:center;gap:.45rem}@media (max-width: 820px){.page-header{flex-direction:column}}.export-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.export-button:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.export-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #0000001a}.export-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.export-button__icon{flex-shrink:0;transition:transform .2s ease}.export-button:hover:not(:disabled) .export-button__icon{transform:translateY(-1px)}.export-button--loading .export-button__icon{display:none}.export-button__spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.export-button{padding:.5rem .75rem;font-size:.8rem}.export-button__icon,.export-button__spinner{width:14px;height:14px}}.annual-page{display:grid;gap:1rem}.annual-page__header{display:grid;gap:.22rem}.annual-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.annual-page__subtitle{font-size:.95rem}.annual-page__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.7rem}.annual-page__stat{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:.75rem;display:grid;gap:.2rem}.annual-page__table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:.55rem;overflow-x:auto}.annual-page__table{width:100%;border-collapse:collapse;min-width:860px}.annual-page__table th,.annual-page__table td{text-align:left;padding:.48rem .52rem;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);font-size:.84rem}.annual-page__table th{color:var(--muted);font-weight:600}@media (max-width: 768px){.annual-page{gap:.85rem}.annual-page__stats{grid-template-columns:1fr 1fr;gap:.55rem}.annual-page__table-wrap{padding:.45rem}}@media (max-width: 480px){.annual-page__stats{grid-template-columns:1fr}.annual-page__table th,.annual-page__table td{font-size:.78rem;padding:.42rem .45rem}}@media (max-width: 360px){.annual-page{gap:.65rem}.annual-page__title{font-size:1.2rem}.annual-page__subtitle{font-size:.82rem}}.annual-page__header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.period-filter{display:grid;gap:1rem}.period-filter__buttons{display:flex;flex-wrap:wrap;gap:.5rem}.period-filter__button{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.period-filter__button:hover{background:var(--card2);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.period-filter__button--active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 12px #5b8af54d}.period-filter__custom{display:flex;gap:1rem;flex-wrap:wrap;padding:1rem;background:var(--card2);border-radius:var(--radius-md);border:1px solid var(--border)}.period-filter__input-group{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:150px}.period-filter__input-group label{font-size:.8rem;color:var(--muted);font-weight:500}.period-filter__input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font-family:inherit;font-size:.85rem;transition:all .2s ease}.period-filter__input:hover{border-color:var(--accent)}.period-filter__input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}@media (max-width: 768px){.period-filter__buttons{gap:.3rem}.period-filter__button{padding:.4rem .75rem;font-size:.8rem}.period-filter__custom{padding:.75rem;gap:.75rem}.period-filter__input-group{min-width:120px}}@media (max-width: 480px){.period-filter__buttons{flex-direction:column}.period-filter__button{width:100%}.period-filter__custom{flex-direction:column}.period-filter__input-group{min-width:100%}}.conference-page{display:grid;gap:1rem}.conference-page__header{display:grid;gap:.2rem}.conference-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.conference-page__subtitle{font-size:.95rem}.conference-page__stats{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.conference-page__stat{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:.72rem;display:grid;gap:.2rem}.conference-page__table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:.55rem;overflow-x:auto}.conference-page__table{width:100%;border-collapse:collapse;min-width:780px}.conference-page__table th,.conference-page__table td{text-align:left;padding:.48rem .52rem;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);font-size:.84rem}.conference-page__table th{color:var(--muted);font-weight:600}.conference-page__table tbody tr{transition:background-color .2s ease}.conference-page__table tbody tr:hover{background:color-mix(in srgb,var(--card2) 80%,transparent)}.conference-page__expand-cell{text-align:center;padding:.48rem .3rem!important}.conference-page__expand-button{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.8rem;padding:.25rem;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;transform:rotate(0)}.conference-page__expand-button:hover{color:var(--accent);transform:scale(1.2)}.conference-page__expand-button.is-open{transform:rotate(90deg);color:var(--accent)}.conference-page__month{font-weight:600;color:var(--text)}.conference-page__badge{border:1px solid var(--border);border-radius:999px;padding:.12rem .5rem;font-size:.74rem;display:inline-block}.conference-page__badge.is-ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,var(--border));background:color-mix(in srgb,var(--success) 14%,transparent)}.conference-page__badge.is-warn{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,var(--border));background:color-mix(in srgb,var(--warning) 14%,transparent)}.conference-page__details{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card2);padding:1rem;animation:slideInDown .3s ease}.conference-page__details-title{font-size:.95rem;font-weight:600;margin:0 0 .75rem;color:var(--text)}.conference-page__details-list{display:grid;gap:.5rem}.conference-page__detail-item{padding:.75rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all .2s ease}.conference-page__detail-item:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--card))}.conference-page__detail-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.conference-page__detail-type{font-size:1rem;flex-shrink:0}.conference-page__detail-description{flex:1;font-weight:500;color:var(--text)}.conference-page__detail-value{font-weight:600;font-size:.9rem}.conference-page__detail-meta{display:flex;gap:.75rem;font-size:.75rem;color:var(--muted)}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.conference-page{gap:.85rem}.conference-page__stats{grid-template-columns:1fr 1fr;gap:.55rem}.conference-page__table-wrap{padding:.45rem}.conference-page__table th,.conference-page__table td{padding:.4rem .35rem;font-size:.75rem}.conference-page__details{padding:.75rem}.conference-page__detail-item{padding:.6rem}}@media (max-width: 480px){.conference-page__stats{grid-template-columns:1fr}.conference-page__table{min-width:500px}.conference-page__detail-meta{flex-direction:column;gap:.25rem}}} .conference-page__table th,.conference-page__table td{font-size:.78rem;padding:.42rem .45rem}} @media (max-width: 360px){.conference-page{gap:.65rem}.conference-page__subtitle{font-size:.82rem}}.accumulated-table{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem;display:grid;gap:.75rem}.accumulated-table__title{font-size:1rem}.accumulated-table__wrapper{overflow-x:auto}.accumulated-table table{width:100%;border-collapse:collapse;min-width:520px}.accumulated-table th,.accumulated-table td{text-align:left;padding:.48rem .4rem;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent);font-size:.86rem}.accumulated-table th{color:var(--muted);font-weight:600}.bar-chart{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem;display:grid;gap:1rem}.bar-chart__header{display:flex;align-items:center;justify-content:space-between}.bar-chart__title{font-size:1rem;font-weight:600;margin:0}.bar-chart__container{width:100%;height:auto;display:flex;justify-content:center}.bar-chart__tooltip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem;box-shadow:0 4px 12px #00000026;z-index:100;pointer-events:none}.bar-chart__tooltip-month{font-weight:600;font-size:.875rem;margin:0 0 .5rem;color:var(--text)}.bar-chart__tooltip-value{font-size:.8rem;margin:.25rem 0;display:flex;justify-content:space-between;gap:.5rem;color:var(--text)}.bar-chart__tooltip-value span{font-weight:600}.bar-chart__recharts{display:flex;justify-content:center}.bar-chart__recharts .recharts-bar{transition:all .2s ease}.bar-chart__recharts .recharts-bar-rectangle{filter:brightness(1);transition:filter .2s ease}.bar-chart__recharts .recharts-bar-rectangle:hover{filter:brightness(1.15)}.bar-chart__recharts .recharts-cartesian-axis-line{stroke:var(--border)!important}.bar-chart__recharts .recharts-cartesian-axis-tick-value{fill:var(--muted)!important;font-size:.75rem}.bar-chart__recharts .recharts-legend-wrapper{padding-top:1rem!important}.bar-chart__recharts .recharts-legend-item-text{color:var(--text)!important;font-size:.875rem!important}@media (max-width: 768px){.bar-chart{padding:.75rem}.bar-chart__container{overflow-x:auto}.bar-chart__recharts{min-width:100%}}.skeleton{background:linear-gradient(90deg,var(--border) 25%,color-mix(in srgb,var(--border) 80%,var(--card)) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;display:inline-block}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton--text{height:1rem;border-radius:4px}.skeleton--title{height:1.5rem;border-radius:6px}.skeleton--avatar{width:2.5rem;height:2.5rem;border-radius:50%}.skeleton--button{height:2.5rem;border-radius:var(--radius-md)}.skeleton--card{height:4rem;border-radius:var(--radius-lg)}.skeleton--chart{height:12rem;border-radius:var(--radius-lg)}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--border)}}.dashboard-skeleton{display:grid;gap:1.5rem;animation:fadeIn .3s ease}.dashboard-skeleton__header{display:grid;gap:.5rem}.dashboard-skeleton__share{display:flex;justify-content:flex-end}.dashboard-skeleton__stats{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-skeleton__stat-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:1rem;display:flex;align-items:center;gap:1rem}.dashboard-skeleton__stat-icon{flex-shrink:0}.dashboard-skeleton__stat-content{display:grid;gap:.5rem;flex:1}.dashboard-skeleton__charts{display:grid;gap:1.5rem}.dashboard-skeleton__chart-row{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.dashboard-skeleton__chart{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.25rem;display:grid;gap:1rem}.dashboard-skeleton__chart--full{grid-column:1 / -1}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.dashboard-skeleton__chart-row{grid-template-columns:1fr}.dashboard-skeleton__chart--full{grid-column:auto}}@media (max-width: 768px){.dashboard-skeleton{gap:1.25rem}.dashboard-skeleton__stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.dashboard-skeleton__stat-card{padding:.75rem;gap:.75rem}.dashboard-skeleton__chart{padding:1rem}}@media (max-width: 480px){.dashboard-skeleton__stats{grid-template-columns:1fr}.dashboard-skeleton__stat-card{flex-direction:column;text-align:center;gap:.5rem}}.line-chart{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem;display:grid;gap:1rem}.line-chart__header{display:flex;flex-direction:column;gap:.25rem}.line-chart__title{font-size:1rem;font-weight:600;margin:0}.line-chart__subtitle{font-size:.8rem;color:var(--muted);margin:0}.line-chart__container{width:100%;height:auto;display:flex;justify-content:center}.line-chart__tooltip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem;box-shadow:0 4px 12px #00000026;z-index:100;pointer-events:none}.line-chart__tooltip-month{font-weight:600;font-size:.875rem;margin:0 0 .5rem;color:var(--text)}.line-chart__tooltip-value{font-size:.8rem;margin:.25rem 0;display:flex;justify-content:space-between;gap:.5rem;color:var(--text)}.line-chart__tooltip-value span{font-weight:600}.line-chart__recharts{display:flex;justify-content:center}.line-chart__recharts .recharts-line,.line-chart__recharts .recharts-line-dot{transition:all .2s ease}.line-chart__recharts .recharts-line-dot:hover{filter:drop-shadow(0 0 8px rgba(0,0,0,.25))}.line-chart__recharts .recharts-cartesian-axis-line{stroke:var(--border)!important}.line-chart__recharts .recharts-cartesian-axis-tick-value{fill:var(--muted)!important;font-size:.75rem}.line-chart__recharts .recharts-legend-wrapper{padding-top:1rem!important}.line-chart__recharts .recharts-legend-item-text{color:var(--text)!important;font-size:.875rem!important}.line-chart__recharts .recharts-legend-item{cursor:pointer;transition:all .2s ease}.line-chart__recharts .recharts-legend-item:hover .recharts-legend-item-text{font-weight:600}@media (max-width: 768px){.line-chart{padding:.75rem}.line-chart__container{overflow-x:auto}.line-chart__recharts{min-width:100%}}.monthly-summary-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.monthly-summary-modal__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.monthly-summary-modal__content{position:relative;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.monthly-summary-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.monthly-summary-modal__title{font-size:1.25rem;font-weight:600;margin:0;color:var(--text)}.monthly-summary-modal__close{background:none;border:none;color:var(--muted);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.monthly-summary-modal__close:hover{background:var(--border);color:var(--text)}.monthly-summary-modal__close svg{width:20px;height:20px}.monthly-summary-modal__text{background:var(--card2);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;margin-bottom:1.5rem;color:var(--text);max-height:300px;overflow-y:auto}.monthly-summary-modal__actions{display:flex;gap:.75rem;justify-content:flex-end}.monthly-summary-modal__button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.monthly-summary-modal__button:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.monthly-summary-modal__button:active:not(:disabled){transform:translateY(0)}.monthly-summary-modal__button:disabled{opacity:.6;cursor:not-allowed;transform:none}.monthly-summary-modal__button--primary{background:var(--primary);border-color:var(--primary);color:#fff}.monthly-summary-modal__button--primary:hover:not(:disabled){background:color-mix(in srgb,var(--primary) 90%,black);border-color:color-mix(in srgb,var(--primary) 90%,black)}.monthly-summary-modal__button--success{background:var(--success);border-color:var(--success);color:#fff}.monthly-summary-modal__button--success:hover:not(:disabled){background:color-mix(in srgb,var(--success) 90%,black);border-color:color-mix(in srgb,var(--success) 90%,black)}.monthly-summary-modal__button svg{width:16px;height:16px;flex-shrink:0}.monthly-summary-modal__status{position:absolute;top:1rem;right:1rem;background:var(--success);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;opacity:0;transform:translateY(-10px);transition:all .3s ease}.monthly-summary-modal__status--visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){.monthly-summary-modal{padding:.75rem}.monthly-summary-modal__content{padding:1rem;max-width:100%}.monthly-summary-modal__header{margin-bottom:1rem}.monthly-summary-modal__title{font-size:1.125rem}.monthly-summary-modal__text{font-size:.8rem;padding:.75rem;margin-bottom:1rem}.monthly-summary-modal__actions{flex-direction:column}.monthly-summary-modal__button{justify-content:center;width:100%}}@media (max-width: 480px){.monthly-summary-modal__content{padding:.75rem}.monthly-summary-modal__text{font-size:.75rem;max-height:200px}}.pie-chart{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem;display:grid;gap:1rem}.pie-chart__header{display:flex;align-items:center;justify-content:space-between}.pie-chart__title{font-size:1rem;font-weight:600;margin:0}.pie-chart__container{width:100%;height:auto;display:flex;justify-content:center}.pie-chart__tooltip{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem 1rem;box-shadow:0 4px 12px #00000026;z-index:100;pointer-events:none}.pie-chart__tooltip-label{font-weight:600;font-size:.875rem;margin:0 0 .5rem;color:var(--text)}.pie-chart__tooltip-value{font-size:.875rem;margin:.25rem 0;color:var(--text);font-weight:600}.pie-chart__tooltip-percent{font-size:.75rem;margin:.25rem 0 0;color:var(--muted)}.pie-chart__slice{transition:all .2s ease}.pie-chart__slice:hover{filter:drop-shadow(0 0 8px rgba(0,0,0,.2))}.pie-chart .recharts-legend-wrapper{padding-top:1rem!important}.pie-chart .recharts-legend-item-text{color:var(--text)!important;font-size:.875rem!important}.pie-chart .recharts-legend-item{cursor:pointer;transition:all .2s ease}.pie-chart .recharts-legend-item:hover .recharts-legend-item-text{font-weight:600}.pie-chart .recharts-pie-text{fill:var(--text)!important;font-size:.75rem;font-weight:600}@media (max-width: 768px){.pie-chart{padding:.75rem}.pie-chart__container{min-height:250px}}.stat-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 92%,#000),var(--card2));padding:.95rem;display:grid;gap:.62rem;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:0 10px 18px color-mix(in srgb,#000 24%,transparent)}.stat-card__top{display:flex;align-items:center;justify-content:space-between}.stat-card__title{color:var(--muted);font-size:.86rem;line-height:1.3}.stat-card__icon{width:2rem;height:2rem;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--card2) 90%,transparent)}.stat-card__value{font-size:clamp(1.25rem,2vw,1.62rem);font-weight:700;letter-spacing:-.02em}.stat-card__trend{display:inline-flex;gap:.25rem;align-items:center;width:fit-content;border-radius:999px;padding:.17rem .56rem;font-size:.78rem;border:1px solid transparent}.stat-card__trend--up{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.stat-card__trend--down{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}@media (max-width: 640px){.stat-card{padding:.85rem}}.dashboard-page{display:grid;gap:1rem}.dashboard-page__header{display:flex;justify-content:space-between;gap:.9rem;align-items:flex-start}.dashboard-page__title{font-size:clamp(1.4rem,2.5vw,2rem)}.dashboard-page__subtitle{margin-top:.25rem}.dashboard-page__goal{border:1px solid var(--border);border-radius:var(--radius-sm);padding:.36rem .62rem;background:var(--card);font-size:.84rem;white-space:nowrap}.dashboard-page__stats{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.dashboard-page__charts{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}@media (max-width: 820px){.dashboard-page__header{flex-direction:column}.dashboard-page__goal{white-space:normal}}@media (max-width: 768px){.dashboard-page{gap:.85rem}.dashboard-page__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page__charts{grid-template-columns:1fr}}@media (max-width: 480px){.dashboard-page__stats{grid-template-columns:1fr;gap:.55rem}.dashboard-page__goal{width:100%;font-size:.78rem}}@media (max-width: 360px){.dashboard-page{gap:.65rem}.dashboard-page__title{font-size:1.2rem}.dashboard-page__subtitle{font-size:.82rem}}.dashboard-page__header-actions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.dashboard-page__share-button{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.dashboard-page__share-button:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.dashboard-page__share-button:active{transform:translateY(0)}@media (max-width: 820px){.dashboard-page__header-actions{align-items:stretch}.dashboard-page__share-button{width:100%;justify-content:center}}.field{display:grid;gap:.45rem}.field__label{color:var(--muted);font-size:.9rem}.field__control{display:flex;align-items:center;gap:.45rem;border:1px solid var(--border);background:var(--card);border-radius:var(--radius-md);padding:.65rem .75rem}.field__control:focus-within{border-color:var(--accent)}.field__control--error{border-color:var(--danger)}.field__icon{color:var(--muted)}.field__input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit}.field__input::placeholder{color:var(--muted)}.field__feedback{color:var(--muted);font-size:.8rem}.field__feedback--error{color:var(--danger)}.transaction-form{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,var(--card),var(--card2));padding:1rem;display:grid;gap:1rem}.transaction-form__header{display:grid;gap:.2rem}.transaction-form__title{font-size:1.2rem}.transaction-form__hint{font-size:.9rem}.transaction-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}.transaction-form__select-wrap{display:grid;gap:.45rem}.transaction-form__select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--text);font:inherit;padding:.65rem .75rem}.transaction-form__footer{display:flex;justify-content:flex-end}.transaction-form__footer .day5__button:disabled{opacity:.55;cursor:not-allowed}.transaction-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 95%,#000),var(--card));padding:.95rem;display:grid;gap:.75rem}.transaction-list__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.transaction-list__title{font-size:1.04rem}.transaction-list__count{color:var(--muted);font-size:.82rem;border:1px solid var(--border);border-radius:999px;padding:.14rem .52rem}.transaction-list__empty{padding:.45rem 0}.transaction-list__items{list-style:none;display:grid;gap:.5rem}.transaction-list__item{border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--card2) 90%,transparent);padding:.68rem;display:flex;align-items:center;justify-content:space-between;gap:.72rem;transition:border-color .2s ease,transform .2s ease}.transaction-list__item:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));transform:translateY(-1px)}.transaction-list__description{font-weight:600}.transaction-list__meta{font-size:.8rem;margin-top:.12rem}.transaction-list__right{display:grid;justify-items:end;gap:.32rem}.transaction-list__actions{display:flex;gap:.32rem}.transaction-list__btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font:inherit;font-size:.76rem;padding:.3rem .52rem;cursor:pointer;display:inline-flex;align-items:center;gap:.28rem;transition:filter .2s ease,transform .2s ease}.transaction-list__btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.transaction-list__btn--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}@media (max-width: 760px){.transaction-list__item{align-items:flex-start;flex-direction:column}.transaction-list__right{width:100%;justify-items:start}.transaction-list__actions{width:100%}.transaction-list__btn{flex:1;justify-content:center}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;cursor:pointer;pointer-events:auto;animation:slideInRight .3s ease;border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toast__content{display:flex;align-items:center;gap:.75rem;flex:1}.toast__icon{font-size:1.1rem;flex-shrink:0}.toast__message{font-size:.9rem;font-weight:500;line-height:1.4;color:var(--text)}.toast__close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1rem;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.toast__close:hover{background:var(--border);color:var(--text)}.toast--success{background:color-mix(in srgb,var(--success) 15%,var(--card));border-color:color-mix(in srgb,var(--success) 30%,var(--border))}.toast--success .toast__icon{color:var(--success)}.toast--error{background:color-mix(in srgb,var(--danger) 15%,var(--card));border-color:color-mix(in srgb,var(--danger) 30%,var(--border))}.toast--error .toast__icon{color:var(--danger)}.toast--warning{background:color-mix(in srgb,var(--warning) 15%,var(--card));border-color:color-mix(in srgb,var(--warning) 30%,var(--border))}.toast--warning .toast__icon{color:var(--warning)}.toast--info{background:color-mix(in srgb,var(--accent) 15%,var(--card));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.toast--info .toast__icon{color:var(--accent)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast:nth-child(1){animation-delay:0s}.toast:nth-child(2){animation-delay:.1s}.toast:nth-child(3){animation-delay:.2s}.toast:nth-child(4){animation-delay:.3s}.toast:nth-child(5){animation-delay:.4s}@media (max-width: 480px){.toast-container{left:1rem;right:1rem;top:1rem;max-width:none}.toast{padding:.6rem .8rem}.toast__message{font-size:.85rem}.toast__icon{font-size:1rem}}[data-theme=dark] .toast{box-shadow:0 4px 12px #0000004d}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.expenses-page{display:grid;gap:1rem}.expenses-page__header{display:grid;gap:.2rem}.expenses-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.expenses-page__subtitle{font-size:.95rem}.expenses-page__stats{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.expenses-page__controls{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end}.expenses-page__control{display:grid;gap:.3rem;font-size:.85rem;color:var(--muted)}.expenses-page__control select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font:inherit;padding:.5rem .6rem}.expenses-page__clear{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card2);color:var(--text);font:inherit;min-height:38px;padding:.45rem .75rem;cursor:pointer}.expenses-page__badge{width:fit-content;border:1px solid color-mix(in srgb,var(--danger) 45%,var(--border));border-radius:999px;padding:.2rem .65rem;font-size:.78rem;color:var(--danger);background:color-mix(in srgb,var(--danger) 16%,transparent)}@media (max-width: 768px){.expenses-page{gap:.85rem}.expenses-page__controls{grid-template-columns:1fr 1fr}.expenses-page__stats{grid-template-columns:1fr 1fr;gap:.6rem}}@media (max-width: 480px){.expenses-page__controls{grid-template-columns:1fr}.expenses-page__stats{grid-template-columns:1fr;gap:.5rem}.expenses-page__badge{width:100%}}@media (max-width: 360px){.expenses-page{gap:.65rem}.expenses-page__control{font-size:.8rem}.expenses-page__clear{min-height:34px}}.expenses-page__header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.incomes-page{display:grid;gap:1rem}.incomes-page__header{display:grid;gap:.2rem}.incomes-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.incomes-page__subtitle{font-size:.95rem}.incomes-page__stats{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.incomes-page__controls{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end}.incomes-page__control{display:grid;gap:.3rem;font-size:.85rem;color:var(--muted)}.incomes-page__control select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font:inherit;padding:.5rem .6rem}.incomes-page__clear{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card2);color:var(--text);font:inherit;min-height:38px;padding:.45rem .75rem;cursor:pointer}.incomes-page__badge{width:fit-content;border:1px solid color-mix(in srgb,var(--success) 45%,var(--border));border-radius:999px;padding:.2rem .65rem;font-size:.78rem;color:var(--success);background:color-mix(in srgb,var(--success) 16%,transparent)}.incomes-page__submit{background:var(--success);border-color:color-mix(in srgb,var(--success) 60%,var(--border))}@media (max-width: 768px){.incomes-page{gap:.85rem}.incomes-page__controls{grid-template-columns:1fr 1fr}.incomes-page__stats{grid-template-columns:1fr 1fr;gap:.6rem}}@media (max-width: 480px){.incomes-page__controls{grid-template-columns:1fr}.incomes-page__stats{grid-template-columns:1fr;gap:.5rem}.incomes-page__badge{width:100%}}@media (max-width: 360px){.incomes-page{gap:.65rem}.incomes-page__control{font-size:.8rem}.incomes-page__clear{min-height:34px}}.incomes-page__header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.reports-page{display:grid;gap:1.5rem}.reports-page__summary{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.reports-page__section{display:grid;gap:1rem}.reports-page__section-title{font-size:1.1rem;font-weight:600;color:var(--text);margin:0;display:flex;align-items:center;gap:.5rem}.reports-page__grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.reports-page__card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.25rem;display:grid;gap:1rem}.reports-page__card-title{font-size:.95rem;font-weight:600;color:var(--text);margin:0;display:flex;align-items:center;gap:.5rem}.reports-page__list{display:grid;gap:.75rem}.reports-page__list-item{display:grid;gap:.4rem}.reports-page__list-header{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.reports-page__list-rank{background:var(--accent);color:#fff;border-radius:50%;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;flex-shrink:0}.reports-page__list-label{flex:1;font-weight:500;color:var(--text)}.reports-page__list-value{font-weight:600;font-size:.85rem}.reports-page__progress-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.reports-page__progress-fill{height:100%;background:var(--danger);border-radius:3px;transition:width .3s ease}.reports-page__progress-fill--income{background:var(--success)}.reports-page__progress-fill--payment{background:var(--accent)}.reports-page__table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:.75rem;overflow-x:auto}.reports-page__table{width:100%;border-collapse:collapse;min-width:600px;font-size:.85rem}.reports-page__table th,.reports-page__table td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent)}.reports-page__table th{color:var(--muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.reports-page__table tbody tr:hover{background:color-mix(in srgb,var(--card2) 80%,transparent)}.reports-page__category{font-weight:500;color:var(--text)}@media (max-width: 1024px){.reports-page__grid{grid-template-columns:1fr}}@media (max-width: 768px){.reports-page{gap:1.25rem}.reports-page__summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.reports-page__card{padding:1rem}.reports-page__section-title{font-size:1rem}.reports-page__card-title{font-size:.9rem}.reports-page__list-header,.reports-page__list-value{font-size:.8rem}}@media (max-width: 480px){.reports-page__summary{grid-template-columns:1fr}.reports-page__table{min-width:400px}.reports-page__table th,.reports-page__table td{padding:.5rem .4rem;font-size:.75rem}.reports-page__list-rank{width:1.25rem;height:1.25rem;font-size:.65rem}}.settings-page{display:grid;gap:1rem}.settings-page__header{display:grid;gap:.2rem}.settings-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.settings-page__subtitle{font-size:.95rem}.settings-page__group{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:.8rem;display:grid;gap:.6rem}.settings-page__group h3{font-size:.98rem}.settings-page__inline{display:flex;gap:.55rem;flex-wrap:wrap}.settings-page__inline input{flex:1;min-width:200px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card2);color:var(--text);font:inherit;padding:.48rem .58rem}.settings-page__chips{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}.settings-page__chips li{border:1px solid var(--border);border-radius:999px;background:var(--card2);color:var(--text);font-size:.82rem;padding:.25rem .52rem;display:inline-flex;align-items:center;gap:.35rem}.settings-page__chips button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit}@media (max-width: 768px){.settings-page{gap:.85rem}.settings-page__group{padding:.7rem}}@media (max-width: 480px){.settings-page__inline{flex-direction:column;align-items:stretch}.settings-page__inline input{min-width:0;width:100%}.settings-page__inline .day5__button{width:100%}.settings-page__chips li{width:100%;justify-content:space-between}}@media (max-width: 360px){.settings-page{gap:.65rem}.settings-page__subtitle{font-size:.82rem}}.savings-page{display:grid;gap:1rem}.savings-page__header{display:grid;gap:.2rem}.savings-page__title{font-size:clamp(1.35rem,2.4vw,1.9rem)}.savings-page__subtitle{font-size:.95rem}.savings-page__month{display:grid;gap:.25rem;width:fit-content}.savings-page__month span{color:var(--muted);font-size:.82rem}.savings-page__month select{min-width:140px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font:inherit;padding:.45rem .55rem}.savings-page__inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.7rem}.savings-page__field{display:grid;gap:.28rem}.savings-page__field span{color:var(--muted);font-size:.82rem}.savings-page__field input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--text);font:inherit;padding:.48rem .58rem}.savings-page__cards{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.savings-page__card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);padding:.72rem;display:grid;gap:.2rem}@media (max-width: 768px){.savings-page{gap:.85rem}.savings-page__inputs,.savings-page__cards{grid-template-columns:1fr 1fr;gap:.55rem}}@media (max-width: 480px){.savings-page__month,.savings-page__month select{width:100%}.savings-page__inputs,.savings-page__cards{grid-template-columns:1fr}}@media (max-width: 360px){.savings-page{gap:.65rem}.savings-page__subtitle{font-size:.82rem}}.stats-page{display:grid;gap:2rem}.stats-page__overview{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stats-page__section{display:grid;gap:1.5rem}.stats-page__section-title{font-size:1.2rem;font-weight:600;color:var(--text);margin:0;display:flex;align-items:center;gap:.5rem}.stats-page__records{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.stats-page__record-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.25rem;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.stats-page__record-card:hover{border-color:var(--accent);background:color-mix(in srgb,var(--card2) 80%,transparent)}.stats-page__record-icon{font-size:2rem;flex-shrink:0}.stats-page__record-content{display:grid;gap:.25rem;flex:1}.stats-page__record-content h3{font-size:.95rem;font-weight:600;color:var(--text);margin:0}.stats-page__record-value{font-size:1.1rem;font-weight:600;margin:0}.stats-page__record-detail{font-size:.8rem;color:var(--muted);margin:0}.stats-page__averages{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.stats-page__average-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.25rem;display:flex;align-items:center;gap:1rem}.stats-page__average-icon{font-size:2rem;flex-shrink:0}.stats-page__average-content{display:grid;gap:.5rem;flex:1}.stats-page__average-content h3{font-size:.95rem;font-weight:600;color:var(--text);margin:0}.stats-page__average-value{font-size:.9rem;color:var(--text);margin:0}.stats-page__preferences{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.stats-page__preference-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.25rem;display:flex;align-items:center;gap:1rem}.stats-page__preference-icon{font-size:2rem;flex-shrink:0}.stats-page__preference-content{display:grid;gap:.5rem;flex:1}.stats-page__preference-content h3{font-size:.95rem;font-weight:600;color:var(--text);margin:0}.stats-page__preference-value{font-size:.85rem;color:var(--text);margin:0}.stats-page__monthly-chart{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1.5rem;overflow-x:auto}.stats-page__month-bar{display:inline-flex;flex-direction:column;align-items:center;gap:.5rem;min-width:60px;margin:0 .25rem}.stats-page__month-label{font-size:.8rem;font-weight:600;color:var(--muted);text-align:center}.stats-page__month-bars{display:flex;align-items:end;gap:2px;height:120px;position:relative}.stats-page__month-income{width:20px;background:var(--success);border-radius:2px 2px 0 0;min-height:2px;transition:all .3s ease}.stats-page__month-expense{width:20px;background:var(--danger);border-radius:2px 2px 0 0;min-height:2px;transition:all .3s ease}.stats-page__month-balance{font-size:.75rem;font-weight:600;text-align:center;margin-top:.25rem}@media (max-width: 1024px){.stats-page__records,.stats-page__averages,.stats-page__preferences{grid-template-columns:1fr}.stats-page__monthly-chart{padding:1rem}.stats-page__month-bar{min-width:50px;margin:0 .125rem}}@media (max-width: 768px){.stats-page{gap:1.5rem}.stats-page__overview{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.stats-page__record-card,.stats-page__average-card,.stats-page__preference-card{padding:1rem;gap:.75rem}.stats-page__record-icon,.stats-page__average-icon,.stats-page__preference-icon{font-size:1.5rem}.stats-page__section-title{font-size:1.1rem}}@media (max-width: 480px){.stats-page__overview{grid-template-columns:1fr}.stats-page__record-card,.stats-page__average-card,.stats-page__preference-card{flex-direction:column;text-align:center;gap:.5rem}.stats-page__monthly-chart{padding:.75rem}.stats-page__month-bar{min-width:40px}.stats-page__month-bars{height:80px}.stats-page__month-income,.stats-page__month-expense{width:16px}}.placeholder{min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.66rem;text-align:center;border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(circle at 15% 15%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 40%),linear-gradient(180deg,var(--card),var(--card2));padding:clamp(1.2rem,4vw,2.4rem)}.placeholder__icon{font-size:clamp(3rem,8vw,4.7rem);opacity:.72}.placeholder__title{font-size:clamp(1.55rem,3vw,2.15rem);font-weight:700;letter-spacing:-.02em}.placeholder__sub{max-width:560px;line-height:1.45}.placeholder__badge{margin-top:.26rem;background:color-mix(in srgb,var(--card2) 82%,transparent);border:1px solid var(--border);border-radius:999px;padding:.3rem .68rem;color:var(--warning);font-size:.76rem;letter-spacing:.02em}:root,[data-theme=dark]{--bg: #0e1320;--card: #121a2b;--card2: #1a2440;--border: #2b3657;--text: #eaf0ff;--muted: #9aa8cb;--accent: #5b8af5;--success: #2dcf95;--danger: #ff6b7a;--warning: #ffc35a;--font: "Sora", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--sidebar-w: 280px}[data-theme=light]{--bg: #f8f9fa;--card: #ffffff;--card2: #f3f5f7;--border: #e0e4e8;--text: #1a1f35;--muted: #6b7280;--accent: #5b8af5;--success: #2dcf95;--danger: #ff6b7a;--warning: #ffc35a}*{box-sizing:border-box;margin:0;padding:0}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-track{background:var(--card)}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 28%,var(--card2));border-radius:999px;border:2px solid var(--card)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button,a,input,textarea,select{scroll-margin-top:120px}html,body,#root{min-height:100vh}body{font-family:var(--font);color:var(--text);background:radial-gradient(1100px 550px at 100% -20%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 55%),radial-gradient(900px 460px at 0% 120%,color-mix(in srgb,var(--success) 10%,transparent),transparent 52%),var(--bg);line-height:1.35;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease}@media print{body{background:#fff;color:#111}*,*:before,*:after{background:transparent!important;color:#111!important;box-shadow:none!important;text-shadow:none!important}a,button{text-decoration:underline}.print-hidden{display:none!important}}.text-muted{color:var(--muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-accent{color:var(--accent)}.font-mono{font-family:var(--mono)}.day5{display:grid;gap:1rem}.day5__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.day5__title{font-size:clamp(1.3rem,2.2vw,1.95rem);letter-spacing:-.02em}.day5__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem}.day5__button{border:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 88%,#fff),var(--accent));color:var(--text);border-radius:var(--radius-sm);padding:.52rem .88rem;font:inherit;font-weight:600;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 28%,transparent);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.day5__button:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 8px 16px color-mix(in srgb,var(--accent) 35%,transparent)}.day5__button:active{transform:translateY(0)}.day5__button:disabled{opacity:.56;cursor:not-allowed;transform:none;box-shadow:none;filter:none}.day5__button--ghost{background:color-mix(in srgb,var(--card2) 80%,transparent);box-shadow:none}.day5__button--ghost:hover{filter:brightness(1.05);box-shadow:none}.day6__list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:1rem}.day6__list-title{margin-bottom:.7rem;font-size:1rem}.day6__items{list-style:none;display:grid;gap:.45rem}.day6__item{display:flex;justify-content:space-between;gap:.8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card2);padding:.55rem .7rem}@media (max-width: 900px){.day5__header{align-items:flex-start;flex-direction:column}}@media (max-width: 640px){.day5{gap:.85rem}.day5__grid{grid-template-columns:1fr}.day5__button{width:100%;justify-content:center}}
