/*
Theme Name: GetPincode Ultra Premium PRO
Theme URI: https://getpincode.in
Author: OpenAI
Description: Stable full-width production theme for GetPincode. Keeps plugin-generated content compatible and improves mobile PIN highlighting.
Version: 4.4.2
Text Domain: getpincode-ultra-premium-pro
*/

:root{
  --gp-bg:#f4f6f8;
  --gp-card:#ffffff;
  --gp-text:#172334;
  --gp-muted:#5f7187;
  --gp-line:#dfe5ec;
  --gp-accent:#e53935;
  --gp-accent-dark:#c62828;
  --gp-soft:#fff5f5;
  --gp-shadow:0 4px 16px rgba(21,34,50,.06);
  --gp-max:1180px;
  --gp-radius:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--gp-bg);
  color:var(--gp-text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}

.gp-wrap{max-width:var(--gp-max);margin:0 auto;padding:0 16px}

.gp-site-header{
  background:#fff;
  border-bottom:1px solid var(--gp-line);
  position:sticky;
  top:0;
  z-index:20;
}
.gp-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 0;
}
.gp-brand{
  display:flex;
  align-items:center;
  gap:14px;
  font-weight:800;
}
.gp-brand-badge{
  width:46px;height:46px;border-radius:14px;
  display:grid;place-items:center;
  color:#fff;
  background:linear-gradient(180deg,#ff7b2f,#e53935);
  font-size:15px;font-weight:900;
}
.gp-brand-title{font-size:19px;line-height:1.1}
.gp-brand-sub{font-size:13px;color:var(--gp-muted);font-weight:600}
.gp-nav{
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
}
.gp-nav a{font-weight:700}
.gp-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  border-radius:999px;
  background:var(--gp-accent);
  color:#fff;
  font-weight:800;
}
.gp-btn:hover{background:var(--gp-accent-dark)}

.gp-main{padding:18px 0 28px}
.gp-hero,.gp-card{
  background:var(--gp-card);
  border:1px solid var(--gp-line);
  border-radius:var(--gp-radius);
  box-shadow:var(--gp-shadow);
}
.gp-hero{
  padding:28px;
  margin-bottom:18px;
  background:linear-gradient(180deg,#fff,#fcfcfd);
}
.gp-hero h1,.entry-title{
  margin:0 0 10px;
  font-size:clamp(30px,5vw,56px);
  line-height:1.06;
}
.gp-hero p{margin:0;color:var(--gp-muted);font-size:18px}
.gp-card{padding:22px}

.entry-content>*:first-child{margin-top:0}
.entry-content h1,.entry-content h2,.entry-content h3{line-height:1.2;color:var(--gp-text)}
.entry-content h1{font-size:clamp(28px,4.4vw,52px);margin:0 0 12px}
.entry-content h2{font-size:clamp(22px,3vw,34px);margin:24px 0 10px}
.entry-content h3{font-size:20px;margin:18px 0 8px}
.entry-content p,.entry-content li{font-size:17px;color:#2b4159}
.entry-content ul,.entry-content ol{padding-left:20px}
.entry-content table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid var(--gp-line);
  border-radius:18px;
  background:#fff;
  margin:12px 0 20px;
}
.entry-content th,.entry-content td{
  padding:14px 12px;
  border-bottom:1px solid var(--gp-line);
  text-align:left;
}
.entry-content th{
  background:#f6f2ed;
  font-size:14px;
}
.entry-content tr:last-child td{border-bottom:none}

/* Strong exact PIN highlight */
.gp-pin-highlight,
.entry-content .gp-pin-highlight,
.entry-content .pin-highlight,
.entry-content .exact-pin{
  border:2px solid var(--gp-accent);
  background:var(--gp-soft);
  padding:18px;
  border-radius:14px;
  font-size:26px;
  font-weight:800;
  text-align:center;
  margin:15px 0;
  color:#8d1f1c;
}

/* Chips / pills / related links */
.entry-content .gp-chip,
.entry-content .pin-chip,
.entry-content .related-pin,
.entry-content .gp-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:10px 14px;
  border:1px solid var(--gp-line);
  border-radius:999px;
  background:#fff;
  margin:0 10px 10px 0;
  font-weight:700;
}

/* Grid helpers often used by plugin output */
.entry-content .gp-grid,
.entry-content .gp-grid-2,
.entry-content .gp-grid-3,
.entry-content .gp-grid-4{
  display:grid;
  gap:14px;
}
.entry-content .gp-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.entry-content .gp-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.entry-content .gp-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.entry-content .gp-stat,
.entry-content .gp-info-box,
.entry-content .gp-link-card{
  background:#fff;
  border:1px solid var(--gp-line);
  border-radius:18px;
  padding:16px;
}

.gp-footer{
  background:#fff;
  border-top:1px solid var(--gp-line);
  margin-top:26px;
}
.gp-footer-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  gap:18px;
  padding:22px 0;
}
.gp-footer h3{margin:0 0 10px;font-size:22px}
.gp-footer p,.gp-footer a{color:var(--gp-muted);font-size:15px}

@media (max-width:860px){
  .gp-topbar{align-items:flex-start;flex-direction:column}
  .gp-footer-grid,
  .entry-content .gp-grid-2,
  .entry-content .gp-grid-3,
  .entry-content .gp-grid-4{grid-template-columns:1fr}
  .gp-nav{gap:14px}
  .gp-hero{padding:22px}
  .gp-card{padding:18px}
  .entry-content p,.entry-content li{font-size:16px}
  .entry-content table{display:block;overflow:auto;white-space:nowrap}
  .gp-pin-highlight,
  .entry-content .gp-pin-highlight,
  .entry-content .pin-highlight,
  .entry-content .exact-pin{
    font-size:24px;
    position:sticky;
    top:70px;
    z-index:10;
  }
}

@media (max-width:560px){
  .gp-brand-title{font-size:17px}
  .gp-brand-sub{font-size:12px}
  .gp-nav{font-size:14px}
  .gp-btn{padding:10px 14px}
  .gp-hero h1,.entry-title{font-size:clamp(26px,8vw,40px)}
}
