@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff")}:root{--paper:#f6f0e3;--card:#fffcf5;--ink:#2a211a;--ink-soft:#66574a;--rule:#e2d6c3;--rule-strong:#bfae96;--brand:#0b4aa8;--brand-ink:#083a85;--brand-soft:#e2ebf8;--brand-green:#43a80a;--ok:#2f7d0b;--ok-soft:#e5f2da;--late:#c0322b;--late-soft:#fbe5e1;--radius:4px;--tap:48px;--nav-h:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-print:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;overscroll-behavior-y:contain;font-size:17px;line-height:1.45}::selection{background:var(--brand-soft);color:var(--ink)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:none}a{color:var(--brand-ink);text-underline-offset:3px}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--radius)}#root{min-height:100dvh}.shell{flex-direction:column;max-width:560px;min-height:100dvh;margin:0 auto;display:flex}.topbar{z-index:20;min-height:calc(56px + var(--safe-top));padding:var(--safe-top) 8px 0 16px;background:var(--paper);border-bottom:1px solid var(--rule-strong);align-items:center;gap:8px;display:flex;position:sticky;top:0}.topbar.has-back{padding-left:4px}.topbar h1{font-family:var(--font-print);letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1.6rem;font-weight:700;line-height:1.1;overflow:hidden}.topbar-actions{gap:4px;display:flex}.page{padding:16px 16px calc(var(--nav-h) + var(--safe-bottom) + 24px);flex-direction:column;flex:1;gap:24px;display:flex}.page.with-footer{padding-bottom:calc(var(--nav-h) + var(--safe-bottom) + 96px)}.bottomnav{z-index:30;background:var(--card);border-top:1px solid var(--rule-strong);padding-bottom:var(--safe-bottom);position:fixed;bottom:0;left:0;right:0}.bottomnav-inner{grid-template-columns:repeat(4,1fr);max-width:560px;margin:0 auto;display:grid}.navitem{height:var(--nav-h);color:var(--ink-soft);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.navitem[aria-current=page]{color:var(--brand-ink)}.navitem[aria-current=page] svg{stroke-width:2.5px}.footerbar{left:0;right:0;bottom:calc(var(--nav-h) + var(--safe-bottom));z-index:25;background:var(--paper);border-top:1px solid var(--rule-strong);position:fixed}.footerbar-inner{gap:12px;max-width:560px;margin:0 auto;padding:12px 16px;display:flex}.footerbar-inner>*{flex:1}.print-title{font-family:var(--font-print);letter-spacing:.02em;text-transform:uppercase;font-size:1.35rem;font-weight:700;line-height:1.15}.print-title .accent{color:var(--brand-ink)}.section{flex-direction:column;gap:10px;display:flex}.section-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:6px;display:flex}.section-head .meta{color:var(--ink-soft);font-size:.9rem}.muted{color:var(--ink-soft)}.small{font-size:.9rem}.money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.big-money{font-family:var(--font-print);font-size:2.2rem;font-weight:700;line-height:1}.btn{min-height:var(--tap);border-radius:var(--radius);border:1.5px solid var(--ink);background:var(--card);color:var(--ink);justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:1rem;font-weight:700;text-decoration:none;transition:background-color .12s ease-out,transform .12s ease-out;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:active{background:var(--brand-ink)}.btn-ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn-ghost{background:0 0;border-color:#0000}.btn-danger{border-color:var(--late);color:var(--late);background:0 0}.btn-block{width:100%}.btn-small{min-height:40px;padding:0 12px;font-size:.92rem}.icon-btn{width:var(--tap);height:var(--tap);border-radius:var(--radius);color:var(--ink);justify-content:center;align-items:center;display:inline-flex}.icon-btn:active{background:var(--rule)}.pay-toggle{border-radius:var(--radius);border:1.5px dashed var(--rule-strong);background:var(--card);min-width:118px;min-height:44px;color:var(--ink-soft);justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.95rem;font-weight:700;display:inline-flex}.pay-toggle.is-paid{border:1.5px solid var(--ok);background:var(--ok-soft);color:var(--ok)}.pay-toggle.is-late{border-color:var(--late);color:var(--late)}.pay-toggle svg.check path{stroke-dasharray:24;stroke-dashoffset:0;animation:.26s cubic-bezier(.16,1,.3,1) draw-check}@keyframes draw-check{0%{stroke-dashoffset:24px}}.wa-btn{color:var(--ok);border-color:var(--rule-strong)}.ledger{background:var(--card);border:1px solid var(--rule-strong);border-radius:var(--radius)}.row{border-top:1px solid var(--rule);align-items:center;gap:12px;min-height:60px;padding:8px 12px;display:flex}.row:first-child{border-top:none}.row-num{width:38px;font-family:var(--font-print);color:var(--brand-ink);text-align:center;flex:none;font-size:1.15rem;font-weight:700}.row-main{flex:1;min-width:0}.row-title{overflow-wrap:anywhere;font-weight:650}.row-sub{color:var(--ink-soft);font-size:.88rem}.row-actions{flex:none;align-items:center;gap:6px;display:flex}.row.is-late .row-sub{color:var(--late)}.row-link{text-align:left;width:100%}.row-link:active{background:var(--rule)}.tag{white-space:nowrap;border:1px solid;border-radius:99px;align-items:center;gap:4px;padding:1px 8px;font-size:.8rem;font-weight:700;display:inline-flex}.tag-late{color:var(--late);background:var(--late-soft)}.tag-ok{color:var(--ok);background:var(--ok-soft)}.tag-brand{color:var(--brand-ink);background:var(--brand-soft)}.tanda-head{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);grid-template-columns:repeat(3,1fr);display:grid}.tanda-head>div{border-left:1px solid var(--rule);padding:10px 12px}.tanda-head>div:first-child{border-left:none}.tanda-head .label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:.78rem;font-weight:600}.tanda-head .value{font-family:var(--font-print);font-size:1.45rem;font-weight:700;line-height:1.1}.progress{background:var(--rule);border-radius:99px;height:8px;overflow:hidden}.progress>span{background:var(--ok);height:100%;transition:width .4s cubic-bezier(.16,1,.3,1);display:block}.round-banner{border:2px solid var(--ink);border-radius:var(--radius);background:var(--card);flex-direction:column;gap:4px;padding:14px 14px 12px;display:flex}.round-banner .who{font-size:1.15rem;font-weight:700}.round-banner .who .star{color:var(--brand)}.round-total{border-top:1px dashed var(--rule-strong);justify-content:space-between;align-items:baseline;padding:10px 12px;font-size:.95rem;display:flex}.grid-wrap{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow-x:auto}.grid{border-collapse:separate;border-spacing:0;font-size:.9rem}.grid th,.grid td{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center}.grid thead th{background:var(--card);font-family:var(--font-print);min-width:44px;color:var(--ink-soft);padding:6px 0;font-size:1rem;font-weight:700;position:sticky;top:0}.grid thead th.is-current{color:var(--brand-ink);background:var(--brand-soft)}.grid .name-col{z-index:1;background:var(--card);text-align:left;border-right:1.5px solid var(--rule-strong);white-space:nowrap;text-overflow:ellipsis;min-width:118px;max-width:140px;padding:0 10px;font-weight:600;position:sticky;left:0;overflow:hidden}.grid .name-col .n{font-family:var(--font-print);color:var(--brand-ink);margin-right:6px}.cell{justify-content:center;align-items:center;width:44px;height:44px;display:flex}.cell.is-paid{color:var(--ok);background:var(--ok-soft)}.cell.is-late{color:var(--late)}.cell.is-late:after{content:"";border:1.5px solid var(--late);border-radius:2px;width:14px;height:14px}.cell.is-due:after{content:"";border:1.5px solid var(--rule-strong);border-radius:2px;width:14px;height:14px}.cell.is-receiver{color:var(--brand)}.field{flex-direction:column;gap:6px;display:flex}.field label,.field .label{font-size:.95rem;font-weight:650}.field .hint{color:var(--ink-soft);font-size:.85rem}.input{width:100%;min-height:var(--tap);border:1.5px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);color:var(--ink);caret-color:var(--brand);padding:10px 12px;font-size:1.05rem}.input::placeholder{color:#8f8070}.input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.input.has-error{border-color:var(--late)}textarea.input{resize:vertical;min-height:96px;line-height:1.4}.field-error{color:var(--late);font-size:.88rem;font-weight:600}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.panel{background:var(--card);border:1px solid var(--rule-strong);border-radius:var(--radius);flex-direction:column;gap:16px;padding:16px;display:flex}.note{border:1px dashed var(--rule-strong);border-radius:var(--radius);background:var(--card);padding:12px 14px;font-size:.95rem}.note-brand{border-color:var(--brand);background:var(--brand-soft)}.note-late{border-color:var(--late);background:var(--late-soft)}.steps{gap:6px;display:flex}.steps span{background:var(--rule);border-radius:99px;flex:1;height:4px}.steps span.on{background:var(--brand)}.segmented{border:1.5px solid var(--ink);border-radius:var(--radius);display:flex;overflow:hidden}.segmented button{flex:1;min-height:44px;font-weight:700}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--card)}.sheet-backdrop{z-index:50;background:#2a211a73;justify-content:center;align-items:flex-end;animation:.16s ease-out fade-in;display:flex;position:fixed;inset:0}.sheet{background:var(--paper);width:100%;max-width:560px;max-height:88dvh;padding:8px 16px calc(20px + var(--safe-bottom));overscroll-behavior:contain;border-radius:12px 12px 0 0;flex-direction:column;gap:16px;animation:.26s cubic-bezier(.16,1,.3,1) sheet-up;display:flex;overflow-y:auto;box-shadow:0 -8px 30px #2a211a2e}.sheet-grip{background:var(--rule-strong);border-radius:99px;width:40px;height:4px;margin:4px auto 0}.sheet-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-head h2{font-family:var(--font-print);font-size:1.45rem;font-weight:700;line-height:1.15}.preview{white-space:pre-wrap;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);max-height:40dvh;padding:12px;font-size:.92rem;overflow-y:auto}.option{text-align:left;border:1.5px solid var(--rule-strong);border-radius:var(--radius);background:var(--card);align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 14px;display:flex}.option:active{background:var(--rule)}.option .option-title{font-weight:700}.option .option-sub{color:var(--ink-soft);font-size:.88rem}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes fade-in{0%{opacity:0}}.toast{left:50%;bottom:calc(var(--nav-h) + var(--safe-bottom) + 12px);z-index:60;background:var(--ink);width:calc(100% - 32px);max-width:528px;color:var(--card);border-radius:8px;align-items:center;gap:12px;padding:8px 8px 8px 16px;animation:.22s cubic-bezier(.16,1,.3,1) toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #2a211a40}.toast span{flex:1;font-weight:600}.toast button{color:#9cc2ff;min-height:44px;padding:0 14px;font-weight:800}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)}}.lock{min-height:100dvh;padding:calc(24px + var(--safe-top)) 24px calc(24px + var(--safe-bottom));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex}.lock h1{font-family:var(--font-print);font-size:2rem;font-weight:700;line-height:1.1}.pin-dots{justify-content:center;gap:16px;display:flex}.pin-dots span{border:2px solid var(--ink);border-radius:50%;width:18px;height:18px}.pin-dots span.on{background:var(--ink)}.pin-dots.shake{animation:.32s shake}.pinpad{grid-template-columns:repeat(3,76px);justify-content:center;gap:14px;display:grid}.pinpad button{border:1.5px solid var(--rule-strong);background:var(--card);height:76px;font-size:1.7rem;font-weight:600;font-family:var(--font-print);border-radius:50%}.pinpad button:active{background:var(--rule)}.pinpad .blank{visibility:hidden}@keyframes shake{25%{transform:translate(-8px)}50%{transform:translate(8px)}75%{transform:translate(-4px)}}.empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}
