:root{--blue:#0da5e9;--dark:#102033;--muted:#667085;--bg:#eef3f8;--card:#fff;--line:#e6eaf0;--green:#12b76a;--red:#f04438;--orange:#f79009}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:#101828}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b4f8a,#10a7e8)}.login-card{width:420px;background:#fff;border-radius:24px;padding:34px;box-shadow:0 30px 80px #0003}.login-form{display:grid;gap:12px;margin-top:26px}.login-form input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:14px;padding:13px 15px;font:inherit}.login-form label,.field label{font-size:12px;text-transform:uppercase;font-weight:800;color:#667085}.primary,.btn{border:0;border-radius:10px;padding:12px 16px;cursor:pointer;font-weight:700}.primary{background:var(--blue);color:white}.hint{font-size:13px;color:var(--muted)}.app{display:flex;min-height:100vh}.sidebar{width:270px;background:#fff;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;padding:18px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center}.brand.big h1,.brand h1{margin:0;font-size:20px}.brand p{margin:2px 0;color:var(--muted);font-size:13px}.brand-logo{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#0d6efd,#13c2ff);display:grid;place-items:center;color:#fff;font-weight:900;overflow:hidden}.brand-logo img{width:100%;height:100%;object-fit:cover}.menu{display:grid;gap:8px;margin-top:28px}.menu button{background:transparent;border:0;text-align:left;padding:12px 14px;border-radius:12px;font-weight:700;color:#475467;cursor:pointer}.menu button i{width:25px}.menu button.active,.menu button:hover{background:#e7f6ff;color:#0077b6}.sidebar-footer{margin-top:auto;color:#98a2b3;font-size:13px}.main{margin-left:270px;width:calc(100% - 270px)}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 28px;position:sticky;top:0;z-index:5}.hamburger{border:0;background:#f2f4f7;border-radius:10px;padding:11px}.search-wrap{flex:1;max-width:620px;background:#f8fafc;border:1px solid var(--line);border-radius:16px;padding:0 15px;display:flex;align-items:center;gap:10px}.search-wrap input{border:0;background:transparent;outline:0;width:100%;padding:15px 0;font:inherit}.profile{margin-left:auto;display:flex;align-items:center;gap:12px;font-weight:800}.avatar{width:42px;height:42px;border-radius:50%;background:#095eb6;color:#fff;display:grid;place-items:center}.logout{border:0;background:#fff2f2;color:#d92d20;border-radius:10px;padding:10px 12px;font-weight:800;cursor:pointer}#content{padding:28px}.page-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.page-head h2{margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn.blue{background:#0da5e9;color:white}.btn.green{background:#12b76a;color:white}.btn.orange{background:#f79009;color:white}.btn.gray{background:#eef2f6}.btn.red{background:#fff1f3;color:#e11d48;border:1px solid #fecdd3}.grid{display:grid;gap:18px}.cards{grid-template-columns:repeat(4,minmax(150px,1fr))}.card,.table-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 30px #1018280a}.stat h4{margin:0;color:#667085;font-size:13px;text-transform:uppercase}.stat .num{font-size:32px;font-weight:900;margin-top:10px}.table-card{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;color:#667085;background:#f8fafc}.tools{display:flex;gap:8px}.tools button{border:1px solid var(--line);background:white;border-radius:8px;padding:8px 10px;cursor:pointer}.tools .edit{color:#0ea5e9}.tools .del{color:#f04438}.pill{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#eef2ff;color:#3538cd}.pill.paid,.pill.active{background:#ecfdf3;color:#027a48}.pill.unpaid,.pill.inactive{background:#fff1f3;color:#c01048}.modal,.drawer{position:fixed;inset:0;background:#0008;display:none;z-index:30;align-items:center;justify-content:center;padding:20px}.modal.show,.drawer.show{display:flex}.modal-card,.drawer-card{background:white;border-radius:20px;width:min(950px,96vw);max-height:92vh;overflow:auto;padding:20px}.drawer{justify-content:flex-end}.drawer-card{height:100%;max-height:100%;border-radius:20px 0 0 20px;width:min(900px,96vw)}.modal-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:-5px -5px 18px;padding:5px 5px 15px}.modal-head h3{margin:0}.modal-head button{border:0;background:#f2f4f7;border-radius:10px;padding:10px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field.full{grid-column:1/-1}.form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.client-card{text-align:center}.client-card img{width:100%;height:210px;object-fit:cover;border-radius:12px;background:#f2f4f7}.client-card h4{margin:12px 0 4px}.mini{color:#667085;font-size:13px}.profile-header{display:grid;grid-template-columns:160px 1fr;gap:20px}.profile-header img{width:160px;height:160px;object-fit:cover;border-radius:18px;background:#f2f4f7}.tabs{display:flex;gap:8px;margin:18px 0}.tabs button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 14px;cursor:pointer}.invoice-box{background:#fff;padding:30px;border-radius:18px}.invoice-top{display:flex;justify-content:space-between;border-bottom:2px solid #101828;padding-bottom:16px}.company-logo-preview{width:80px;height:80px;object-fit:contain;border:1px solid var(--line);border-radius:12px}.search-results{margin-bottom:22px}.doc-thumb{width:70px;height:70px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0);z-index:20}.main{margin-left:0;width:100%}.cards{grid-template-columns:repeat(2,1fr)}.form-grid,.profile-header{grid-template-columns:1fr}.topbar{padding:0 12px}.client-card img{height:180px}}
