:root{--bg:#ffffff;--surface:#fafafa;--surface-2:#f4f4f5;--ink:#09090b;--ink-2:#52525b;--ink-3:#a1a1aa;--line:#e4e4e7;--line-2:#d4d4d8;--warn:#b45309;--over:#b91c1c;--inv:#ffffff;--e1:0 1px 2px rgba(0,0,0,.05);--e2:0 2px 5px rgba(0,0,0,.05),0 8px 18px rgba(0,0,0,.07);--e3:0 6px 12px rgba(0,0,0,.07),0 18px 40px rgba(0,0,0,.13);--spring:cubic-bezier(.32,.72,0,1);--out:cubic-bezier(.22,.75,.22,1);--ease:cubic-bezier(.45,.05,.2,1);--pop:cubic-bezier(.3,1.18,.5,1);--t1:.14s;--t2:.22s;--t3:.34s;--t4:.46s;--rail:236px;--side:316px}[data-theme=dark]{--bg:#0a0a0a;--surface:#131316;--surface-2:#1c1c20;--ink:#fafafa;--ink-2:#a1a1aa;--ink-3:#71717a;--line:#26262b;--line-2:#3f3f46;--warn:#f59e0b;--over:#f87171;--inv:#09090b;--e1:0 1px 2px rgba(0,0,0,.5);--e2:0 2px 5px rgba(0,0,0,.5),0 8px 18px rgba(0,0,0,.55);--e3:0 6px 12px rgba(0,0,0,.55),0 18px 40px rgba(0,0,0,.72)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:ui-sans-serif,-apple-system,Segoe UI,Inter,system-ui,sans-serif;background:var(--bg);color:var(--ink);font-feature-settings:"tnum" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:default;overscroll-behavior-y:none}::selection{background:var(--ink);color:var(--inv)}:focus{outline:none}button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--ink)}button,[role=button],.chip,.bcard,.li,.exp,a{cursor:pointer}a{color:inherit;text-decoration:none}.rail,.tabs,.topbar,.eyebrow,.exphead{-webkit-user-select:none;user-select:none}.money{font-variant-numeric:tabular-nums;letter-spacing:-.025em;font-feature-settings:"tnum" 1,"case" 1}.neg{color:var(--over)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;opacity:.022;background-size:170px 170px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='170' height='170' filter='url(%23n)'/%3E%3C/svg%3E")}[data-theme=dark] .grain{opacity:.038}.app{height:100%;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background-color var(--t4) var(--ease)}.app.pushed{background:#000}.surface{flex:1 1 auto;min-width:0;min-height:0;display:flex;overflow:hidden;transform-origin:50% 0;transition:transform var(--t4) var(--spring),border-radius var(--t4) var(--spring),filter var(--t3) var(--ease),opacity var(--t3) var(--ease)}.app.pushed .surface{transform:scale(.922) translateY(14px);border-radius:20px}.app.dragging .surface{transition:none}.rail{display:none;flex-direction:column;width:var(--rail);flex:none;border-right:1px solid var(--line);padding:20px 14px;background:var(--surface)}.rail .brand{font-size:17px;font-weight:680;letter-spacing:-.035em;padding:0 10px;margin-bottom:20px}.newbtn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;font:inherit;font-size:13px;font-weight:560;padding:11px;border-radius:11px;border:0;background:var(--ink);color:var(--inv);cursor:pointer;margin-bottom:20px;position:relative;overflow:hidden}.newbtn kbd{font:inherit;font-size:11px;opacity:.55;border:1px solid currentColor;border-radius:4px;padding:0 4px}.rail nav{display:flex;flex-direction:column;gap:1px;position:relative}.rail nav a{display:flex;align-items:center;gap:11px;width:100%;font-size:13px;padding:9px 10px;color:var(--ink-2);border-radius:9px;position:relative;z-index:1}.rail nav a:hover{color:var(--ink)}.rail nav a[aria-current=page]{color:var(--ink);font-weight:580}.rail nav svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.rail nav .badge{margin-left:auto;font-size:11px;font-weight:640;background:var(--ink);color:var(--inv);border-radius:999px;padding:1px 6px}.railpill{position:absolute;left:0;right:0;top:0;border-radius:9px;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line),var(--e1);z-index:0;pointer-events:none;opacity:0;transition:transform var(--t3) var(--out),height var(--t3) var(--out),opacity var(--t2) var(--ease)}.rail .me{margin-top:auto;display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px}.rail .me:hover{background:var(--surface-2)}.main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.topbar{display:none;align-items:center;gap:14px;flex:none;padding:14px 28px;border-bottom:1px solid var(--line);position:relative;z-index:4;transition:box-shadow var(--t3) var(--ease),background-color var(--t3) var(--ease)}.topbar.scrolled{box-shadow:0 1px 0 var(--line),0 6px 18px #0000000d;background:color-mix(in srgb,var(--bg) 76%,transparent);backdrop-filter:blur(18px) saturate(1.8);-webkit-backdrop-filter:blur(18px) saturate(1.8)}.topbar .search{margin-left:0}.topbar h2{font-size:15px;font-weight:620;letter-spacing:-.02em;transition:font-size var(--t3) var(--out)}.topbar.scrolled h2{font-size:15px}.search{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3);background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:7px 12px;min-width:210px}.search kbd{margin-left:auto;font:inherit;font-size:11px;border:1px solid var(--line-2);border-radius:4px;padding:0 4px}.scroll{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;min-height:0;-webkit-overflow-scrolling:touch}.scroll::-webkit-scrollbar{display:none}.wrapper{padding:0 22px calc(84px + env(safe-area-inset-bottom))}.apphead{padding:8px 22px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.h-screen{font-size:24px;font-weight:660;letter-spacing:-.042em}.backbtn{font:inherit;font-size:20px;background:none;border:0;color:var(--ink);padding:4px 8px 4px 0}.icobtn{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:var(--bg);display:grid;place-items:center;font-size:13px;color:var(--ink-2);flex:none;position:relative;overflow:hidden}.icobtn:hover{background:var(--surface-2);border-color:var(--line-2)}.cols{display:flex;flex-direction:column;gap:22px}.col-side{display:flex;flex-direction:column;gap:12px}.grid2{display:flex;flex-direction:column;gap:11px}.eyebrow{font-size:11px;letter-spacing:.145em;text-transform:uppercase;color:var(--ink-3);font-weight:640}.sub{font-size:13px;color:var(--ink-3);line-height:1.55}.card{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:16px;position:relative;box-shadow:var(--e1),inset 0 1px #ffffffb8}.list{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--bg);box-shadow:var(--e1),inset 0 1px #ffffffb8}[data-theme=dark] .card,[data-theme=dark] .list,[data-theme=dark] .bcard,[data-theme=dark] .sheet{box-shadow:var(--e1),inset 0 1px #ffffff0e}.card.flat{background:var(--surface);box-shadow:none}.card.dark{background:var(--ink);border-color:var(--ink);color:var(--inv);overflow:hidden}.card.dark .sub,.card.dark .eyebrow{color:var(--inv);opacity:.55}.card.dark>*{position:relative;z-index:1}.card.dark:before{content:"";position:absolute;top:-45%;right:-45%;bottom:-45%;left:-45%;z-index:0;pointer-events:none;background:conic-gradient(from 0deg,transparent 0 73%,rgba(255,255,255,.05) 82%,transparent 90%);animation:sheen 14s linear infinite}@keyframes sheen{to{transform:rotate(360deg)}}.card:after,.bcard:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity var(--t4) var(--ease);background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),rgba(0,0,0,.05),transparent 72%)}[data-theme=dark] .card:after,[data-theme=dark] .bcard:after{background:radial-gradient(240px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.07),transparent 72%)}.row{display:flex;align-items:center;gap:12px}.spread{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.spread>*{min-width:0}.hr{height:1px;background:var(--line);margin:14px 0}.hero{font-size:40px;font-weight:700;letter-spacing:-.05em;margin:6px 0 2px}.metric{font-size:24px;font-weight:680;letter-spacing:-.05em}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;font:inherit;font-size:15px;font-weight:560;padding:13px;border-radius:12px;border:1px solid var(--ink);background:var(--ink);color:var(--inv);letter-spacing:-.01em;position:relative;overflow:hidden}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}.btn.quiet{background:var(--surface);color:var(--ink-2);border-color:transparent}.btn.sm{width:auto;padding:9px 15px;font-size:13px;border-radius:10px}.btn[disabled]{background:var(--surface-2);color:var(--ink-3);border-color:transparent;box-shadow:none;pointer-events:none}.btn.ghost[disabled]{background:transparent;border-color:var(--line)}.field{width:100%;font:inherit;font-size:17px;padding:13px 15px;border:1px solid var(--line-2);border-radius:12px;background:var(--bg);color:var(--ink);transition:border-color var(--t2) var(--ease),box-shadow var(--t2) var(--ease)}.field:focus{border-color:var(--ink)}.field:focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--ink)}.pctbox{width:58px;flex:none;font:inherit;font-size:17px;text-align:right;padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font-variant-numeric:tabular-nums;-moz-appearance:textfield}.pctbox::-webkit-outer-spin-button,.pctbox::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pctbox:focus{border-color:var(--ink);outline:none}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;height:44px;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:var(--surface-2)}input[type=range]::-moz-range-track{height:6px;border-radius:999px;background:var(--surface-2)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--ink);border:2px solid var(--bg);margin-top:-8px;box-shadow:var(--e1);transition:transform var(--t2) var(--out)}input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--ink);border:2px solid var(--bg);box-shadow:var(--e1)}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.18)}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--ink)}.field::placeholder{color:var(--ink-3)}.chips{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;position:relative}.chips.wrap,.sheet .chips{flex-wrap:wrap;overflow:visible;row-gap:7px}.chips::-webkit-scrollbar{display:none}.chip{font-size:12px;padding:8px 13px;min-height:34px;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);white-space:nowrap;font-weight:500;position:relative;z-index:1;overflow:hidden}.chip:hover{border-color:var(--line-2);background:var(--surface)}.chip[data-on="1"]{background:var(--ink);color:var(--inv);border-color:var(--ink);font-weight:580}.chip[data-on="1"]:hover{background:var(--ink);border-color:var(--ink)}.chip[disabled]{opacity:.4;pointer-events:none}.segpill{position:absolute;top:0;left:0;height:100%;border-radius:999px;background:var(--ink);z-index:0;pointer-events:none;opacity:0;transition:transform var(--t3) var(--out),width var(--t3) var(--out),opacity var(--t2) var(--ease)}.emojis{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:5px}.emojis button{aspect-ratio:1;display:grid;place-items:center;font-size:17px;line-height:1;border:1px solid var(--line);background:var(--bg);border-radius:11px;transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease),transform var(--t2) var(--out)}.emojis button:hover{background:var(--surface);border-color:var(--line-2)}.emojis button:active{transform:scale(.92)}.emojis button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--ink)}.av{width:26px;height:26px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;font-size:11px;font-weight:640;color:var(--ink-2);flex:none}.av.lg{width:34px;height:34px;font-size:12px}.av.ghost{border-style:dashed}.stack{display:flex}.stack .av+.av{margin-left:-8px}.tag{font-size:11px;font-weight:640;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:5px;background:var(--surface-2);color:var(--ink-2)}.tag.live{background:var(--ink);color:var(--inv)}.pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:5px;vertical-align:middle;animation:breathe 2.4s var(--ease) infinite}@keyframes breathe{0%,to{opacity:1}50%{opacity:.42}}.bar{height:5px;background:var(--surface-2);border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:var(--ink);border-radius:999px;transition:width .52s var(--out)}.bar i.over{background:var(--over)}.li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line);font-size:13px;position:relative;overflow:hidden}.li:last-child{border-bottom:0}.li .m{color:var(--ink-3);font-size:12px;display:block}.sw{width:44px;height:26px;border-radius:99px;background:var(--line-2);position:relative;flex:none;border:0;transition:background var(--t2) var(--ease)}.sw:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform var(--t2) var(--out);box-shadow:0 1px 2px #00000040}.sw[data-on="1"]{background:var(--ink)}.sw[data-on="1"]:after{transform:translate(18px)}.exps{display:flex;flex-direction:column}.exphead{display:none;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:640;padding:0 0 9px;border-bottom:1px solid var(--line)}.exp{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);position:relative;overflow:hidden;text-align:left;width:100%;background:none;border-left:0;border-right:0;border-top:0}.exp:last-child{border-bottom:0}.exp .ico{width:34px;height:34px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;font-size:15px;flex:none}.exp .t{flex:1;min-width:0}.exp .t b{font-size:13px;font-weight:540;display:block;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp .t span{font-size:11px;color:var(--ink-3)}.exp .amt{font-size:13px;font-weight:600;letter-spacing:-.02em;text-align:right}.c-when,.c-budget,.c-who{display:none;font-size:12px;color:var(--ink-2)}.rowacts{display:none;gap:3px;justify-content:flex-end;flex:none}.ra{width:30px;height:30px;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--ink-3);font-size:12px;display:grid;place-items:center;transition:background var(--t2) var(--ease),color var(--t2) var(--ease),transform var(--t2) var(--out)}.ra:hover{background:var(--surface-2);color:var(--ink);border-color:var(--line)}.ra:active{transform:scale(.88)}.carousel{display:flex;gap:11px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;margin:0 -22px;padding:0 22px 4px}.carousel::-webkit-scrollbar{display:none}.bcard{flex:none;width:158px;scroll-snap-align:start;border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--bg);text-align:left;font:inherit;color:var(--ink);position:relative;box-shadow:var(--e1),inset 0 1px #ffffffb8}.bcard .em{font-size:17px}.bcard .nm{font-size:12px;color:var(--ink-3);margin:8px 0 3px}.bcard .vl{font-size:20px;font-weight:660;letter-spacing:-.035em}.bcard .sm{font-size:11px;color:var(--ink-3);margin-top:9px}.bcard.new{border-style:dashed;display:grid;place-items:center;color:var(--ink-3);min-height:132px}.tabs{display:flex;flex:none;border-top:1px solid var(--line);background:var(--bg);padding:9px 8px calc(22px + env(safe-area-inset-bottom));position:relative}.tabs a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--ink-3);font-size:11px;padding:3px 0;position:relative;z-index:1;overflow:hidden;border-radius:11px}.tabs a svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.tabs a[aria-current=page]{color:var(--ink);font-weight:600}.tabs a[aria-current=page] svg{animation:pop var(--t3) var(--pop)}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.09)}to{transform:scale(1)}}.tabpill{position:absolute;top:6px;height:34px;border-radius:11px;background:var(--surface-2);z-index:0;pointer-events:none;opacity:0;transition:transform var(--t3) var(--out),width var(--t3) var(--out),opacity var(--t2) var(--ease)}.fab{position:absolute;right:20px;bottom:calc(88px + env(safe-area-inset-bottom));width:52px;height:52px;border-radius:50%;background:var(--ink);color:var(--inv);border:0;font-size:24px;box-shadow:var(--e3);display:grid;place-items:center;z-index:5}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;opacity:0;pointer-events:none;z-index:20;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);transition:opacity var(--t3) var(--ease),backdrop-filter var(--t3) var(--ease)}.scrim.on{opacity:1;pointer-events:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet{position:absolute;left:0;right:0;bottom:0;background:var(--bg);border-radius:24px 24px 0 0;border-top:1px solid var(--line);transform:translateY(101%);z-index:21;max-height:88%;display:flex;flex-direction:column;box-shadow:var(--e1),inset 0 1px #ffffffb8;transition:transform var(--t4) var(--spring),opacity var(--t2) var(--ease);pointer-events:none}.sheet.on{transform:translateY(0);pointer-events:auto}.sheet.dragging{transition:none}.grab{width:34px;height:4px;background:var(--line-2);border-radius:99px;margin:9px auto 4px;flex:none;cursor:grab}.sheet.dragging .grab{cursor:grabbing}.sheet .body{padding:8px 22px calc(26px + env(safe-area-inset-bottom));overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:0}.sheet .field{margin-bottom:9px}.sheet .eyebrow{margin-bottom:8px}.sheet .body::-webkit-scrollbar{display:none}.keys{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:14px 0}.keys button{font:inherit;font-size:20px;font-weight:500;padding:13px;background:none;border:0;border-radius:11px;color:var(--ink);position:relative;overflow:hidden}.keys button:hover{background:var(--surface-2)}.toast{position:absolute;left:50%;bottom:calc(26px + env(safe-area-inset-bottom));transform:translate(-50%,150%);z-index:60;display:flex;align-items:center;gap:14px;background:var(--ink);color:var(--inv);padding:11px 13px 11px 16px;border-radius:13px;box-shadow:var(--e3);font-size:13px;opacity:0;max-width:86%;transition:transform var(--t4) var(--spring),opacity var(--t2) var(--ease)}.toast.on{transform:translate(-50%);opacity:1}.toast-msg{flex:1;min-width:0}.toast .undo{font:inherit;font-size:12px;font-weight:640;background:none;border:0;color:var(--inv);white-space:nowrap;padding:4px 8px;border-radius:7px;opacity:.75;transition:opacity var(--t1),background var(--t1)}.toast .undo:hover{opacity:1;background:#96969640}.toast .undo.primary{opacity:1;background:#96969638}.toast .undo.primary:hover{background:#96969657}.tip{position:fixed;z-index:95;pointer-events:none;background:var(--ink);color:var(--inv);font-size:11px;font-weight:520;padding:5px 9px;border-radius:7px;white-space:nowrap;opacity:0;transform:translateY(4px);box-shadow:var(--e2);transition:opacity var(--t1) var(--ease),transform var(--t2) var(--out)}.tip.on{opacity:1;transform:none}.ring{transition:stroke-dashoffset .64s var(--out)}.arc{cursor:pointer;transition:stroke-dasharray .54s var(--out),stroke-dashoffset .54s var(--out),stroke-width var(--t2) var(--out),opacity var(--t2) var(--ease)}.arc.dim{opacity:.2}.arc.hot{stroke-width:9}.legend{display:flex;flex-direction:column;gap:2px;flex:1}.lrow{display:flex;align-items:center;gap:9px;font-size:12px;padding:5px 6px;margin:0 -6px;border-radius:8px;overflow:hidden;text-align:left;background:none;border:0;color:inherit;font:inherit;transition:background var(--t2) var(--ease),opacity var(--t2) var(--ease),transform var(--t3) var(--out)}.lrow i{width:9px;height:9px;border-radius:3px;flex:none;transition:transform var(--t3) var(--out)}.lrow b{margin-left:auto}.lrow:hover{background:var(--surface)}.lrow:hover i{transform:scale(1.28)}.lrow.dim{opacity:.3}.heat{display:flex;gap:5px}.heat>div{flex:1;text-align:center}.heat b{display:block;height:38px;border-radius:7px;background:var(--ink);margin-bottom:5px;transform-origin:50% 100%;transition:opacity .4s var(--ease),transform .48s var(--out)}.heat span{font-size:11px;color:var(--ink-3)}.heat>div:hover b{opacity:1!important}.daybar{border-radius:5px;background:var(--ink);transform-origin:50% 100%;transition:transform .5s var(--out),height .5s var(--out)}.cmpbar{border-radius:6px;transform-origin:50% 100%;transition:transform .5s var(--out),height .5s var(--out)}@keyframes riseIn{0%{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}@keyframes inFwd{0%{opacity:0;transform:translate3d(16px,0,0)}to{opacity:1;transform:none}}@keyframes inBack{0%{opacity:0;transform:translate3d(-14px,0,0)}to{opacity:1;transform:none}}@keyframes inLat{0%{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:none}}.screen{animation:inLat var(--t3) var(--out)}.screen.dir-fwd{animation:inFwd var(--t4) var(--out)}.screen.dir-back{animation:inBack var(--t4) var(--out)}.screen .h-screen{animation:inLat var(--t3) var(--out) both;animation-delay:40ms}.anim{animation:riseIn var(--t3) var(--out) both}.reveal{opacity:0;transform:translate3d(0,12px,0);transition:opacity var(--t4) var(--out),transform var(--t4) var(--out)}.reveal.shown{opacity:1;transform:none}.btn,.chip,.li,.exp,.ra,.tabs a,.rail nav a,.newbtn,.icobtn,.bcard,.card.dark,.sw,.lrow{transition:transform var(--t2) var(--out),background-color var(--t2) var(--ease),border-color var(--t2) var(--ease),box-shadow var(--t2) var(--out),color var(--t2) var(--ease),opacity var(--t2) var(--ease)}.btn:active,.chip:active,.icobtn:active,.newbtn:active,.li:active,.exp:active,.ra:active{transition-duration:var(--t1)}.tabs a:active{transform:scale(.92);transition-duration:var(--t1)}html[data-motion=off] *{animation:none!important;transition:none!important}.sheet:not(.on),.toast:not(.on),.scrim:not(.on),.tip:not(.on){pointer-events:none!important}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (min-width:760px){.rail{display:flex;width:76px;padding:20px 12px}.rail .brand{font-size:0;text-align:center;margin-bottom:16px}.rail .brand:after{content:"P";font-size:20px;font-weight:700}.newbtn{padding:11px 0}.newbtn .lbl,.newbtn kbd{display:none}.rail nav a{justify-content:center;padding:11px 0}.rail nav .lbl,.rail nav .badge{display:none}.rail .me{justify-content:center;padding:9px 0}.rail .me .who{display:none}.topbar{display:flex}.tabs,.fab,.apphead{display:none}.wrapper{padding:22px 28px 40px;max-width:1180px;margin:0 auto;width:100%}.carousel{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;margin:0;padding:0}.bcard{width:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.exphead{display:flex;align-items:center;gap:12px}.exphead .c-when,.exphead .c-budget,.exphead .c-who{display:block}.exphead .sp{flex:1}.exphead .amt{width:96px;text-align:right}.exp{padding:11px 8px 11px 0;border-radius:8px}.exp:hover{background:var(--surface)}.c-when{display:block;width:92px;flex:none}.c-budget{display:block;width:120px;flex:none}.exp .amt{width:96px}.rowacts{display:flex;width:88px;opacity:0;transform:translate(5px);transition:opacity var(--t2) var(--ease),transform var(--t3) var(--out)}.exp:hover .rowacts,.exp:focus-within .rowacts{opacity:1;transform:none}.exphead .rowacts{display:flex;opacity:0}.card:hover:after,.bcard:hover:after{opacity:1}.bcard:hover,.card.dark:hover{transform:translateY(-2px);box-shadow:var(--e2)}.bcard:active,.card.dark:active{transform:translateY(0);box-shadow:var(--e1);transition-duration:var(--t1)}.btn:hover{box-shadow:var(--e2)}.btn:active{transform:scale(.99);transition-duration:var(--t1)}.li:hover{background:var(--surface)}.sheet{left:50%;right:auto;bottom:auto;top:50%;width:min(460px,calc(100vw - 48px));max-height:min(84%,calc(100vh - 64px));border-radius:18px;border:1px solid var(--line);transform:translate(-50%,-46%) scale(.97);opacity:0;box-shadow:0 24px 64px #00000038}.sheet.on{transform:translate(-50%,-50%) scale(1);opacity:1}.grab{display:none}.sheet .body{padding:22px 24px 24px}.app.pushed{background:transparent}.app.pushed .surface{transform:none;border-radius:0;filter:blur(2px) saturate(.85);opacity:.7}}@media (min-width:900px) and (max-width:1059px){.wrapper{max-width:900px}.grid2{grid-template-columns:1fr 1fr}}@media (min-width:1060px){.rail{width:var(--rail);padding:20px 14px}.rail .brand{font-size:17px;text-align:left}.rail .brand:after{content:"ocketful"}.newbtn{padding:11px}.newbtn .lbl,.newbtn kbd{display:inline}.rail nav a{justify-content:flex-start;padding:9px 10px}.rail nav .lbl,.rail nav .badge{display:inline}.rail .me{justify-content:flex-start;padding:9px 10px}.rail .me .who{display:block}.cols{display:grid;grid-template-columns:minmax(0,1fr) var(--side);gap:26px;align-items:start}.wrapper{padding:26px 34px 44px}.hero{font-size:52px}.c-who{display:block;width:104px;flex:none}}.wrapper.setup{max-width:460px;margin:0 auto;padding:28px 22px 64px;width:100%}@media (min-width:760px){.wrapper.setup{max-width:480px;padding:40px 24px 72px}}.setup-h{font-size:24px;font-weight:680;letter-spacing:-.04em;line-height:1.18;margin:6px 0 10px}@media (min-width:760px){.setup-h{font-size:30px}}.steps{display:flex;gap:6px;margin-bottom:26px}.step{height:3px;flex:1;border-radius:999px;background:var(--surface-2);transition:background var(--t3) var(--ease)}.step.on{background:var(--ink)}.step.done{background:var(--ink-3)}.wrapper.setup .eyebrow{margin:0 0 8px}.wrapper.setup .field,.wrapper.setup .chips{margin-bottom:0}.amountwrap{position:relative;display:flex;align-items:center}.amountwrap .sym{position:absolute;left:15px;font-size:17px;font-weight:600;color:var(--ink-3);pointer-events:none}.amountwrap .field{padding-left:44px;font-size:20px;font-weight:600;letter-spacing:-.02em}.picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.pick{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 8px;border:1px solid var(--line);border-radius:14px;background:var(--bg);color:var(--ink);font:inherit;font-size:12px;transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease),transform var(--t2) var(--out),box-shadow var(--t2) var(--out)}.pick:hover{border-color:var(--line-2);background:var(--surface)}.pick:active{transform:scale(.96)}.pick-emoji{font-size:20px;line-height:1}.pick-name{font-weight:520;text-align:center;line-height:1.25;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.pick.on{background:var(--ink);border-color:var(--ink);color:var(--inv);font-weight:580;box-shadow:var(--e2)}.wrapper.setup details{margin:0}.wrapper.setup details summary{list-style:none;cursor:pointer;font-size:12px;color:var(--ink-3);padding:8px 0;display:inline-flex;align-items:center;gap:6px}.wrapper.setup details summary::-webkit-details-marker{display:none}.wrapper.setup details summary:after{content:"›";transition:transform var(--t2) var(--out);display:inline-block}.wrapper.setup details[open] summary:after{transform:rotate(90deg)}.wrapper.setup details summary:hover{color:var(--ink)}.setup-field{margin-bottom:20px}.curlist{display:flex;flex-direction:column;gap:2px;max-height:46vh;overflow-y:auto;scrollbar-width:none;margin:0 -6px}.curlist::-webkit-scrollbar{display:none}.currow{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;padding:10px;border:1px solid transparent;border-radius:11px;background:none;color:var(--ink);transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease)}.currow:hover{background:var(--surface)}.currow.on{background:var(--ink);color:var(--inv);border-color:var(--ink)}.currow.on .sub{color:var(--inv);opacity:.6}.cursym{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:10px;background:var(--surface-2);font-size:13px;font-weight:640}.currow.on .cursym{background:#96969640;color:var(--inv)}.curname{flex:1;min-width:0;font-size:13px}.curname b{font-weight:600}.curbtn{display:none;margin-left:auto;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:560;padding:7px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease)}.curbtn:hover{background:var(--surface);border-color:var(--line-2)}@media (min-width:760px){.curbtn{display:inline-flex}}.periodnav{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}.periodstep{display:flex;align-items:center;gap:4px}.stepbtn{width:34px;height:34px;flex:none;display:grid;place-items:center;font-size:20px;line-height:1;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease),opacity var(--t2) var(--ease),transform var(--t2) var(--out)}.stepbtn:hover:not(:disabled){background:var(--surface);border-color:var(--line-2)}.stepbtn:active:not(:disabled){transform:scale(.9)}.stepbtn:disabled{opacity:.28}.periodlabel{font-size:13px;font-weight:600;letter-spacing:-.02em;min-width:132px;text-align:center;font-variant-numeric:tabular-nums}@media (min-width:760px){.periodnav{flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.periodnav .chips{flex:none}}.pastnote{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:640;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border:1px dashed var(--line-2);border-radius:999px;padding:4px 10px}.sharepick{display:flex;align-items:center;gap:12px;width:100%;text-align:left;font:inherit;padding:13px 14px;margin-bottom:8px;border:1px solid var(--line);border-radius:14px;background:var(--bg);color:var(--ink);transition:background var(--t2) var(--ease),border-color var(--t2) var(--ease),transform var(--t2) var(--out),box-shadow var(--t2) var(--out)}.sharepick:hover{border-color:var(--line-2);background:var(--surface);box-shadow:var(--e1)}.sharepick:active{transform:scale(.985)}.sharepick-icon{width:38px;height:38px;flex:none;display:grid;place-items:center;font-size:20px;border-radius:11px;background:var(--surface-2)}.sharepick-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sharepick-body b{font-size:13px;font-weight:600;letter-spacing:-.01em}.sharepick-body .sub{font-size:11px;line-height:1.45}.sharepick-go{color:var(--ink-3);font-size:17px;flex:none}.bcard{position:relative}.quickbtn{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:9px;display:grid;place-items:center;font-size:15px;line-height:1;border:1px solid var(--line);background:var(--bg);color:var(--ink-2);z-index:2;transition:background var(--t2) var(--ease),color var(--t2) var(--ease),border-color var(--t2) var(--ease),transform var(--t2) var(--out)}.quickbtn:hover{background:var(--ink);color:var(--inv);border-color:var(--ink)}.quickbtn:active{transform:scale(.88)}.quickentry{display:flex;flex-direction:column;gap:9px;height:100%}.quickentry .top{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3)}.quickinput{width:100%;font:inherit;font-size:20px;font-weight:680;letter-spacing:-.03em;padding:8px 10px;border:1px solid var(--ink);border-radius:10px;background:var(--bg);color:var(--ink);font-variant-numeric:tabular-nums;-moz-appearance:textfield}.quickinput::-webkit-outer-spin-button,.quickinput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quickinput:focus{outline:none;box-shadow:0 0 0 3px var(--surface-2)}.quickrow{display:flex;gap:6px}.quickrow .btn{padding:9px;font-size:13px;border-radius:9px}.bcard.entering{width:min(268px,82vw)}@media (min-width:760px){.bcard.entering{width:auto}}.splitrow{display:flex;align-items:center;gap:8px;min-width:0}.splitlabel{font-size:11px;font-weight:640;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);flex:none}.splitpeople{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:2px 0}.splitpeople::-webkit-scrollbar{display:none}.splitav{width:30px;height:30px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:640;border:1px solid var(--line);background:var(--bg);color:var(--ink-3);transition:background var(--t2) var(--ease),color var(--t2) var(--ease),border-color var(--t2) var(--ease),transform var(--t2) var(--out)}.splitav:hover{border-color:var(--line-2);color:var(--ink)}.splitav:active{transform:scale(.88)}.splitav.on{background:var(--ink);border-color:var(--ink);color:var(--inv)}.splitav.add{border-style:dashed;font-size:15px}.namefield{width:100%;font:inherit;font-size:17px;padding:8px 10px;border:1px solid var(--line-2);border-radius:9px;background:var(--bg);color:var(--ink)}.namefield:focus{outline:none;border-color:var(--ink)}.splithint{font-size:11px;color:var(--ink-3);line-height:1.4;min-height:16px}.splithint b{color:var(--ink);font-weight:600}.friendrow{border-bottom:1px solid var(--line)}.friendrow:last-child{border-bottom:0}.friendhead{display:flex;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;padding:10px 0;background:none;border:0;color:var(--ink)}.friendhead:hover .friendname b{text-decoration:underline;text-underline-offset:3px}.friendname{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.friendname b{font-size:13px;font-weight:580}.friendname .sub{font-size:11px;line-height:1.35}.friendgo{color:var(--ink-3);font-size:15px;flex:none}.friendbody{padding:4px 0 14px}.templaterow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;font:inherit;font-size:12px;padding:9px 10px;margin:0 -10px;width:calc(100% + 20px);border:0;border-radius:10px;background:none;color:var(--ink);transition:background var(--t2) var(--ease)}.templaterow:hover{background:var(--surface-2)}.templaterow:active{transform:scale(.985)}input[type=date]{font-variant-numeric:tabular-nums;min-height:46px}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.85)}.row>*,.spread>*,.cols>*,.col-main>*,.col-side>*{min-width:0}.card,.list,.wrapper,.cols,.col-main,.col-side,.main,.surface{min-width:0}.app{overflow:hidden}html,body{overflow-x:hidden}input,select,textarea{max-width:100%}input[type=date]{min-width:0;width:100%}.daterow{display:grid;gap:10px}.datefield{display:flex;flex-direction:column;gap:6px;min-width:0}.datefield>span{font-size:10px;letter-spacing:.145em;text-transform:uppercase;color:var(--ink-3);font-weight:640}@media (min-width: 1060px){.col-main .daterow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.bcard .nm,.friendname b,.sharepick-body b,.curname b{overflow-wrap:anywhere}:root{--t-11:11px;--t-12:12px;--t-13:13px;--t-15:15px;--t-17:17px;--t-20:20px;--t-24:24px;--t-30:30px;--t-40:40px;--t-52:52px}[style*="font-size: 11"],.sub,.eyebrow,.tag,.bcard .sm,.exp .t span,.li .m,.friendname .sub,.splithint{letter-spacing:0}.h-screen,.setup-h,.metric,.hero,.bcard .vl,.quickinput{letter-spacing:-.03em;line-height:1.1}.hero{letter-spacing:-.045em;line-height:1.02}.setup-h,.h-screen{line-height:1.15}.sub{line-height:1.5}.eyebrow{line-height:1.3}body{line-height:1.45}.tag,.bcard .sm,.exp .t span,.li .m,.splithint,.friendname .sub{line-height:1.4}:root{--r-sm:10px;--r-md:14px;--r-lg:18px;--pad:16px }@media (min-width:760px){:root{--pad:18px }}.card{padding:var(--pad);border-radius:var(--r-lg)}.card.flat{padding:var(--pad)}.list{border-radius:var(--r-lg)}.bcard{padding:var(--pad);border-radius:var(--r-lg)}.sharepick,.pick,.btn{border-radius:var(--r-md)}.btn.sm{border-radius:var(--r-sm)}.field,.namefield,.pctbox{border-radius:var(--r-md)}.emojis button,.ra,.stepbtn,.quickbtn{border-radius:var(--r-sm)}.col-side>*+*{margin-top:12px}.grid2{gap:12px}.sheet,.scrim,.surface,.toast,.tip{will-change:transform,opacity}.sheet:not(.on),.toast:not(.on),.tip:not(.on){will-change:auto}.app.dragging .sheet,.app.dragging .surface{will-change:transform}.sheet,.card,.bcard,.toast{-webkit-font-smoothing:antialiased;backface-visibility:hidden}.scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}*{-webkit-tap-highlight-color:transparent}button,a,[role=button]{touch-action:manipulation}@media (hover:none){.btn:active,.chip:active,.bcard:active,.card[data-go]:active,.pick:active,.sharepick:active,.currow:active{transform:scale(.97);transition-duration:var(--t1)}.bcard:hover,.card.dark:hover,.li:hover,.exp:hover{background:inherit;transform:none}}.exps,.curlist,.picker{contain:layout style}.sheet .body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}@supports (padding: max(0px)){.tabs{padding-bottom:max(22px,env(safe-area-inset-bottom))}.sheet .body{padding-bottom:max(26px,calc(env(safe-area-inset-bottom) + 12px))}.fab{bottom:max(88px,calc(env(safe-area-inset-bottom) + 76px))}.wrapper{padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right))}.toast{bottom:max(26px,calc(env(safe-area-inset-bottom) + 14px))}}@media (min-width:760px){@supports (padding: max(0px)){.wrapper{padding-left:28px;padding-right:28px}}}@media (min-width:1060px){@supports (padding: max(0px)){.wrapper{padding-left:34px;padding-right:34px}}}.btn{white-space:nowrap;overflow:visible}.btn.sm{width:auto;flex:0 0 auto;min-width:max-content}.chip{white-space:nowrap}.tabs{flex:0 0 auto;width:100%;justify-content:space-around}.tabs a{flex:1 1 0;min-width:0;gap:4px;padding:4px 2px}.tabs a span,.tabs a{text-align:center}.tabs a svg{flex:none}.fab{position:absolute;z-index:6}.sheet,.scrim{position:absolute;z-index:20}.sheet{z-index:21}.sheet:not(.on){transform:translateY(101%)!important}@media (min-width:760px){.sheet:not(.on){transform:translate(-50%,-46%) scale(.97)!important}}.sheet-x{position:absolute;top:10px;right:12px;z-index:3;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink-3);font:inherit;font-size:19px;line-height:1;transition:background var(--t2) var(--ease),color var(--t2) var(--ease),transform var(--t1) var(--out)}.sheet-x:hover{background:var(--line);color:var(--ink)}.sheet-x:active{transform:scale(.9)}.sheet .body>.spread:first-child{padding-right:34px}@media (min-width:760px){.sheet-x{top:12px;right:14px}}
