@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/be-vietnam-pro-vietnamese-500-normal.e4f06173.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-vietnamese-500-normal.bf8fc1fa.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/be-vietnam-pro-latin-ext-500-normal.e57bcfaf.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-ext-500-normal.74fd0318.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/_next/static/media/be-vietnam-pro-latin-500-normal.40a8add6.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-500-normal.fc09bde8.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/be-vietnam-pro-vietnamese-600-normal.4b6c894c.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-vietnamese-600-normal.b452c973.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/be-vietnam-pro-latin-ext-600-normal.105394b1.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-ext-600-normal.e111544c.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/be-vietnam-pro-latin-600-normal.0d1580dd.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-600-normal.d972a64e.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/be-vietnam-pro-vietnamese-700-normal.d1687477.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-vietnamese-700-normal.f4f23940.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/be-vietnam-pro-latin-ext-700-normal.76a7e302.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-ext-700-normal.8c99ff83.woff) format("woff");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:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/be-vietnam-pro-latin-700-normal.1f2eb3f4.woff2) format("woff2"),url(/_next/static/media/be-vietnam-pro-latin-700-normal.9ffcf111.woff) format("woff");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}:root{--bg:#fff;--fg:#1d1d1f;--muted:#6e6e73;--surf:#f2f2f7;--line:#e5e5ea;--ink:#1d1d1f;--warn:#a05a00;--danger:#b3261e;--ok:#1d1d1f;--font:"Be Vietnam Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radius:14px;--radius-sm:10px;--wrap:720px;--header-h:56px;--pad:clamp(20px,5vw,40px);--ease:cubic-bezier(0.25,0.1,0.25,1)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-weight:500;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}button,input,select,textarea{font:inherit}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);width:100%}.site-header{border-bottom:1px solid var(--line);background:hsla(0,0%,100%,.92);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--header-h);gap:16px;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}.brand{display:flex;align-items:baseline;gap:8px;font-weight:700;letter-spacing:-.02em}.brand-mark{font-size:1.125rem}.brand-sub{font-weight:500}.brand-sub,.nav{color:var(--muted);font-size:.875rem}.nav{display:flex;gap:8px}.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px}.nav a:hover{color:var(--ink)}main{padding:32px 0 80px}.hero{margin-bottom:28px}.hero h1{margin:0 0 8px;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.15}.hero p{margin:0;color:var(--muted);max-width:36em}.totals{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:24px 0}.total-card{background:var(--surf);border-radius:var(--radius);padding:16px 18px}.total-card .label{font-size:.8125rem;color:var(--muted);margin:0 0 4px}.total-card .value{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.section{margin-top:28px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.section-head h2{margin:0;font-size:1rem;font-weight:600;letter-spacing:-.01em}.section-head .count{font-size:.8125rem;color:var(--muted)}.loan-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.loan-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);transition:opacity .15s var(--ease)}.loan-item:hover{opacity:.85}.loan-item .name{font-weight:600;letter-spacing:-.01em}.loan-item .meta{font-size:.8125rem;color:var(--muted);margin-top:2px}.loan-item .amt{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.badge{display:inline-block;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--surf);color:var(--muted)}.badge.warn{background:#fff4e5;color:var(--warn)}.badge.danger{background:#fdecea;color:var(--danger)}.badge.ok{background:var(--surf);color:var(--ink)}.empty{padding:20px 0;color:var(--muted)}.btn,.empty{font-size:.9375rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:980px;border:none;cursor:pointer;font-weight:600;letter-spacing:-.01em;transition:opacity .15s var(--ease),background .15s var(--ease);width:auto}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover:not(:disabled){opacity:.88}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover:not(:disabled){background:var(--surf)}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--line)}.cta-bar{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.form{display:flex;flex-direction:column;gap:18px;max-width:420px}.field label{display:block;font-size:.8125rem;font-weight:600;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg)}.field textarea{min-height:80px;resize:vertical}.field .hint{margin:6px 0 0;font-size:.75rem;color:var(--muted)}.dir-toggle{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.dir-toggle button{padding:12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);cursor:pointer;font-weight:600;font-size:.875rem}.dir-toggle button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.detail-head{margin-bottom:24px}.detail-head h1{margin:0 0 6px;font-size:1.75rem;font-weight:600;letter-spacing:-.03em}.detail-head .sub{color:var(--muted);margin:0}.stat-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;margin:20px 0}.stat{background:var(--surf);border-radius:var(--radius);padding:14px 16px}.stat .k{font-size:.75rem;color:var(--muted);margin:0 0 4px}.stat .v{margin:0;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.actions{display:flex;flex-direction:column;gap:10px;margin-top:24px;max-width:360px}.actions .btn{width:100%}.pay-form,.remind-form{display:flex;flex-direction:column;gap:12px;margin-top:8px;padding:16px;background:var(--surf);border-radius:var(--radius)}.pay-form input,.remind-form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);font:inherit;color:var(--fg)}.remind-form textarea{resize:vertical;line-height:1.5}.form-foot{display:flex;gap:8px;margin-top:4px}.form-foot .btn{flex:1 1}.pay-form .hint{margin:-6px 0 0;font-size:.75rem;color:var(--muted)}.pay-form label,.remind-form label{font-size:.8125rem;font-weight:600}.remind-form select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg)}.remind-form .hint{margin:-4px 0 0;font-size:.75rem;color:var(--muted)}.action-details{margin-top:4px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}.action-details summary{color:var(--fg);cursor:pointer;font-weight:600;list-style:none;padding:10px 0}.action-details summary::-webkit-details-marker{display:none}.action-details summary:after{content:"+";float:right;color:var(--muted);font-weight:500}.action-details[open] summary:after{content:"−"}.action-details p{margin:10px 0;line-height:1.5}.disclaimer{margin-top:16px;font-size:.75rem;color:var(--muted);line-height:1.45}.print-sheet{max-width:640px;margin:0 auto;padding:24px var(--pad) 60px}.print-watermark{font-size:.75rem;color:var(--muted);margin:0 0 16px}.print-dl{display:grid;grid-gap:12px;gap:12px;margin:20px 0}.print-dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.print-dl dt{color:var(--muted);font-size:.8125rem}.print-dl dd{margin:0;font-weight:600}.print-foot{margin-top:24px;font-size:.75rem;color:var(--muted)}@media print{.nav,.no-print,.site-footer,.site-header{display:none!important}.print-sheet{padding:0}body{background:#fff}}.bare{min-height:100vh;align-items:flex-start;padding:24px 0 60px}.bare,.bare-brand{display:flex;justify-content:center}.bare-brand{align-items:baseline;gap:8px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}.bare-foot{text-align:center;font-size:.75rem;color:var(--muted);margin-top:20px}.confirm-card{max-width:420px;margin:24px auto 0;padding:28px 24px;background:var(--surf);border-radius:var(--radius)}.confirm-card h1{margin:0 0 8px;font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.confirm-card .amt{font-size:1.75rem;font-weight:700;margin:16px 0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.confirm-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px}.confirm-actions .btn{width:100%}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:980px;font-size:.875rem;font-weight:600;z-index:100;animation:fadeIn .2s var(--ease)}@keyframes fadeIn{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.site-footer{border-top:1px solid var(--line);padding:24px 0;font-size:.8125rem;color:var(--muted)}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between}@media (max-width:480px){.totals{grid-template-columns:1fr}}