/* ==========================================================
   e-Hundi page (page-templates/tpl-e-hundi.php)
   Builds on inner-v2.css (.form-card, .f-field, .amt-chip, .steps,
   .bank-*) and home-v2.css (.seva-btn, .fx-wipe, .icon).
   ========================================================== */

.eh-sprite{position:absolute;width:0;height:0;overflow:hidden}

/* progressive enhancement: JS adds .eh-js to .eh-wrap */
.eh-wrap:not(.eh-js) .eh-js-only{display:none!important}
.eh-wrap.eh-js .eh-nojs-only{display:none!important}
.eh-wrap [hidden]{display:none!important}

/* steps indicator */
.eh-steps .step.is-done{background:var(--v2-sand);border-color:var(--color-secondary);color:var(--color-primary-dark)}

/* each step is a fieldset */
.eh-step{border:0;margin:0;padding:0;min-width:0}
.eh-step + .eh-step{margin-top:1.6rem;padding-top:1.4rem;border-top:1px dashed var(--color-border)}
.eh-js .eh-step + .eh-step{margin-top:0;padding-top:0;border-top:0}
.eh-legend{display:block;width:100%;padding:0;margin:0 0 1rem;
  font-family:var(--font-tamil-tiro);font-size:1.05rem;color:var(--color-primary);line-height:1.5}

/* honeypot — off-screen, never shown */
.eh-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* buttons */
button.seva-btn,button.amt-chip,.eh-back{cursor:pointer;-webkit-appearance:none;appearance:none}
button.seva-btn{font-weight:400}
.eh-btn[disabled]{opacity:.65;cursor:wait}
.eh-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.4rem}
.eh-nav .eh-btn{margin-left:auto}
.eh-back{background:none;border:0;padding:.3rem .2rem;font-family:var(--font-tamil-noto);font-size:.95rem;
  color:var(--color-primary);text-decoration:underline;text-underline-offset:3px}
.eh-back:hover,.eh-back:focus-visible{color:var(--color-primary-dark)}

/* field errors */
.f-field.has-error input,.f-field.has-error select,.f-field.has-error textarea{border-color:#c34f4f;box-shadow:0 0 0 2px rgba(195,79,79,.15)}
.f-check.has-error{color:#a33a3a}
.eh-field-err{display:block;font-family:var(--font-tamil-noto);font-size:.85rem;color:#a33a3a;margin-top:.35rem}

.eh-errors{background:#FDF0EF;border:1px solid #e3b4b0;border-left:4px solid #c34f4f;border-radius:var(--v2-radius);
  padding:1rem 1.2rem;margin-bottom:1.4rem;font-family:var(--font-tamil-noto);color:#7d2b2b}
.eh-errors:focus{outline:2px solid #c34f4f;outline-offset:2px}
.eh-errors-title{font-weight:600;margin:0 0 .4rem;display:flex;align-items:center;gap:.45rem}
.eh-errors ul{margin:0;padding-left:1.3rem;font-size:.92rem;line-height:1.85}
.eh-js-error{margin:1rem 0 0;font-family:var(--font-tamil-noto);font-size:.9rem;color:#a33a3a}

/* event being sponsored */
.eh-event{display:flex;gap:.9rem;align-items:flex-start;background:var(--color-white);
  border:1px solid var(--color-border);border-left:4px solid var(--color-secondary);border-radius:var(--v2-radius);
  padding:1rem 1.2rem;margin-bottom:1.4rem;box-shadow:var(--shadow-sm)}
.eh-event .ic{flex:none;width:42px;height:42px;border-radius:50%;background:var(--v2-sand);border:1px solid var(--color-border);
  display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--color-primary)}
.eh-event p{margin:0}
.eh-event-label{font-family:var(--font-tamil-noto);font-size:.88rem;color:var(--color-text-muted)}
.eh-event-title{font-family:var(--font-tamil-tiro);font-size:1.12rem;line-height:1.55}
.eh-event-title a{color:var(--color-primary-dark)}
.eh-event-date{font-family:var(--font-tamil-noto);font-size:.9rem;color:var(--color-primary)}

.eh-intro{margin-bottom:1.4rem}

/* confirm summary + receipt */
.eh-summary{margin:0 0 1rem;border:1px solid var(--color-border);border-radius:var(--v2-radius);overflow:hidden}
.eh-sum-row{display:grid;grid-template-columns:170px 1fr;gap:1rem;padding:.6rem 1rem;
  border-bottom:1px dashed var(--color-border);font-family:var(--font-tamil-noto);font-size:.95rem}
.eh-sum-row:last-child{border-bottom:0}
.eh-sum-row:nth-child(odd){background:var(--v2-cream)}
.eh-sum-row dt{color:var(--color-text-muted)}
.eh-sum-row dd{margin:0;color:var(--color-primary-dark);font-weight:600;white-space:pre-line;overflow-wrap:anywhere}

/* amount to pay */
.eh-pay-amount{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .9rem;background:var(--v2-sand);
  border:1px solid var(--color-border);border-left:4px solid var(--color-secondary);border-radius:var(--v2-radius);
  padding:.8rem 1.1rem;font-family:var(--font-tamil-noto);color:var(--color-primary-dark)}
.eh-pay-amount strong{font-family:var(--font-english);font-size:1.5rem;color:var(--color-primary)}
.eh-pay-amount small{font-size:.82rem;color:var(--color-text-muted)}
.eh-howto{margin:1rem 0 0;padding-left:1.4rem;font-family:var(--font-tamil-noto);font-size:.92rem;
  color:var(--color-text-muted);line-height:1.9}
.eh-step .bank-grid{margin:1rem 0 1.4rem}
.eh-nopay{background:#FFF8E6;border:1px dashed var(--color-gold-dark);border-radius:6px;padding:.9rem 1.1rem;
  margin:1rem 0 1.4rem;font-family:var(--font-tamil-noto);font-size:.92rem;color:#7a5a1a;line-height:1.85}
.eh-nopay p{margin:0}
.eh-nopay p + p{margin-top:.45rem}
.eh-contact{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}

/* file input */
.eh-file input[type=file]{padding:.55rem .7rem;cursor:pointer;background:var(--color-white)}
.eh-file input[type=file]::file-selector-button{font-family:var(--font-tamil-noto);font-size:.9rem;margin-right:.8rem;
  padding:.3rem .9rem;border:1px solid #c34f4f;border-radius:6px;background:var(--v2-cream);color:var(--color-primary-dark);cursor:pointer}

/* receipt */
.eh-receipt:focus{outline:none}
.eh-ref-label{text-align:center;font-family:var(--font-tamil-noto);font-size:.92rem;color:var(--color-text-muted);margin:0}
.eh-ref{text-align:center;font-family:var(--font-english);font-size:1.6rem;font-weight:700;letter-spacing:.06em;
  color:var(--color-primary);margin:.15rem 0 1.2rem;overflow-wrap:anywhere}
.eh-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.3rem}
.eh-link{font-family:var(--font-tamil-noto);font-size:.95rem}

@media (max-width:640px){
  .eh-sum-row{grid-template-columns:1fr;gap:.1rem}
  .eh-nav .eh-btn{margin-left:0}
  .eh-ref{font-size:1.3rem}
}

@media print{
  .site-header,.top-bar,.site-footer,.home-side,.page-banner-photo,.eh-notes,.eh-actions,.temple-audio-player,.header-gold-border{display:none!important}
  .home-grid{display:block}
  .page-main{padding:0;background:#fff}
}
