@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{color:#172033;font-synthesis:none;background:#f5f7fb;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f5f7fb;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}input,select{color:#172033}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:#132033;flex-direction:column;gap:30px;height:100vh;padding:26px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;padding:0 8px;display:flex}.brand-mark{color:#fff;background:#f97316;border-radius:13px;place-items:center;width:40px;height:40px;font-size:20px;font-weight:800;display:grid;box-shadow:0 8px 24px #f9731647}.brand strong,.brand span{display:block}.brand strong{font-size:16px}.brand span{color:#8fa0b8;margin-top:2px;font-size:11px}.sidebar nav{gap:7px;display:grid}.sidebar nav button{color:#aebacf;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:11px 12px;transition:all .16s;display:flex}.sidebar nav button svg{width:18px}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#21324b}.sidebar nav button.active{box-shadow:inset 3px 0 #f97316}.space-nav{gap:5px;display:grid}.space-nav>span{color:#6f8099;letter-spacing:.12em;padding:0 10px 7px;font-size:10px;font-weight:800}.space-nav button{color:#aebacf;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px 10px;display:grid}.space-nav button>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.space-nav button small{color:#6f8099}.space-nav button:hover,.space-nav button.active{color:#fff;background:#1c2d45}.space-dot{background:#2a3b54;border-radius:8px;place-items:center;width:29px;height:29px;font-size:12px;font-weight:800;display:grid}.sidebar-bottom{margin-top:auto}.profile{background:#1b2a40;border-radius:14px;grid-template-columns:36px minmax(0,1fr) 32px;align-items:center;gap:9px;padding:13px;display:grid}.avatar{color:#c2410c;background:#ffedd5;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.profile strong,.profile small{text-overflow:ellipsis;display:block;overflow:hidden}.profile strong{white-space:nowrap;font-size:12px}.profile small{color:#8fa0b8;white-space:nowrap;margin-top:2px;font-size:10px}.profile button{color:#8fa0b8;background:0 0;border:0;border-radius:8px;place-items:center;padding:7px;display:grid}.profile button:hover{color:#fff;background:#283a55}main{min-width:0;padding:30px 34px 48px}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.topbar h1{letter-spacing:-.035em;margin:3px 0 0;font-size:28px}.eyebrow,.panel-head span{color:#f97316;letter-spacing:.14em;margin:0;font-size:10px;font-weight:800}.back-link{color:#64748b;background:0 0;border:0;align-items:center;gap:4px;margin-bottom:6px;padding:0;font-size:12px;display:flex}.top-actions{align-items:center;gap:9px;display:flex}.month-picker{color:#536176;background:#fff;border:1px solid #dfe5ee;border-radius:10px;align-items:center;gap:8px;padding:9px 11px;display:flex}.month-picker input{background:0 0;border:0;outline:0;font-weight:600}.primary,.secondary{border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex}.primary{color:#fff;background:#f97316;box-shadow:0 7px 18px #f9731633}.primary:hover{background:#ea650c}.primary:disabled{opacity:.55;cursor:not-allowed}.secondary{color:#334155;background:#fff;border:1px solid #dfe5ee}.icon-btn{width:41px;height:41px;padding:0}.wide{width:100%}.toast{z-index:50;color:#fff;cursor:pointer;background:#132033;border-radius:10px;max-width:420px;padding:12px 16px;font-size:13px;position:fixed;top:24px;right:28px;box-shadow:0 12px 35px #0f172a33}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.stat-card{background:#fff;border:1px solid #e2e7ef;border-radius:16px;gap:13px;min-width:0;padding:17px;display:flex}.stat-icon{color:#45566e;background:#eef2f7;border-radius:11px;flex:none;place-items:center;width:39px;height:39px;display:grid}.stat-card.good .stat-icon{color:#15803d;background:#dcfce7}.stat-card.warn .stat-icon{color:#ea580c;background:#ffedd5}.stat-card p,.stat-card strong,.stat-card span{margin:0;display:block}.stat-card p{color:#64748b;font-size:11px;font-weight:600}.stat-card strong{letter-spacing:-.03em;margin:5px 0 3px;font-size:22px}.stat-card span{color:#8a98aa;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.panel{background:#fff;border:1px solid #e1e7ef;border-radius:16px;padding:20px}.panel-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px;display:flex}.panel-head h2{margin:3px 0 0;font-size:17px}.panel-head>strong{font-size:18px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);gap:18px;margin-bottom:18px;display:grid}.chart-wrap{margin:0 -5px -6px -10px}.pie-row{align-items:center;min-height:235px;display:flex}.legend{flex:1;gap:9px;min-width:0;display:grid}.legend>div{grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:11px;display:grid}.legend i{border-radius:50%;width:8px;height:8px}.legend span{color:#64748b;text-overflow:ellipsis;overflow:hidden}.opening-panel{justify-content:space-between;align-items:center;gap:24px;display:flex}.opening-panel h2{margin:4px 0 6px;font-size:18px}.opening-panel p:not(.eyebrow){color:#64748b;margin:0;font-size:12px;line-height:1.5}.inline-save{gap:8px;display:flex}.inline-save input{border:1px solid #dce3ec;border-radius:10px;width:140px;padding:10px}.table-panel{padding:0;overflow:hidden}.table-panel .panel-head{padding:20px 20px 5px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{color:#78869a;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#fafbfc;border-bottom:1px solid #e9edf3;padding:10px 15px;font-size:10px}td{color:#4a586c;vertical-align:middle;border-bottom:1px solid #edf0f4;padding:12px 15px}tbody tr:last-child td{border-bottom:0}td strong,td small{display:block}td strong{color:#27364b}td small{color:#93a0b0;margin-top:3px;font-size:10px}.right{text-align:right}.amount{color:#334155;font-weight:700}.amount.positive{color:#15803d}.tag{color:#c2410c;background:#fff1e8;border-radius:7px;align-items:center;gap:4px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-flex}.tag svg{width:12px;height:12px}.tag.income{color:#15803d;background:#dcfce7}.trash,.row-actions button{color:#93a0b0;background:0 0;border:0;border-radius:7px;padding:6px}.trash:hover{color:#dc2626;background:#fee2e2}.row-actions{justify-content:flex-end;align-items:center;gap:2px;display:flex}.row-actions button:hover{color:#334155;background:#f1f5f9}.split-summary{flex-wrap:wrap;gap:4px;display:flex}.split-summary span{white-space:nowrap;background:#f1f5f9;border-radius:6px;padding:3px 6px;font-size:9px}.empty{color:#94a3b8;text-align:center;align-content:center;place-items:center;gap:8px;min-height:160px;padding:30px;display:grid}.empty svg{opacity:.6;width:27px;height:27px}.empty p{margin:0;font-size:12px}.spaces-layout{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:20px;display:grid}.create-space{padding:30px}.create-space>svg{color:#f97316;margin-bottom:16px}.create-space h2{margin:5px 0 8px;font-size:22px}.create-space p:not(.eyebrow){color:#64748b;font-size:12px;line-height:1.6}.create-space form{gap:9px;margin-top:24px;display:grid}.create-space input{border:1px solid #dce3ec;border-radius:10px;width:100%;padding:11px 12px}.spaces-list{align-content:start;gap:10px;display:grid}.space-card{text-align:left;background:#fff;border:1px solid #e1e7ef;border-radius:14px;grid-template-columns:45px minmax(0,1fr) 24px;align-items:center;gap:13px;width:100%;padding:15px;transition:all .15s;display:grid}.space-card:hover{border-color:#f3c49e;transform:translateY(-1px);box-shadow:0 8px 24px #0f172a0f}.space-card-icon{color:#c2410c;background:#fff1e8;border-radius:12px;place-items:center;width:45px;height:45px;font-weight:800;display:grid}.space-card strong,.space-card span{display:block}.space-card strong{font-size:14px}.space-card span{color:#7d8a9c;margin-top:4px;font-size:11px}.space-card>svg{color:#94a3b8;width:18px}.stack{gap:18px;display:grid}.shared-hero{color:#fff;background:linear-gradient(120deg,#17243a,#263c5d);border-radius:18px;justify-content:space-between;align-items:center;gap:30px;padding:24px 26px;display:flex}.shared-hero.settled{background:linear-gradient(120deg,#14532d,#18743e)}.shared-hero span{color:#fdba74;letter-spacing:.13em;font-size:10px;font-weight:800}.shared-hero h2{margin:6px 0 7px;font-size:23px}.shared-hero p{color:#c6d0df;max-width:720px;margin:0;font-size:12px;line-height:1.55}.shared-hero>div:last-child{text-align:right}.shared-hero small{color:#cbd5e1;margin-bottom:4px;font-size:10px;display:block}.balance-number{letter-spacing:-.04em;font-size:31px;font-weight:800}.members-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.member-card{background:#fff;border:1px solid #e1e7ef;border-radius:15px;padding:16px}.member-head{align-items:center;gap:10px;margin-bottom:15px;display:flex}.member-head strong,.member-head span{display:block}.member-head strong{font-size:13px}.member-head span{color:#8a98aa;margin-top:3px;font-size:9px}.member-numbers{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px;display:grid}.member-numbers>div{background:#f8fafc;border-radius:9px;padding:9px}.member-numbers span,.member-numbers strong{display:block}.member-numbers span{color:#8996a8;font-size:9px}.member-numbers strong{margin-top:4px;font-size:13px}.member-balance{border-radius:9px;margin-bottom:10px;padding:9px}.member-balance span,.member-balance strong{display:block}.member-balance span{opacity:.75;font-size:9px}.member-balance strong{margin-top:3px;font-size:12px}.member-balance.positive{color:#166534;background:#ecfdf5}.member-balance.negative{color:#c2410c;background:#fff7ed}.mini-category{color:#7c8a9d;justify-content:space-between;align-items:center;padding:5px 1px;font-size:9px;display:flex}.mini-category strong{color:#475569}.settlement-panel>p{color:#64748b;margin:-5px 0 15px;font-size:11px}.settlement-suggestions{gap:8px;display:grid}.settlement-suggestions>div{background:#f8fafc;border-radius:10px;grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;gap:14px;padding:10px;display:grid}.settlement-suggestions>div>div{align-items:center;gap:8px;display:flex}.settlement-suggestions svg{width:15px}.settlement-suggestions>div>span{text-align:right;font-weight:800}.space-actions{justify-content:flex-end;display:flex}.invite-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}.invite-panel h2{margin:4px 0 6px;font-size:17px}.invite-panel p:not(.eyebrow){color:#64748b;max-width:600px;margin:0;font-size:11px;line-height:1.5}.invite-panel form{gap:7px;display:flex}.invite-panel input,.invite-link input{border:1px solid #dce3ec;border-radius:9px;min-width:220px;padding:9px 10px}.invite-link{grid-column:1/-1;gap:7px;display:flex}.invite-link input{background:#f8fafc;flex:1;min-width:0}.pending-invites{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.pending-invites span{color:#64748b;background:#f1f5f9;border-radius:20px;padding:5px 8px;font-size:9px}.loading{text-align:center;color:#64748b;padding:80px 20px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(650px,100%);max-height:calc(100vh - 40px);padding:22px;overflow-y:auto;box-shadow:0 25px 70px #0f172a42}.modal-head{justify-content:space-between;align-items:start;margin-bottom:18px;display:flex}.modal-head h2{margin:4px 0 0;font-size:20px}.close{color:#64748b;background:#f1f5f9;border:0;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.close svg{width:18px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.form-grid label,.auth-card label{color:#65748a;gap:5px;font-size:10px;font-weight:700;display:grid}.form-grid input,.form-grid select,.auth-card input{background:#fff;border:1px solid #dbe2eb;border-radius:9px;outline:0;width:100%;padding:10px 11px}.form-grid input:focus,.form-grid select:focus,.auth-card input:focus{border-color:#f97316;box-shadow:0 0 0 3px #f9731614}.span-2{grid-column:1/-1}.modal-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.segmented{background:#f1f5f9;border-radius:10px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.segmented button{color:#64748b;background:0 0;border:0;border-radius:8px;padding:8px;font-size:10px;font-weight:700}.segmented button.active{color:#c2410c;background:#fff;box-shadow:0 2px 8px #0f172a14}.split-editor{border:1px solid #e2e8f0;border-radius:12px;gap:10px;padding:12px;display:grid}.participant-list{flex-wrap:wrap;gap:7px;display:flex}.participant-list label{border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:5px;padding:7px 9px;display:flex}.participant-list input{width:auto}.custom-splits{gap:6px;display:grid}.custom-splits label{grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:10px;display:grid}.custom-splits small{color:#8a98aa;font-size:9px}.auth-page{background:#0f1b2e;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:100vh;display:grid}.auth-copy{color:#fff;background:radial-gradient(circle at 20% 30%,#f9731629,#0000 32%),linear-gradient(140deg,#101c2f,#172942);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(35px,6vw,80px);display:flex}.auth-brand{padding:0}.auth-brand span{color:#9caec6}.auth-copy>div:nth-child(2){max-width:680px}.auth-kicker{color:#fb923c;letter-spacing:.16em;font-size:10px;font-weight:800}.auth-copy h1{letter-spacing:-.055em;margin:14px 0 22px;font-size:clamp(36px,4.3vw,65px);line-height:.98}.auth-copy h1 em{color:#fb923c;font-style:normal}.auth-copy p{color:#b6c4d6;max-width:620px;font-size:14px;line-height:1.7}.auth-features{flex-wrap:wrap;gap:20px;display:flex}.auth-features>div{color:#aebed1;align-items:center;gap:7px;font-size:10px;display:flex}.auth-features svg{color:#fb923c;width:16px}.auth-panel{background:#f7f8fb;place-items:center;padding:30px;display:grid}.auth-card{background:#fff;border:1px solid #e2e7ef;border-radius:20px;gap:15px;width:min(410px,100%);padding:28px;display:grid;box-shadow:0 20px 50px #0f172a14}.auth-card h2{margin:4px 0 0;font-size:24px}.auth-card>small{color:#94a3b8;text-align:center;font-size:9px}.auth-tabs{background:#f1f5f9;border-radius:10px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.auth-tabs button{color:#64748b;background:0 0;border:0;border-radius:8px;padding:8px;font-size:11px;font-weight:700}.auth-tabs button.active{color:#c2410c;background:#fff;box-shadow:0 2px 8px #0f172a12}.form-error{color:#b91c1c;background:#fef2f2;border-radius:8px;padding:9px 10px;font-size:10px}.invite-banner{color:#9a3412;background:#fff7ed;border-radius:10px;align-items:center;gap:10px;padding:11px;display:flex}.invite-banner svg{width:20px}.invite-banner strong,.invite-banner span{display:block}.invite-banner strong{font-size:11px}.invite-banner span{opacity:.8;margin-top:2px;font-size:9px}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.spaces-layout,.invite-panel{grid-template-columns:1fr}.invite-panel form{justify-self:start}}@media (width<=800px){.app-shell{display:block}.sidebar{gap:12px;width:100%;height:auto;padding:13px;position:static}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar nav button{justify-content:center;font-size:0}.sidebar nav button svg{margin:0}.space-nav{display:flex;overflow-x:auto}.space-nav>span{display:none}.space-nav button{grid-template-columns:28px minmax(0,1fr);min-width:150px}.space-nav button small{display:none}.profile{margin-top:0}main{padding:20px 14px 38px}.topbar{align-items:flex-start}.topbar h1{font-size:23px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.shared-hero{flex-direction:column;align-items:flex-start}.shared-hero>div:last-child{text-align:left}.settlement-suggestions>div{grid-template-columns:1fr auto}.settlement-suggestions button{grid-column:1/-1}.auth-page{grid-template-columns:1fr}.auth-copy{gap:40px;min-height:40vh;padding:35px 24px}.auth-features{display:none}.auth-panel{min-height:60vh}}@media (width<=560px){.stats-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.opening-panel{flex-direction:column;align-items:stretch}.inline-save input{flex:1;width:auto;min-width:0}.topbar{flex-direction:column}.top-actions{justify-content:space-between;width:100%}.month-picker{flex:1}.members-grid{grid-template-columns:1fr}.invite-panel form,.invite-link{flex-direction:column}.invite-panel input,.invite-link input{width:100%;min-width:0}.modal{padding:16px}.custom-splits label{grid-template-columns:1fr 110px}.pie-row{flex-direction:column}.legend{width:100%}.auth-panel{padding:18px}.auth-card{padding:20px}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#f5f7fb;min-width:320px}html,body,#root{width:100%;max-width:100%;min-height:100%}body{overscroll-behavior-y:none;overflow-x:hidden}img,svg{max-width:100%}button,input,select{touch-action:manipulation}.app-shell{min-height:100dvh}main,.panel,.stat-card,.dashboard-grid>*,.spaces-layout>*,.invite-panel>*,.member-card,.topbar>*,.top-actions,.form-grid>*{min-width:0}.table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;max-width:100%}.modal-backdrop,.modal{overscroll-behavior:contain}.form-grid input,.form-grid select,.auth-card input,.create-space input,.invite-panel input,.invite-link input,.inline-save input{max-width:100%}@media (width<=1280px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-inline:14px}main{padding-inline:24px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){main{padding:22px 18px 44px}.topbar{flex-direction:column;align-items:flex-start;gap:14px}.top-actions{justify-content:flex-start;width:100%}.dashboard-grid,.spaces-layout,.invite-panel{grid-template-columns:1fr}.invite-panel form{flex-wrap:wrap;justify-self:stretch}.invite-panel form input{flex:240px}}@media (width<=820px){:root{--mobile-nav-height:72px}body{padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom))}.app-shell{min-height:calc(100dvh - var(--mobile-nav-height));display:block}.sidebar{z-index:90;width:100%;height:auto;min-height:var(--mobile-nav-height);padding:7px 10px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#132033fa;border-top:1px solid #ffffff14;position:fixed;inset:auto 0 0;overflow:visible;box-shadow:0 -10px 28px #0f172a2e}.sidebar>.brand,.sidebar>.space-nav,.sidebar>.profile{display:none}.sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.sidebar nav button{text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:51px;padding:6px 4px;font-size:10px;line-height:1.1;display:flex}.sidebar nav button svg{width:20px;height:20px;margin:0}.sidebar nav button.active{color:#fff;box-shadow:none;background:#21324b}main{width:100%;padding:16px 14px 24px}.topbar{z-index:35;padding:calc(14px + env(safe-area-inset-top)) 14px 12px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f7fbf0;border-bottom:1px solid #e2e7efe6;margin:-16px -14px 18px;position:sticky;top:0}.topbar>div:first-child{width:100%}.topbar h1{overflow-wrap:anywhere;font-size:clamp(21px,6vw,26px)}.top-actions{grid-template-columns:minmax(0,1fr) 44px auto;align-items:stretch;gap:8px;display:grid}.month-picker{width:100%;min-width:0;min-height:44px}.month-picker input{width:100%;min-width:0;font-size:16px}.top-actions .icon-btn{width:44px;height:44px}.top-actions .primary{white-space:nowrap;min-height:44px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:14px}.stat-card strong{font-size:clamp(18px,5vw,22px)}.dashboard-grid{gap:12px}.panel{border-radius:14px}.opening-panel,.shared-hero{flex-direction:column;align-items:stretch}.shared-hero{gap:18px;padding:20px}.shared-hero>div:last-child{text-align:left}.balance-number{font-size:28px}.members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-suggestions>div{grid-template-columns:minmax(0,1fr) auto;gap:10px}.settlement-suggestions>div>div{flex-wrap:wrap;min-width:0}.settlement-suggestions button{grid-column:1/-1;width:100%;min-height:44px}.space-actions .primary{min-height:44px}.invite-panel form,.invite-link{width:100%}.invite-panel form input,.invite-link input{min-height:44px;font-size:16px}.invite-panel form button,.invite-link button{min-height:44px}.table-scroll table{min-width:660px}.split-editor .table-scroll table{min-width:560px}th,td{padding-inline:12px}.modal-backdrop{place-items:end center;padding:0}.modal{width:100%;max-width:none;max-height:min(92dvh,920px);padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;box-shadow:0 -20px 60px #0f172a3d}.modal-head{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #edf0f4;margin:-18px -16px 16px;padding:18px 16px 12px;position:sticky;top:-18px}.close{min-width:44px;min-height:44px}.form-grid input,.form-grid select,.auth-card input,.create-space input{min-height:44px;font-size:16px}.form-grid label,.auth-card label{font-size:11px}.modal-actions button,.participant-list label{min-height:44px}.segmented button{min-height:42px}.toast{z-index:120;top:auto;right:12px;bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 12px);text-align:center;max-width:none;left:12px}.auth-page{grid-template-columns:1fr;min-height:100dvh}.auth-copy{min-height:auto;padding:calc(24px + env(safe-area-inset-top)) 20px 24px;gap:28px}.auth-copy h1{margin-block:12px 16px;font-size:clamp(32px,10vw,48px);line-height:1.02}.auth-copy p{font-size:13px}.auth-panel{min-height:auto;padding:20px 16px calc(24px + env(safe-area-inset-bottom))}.auth-card{width:100%;max-width:480px}}@media (width<=600px){.top-actions{grid-template-columns:minmax(0,1fr) 44px}.top-actions .primary{grid-column:1/-1;width:100%}.stats-grid,.members-grid{grid-template-columns:1fr}.stat-card{min-height:84px}.panel{padding:16px}.table-panel{padding:0}.table-panel .panel-head{flex-wrap:wrap;padding:16px 16px 7px}.table-panel .panel-head .primary{width:100%;min-height:44px}.pie-row{flex-direction:column;align-items:stretch}.pie-row>div:first-child{width:100%!important}.legend{width:100%}.opening-panel{gap:16px}.inline-save{width:100%}.inline-save input{flex:1;width:100%;min-width:0;font-size:16px}.inline-save button{min-height:44px}.spaces-layout{gap:14px}.create-space{padding:20px}.create-space form button{min-height:44px}.space-card{min-height:74px;padding:13px}.space-card span{line-height:1.35}.shared-hero h2{font-size:21px}.settlement-panel,.invite-panel{padding:16px}.invite-panel form,.invite-link{flex-direction:column}.invite-panel form button,.invite-link button{width:100%}.space-actions{justify-content:stretch}.space-actions .primary{width:100%}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.split-editor{padding:10px}.split-editor>.panel-head{flex-direction:column;align-items:stretch;gap:10px}.split-editor>.panel-head .secondary{width:100%;min-height:44px}.custom-splits label{grid-template-columns:minmax(0,1fr) 112px}.modal-actions{grid-template-columns:1fr 1fr;display:grid}.auth-copy .auth-features{display:none}.auth-card{border-radius:16px;padding:20px}}@media (width<=420px){main{padding-inline:10px}.topbar{margin-inline:-10px;padding-inline:10px}.stats-grid{gap:8px}.stat-card{padding:13px}.stat-icon{width:36px;height:36px}.panel,.member-card{border-radius:12px}.shared-hero{border-radius:14px;padding:17px}.member-numbers{grid-template-columns:1fr 1fr}.settlement-suggestions>div{grid-template-columns:1fr}.settlement-suggestions>div>span{text-align:left;font-size:18px}.custom-splits label{grid-template-columns:1fr}.custom-splits label input{width:100%}.modal-actions{grid-template-columns:1fr}.modal-actions .primary{grid-row:1}.auth-copy{padding-inline:16px}.auth-panel{padding-inline:10px}.auth-card{padding:18px 14px}}@media (hover:none) and (pointer:coarse){.primary,.secondary,.space-card,.row-actions button,.trash,.back-link,.profile button{-webkit-tap-highlight-color:transparent}.row-actions button,.trash{min-width:40px;min-height:40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--motion-fast:.16s;--motion-normal:.28s;--motion-slow:.52s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.16, 1.25, .3, 1)}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)scale(.988)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-from-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes row-in{0%{opacity:0;transform:translate(-7px)}to{opacity:1;transform:translate(0)}}@keyframes toast-in-out{0%{opacity:0;transform:translate(18px,-8px)scale(.96)}8%{opacity:1;transform:translate(0,0)scale(1)}91%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate(12px,-5px)scale(.98)}}@keyframes toast-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-pop-in{0%{opacity:0;transform:translateY(20px)scale(.965)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes mobile-sheet-in{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}@keyframes brand-breathe{0%,to{transform:translateZ(0)scale(1);box-shadow:0 8px 24px #f973163d}50%{transform:translateZ(0)scale(1.035);box-shadow:0 10px 30px #f973166b}}@keyframes hero-drift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes soft-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes auth-glow{0%,to{opacity:.72;transform:translate(0,0)scale(1)}50%{opacity:1;transform:translate(4%,-3%)scale(1.08)}}@keyframes icon-pop{0%{opacity:.45;transform:scale(.82)rotate(-5deg)}to{opacity:1;transform:scale(1)rotate(0)}}main>.stats-grid,main>.dashboard-grid,main>.opening-panel,main>.table-panel,main>.spaces-layout,main>.stack{animation:rise-in var(--motion-slow) var(--ease-out) both}main>.dashboard-grid{animation-delay:55ms}main>.opening-panel{animation-delay:.105s}.topbar>div:first-child{animation:slide-from-left .42s var(--ease-out) both}.top-actions{animation:rise-in .43s var(--ease-out) 60ms both}.brand-mark{will-change:transform, box-shadow;animation:4.8s ease-in-out infinite brand-breathe}.sidebar nav button,.space-nav button{transition:color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) ease}.sidebar nav button:hover,.space-nav button:hover{transform:translate(3px)}.sidebar nav button svg,.space-nav .space-dot{transition:transform var(--motion-normal) var(--ease-spring)}.sidebar nav button:hover svg,.sidebar nav button.active svg{transform:scale(1.14)}.space-nav button:hover .space-dot,.space-nav button.active .space-dot{transform:scale(1.08)rotate(-2deg)}.profile,.avatar{transition:transform var(--motion-normal) var(--ease-spring), box-shadow var(--motion-normal) ease}.profile:hover .avatar{transform:scale(1.08);box-shadow:0 5px 15px #f9731633}.primary,.secondary,.icon-btn,.close,.trash,.row-actions button,.back-link{transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion-fast) ease, background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease, opacity var(--motion-fast) ease}.primary,.secondary{isolation:isolate;position:relative;overflow:hidden}.primary:after{content:"";z-index:-1;width:42%;transition:left .52s var(--ease-out);background:linear-gradient(90deg,#0000,#ffffff4d,#0000);position:absolute;inset:-40% auto -40% -55%;transform:skew(-18deg)}.primary:hover:after{left:120%}.primary:hover,.secondary:hover{transform:translateY(-2px)}.primary:hover{box-shadow:0 10px 24px #f9731647}.primary:active,.secondary:active,.icon-btn:active,.close:active,.row-actions button:active{transform:translateY(0)scale(.96)}.icon-btn:hover svg{transform:rotate(155deg)scale(1.06)}.icon-btn svg,.close svg,.row-actions button svg,.trash svg,.back-link svg{transition:transform var(--motion-normal) var(--ease-spring)}.close:hover svg{transform:rotate(90deg)}.back-link:hover svg{transform:translate(-3px)}.row-actions button:hover svg{transform:scale(1.14)}.trash:hover svg{transform:scale(1.1)rotate(5deg)}input,select{transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) ease}input:hover,select:hover{border-color:#cbd5e1}input:focus,select:focus{transform:translateY(-1px)}.month-picker{transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion-fast) ease, border-color var(--motion-fast) ease}.month-picker:hover,.month-picker:focus-within{border-color:#f3c49e;transform:translateY(-1px);box-shadow:0 8px 20px #0f172a0f}.stat-card,.member-card,.space-card,.settlement-suggestions>div{transition:transform var(--motion-normal) var(--ease-spring), box-shadow var(--motion-normal) ease, border-color var(--motion-normal) ease, background-color var(--motion-normal) ease;will-change:transform}.stat-card{animation:rise-in .48s var(--ease-out) both}.stats-grid .stat-card:first-child{animation-delay:20ms}.stats-grid .stat-card:nth-child(2){animation-delay:70ms}.stats-grid .stat-card:nth-child(3){animation-delay:.12s}.stats-grid .stat-card:nth-child(4){animation-delay:.17s}.stat-card:hover,.member-card:hover,.space-card:hover,.settlement-suggestions>div:hover{border-color:#f3c49e;transform:translateY(-4px);box-shadow:0 14px 34px #0f172a17}.stat-icon{transition:transform var(--motion-normal) var(--ease-spring), box-shadow var(--motion-normal) ease;animation:icon-pop .5s var(--ease-spring) both}.stat-card:hover .stat-icon{transform:scale(1.12)rotate(-3deg);box-shadow:0 7px 16px #0f172a14}.panel{transition:box-shadow var(--motion-normal) ease, border-color var(--motion-normal) ease}.panel:hover{border-color:#d9e0e9;box-shadow:0 12px 34px #0f172a0e}.space-card>svg{transition:transform var(--motion-normal) var(--ease-spring), color var(--motion-fast) ease}.space-card:hover>svg{color:#f97316;transform:translate(5px)}.space-card-icon{transition:transform var(--motion-normal) var(--ease-spring), box-shadow var(--motion-normal) ease}.space-card:hover .space-card-icon{transform:scale(1.08)rotate(-3deg);box-shadow:0 8px 18px #f9731629}.members-grid .member-card,.spaces-list .space-card,.settlement-suggestions>div{animation:rise-in .44s var(--ease-out) both}.members-grid .member-card:nth-child(2),.spaces-list .space-card:nth-child(2),.settlement-suggestions>div:nth-child(2){animation-delay:55ms}.members-grid .member-card:nth-child(3),.spaces-list .space-card:nth-child(3),.settlement-suggestions>div:nth-child(3){animation-delay:.105s}.members-grid .member-card:nth-child(4),.spaces-list .space-card:nth-child(4),.settlement-suggestions>div:nth-child(4){animation-delay:.155s}.members-grid .member-card:nth-child(5),.spaces-list .space-card:nth-child(5){animation-delay:.205s}.members-grid .member-card:nth-child(6),.spaces-list .space-card:nth-child(6){animation-delay:.255s}.member-balance{transition:transform var(--motion-fast) var(--ease-spring), filter var(--motion-fast) ease}.member-card:hover .member-balance{filter:saturate(1.08);transform:scale(1.015)}.shared-hero{animation:rise-in .52s var(--ease-out) both, hero-drift 12s ease-in-out infinite;background-size:180% 180%;position:relative;overflow:hidden}.shared-hero:after{content:"";filter:blur(2px);pointer-events:none;width:190px;height:190px;transition:transform .7s var(--ease-out), opacity .7s ease;background:#f9731629;border-radius:50%;position:absolute;top:-92px;right:-72px}.shared-hero:hover:after{opacity:.72;transform:translate(-22px,18px)scale(1.18)}.shared-hero.settled:after{background:#4ade8021}.balance-number{transition:transform var(--motion-normal) var(--ease-spring)}.shared-hero:hover .balance-number{transform:scale(1.035)}tbody tr{transition:background-color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out);animation:row-in .36s var(--ease-out) both}tbody tr:nth-child(2){animation-delay:32ms}tbody tr:nth-child(3){animation-delay:64ms}tbody tr:nth-child(4){animation-delay:96ms}tbody tr:nth-child(5){animation-delay:.128s}tbody tr:nth-child(6){animation-delay:.16s}tbody tr:nth-child(7){animation-delay:.192s}tbody tr:nth-child(8){animation-delay:.224s}tbody tr:hover{background:#fffaf6}.table-panel tbody tr:hover td:first-child{box-shadow:inset 3px 0 #f97316}.tag,.split-summary span,.pending-invites span{transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion-fast) ease, filter var(--motion-fast) ease}.tag:hover,.split-summary span:hover,.pending-invites span:hover{filter:saturate(1.08);transform:translateY(-1px)scale(1.035)}.chart-wrap,.pie-row,.legend{animation:.65s .11s both fade-in}.recharts-wrapper{transition:filter var(--motion-normal) ease}.chart-panel:hover .recharts-wrapper,.category-panel:hover .recharts-wrapper{filter:saturate(1.06)}.legend>div{transition:transform var(--motion-fast) var(--ease-out), background-color var(--motion-fast) ease;border-radius:7px;padding:3px 4px}.legend>div:hover{background:#f8fafc;transform:translate(3px)}.modal-backdrop{animation:.18s ease-out both modal-backdrop-in}.modal{animation:modal-pop-in .39s var(--ease-spring) both;transform-origin:bottom}.form-grid>*,.auth-card>*{animation:rise-in .33s var(--ease-out) both}.form-grid>:nth-child(2),.auth-card>:nth-child(2){animation-delay:25ms}.form-grid>:nth-child(3),.auth-card>:nth-child(3){animation-delay:50ms}.form-grid>:nth-child(4),.auth-card>:nth-child(4){animation-delay:75ms}.form-grid>:nth-child(5),.auth-card>:nth-child(5){animation-delay:.1s}.form-grid>:nth-child(6),.auth-card>:nth-child(6){animation-delay:.125s}.form-grid>:nth-child(7),.auth-card>:nth-child(7){animation-delay:.15s}.form-grid>:nth-child(8),.auth-card>:nth-child(8){animation-delay:.175s}.segmented button,.participant-list label{transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion-fast) ease, color var(--motion-fast) ease, box-shadow var(--motion-fast) ease}.segmented button:hover,.participant-list label:hover{transform:translateY(-1px)}.segmented button.active{transform:scale(1.015)}.toast{transform-origin:100% 0;border:1px solid #ffffff14;animation:5s linear both toast-in-out;position:fixed;overflow:hidden}.toast:after{content:"";transform-origin:0;background:linear-gradient(90deg,#fb923c,#fdba74);height:3px;animation:5s linear both toast-bar;position:absolute;bottom:0;left:0;right:0}.toast:hover{box-shadow:0 16px 44px #0f172a47}.auth-copy,.auth-panel{animation:.52s both fade-in}.auth-copy{position:relative;overflow:hidden}.auth-copy:after{content:"";z-index:0;aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#f973162e,#0000 68%);border-radius:50%;width:min(42vw,520px);animation:9s ease-in-out infinite auth-glow;position:absolute;bottom:-18%;right:-15%}.auth-copy>*{z-index:1;position:relative}.auth-brand{animation:slide-from-left .52s var(--ease-out) both}.auth-copy>div:nth-child(2){animation:rise-in .62s var(--ease-out) 80ms both}.auth-features{animation:rise-in .62s var(--ease-out) .15s both}.auth-card{animation:rise-in .56s var(--ease-spring) 80ms both}.auth-features>div{transition:transform var(--motion-fast) var(--ease-spring), color var(--motion-fast) ease}.auth-features>div:hover{color:#fff;transform:translateY(-2px)}.invite-banner{animation:rise-in .4s var(--ease-spring) both}.empty svg{animation:2.8s ease-in-out infinite soft-float}.empty,.loading{animation:.42s both fade-in}@media (width<=820px){.sidebar nav button:hover,.space-nav button:hover{transform:none}.sidebar nav button:active{transform:scale(.94)}.sidebar nav button.active svg{transform:translateY(-2px)scale(1.12)}.modal{animation:mobile-sheet-in .34s var(--ease-out) both}.stat-card:hover,.member-card:hover,.space-card:hover,.settlement-suggestions>div:hover,.panel:hover{box-shadow:none;transform:none}.toast{transform-origin:bottom}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
