:root{--cream:#fdf7f4;--cream-deep:#f6ece6;--ink:#130904;--coral-50:#fcede7;--coral-100:#f8d6c8;--coral-200:#f2b49c;--coral-300:#ec9170;--coral-400:#e27750;--coral-500:#d65f34;--coral-600:#bc4d27;--coral-700:#983c1d;--cyan-100:#def8f9;--cyan-200:#bcf0f2;--cyan-300:#87e2e7;--cyan-400:#5fced4;--cyan-500:#3cb2b9;--cyan-600:#2a8e94;--indigo-100:#e4e5fa;--indigo-200:#c4c6f4;--indigo-300:#9a9deb;--indigo-400:#7174e4;--indigo-500:#575bdd;--indigo-600:#4346b8;--indigo-700:#33368f;--mint-100:#ddf6e8;--mint-300:#8fd9ae;--mint-500:#38a169;--mint-600:#2c7f52;--warm-0:#fff;--warm-50:#fbf3ee;--warm-100:#f1e6df;--warm-200:#e3d3c8;--warm-300:#cdb7a9;--warm-400:#a98e7d;--warm-500:#836a5b;--warm-600:#5e483c;--warm-700:#3d2a20;--warm-800:#261610;--bg-app:var(--cream);--surface-card:var(--warm-0);--surface-sunken:var(--cream-deep);--surface-raised:var(--warm-0);--text-strong:var(--ink);--text-body:var(--warm-700);--text-muted:var(--warm-500);--text-on-coral:#fff;--text-on-accent:var(--ink);--primary:var(--coral-500);--primary-hover:var(--coral-600);--primary-press:var(--coral-700);--primary-soft:var(--coral-50);--on-primary:#fff;--accent-cyan:var(--cyan-300);--accent-cyan-strong:var(--cyan-500);--accent-indigo:var(--indigo-500);--owe:var(--coral-500);--owe-soft:var(--coral-50);--owed:var(--mint-500);--owed-soft:var(--mint-100);--settled:var(--warm-500);--border-soft:var(--warm-100);--border:var(--warm-200);--border-strong:var(--warm-300);--focus-ring:var(--indigo-400);--cat-comida:var(--coral-400);--cat-casa:var(--indigo-400);--cat-transporte:var(--cyan-500);--cat-ocio:#e0a93c;--cat-compras:#c065b0;--cat-otros:var(--warm-400)}[data-theme=dark]{--bg-app:#1a0f0a;--surface-card:#271812;--surface-sunken:#140c07;--surface-raised:#2f1e16;--text-strong:#fbf3ee;--text-body:#e3d3c8;--text-muted:#a98e7d;--text-on-coral:#fff;--text-on-accent:var(--ink);--primary:var(--coral-400);--primary-hover:var(--coral-300);--primary-press:var(--coral-500);--primary-soft:#3a211710;--on-primary:#1a0f0a;--owe:var(--coral-300);--owe-soft:#3a2117;--owed:var(--mint-300);--owed-soft:#1c3328;--settled:var(--warm-400);--border-soft:#34211880;--border:#3d2a20;--border-strong:#5e483c;--focus-ring:var(--indigo-300)}:root{--font-sans:"Inter","Inter Fallback",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--text-display:40px;--text-amount:34px;--text-h1:28px;--text-h2:22px;--text-h3:18px;--text-body-lg:17px;--text-base:15px;--text-sm:13px;--text-xs:11px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extra:800;--lh-tight:1.1;--lh-snug:1.25;--lh-normal:1.45;--lh-relaxed:1.6;--ls-tight:-0.02em;--ls-snug:-0.01em;--ls-normal:0;--ls-wide:0.04em;--num-tabular:"tnum" 1,"lnum" 1;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--radius-xs:8px;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--radius-xl:32px;--radius-2xl:40px;--radius-pill:999px;--shadow-xs:0 1px 2px rgba(19,9,4,.05);--shadow-sm:0 2px 8px rgba(19,9,4,.06);--shadow-md:0 6px 20px rgba(19,9,4,.08);--shadow-lg:0 14px 40px rgba(19,9,4,.12);--shadow-coral:0 10px 28px rgba(214,95,52,.34);--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--screen-max:430px;--tap-min:44px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--lh-normal);color:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--text-strong);font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);line-height:var(--lh-snug);margin:0}p{margin:0}button{font-family:inherit}a{color:var(--accent-indigo);text-decoration:none}.doot-amount{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:var(--num-tabular),tabular-nums lining-nums;letter-spacing:var(--ls-tight)}.doot-eyebrow{font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-muted)}:focus-visible{outline:2.5px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.doot-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--fw-semibold);letter-spacing:var(--ls-snug);line-height:1;min-height:var(--tap-min);padding:0 var(--space-6);border:none;border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out);-webkit-tap-highlight-color:transparent;white-space:nowrap}.doot-btn:active{transform:scale(.96)}.doot-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.doot-btn--primary{background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-coral)}.doot-btn--primary:hover:not(:disabled){background:var(--primary-hover)}.doot-btn--primary:active:not(:disabled){background:var(--primary-press)}.doot-btn--secondary{background:var(--surface-card);color:var(--text-strong);box-shadow:inset 0 0 0 1.5px var(--border)}.doot-btn--secondary:hover:not(:disabled){background:var(--surface-sunken);box-shadow:inset 0 0 0 1.5px var(--border-strong)}.doot-btn--ghost{background:transparent;color:var(--primary)}.doot-btn--ghost:hover:not(:disabled){background:var(--primary-soft)}.doot-btn--accent{background:var(--accent-indigo);color:#fff;box-shadow:0 8px 22px rgba(87,91,221,.32)}.doot-btn--accent:hover:not(:disabled){filter:brightness(1.06)}.doot-btn--sm{min-height:36px;padding:0 var(--space-4);font-size:var(--text-sm)}.doot-btn--lg{min-height:56px;padding:0 var(--space-7);font-size:var(--text-body-lg);border-radius:var(--radius-lg)}.doot-btn--block{display:flex;width:100%}.doot-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-min);height:var(--tap-min);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-body);cursor:pointer;transition:background var(--dur-base) var(--ease-out),transform var(--dur-fast) var(--ease-out);-webkit-tap-highlight-color:transparent}.doot-icon-btn:hover{background:var(--surface-sunken)}.doot-icon-btn:active{transform:scale(.92)}.doot-icon-btn--solid{background:var(--surface-card);box-shadow:var(--shadow-sm)}.doot-icon-btn--solid:hover{background:var(--surface-card);box-shadow:var(--shadow-md)}.doot-card{background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.doot-card--flat{box-shadow:none;border:1.5px solid var(--border-soft)}.doot-card--sunken{background:var(--surface-sunken);box-shadow:none}.doot-card--raised{box-shadow:var(--shadow-md)}.doot-card--pad-lg{padding:var(--space-6)}.doot-card--pad-none{padding:0}.doot-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);padding:4px 10px;border-radius:var(--radius-pill);line-height:1}.doot-badge--neutral{background:var(--surface-sunken);color:var(--text-muted)}.doot-badge--owe{background:var(--owe-soft);color:var(--owe)}.doot-badge--owed{background:var(--owed-soft);color:var(--owed)}.doot-badge--coral{background:var(--coral-50);color:var(--coral-600)}.doot-badge--cyan{background:var(--cyan-100);color:var(--cyan-600)}.doot-badge--indigo{background:var(--indigo-100);color:var(--indigo-600)}.doot-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);font-weight:var(--fw-bold);color:#fff;background:var(--indigo-400);box-shadow:inset 0 0 0 2px hsla(0,0%,100%,0);overflow:hidden;flex:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.doot-avatar img{width:100%;height:100%;object-fit:cover}.doot-avatar-group{display:inline-flex;align-items:center}.doot-avatar-group>*{margin-left:-10px;box-shadow:0 0 0 3px var(--surface-card);border-radius:var(--radius-pill)}.doot-avatar-group>:first-child{margin-left:0}.doot-field{display:flex;flex-direction:column;gap:var(--space-2)}.doot-label{font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-body)}.doot-input{font-family:var(--font-sans);font-size:var(--text-body-lg);color:var(--text-strong);background:var(--surface-card);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:14px var(--space-4);min-height:var(--tap-min);width:100%;transition:border-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out);outline:none}.doot-input::placeholder{color:var(--text-muted)}.doot-input:focus{border-color:var(--focus-ring);box-shadow:0 0 0 4px color-mix(in srgb,var(--focus-ring) 18%,transparent)}.doot-input--amount{font-size:var(--text-amount);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center;border:none;background:transparent;padding:0}.doot-input--amount:focus{box-shadow:none}.doot-segmented{display:inline-flex;background:var(--surface-sunken);border-radius:var(--radius-pill);padding:4px;gap:2px}.doot-segmented__opt{border:none;background:transparent;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--fw-semibold);color:var(--text-muted);padding:8px 16px;border-radius:var(--radius-pill);cursor:pointer;transition:all var(--dur-base) var(--ease-out);min-height:36px}.doot-segmented__opt--active,.doot-segmented__opt[aria-pressed=true]{background:var(--surface-card);color:var(--text-strong);box-shadow:var(--shadow-xs)}.doot-switch{position:relative;width:50px;height:30px;border-radius:var(--radius-pill);background:var(--border-strong);border:none;cursor:pointer;padding:0;flex:none;transition:background var(--dur-base) var(--ease-out)}.doot-switch[aria-checked=true]{background:var(--primary)}.doot-switch:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:var(--radius-pill);background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--dur-base) var(--ease-spring)}.doot-switch[aria-checked=true]:after{transform:translateX(20px)}.doot-fab{display:inline-flex;align-items:center;gap:var(--space-2);height:56px;padding:0 var(--space-6);border:none;border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font-family:var(--font-sans);font-size:var(--text-body-lg);font-weight:var(--fw-bold);box-shadow:var(--shadow-coral);cursor:pointer;transition:transform var(--dur-base) var(--ease-spring),background var(--dur-base) var(--ease-out)}.doot-fab:hover{background:var(--primary-hover);transform:translateY(-2px)}.doot-fab:active{transform:scale(.96)}.doot-fab--round{width:56px;padding:0}.doot-list-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:var(--font-sans);transition:background var(--dur-base) var(--ease-out);border-radius:var(--radius-md)}.doot-list-item:hover{background:var(--surface-sunken)}.doot-list-item__body{flex:1 1;min-width:0}.doot-list-item__title{font-size:var(--text-body-lg);font-weight:var(--fw-semibold);color:var(--text-strong)}.doot-list-item__sub{font-size:var(--text-sm);color:var(--text-muted)}.doot-cat{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--radius-md);flex:none}.doot-progress{width:100%;height:10px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.doot-progress__fill{height:100%;border-radius:var(--radius-pill);background:var(--primary);transition:width var(--dur-slow) var(--ease-out)}:root{--font-sans:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--rail-w:264px;--content-max:600px}body,html{height:100%}body{background:var(--bg-app)}.app{min-height:100dvh}.app-rail{display:none}.app-main{min-height:100dvh}.app-content{max-width:var(--content-max);margin:0 auto;padding:max(16px,env(safe-area-inset-top)) 20px calc(96px + env(safe-area-inset-bottom))}.app-content--wide{max-width:880px}.topbar{display:flex;align-items:center;gap:var(--space-2);min-height:52px;margin-bottom:var(--space-2)}.topbar h1{font-size:var(--text-h1)}.topbar__spacer{flex:1 1}.app-tabbar{position:fixed;inset:auto 0 0 0;z-index:30;display:flex;background:var(--surface-card);border-top:1.5px solid var(--border-soft);padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom, 0px))}.app-tab{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) 0;min-height:var(--tap-min);background:none;border:none;cursor:pointer;text-decoration:none;color:var(--text-muted);font:var(--fw-semibold) var(--text-xs)/1 var(--font-sans)}.app-tab--active{color:var(--primary)}.floating-action{right:max(20px,calc(50vw - var(--content-max) / 2 + 20px))}.bottom-action,.floating-action{position:fixed;bottom:calc(84px + env(safe-area-inset-bottom));z-index:25}.bottom-action{left:20px;right:20px;max-width:calc(var(--content-max) - 40px);margin:0 auto}@media (min-width:900px){.app{display:grid;grid-template-columns:var(--rail-w) 1fr}.app-rail{display:flex;flex-direction:column;gap:var(--space-2);position:-webkit-sticky;position:sticky;top:0;height:100dvh;padding:var(--space-6) var(--space-4);background:var(--surface-card);border-right:1.5px solid var(--border-soft)}.app-tabbar{display:none}.app-content{padding-top:var(--space-7);padding-bottom:var(--space-9)}.floating-action{right:max(24px,calc((100vw - var(--rail-w) - var(--content-max)) / 2 + 24px));bottom:28px}.bottom-action{position:-webkit-sticky;position:sticky;left:auto;right:auto;bottom:20px;margin-top:var(--space-5)}.topbar__back-mobile{display:none}}.rail-brand{display:flex;align-items:center;gap:10px;padding:0 var(--space-2) var(--space-4)}.rail-brand img{height:26px}.rail-link{display:flex;align-items:center;gap:var(--space-3);padding:12px var(--space-3);border-radius:var(--radius-md);color:var(--text-body);text-decoration:none;font-weight:var(--fw-semibold);transition:background var(--dur-base) var(--ease-out)}.rail-link:hover{background:var(--surface-sunken)}.rail-link--active{background:var(--primary-soft);color:var(--primary)}.rail-spacer{flex:1 1}.stack{flex-direction:column}.row,.stack{display:flex}.row{align-items:center}.muted{color:var(--text-muted)}.center-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-6);text-align:center}.divider{height:1px;background:var(--border-soft)}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--primary);animation:doot-spin .7s linear infinite}@keyframes doot-spin{to{transform:rotate(1turn)}}.auth-card{width:100%;max-width:380px}.settings-ico{width:38px;height:38px;border-radius:var(--radius-md);background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;flex:none;color:var(--text-body)}select.doot-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:none;cursor:pointer}input[type=date].doot-input{cursor:pointer}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}.__variable_f367f3{--font-inter:"__Inter_f367f3","__Inter_Fallback_f367f3"}