@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600;700&display=swap";
:root{--bg-color:#f6f8fa;--surface-primary:#fff;--surface-secondary:#f8fafc;--surface-tertiary:#f1f5f9;--surface-elevated:#ffffffeb;--text-color:#090d16;--text-secondary:#334155;--text-muted:#64748b;--text-subtle:#94a3b8;--card-bg:#fffffff0;--card-bg-subtle:#f8fafc;--card-border:#0f172a14;--card-border-hover:#0f172a26;--card-border-light:#0f172a0b;--primary:#13294b;--primary-hover:#0e1e38;--primary-active:#091426;--primary-light:#13294b14;--primary-subtle:#13294b09;--primary-border:#13294b38;--primary-glow:#13294b29;--income:#059669;--income-bright:#10b981;--income-light:#05966914;--income-subtle:#05966909;--income-border:#05966933;--expense:#e11d48;--expense-bright:#f43f5e;--expense-light:#e11d4814;--expense-subtle:#e11d4809;--expense-border:#e11d4833;--shared:#1d3d6e;--shared-light:#1d3d6e14;--shared-subtle:#1d3d6e09;--shared-border:#1d3d6e38;--person-a:#d97706;--person-a-light:#d9770614;--person-a-border:#d9770638;--person-b:#0284c7;--person-b-light:#0284c714;--person-b-border:#0284c738;--shadow-xs:0 1px 2px #090d1608, 0 0 0 1px #090d1605;--shadow-sm:0 1px 3px #090d160a, 0 4px 12px -2px #090d1608;--shadow-md:0 4px 12px -2px #090d160f, 0 12px 24px -4px #090d160a;--shadow-lg:0 12px 32px -4px #090d1614, 0 4px 12px -2px #090d160a;--shadow-xl:0 24px 48px -12px #090d1629, 0 4px 16px -4px #090d160f;--shadow-inner:inset 0 1px 0 0 #fffc;--radius-xs:6px;--radius-sm:8px;--radius-md:11px;--radius-lg:15px;--radius-xl:18px;--radius-2xl:22px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100vw;overflow-x:hidden}body{background-color:var(--bg-color);color:var(--text-color);letter-spacing:-.014em;background-image:radial-gradient(circle at 12% 0,#13294b0d 0%,#0000 40%),radial-gradient(circle at 88% 4%,#0ea5e90b 0%,#0000 38%),radial-gradient(circle at 50% 95%,#10b98108 0%,#0000 45%),linear-gradient(#f8fafc 0%,#f1f5f9 100%);background-attachment:fixed;min-height:100dvh;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#64748b38;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#64748b66}.tabular-nums,.metric-card-value,.modal-summary-value,.text-2xl,.text-xl,.calendar-date,.calendar-daily-net-tag,.modal-event-amount,.agenda-item-amount,.agenda-day-net,.groupings-table td{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1, "cv01" 1}.glass{background:var(--surface-primary);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm), var(--shadow-inner);transition:box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s}.glass-panel{box-sizing:border-box;width:100%;padding:1.35rem 1.5rem}.container{width:100%;max-width:1520px;padding:1.25rem 1.75rem calc(28px + env(safe-area-inset-bottom)) 1.75rem;box-sizing:border-box;margin:0 auto;overflow-x:hidden}.nav{box-sizing:border-box;z-index:50;-webkit-backdrop-filter:blur(24px)saturate(190%);border-radius:var(--radius-xl);background:#ffffffeb;border:1px solid #0f172a14;justify-content:space-between;align-items:center;width:100%;margin-bottom:1.5rem;padding:.55rem .85rem .55rem 1rem;display:flex;position:relative;box-shadow:0 4px 20px -2px #090d160d,0 1px 3px #090d1608,inset 0 1px #ffffffe6}.nav a{color:var(--text-muted);border-radius:10px;align-items:center;gap:.45rem;padding:.45rem .85rem;font-size:.84rem;font-weight:600;transition:all .16s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative}.nav a:hover{color:var(--text-color);background-color:#0f172a0a}.nav a.active-link{color:var(--primary);background:#fff;font-weight:700;box-shadow:0 1px 3px #090d1614,0 0 0 1px #0f172a0f}.metric-card{border-radius:var(--radius-lg);border:1px solid var(--card-border);box-shadow:var(--shadow-sm), var(--shadow-inner);background:linear-gradient(#fff 0%,#fcfdfe 100%);flex-direction:column;padding:1.35rem 1.4rem;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),border-color .2s;display:flex;position:relative;overflow:hidden}.metric-card:before{content:"";opacity:0;background:linear-gradient(90deg,#13294ba6,#0ea5e966,#0000);height:2px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.metric-card:hover{border-color:var(--card-border-hover);box-shadow:var(--shadow-md)}.metric-card:hover:before{opacity:1}.metric-card-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.metric-card-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.74rem;font-weight:700}.metric-card-icon{border:1px solid #0f172a0d;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.metric-card-value{letter-spacing:-.035em;color:var(--text-color);margin-bottom:.85rem;font-size:1.95rem;font-weight:800;line-height:1.1}.metric-pills-row{flex-wrap:wrap;gap:.45rem;margin-top:auto;padding-top:.25rem;display:flex}.metric-pill{letter-spacing:-.01em;border:1px solid #0000;border-radius:9999px;align-items:center;gap:.25rem;padding:.22rem .6rem;font-size:.74rem;font-weight:700;display:inline-flex}.segmented-control{background:#f1f5f9;border:1px solid #0f172a0f;border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex;box-shadow:inset 0 1px 2px #0f172a0a}.segmented-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.38rem;min-height:auto;padding:.36rem .8rem;font-size:.79rem;font-weight:600;transition:all .16s cubic-bezier(.16,1,.3,1);display:inline-flex}.segmented-btn:hover{color:var(--text-color)}.segmented-btn.active{color:var(--text-color);background:#fff;font-weight:700;box-shadow:0 1px 3px #090d1617,0 1px 1px #090d160a,0 0 0 1px #0f172a0a}.calendar-wrapper{box-sizing:border-box;border-radius:var(--radius-lg);border:1px solid var(--card-border);background:#f1f5f9;width:100%;max-width:100%;padding:.5rem}.calendar-grid{box-sizing:border-box;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;width:100%;max-width:100%;display:grid;overflow-x:clip}.calendar-day-header{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;padding:.45rem 0 .55rem;font-size:.72rem;font-weight:700}.calendar-day{cursor:pointer;box-sizing:border-box;border-radius:var(--radius-md);background:#fff;border:1px solid #0f172a12;flex-direction:column;gap:.3rem;min-width:0;min-height:118px;padding:.55rem;transition:all .16s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #090d1605}.calendar-day:hover{border-color:var(--primary-border);z-index:2;transform:translateY(-2px);box-shadow:0 8px 20px -4px #090d1614,0 2px 6px -1px #090d160a}.calendar-day:active{transform:scale(.985)}.calendar-day.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow), var(--shadow-md);background:#fff}.calendar-day.today-day{border-color:var(--primary);background:linear-gradient(#4f46e508 0%,#fff 60%);box-shadow:inset 0 0 0 1px #4f46e526,0 2px 8px #4f46e514}.calendar-day.today-day .calendar-date{background:var(--primary);color:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 .4rem;font-size:.82rem;display:inline-flex;box-shadow:0 2px 6px #4f46e559}.calendar-day.empty{opacity:.48;box-shadow:none;background-color:#f8fafca6;border-color:#0f172a0a}.calendar-day.empty:hover{opacity:.85;background-color:#fff}.calendar-date-row{justify-content:space-between;align-items:center;margin-bottom:.15rem;display:flex}.calendar-date{color:var(--text-secondary);font-size:.88rem;font-weight:700;line-height:1}.calendar-daily-net-tag{letter-spacing:-.02em;border:1px solid #0000;border-radius:9999px;padding:.12rem .38rem;font-size:.66rem;font-weight:700}.calendar-events-preview{flex-direction:column;gap:.22rem;min-width:0;display:flex;overflow:hidden}.event{white-space:nowrap;text-overflow:ellipsis;border-radius:6px;align-items:center;gap:.3rem;min-width:0;max-width:100%;padding:.22rem .45rem;font-size:.71rem;font-weight:600;line-height:1.25;transition:transform .12s;display:flex;overflow:hidden}.event strong{letter-spacing:-.02em;font-weight:700}.event.income{background-color:var(--income-light);color:#047857;border:1px solid #05966929;border-left:2.5px solid var(--income)}.event.expense{background-color:var(--expense-light);color:#be123c;border:1px solid #e11d4829;border-left:2.5px solid var(--expense)}.event.savings{background-color:var(--shared-light);color:#6d28d9;border:1px solid #7c3aed29;border-left:2.5px solid var(--shared)}.event.payment{background-color:var(--primary-light);color:var(--primary-hover);border:1px solid #4f46e529;border-left:2.5px solid var(--primary)}.calendar-more-badge{color:var(--text-muted);background:#f1f5f9;border:1px solid #0f172a0f;border-radius:9999px;align-self:flex-start;margin-top:auto;padding:.1rem .42rem;font-size:.65rem;font-weight:700}.calendar-dots-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;margin-top:4px;display:none}.calendar-dot{border-radius:50%;flex-shrink:0;width:5.5px;height:5.5px}.calendar-dot.income{background-color:var(--income)}.calendar-dot.expense{background-color:var(--expense)}.calendar-dot.savings{background-color:var(--shared)}.calendar-dot.payment{background-color:var(--primary)}.agenda-wrapper{flex-direction:column;gap:.85rem;display:flex}.agenda-day-group{border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);background:#fff;transition:transform .16s cubic-bezier(.16,1,.3,1),box-shadow .16s,border-color .16s;overflow:hidden}.agenda-day-group:hover{border-color:var(--card-border-hover);box-shadow:var(--shadow-sm)}.agenda-day-group.is-today{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary), var(--shadow-sm)}.agenda-day-header{border-bottom:1px solid var(--card-border-light);background:#f8fafc;justify-content:space-between;align-items:center;padding:.7rem 1.15rem;display:flex}.agenda-date-title{color:var(--text-color);align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;display:flex}.agenda-today-pill{background:var(--primary);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;padding:.14rem .5rem;font-size:.63rem;font-weight:700}.agenda-day-net{font-size:.85rem;font-weight:700}.agenda-items-list{flex-direction:column;display:flex}.agenda-item-row{border-bottom:1px solid var(--card-border-light);justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 1.15rem;transition:background-color .14s;display:flex}.agenda-item-row:last-child{border-bottom:none}.agenda-item-row:hover{background-color:#f8fafc}.agenda-item-left{flex:1;align-items:center;gap:.85rem;min-width:0;display:flex}.agenda-item-icon{border:1px solid #0f172a0d;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.05rem;display:flex}.agenda-item-icon.income{background:var(--income-light);color:var(--income);border-color:var(--income-border)}.agenda-item-icon.expense{background:var(--expense-light);color:var(--expense);border-color:var(--expense-border)}.agenda-item-icon.savings{background:var(--shared-light);color:var(--shared);border-color:var(--shared-border)}.agenda-item-icon.payment{background:var(--primary-light);color:var(--primary);border-color:var(--primary-border)}.agenda-item-info{flex-direction:column;gap:.1rem;min-width:0;display:flex}.agenda-item-name{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;overflow:hidden}.agenda-item-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.74rem;display:flex}.agenda-item-amount{text-align:right;letter-spacing:-.02em;flex-shrink:0;font-size:.95rem;font-weight:700}.weekly-breakdown-grid{box-sizing:border-box;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:.75rem;width:100%;display:grid}.week-card{border-radius:var(--radius-md);border:1px solid var(--card-border);box-shadow:var(--shadow-xs);background:#fff;padding:.95rem 1.05rem;transition:all .16s cubic-bezier(.16,1,.3,1)}.week-card:hover{border-color:var(--card-border-hover);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.week-card.is-current{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary), var(--shadow-sm);background:linear-gradient(#4f46e509 0%,#fff 100%)}.modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(8px)saturate(150%);background:#090d1673;justify-content:center;align-items:center;padding:1rem;animation:.18s ease-out forwards modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-card{border-radius:var(--radius-2xl);width:100%;max-width:560px;max-height:88vh;box-shadow:var(--shadow-xl);background:#fff;border:1px solid #0f172a1a;flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) forwards modalScaleIn;display:flex;overflow:hidden}.sheet-grabber{background:#cbd5e1;border-radius:9999px;width:38px;height:4px;margin:10px auto 2px;display:none}.modal-header{border-bottom:1px solid var(--card-border);background:#fff;justify-content:space-between;align-items:center;padding:1.15rem 1.35rem;display:flex}.modal-title{letter-spacing:-.025em;color:var(--text-color);font-size:1.1rem;font-weight:800}.modal-subtitle{color:var(--text-muted);margin-top:.15rem;font-size:.78rem;font-weight:500}.modal-close-btn{cursor:pointer;width:32px;height:32px;min-height:32px;color:var(--text-muted);background:#f1f5f9;border:1px solid #0f172a0f;border-radius:9px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.modal-close-btn:hover{color:var(--text-color);background:#e2e8f0}.modal-body{-webkit-overflow-scrolling:touch;flex-direction:column;gap:1rem;padding:1.35rem;display:flex;overflow-y:auto}.modal-summary-grid{border-radius:var(--radius-md);border:1px solid var(--card-border);background:#f8fafc;grid-template-columns:repeat(4,1fr);gap:.5rem;padding:.8rem;display:grid}.modal-summary-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:.3rem .2rem;display:flex}.modal-summary-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.2rem;font-size:.66rem;font-weight:700}.modal-summary-value{letter-spacing:-.02em;font-size:1rem;font-weight:800}.modal-events-list{flex-direction:column;gap:.65rem;display:flex}.modal-event-card{border-radius:var(--radius-md);border-left:3.5px solid #0000;border-top:1px solid var(--card-border);border-right:1px solid var(--card-border);border-bottom:1px solid var(--card-border);box-shadow:var(--shadow-xs);background:#fff;flex-direction:column;gap:.45rem;padding:.9rem 1.05rem;transition:box-shadow .15s;display:flex}.modal-event-card:hover{box-shadow:var(--shadow-sm)}.modal-event-card.income{border-left-color:var(--income);background:linear-gradient(90deg,#05966908 0%,#fff 40%)}.modal-event-card.expense{border-left-color:var(--expense);background:linear-gradient(90deg,#e11d4808 0%,#fff 40%)}.modal-event-card.savings{border-left-color:var(--shared);background:linear-gradient(90deg,#7c3aed08 0%,#fff 40%)}.modal-event-card.payment{border-left-color:var(--primary);background:linear-gradient(90deg,#4f46e508 0%,#fff 40%)}.modal-event-top{justify-content:space-between;align-items:center;display:flex}.modal-event-name{color:var(--text-color);font-size:.92rem;font-weight:700}.modal-event-amount{letter-spacing:-.02em;font-size:1.02rem;font-weight:800}.modal-event-bottom{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.modal-owner-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);background:#f1f5f9;border:1px solid #0f172a0f;border-radius:6px;padding:.14rem .48rem;font-size:.66rem;font-weight:700}input,select,button,textarea{font-family:inherit;font-size:.92rem}input,select,textarea{width:100%;color:var(--text-color);box-sizing:border-box;background:#fff;border:1px solid #0f172a24;border-radius:10px;min-height:42px;margin-top:.3rem;padding:.6rem .85rem;transition:all .16s;box-shadow:0 1px 2px #090d1608}input:hover,select:hover,textarea:hover{border-color:#0f172a3d}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow), 0 1px 2px #090d160a;outline:none}input[type=radio],input[type=checkbox]{width:auto;min-height:auto;box-shadow:none;accent-color:var(--primary);margin-top:0}label{color:var(--text-secondary);letter-spacing:-.005em;font-size:.78rem;font-weight:600}button{cursor:pointer;letter-spacing:-.01em;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;min-height:42px;padding:.6rem 1.15rem;font-size:.875rem;font-weight:600;transition:all .15s cubic-bezier(.16,1,.3,1);display:inline-flex}button:active{transform:scale(.975)}button.primary{background:linear-gradient(180deg, #5b54f0 0%, var(--primary) 100%);color:#fff;border:1px solid #4338cacc;box-shadow:0 2px 6px #4f46e540,inset 0 1px #ffffff38}button.primary:hover{background:linear-gradient(180deg, var(--primary) 0%, var(--primary-hover) 100%);transform:translateY(-.5px);box-shadow:0 4px 12px #4f46e552,inset 0 1px #ffffff40}button.secondary{color:var(--text-secondary);background-color:#fff;border:1px solid #0f172a1f;box-shadow:0 1px 2px #090d1608}button.secondary:hover{color:var(--text-color);background-color:#f8fafc;border-color:#0f172a33;box-shadow:0 2px 4px #090d160d}button.danger{background:linear-gradient(180deg, #f43f5e 0%, var(--expense) 100%);color:#fff;border:1px solid #be123c;box-shadow:0 2px 6px #e11d4840,inset 0 1px #fff3}button.danger:hover{background:#be123c}.form-group{margin-bottom:1.1rem}.preset-chips-container{-webkit-overflow-scrolling:touch;gap:.4rem;padding:.2rem .1rem .45rem;display:flex;overflow-x:auto}.preset-chip{border:1px solid var(--card-border);color:var(--text-secondary);white-space:nowrap;cursor:pointer;min-height:auto;box-shadow:var(--shadow-xs);background:#fff;border-radius:9999px;align-items:center;gap:.35rem;padding:.38rem .78rem;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.preset-chip:hover{border-color:var(--primary-border);background:var(--primary-subtle);color:var(--primary)}.preset-chip.active{background:var(--text-color);border-color:var(--text-color);color:#fff;box-shadow:0 2px 6px #090d162e}.flex{display:flex}.flex-col{flex-direction:column}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.items-center{align-items:center}.items-start{align-items:flex-start}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}.pl-2{padding-left:.5rem}.text-center{text-align:center}.text-2xl{letter-spacing:-.03em;color:var(--text-color);font-size:1.45rem;font-weight:800}.text-xl{letter-spacing:-.025em;color:var(--text-color);font-size:1.15rem;font-weight:800}.text-lg{letter-spacing:-.02em;font-size:1.05rem}.text-base{font-size:.95rem}.text-sm{font-size:.85rem}.text-xs{font-size:.76rem}.text-gray{color:var(--text-muted)}.text-income{color:var(--income)}.text-expense{color:var(--expense)}.text-savings{color:var(--shared)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.grid-cols-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.grid-cols-3{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.mobile-bottom-bar{height:calc(62px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);-webkit-backdrop-filter:blur(24px)saturate(190%);z-index:9000;background:#ffffffeb;border-top:1px solid #0f172a14;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #090d160a}.mobile-tab-item{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-width:0;height:100%;padding:6px 2px 0;font-size:.62rem;font-weight:600;transition:all .15s;display:flex;position:relative}.mobile-tab-item span{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.015em;max-width:100%;overflow:hidden}.mobile-tab-item:active{transform:scale(.92)}.mobile-tab-item.active{color:var(--primary);font-weight:700}.mobile-tab-item.active .tab-icon-wrapper{color:var(--primary);transform:translateY(-1px)}.mobile-tab-pill{background:var(--primary);border-radius:9999px;width:22px;height:3px;animation:.2s ease-out pillFadeIn;position:absolute;top:4px}@keyframes pillFadeIn{0%{opacity:0;transform:scaleX(.5)}to{opacity:1;transform:scaleX(1)}}@media (max-width:768px){body{background-attachment:scroll}input,select,textarea{font-size:16px!important}.container{padding:calc(.55rem + env(safe-area-inset-top,0px)) .75rem calc(84px + env(safe-area-inset-bottom,0px)) .75rem!important;width:100%!important;max-width:100vw!important;overflow-x:hidden!important}.glass-panel{padding:.95rem .85rem!important}.desktop-nav-links,.signout-text{display:none!important}.user-email-badge{max-width:88px!important}.nav{border-radius:var(--radius-lg)!important;margin-bottom:.85rem!important;padding:.5rem .65rem!important;position:relative!important;top:auto!important}.metric-card-value{font-size:1.4rem!important}.mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.6rem!important;display:grid!important}.mobile-kpi-grid .metric-card{padding:.85rem .8rem!important}.mobile-kpi-grid .metric-card-title{font-size:.68rem!important}.mobile-kpi-grid .metric-card-icon{width:26px!important;height:26px!important}.mobile-kpi-grid .metric-card-value{margin:.35rem 0!important;font-size:1.22rem!important}.mobile-kpi-grid .metric-pills-row{gap:.25rem!important}.mobile-kpi-grid .metric-pill{padding:.12rem .38rem!important;font-size:.66rem!important}.calendar-wrapper{padding:.3rem!important}.calendar-grid{gap:3px!important;width:100%!important}.calendar-day-header{padding:.25rem 0!important;font-size:.68rem!important}.calendar-day{border-radius:8px!important;gap:.1rem!important;min-width:0!important;height:66px!important;min-height:62px!important;padding:.25rem .2rem!important}.calendar-date{font-size:.78rem!important}.calendar-day.today-day .calendar-date{min-width:20px!important;height:20px!important;padding:0 .25rem!important;font-size:.72rem!important}.calendar-daily-net-tag,.calendar-events-preview{display:none!important}.calendar-dots-row{display:flex!important}.calendar-more-badge{display:none!important}.modal-backdrop{align-items:flex-end!important;padding:0!important}.modal-card{border-bottom:none!important;border-radius:24px 24px 0 0!important;max-width:100%!important;max-height:90dvh!important;animation:.25s cubic-bezier(.16,1,.3,1) forwards modalSlideUpMobile!important}.modal-header{padding:.85rem 1.1rem!important}.modal-body{padding:1rem 1rem calc(1.35rem + env(safe-area-inset-bottom,0px)) 1rem!important}.modal-close-btn{width:40px!important;height:40px!important;min-height:40px!important}.sheet-grabber{display:block!important}.modal-summary-grid{grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important}@keyframes modalSlideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.grid-cols-2,.grid-cols-3{grid-template-columns:1fr!important;gap:.75rem!important}button.primary,button.secondary,button.danger{min-height:42px}.segmented-control,.analytics-tab-toggle{-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%;overflow-x:auto}.segmented-control::-webkit-scrollbar{display:none}.analytics-tab-toggle::-webkit-scrollbar{display:none}.segmented-btn,.analytics-tab-btn{white-space:nowrap;min-height:36px;padding:.35rem .7rem!important;font-size:.76rem!important}.desktop-only-table{display:none!important}.mobile-only-cards{flex-direction:column;gap:.65rem;display:flex!important}.mobile-rule-card{flex-direction:column!important;align-items:stretch!important;gap:.65rem!important}.mobile-rule-actions{border-top:1px solid var(--card-border-light);width:100%;padding-top:.5rem;justify-content:space-between!important}}@media (min-width:769px){.mobile-bottom-bar,.mobile-page-indicator,.mobile-only-cards{display:none!important}}.analytics-tab-toggle{background:#f1f5f9;border:1px solid #0f172a0f;border-radius:10px;gap:2px;padding:3px;display:inline-flex;box-shadow:inset 0 1px 2px #0f172a0a}.analytics-tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:.4rem;min-height:auto;padding:.42rem .95rem;font-size:.8rem;font-weight:600;transition:all .15s cubic-bezier(.16,1,.3,1);display:inline-flex}.analytics-tab-btn:hover{color:var(--text-color)}.analytics-tab-btn.active{color:var(--text-color);background:#fff;font-weight:700;box-shadow:0 1px 3px #090d1614,0 0 0 1px #0f172a0a}.analytics-stat-pill{border:1px solid #0000;border-radius:9999px;align-items:center;gap:.22rem;padding:.18rem .52rem;font-size:.72rem;font-weight:700;display:inline-flex}.stat-pill-decrease{background:var(--income-light);color:var(--income);border-color:var(--income-border)}.stat-pill-increase{background:var(--expense-light);color:var(--expense);border-color:var(--expense-border)}.stat-pill-neutral{color:var(--text-muted);background:#f1f5f9;border-color:#0f172a0f}.sparkline-row{align-items:flex-end;gap:3px;height:28px;padding:2px 0;display:flex}.sparkline-bar{cursor:pointer;border-radius:2px 2px 0 0;flex:1;min-width:4px;transition:opacity .15s,transform .15s;position:relative}.sparkline-bar:hover{transform:scaleY(1.1);opacity:1!important}.groupings-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.85rem}.groupings-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--card-border);background:#f8fafc;padding:.7rem .85rem;font-size:.7rem;font-weight:700}.groupings-table th:first-child{border-top-left-radius:8px}.groupings-table th:last-child{border-top-right-radius:8px}.groupings-table td{border-bottom:1px solid var(--card-border-light);vertical-align:middle;padding:.85rem;transition:background-color .12s}.groupings-table tr:last-child td{border-bottom:none}.groupings-table tr:hover td{background-color:#f8fafc}.stability-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:.3rem;padding:.18rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.what-if-slider-group{flex-direction:column;gap:.35rem;display:flex}.what-if-slider-header{justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;display:flex}.what-if-slider-input{width:100%;accent-color:var(--primary);cursor:pointer}.day-burn-grid{grid-template-columns:repeat(31,1fr);align-items:flex-end;gap:2px;height:48px;padding-top:4px;display:grid}.day-burn-bar{background:var(--primary-light);border-top:2px solid var(--primary);cursor:pointer;border-radius:1px 1px 0 0;transition:all .15s}.day-burn-bar:hover{background:var(--primary);transform:scaleY(1.1)}.anomaly-card{border:1px solid var(--card-border);background:#fff;border-radius:10px;align-items:flex-start;gap:.65rem;padding:.75rem .95rem;transition:all .15s;display:flex}.anomaly-card:hover{border-color:var(--card-border-hover);box-shadow:var(--shadow-sm)}.anomaly-badge-high{background:var(--expense-light);color:var(--expense);border:1px solid var(--expense-border)}.anomaly-badge-med{color:#d97706;background:#d9770614;border:1px solid #d9770633}
