:root{--card-radius:1.15rem}
body{min-height:100vh;background:#f5f6f7}
.card{border:0;border-radius:var(--card-radius)}
.navbar{border-bottom:1px solid rgba(255,255,255,.06)}
.metric{font-size:1.65rem;font-weight:750;letter-spacing:-.02em}
.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#eef0f2}
.avatar-lg{width:52px;height:52px;font-size:1.15rem}
.money-positive{color:#b42318}.money-negative{color:#147a4a}
.table>tbody>tr>td{vertical-align:middle}.receipt-thumb{width:52px;height:52px;object-fit:cover;border-radius:.6rem}
.fab{position:fixed;right:1.15rem;bottom:1.15rem;border-radius:999px;box-shadow:0 .5rem 1.5rem rgba(0,0,0,.22);z-index:1030}
.dash-shell{max-width:1100px;margin:0 auto}.dash-hero{background:#fff;border-radius:1.35rem;padding:1.4rem;box-shadow:0 .25rem 1.2rem rgba(0,0,0,.06)}
.dash-kicker{font-size:.73rem;letter-spacing:.09em;font-weight:800;color:#6c757d}.tracking-tight{letter-spacing:-.04em}
.person-card{transition:transform .15s ease}.person-line{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;color:#495057}.person-line strong{color:#212529}
.expense-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f0f1f2;font-weight:800}.min-w-0{min-width:0}
.split-info{background:#f3f5f6;border-radius:.9rem;padding:.9rem 1rem;color:#495057}
@media(max-width:767.98px){.desktop-table{display:none}.metric{font-size:1.4rem}.dash-hero{padding:1.2rem}.display-5{font-size:2.35rem}.person-card .card-body{padding:1.2rem!important}.fab{bottom:1rem;right:1rem}}
@media(min-width:768px){.mobile-list{display:none}.person-card:hover{transform:translateY(-2px)}}

.brand-logo-wrap{width:34px;height:34px;border-radius:50%;overflow:hidden;background:#fff;display:grid;place-items:center}
.brand-logo{width:100%;height:100%;object-fit:cover}
.dash-hero{position:relative;overflow:hidden;min-height:220px}
.hero-content{position:relative;z-index:2;max-width:760px}
.hero-mandruva{position:absolute;right:-18px;bottom:-28px;width:230px;max-height:210px;object-fit:contain;opacity:.18;z-index:1}
.fixed-summary{display:flex;gap:.65rem;flex-wrap:wrap}
.fixed-summary span{background:#f1f3f5;border-radius:999px;padding:.42rem .72rem;font-size:.88rem}
.person-line{align-items:center}.person-line span{padding-right:.5rem}
@media(max-width:767.98px){.hero-mandruva{width:165px;right:-30px;bottom:-20px;opacity:.13}.fixed-summary{max-width:280px}}
