@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/inter-var-vietnamese-YEzCLjIM.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/inter-var-latin-8kRkwJBP.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight;font-style:normal;font-weight:600 800;font-display:swap;src:url(/assets/inter-tight-var-vietnamese-DDQOqr1r.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight;font-style:normal;font-weight:600 800;font-display:swap;src:url(/assets/inter-tight-var-latin-4AtXCUT1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-var-vietnamese-CNlsqbWb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/jetbrains-mono-var-latin-Db4Uuiha.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,html[data-theme=dark]{color-scheme:dark;--color-bg:#0a0a0b;--color-surface:#131316;--color-surface-2:#1b1b1f;--color-surface-3:#232329;--color-border:#26262b;--color-border-strong:#34343b;--color-text:#f4f4f1;--color-text-2:#a1a1a8;--color-text-3:#84848d;--color-accent:#c6f432;--color-accent-ink:#0a0a0b;--color-accent-text:#c6f432;--color-accent-soft:#c6f4321f;--color-owe:#f59e0b;--color-owe-light:#f59e0b1f;--color-owed:#2dd4bf;--color-owed-light:#2dd4bf1f;--color-danger:#f43f5e;--color-danger-hover:#fb7185;--color-danger-light:#f43f5e1f;--color-success:#2dd4bf;--color-success-light:#2dd4bf1f;--color-warning:#f59e0b;--color-warning-light:#f59e0b1f;--color-green:#2dd4bf;--color-primary:var(--color-accent);--color-primary-hover:#b4e21f;--color-primary-light:var(--color-accent-soft);--color-on-primary:var(--color-accent-ink);--color-canvas:var(--color-bg);--color-muted:var(--color-text-3);--color-error:var(--color-danger);--color-link:var(--color-accent-text);--color-ring:var(--color-accent-text);--color-neutral-50:#0a0a0b;--color-neutral-100:#131316;--color-neutral-200:#1b1b1f;--color-neutral-300:#26262b;--color-neutral-400:#34343b;--color-neutral-500:#84848d;--color-neutral-600:#a1a1a8;--color-neutral-700:#c8c8cc;--color-neutral-800:#e2e2df;--color-neutral-900:#f4f4f1;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -8px #0009;--shadow-lg:0 24px 64px -16px #000000b3;--shadow-pop:0 24px 64px -16px #000000b3, 0 0 0 1px var(--color-border);--font-display:"Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.25rem;--text-hero:clamp(2.75rem, 6vw, 4.75rem);--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--tracking-tight:-.02em;--tracking-display:-.035em;--tracking-label:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--rail-width:72px;--content-max:1200px;--motion-fast:.12s;--motion-base:.2s;--motion-slow:.32s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);--transition-fast:var(--motion-fast) var(--ease-out);--transition-normal:var(--motion-base) var(--ease-out)}html[data-theme=light]{color-scheme:light;--color-bg:#fafaf7;--color-surface:#fff;--color-surface-2:#f2f2ee;--color-surface-3:#e9e9e3;--color-border:#e4e4df;--color-border-strong:#d2d2cb;--color-text:#0a0a0b;--color-text-2:#55555c;--color-text-3:#6c6c72;--color-accent:#c6f432;--color-accent-ink:#0a0a0b;--color-accent-text:#4b780f;--color-accent-soft:#4d7c0f1a;--color-owe:#b05109;--color-owe-light:#b4530917;--color-owed:#0f766e;--color-owed-light:#0f766e17;--color-danger:#be123c;--color-danger-hover:#9f1239;--color-danger-light:#be123c14;--color-success:#0f766e;--color-success-light:#0f766e17;--color-warning:#b05109;--color-warning-light:#b4530917;--color-green:#0f766e;--color-primary:var(--color-accent);--color-primary-hover:#b4e21f;--color-primary-light:var(--color-accent-soft);--color-on-primary:var(--color-accent-ink);--color-canvas:var(--color-bg);--color-muted:var(--color-text-3);--color-error:var(--color-danger);--color-link:var(--color-accent-text);--color-ring:var(--color-accent-text);--color-neutral-50:#fafaf7;--color-neutral-100:#f2f2ee;--color-neutral-200:#e4e4df;--color-neutral-300:#d2d2cb;--color-neutral-400:#a6a6a0;--color-neutral-500:#6c6c72;--color-neutral-600:#55555c;--color-neutral-700:#3a3a40;--color-neutral-800:#1f1f23;--color-neutral-900:#0a0a0b;--shadow-sm:0 1px 2px #14140a0f;--shadow-md:0 8px 24px -8px #14140a24;--shadow-lg:0 24px 64px -20px #14140a40;--shadow-pop:0 24px 64px -20px #14140a40, 0 0 0 1px var(--color-border)}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}@keyframes bocbatho-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}html,body{background:var(--color-bg);color:var(--color-text)}body{font-family:var(--font-sans);font-size:var(--text-sm);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--font-bold);letter-spacing:var(--tracking-display);text-wrap:balance;line-height:1.1}a{color:var(--color-accent-text)}.bb-mono,.bb-money{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.bb-pos{color:var(--color-owed)}.bb-neg{color:var(--color-owe)}.bb-muted{color:var(--color-text-3)}.bb-eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-3);font-size:11px}.bb-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bb-view{padding:var(--space-7);max-width:var(--content-max);margin:0 auto}.bb-view-head{align-items:flex-end;gap:var(--space-3) var(--space-5);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.bb-view-head h1,.bb-view-head h2{font-size:var(--text-3xl);margin:0}.bb-view-head p{margin:var(--space-1) 0 0;color:var(--color-text-2)}.bb-view-head .bb-actions{gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.bb-bento{gap:var(--space-3);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.bb-span-3{grid-column:span 3}.bb-span-4{grid-column:span 4}.bb-span-6{grid-column:span 6}.bb-span-8{grid-column:span 8}.bb-span-12{grid-column:span 12}.bb-row-2{grid-row:span 2}.bb-stack{gap:var(--space-4);flex-direction:column;display:flex}.bb-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.bb-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:border-color var(--motion-base) var(--ease-out), transform var(--motion-base) var(--ease-out)}.bb-card--flush{padding:0;overflow:hidden}.bb-card--interactive{cursor:pointer}.bb-card--interactive:hover{border-color:var(--color-border-strong);transform:translateY(-2px)}.bb-btn{justify-content:center;align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-weight:var(--font-semibold);white-space:nowrap;transition:transform var(--motion-fast) var(--ease-out), background var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-base), color var(--motion-fast);font-size:13px;text-decoration:none;display:inline-flex}.bb-btn:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-2)}.bb-btn:active:not(:disabled){transform:scale(.97)}.bb-btn:disabled{opacity:.5}.bb-btn svg{flex:none;width:16px;height:16px}.bb-btn--primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.bb-btn--primary:hover:not(:disabled){background:var(--color-accent);border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-soft), 0 8px 24px -8px #c6f4328c}.bb-btn--ghost{color:var(--color-text-2);background:0 0;border-color:#0000}.bb-btn--ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text);border-color:#0000}.bb-btn--danger{color:var(--color-danger);background:var(--color-danger-light);border-color:color-mix(in srgb, var(--color-danger) 35%, transparent)}.bb-btn--danger:hover:not(:disabled){background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.bb-btn--sm{height:30px;padding:0 var(--space-3);border-radius:8px;font-size:12px}.bb-btn--lg{height:46px;padding:0 var(--space-5);font-size:var(--text-sm)}.bb-btn--block{width:100%}.bb-btn--icon{width:38px;padding:0}.bb-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite bocbatho-spin}.bb-field{font-size:12px;font-weight:var(--font-semibold);color:var(--color-text-2);flex-direction:column;gap:6px;display:flex}.bb-field__hint{font-weight:var(--font-normal);color:var(--color-text-3)}.bb-input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);width:100%;height:44px;color:var(--color-text);font-size:15px;font-weight:var(--font-normal);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);padding:0 14px}.bb-input::placeholder{color:var(--color-text-3)}.bb-input:hover{border-color:var(--color-border-strong)}.bb-input:focus{border-color:var(--color-ring);box-shadow:0 0 0 4px var(--color-accent-soft);outline:0}.bb-input[aria-invalid=true],.bb-input[data-invalid]{border-color:var(--color-danger)}.bb-input[aria-invalid=true]:focus{box-shadow:0 0 0 4px var(--color-danger-light)}.bb-input--mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.bb-input--sm{height:34px;padding:0 10px;font-size:13px}select.bb-input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--color-text-3) 50%), linear-gradient(135deg, var(--color-text-3) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}.bb-field__error{font-size:12px;font-weight:var(--font-medium);color:var(--color-danger)}.bb-numinput:focus-within{border-color:var(--color-ring);box-shadow:0 0 0 4px var(--color-accent-soft)}.bb-numinput__field{min-width:0;height:100%;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-text);background:0 0;border:0;outline:0;flex:1;padding:0 14px;font-size:15px}.bb-numinput__affix{background:var(--color-surface-3);color:var(--color-text-3);font-size:13px;font-weight:var(--font-semibold);align-self:stretch;place-items:center;padding:0 12px;display:grid}.bb-select-trigger{justify-content:space-between;align-items:center;gap:var(--space-2);text-align:left;cursor:pointer;display:flex}.bb-select-trigger[data-empty]{color:var(--color-text-3)}.bb-select-trigger__chev{color:var(--color-text-3);transition:transform var(--motion-base) var(--ease-out);flex:none}.bb-select-trigger__chev[data-open]{transform:rotate(180deg)}.bb-listbox{z-index:100;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:260px;margin:6px 0 0;padding:6px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.bb-listbox__opt{cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);border-radius:8px;align-items:center;gap:10px;padding:9px 10px;display:flex}.bb-listbox__opt[data-active]{background:var(--color-surface-2)}.bb-listbox__opt[aria-selected=true]{background:var(--color-accent-soft)}.bb-check{accent-color:var(--color-accent);pointer-events:none;width:16px;height:16px;margin:0}.bb-pop{animation:bb-pop var(--motion-base) var(--ease-out) both;transform-origin:top}@keyframes bb-pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.bb-seg{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);padding:3px;display:inline-flex;position:relative}.bb-seg__opt{height:30px;padding:0 var(--space-3);font-size:12px;font-weight:var(--font-semibold);color:var(--color-text-2);transition:color var(--motion-base);background:0 0;border:0;border-radius:7px;position:relative}.bb-seg__opt:hover,.bb-seg__opt[aria-pressed=true]{color:var(--color-text)}.bb-seg__label{z-index:1;position:relative}.bb-seg__thumb{background:var(--color-surface);box-shadow:0 0 0 1px var(--color-border-strong), 0 1px 2px #0003;border-radius:7px;position:absolute;inset:0}.bb-tag{border-radius:var(--radius-full);height:24px;font-size:11px;font-weight:var(--font-semibold);letter-spacing:.01em;white-space:nowrap;background:var(--color-surface-2);color:var(--color-text-2);align-items:center;gap:6px;padding:0 9px;display:inline-flex}.bb-tag__dot{background:currentColor;border-radius:50%;width:6px;height:6px}.bb-tag--owed,.bb-tag--success{background:var(--color-owed-light);color:var(--color-owed)}.bb-tag--owe,.bb-tag--warning{background:var(--color-owe-light);color:var(--color-owe)}.bb-tag--accent{background:var(--color-accent-soft);color:var(--color-accent-text)}.bb-tag--danger{background:var(--color-danger-light);color:var(--color-danger)}.bb-avatar{font-weight:var(--font-semibold);color:#0a0a0b;border-radius:50%;flex:none;place-items:center;display:inline-grid;overflow:hidden}.bb-avatar img{object-fit:cover;width:100%;height:100%}.bb-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow-x:auto}.bb-table{border-collapse:collapse;width:100%}.bb-table th{font-family:var(--font-mono);font-weight:var(--font-normal);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--color-text-3);text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:12px 16px;font-size:11px}.bb-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:14px 16px}.bb-table tbody tr:last-child td{border-bottom:0}.bb-table tbody tr{transition:background var(--motion-fast)}.bb-table--interactive tbody tr{cursor:pointer}.bb-table--interactive tbody tr:hover,.bb-table tbody tr:focus-visible{background:var(--color-surface-2)}.bb-table .bb-num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.bb-table tfoot td{background:var(--color-surface-2);color:var(--color-text-2);border-top:1px solid var(--color-border);border-bottom:0;font-size:12px}.bb-cards{gap:var(--space-2);flex-direction:column;display:none}.bb-mcard{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:1fr auto;gap:4px 12px;padding:14px;display:grid}.bb-lrow{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);transition:background var(--motion-fast);grid-template-columns:36px minmax(0,1fr) auto;margin:0 -8px;padding:10px 8px;display:grid}.bb-lrow--interactive{cursor:pointer}.bb-lrow--interactive:hover,.bb-lrow--interactive:focus-visible{background:var(--color-surface-2)}.bb-lrow__icon{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:10px;place-items:center;width:36px;height:36px;font-size:15px;display:grid}.bb-lrow__title{font-weight:var(--font-semibold);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bb-lrow__sub{color:var(--color-text-3);font-size:12px}.bb-lrow__amt{text-align:right}.bb-tabs{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4);gap:4px;display:flex;overflow-x:auto}.bb-tab{height:40px;font-weight:var(--font-semibold);color:var(--color-text-3);transition:color var(--motion-fast);white-space:nowrap;background:0 0;border:0;padding:0 14px;position:relative}.bb-tab:hover,.bb-tab[aria-selected=true]{color:var(--color-text)}.bb-tab__ink{background:var(--color-accent);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.bb-meter{background:var(--color-surface-2);border-radius:99px;height:6px;overflow:hidden}.bb-meter__fill{transform-origin:0;border-radius:99px;height:100%;display:block}.bb-steps{gap:var(--space-2);display:grid}.bb-step{gap:var(--space-2);font-size:12px;font-weight:var(--font-semibold);color:var(--color-text-3);flex-direction:column;display:flex}.bb-step__bar{background:var(--color-surface-3);border-radius:9px;height:4px;overflow:hidden}.bb-step__fill{background:var(--color-accent);transform-origin:0;height:100%;display:block}.bb-step[aria-current=step]{color:var(--color-text)}.bb-scrim{z-index:1000;padding:var(--space-4);background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.bb-scrim--top{place-items:start center;padding-top:12vh}.bb-dialog{background:var(--color-surface);border-radius:var(--radius-xl);width:min(480px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-pop);padding:var(--space-6);overflow:auto}.bb-dialog--wide{width:min(640px,100%)}.bb-dialog__title{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);margin:0 0 6px}.bb-dialog__body{color:var(--color-text-2);margin:0 0 var(--space-5)}.bb-dialog__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.bb-toasts{right:var(--space-5);bottom:var(--space-5);z-index:1100;gap:var(--space-2);pointer-events:none;flex-direction:column;align-items:flex-end;display:flex;position:fixed}.bb-toast{pointer-events:auto;background:var(--color-text);max-width:360px;color:var(--color-bg);font-weight:var(--font-semibold);border-radius:12px;align-items:center;gap:10px;padding:12px 14px 12px 12px;font-size:13px;display:flex;box-shadow:0 12px 32px -8px #00000080}.bb-toast__icon{background:var(--color-accent);width:22px;height:22px;color:var(--color-accent-ink);border-radius:50%;flex:none;place-items:center;font-size:12px;display:grid}.bb-toast--error .bb-toast__icon{background:var(--color-danger);color:#fff}.bb-skeleton{background:var(--color-surface-2);border-radius:var(--radius-md);position:relative;overflow:hidden}.bb-skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-text) 6%, transparent), transparent);animation:1.1s infinite bb-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes bb-shimmer{to{transform:translate(100%)}}.bb-empty{padding:var(--space-7);text-align:center;color:var(--color-text-3);border:1px dashed var(--color-border);border-radius:var(--radius-lg);align-items:center;gap:var(--space-3);flex-direction:column;font-size:13px;display:flex}.bb-empty__title{color:var(--color-text);font-weight:var(--font-semibold);font-size:var(--text-sm)}@media (width<=767px){.bb-view{padding:var(--space-5) var(--space-4) var(--space-6)}.bb-view-head h1,.bb-view-head h2{font-size:var(--text-2xl)}.bb-view-head .bb-actions{width:100%;margin-left:0}.bb-view-head .bb-actions>*{flex:1}.bb-bento>*{grid-column:span 12}.bb-table-wrap--cards{display:none}.bb-cards{display:flex}.bb-scrim{place-items:end center;padding:0}.bb-scrim--top{padding-top:0}.bb-dialog{width:100%;padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0}.bb-toasts{left:var(--space-4);right:var(--space-4);bottom:calc(76px + env(safe-area-inset-bottom,0px));align-items:stretch}.bb-toast{max-width:none}}
