*{box-sizing:border-box}body{margin:0;font-family:Arial,'Noto Sans Bengali',sans-serif;background:#f6f9fd;color:#152238}a{text-decoration:none;color:inherit}.top{height:70px;background:#fff;border-bottom:1px solid #e4ebf4;padding:0 6%;display:flex;justify-content:space-between;align-items:center}.brand{font-size:23px;font-weight:800;color:#1266e8}.brand span{color:#152238}.top nav{display:flex;gap:22px;font-size:14px}.hero{padding:80px 8%;min-height:470px;display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center;background:linear-gradient(135deg,#fff,#eef6ff)}.hero h1{font-size:46px;line-height:1.12;margin:12px 0}.hero p{color:#68768a;line-height:1.7}.eyebrow{color:#1266e8;font-size:12px;font-weight:800;letter-spacing:1.3px}.btn{display:inline-block;background:#1266e8;color:white;border:0;border-radius:8px;padding:11px 18px;font-weight:700;cursor:pointer}.btn:hover{background:#0c55c5}.hero-card,.card,.panel,.metric,.login-box{background:#fff;border:1px solid #e1e9f4;border-radius:14px;box-shadow:0 8px 30px #123d7608}.hero-card{padding:30px}.section{padding:60px 8%;background:#fff}.section h2{text-align:center}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:30px}.card{padding:22px}.card strong{display:block;color:#1266e8;font-size:28px;margin:10px 0}.card small{color:#77869b}footer{text-align:center;padding:28px;color:#8390a1}.center{min-height:100vh;display:grid;place-items:center;background:#f3f7fc}.login-box{width:min(410px,92%);padding:32px;text-align:center}.login-box input,.form-grid input,.form-grid select,.form-page input,.form-page select,.panel input{width:100%;padding:12px;border:1px solid #d7e1ee;border-radius:8px;margin:6px 0;font:inherit;background:#fff}.full{width:100%;margin:10px 0}.error{color:#d33}.success{color:#16834b}.notice{padding:12px;background:#eef6ff;border:1px solid #d6e6fa;border-radius:8px}.admin{display:grid;grid-template-columns:235px 1fr;min-height:100vh}.admin aside{background:#fff;border-right:1px solid #e1e9f4;padding:25px 14px;position:sticky;top:0;height:100vh}.admin aside .brand{display:block;margin:0 10px 25px}.admin aside>a:not(.brand){display:block;padding:12px;border-radius:8px;margin:4px 0;color:#59687d;font-size:14px}.admin aside>a:not(.brand):hover{background:#edf5ff;color:#1266e8}.main,.dashboard,.form-page{padding:35px 5%;max-width:1450px;width:100%;margin:auto}.admin .main{max-width:none}.head,.panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px}.head h1{margin:5px 0}.grid{display:grid;gap:17px}.four{grid-template-columns:repeat(4,1fr)}.metric{padding:22px}.metric small,.metric span{display:block;color:#77869b;font-size:12px;margin-bottom:8px}.metric b{display:block;font-size:22px;margin-bottom:10px}.panel{padding:22px;margin:20px 0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:750px}th,td{text-align:left;padding:12px;border-bottom:1px solid #edf1f6;font-size:13px}th{background:#f7f9fc;color:#617086}.badge{padding:6px 10px;border-radius:18px;font-size:12px;font-weight:700}.active,.paid{background:#e9f8ef;color:#16834b}.closed,.cancelled{background:#fdecec;color:#d33}.unpaid{background:#fff2dc;color:#a76700}.link{color:#1266e8;margin-right:7px}.danger{color:#d33}.form-page{max-width:1000px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.form-grid .btn{align-self:end}.panel textarea,textarea{width:100%;min-height:85px;padding:12px;border:1px solid #d7e1ee;border-radius:8px;margin:6px 0;font:inherit}@media(max-width:900px){.hero{grid-template-columns:1fr;padding:55px 6%}.cards{grid-template-columns:repeat(2,1fr)}.four{grid-template-columns:repeat(2,1fr)}.admin{grid-template-columns:1fr}.admin aside{display:none}.form-grid{grid-template-columns:1fr}}@media(max-width:550px){.top{height:auto;padding:15px}.top nav{flex-direction:column;gap:6px;text-align:right}.hero h1{font-size:34px}.cards,.four{grid-template-columns:1fr}.head,.panel-title{align-items:flex-start;flex-direction:column}.main,.dashboard,.form-page{padding:25px 4%}.panel{padding:16px}}