:root{font-family:Inter,system-ui,sans-serif;color:#102030;background:#f8f8f8}*{box-sizing:border-box}body{margin:0}.container{max-width:1100px;margin:0 auto;padding:0 1rem}.section{padding:2rem 1rem}.topbar{background:#102030;color:#fff;padding:1rem 0;position:sticky;top:0}.nav-wrapper{display:flex;justify-content:space-between;align-items:center;gap:1rem}nav a{color:#dce8ff;text-decoration:none;margin-left:1rem;font-weight:600}nav a.active{color:#fff;border-bottom:2px solid #f7c15e}.hero{background:linear-gradient(#102030b3,#102030b3),url(https://images.unsplash.com/photo-1468824357306-a439d58ccb1c?auto=format&fit=crop&w=1800&q=80) center/cover;color:#fff;padding:5rem 1rem}.hero h2{max-width:700px;font-size:2.4rem;margin:0}.hero p{max-width:700px}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;padding:0}.features li{list-style:none;background:#fff;padding:1rem;border-radius:10px;box-shadow:0 2px 10px #10203014}.room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.room-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #1020301a}.room-card img{width:100%;height:200px;object-fit:cover}.room-content{padding:1rem}.booking-form{display:grid;gap:.75rem;max-width:480px}.booking-form input,.booking-form select,.booking-form button{padding:.75rem;border-radius:8px;border:1px solid #ccc}.booking-form button{background:#102030;color:#fff;cursor:pointer;border-color:#102030}.message{margin-top:1rem;font-weight:600}.footer{border-top:1px solid #ddd;padding:1rem 0;margin-top:2rem}.admin-page{padding:2rem 1rem;display:grid;gap:1.5rem}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-form{display:grid;gap:.6rem;max-width:760px}.admin-form input,.admin-form textarea,.admin-form button{padding:.65rem;border-radius:8px;border:1px solid #c8cfdb}.admin-form textarea{min-height:90px;resize:vertical}.admin-list{display:grid;gap:.8rem}.admin-card{background:#fff;border:1px solid #dde3ef;border-radius:10px;padding:.9rem;display:grid;gap:.55rem}.admin-row{display:flex;flex-wrap:wrap;gap:.5rem}.admin-images{display:flex;flex-wrap:wrap;gap:.75rem}.admin-images figure{margin:0;display:grid;gap:.3rem;width:140px}.admin-images img{width:140px;height:90px;object-fit:cover;border-radius:8px;border:1px solid #d9dfeb}.error-text{color:#b01818;font-weight:600}
