:root{--red:#C8102E;--gold:#F5A623;--blue:#0A3580;--cream:#FFF8EE;--dark:#1A0A00;--muted:#5A3000}*{box-sizing:border-box}body{margin:0;font-family:Arial,'Noto Sans Devanagari',sans-serif;background:linear-gradient(135deg,#fff8ee,#ffe2b6);color:var(--dark)}.site-nav{background:#fff;box-shadow:0 3px 18px rgba(0,0,0,.12);position:sticky;top:0;z-index:50}.site-nav .nav-inner{width:92%;max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.brand{font-weight:900;color:var(--red);font-size:20px}.menu{display:flex;gap:8px;flex-wrap:wrap}.menu a{padding:9px 14px;border-radius:999px;color:var(--dark);font-weight:800;text-decoration:none}.menu a:hover,.menu a.active{background:var(--red);color:#fff}.wrap{width:92%;max-width:900px;margin:35px auto}.box{background:#fff;border-radius:20px;padding:26px;box-shadow:0 8px 32px rgba(0,0,0,.16);border-top:5px solid var(--gold)}h1{margin:0 0 8px;color:var(--red);font-size:32px}.sub{color:var(--muted);margin-bottom:22px}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:flex;flex-direction:column;gap:7px}.full{grid-column:1/-1}label{font-weight:800}input,select,textarea{width:100%;padding:13px;border:1px solid #dfc8a4;border-radius:12px;font-size:15px}textarea{min-height:120px}.btn{border:0;background:var(--red);color:#fff;border-radius:999px;padding:14px 24px;font-weight:900;cursor:pointer;font-size:16px}.btn:hover{filter:brightness(.95)}.msg{padding:13px 16px;border-radius:13px;margin-bottom:16px;font-weight:800}.success{background:#e8f8ee;color:#116b2f}.error{background:#ffe8e8;color:#9f1028}.toplink{display:inline-block;margin-bottom:16px;color:var(--blue);font-weight:800}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.offer{background:#fff;border-radius:18px;box-shadow:0 6px 20px rgba(0,0,0,.12);padding:20px;border-left:5px solid var(--red)}.offer h3{margin:0 0 8px;color:var(--red)}.offer .price{font-size:24px;font-weight:900;color:var(--blue)}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.gallery img{width:100%;height:190px;object-fit:cover;border-radius:16px}.cap{font-weight:800;margin-top:7px}@media(max-width:700px){.site-nav .nav-inner{align-items:flex-start;flex-direction:column}.menu{width:100%;display:grid;grid-template-columns:1fr 1fr}.menu a{text-align:center;background:#fff3df}.grid{grid-template-columns:1fr}.full{grid-column:auto}h1{font-size:26px}}

.userbar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #ead7bc;border-radius:16px;padding:14px 16px;margin-bottom:18px;box-shadow:0 4px 18px rgba(0,0,0,.08)}.small-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--blue);color:#fff;text-decoration:none;font-weight:900;padding:10px 14px}.muted{color:var(--muted)}.table-wrap{overflow:auto;background:#fff;border-radius:16px;border:1px solid #ead7bc;box-shadow:0 6px 22px rgba(0,0,0,.10)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px;border-bottom:1px solid #f0dfc9;text-align:left;vertical-align:top}th{background:#fff0d2;color:#4b2b00;font-size:14px}.badge{display:inline-block;padding:6px 11px;border-radius:999px;background:#e8eef8;color:var(--blue);font-weight:900}.badge.pending{background:#fff0c1;color:#7a4a00}.badge.accepted{background:#e8f8ee;color:#116b2f}.badge.rejected{background:#ffe8e8;color:#9f1028}.badge.completed{background:#e8eef8;color:#0A3580}.auth-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}.link{color:var(--blue);font-weight:900;text-decoration:none}.note{font-size:13px;color:var(--muted);line-height:1.5}.center{text-align:center}

/* Better My Bookings table layout */
.wide-wrap{max-width:1180px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.page-head .sub{margin:0}.head-btn{white-space:nowrap}.empty-state{text-align:center;background:#fff8ee;border:1px dashed #dfc8a4;border-radius:18px;padding:34px 18px}.empty-state h3{margin:0 0 6px;color:var(--red);font-size:24px}.booking-table-wrap{border-radius:18px}.booking-table{min-width:1050px}.booking-table th{white-space:nowrap}.booking-table td{font-size:14px;line-height:1.45}.booking-table td:first-child,.booking-table th:first-child{text-align:center;width:54px}.message-cell{max-width:280px;min-width:220px}.booking-table .badge{white-space:nowrap;text-transform:capitalize}

@media(max-width:760px){.wide-wrap{width:94%;margin:22px auto}.userbar{align-items:flex-start;flex-direction:column}.small-btn{width:100%}.page-head{display:block}.head-btn{display:none}.booking-table-wrap{overflow:visible;border:0;box-shadow:none;background:transparent}.booking-table{min-width:0;border-collapse:separate;border-spacing:0 12px}.booking-table thead{display:none}.booking-table,.booking-table tbody,.booking-table tr,.booking-table td{display:block;width:100%}.booking-table tr{background:#fff;border:1px solid #ead7bc;border-radius:18px;box-shadow:0 5px 18px rgba(0,0,0,.10);padding:10px 12px}.booking-table td{border-bottom:1px solid #f2e1c8;display:flex;justify-content:space-between;gap:16px;text-align:right;padding:10px 4px}.booking-table td:last-child{border-bottom:0}.booking-table td::before{content:attr(data-label);font-weight:900;color:#4b2b00;text-align:left;flex:0 0 42%}.booking-table td:first-child{text-align:right;width:100%}.message-cell{max-width:none;min-width:0;white-space:normal}.booking-table .badge{margin-left:auto}}

/* Mobile-friendly hamburger navigation */
.nav-toggle{display:none;width:44px;height:40px;border:0;border-radius:12px;background:#fff3df;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.nav-toggle span{display:block;width:24px;height:3px;border-radius:4px;background:var(--red);transition:transform .25s ease,opacity .25s ease}
.nav-toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

@media(max-width:760px){
  .site-nav .nav-inner{width:94%;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 0;position:relative}
  .brand{font-size:17px;line-height:1.25;min-width:0}
  .nav-toggle{display:flex;justify-self:end}
  .menu{grid-column:1/-1;display:none;width:100%;grid-template-columns:1fr;gap:8px;background:#fff;border:1px solid #f0d7b1;border-radius:18px;padding:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);animation:navDrop .2s ease both}
  .menu.open{display:grid}
  .menu a{width:100%;text-align:left;background:#fff8ee;border:1px solid #f0d7b1;border-radius:13px;padding:12px 14px}
  .menu a:hover,.menu a.active{background:var(--red);color:#fff;border-color:var(--red)}
  .wrap{width:94%;margin:22px auto}
  .box{padding:20px;border-radius:18px}
  .auth-links{flex-direction:column;gap:9px}
}
@keyframes navDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}


/* Clean auth action spacing for login and forgot-password pages */
.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.auth-card{display:block;text-decoration:none;border-radius:16px;padding:16px 18px;border:1px solid #ead7bc;background:#fff8ee;box-shadow:0 4px 16px rgba(0,0,0,.07);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.auth-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.12);border-color:var(--gold)}
.auth-card.primary{background:#fff0d2;border-color:#f0c878}
.auth-card.secondary{background:#eef4ff;border-color:#c8d8f8}
.auth-title{display:block;color:var(--red);font-weight:900;font-size:16px;margin-bottom:5px}
.auth-card.secondary .auth-title{color:var(--blue)}
.auth-text{display:block;color:var(--muted);font-size:13px;line-height:1.4;font-weight:700}
.forgot-actions{display:grid;gap:14px;margin-top:18px}
.btn-block{display:flex;align-items:center;justify-content:center;width:100%;text-align:center;text-decoration:none}
.back-login-card{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;border-radius:999px;background:#fff8ee;border:1px solid #ead7bc;color:var(--blue);font-weight:900;text-decoration:none;box-shadow:0 3px 14px rgba(0,0,0,.06)}
.back-login-card:hover{border-color:var(--gold);background:#fff0d2}
@media(max-width:700px){.auth-actions{grid-template-columns:1fr;gap:12px;margin-top:20px}.auth-card{padding:15px}.auth-title{font-size:15px}.auth-text{font-size:12.5px}.forgot-actions{gap:12px}.btn-block,.back-login-card{min-height:48px}}

/* Event-wise public gallery */
.gallery-wrap{max-width:1120px}.event-gallery-section{background:#fff;border:1px solid #ead7bc;border-radius:22px;padding:22px;margin:22px 0;box-shadow:0 8px 30px rgba(0,0,0,.12);border-top:5px solid var(--gold)}.event-gallery-head{margin-bottom:16px}.event-gallery-head h2{margin:0 0 8px;color:var(--red);font-size:26px}.event-gallery-head p{margin:0 0 6px;color:var(--muted);font-weight:700}.event-note{font-weight:500!important;line-height:1.55}.dot-sep{display:inline-block;margin:0 8px;color:var(--gold)}.event-wise-gallery{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.gallery-photo-card{background:#fff8ee;border:1px solid #f0dfc9;border-radius:18px;padding:10px;box-shadow:0 4px 14px rgba(0,0,0,.07)}.gallery-photo-card img{height:210px;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.08)}
@media(max-width:700px){.event-gallery-section{padding:16px;border-radius:18px;margin:16px 0}.event-gallery-head h2{font-size:22px}.dot-sep{display:block;margin:5px 0 0}.event-wise-gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery-photo-card{padding:7px}.gallery-photo-card img{height:145px;border-radius:12px}}
@media(max-width:420px){.event-wise-gallery{grid-template-columns:1fr}.gallery-photo-card img{height:210px}}

/* Responsive gallery image fix: images keep original proportion and never stretch or overflow */
.gallery,
.event-wise-gallery{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:18px;
  align-items:start;
}
.gallery-photo-card{
  width:100%;
  min-width:0;
  overflow:hidden;
}
.gallery-photo-card img,
.gallery img{
  display:block;
  width:100%;
  max-width:100%;
  aspect-ratio:4/3;
  height:auto;
  object-fit:cover;
  object-position:center;
  border-radius:14px;
}
@media (min-width:1100px){
  .event-wise-gallery{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:900px){
  .event-wise-gallery{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:520px){
  .event-wise-gallery{grid-template-columns:1fr;gap:14px}
  .gallery-photo-card img,.gallery img{aspect-ratio:16/11}
}
