@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');
*{margin:0;padding:0;box-sizing:border-box;font-family:'Plus Jakarta Sans',sans-serif}
body{background:#f5f7fb;color:#0f172a}
a{text-decoration:none}
.login-body{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#0f172a,#1B4FD8)}
.login-box{width:400px;background:white;padding:40px;border-radius:24px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.login-box h1{font-size:55px}.login-box h2{color:#1B4FD8}.login-box p{color:#64748b;margin:12px 0 22px}
.login-box input,.login-box select{width:100%;padding:14px;border:1px solid #ddd;border-radius:12px;margin:10px 0}
.login-box button{width:100%;padding:14px;background:#1B4FD8;color:white;border:none;border-radius:12px;font-weight:700}
.small{font-size:14px}.small a{color:#1B4FD8;font-weight:700}
.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:22px 8%;background:white;box-shadow:0 5px 20px rgba(0,0,0,.07)}
.landing-nav h2{color:#1B4FD8}.landing-nav a{margin-left:18px;color:#1B4FD8;font-weight:700}
.hero{min-height:75vh;display:flex;align-items:center;padding:60px 8%;background:linear-gradient(rgba(15,23,42,.65),rgba(15,23,42,.65)),url('https://images.unsplash.com/photo-1524995997946-a1c2e315a42f?q=80&w=1600&auto=format&fit=crop');background-size:cover;color:white}
.hero span{background:rgba(255,255,255,.2);padding:8px 16px;border-radius:30px}.hero h1{font-size:52px;margin:22px 0}.hero p{max-width:620px;line-height:1.8;margin-bottom:25px}.hero-btn{background:white;color:#1B4FD8;padding:14px 22px;border-radius:14px;font-weight:700}
.section{padding:60px 8%}.section h2{color:#1B4FD8;margin-bottom:25px}
.sidebar{width:260px;height:100vh;background:#0f172a;color:white;position:fixed;left:0;top:0;padding:25px 20px}.sidebar h2{text-align:center;margin-bottom:35px}.sidebar a{display:block;color:white;padding:14px;border-radius:12px;margin-bottom:10px}.sidebar a:hover{background:rgba(255,255,255,.12)}
.main{margin-left:260px;padding:30px}.topbar{background:white;padding:22px;border-radius:20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;box-shadow:0 5px 15px rgba(0,0,0,.07)}.topbar h1{color:#1B4FD8}
.welcome{background:linear-gradient(135deg,#1B4FD8,#143ca6);color:white;padding:35px;border-radius:25px;margin-bottom:25px}.card-box{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:25px}.card{background:white;padding:30px;border-radius:22px;box-shadow:0 5px 15px rgba(0,0,0,.07)}.card h3{color:#1B4FD8}.card p{font-size:34px;font-weight:700;margin-top:10px}
.grid-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.book-card{background:white;border-radius:22px;overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.07)}.book-card img,.no-img{width:100%;height:220px;object-fit:cover}.no-img{display:flex;justify-content:center;align-items:center;font-size:70px;background:#e0e7ff}.book-card div{padding:18px}.book-card span{color:#1B4FD8;font-weight:700}.book-card input{width:100%;padding:10px;margin:8px 0;border:1px solid #ddd;border-radius:10px}
table{width:100%;border-collapse:collapse;background:white;border-radius:20px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.07)}th{background:#1B4FD8;color:white;padding:15px}td{padding:14px;border-bottom:1px solid #eee;text-align:center}tr:hover{background:#f1f5f9}.table-img{width:70px;height:70px;object-fit:cover;border-radius:12px}
.btn{padding:12px 18px;background:#1B4FD8;color:white;border:none;border-radius:12px;display:inline-block}.btn-warning{background:#f59e0b;color:white;padding:10px 15px;border-radius:10px}.btn-danger{background:#dc2626;color:white;padding:10px 15px;border-radius:10px}.btn-back{background:#64748b;color:white;padding:10px 15px;border-radius:10px}
.form-box{max-width:650px;background:white;padding:30px;border-radius:25px;box-shadow:0 5px 15px rgba(0,0,0,.07)}.form-box h1{color:#1B4FD8}.form-box label{display:block;margin-top:15px;font-weight:700}.form-box input{width:100%;padding:13px;border:1px solid #ddd;border-radius:12px;margin-top:8px}.form-box button{width:100%;margin-top:20px;padding:14px;border:none;border-radius:12px;background:#1B4FD8;color:white;font-weight:700}.habis{background:#dc2626;color:white;padding:10px;border-radius:10px;text-align:center}
@media(max-width:768px){.sidebar{width:100%;height:auto;position:relative}.main{margin-left:0;padding:18px}.topbar{flex-direction:column;align-items:flex-start;gap:10px}.hero h1{font-size:36px}.landing-nav{flex-direction:column;gap:15px}table{font-size:13px}}