:root{font-family:Inter,system-ui,sans-serif;color:#17251f;background:#f4f7f5}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.error,.loading{min-height:100vh;display:grid;place-content:center}.auth{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e9f7f1,#f7faf8)}.auth-card{width:min(420px,92vw);background:white;padding:36px;border-radius:20px;box-shadow:0 20px 60px #1232;display:grid;grid-gap:16px;gap:16px}.auth-card h1,.auth-card p{margin:0}.brand span,.logo{width:42px;height:42px;border-radius:12px;background:#087052;color:#fff;display:grid;place-items:center;font-weight:900}.auth-card label,.form-panel label{display:grid;grid-gap:6px;gap:6px;font-weight:700}.auth-card input,.form-panel input{padding:12px;border:1px solid #cad6d0;border-radius:9px}.install,.primary,.secondary{border:0;border-radius:9px;padding:11px 16px;font-weight:750;cursor:pointer}.primary{background:#087052;color:#fff}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.app-shell aside{height:100vh;position:-webkit-sticky;position:sticky;top:0;background:#fff;border-right:1px solid #e1e8e4;padding:22px 15px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-size:19px}.property{display:grid;background:#eff6f2;padding:12px;border-radius:10px}.profile small,.property small{color:#6b7e74}.app-shell aside nav{display:grid;grid-gap:3px;gap:3px;overflow:auto}.app-shell aside nav button{border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:8px;color:#52635b;font-weight:650;cursor:pointer}.active{background:#e2f3ec!important;color:#087052!important}.profile{margin-top:auto;border-top:1px solid #ddd;padding-top:14px;display:grid}.content{padding:22px clamp(18px,4vw,56px) 70px;max-width:1500px;width:100%;margin:auto}.topbar{min-height:40px;display:flex;justify-content:flex-end;gap:10px}.notification-panel button,.topbar button{border:1px solid #d4dfda;background:white;border-radius:9px;padding:8px 12px}.install{background:#17251f!important;color:#fff}.notification-panel{position:absolute;right:45px;z-index:3;width:min(360px,90vw);background:#fff;padding:18px;border-radius:14px;box-shadow:0 15px 50px #1233}.notification-panel h2{margin-top:0}.notification-panel a{display:grid;padding:12px 0;border-bottom:1px solid #eee;color:inherit;text-decoration:none}.page-head{display:flex;justify-content:space-between;align-items:center;margin:18px 0 24px}.page-head h1{font-size:30px;margin:4px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#087052;font-size:11px;font-weight:800}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:20px}.panel,.stats article{background:#fff;border:1px solid #e1e8e4;border-radius:14px;padding:20px}.stats article{display:grid;grid-gap:8px;gap:8px}.stats p{margin:0;color:#66776f}.stats strong{font-size:22px}.panel{margin-bottom:18px}.table-wrap{overflow:auto;padding:0}table{border-collapse:collapse;width:100%;min-width:620px}td,th{text-align:left;padding:15px;border-bottom:1px solid #edf0ee}th{font-size:11px;text-transform:uppercase;color:#718179}.form-panel{max-width:550px;display:grid;grid-gap:16px;gap:16px}.invoice-detail{display:grid;grid-gap:14px;gap:14px;max-width:580px}.invoice-detail strong,.receipt strong{font-size:28px}.receipt{min-height:70vh;display:grid;place-content:center;text-align:center;grid-gap:12px;gap:12px}.mobile-nav{display:none}@media(max-width:1000px){.stats{grid-template-columns:1fr 1fr}.app-shell{grid-template-columns:200px 1fr}}@media(max-width:700px){.app-shell{display:block}.app-shell aside{display:none}.content{padding:12px 14px 82px}.page-head h1{font-size:24px}.page-head .primary{padding:9px}.stats{grid-template-columns:1fr 1fr;gap:8px}.stats article{padding:13px}.stats strong{font-size:16px}.mobile-nav{display:grid;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #ddd;grid-template-columns:repeat(5,1fr);z-index:4}.mobile-nav button{border:0;background:white;padding:15px 2px;font-size:11px}.notification-panel{right:14px}.topbar{padding-top:4px}}