@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#201918;--muted:#766b67;--paper:#fbfaf8;--cream:#f3eee8;--line:#e5ddd5;--wine:#571f2a;--wine2:#7b3541;--gold:#c59b62;--sage:#557366;--shadow:0 12px 30px rgba(55,31,26,.07)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'DM Sans',system-ui,sans-serif}.sidebar{width:260px;position:fixed;inset:0 auto 0 0;background:#241b1b;color:#f8f4ef;padding:27px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 9px 31px}.brand-mark{width:41px;height:41px;border:1px solid rgba(255,255,255,.45);display:grid;place-items:center;border-radius:50%;font:700 11px Georgia;color:#ecd5ae;letter-spacing:.5px}.brand strong,.brand span{display:block}.brand strong{font-family:'Playfair Display',serif;font-size:15px}.brand span{color:#c9bdb5;font-size:11px;margin-top:2px}.sidebar nav{display:grid;gap:4px}.sidebar p{font-size:10px;letter-spacing:1.4px;color:#a8958e;margin:22px 12px 7px}.nav{border:0;background:transparent;color:#d8ccc5;text-align:left;border-radius:7px;padding:11px 12px;font:500 14px inherit;cursor:pointer}.nav i{font-style:normal;color:#caa16e;display:inline-block;width:24px;font-size:17px}.nav:hover,.nav.active{background:#493133;color:#fff}.nav.active i{color:#f0c888}.secure{margin-top:auto;background:#332527;border:1px solid #4e3938;border-radius:9px;padding:11px;display:flex;gap:9px;align-items:flex-start;font-size:11px}.secure>span{color:#87b59b}.secure b,.secure small{display:block}.secure small{color:#b7aaa3;margin-top:3px;font-size:10px}main{margin-left:260px;min-height:100vh}header{height:130px;padding:31px 46px 21px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffdfb}.eyebrow{font-size:10px;color:#9b7b55;letter-spacing:1.4px;font-weight:700}h1,h2,h3{margin:0;font-family:'Playfair Display',Georgia,serif}h1{font-size:27px;margin-top:5px;letter-spacing:-.4px}h2{font-size:23px}h3{font-size:16px}.top-actions{display:flex;gap:10px;align-items:center}.outline,.primary,.avatar,.icon-btn{border:0;cursor:pointer;font:600 12px inherit}.outline{color:#5b4c45;background:#fff;border:1px solid var(--line);padding:10px 13px;border-radius:6px}.avatar{width:35px;height:35px;border-radius:50%;background:#e8d0b4;color:#5c342f}.back{display:none}#app{padding:32px 46px 55px;max-width:1570px}.hero{background:var(--wine);color:#fff;border-radius:13px;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;background-image:radial-gradient(circle at 90% 20%,#80414a 0,transparent 34%)}.hero p{color:#e3d4ce;margin:6px 0 0}.hero h2{font-size:25px}.primary{background:var(--gold);color:#2d1e18;padding:11px 15px;border-radius:6px}.primary:hover{filter:brightness(1.06)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.card,.panel{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px}.card{padding:18px}.card label{font-size:11px;color:var(--muted);display:block;margin-bottom:9px}.card strong{font:600 23px 'Playfair Display',serif}.up{color:#35735f;font-size:11px;margin-left:5px}.down{color:#a75151;font-size:11px;margin-left:5px}.panel{padding:21px}.grid{display:grid;grid-template-columns:1.46fr .9fr;gap:17px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-head span,.filter{font-size:11px;color:var(--muted)}.filter{border:0;background:none;cursor:pointer}.chart{height:207px;display:flex;gap:16px;align-items:flex-end;padding:5px 0 0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 51px,#f1ece7 52px)}.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px;height:100%;font-size:10px;color:var(--muted)}.bar i{width:100%;background:linear-gradient(180deg,#bd8c74,#663340);border-radius:5px 5px 0 0}.legend{font-size:11px;color:var(--muted);margin-top:11px}.legend b{color:var(--wine);font-size:15px;vertical-align:-1px}.activity{list-style:none;padding:0;margin:0}.activity li{border-bottom:1px solid #eee8e3;padding:13px 0;display:flex;gap:10px;align-items:center}.activity li:last-child{border:0}.dot{width:30px;height:30px;border-radius:7px;display:grid;place-items:center;background:#f8eee4;color:#865332}.activity b,.activity small{display:block}.activity small{font-size:11px;color:var(--muted);margin-top:2px}.activity em{margin-left:auto;font-style:normal;font-weight:600}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section-title p{margin:5px 0 0;color:var(--muted)}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;text-align:left}.table th{font-size:10px;letter-spacing:.8px;color:#837773;font-weight:700;padding:0 13px 11px;border-bottom:1px solid var(--line)}.table td{padding:14px 13px;border-bottom:1px solid #eee9e4;font-size:13px}.table tr:last-child td{border:0}.table td:last-child,.table th:last-child{text-align:right}.badge{font-size:10px;background:#f3eadc;color:#765034;padding:4px 7px;border-radius:12px;font-weight:700}.badge.paid{background:#e6f0eb;color:#376657}.badge.due{background:#f8e8e5;color:#95534a}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.kpi-list{display:grid;gap:9px}.kpi-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee9e4}.kpi-row:last-child{border:0}.progress{height:7px;background:#eee9e4;border-radius:9px;overflow:hidden;margin-top:7px}.progress i{display:block;height:100%;background:var(--wine2);border-radius:9px}.category-list{display:grid;gap:11px}.category{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center}.category .swatch{width:13px;height:13px;border-radius:4px}.category b{font-size:12px}.category span{font-size:11px;color:var(--muted);display:block;margin-top:2px}.report-grid{display:grid;grid-template-columns:2fr 1fr;gap:17px}.pl-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #eee8e2}.pl-line.bold{font-weight:700;border-top:1px solid #cabeb5;margin-top:5px;color:var(--wine)}.settings{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.setting{padding:19px;min-height:145px}.setting .setting-icon{background:#f5ebe0;width:34px;height:34px;display:grid;place-items:center;border-radius:7px;color:#8d5a37;margin-bottom:16px}.setting p{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.45}.manage{margin-top:16px;background:transparent;border:0;color:var(--wine);font-weight:700;padding:0;cursor:pointer}.callout{background:#f8f3ed;border:1px dashed #d8c9bb;border-radius:9px;padding:15px;color:#695b52;font-size:12px;line-height:1.5}dialog{border:0;border-radius:12px;padding:0;box-shadow:0 18px 60px #1f14145c;width:min(450px,calc(100% - 30px)}dialog::backdrop{background:#241c1c88}.modal{padding:24px}.modal-title{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.icon-btn{font-size:24px;background:transparent;color:var(--muted)}.modal label{display:block;font-size:11px;font-weight:700;color:#615651;margin:13px 0 0}.modal input,.modal select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #dcd3cc;border-radius:6px;font:14px inherit;background:#fff}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.full{width:100%;margin-top:20px}
@media(max-width:900px){.sidebar{width:72px;padding:22px 10px}.brand{padding:0 5px 24px}.brand>div:not(.brand-mark),.nav:not(.active){font-size:0}.nav i{font-size:18px;width:auto}.nav{padding:12px;text-align:center}.sidebar p,.secure div{display:none}.secure{justify-content:center;padding:10px}.secure>span{font-size:11px}main{margin-left:72px}header,#app{padding-left:25px;padding-right:25px}.cards{grid-template-columns:repeat(2,1fr)}.grid,.report-grid{grid-template-columns:1fr}.settings{grid-template-columns:1fr 1fr}}@media(max-width:600px){.sidebar{display:none}main{margin:0}header{height:auto;padding:19px 18px}.back{display:inline-block;border:0;background:none;font-size:19px;margin-right:8px}.top-actions .outline{display:none}h1{font-size:21px}#app{padding:20px 18px}.hero{padding:20px;display:block}.hero .primary{margin-top:17px}.cards,.split,.settings{grid-template-columns:1fr}.card strong{font-size:21px}.section-title{align-items:start;gap:10px}.table th:nth-child(3),.table td:nth-child(3){display:none}}
