:root{--bg:#05060a;--bg-grad:radial-gradient(120% 90% at 50% 0%, #0b1020 0%, #05060a 60%);--glass:#ffffff0e;--glass-brd:#ffffff1a;--glass-hi:#ffffff24;--text:#f4f6fb;--text-dim:#9aa3b2;--accent:#a78bfa;--self:#ffb74d;--other:#5ee6ff;--owe:#ff8a6b;--owed:#6fe29b;--line:#fff;--ease-app:cubic-bezier(.22,1,.36,1);--dur-micro:.16s;--dur-element:.28s;--dur-view:.52s;--dur-zoom:1.4s}*,:before,:after{box-sizing:border-box}.font-clash{letter-spacing:-.02em;font-family:Clash Display,Inter,sans-serif}.money{font-variant-numeric:tabular-nums;font-family:Clash Display,Inter,sans-serif}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes bloomFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes floatInOut{0%{transform:translateY(0)}50%{transform:translateY(-3px)}to{transform:translateY(0)}}@keyframes trophyPulse{0%,to{border-color:#ffc46b40;box-shadow:inset 0 1px #ffffff14,0 0 10px -2px #ffc46b4d}50%{border-color:#ffc46b8c;box-shadow:inset 0 1px #ffffff1a,0 0 18px 1px #ffc46b8c}}.trophy-btn{animation:trophyPulse 2.8s var(--ease-app) infinite;transition:transform var(--dur-micro) var(--ease-app), box-shadow var(--dur-micro) var(--ease-app)}.trophy-btn svg{transition:transform var(--dur-element) var(--ease-app)}@media (hover:hover){.trophy-btn:hover{animation:none;transform:translateY(-1px)scale(1.08);box-shadow:inset 0 1px #ffffff1f,0 0 24px 3px #ffc46b99;border-color:#ffc46bb3!important}.trophy-btn:hover svg{transform:scale(1.12)rotate(-7deg)}}.trophy-btn:active{transform:scale(.94)}.profile-avatar{transition:transform var(--dur-micro) var(--ease-app), box-shadow var(--dur-micro) var(--ease-app), border-color var(--dur-micro) var(--ease-app)}@media (hover:hover){.profile-avatar:hover{transform:scale(1.1);box-shadow:0 0 16px #ffc46b66;border-color:#ffc46b99!important}}.profile-avatar:active{transform:scale(.95)}.leader-row{box-shadow:var(--row-glow,none);transition:transform var(--dur-element) var(--ease-app), box-shadow var(--dur-element) var(--ease-app)}@media (hover:hover){.leader-row:hover{transform:translate(4px)}}.lift{transition:transform var(--dur-micro) var(--ease-app), box-shadow var(--dur-micro) var(--ease-app)}@media (hover:hover){.lift:hover{transform:translateY(-1px)}}.lift:active{transform:translateY(1px)scale(.98)}@media (prefers-reduced-motion:reduce){.trophy-btn,.leader-row{animation:none!important}.trophy-btn:hover,.profile-avatar:hover,.leader-row:hover,.lift:hover,.invite-tile:hover,.invite-tile:hover .invite-tile-icon{transform:none}.login-aurora,.login-glow,.login-star,.coach-glow:after{animation:none!important}}.glass-panel{background:var(--glass);-webkit-backdrop-filter:blur(28px)saturate(1.4);border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hi), 0 24px 70px #0000008c;border-radius:18px}.glass-pill{background:var(--glass);-webkit-backdrop-filter:blur(28px)saturate(1.4);border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hi);border-radius:12px}.btn-primary{height:44px;color:var(--self);transition:all var(--dur-micro) var(--ease-app);cursor:pointer;background:#ffb74d26;border:1px solid #ffb74d4d;border-radius:12px;justify-content:center;align-items:center;padding:0 16px;font-family:Satoshi,sans-serif;font-weight:600;display:flex;box-shadow:inset 0 1px #ffb74d33,0 4px 12px #ffb74d14}.btn-primary:hover{background:#ffb74d40;transform:translateY(-1px);box-shadow:inset 0 1px #ffb74d4d,0 8px 16px #ffb74d26}.btn-primary:active{transform:translateY(1px)}.btn-secondary{background:var(--glass);height:44px;color:var(--text);border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hi);transition:all var(--dur-micro) var(--ease-app);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:0 16px;font-family:Satoshi,sans-serif;font-weight:600;display:flex}.btn-secondary:hover{background:#ffffff1a;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(1px)}.btn-destructive{height:44px;color:var(--owe);transition:all var(--dur-micro) var(--ease-app);cursor:pointer;background:#ff8a6b26;border:1px solid #ff8a6b4d;border-radius:12px;justify-content:center;align-items:center;padding:0 16px;font-family:Satoshi,sans-serif;font-weight:600;display:flex;box-shadow:inset 0 1px #ff8a6b33}.btn-destructive:hover{background:#ff8a6b40;transform:translateY(-1px)}.btn-ghost{color:var(--text-dim);transition:color var(--dur-micro) ease;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-ghost:hover{color:var(--text)}.expense-actions{opacity:0;pointer-events:none;transition:all var(--dur-micro) var(--ease-app);transform:translateY(-4px)}@media (hover:hover){.expense-row:hover .expense-actions{opacity:1;pointer-events:all;transform:translateY(0)}}@media (hover:none){.expense-actions{opacity:1;pointer-events:all;transform:translateY(0)}}.mobile-ledger-btn,.mobile-ledger-close{display:none}@media (width<=1200px){.insights-panel{z-index:21!important;width:340px!important;right:20px!important}.right-panel-glass{width:300px!important}}@media (width<=768px){.insights-panel{z-index:40!important;-webkit-backdrop-filter:blur(30px)saturate(1.3)!important;background:#06080efa!important;border-radius:0!important;width:100vw!important;height:100dvh!important;inset:0!important;box-shadow:inset 0 1px #ffffff0d!important}.right-panel-glass{transition:transform .4s cubic-bezier(.32,.72,0,1);transform:translateY(100%);z-index:20!important;border-radius:24px 24px 0 0!important;width:100%!important;max-height:62vh!important;inset:auto 0 0!important}.right-panel-glass.mobile-open{transform:translateY(0)}.mobile-ledger-btn{z-index:18;color:var(--text);cursor:pointer;align-items:center;gap:8px;padding:12px 20px;font-weight:600;position:fixed;bottom:24px;right:16px;box-shadow:0 8px 32px #00000080;display:flex!important}.mobile-ledger-close{display:block!important}.right-panel-glass:before{content:"";z-index:10;background:#fff3;border-radius:4px;width:36px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.top-bar-container{flex-wrap:nowrap!important}.top-bar-container .top-bar-left{flex:0 auto;min-width:0}.top-bar-container .top-bar-center{flex:auto;overflow:hidden}.top-bar-container .top-bar-right{flex:0 auto;min-width:0;margin-left:auto}.top-bar-container .top-bar-center .glass-pill{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.trip-actions-container{z-index:19;justify-content:space-between;display:flex;position:fixed;bottom:24px;left:16px;right:16px}.trip-actions-container>button{width:48%}body.bottom-sheet-open .trip-actions-container{bottom:calc(62vh + 16px)}.home-create-bar{flex-direction:column;align-items:stretch}.home-create-bar input{width:100%!important}.home-create-bar button{align-self:flex-start;margin-top:12px;width:40%!important}.expense-modal-container{width:calc(100vw - 32px)!important;max-width:none!important}.star-callout-panel{max-width:78vw!important}html{font-size:clamp(14px,4vw,16px)}}@media (display-mode:standalone){.mobile-ledger-btn{bottom:calc(24px + env(safe-area-inset-bottom))!important}}.login-cosmos{z-index:-2;background:var(--bg-grad);position:absolute;inset:0;overflow:hidden}.login-aurora{filter:blur(70px);opacity:.34;will-change:transform;border-radius:50%;position:absolute}.login-aurora.a1{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 55%, transparent) 0%, transparent 62%);width:62vmax;height:62vmax;animation:loginAuroraA 26s var(--ease-app) infinite alternate;top:-24vmax;left:-20vmax}.login-aurora.a2{background:radial-gradient(circle, color-mix(in srgb, var(--other) 45%, transparent) 0%, transparent 62%);width:56vmax;height:56vmax;animation:loginAuroraB 32s var(--ease-app) infinite alternate;top:-14vmax;right:-22vmax}.login-aurora.a3{background:radial-gradient(circle, color-mix(in srgb, var(--self) 34%, transparent) 0%, transparent 62%);width:52vmax;height:52vmax;animation:loginAuroraC 30s var(--ease-app) infinite alternate;bottom:-28vmax;left:14%}.login-glow{filter:blur(80px);opacity:.22;will-change:transform;background:radial-gradient(circle, color-mix(in srgb, var(--accent) 50%, transparent) 0%, color-mix(in srgb, var(--other) 30%, transparent) 45%, transparent 70%);width:40vmax;height:40vmax;animation:loginGlowDrift 40s var(--ease-app) infinite alternate;border-radius:50%;position:absolute;top:20%;left:30%}.login-stars{width:100%;height:100%;position:absolute;inset:0}.login-star{fill:#fff;opacity:.5;animation-name:loginTwinkle;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes loginAuroraA{0%{transform:translate(0)scale(1)}to{transform:translate(4vmax,3vmax)scale(1.08)}}@keyframes loginAuroraB{0%{transform:translate(0)scale(1)}to{transform:translate(-3vmax,4vmax)scale(1.1)}}@keyframes loginAuroraC{0%{transform:translate(0)scale(1)}to{transform:translate(3vmax,-3vmax)scale(1.06)}}@keyframes loginGlowDrift{0%{transform:translate(-6vmax,-4vmax)scale(1)}to{transform:translate(6vmax,5vmax)scale(1.12)}}@keyframes loginTwinkle{0%,to{opacity:.14}50%{opacity:.85}}.login-card{box-shadow:inset 0 1px 0 var(--glass-hi), 0 30px 80px #0009, 0 0 60px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:24px}.login-card:before{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(130% 80% at 50% 0,#ffffff12,#0000 58%);position:absolute;inset:0}.onb-overlay{z-index:90;pointer-events:all;text-align:center;padding:max(28px, env(safe-area-inset-top)) 24px max(28px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(2px);background:radial-gradient(120% 90% at 50% 32%,#04060c80,#020408cc);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.onb-beat{flex-direction:column;align-items:center;gap:18px;width:100%;max-width:460px;display:flex}.onb-motif{margin-bottom:2px}.onb-title{color:var(--text);letter-spacing:-.02em;margin:0;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:700;line-height:1.2}.onb-body{color:var(--text-dim);max-width:30rem;margin:0;font-size:.98rem;line-height:1.55}.onb-cta{color:#fff;cursor:pointer;height:50px;transition:transform var(--dur-micro) var(--ease-app), box-shadow var(--dur-micro) var(--ease-app);background:linear-gradient(#ffc46b,#e8963a);border:none;border-radius:14px;margin-top:8px;padding:0 30px;font-family:inherit;font-size:.98rem;font-weight:700;box-shadow:inset 0 1px #ffffff4d,0 8px 22px #e8963a66}.onb-cta:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff4d,0 10px 26px #e8963a80}.onb-cta:active{transform:translateY(1px)}.onb-pills{flex-direction:column;gap:12px;width:100%;max-width:340px;margin-top:2px;display:flex}.onb-pill{cursor:pointer;width:100%;color:var(--text);text-align:center;border:1px solid var(--glass-brd);box-shadow:inset 0 1px 0 var(--glass-hi);transition:transform var(--dur-micro) var(--ease-app), background var(--dur-micro) var(--ease-app), border-color var(--dur-micro) var(--ease-app);background:#ffffff0d;border-radius:14px;padding:15px 20px;font-family:inherit;font-size:.98rem;font-weight:600}.onb-pill:hover{background:#ffb74d1f;border-color:#ffb74d66;transform:translateY(-1px)}.onb-pill:active{transform:translateY(1px)}.onb-textlink{cursor:pointer;color:var(--text-dim);opacity:.7;transition:opacity var(--dur-micro) var(--ease-app);background:0 0;border:none;margin-top:4px;font-family:inherit;font-size:.82rem}.onb-textlink:hover{opacity:1}.onb-skip{top:max(20px, env(safe-area-inset-top));cursor:pointer;color:var(--text-dim);opacity:.45;transition:opacity var(--dur-micro) var(--ease-app);background:0 0;border:none;font-family:inherit;font-size:.8rem;position:absolute;right:20px}.onb-skip:hover{opacity:.9}.coach-glow:after{content:"";border-radius:inherit;pointer-events:none;animation:coachPulse 1.8s var(--ease-app) infinite;position:absolute;inset:-2px;box-shadow:0 0 0 1.5px #ffb74d80,0 0 22px 2px #ffb74d59}@keyframes coachPulse{0%,to{opacity:.5}50%{opacity:1}}.invite-sheet-glow{z-index:0;pointer-events:none;filter:blur(28px);background:radial-gradient(58% 58%,#ffb74d2b 0%,#a78bfa17 44%,#0000 72%);width:120%;height:66%;position:absolute;top:-48%;left:50%;transform:translate(-50%)}.invite-sheet-handle,.invite-sheet-head,.invite-sheet-grid,.invite-sheet-link{z-index:1;position:relative}.invite-sheet-handle{cursor:grab;touch-action:none;justify-content:center;padding-bottom:4px;display:flex}.invite-sheet-handle span{background:#ffffff42;border-radius:4px;width:44px;height:5px}.invite-sheet-head{align-items:center;gap:13px;display:flex}.invite-sheet-brand{border:1px solid color-mix(in srgb, var(--self) 30%, var(--glass-brd));background:radial-gradient(120% 120% at 30% 20%,#ffb74d33,#ffb74d0d);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:inset 0 1px #ffffff24,0 8px 20px -8px #ffb74d73}.invite-sheet-titles{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.invite-sheet-title{color:var(--text);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:1.24rem;font-weight:700;line-height:1.15;overflow:hidden}.invite-sheet-sub{color:var(--text-dim);font-size:.8rem;line-height:1.35}.invite-sheet-close{cursor:pointer;border:1px solid var(--glass-brd);width:32px;height:32px;color:var(--text-dim);transition:background var(--dur-micro) var(--ease-app), color var(--dur-micro) var(--ease-app), transform var(--dur-micro) var(--ease-app);background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (hover:hover){.invite-sheet-close:hover{color:var(--text);background:#ffffff1a}}.invite-sheet-close:active{transform:scale(.92)}.invite-sheet-grid{grid-template-columns:repeat(4,1fr);gap:12px;width:100%;display:grid}@media (width<=768px){.invite-sheet-grid{grid-template-columns:repeat(3,1fr);gap:11px}}.invite-tile{cursor:pointer;border:1px solid var(--glass-brd);min-height:92px;box-shadow:inset 0 1px 0 var(--glass-hi);color:var(--text-dim);text-align:center;transition:transform var(--dur-micro) var(--ease-app), background var(--dur-micro) var(--ease-app), border-color var(--dur-micro) var(--ease-app), box-shadow var(--dur-micro) var(--ease-app), color var(--dur-micro) var(--ease-app);background:linear-gradient(#ffffff0e,#ffffff05);border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:15px 6px 12px;font-family:Satoshi,sans-serif;font-size:.74rem;font-weight:600;display:flex;position:relative}.invite-tile-icon{width:48px;height:48px;color:var(--tint);background:radial-gradient(130% 130% at 30% 22%, color-mix(in srgb, var(--tint) 32%, transparent) 0%, color-mix(in srgb, var(--tint) 9%, transparent) 62%, transparent 100%), #ffffff08;box-shadow:inset 0 1px 0 #ffffff29, inset 0 0 0 1px color-mix(in srgb, var(--tint) 16%, transparent);transition:transform var(--dur-element) var(--ease-app), box-shadow var(--dur-element) var(--ease-app);border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.invite-tile-label{transition:color var(--dur-micro) var(--ease-app)}@media (hover:hover){.invite-tile:hover{border-color:color-mix(in srgb, var(--tint) 44%, var(--glass-brd));box-shadow:inset 0 1px 0 var(--glass-hi), 0 12px 26px #0006, 0 0 24px -7px color-mix(in srgb, var(--tint) 65%, transparent);color:var(--text);background:linear-gradient(#ffffff17,#ffffff09);transform:translateY(-3px)}.invite-tile:hover .invite-tile-icon{box-shadow:inset 0 1px 0 #ffffff38, inset 0 0 0 1px color-mix(in srgb, var(--tint) 30%, transparent), 0 8px 20px -4px color-mix(in srgb, var(--tint) 48%, transparent);transform:translateY(-1px)scale(1.05)}}.invite-tile:active{transform:translateY(0)scale(.96)}.invite-sheet-link{border:1px solid var(--glass-brd);width:100%;box-shadow:inset 0 1px 0 var(--glass-hi);color:var(--text-dim);background:#ffffff0b;border-radius:14px;align-items:center;gap:10px;padding:10px 10px 10px 14px;font-size:.82rem;display:flex}.invite-sheet-link-ico{color:var(--self);opacity:.85;flex-shrink:0}.invite-sheet-link-url{text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all;min-width:0;color:var(--text);flex:1;font-family:Satoshi,sans-serif;overflow:hidden}.invite-sheet-link-btn{cursor:pointer;width:34px;height:34px;color:var(--self);transition:background var(--dur-micro) var(--ease-app), transform var(--dur-micro) var(--ease-app), color var(--dur-micro) var(--ease-app), border-color var(--dur-micro) var(--ease-app);background:#ffb74d1f;border:1px solid #ffb74d47;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (hover:hover){.invite-sheet-link-btn:hover{background:#ffb74d33;transform:translateY(-1px)}}.invite-sheet-link-btn:active{transform:scale(.92)}.invite-sheet-link-btn[data-copied=true]{color:var(--owed);background:#6fe29b29;border-color:#6fe29b66}
