/* ===================== GLOBAL THEME STYLE (shared) ===================== */
/* Reset & base */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;font-family: "Inter", Arial, sans-serif;background:#0b0710;color:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit}

/* Watermark (Rashichakra) — light impression across pages */
body::before{
  content:"";
  position:fixed;
  left:50%;
  top:40%;
  width:70vmin;
  height:70vmin;
  transform:translate(-50%,-50%);
  background-image:url('/mnt/data/Rashichakra.png');
  background-size:contain;
  background-position:center;
  background-repeat:no-repeat;
  opacity:0.06;
  pointer-events:none;
  filter:grayscale(10%) contrast(0.9);
  z-index:0;
}

/* Global container (Used in Admin/Add pages) */
.container{
  width:95%;
  max-width:1180px;
  margin:28px auto;
  padding:22px;
  border-radius:14px;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border:1px solid rgba(255,255,255,0.03);
  box-shadow: 0 16px 60px rgba(2,6,20,0.6);
  position:relative;
  z-index:1;
}

/* Headings */
h1{font-size:24px;color:#ffd6e8;text-align:center;margin-bottom:12px}

/* Inputs */
input,select,textarea{width:100%;padding:12px;border-radius:12px;border:none;background:rgba(255,255,255,0.06);color:#fff;outline:none;font-size:14px}
textarea{min-height:110px;resize:vertical}

/* Rows */
.row{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.col{flex:1;min-width:220px}

/* Buttons */
.btn{display:inline-block;padding:12px 26px;border-radius:28px;background:linear-gradient(90deg,#ff6ea6,#ff9d6d);color:#fff;font-weight:800;border:none;cursor:pointer}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,0.08);color:#fff}

/* Stepper small */
.stepper{display:flex;justify-content:center;gap:24px;margin-bottom:18px}
.step{color:rgba(255,255,255,0.55);font-weight:800;text-align:center;cursor:pointer}
.step .bar{width:140px;height:6px;border-radius:10px;background:rgba(255,255,255,0.06);margin-bottom:8px}
.step.active .bar{background:linear-gradient(90deg,#ff6ea6,#ff9d6d);box-shadow:0 8px 20px rgba(255,90,140,0.12);color:#fff}

/* PREVIEW */
.preview{padding:12px;border-radius:8px;background:rgba(255,255,255,0.03);color:#fff;margin-top:8px}

/* ALERT (admin upcoming) */
.alert-box{background:#ffedd7;border-left:6px solid #ff6b9a;padding:10px 12px;color:#7a2d00;border-radius:6px}

/* SEARCH */
#searchBar{display:block;margin:12px auto 18px;padding:12px 16px;border-radius:26px;border:1px solid rgba(255,255,255,0.04);width:68%;background:rgba(255,255,255,0.03);color:#fff;box-shadow:inset 0 2px 6px rgba(0,0,0,0.6)}

/* TABLE styles (admin) */
.table-box{overflow:auto}
table{width:100%;border-collapse:collapse;margin-top:14px}
th,td{padding:10px 8px;border:1px solid rgba(255,255,255,0.03);text-align:center;vertical-align:middle;white-space:nowrap;font-size:13px}
th{background:rgba(255,255,255,0.02);color:#ffe3f0;font-weight:800}

/* Action Buttons grouping */
.action-btn{display:inline-block;padding:6px 10px;border-radius:8px;text-decoration:none;font-weight:800;color:#fff;font-size:12px;margin:0 4px}
.card-btn{background:#ff4500}
.whatsapp-btn{background:#25d366;color:#05260f}
.delete-btn{color:#ff5555;cursor:pointer;font-size:18px}

/* blink */
.blink{animation:softBlink 1.5s infinite}
@keyframes softBlink{0%{opacity:1}50%{opacity:0.45}100%{opacity:1}}

/* Edit / delete icons stack */
.icon-vert{display:flex;flex-direction:column;gap:8px;align-items:center}
.icon-vert span{display:inline-block;width:34px;height:28px;background:transparent;border-radius:6px;line-height:28px;text-align:center;cursor:pointer}

/* responsive */
@media (max-width:980px){
  #searchBar{width:86%}
  .step .bar{width:110px}
  th,td{font-size:12px;padding:8px}
}
@media (max-width:640px){
  .row{flex-direction:column}
  .col{min-width:100%}
  th,td{font-size:11px;padding:7px;white-space:normal}
  .action-btn{font-size:11px;padding:6px 8px}
}

/* ensure main content sits above watermark */
.form-card, .container { position: relative; z-index: 2; }

/* make buttons uniform size */
.action-btn { min-width:72px !important; height:34px; display:inline-flex; align-items:center; justify-content:center; }

/* ensure table header sticky on larger devices */
@media (min-width:900px){
  table thead th {
    position: -webkit-sticky;
    position: sticky;
    top: 72px;
    z-index: 3;
    background: rgba(10,8,12,0.8);
  }
}
