:root{color:#111;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f5f4ef;min-width:320px;min-height:100vh;margin:0}.topbar{color:#fff;background:#0a0a0a}.topbar-inner,.nav-inner,.content{width:min(100% - 32px,1120px);margin:auto}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex}.brand{letter-spacing:-.03em;font-weight:900}.brand-subtitle{color:#aaa;margin-top:2px;font-size:12px}.topbar-actions,.detail-actions,.modal-actions,.heading-actions{align-items:center;gap:10px;display:flex}.nav{background:#fff;border-bottom:1px solid #d9d5c9}.nav-inner{gap:6px;padding:8px 0;display:flex;overflow-x:auto}.nav-button{color:#6b6656;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;padding:9px 16px;font-weight:700}.nav-button.active{color:#fff;background:#1b5e35}.content{padding:28px 0 48px}.page-heading,.detail-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.page-heading.compact{margin-top:26px;margin-bottom:14px}.page-heading h1,.detail-header h1{letter-spacing:-.04em;margin:0;font-size:clamp(24px,4vw,32px)}.page-heading h2{margin:0}.page-heading p,.detail-header p{color:#6b6656;margin:5px 0 0}.title-row{align-items:center;gap:10px;display:flex}.saved-indicator{color:#1b5e35;background:#eaf3ed;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.alert,.closed-notice{color:#b91c1c;background:#fee2e2;border:1px solid #b91c1c;border-radius:8px;margin-bottom:20px;padding:12px 14px;font-weight:700}.closed-notice{color:#7a4a10;background:#fef3c7;border-color:#b7791f}.division-panel{background:#fff;border:1px solid #d9d5c9;border-radius:12px;margin-bottom:18px;padding:20px}.division-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.division-heading h2{margin:2px 0 0}.division-kicker{letter-spacing:.12em;color:#6b6656;font-size:10px;font-weight:900}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.stat-grid.partnership-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{background:#fff;border:1px solid #d9d5c9;border-top:4px solid #1b5e35;border-radius:8px;padding:16px}.stat-card span,.detail-grid span{color:#6b6656;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.stat-card strong{margin:8px 0 4px;font-family:Consolas,monospace;font-size:clamp(16px,2vw,20px);display:block}.stat-card small{color:#6b6656}.table-card{background:#fff;border:1px solid #d9d5c9;border-radius:8px;margin-bottom:20px;overflow:hidden}.section-title{letter-spacing:.08em;text-transform:uppercase;color:#6b6656;border-bottom:1px solid #d9d5c9;padding:14px 16px;font-size:11px;font-weight:800}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{color:#6b6656;text-transform:uppercase;text-align:left;background:#f9f8f4;padding:10px 12px;font-size:11px}td{border-top:1px solid #e4e0d7;padding:12px;font-size:13px}tbody tr{cursor:pointer}.badge,.period-badge{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:5px;padding:3px 9px;font-size:10px;font-weight:900;display:inline-block}.badge-active{color:#1b5e35;background:#eaf3ed}.badge-overdue{color:#b91c1c;background:#fee2e2}.badge-paid{color:#0369a1;background:#e0f2fe}.period-badge.closed{color:#374151;background:#e5e7eb}.button{cursor:pointer;color:#fff;background:#1b5e35;border:0;border-radius:6px;padding:10px 16px;font-weight:800}.button:hover{filter:brightness(.94)}.button-small{padding:7px 12px;font-size:12px}.button-ghost{color:#111;background:0 0;border:1px solid #d9d5c9}.button-ghost-light{color:#fff;background:0 0;border:1px solid #555}.search,.period-select{background:#fff;border:1px solid #d9d5c9;border-radius:7px;width:min(100%,290px);padding:10px 12px}.filters{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.filter{color:#6b6656;text-transform:capitalize;cursor:pointer;background:0 0;border:1px solid #d9d5c9;border-radius:6px;padding:7px 12px;font-weight:700}.loan-list{gap:12px;display:grid}.loan-card{cursor:pointer;background:#fff;border:1px solid #d9d5c9;border-radius:9px;padding:17px}.loan-card.overdue{border-color:#b91c1c}.loan-card-top{justify-content:space-between;gap:20px;margin-bottom:12px;display:flex}.loan-card h3,.partner-card h3{margin:0}.loan-card p,.partner-card p{color:#6b6656;margin:5px 0 0;font-size:12px}.loan-card-balance{justify-items:end;gap:7px;display:grid}.loan-card-balance strong{font-family:Consolas,monospace;font-size:18px}.progress{background:#d9d5c9;border-radius:999px;height:6px;overflow:hidden}.progress span{background:#1b5e35;height:100%;display:block}.progress.large{height:9px}.loan-card-bottom{color:#6b6656;justify-content:space-between;gap:12px;margin-top:8px;font-size:11px;display:flex}.detail-header{justify-content:flex-start}.detail-header>div:nth-child(2){flex:1}.back-button{color:#6b6656;cursor:pointer;background:0 0;border:0}.detail-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.detail-grid article{background:#fff;border:1px solid #d9d5c9;border-radius:8px;padding:14px}.detail-grid strong{margin-top:7px;font-family:Consolas,monospace;font-size:18px;display:block}.partnership-detail-grid article{border-top:3px solid #6d28d9}.balance-card{border:2px solid;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:18px 20px;display:flex}.balance-card span{letter-spacing:.08em;font-size:11px;font-weight:900;display:block}.balance-card strong{font-family:Consolas,monospace;font-size:30px;display:block}.balance-card>div:last-child{gap:8px;display:grid}.detail-progress{margin-bottom:20px}.detail-progress>div:first-child{color:#6b6656;justify-content:space-between;margin-bottom:7px;font-size:12px;display:flex}.notes-card{color:#6b6656;background:#f9f8f4;border:1px solid #d9d5c9;border-radius:8px;padding:13px 15px}.delete-area{justify-content:flex-end;margin-top:18px;display:flex}.modal-backdrop{z-index:100;background:#00000085;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:min(100%,520px);max-height:92vh;overflow:auto;box-shadow:0 25px 80px #0000004d}.modal-wide{width:min(100%,760px)}.modal-header{border-bottom:1px solid #d9d5c9;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-header h2{margin:0;font-size:18px}.modal-close{cursor:pointer;background:0 0;border:0;font-size:26px}.modal-body{padding:20px}.form-grid{gap:14px;display:grid}.field{gap:5px;display:grid}.field span{color:#6b6656;text-transform:uppercase;font-size:11px;font-weight:800}.field input,.field textarea,.field select{resize:vertical;background:#f9f8f4;border:1px solid #d9d5c9;border-radius:7px;padding:10px 11px}.preview{background:#fef3c7;border:1px solid #b7791f;border-radius:8px;padding:13px}.partnership-preview{background:#f5f3ff;border-color:#7c3aed}.preview>div,.summary-box>div,.danger-box>div{justify-content:space-between;gap:15px;padding:4px 0;display:flex}.preview-total,.danger-total{border-top:1px solid;margin-top:5px;padding-top:9px!important}.modal-actions{justify-content:flex-end}.summary-box{background:#f9f8f4;border-radius:8px;padding:12px}.danger-box{color:#b91c1c;background:#fee2e2;border:1px solid #b91c1c;border-radius:8px;padding:14px}.backup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.backup-card{background:#fff;border:1px solid #d9d5c9;border-radius:9px;padding:18px}.backup-card h3{margin:0}.backup-card p{color:#6b6656;min-height:52px}.empty-state{text-align:center;color:#6b6656;padding:28px}.empty-panel{text-align:center;background:#fff;border:1px dashed #b8b2a4;border-radius:12px;padding:42px 20px}.empty-panel h3{margin-top:0}.empty-panel p{color:#6b6656}.month-toolbar{background:#fff;border:1px solid #d9d5c9;border-left:5px solid #6d28d9;border-radius:9px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:14px 16px;display:flex}.month-toolbar>div{gap:3px;display:grid}.month-toolbar span{color:#6b6656;font-size:12px}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.partner-card{cursor:pointer;background:#fff;border:1px solid #d9d5c9;border-radius:10px;padding:16px;transition:all .15s}.partner-card:hover{border-color:#6d28d9;transform:translateY(-1px)}.partner-card-top{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.partner-card-top>strong{font-family:Consolas,monospace;font-size:18px}.partner-metrics{border-top:1px solid #ece8df;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px;padding-top:12px;display:grid}.partner-metrics span{color:#6b6656;font-size:11px}.partner-metrics b{color:#111;margin-top:3px;display:block}.no-activity-label{color:#6b6656;background:#f9f8f4;border-radius:6px;margin-top:11px;padding:7px 9px;font-size:11px}.entry-type{text-transform:uppercase;font-size:11px}.entry-type.payment{color:#1b5e35}.entry-type.opening{color:#92400e}.text-red{color:#b91c1c}.text-green{color:#1b5e35}@media (width<=820px){.topbar-inner,.nav-inner,.content{width:min(100% - 22px,1120px)}.stat-grid,.stat-grid.partnership-stats,.detail-grid{grid-template-columns:repeat(2,1fr)}.backup-grid,.partner-grid{grid-template-columns:1fr}.wrap{flex-direction:column;align-items:stretch}.heading-actions{flex-wrap:wrap;align-items:stretch}.search,.period-select{width:100%}.loan-card-bottom{grid-template-columns:1fr 1fr;display:grid}.month-toolbar{flex-direction:column;align-items:stretch}}@media (width<=540px){.topbar-inner{align-items:flex-start;padding:10px 0}.topbar-actions{display:grid}.stat-grid,.stat-grid.partnership-stats,.detail-grid{grid-template-columns:1fr}.balance-card{flex-direction:column;align-items:stretch}.loan-card-bottom{grid-template-columns:1fr}.modal-actions{grid-template-columns:1fr 1fr;display:grid}.partner-metrics{grid-template-columns:1fr}.page-heading,.detail-header{flex-direction:column;align-items:stretch}.detail-header .back-button{align-self:flex-start}.division-heading{flex-direction:column;align-items:stretch}}.overall-owed-card{color:#fff;background:#111;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:22px 24px;display:flex;box-shadow:0 10px 30px #00000014}.overall-owed-card span{letter-spacing:.1em;text-transform:uppercase;color:#c8c8c8;font-size:11px;font-weight:900;display:block}.overall-owed-card strong{margin:7px 0 5px;font-family:Consolas,monospace;font-size:clamp(28px,5vw,42px);display:block}.overall-owed-card small{color:#d2d2d2}.overall-owed-period{color:#e5e5e5;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px;padding:11px 13px;font-size:12px}@media (width<=650px){.overall-owed-card{flex-direction:column;align-items:stretch}.overall-owed-period{white-space:normal}}.month-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.closed-notice-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.closed-notice-actions>span{flex:1}@media (width<=820px){.month-actions{justify-content:flex-start}.closed-notice-actions{flex-direction:column;align-items:stretch}}.loan-month-toolbar{background:#fff;border:1px solid #d9d5c9;border-left:5px solid #1b5e35;border-radius:9px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:13px 16px;display:flex}.loan-month-toolbar>div{gap:2px;display:grid}.loan-month-toolbar span{letter-spacing:.08em;text-transform:uppercase;color:#6b6656;font-size:10px;font-weight:900}.loan-month-toolbar b{font-size:16px}.loan-month-toolbar small{color:#6b6656;text-align:right}.loan-title-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.loan-month-pill{color:#1b5e35;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#eaf3ed;border:1px solid #b7d5c1;border-radius:999px;align-items:center;padding:3px 8px;font-size:10px;font-weight:900;display:inline-flex}.loan-month-pill.large{padding:5px 10px;font-size:11px}.field-help{color:#6b6656;margin-top:-8px;font-size:11px;line-height:1.4}@media (width<=820px){.loan-month-toolbar{flex-direction:column;align-items:flex-start}.loan-month-toolbar small{text-align:left}}.badge-rolled{color:#92400e;background:#fef3c7}.text-amber{color:#92400e}.moved-notice{color:#7a4a10;background:#fef3c7;border:1px solid #b7791f;border-radius:8px;margin-bottom:16px;padding:12px 14px}.rollover-summary{border-left:4px solid #92400e}.rollover-preview{background:#fff7ed;border-color:#c2410c}.rollover-help{color:#6b6656;background:#f9f8f4;border:1px solid #d9d5c9;border-radius:7px;padding:10px 12px;font-size:12px;line-height:1.5}.dashboard-summary-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;display:grid}.dashboard-summary-grid .overall-owed-card{margin-bottom:0}.overall-profit-card{color:#fff;background:linear-gradient(135deg,#14532d,#1b5e35);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex;box-shadow:0 10px 30px #1b5e352e}.overall-profit-card span{letter-spacing:.1em;text-transform:uppercase;color:#d1fae5;font-size:11px;font-weight:900;display:block}.overall-profit-card strong{margin:7px 0 5px;font-family:Consolas,monospace;font-size:clamp(28px,5vw,42px);display:block}.profit-expected{color:#f0fdf4;white-space:nowrap;background:#ffffff1c;border:1px solid #fff3;border-radius:8px;padding:11px 13px;font-size:12px}.dashboard-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.history-notice{color:#3730a3;background:#eef2ff;border:1px solid #818cf8;border-radius:8px;margin-bottom:18px;padding:12px 14px;font-size:13px;font-weight:700}.history-table tbody tr{cursor:default}.audit-action{color:#374151;text-transform:uppercase;letter-spacing:.05em;background:#e5e7eb;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;display:inline-block}.audit-action.deleted{color:#b91c1c;background:#fee2e2}.audit-action.restored{color:#1b5e35;background:#eaf3ed}.audit-action.created,.audit-action.payment-recorded,.audit-action.cash-recorded{color:#1d4ed8;background:#dbeafe}.audit-action.edited{color:#92400e;background:#fef3c7}.audit-reason{color:#6b6656;margin-top:4px;display:block}.entry-deleted{opacity:.62;text-decoration:line-through}.soft-delete-note{color:#6b6656;margin-top:6px;font-size:11px}@media (width<=900px){.dashboard-summary-grid{grid-template-columns:1fr}.overall-profit-card{flex-direction:column;align-items:stretch}.profit-expected{white-space:normal}.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=540px){.dashboard-stat-grid{grid-template-columns:1fr}}.login-shell{background:radial-gradient(circle at top,#edf7f0 0,#f5f4ef 42%,#efede5 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #d9d5c9;border-radius:16px;width:min(100%,440px);padding:30px;box-shadow:0 24px 70px #0000001f}.login-brand{letter-spacing:-.04em;color:#1b5e35;font-size:18px;font-weight:950}.login-subtitle{color:#6b6656;margin:3px 0 26px;font-size:12px}.login-card h1{letter-spacing:-.04em;margin:0 0 8px;font-size:30px}.login-intro{color:#6b6656;margin:0 0 22px;line-height:1.55}.login-form{gap:15px;display:grid}.login-form .button{width:100%;margin-top:3px}.login-error{color:#991b1b;background:#fee2e2;border:1px solid #b91c1c;border-radius:7px;padding:10px 12px;font-size:13px}.login-note{color:#6b6656;margin-top:18px;line-height:1.5;display:block}.app-loading{color:#6b6656;background:#f5f4ef;align-content:center;place-items:center;gap:8px;min-height:100vh;display:grid}.app-loading .login-brand{font-size:22px}.button:disabled{opacity:.58;cursor:not-allowed;filter:none}.cloud-status{white-space:nowrap;color:#374151;background:#e5e7eb;border-radius:999px;align-items:center;gap:7px;max-width:260px;padding:7px 10px;font-size:11px;font-weight:850;display:inline-flex}.cloud-status:before{content:"";background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.cloud-status-pending,.cloud-status-checking{color:#92400e;background:#fef3c7}.cloud-status-syncing{color:#1d4ed8;background:#dbeafe}.cloud-status-error{color:#b91c1c;background:#fee2e2}.account-box{border-left:1px solid #333;align-items:center;gap:8px;padding-left:10px;display:flex}.account-box span{text-overflow:ellipsis;color:#bdbdbd;max-width:180px;font-size:11px;overflow:hidden}.account-box button{color:#fff;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;font-size:11px;font-weight:800;text-decoration:underline}.cloud-conflict,.cloud-error-banner{border-radius:10px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:16px 18px;display:flex}.cloud-conflict{color:#4c1d95;background:#f5f3ff;border:1px solid #7c3aed}.cloud-conflict strong,.cloud-error-banner strong{margin-bottom:4px;display:block}.cloud-conflict p{margin:0;line-height:1.45}.cloud-conflict-actions,.cloud-backup-actions{flex-wrap:wrap;gap:9px;display:flex}.cloud-error-banner{color:#9f1239;background:#fff1f2;border:1px solid #be123c}.cloud-error-banner span{flex:1;font-size:13px}.cloud-backup-panel{background:#fff;border:1px solid #d9d5c9;border-left:5px solid #1d4ed8;border-radius:11px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:18px 20px;display:flex}.cloud-backup-panel h2{margin:3px 0 6px}.cloud-backup-panel p{color:#6b6656;margin:0 0 7px;line-height:1.5}.cloud-backup-panel small{color:#6b6656}.cloud-backup-actions{justify-content:flex-end}@media (width<=980px){.topbar-inner{align-items:flex-start;padding:10px 0}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.cloud-status{order:3}.account-box{border-left:0;order:4;justify-content:flex-end;width:100%;padding-left:0}}@media (width<=720px){.cloud-conflict,.cloud-error-banner,.cloud-backup-panel{flex-direction:column;align-items:stretch}.cloud-conflict-actions,.cloud-backup-actions{grid-template-columns:1fr;display:grid}.cloud-backup-actions .button,.cloud-conflict-actions .button{width:100%}.topbar-actions{display:flex}.cloud-status{max-width:100%}.account-box{justify-content:flex-start}}:root{--brand-deep:#054c68;--brand-dark:#06384b;--brand:#087fae;--brand-bright:#0b92c5;--brand-soft:#e8f5fa;--brand-line:#b9dce9;--ink:#092f3e;--muted:#5e7480;--surface:#fff;--surface-soft:#f4f9fb;--page:#edf5f8;--success:#16744a;--danger:#b4232d;--warning:#a45a13;color:var(--ink);background:var(--page)}html{background:var(--page);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;min-width:320px}body{min-width:320px;color:var(--ink);background:radial-gradient(circle at 8% 0%, #0b92c51f, transparent 28rem), linear-gradient(180deg, #f8fbfc 0%, var(--page) 100%);overflow-x:hidden}button,input,select,textarea{font:inherit}button{touch-action:manipulation}.app-shell{min-height:100dvh}.topbar{background:linear-gradient(120deg,#054c68fa,#06384bfa);position:relative;overflow:hidden;box-shadow:0 12px 35px #06384b38}.topbar:after{content:"";opacity:.075;pointer-events:none;background:url(/wavhudi-mark.png) 50%/contain no-repeat;width:360px;height:240px;position:absolute;top:-75px;right:-95px}.topbar-inner{z-index:1;width:min(100% - 40px,1180px);min-height:84px;position:relative}.brand-lockup{align-items:center;gap:13px;min-width:230px;display:flex}.brand-mark-shell{background:#fff;border:1px solid #ffffff47;border-radius:15px;flex:0 0 54px;place-items:center;width:54px;height:54px;display:grid;overflow:hidden;box-shadow:0 10px 25px #0000002e}.brand-mark{object-fit:contain;width:48px;height:48px}.brand{color:#fff;letter-spacing:.05em;font-size:21px;font-weight:950}.brand-subtitle{color:#c9e6f0;letter-spacing:.025em;font-size:11px}.topbar-actions{z-index:1;flex-wrap:wrap;justify-content:flex-end;position:relative}.account-box{border-left-color:#ffffff3d}.account-box span{color:#d5eaf1}.nav{z-index:60;border-bottom:1px solid var(--brand-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;position:sticky;top:0;box-shadow:0 5px 18px #06384b0f}.nav-inner{width:min(100% - 40px,1180px);padding:9px 0}.nav-button{color:#53707c;border-radius:10px;transition:background .18s,color .18s,transform .18s}.nav-button:hover{color:var(--brand-deep);background:var(--brand-soft)}.nav-button.active{color:#fff;background:linear-gradient(135deg, var(--brand), var(--brand-deep));box-shadow:0 7px 18px #087fae38}.content{width:min(100% - 40px,1180px);padding:30px 0 60px}.page-heading h1,.detail-header h1,.dashboard-hero h1{color:var(--ink)}.page-heading p,.detail-header p{color:var(--muted)}.dashboard-hero{isolation:isolate;color:#fff;background:radial-gradient(circle at 88% 20%, #ffffff30, transparent 24rem), linear-gradient(130deg, var(--brand-deep), var(--brand) 64%, var(--brand-bright));border:1px solid #087fae2e;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;min-height:150px;margin-bottom:20px;padding:28px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #054c682e}.dashboard-hero:before{content:"";z-index:-1;background:linear-gradient(100deg,#0000001f,#0000 60%);position:absolute;inset:0}.dashboard-hero h1{color:#fff;letter-spacing:-.045em;margin:5px 0 6px;font-size:clamp(28px,5vw,42px)}.dashboard-hero p{color:#d9eef5;max-width:580px;margin:0}.dashboard-eyebrow{color:#bde6f4;letter-spacing:.16em;font-size:10px;font-weight:900}.dashboard-hero-mark{z-index:-1;object-fit:contain;opacity:.12;filter:brightness(0)invert();width:260px;height:190px;position:absolute;top:-20px;right:85px}.dashboard-hero .saved-indicator{color:#e9f8fd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff21;border:1px solid #ffffff47;flex:none}.division-panel,.table-card,.loan-card,.partner-card,.backup-card,.detail-grid article,.notes-card,.month-toolbar,.loan-month-toolbar,.cloud-backup-panel{background:#fffffff7;border-color:#cfe1e8;box-shadow:0 10px 28px #06384b0e}.division-panel{border-radius:18px;padding:22px}.division-panel.partnership-panel{border-top:4px solid var(--brand-bright)}.division-kicker{color:var(--brand)}.stat-card{border-color:#cfe1e8;border-top-color:var(--brand);background:linear-gradient(#fff,#f9fcfd);border-radius:13px;transition:transform .18s,box-shadow .18s;position:relative;overflow:hidden;box-shadow:0 8px 24px #06384b0e}.stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #06384b1a}.stat-card.partnership-card{border-top-color:var(--brand-bright)}.stat-card span,.detail-grid span{color:var(--muted)}.overall-owed-card{background:radial-gradient(circle at 100% 0%, #0b92c559, transparent 19rem), linear-gradient(135deg, #072f40, var(--brand-deep));border:1px solid #ffffff14;border-radius:18px;box-shadow:0 16px 38px #054c6833}.overall-profit-card{background:radial-gradient(circle at 100% 0%, #ffffff29, transparent 19rem), linear-gradient(135deg, var(--brand), var(--brand-bright));border-radius:18px;box-shadow:0 16px 38px #087fae33}.overall-profit-card span{color:#d9f3fc}.overall-profit-card small{color:#e7f8fd}.loan-card{border-radius:15px;padding:18px;transition:transform .18s,border-color .18s,box-shadow .18s}.loan-card:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 14px 34px #06384b1f}.loan-card.overdue{border-left:5px solid var(--danger);border-top-color:#cfe1e8}.loan-card h3,.partner-card h3{color:var(--ink)}.loan-card p,.partner-card p,.loan-card-bottom{color:var(--muted)}.progress{background:#d9e8ee}.progress span{background:linear-gradient(90deg, var(--brand), var(--brand-bright))}.partnership-progress span{background:linear-gradient(90deg, var(--brand-bright), #36b8dd)}.loan-month-toolbar{border-left-color:var(--brand)}.month-toolbar{border-left-color:var(--brand-bright)}.loan-month-pill{color:var(--brand-deep);border-color:var(--brand-line);background:var(--brand-soft)}.topup-pill{white-space:nowrap;color:#075f7f;letter-spacing:.035em;text-transform:uppercase;background:#e4f7fd;border:1px solid #85cbe2;border-radius:999px;align-items:center;padding:4px 9px;font-size:10px;font-weight:900;display:inline-flex}.period-badge.open{color:var(--brand-deep);background:var(--brand-soft)}.partnership-detail-grid article{border-top-color:var(--brand-bright)}.partner-card:hover{border-color:var(--brand-bright)}.partnership-preview{color:#075f7f;background:#eaf8fd;border-color:#65bcd9}.entry-type.cash{color:var(--brand)}.cloud-status-cloud-newer{color:var(--brand-deep);background:var(--brand-soft)}.cloud-conflict{color:var(--brand-deep);border-color:var(--brand);background:#edf8fc}.button{color:#fff;background:linear-gradient(135deg, var(--brand), var(--brand-deep));border-radius:10px;min-height:40px;padding:10px 17px;transition:transform .15s,filter .15s,box-shadow .15s;box-shadow:0 7px 17px #087fae29}.button:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 10px 21px #087fae3b}.button-small{min-height:34px;padding:7px 12px}.button-topup{color:#fff;background:linear-gradient(135deg,#078bb8,#0aa4d4);box-shadow:0 8px 20px #0aa4d43d}.button-blue{background:linear-gradient(135deg,#1267a4,#0b83b4)}.button-amber{background:linear-gradient(135deg,#a85d16,#81400b)}.button-danger{background:linear-gradient(135deg,#c3333d,#9f1823)}.button-ghost{color:var(--ink);box-shadow:none;background:#fff;border-color:#bfd3dc}.button-ghost:hover{color:var(--brand-deep);border-color:var(--brand);background:var(--brand-soft)}.button-ghost-light{color:#fff;box-shadow:none;background:#ffffff12;border-color:#fff6}.button-ghost-light:hover{background:#ffffff29}.filter{color:#58727e;background:#fff;border-color:#c9dce4;border-radius:999px}.filter.active{color:var(--brand-deep);background:var(--brand-soft);border-color:#8ac7dc}.search,.period-select,.field input,.field textarea,.field select{color:var(--ink);background:#fff;border-color:#bdd4dd;outline:none;transition:border-color .15s,box-shadow .15s}.search:focus,.period-select:focus,.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--brand);box-shadow:0 0 0 4px #087fae1f}.field span{color:#58727e}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-grid article{border-radius:13px}.loan-detail-grid article:nth-child(2),.loan-detail-grid article:nth-child(3){border-top:3px solid var(--brand-bright)}.balance-card{border-radius:16px;box-shadow:0 12px 30px #06384b12}.balance-card.unpaid{color:#9d1f29;background:linear-gradient(135deg,#fff1f2,#ffe7e9);border-color:#d9545e}.balance-card.paid{color:var(--success);background:linear-gradient(135deg,#edf9f3,#ddf5e8);border-color:#5ab78b}.loan-action-panel{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:8px;display:flex}.topup-summary{border-left:4px solid var(--brand)}.topup-preview{color:#075f7f;background:#eaf8fd;border-color:#65bcd9}.topup-help{border:1px solid var(--brand-line);color:#426673;background:var(--surface-soft);border-radius:9px;padding:11px 12px;font-size:12px;line-height:1.5}.text-blue{color:#087fae}.table-card{border-radius:14px}.section-title{color:#56717d;background:#f8fbfc;border-bottom-color:#d7e5ea}.table-scroll{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}th{color:#55707b;background:#f3f8fa}td{border-top-color:#dde9ed}tbody tr:hover{background:#f4fafc}.login-shell{background:radial-gradient(circle at 12% 12%,#0b92c552,#0000 26rem),radial-gradient(circle at 88% 88%,#054c6847,#0000 28rem),linear-gradient(145deg,#eaf6fa,#f9fbfc 48%,#dceef4);padding:24px;position:relative;overflow:hidden}.login-shell:before,.login-shell:after{content:"";pointer-events:none;border:1px solid #087fae29;border-radius:50%;position:absolute}.login-shell:before{width:420px;height:420px;bottom:-180px;left:-240px}.login-shell:after{width:300px;height:300px;top:-120px;right:-150px}.login-card{z-index:1;border:1px solid #087fae2e;border-top:6px solid var(--brand);border-radius:24px;width:min(100%,470px);padding:30px;position:relative;overflow:hidden;box-shadow:0 28px 80px #054c6833}.login-logo-wrap{text-align:center;justify-items:center;gap:6px;margin:-8px 0 24px;display:grid}.login-logo{width:min(100%,260px);height:auto;display:block}.login-subtitle{color:var(--brand-deep);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:850}.login-card h1{color:var(--ink)}.login-intro,.login-note{color:var(--muted)}.app-loading{background:radial-gradient(circle at top,#0b92c529,#0000 28rem),#f4f9fb;min-height:100dvh}.loading-logo{width:min(72vw,300px);height:auto}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#04202ba8}.modal{border:1px solid #087fae29;border-radius:18px;box-shadow:0 32px 90px #04202b57}.modal-header{color:var(--ink);background:linear-gradient(#fff,#f6fafb);border-bottom-color:#d7e5ea}.modal-close{color:#47646f;border-radius:10px;width:40px;height:40px}.modal-close:hover{color:var(--brand-deep);background:var(--brand-soft)}.saved-indicator{color:#075f7f;background:#e4f7fd}.cloud-status-synced{color:#12663f;background:#dcf6e9}.cloud-backup-panel{border-left-color:var(--brand)}@media (width<=900px){.topbar-inner,.nav-inner,.content{width:min(100% - 24px,1180px)}.dashboard-summary-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-actions{gap:7px}}@media (width<=720px){body{background:#eff6f8}.topbar{box-shadow:0 8px 24px #06384b33}.topbar:after{width:250px;height:170px;top:-35px;right:-90px}.topbar-inner{flex-direction:column;align-items:stretch;gap:12px;width:calc(100% - 24px);min-height:auto;padding:13px 0 15px}.brand-lockup{min-width:0}.brand-mark-shell{border-radius:13px;flex-basis:48px;width:48px;height:48px}.brand-mark{width:43px;height:43px}.brand{font-size:18px}.brand-subtitle{max-width:245px;font-size:10px}.topbar-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;display:grid}.topbar-actions .button{width:100%;min-height:43px}.topbar-actions .cloud-status{grid-column:1/-1;justify-content:center;max-width:none;min-height:36px}.account-box{border-top:1px solid #ffffff2e;border-left:0;grid-column:1/-1;justify-content:space-between;width:100%;padding:9px 1px 0}.account-box span{max-width:70%}.nav{z-index:90;background:#fffffff5;border-top:1px solid #c8dde5;border-bottom:0;position:fixed;inset:auto 0 0;box-shadow:0 -10px 30px #06384b21}.nav-inner{width:100%;padding:7px max(7px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left));grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:3px;display:grid;overflow:visible}.nav-button{white-space:normal;border-radius:10px;place-items:center;min-width:0;min-height:52px;padding:7px 3px;font-size:10px;line-height:1.15;display:grid}.nav-button.active{box-shadow:0 6px 14px #087fae33}.content{width:calc(100% - 24px);padding:20px 0 calc(92px + env(safe-area-inset-bottom))}.dashboard-hero{border-radius:18px;align-items:flex-start;min-height:178px;padding:24px 21px}.dashboard-hero h1{font-size:31px}.dashboard-hero p{max-width:80%;font-size:13px}.dashboard-hero-mark{width:190px;height:145px;top:25px;right:-35px}.dashboard-hero .saved-indicator{position:absolute;bottom:14px;right:15px}.division-panel{border-radius:15px;padding:17px}.page-heading,.detail-header{flex-direction:column;align-items:stretch}.heading-actions,.detail-actions{grid-template-columns:1fr;gap:9px;width:100%;display:grid}.heading-actions .button,.detail-actions .button,.search,.period-select{width:100%}.detail-header .back-button{align-self:flex-start;min-height:40px;padding:6px 0}.loan-card{padding:16px}.loan-card-top{flex-direction:column;align-items:flex-start;gap:12px}.loan-card-balance{grid-template-columns:auto 1fr;place-items:center start;width:100%}.loan-card-balance strong{justify-self:end}.loan-card-bottom{grid-template-columns:1fr;gap:6px}.balance-card{flex-direction:column;align-items:stretch;padding:17px}.loan-action-panel,.balance-card>div:last-child{grid-template-columns:1fr;width:100%;display:grid}.loan-action-panel .button,.balance-card>div:last-child .button{width:100%;min-height:46px}input,select,textarea{font-size:16px}.modal-backdrop{align-items:end;padding:0}.modal,.modal-wide{border-bottom:0;border-left:0;border-right:0;border-radius:22px 22px 0 0;width:100%;max-height:94dvh}.modal-header{z-index:2;padding:16px 17px;position:sticky;top:0}.modal-body{padding:17px 17px calc(20px + env(safe-area-inset-bottom))}.modal-actions{grid-template-columns:1fr;display:grid}.modal-actions .button{width:100%;min-height:48px}table{min-width:680px}.table-card{border-radius:13px;max-width:100%}.backup-card p{min-height:0}}@media (width<=520px){.stat-grid,.stat-grid.partnership-stats,.dashboard-stat-grid,.detail-grid{grid-template-columns:1fr}.dashboard-hero{min-height:190px}.dashboard-hero p{max-width:92%}.overall-owed-card,.overall-profit-card{padding:19px}.overall-owed-card strong,.overall-profit-card strong{font-size:31px}.topbar-actions{grid-template-columns:1fr 1fr}.login-shell{padding:12px}.login-card{border-radius:20px;padding:24px 19px}.login-logo{width:min(100%,235px)}.login-card h1{font-size:27px}.cloud-conflict,.cloud-error-banner,.cloud-backup-panel{padding:15px}}@media (width<=380px){.brand-subtitle{max-width:205px}.nav-button{font-size:9px}.topbar-actions{grid-template-columns:1fr}.topbar-actions .cloud-status,.account-box{grid-column:1}}.dashboard-summary-grid.single{grid-template-columns:1fr}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-card{background:#fffffff7;border:1px solid #cfe1e8;border-radius:18px;padding:22px;box-shadow:0 10px 28px #06384b0f}.settings-card h2{color:var(--ink);margin:5px 0 8px}.settings-card>p{color:var(--muted);margin:0 0 18px;line-height:1.55}.rate-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.rate-field{min-width:0}.rate-input-wrap{background:#fff;border:1px solid #bdd4dd;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.rate-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #087fae1f}.rate-input-wrap input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:11px 12px}.rate-input-wrap b{color:var(--brand-deep);border-left:1px solid #d7e5ea;padding:0 13px}.rate-example{border:1px solid var(--brand-line);color:#426673;background:var(--surface-soft);border-radius:11px;gap:5px;margin-top:16px;padding:13px 14px;display:grid}.rate-example span{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.account-role-badge{border:1px solid var(--brand-line);color:var(--brand-deep);background:var(--brand-soft);border-radius:999px;margin-bottom:15px;padding:6px 10px;font-size:11px;font-weight:900;display:inline-flex}.permission-list{border-top:1px solid #dce9ed;display:grid}.permission-list>div{border-bottom:1px solid #e4eef1;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;display:flex}.permission-list span{color:#47646f;font-size:13px}.permission-list b{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:4px 8px;font-size:10px}.permission-on{color:#12663f;background:#dcf6e9}.permission-off{color:#991b1b;background:#fee2e2}.access-error-card .button{width:100%}@media (width<=820px){.settings-grid{grid-template-columns:1fr}}@media (width<=620px){.rate-form{grid-template-columns:1fr}.rate-form .button{width:100%}}.impersonation-banner{color:#fff;background:linear-gradient(135deg,#7c2d12,#b45309);border:1px solid #ffffff40;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;width:min(100% - 40px,1180px);margin:16px auto 0;padding:15px 18px;display:flex;box-shadow:0 14px 32px #7c2d1233}.impersonation-banner>div{gap:2px;display:grid}.impersonation-banner span{letter-spacing:.13em;font-size:10px;font-weight:950}.impersonation-banner strong{font-size:17px}.impersonation-banner small{color:#ffedd5}.user-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.user-admin-card{background:#fffffff7;border:1px solid #cfe1e8;border-radius:17px;gap:16px;padding:20px;display:grid;box-shadow:0 10px 28px #06384b0f}.user-admin-card-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.user-admin-card h2{color:var(--ink);margin:5px 0 3px}.user-admin-card p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:12px}.user-admin-metrics{grid-template-columns:.8fr 1.2fr;gap:10px;display:grid}.user-admin-metrics>div{background:#f7fbfc;border:1px solid #d9e7ec;border-radius:11px;padding:11px 12px}.user-admin-metrics span{color:#5d7680;letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:900;display:block}.user-admin-metrics b{color:var(--ink);font-size:13px}.user-access-tags{flex-wrap:wrap;gap:7px;display:flex}.user-access-tags span{border:1px solid var(--brand-line);color:var(--brand-deep);background:var(--brand-soft);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850}@media (width<=820px){.impersonation-banner{width:min(100% - 24px,1180px)}.user-admin-grid{grid-template-columns:1fr}}@media (width<=720px){.nav-inner{overscroll-behavior-inline:contain;grid-template-columns:none;grid-auto-columns:minmax(64px,1fr);grid-auto-flow:column;overflow-x:auto}.impersonation-banner{flex-direction:column;align-items:stretch;margin-top:12px}.impersonation-banner .button{width:100%}.user-admin-card-top,.user-admin-metrics{grid-template-columns:1fr}.user-admin-card-top{flex-direction:column}}.user-admin-card.disabled{background:linear-gradient(#fff,#fff8f8);border-color:#e4c7c7}.user-status-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;padding:6px 10px;font-size:10px;font-weight:950;display:inline-flex}.user-status-badge.active{color:#12663f;background:#dcf6e9;border:1px solid #9bd2b5}.user-status-badge.disabled{color:#991b1b;background:#fee2e2;border:1px solid #efb2b7}.user-admin-metrics.three{grid-template-columns:repeat(3,minmax(0,1fr))}.user-admin-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.admin-user-form{gap:18px;display:grid}.admin-user-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-user-form .field input:disabled{color:#6b7d84;cursor:not-allowed;background:#eef3f5}.admin-form-note{color:#426673;background:#f0f8fb;border:1px solid #b9dce9;border-radius:11px;padding:12px 14px;font-size:12px;line-height:1.5}.permission-editor{background:#fff;border:1px solid #cfe1e8;border-radius:15px;overflow:hidden}.permission-editor-heading{background:#f7fbfc;border-bottom:1px solid #dce9ed;justify-content:space-between;align-items:center;gap:16px;padding:15px 16px;display:flex}.permission-editor-heading h3{color:var(--ink);margin:4px 0 0;font-size:16px}.permission-quick-action{color:var(--brand-deep);background:var(--brand-soft);cursor:pointer;border:0;border-radius:8px;padding:7px 10px;font-size:11px;font-weight:900}.permission-editor-list{display:grid}.permission-editor-row,.account-status-control{cursor:pointer;border-bottom:1px solid #e4eef1;justify-content:space-between;align-items:center;gap:18px;padding:13px 16px;display:flex}.permission-editor-row:last-child{border-bottom:0}.permission-editor-row>div,.account-status-control>div{gap:4px;display:grid}.permission-editor-row strong,.account-status-control strong{color:var(--ink);font-size:13px}.permission-editor-row span,.account-status-control span{color:var(--muted);font-size:11px;line-height:1.4}.permission-editor-row input,.account-status-control input{width:22px;height:22px;accent-color:var(--brand);cursor:pointer;flex:0 0 22px}.account-status-control{background:#f2fbf6;border:1px solid #b8d8c7;border-radius:13px}@media (width<=920px){.user-admin-metrics.three{grid-template-columns:1fr 1fr}.user-admin-metrics.three>div:last-child{grid-column:1/-1}}@media (width<=720px){.admin-user-form-grid,.user-admin-metrics.three,.user-admin-actions{grid-template-columns:1fr}.user-admin-metrics.three>div:last-child{grid-column:auto}.permission-editor-heading,.permission-editor-row,.account-status-control{align-items:flex-start}.permission-editor-heading{flex-direction:column}.permission-quick-action{width:100%}}.login-link{width:100%;color:var(--brand-deep);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;padding:8px 4px;font-weight:850;text-decoration:underline}.login-link:hover{color:var(--brand)}.login-link:disabled{opacity:.55;cursor:not-allowed}.login-success{color:#12663f;background:#e7f8ef;border:1px solid #76bd98;border-radius:8px;padding:11px 12px;font-size:13px;line-height:1.45}.password-help{color:var(--muted);margin-top:-7px;line-height:1.45}.user-admin-actions{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=920px){.user-admin-actions{grid-template-columns:1fr}}.monthly-comparison-card{background:linear-gradient(#fff,#f8fcfd);border:1px solid #cfe1e8;border-radius:16px;margin-top:22px;padding:20px;box-shadow:0 12px 30px #06384b12}.monthly-comparison-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:14px;display:flex}.monthly-comparison-heading h3{color:var(--ink);letter-spacing:-.025em;margin:4px 0 5px;font-size:20px}.monthly-comparison-heading p{max-width:690px;color:var(--muted);margin:0;font-size:12px;line-height:1.5}.monthly-year-filter{flex:0 0 150px;gap:5px;display:grid}.monthly-year-filter>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.monthly-year-filter .period-select{width:100%}.monthly-comparison-legend{color:#4f6873;flex-wrap:wrap;gap:9px 16px;margin:4px 0 16px;font-size:11px;font-weight:800;display:flex}.monthly-comparison-legend>span{align-items:center;gap:6px;display:inline-flex}.monthly-legend-dot{background:#78909c;border-radius:3px;width:10px;height:10px}.monthly-legend-dot.lent,.monthly-bar.lent{background:#075f7f}.monthly-legend-dot.expected,.monthly-bar.expected{background:#0b92c5}.monthly-legend-dot.received,.monthly-bar.received{background:#16744a}.monthly-legend-dot.owed,.monthly-bar.owed{background:#b45309}.monthly-chart-scroll{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;padding-bottom:6px;overflow-x:auto}.monthly-chart-canvas{background:repeating-linear-gradient(0deg,#0000 0 calc(25% - 1px),#087fae1a calc(25% - 1px) 25%),linear-gradient(#fbfdfe,#f3f9fb);border:1px solid #d8e7ec;border-radius:13px;align-items:stretch;gap:10px;height:300px;padding:24px 18px 12px;display:flex}.monthly-chart-group{text-align:center;flex:1 0 90px;grid-template-rows:minmax(0,1fr) auto;gap:9px;min-width:90px;display:grid}.monthly-chart-group>strong{color:#4e6873;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.monthly-bars{grid-template-columns:repeat(4,minmax(8px,1fr));align-items:end;gap:5px;min-height:0;display:grid}.monthly-bar{width:100%;height:var(--bar-height);cursor:help;border-radius:6px 6px 2px 2px;min-height:0;transition:filter .15s,transform .15s;position:relative;box-shadow:0 5px 12px #06384b1f}.monthly-bar:hover{filter:brightness(1.08);transform:translateY(-2px)}.monthly-total-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.monthly-total-grid article{background:#fff;border:1px solid #d8e7ec;border-radius:11px;padding:12px 13px}.monthly-total-grid span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:900;display:block}.monthly-total-grid strong{color:var(--ink);margin-top:6px;font-family:Consolas,monospace;font-size:15px;display:block}.monthly-comparison-table-wrap{border:1px solid #d8e7ec;border-radius:11px;margin-top:14px}.monthly-comparison-table{min-width:720px}.monthly-comparison-table tbody tr{cursor:default}.monthly-comparison-table tfoot th{color:var(--ink);text-transform:none;background:#edf7fa;border-top:2px solid #c9dfe7;font-family:Consolas,monospace;font-size:12px}.monthly-comparison-note{color:var(--muted);margin-top:11px;line-height:1.5;display:block}.monthly-empty-state{background:#f7fbfc;border:1px dashed #b9dce9;border-radius:12px;margin-top:8px}@media (width<=820px){.monthly-comparison-heading{flex-direction:column;align-items:stretch}.monthly-year-filter{flex-basis:auto;width:100%}.monthly-total-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.monthly-comparison-card{border-radius:14px;margin-left:-2px;margin-right:-2px;padding:15px}.monthly-chart-canvas{height:260px;padding:18px 13px 10px}.monthly-total-grid{grid-template-columns:1fr}.monthly-total-grid article{justify-content:space-between;align-items:center;gap:12px;display:flex}.monthly-total-grid strong{text-align:right;margin-top:0}}.document-template-panel,.document-action-panel{background:radial-gradient(circle at 100% 0,#0b92c524,#0000 15rem),#f7fcfe;border:1px solid #b9dce9;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:19px 20px;display:flex;box-shadow:0 10px 28px #06384b0d}.document-template-panel h2,.document-action-panel h3{color:var(--ink);margin:5px 0}.document-template-panel p,.document-action-panel p{max-width:650px;color:var(--muted);margin:0;font-size:12px;line-height:1.5}.template-chip-list{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:9px;display:flex}.template-chip{min-width:150px;color:var(--brand-deep);text-align:left;cursor:pointer;background:#fff;border:1px solid #abd3e2;border-radius:11px;gap:3px;padding:10px 12px;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid}.template-chip:hover{border-color:var(--brand);transform:translateY(-1px);box-shadow:0 8px 18px #087fae1f}.template-chip b{color:var(--ink);font-size:12px}.template-chip span,.template-empty{color:var(--muted);font-size:11px;line-height:1.4}.template-empty{background:#fff;border:1px dashed #9ccada;border-radius:10px;flex:1;padding:11px 13px}.document-table td{vertical-align:top}.document-table td small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.document-status,.quote-kind{letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:10px;font-weight:900;display:inline-flex}.document-status-draft{color:#526a75;background:#e6eef1}.document-status-sent{color:#075f7f;background:#dff5fc}.document-status-accepted,.document-status-paid{color:#12663f;background:#dcf6e9}.document-status-rejected,.document-status-cancelled{color:#991b1b;background:#fee2e2}.document-status-expired,.document-status-overdue{color:#91450b;background:#fff0d4}.document-status-converted,.document-status-partially-paid{color:#4d3a9a;background:#ece8ff}.quote-kind-standard{color:#075f7f;background:#e8f7fc;border:1px solid #9ed3e6}.quote-kind-custom{color:#6b3b10;background:#fff6e8;border:1px solid #efcc9b}.document-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:18px;display:grid}.document-detail-grid article{background:#fff;border:1px solid #cfe1e8;border-radius:13px;gap:5px;min-height:108px;padding:14px;display:grid;box-shadow:0 9px 22px #06384b0b}.document-detail-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:900}.document-detail-grid strong{color:var(--ink);overflow-wrap:anywhere;font-size:16px}.document-detail-grid small{color:var(--muted);font-size:11px;line-height:1.35}.document-summary-row{color:#426673;background:#f9fcfd;border-top:1px solid #dce9ed;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:15px;padding:13px 15px;font-size:12px;display:flex}.document-summary-row strong{color:#fff;background:linear-gradient(135deg, var(--brand), var(--brand-deep));border-radius:8px;padding:7px 10px}.document-action-buttons{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:9px;display:flex}.document-items-editor{background:#f7fbfc;border:1px solid #cfe1e8;border-radius:12px;gap:10px;padding:12px;display:grid}.document-items-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.document-items-table{min-width:760px;margin:0}.document-items-table th{padding:9px 8px;font-size:9px}.document-items-table td{padding:7px}.document-items-table input{width:100%;min-width:64px;color:var(--ink);background:#fff;border:1px solid #bdd4dd;border-radius:7px;outline:none;padding:8px}.document-items-table input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #087fae1c}.document-items-table input:disabled{color:#5f7782;cursor:not-allowed;background:#edf4f6}.document-items-table .line-total{min-width:92px;color:var(--ink);white-space:nowrap;font-family:Consolas,monospace;font-weight:800}.line-remove{color:#a21d29;cursor:pointer;background:#fff1f2;border:1px solid #efb2b7;border-radius:7px;place-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:grid}.line-remove:disabled{opacity:.45;cursor:not-allowed}.document-options-grid{grid-template-columns:1.1fr 1fr 1fr;align-items:end;gap:14px;display:grid}.toggle-field{color:#426673;background:#fff;border:1px solid #bdd4dd;border-radius:10px;align-items:center;gap:9px;min-height:42px;padding:10px 12px;font-size:12px;font-weight:800;display:flex}.toggle-field input{width:18px;height:18px;accent-color:var(--brand);margin:0}.document-totals-preview{color:#075f7f;background:#eaf8fd;border:1px solid #9ed3e6;border-radius:11px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:14px 15px;display:flex}.document-totals-preview span{letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.document-totals-preview strong{color:var(--brand-deep);font-family:Consolas,monospace;font-size:20px}.document-totals-preview small{color:#426673;width:100%;font-size:11px}@media (width<=960px){.document-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-template-panel,.document-action-panel{flex-direction:column;align-items:stretch}.template-chip-list,.document-action-buttons{justify-content:flex-start}}@media (width<=720px){.document-detail-grid,.document-options-grid{grid-template-columns:1fr}.document-template-panel,.document-action-panel{border-radius:14px;margin-left:-1px;margin-right:-1px;padding:16px}.template-chip-list{grid-template-columns:1fr;display:grid}.template-chip{width:100%}.document-action-buttons{grid-template-columns:1fr;width:100%;display:grid}.document-action-buttons .button{width:100%}.document-summary-row{flex-direction:column;align-items:stretch}.document-summary-row strong{text-align:center}}.report-intro-panel{border:1px solid #cfe1e8;border-left:5px solid var(--brand-bright);background:radial-gradient(circle at 92% 12%,#0b92c524,#0000 18rem),linear-gradient(#fff,#f4fafc);border-radius:16px;align-items:center;min-height:126px;margin-bottom:18px;padding:22px 24px;display:flex;box-shadow:0 12px 30px #06384b0f}.report-intro-panel h2{color:var(--ink);letter-spacing:-.025em;margin:4px 0 6px;font-size:21px}.report-intro-panel p{max-width:720px;color:var(--muted);margin:0;line-height:1.55}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-grid .backup-card{border-top:4px solid var(--brand);position:relative;overflow:hidden}.report-grid .backup-card:nth-child(2){border-top-color:var(--brand-bright)}.report-grid .backup-card:nth-child(3){border-top-color:#a85d16}.report-card-kicker{color:var(--brand);letter-spacing:.1em;margin-bottom:8px;font-size:10px;font-weight:900;display:inline-block}@media (width<=960px){.report-grid{grid-template-columns:1fr}}@media (width<=720px){.report-intro-panel{border-radius:14px;min-height:0;padding:18px 17px}}.partnership-monthly-comparison{background:linear-gradient(#fff,#f4fbfd);border-color:#b9dce9;margin-top:18px}.partnership-monthly-comparison .monthly-comparison-heading h3{color:var(--brand-deep)}.partnership-monthly-comparison .monthly-comparison-note{color:#426673}.settings-section-gap{margin-top:18px}.business-profile-settings{max-width:100%}.business-profile-form{gap:16px;display:grid}.logo-settings-row{border:1px solid var(--brand-line);background:linear-gradient(135deg,#f8fcfd,#edf8fb);border-radius:14px;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:16px;padding:15px;display:grid}.company-logo-preview{background:#fff;border:1px solid #c7e1ea;border-radius:12px;place-items:center;min-height:108px;padding:10px;display:grid;overflow:hidden}.company-logo-preview img{object-fit:contain;width:100%;max-width:108px;max-height:88px}.logo-settings-actions{justify-items:start;gap:8px;display:grid}.logo-settings-actions strong{color:var(--ink);font-size:14px}.logo-settings-actions span{max-width:650px;color:var(--muted);font-size:12px;line-height:1.5}.logo-upload-button{cursor:pointer;justify-content:center;align-items:center;min-height:34px;display:inline-flex;position:relative}.logo-upload-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.logo-upload-button:has(input:disabled){opacity:.58;cursor:not-allowed}.business-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.business-toggles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.business-toggles .toggle-field{align-items:flex-start;min-height:58px;line-height:1.4}.banking-editor-heading,.banking-account-card-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.banking-editor-heading{padding-top:4px}.banking-editor-heading h3{color:var(--ink);margin:4px 0 0;font-size:17px}.banking-account-list{gap:12px;display:grid}.banking-account-card{border:1px solid #cfe1e8;border-left:4px solid var(--brand);background:#f8fcfd;border-radius:13px;padding:15px}.banking-account-card-heading{margin-bottom:12px}.banking-account-card-heading strong{color:var(--ink);font-size:13px}.bank-default-toggle{align-self:end}.banking-empty{color:var(--muted);background:#f8fcfd;border:1px dashed #9ccada;border-radius:11px;padding:14px;font-size:12px;line-height:1.45}.business-settings-save{justify-content:flex-end;display:flex}@media (width<=720px){.logo-settings-row,.business-form-grid,.business-toggles{grid-template-columns:1fr}.logo-settings-row{justify-items:stretch}.company-logo-preview{min-height:122px}.company-logo-preview img{max-width:150px;max-height:102px}.logo-settings-actions,.business-settings-save{justify-items:stretch}.logo-settings-actions .button,.business-settings-save .button,.banking-editor-heading .button{width:100%}.banking-editor-heading,.banking-account-card-heading{flex-direction:column;align-items:stretch}.banking-account-card-heading .button{width:100%}}.documents-dashboard-hero{background:radial-gradient(circle at 92% 16%,#fff3,#0000 22rem),linear-gradient(130deg,#5f3104,#a85d16 60%,#d58117)}.document-income-banner{color:#643707;background:radial-gradient(circle at 92% 5%,#ffffffbf,#0000 15rem),linear-gradient(135deg,#fff7e8,#ffedc9);border:1px solid #e7c79b;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:22px 24px;display:flex;box-shadow:0 12px 30px #7d45091a}.document-income-banner>div:first-child{gap:5px;display:grid}.document-income-banner span,.document-income-side span{color:#9b5c14;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:950}.document-income-banner strong{color:#5d3003;font-family:Consolas,monospace;font-size:clamp(28px,5vw,42px)}.document-income-banner small,.document-income-side small{color:#7a521f;line-height:1.45}.document-income-side{background:#ffffff7a;border:1px solid #a85d163d;border-radius:12px;gap:6px;min-width:210px;padding:14px 16px;display:grid}.document-income-side b{color:#7c3f06;font-family:Consolas,monospace;font-size:20px}.document-division-panel{border-top:4px solid #a85d16}.document-stat-card{border-top-color:#a85d16}.document-stat-card:nth-child(2){border-top-color:#d58117}.document-stat-card:nth-child(3){border-top-color:#0b92c5}.document-stat-card:nth-child(4){border-top-color:#b4232d}.documents-monthly-card{background:linear-gradient(#fff,#fffaf1);border-color:#ead3b3}.document-monthly-table-card{box-shadow:none;border-color:#eadcc7;margin-bottom:0}.document-monthly-table{min-width:790px}.document-monthly-table tbody tr{cursor:default}.borrower-reuse-panel{background:linear-gradient(135deg,#eef9fc,#f8fdff);border:1px solid #8bcde3;border-radius:13px;gap:11px;padding:14px;display:grid}.borrower-reuse-panel h3{color:var(--brand-deep);margin:4px 0;font-size:16px}.borrower-reuse-panel p{color:#426673;margin:0;font-size:12px;line-height:1.5}.borrower-match-list{gap:7px;max-height:202px;display:grid;overflow:auto}.borrower-match{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #badce7;border-radius:10px;gap:3px;padding:10px 11px;display:grid}.borrower-match:hover{border-color:var(--brand);background:var(--brand-soft)}.borrower-match b{font-size:13px}.borrower-match span{color:var(--muted);font-size:11px}.borrower-selected-row{color:#16613d;background:#eefaf3;border:1px solid #afd8bf;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font-size:12px;display:flex}.borrower-selected-row button{color:#075f7f;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:11px;font-weight:900;text-decoration:underline}@media (width<=720px){.document-income-banner{border-radius:15px;flex-direction:column;align-items:stretch;padding:18px}.document-income-side{min-width:0}.borrower-selected-row{flex-direction:column;align-items:flex-start}}.logo-save-status{color:#12663f;background:#edf9f2;border:1px solid #9ed3b6;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:800;line-height:1.4;display:block}.logo-settings-actions .logo-save-status{max-width:650px}@media (width<=720px){.logo-settings-actions .logo-save-status{width:100%}}.finance-period-toolbar{border:1px solid #cfe1e8;border-left:5px solid var(--brand);background:#fffffff7;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:16px 18px;display:flex;box-shadow:0 10px 28px #06384b0e}.finance-period-copy{gap:3px;min-width:0;display:grid}.finance-period-copy>span,.finance-period-selector>span{color:var(--brand);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:950}.finance-period-copy>strong{color:var(--ink);font-size:18px}.finance-period-copy>small{color:var(--muted);line-height:1.45}.finance-period-selector{flex:0 0 min(100%,270px);gap:6px;display:grid}.finance-period-selector .period-select{width:100%}.overall-owed-period b{margin-top:3px;display:block}@media (width<=720px){.finance-period-toolbar{flex-direction:column;align-items:stretch;padding:15px 16px}.finance-period-selector{flex-basis:auto;width:100%}}.password-input-wrap{background:#fff;border:1px solid #bdd4dd;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;transition:border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.password-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #087fae1f}.field .password-input-wrap input{width:100%;min-width:0;box-shadow:none;background:#fff;border:0;border-radius:0;outline:0;padding:10px 11px}.password-toggle{min-width:66px;color:var(--brand-deep);cursor:pointer;background:#f5fafc;border:0;border-left:1px solid #d5e4e9;padding:0 13px;font-size:12px;font-weight:900}.password-toggle:hover,.password-toggle:focus-visible{color:#fff;background:var(--brand);outline:0}.partnership-month-toolbar small{max-width:520px;color:var(--muted);text-align:right;line-height:1.45}@media (width<=820px){.partnership-month-toolbar small{text-align:left}}.returning-partner-panel{border:1px solid var(--brand-line);background:linear-gradient(#f8fcfd,#eef8fb);border-radius:14px;gap:12px;padding:15px;display:grid}.returning-partner-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.returning-partner-heading h3{color:var(--ink);margin:4px 0;font-size:16px}.returning-partner-heading p{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.returning-partner-month{flex:0 0 190px;gap:5px;display:grid}.returning-partner-month>span,.partnership-detail-month-select>span{color:var(--brand);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:950}.returning-partner-month .period-select,.returning-partner-search{width:100%}.returning-partner-results{gap:7px;max-height:250px;display:grid;overflow-y:auto}.returning-partner-result{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #cfe1e8;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:10px 11px;transition:border-color .15s,transform .15s,background .15s;display:flex}.returning-partner-result:hover{border-color:var(--brand);background:var(--brand-soft);transform:translateY(-1px)}.returning-partner-result>span{gap:3px;min-width:0;display:grid}.returning-partner-result strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.returning-partner-result small{color:var(--muted)}.returning-partner-result b{color:var(--brand-deep);flex:none;font-size:11px}.returning-partner-empty{color:var(--muted);background:#ffffffb3;border:1px dashed #aacfdc;border-radius:10px;padding:10px 11px;font-size:11px;line-height:1.45}.returning-partner-divider{color:#6f858e;letter-spacing:.08em;align-items:center;gap:10px;font-size:9px;font-weight:950;display:flex}.returning-partner-divider:before,.returning-partner-divider:after{content:"";background:#d8e7ec;flex:1;height:1px}.partnership-detail-month-select{gap:4px;min-width:180px;display:grid}.partnership-detail-month-select .period-select{width:100%;min-width:180px}@media (width<=720px){.returning-partner-heading{flex-direction:column}.returning-partner-month,.partnership-detail-month-select,.partnership-detail-month-select .period-select{flex-basis:auto;width:100%;min-width:0}}.partnership-month-jump{align-items:center;gap:8px;display:flex}.partnership-month-jump .period-select{width:170px}.statement-month-selector{gap:16px}.statement-month-intro{border:1px solid var(--brand-line);color:#426673;background:var(--surface-soft);border-radius:11px;padding:12px 14px;font-size:12px;line-height:1.5}.statement-month-actions{flex-wrap:wrap;gap:8px;display:flex}.statement-month-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:330px;padding:2px;display:grid;overflow-y:auto}.statement-month-option{cursor:pointer;background:#fff;border:1px solid #cfe1e8;border-radius:11px;align-items:center;gap:11px;min-height:62px;padding:11px 12px;transition:border-color .15s,background .15s,transform .15s;display:flex}.statement-month-option:hover{border-color:#8ac7dc;transform:translateY(-1px)}.statement-month-option.selected{border-color:var(--brand);background:var(--brand-soft)}.statement-month-option input{width:20px;height:20px;accent-color:var(--brand);flex:0 0 20px;margin:0}.statement-month-option>span{gap:3px;min-width:0;display:grid}.statement-month-option strong{color:var(--ink);font-size:13px}.statement-month-option small{color:var(--muted);font-size:10px}@media (width<=820px){.partnership-month-jump,.partnership-month-jump .period-select,.partnership-month-jump .button{width:100%}.partnership-month-jump{grid-template-columns:1fr auto;display:grid}}@media (width<=560px){.statement-month-grid,.partnership-month-jump{grid-template-columns:1fr}}
