/* Dhakkan Giving Back — storefront surfaces.
   Uses the dhakkan-lid design tokens (--panel, --line, --yellow, --f-display…)
   with fallbacks, so it inherits the day/night theme instead of fighting it. */

/* Visually hidden but read aloud. The theme has no screen-reader-text
   utility of its own, so the plugin carries one. */
.dkg-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}

/* ---------- product page line ---------- */
.dkg-pdp{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:14px 0 0;padding:11px 14px;
  background:var(--panel,#141416);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:12px;font-size:14px;line-height:1.45;}
.dkg-pdp-amount{font-family:var(--f-display,inherit);font-size:19px;color:var(--yellow-ink,#FFE600);}
.dkg-pdp-text{color:var(--muted,rgba(255,255,255,.6));}
.dkg-pdp-text a{color:var(--text-strong,#fff);text-decoration:underline;text-underline-offset:3px;}
.dkg-pdp-link{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;}
.dkg-pdp-link .dkg-ico{width:13px;height:13px;flex:none;opacity:.75;transform:translateY(-1px);}
.dkg-pdp-link:hover .dkg-ico{opacity:1;}

/* ---------- cart + checkout totals row ---------- */
.dkg-cart-row th{font-weight:600;}
.dkg-cart-note{display:block;font-size:11px;opacity:.7;font-weight:400;}

/* ---------- order confirmation ---------- */
.dkg-thanks{margin:24px 0;padding:22px 24px;background:var(--panel,#141416);
  border:1px solid var(--line,rgba(255,255,255,.08));border-radius:16px;}
.dkg-thanks-h{font-family:var(--f-display,inherit);font-size:24px;margin:0 0 10px;text-transform:uppercase;}
.dkg-thanks-total{font-family:var(--f-display,inherit);font-size:34px;margin:0 0 12px;color:var(--yellow-ink,#FFE600);}
.dkg-thanks-list{list-style:none;margin:0 0 12px;padding:0;}
.dkg-thanks-list li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;
  border-bottom:1px solid var(--line,rgba(255,255,255,.08));}
.dkg-thanks-list li:last-child{border-bottom:0;}
.dkg-thanks-note{margin:0;font-size:12.5px;color:var(--muted2,rgba(255,255,255,.45));}

/* ---------- footer strip ---------- */
.dkg-strip{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  padding:13px 20px;text-align:center;border-top:1px solid var(--line,rgba(255,255,255,.08));
  border-bottom:1px solid var(--line,rgba(255,255,255,.08));font-size:13.5px;}
.dkg-strip-text{color:var(--muted,rgba(255,255,255,.66));}
.dkg-strip-text strong{color:var(--yellow-ink,#FFE600);}
.dkg-strip-link{color:var(--text-strong,#fff);text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}

/* ---------- the giving page ---------- */
.dkg-lead{font-size:18px;line-height:1.6;max-width:70ch;color:var(--muted,rgba(255,255,255,.72));}

.dkg-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 34px;}
.dkg-stat{padding:22px;background:var(--panel,#141416);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:16px;text-align:center;}
.dkg-stat-num{font-family:var(--f-display,inherit);font-size:34px;line-height:1.05;color:var(--yellow-ink,#FFE600);}
.dkg-stat-lbl{margin-top:6px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted2,rgba(255,255,255,.5));}

.dkg-causes{display:grid;gap:18px;}
/* Single column by default: with no featured image the card has one child,
   which grid drops into the 260px track — leaving the body crammed into a
   ribbon with 61% of the card empty. Two columns only once there is an image
   to fill the first track. */
.dkg-cause{display:grid;grid-template-columns:1fr;gap:22px;padding:20px;
  background:var(--panel,#141416);border:1px solid var(--line,rgba(255,255,255,.08));border-radius:18px;}
.dkg-cause:has(.dkg-cause-img){grid-template-columns:260px 1fr;}
.dkg-cause-img img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block;}
.dkg-cause-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted2,rgba(255,255,255,.5));}
.dkg-cause-title{font-family:var(--f-display,inherit);font-size:28px;margin:6px 0 10px;text-transform:uppercase;}
.dkg-cause-desc{color:var(--muted,rgba(255,255,255,.7));line-height:1.6;}
.dkg-cause-desc p{margin:0 0 10px;}
.dkg-cause-total{margin-top:10px;font-size:13px;color:var(--muted2,rgba(255,255,255,.5));}
.dkg-cause-link{display:inline-flex;align-items:center;gap:5px;margin-top:2px;font-size:13.5px;
  color:var(--text-strong,#fff);text-decoration:underline;text-underline-offset:3px;}
.dkg-cause-link .dkg-ico{width:13px;height:13px;flex:none;opacity:.75;}
.dkg-cause-link:hover .dkg-ico{opacity:1;}

/* monthly-target tracker (the rotating cause) */
.dkg-target{margin-top:16px;}
.dkg-target-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:8px;}
.dkg-target-raised{font-family:var(--f-display,inherit);font-size:30px;line-height:1;color:var(--yellow-ink,#FFE600);}
.dkg-target-of{font-size:14px;color:var(--muted,rgba(255,255,255,.66));}
.dkg-progress{height:10px;border-radius:999px;overflow:hidden;
  background:var(--line2,rgba(255,255,255,.12));}
.dkg-progress-bar{height:100%;border-radius:999px;background:var(--yellow,#FFE600);transition:width .4s ease;}
.dkg-progress.is-met .dkg-progress-bar{background:var(--green,#39FF88);}
.dkg-target-foot{margin-top:8px;font-size:13px;line-height:1.5;color:var(--muted,rgba(255,255,255,.66));}
.dkg-met{color:var(--green,#39FF88);}

/* open-ended tracker (the permanent cause) */
.dkg-running{margin-top:16px;}
.dkg-running-num{font-family:var(--f-display,inherit);font-size:34px;line-height:1;color:var(--yellow-ink,#FFE600);}
.dkg-running-lbl{margin-top:4px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2,rgba(255,255,255,.5));}
.dkg-running-month{margin-top:6px;font-size:13px;color:var(--muted,rgba(255,255,255,.66));}

.dkg-how{margin-top:34px;}
.dkg-how h2{font-family:var(--f-display,inherit);text-transform:uppercase;font-size:24px;margin:0 0 12px;}
.dkg-how ul{margin:0;padding-left:20px;color:var(--muted,rgba(255,255,255,.7));line-height:1.7;max-width:75ch;}

@media(max-width:800px){
  .dkg-stats{grid-template-columns:1fr;}
  /* :has() is (0,2,0) and would otherwise outrank a bare .dkg-cause here,
     keeping an illustrated cause two-column on phones. */
  .dkg-cause,.dkg-cause:has(.dkg-cause-img){grid-template-columns:1fr;}
}

/* ---------- post-audit fixes ----------
   This stylesheet is enqueued BEFORE the theme's, so theme rules of equal
   specificity win on source order. Several plugin rules were being silently
   overridden by .dk-prose descendants on the giving page; the .dkg-page
   prefix below raises specificity enough to take them back. */

/* .dk-prose h3 was beating .dkg-cause-title, rendering the cause names —
   the actual subject of the page — smaller and plainer than the boilerplate
   headings, with a 26px top margin detaching them from their kicker. */
.dkg-page .dkg-cause-title{font-family:var(--f-display);font-size:28px;margin:6px 0 10px;line-height:1.05;}
.dkg-page .dkg-how h2{font-size:24px;margin:0 0 12px;}
.dkg-page .dkg-cause-link{color:var(--text-strong,#fff);}
.dkg-page .dkg-cause-desc p:last-child{margin-bottom:0;}

/* The rupee sign is missing from the display face, so it fell back to a
   condensed face mid-number. Archivo 800 has it and matches the weight. */
.dkg-stat-num .woocommerce-Price-currencySymbol,
.dkg-running-num .woocommerce-Price-currencySymbol,
.dkg-target-raised .woocommerce-Price-currencySymbol,
.dkg-thanks-total .woocommerce-Price-currencySymbol,
.dkg-pdp-amount .woocommerce-Price-currencySymbol{
  font-family:var(--f-heavy),sans-serif;font-weight:800;font-size:.86em;margin-right:.03em;}

/* Zero state: an empty grey track reads as a still-loading element rather
   than a tracker that has not moved yet. */
.dkg-progress.is-zero{background:repeating-linear-gradient(135deg,
  var(--line2,rgba(255,255,255,.12)) 0 6px,transparent 6px 12px);}

/* The giving row sat directly under the order total with identical
   right-aligned currency formatting, reading as a second charge. Demoted,
   and de-bordered so it stops drawing a hairline inside the rounded card. */
.woocommerce-checkout #order_review .shop_table tfoot tr.dkg-cart-row th,
.woocommerce-checkout #order_review .shop_table tfoot tr.dkg-cart-row td,
.cart_totals tr.dkg-cart-row th,.cart_totals tr.dkg-cart-row td{
  border-top:0;border-bottom:0;padding-top:0;color:var(--muted);font-weight:500;font-size:12.5px;}
.dkg-cart-note{display:block;font-size:11px;opacity:.75;font-weight:400;margin-top:2px;}

/* The footer's own top border plus the strip's stacked into a 2px band. */
.dk-footer > .dkg-strip:first-child{border-top:0;}
