@font-face{font-family:Manrope;font-weight:200 800;src:url(/fonts/Manrope.ttf)format("truetype");font-display:swap}:root{--ink:#211a2c;--muted:#655a70;--purple:#6225dc;--pale:#eee4fa;--paper:#fff;--ground:#f5f3ef;--line:#d6cfdf;--green:#285e47;--red:#a13934;--radius:16px;--gutter:clamp(1rem, 3vw, 3rem);--layout-max:88rem;--document-max:80rem;color:var(--ink);background:var(--ground);font:14px/1.6 Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:var(--purple)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button{background:var(--purple);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-block-size:44px;padding:.7rem 1.1rem;font-weight:600;text-decoration:none;display:inline-flex}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.secondary{border-color:var(--line);color:var(--ink);background:#fff}.ghost{color:var(--purple);background:0 0}.danger{color:var(--red);background:#fff2ef;border-color:#efcfca}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #9b74c9}input,select,textarea{inline-size:100%;min-inline-size:0;color:var(--ink);background:#fff;border:1px solid #cbc4cf;border-radius:7px;min-block-size:44px;padding:.75rem}textarea{resize:vertical;min-block-size:95px}label{gap:.4rem;font-size:.9rem;font-weight:600;display:grid}label small{color:var(--muted);font-weight:400}h1,h2,h3,p{margin-block:0 1rem}h1{letter-spacing:-.055em;font-size:clamp(2.25rem,4vw,3.8rem);font-weight:800;line-height:1.2}h2{letter-spacing:-.03em;font-size:1.35rem;font-weight:800}h3{font-size:1rem}p{color:var(--muted)}small{font-size:.8rem}.eyebrow{letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-size:.74rem;font-weight:700}.brand{letter-spacing:-.06em;color:inherit;white-space:nowrap;align-items:center;gap:.55rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.brand-dot{align-self:flex-start;font-size:.65rem}.skip{z-index:10;background:#fff;padding:1rem;position:fixed;inset-block-start:-10rem;inset-inline-start:1rem}.skip:focus{inset-block-start:1rem}.initial{padding:6rem var(--gutter);text-align:center}.workspace{grid-template-columns:225px minmax(0,1fr);min-block-size:100dvh;display:grid}.sidebar{background:var(--ink);color:#f5f0fa;border-inline-end:1px solid #483855;flex-direction:column;gap:2.8rem;padding:2rem 1.25rem;display:flex}.sidebar .brand{padding-inline:.5rem}.sidebar nav{gap:.4rem;display:grid}.nav-button{color:#d0c3dc;background:0 0;border-radius:8px;justify-content:flex-start;inline-size:100%;font-weight:400}.nav-button[aria-current=page]{background:var(--purple);color:#fff}.nav-symbol{text-align:center;inline-size:24px;font-size:1.2rem}.sidebar-bottom{color:#cbbbd6;gap:1rem;margin-block-start:auto;font-size:.8rem;display:grid}.sidebar-bottom button{color:#dacde4;background:0 0;border-color:#675675}.workspace-main{min-inline-size:0;padding:2rem var(--gutter);max-inline-size:var(--layout-max);inline-size:100%;margin-inline:auto}.topbar{color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;margin-block-end:2.5rem;font-size:.8rem;display:flex}.workspace-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-block-end:2rem;display:flex}.workspace-title h1{margin-block-end:.4rem}.workspace-title p{margin:0}.avatar{block-size:32px;inline-size:32px;color:var(--purple);background:#e6d9f0;border-radius:50%;place-items:center;display:grid}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.spread{justify-content:space-between}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block-end:2rem;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem}.stat strong{letter-spacing:-.05em;overflow-wrap:anywhere;margin-block:.6rem .2rem;font-size:clamp(1.7rem,2.7vw,2.5rem);font-weight:800;display:block}.stat small{color:var(--muted)}.stat.accent{background:var(--purple);color:#fff;border-color:var(--purple)}.stat.accent .eyebrow,.stat.accent small{color:#e0d4ed}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);min-inline-size:0;margin-block-end:1.25rem;padding:1.5rem}.panel.flush{padding:0}.panel-header{border-block-end:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem 1.5rem;display:flex}.panel-header h2{margin:0}.filters{flex-wrap:wrap;gap:.4rem;padding:1rem 1.5rem;display:flex}.filter{color:var(--muted);background:0 0;min-block-size:36px;padding:.4rem .8rem;font-size:.85rem}.filter.active{background:var(--pale);color:var(--purple)}.search{max-inline-size:22rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:start;inline-size:100%}th{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);background:#faf8f5;font-size:.72rem;font-weight:500}th,td{border-block-end:1px solid var(--line);text-align:start;padding:1rem 1.5rem}tbody tr:last-child td{border-block-end:0}td small{color:var(--muted);display:block}td a{font-weight:600;text-decoration:none}.money{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums}.status{white-space:nowrap;color:#625a6b;background:#ece9ee;border-radius:6px;align-items:center;gap:.4rem;padding:.25rem .55rem;font-size:.75rem;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;block-size:5px;inline-size:5px}.status.paid{color:var(--green);background:#e6f0e9}.status.overdue{color:#92472d;background:#fae9e1}.status.unpaid,.status.partially-paid{color:#795a15;background:#f8edce}.empty{text-align:center;padding:4rem 1.5rem}.empty h2{font-size:1.5rem;font-weight:500}.empty p{max-inline-size:45ch;margin-inline:auto}.empty-icon{background:var(--pale);color:var(--purple);border-radius:18px;place-items:center;block-size:65px;inline-size:65px;margin:0 auto 1.5rem;font-size:2rem;display:grid}.banner{color:#725723;background:#fff6dc;border:1px solid #ead9a1;border-radius:8px;margin-block-end:1.5rem;padding:.8rem 1rem;font-size:.85rem}.banner p{color:inherit;margin:0}.banner.preview{background:var(--pale);color:var(--purple);border-color:#d8c6e8}.two-col{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:1.5rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.full{grid-column:1/-1}.stack{gap:1.2rem;display:grid}.field-note{color:var(--muted);margin:.4rem 0;font-size:.8rem}.form-actions{justify-content:flex-end;gap:.7rem;margin-block-start:1.5rem;display:flex}.line-editor{grid-template-columns:minmax(0,1fr) 70px 130px 44px;align-items:end;gap:.5rem;padding-block:.7rem;display:grid}.line-editor button{padding:.5rem}.invoice-summary{background:var(--ground);border-radius:8px;justify-content:space-between;align-items:center;margin-block-start:1rem;padding:1rem;display:flex}.invoice-summary strong{font-size:1.4rem}.notice{background:var(--ink);color:#fff;z-index:20;border-radius:10px;max-inline-size:min(32rem,100% - 3rem);padding:1rem 1.3rem;position:fixed;inset-block-end:1.5rem;inset-inline-end:1.5rem;box-shadow:0 5px 30px #0002}.notice.error{background:#8a302a}dialog{max-block-size:calc(100dvh - 2rem);inline-size:min(48rem,100% - 2rem);color:var(--ink);background:var(--paper);border:0;border-radius:16px;padding:2rem}dialog::backdrop{backdrop-filter:blur(3px);background:#20152977}.dialog-heading{justify-content:space-between;align-items:center;gap:1rem;margin-block-end:1rem;display:flex}.dialog-heading h2{margin:0;font-size:1.6rem}.form-error{color:var(--red);margin-block:1rem;font-size:.9rem}.login-layout{grid-template-columns:1fr 1fr;min-block-size:100dvh;display:grid}.login-story{background:var(--ink);color:#fff;flex-direction:column;justify-content:space-between;gap:4rem;padding:clamp(2rem,7vw,7rem);display:flex}.login-story h1{max-inline-size:10ch;font-size:clamp(3rem,5vw,5rem);line-height:1.08}.login-story p{color:#cbbcd7;max-inline-size:36ch}.login-form{place-self:center;inline-size:min(100%,30rem);padding:2rem}.login-form h2{font-size:2rem}.login-form button{inline-size:100%;margin-block-start:1rem}.login-story .eyebrow{color:#cbbcd7}.detail-title{margin-block:1.5rem}.detail-total{letter-spacing:-.06em;font-size:clamp(2.3rem,3.5vw,3.3rem);font-weight:800}.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.facts span{color:var(--muted);font-size:.8rem;display:block}.facts strong{overflow-wrap:anywhere;font-weight:500}.address{white-space:pre-wrap;overflow-wrap:anywhere}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-block-end:1px solid var(--line);padding:1rem 0}.timeline li:last-child{border:0}.timeline small{color:var(--muted);display:block}.timeline details{margin-block-start:.5rem}.timeline pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.8rem}.client-shell{max-inline-size:var(--document-max);padding:2rem var(--gutter);margin-inline:auto}.client-header{justify-content:space-between;align-items:center;gap:1rem;margin-block-end:3rem;display:flex}.client-header>span{color:var(--muted);font-size:.8rem}.client-intro{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-block-end:2rem;display:flex}.client-intro h1{margin-block-end:.5rem}.client-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.invoice-paper{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:clamp(1.25rem,3vw,2.7rem)}.invoice-paper .eyebrow{color:var(--purple)}.invoice-paper h2{margin-block:.6rem;font-size:2rem}.invoice-paper hr{border:0;border-block-start:1px solid var(--line);margin-block:2rem}.invoice-paper table th,.invoice-paper table td{padding:1rem .3rem}.invoice-paper table th{background:0 0}.invoice-paper table td:first-child{overflow-wrap:anywhere}.bill-to{margin-block:2rem}.bill-to p{margin:0}.invoice-foot{text-align:end;padding-block:1.5rem}.invoice-foot strong{font-size:1.7rem}.client-actions{gap:.7rem;margin-block:1.2rem;display:grid}.client-actions .button{inline-size:100%}.payment-info{font-size:.85rem}.payment-info dt{color:var(--muted);margin-block-start:.8rem}.payment-info dd{overflow-wrap:anywhere;margin:0}.qr{block-size:auto;inline-size:100%;max-inline-size:180px;margin:1rem auto;display:block}.client-footer{text-align:center;color:var(--muted);padding-block:3rem;font-size:.8rem}.receipt-row{border-block-start:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.receipt-row small{color:var(--muted);display:block}.settings-qr{max-inline-size:120px}.muted{color:var(--muted)}[hidden]{display:none!important}@media (width<=1050px){.workspace{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding-inline:.75rem}.sidebar .brand{font-size:1rem}.two-col{grid-template-columns:1fr}.stats{gap:.7rem}.stat,th,td{padding:1rem}.client-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}@media (width<=760px){.workspace{grid-template-columns:1fr}.sidebar{gap:1rem;padding:1rem}.sidebar nav{gap:.3rem;display:flex;overflow-x:auto}.nav-button{white-space:nowrap;inline-size:auto;padding:.5rem .7rem}.sidebar-bottom{display:none}.sidebar .brand{font-size:1.2rem}.workspace-main{padding-block:1.5rem}.topbar{margin-block-end:1.5rem}.stats{grid-template-columns:1fr}.stat{grid-template-columns:1fr auto;align-items:center;display:grid}.stat strong{margin:0;font-size:1.6rem}.stat small{grid-column:1/-1}.client-grid{grid-template-columns:1fr}.client-header{margin-block-end:2rem}.login-layout{grid-template-columns:1fr}.login-story{gap:2rem;padding:2rem}.login-story h1{max-inline-size:15ch;font-size:2.8rem}.login-story>small{display:none}.login-story p{margin:0}.form-grid{grid-template-columns:1fr}.line-editor{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}.line-editor label:first-child{grid-column:1/-1}.facts{gap:1rem}.panel{padding:1.2rem}.panel.flush{padding:0}.table-wrap th:nth-child(3),.table-wrap td:nth-child(3){display:none}dialog{padding:1.25rem}.client-header>span{display:none}.filters{padding-inline:1rem}.workspace-title{align-items:flex-start}.workspace-title h1{font-size:2rem}.form-actions{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.sidebar{min-inline-size:0}@media (width<=760px){.workspace{grid-template-columns:minmax(0,1fr)}.topbar{flex-wrap:wrap}.stat{grid-template-columns:minmax(0,1fr) auto}.stat .eyebrow{overflow-wrap:anywhere}}.expense-filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:1rem;display:grid}.expense-open{text-align:start;padding-inline:0;font-weight:650}.document-link{overflow-wrap:anywhere;padding-block:.5rem}#expense-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}[data-tab=vendors]~*{min-width:0}@media (width<=760px){.workspace:has([data-tab=vendors][aria-current]) table th:nth-child(3),.workspace:has([data-tab=vendors][aria-current]) table td:nth-child(3){display:table-cell}}.brand{letter-spacing:-.085em;white-space:normal;color:var(--purple);font-size:2rem;font-weight:800;line-height:.82;display:block}.sidebar .brand{color:#fff;padding:.25rem .65rem;font-size:2rem}.sidebar{border:0}.sidebar-bottom{border-block-start:1px solid #ffffff30;padding-block-start:1.5rem}.nav-button{border-radius:999px;font-weight:600}.topbar{border-block-end:1px solid var(--line);padding-block-end:1.25rem}.workspace-title{padding-block:.3rem 1rem}.workspace-title h1{color:var(--ink)}.workspace-title>button{color:#fff;background:var(--ink)}.stat:not(.accent){background:var(--pale);border-color:#0000}.stat.accent{background:var(--purple)}.stat .eyebrow{letter-spacing:.055em}.panel-header{background:var(--pale);border-radius:var(--radius) var(--radius) 0 0}.panel-header h2{letter-spacing:-.045em}th{letter-spacing:.055em;font-size:.72rem}button,.button{transition:background .16s,color .16s}.secondary{border-color:#b5a9c5}.ghost:hover{background:var(--pale)}.sidebar .ghost:hover{background:#ffffff15}input,select,textarea{border-radius:8px}input:focus,select:focus,textarea:focus{border-color:var(--purple)}dialog{border:1px solid var(--line);box-shadow:0 24px 100px #211a2c30}.dialog-heading{border-block-end:1px solid var(--line);margin-block-end:1.5rem;padding-block-end:1rem}.dialog-heading h2{letter-spacing:-.055em;font-size:2rem;font-weight:800}.login-story{background:var(--pale);color:var(--ink);gap:2rem;padding-block-end:0}.login-story .brand{color:var(--purple)}.login-story h1{font-size:clamp(3.25rem,5.5vw,6rem);font-weight:800;line-height:1.02}.login-story p,.login-story .eyebrow{color:var(--muted)}.login-bunch{mix-blend-mode:multiply;block-size:auto;inline-size:100%;margin-block-start:auto;display:block}.login-story>small{padding-block-end:1.5rem}.login-form h2{letter-spacing:-.055em;font-size:3rem;font-weight:800}.client-header{border-block-end:1px solid var(--line);margin-block-end:2.5rem;padding-block:1rem 2rem}.client-label{letter-spacing:.07em;font-weight:700}.client-intro{gap:2rem;padding-block:1rem 2rem}.client-intro h1{max-inline-size:17ch;color:var(--purple);font-size:clamp(2.8rem,5vw,4.5rem);font-weight:800;line-height:1.06}.client-intro .eyebrow{color:var(--ink)}.client-intro>div>p:last-child{max-inline-size:50ch}.invoice-paper{border:1px solid var(--line);border-block-start:6px solid var(--purple);border-radius:16px}.invoice-paper h2{letter-spacing:-.05em;font-size:clamp(2rem,3vw,2.8rem);font-weight:800}.invoice-paper .facts{margin-block:1.25rem}.invoice-paper .facts strong{font-weight:700}.invoice-paper table{margin-block-start:2rem}.invoice-paper table th{border-block:1px solid var(--line);color:var(--purple)}.invoice-paper table td{padding-block:1.15rem}.invoice-foot{background:var(--pale);border-radius:8px;margin-block:1rem;padding:1.3rem}.invoice-foot strong{color:var(--purple);font-size:2.15rem;font-weight:800}.balance-panel{background:var(--purple);border-color:var(--purple);color:#fff}.balance-panel p,.balance-panel .eyebrow{color:#f3ecff}.balance-panel .button{color:var(--purple);background:#fff;font-weight:800}.client-grid aside>.field-note{background:var(--pale);border-radius:12px;padding:1rem}.client-footer{text-align:start;border-block-start:1px solid var(--line);justify-content:space-between;gap:1rem;margin-block-start:3rem;padding-block:1.5rem;display:flex}.client-footer:after{content:"Different people. Shared purpose."}@media (width<=760px){.sidebar{background:var(--ground);color:var(--ink);border-block-end:1px solid var(--line)}.sidebar .brand{color:var(--purple);font-size:1.8rem}.nav-button{color:var(--muted)}.workspace-title h1{font-size:2.6rem}.client-intro{gap:1rem;padding-block:0 1rem}.client-intro h1{font-size:clamp(2.6rem,9vw,4rem)}.client-footer{flex-direction:column}.login-story{padding-block-end:0}.login-bunch{max-inline-size:26rem;margin-inline:auto}.stat strong{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){button,.button{transition:none}}.balance-panel .button.secondary{color:#fff;background:0 0;border-color:#ffffff80}.client-grid{grid-template-areas:"paper summary"}.invoice-paper{grid-area:paper}.client-grid>aside{grid-area:summary}@media (width<=760px){.client-grid{grid-template-areas:"summary""paper"}}.company-details{gap:.25rem;line-height:1.25;display:grid}.company-details strong{line-height:1.2}.company-details .address{color:var(--muted)}.status{padding:.45rem .8rem;font-size:1rem;font-weight:700}.client-intro>.status{padding:.65rem 1.1rem;font-size:1.1rem}.filter{min-block-size:44px;padding:.6rem 1rem;font-size:1.05rem;font-weight:700}[data-action=pause],[data-recurring]{min-block-size:48px;padding:.75rem 1.2rem;font-size:1.05rem}.company-details>span{font-size:inherit}
