/* ════════════════════════════════════════════════════════════════
   FLOURISH COMMERCE STYLES — Giving + Gift Shop
   Aesthetic: "The Agriculture of the Soul." Chiaroscuro depth,
   chiseled stone, gold/bronze, glassmorphic panels, organic motifs.
   ZERO flowers/petals/pastels. Heavy, architectural, sacred.
   ════════════════════════════════════════════════════════════════ */

/* ── Cart badge (header) ── */
.cart-badge{
  position:relative; display:inline-flex; align-items:center; gap:2px;
  background:var(--surface-2); color:var(--accent); border:1px solid var(--border-light);
  border-radius:10px; padding:5px 9px; font-size:16px; cursor:pointer;
  transition:transform .2s var(--transition);
}
.cart-badge:active{ transform:scale(0.92); }
.cart-badge .cb-count{
  position:absolute; top:-5px; right:-5px; background:var(--accent); color:var(--text-inverse);
  font-size:10px; font-weight:700; min-width:16px; height:16px; border-radius:8px;
  display:flex; align-items:center; justify-content:center; padding:0 4px;
  box-shadow:0 2px 6px var(--accent-glow-strong);
}

/* ── Sub-nav (Store / Give / Orders / Gifts / Admin) ── */
.shop-subnav{
  display:flex; gap:6px; padding:8px; background:var(--surface);
  border-bottom:1px solid var(--border); position:sticky; top:var(--header);
  z-index:10; overflow-x:auto; scrollbar-width:none;
}
.shop-subnav::-webkit-scrollbar{ display:none; }
.shop-subnav-btn{
  flex:0 0 auto; background:transparent; color:var(--text-muted); border:none;
  padding:8px 14px; border-radius:var(--radius-sm); font-family:inherit;
  font-size:13px; font-weight:600; cursor:pointer; white-space:nowrap;
  border:1px solid transparent; transition:all .25s var(--transition);
}
.shop-subnav-btn:hover{ color:var(--text); background:var(--surface-2); }
.shop-subnav-btn.active{
  color:var(--accent); background:var(--accent-glow); border-color:var(--accent-soft);
  box-shadow:0 2px 12px var(--accent-glow);
}

/* ── Storefront hero ── */
.shop-hero{
  display:flex; align-items:center; gap:16px; padding:18px; margin-bottom:14px;
  background:var(--surface); border-radius:var(--radius-lg); border:1px solid var(--border-light);
  position:relative; overflow:hidden;
}
.shop-hero::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(ellipse at 80% 0%, var(--accent-glow) 0%, transparent 60%);
}
.shop-hero-seal{ flex:0 0 auto; filter:drop-shadow(0 4px 12px rgba(0,0,0,0.4)); }
.shop-hero-eyebrow{ font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); font-weight:700; }
.shop-hero-title{ font-size:26px; font-weight:700; color:var(--text); font-family:'Georgia',serif; margin-top:2px; }
.shop-hero-sub{ font-size:13px; color:var(--text-muted); line-height:1.5; margin-top:6px; max-width:560px; }

/* ── Category chips ── */
.shop-cats{
  display:flex; gap:8px; padding:8px 2px 14px; overflow-x:auto; scrollbar-width:none;
}
.shop-cats::-webkit-scrollbar{ display:none; }
.shop-cat-chip{
  flex:0 0 auto; background:var(--surface-2); color:var(--text-muted); border:1px solid var(--border);
  padding:7px 14px; border-radius:20px; font-family:inherit; font-size:12.5px; font-weight:600;
  cursor:pointer; white-space:nowrap; transition:all .2s var(--transition);
}
.shop-cat-chip:hover{ color:var(--text); border-color:var(--border-light); }
.shop-cat-chip.active{ color:var(--accent); background:var(--accent-glow); border-color:var(--accent-soft); }

/* ── Product grid ── */
.shop-grid{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:14px;
}
.shop-card{
  background:var(--surface); border-radius:var(--radius); border:1px solid var(--border);
  overflow:hidden; cursor:pointer; transition:all .3s var(--transition);
  display:flex; flex-direction:column;
}
.shop-card:hover{ transform:translateY(-3px); border-color:var(--accent-soft); box-shadow:0 10px 28px var(--accent-glow-strong); }
.pc-art{ aspect-ratio:1; overflow:hidden; background:var(--bg); line-height:0; }
.pc-art svg{ width:100%; height:100%; display:block; }
.pc-body{ padding:12px; display:flex; flex-direction:column; gap:4px; }
.pc-cat{ font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); font-weight:700; }
.pc-name{ font-size:13.5px; font-weight:700; color:var(--text); line-height:1.3; font-family:'Georgia',serif; }
.pc-blurb{ font-size:11.5px; color:var(--text-muted); line-height:1.4; flex:1; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.pc-foot{ display:flex; align-items:center; justify-content:space-between; margin-top:6px; }
.pc-price{ font-size:14px; font-weight:700; color:var(--accent); }
.pc-compare{ font-size:11px; color:var(--text-dim); text-decoration:line-through; margin-left:4px; font-weight:400; }
.pc-add{
  background:var(--surface-3); color:var(--accent); border:1px solid var(--border-light);
  padding:5px 10px; border-radius:8px; font-size:11.5px; font-weight:700; cursor:pointer;
  font-family:inherit; transition:all .2s var(--transition);
}
.pc-add:hover{ background:var(--accent); color:var(--text-inverse); border-color:var(--accent); }
.pc-add:active{ transform:scale(0.92); }
.pc-lowstock{ font-size:10.5px; color:var(--warning); margin-top:4px; font-weight:600; }

/* ── Section title + footnote ── */
.shop-section-title{
  font-size:20px; font-weight:700; color:var(--text); font-family:'Georgia',serif;
  margin:14px 0 10px; display:flex; align-items:center; gap:8px;
}
.shop-section-title::before{ content:""; width:3px; height:18px; background:var(--accent); border-radius:2px; }
.shop-footnote{
  margin-top:16px; padding:14px; font-size:12.5px; line-height:1.6; color:var(--text-muted);
  background:var(--surface-2); border-radius:var(--radius-sm); border-left:3px solid var(--accent);
  font-style:italic;
}
.shop-back{ margin:10px 0 6px; font-size:12px; }

/* ── Product detail ── */
.shop-detail{ display:grid; grid-template-columns:1fr; gap:16px; }
@media(min-width:720px){ .shop-detail{ grid-template-columns:1fr 1fr; } }
.pd-art-wrap{ position:relative; }
.pd-art{ aspect-ratio:1; border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--border-light); box-shadow:0 12px 40px rgba(0,0,0,0.35); line-height:0; }
.pd-art svg{ width:100%; height:100%; display:block; }
.pd-art-meta{ text-align:center; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); margin-top:8px; }
.pd-info{ display:flex; flex-direction:column; }
.pd-name{ font-size:24px; font-weight:700; color:var(--text); font-family:'Georgia',serif; line-height:1.2; margin:4px 0; }
.pd-price{ font-size:22px; font-weight:700; color:var(--accent); }
.pd-blurb{ font-size:14px; color:var(--text-muted); line-height:1.5; margin:10px 0; font-style:italic; }
.pd-desc{ font-size:13px; color:var(--text-muted); line-height:1.7; margin-bottom:14px; }
.pd-label{ font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); font-weight:700; margin:12px 0 6px; }
.pd-variants{ display:flex; flex-wrap:wrap; gap:6px; }
.pd-variant{
  background:var(--surface-2); color:var(--text-muted); border:1px solid var(--border);
  padding:7px 12px; border-radius:8px; font-family:inherit; font-size:12px; font-weight:600; cursor:pointer;
  transition:all .2s var(--transition);
}
.pd-variant:hover{ border-color:var(--border-light); color:var(--text); }
.pd-variant.active{ color:var(--accent); background:var(--accent-glow); border-color:var(--accent-soft); }
.vv-stock{ color:var(--text-dim); font-weight:400; }
.pd-qty-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.qty-stepper{ display:flex; align-items:center; gap:8px; background:var(--surface-2); border:1px solid var(--border); border-radius:10px; padding:4px 8px; }
.qty-stepper button{ background:transparent; border:none; color:var(--accent); font-size:18px; cursor:pointer; width:24px; font-family:inherit; }
.qty-stepper input{ background:transparent; border:none; color:var(--text); width:36px; text-align:center; font-family:inherit; font-size:14px; font-weight:700; }
.qty-stepper input:focus{ outline:none; }
.pd-add-btn{ margin-top:16px; font-size:15px; padding:13px; }
.pd-trust{ margin-top:16px; padding:12px; background:var(--surface-2); border-radius:var(--radius-sm); font-size:11.5px; color:var(--text-muted); line-height:1.9; }

/* ── Cart ── */
.cart-list{ display:flex; flex-direction:column; gap:10px; margin-bottom:12px; }
.cart-line{
  display:grid; grid-template-columns:64px 1fr auto auto auto; gap:12px; align-items:center;
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-sm); padding:10px;
}
.cart-line .cl-art{ width:64px; height:64px; border-radius:8px; overflow:hidden; background:var(--bg); line-height:0; }
.cl-art svg{ width:100%; height:100%; }
.cl-info{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.cl-name{ font-size:13.5px; font-weight:700; color:var(--text); font-family:'Georgia',serif; }
.cl-var{ font-size:11.5px; color:var(--text-dim); }
.cl-price{ font-size:12.5px; color:var(--text-muted); }
.cl-qty{ display:flex; align-items:center; gap:6px; background:var(--surface-2); border:1px solid var(--border); border-radius:8px; padding:3px 6px; }
.cl-step{ background:transparent; border:none; color:var(--accent); font-size:15px; cursor:pointer; width:20px; font-family:inherit; }
.cl-qnum{ font-size:13px; font-weight:700; color:var(--text); min-width:18px; text-align:center; }
.cl-line-total{ font-size:14px; font-weight:700; color:var(--accent); }
.cl-remove{ background:transparent; border:none; color:var(--text-dim); font-size:16px; cursor:pointer; padding:4px 8px; border-radius:6px; }
.cl-remove:hover{ color:var(--danger); background:rgba(184,92,92,0.1); }
.cart-totals{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:14px;
}
.ct-row{ display:flex; justify-content:space-between; padding:5px 0; font-size:13.5px; color:var(--text-muted); }
.ct-total{ border-top:1px solid var(--border); margin-top:6px; padding-top:10px; font-size:16px; font-weight:700; color:var(--text); }
.ct-total span:last-child{ color:var(--accent); font-size:18px; }
.cart-actions{ display:flex; gap:10px; margin-top:14px; }
.cart-actions .btn{ flex:1; }

/* ── Checkout ── */
.checkout-mode{
  display:flex; align-items:flex-start; gap:12px; padding:12px; border-radius:var(--radius-sm);
  background:var(--surface-2); border:1px solid var(--border-light); margin-bottom:14px;
}
.cm-badge{ flex:0 0 auto; padding:4px 10px; border-radius:6px; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.cm-badge.live{ background:rgba(90,158,111,0.18); color:var(--success); border:1px solid var(--success); }
.cm-badge.demo{ background:rgba(201,168,76,0.15); color:var(--accent); border:1px solid var(--accent-soft); }
.cm-text{ font-size:12.5px; color:var(--text-muted); line-height:1.5; }
.cm-text code{ background:var(--surface-3); padding:1px 6px; border-radius:4px; color:var(--accent); font-family:'Menlo',monospace; font-size:11.5px; }
.checkout-grid{ display:grid; grid-template-columns:1fr; gap:14px; }
@media(min-width:720px){ .checkout-grid{ grid-template-columns:1.4fr 1fr; } }
.checkout-form, .checkout-summary{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:16px;
}
.cf-title{ font-size:13px; font-weight:700; color:var(--accent); letter-spacing:.05em; text-transform:uppercase; margin-bottom:10px; }
.cf-input{
  width:100%; background:var(--surface-2); border:1px solid var(--border); border-radius:8px;
  padding:11px 12px; color:var(--text); font-family:inherit; font-size:14px; margin-bottom:8px;
  transition:border-color .2s var(--transition);
}
.cf-input:focus{ outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-glow); }
.cf-input::placeholder{ color:var(--text-dim); }
.cf-row{ display:flex; gap:8px; }
.cf-row .cf-input{ flex:1; }
.cf-note{ font-size:11.5px; color:var(--text-muted); line-height:1.5; margin-bottom:10px; }
.cf-note code{ background:var(--surface-3); padding:1px 5px; border-radius:4px; color:var(--accent); font-family:'Menlo',monospace; font-size:11px; }
.cs-lines{ margin-bottom:10px; }
.cs-line{ display:flex; align-items:baseline; gap:6px; padding:4px 0; font-size:12.5px; color:var(--text-muted); border-bottom:1px solid var(--border); }
.cs-qty{ color:var(--accent); font-weight:700; }
.cs-name{ flex:1; }
.cs-var{ color:var(--text-dim); font-size:11px; }
.cs-price{ color:var(--text); font-weight:600; }
.ck-pay-btn{ width:100%; margin-top:14px; font-size:15px; padding:14px; }

/* ── Empty states ── */
.shop-empty{
  text-align:center; padding:40px 20px; background:var(--surface); border-radius:var(--radius-lg);
  border:1px dashed var(--border-light); margin:14px 0;
}
.e-icon{ font-size:44px; margin-bottom:12px; filter:drop-shadow(0 4px 8px rgba(0,0,0,0.3)); }
.e-title{ font-size:18px; font-weight:700; color:var(--text); font-family:'Georgia',serif; margin-bottom:6px; }
.e-sub{ font-size:13px; color:var(--text-muted); line-height:1.5; margin-bottom:16px; }

/* ── Success ── */
.success-hero{ text-align:center; padding:36px 20px; background:var(--surface); border-radius:var(--radius-lg); border:1px solid var(--accent-soft); box-shadow:0 8px 32px var(--accent-glow); }
.su-icon{ font-size:52px; margin-bottom:14px; filter:drop-shadow(0 6px 12px var(--accent-glow-strong)); }
.su-title{ font-size:24px; font-weight:700; color:var(--accent); font-family:'Georgia',serif; margin-bottom:8px; }
.su-sub{ font-size:13.5px; color:var(--text-muted); line-height:1.6; max-width:480px; margin:0 auto 10px; }
.su-mode{ font-size:11px; color:var(--text-dim); letter-spacing:.08em; text-transform:uppercase; margin-bottom:16px; }
.su-actions{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.su-actions .btn{ min-width:160px; }

/* ── Orders ── */
.order-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:14px; margin-bottom:10px; }
.oc-head{ display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.oc-id{ font-family:'Menlo',monospace; font-size:12px; color:var(--text-muted); flex:1; }
.oc-date{ font-size:12px; color:var(--text-dim); }
.oc-status{ font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; padding:3px 8px; border-radius:6px; }
.oc-status.completed, .oc-status.test_completed{ background:rgba(90,158,111,0.18); color:var(--success); }
.oc-status.pending{ background:rgba(201,168,76,0.18); color:var(--warning); }
.oc-status.cancelled{ background:rgba(184,92,92,0.18); color:var(--danger); }
.oc-items{ border-top:1px solid var(--border); padding-top:8px; }
.oc-item{ display:flex; align-items:baseline; gap:6px; padding:3px 0; font-size:12.5px; color:var(--text-muted); }
.oi-qty{ color:var(--accent); font-weight:700; }
.oi-name{ flex:1; color:var(--text); }
.oi-price{ color:var(--text-muted); }
.oc-foot{ display:flex; justify-content:space-between; margin-top:10px; padding-top:8px; border-top:1px solid var(--border); font-weight:700; color:var(--text); }
.oc-foot span:last-child{ color:var(--accent); }

/* ── Giving ── */
.giving-hero{
  text-align:center; padding:28px 20px; background:var(--surface); border-radius:var(--radius-lg);
  border:1px solid var(--border-light); margin-bottom:14px; position:relative; overflow:hidden;
}
.giving-hero::before{ content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 0%, var(--accent-glow), transparent 60%); pointer-events:none; }
.gh-seal{ filter:drop-shadow(0 6px 16px var(--accent-glow-strong)); display:inline-block; }
.gh-title{ font-size:26px; font-weight:700; color:var(--text); font-family:'Georgia',serif; margin:8px 0 12px; position:relative; }
.gh-verse{ font-size:15px; line-height:1.7; color:var(--text-muted); font-style:italic; max-width:620px; margin:0 auto 8px; position:relative; }
.gh-ref{ font-size:13px; color:var(--accent); font-weight:700; letter-spacing:.05em; margin-bottom:10px; position:relative; }
.gh-sub{ font-size:13px; color:var(--text-muted); line-height:1.5; max-width:560px; margin:0 auto; position:relative; }

.give-grid{ display:grid; grid-template-columns:1fr; gap:14px; }
@media(min-width:820px){ .give-grid{ grid-template-columns:1.3fr 1fr; } }
.give-form, .give-campaigns{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:16px; }

.gf-title{ font-size:15px; font-weight:700; color:var(--accent); letter-spacing:.04em; text-transform:uppercase; margin-bottom:12px; }
.gf-label{ font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); font-weight:700; margin:14px 0 6px; }
.gf-campaigns{ display:flex; flex-direction:column; gap:6px; }
.gf-camp{
  text-align:left; background:var(--surface-2); border:1px solid var(--border); border-radius:10px;
  padding:10px 12px; cursor:pointer; transition:all .2s var(--transition); font-family:inherit;
}
.gf-camp:hover{ border-color:var(--border-light); }
.gf-camp.active{ border-color:var(--accent-soft); background:var(--accent-glow); }
.gfc-name{ font-size:13px; font-weight:700; color:var(--text); }
.gf-camp.active .gfc-name{ color:var(--accent); }
.gfc-desc{ font-size:11.5px; color:var(--text-muted); line-height:1.4; margin-top:2px; }

.gf-amounts{ display:grid; grid-template-columns:repeat(5,1fr); gap:6px; }
.gf-amt{
  background:var(--surface-2); color:var(--text-muted); border:1px solid var(--border); border-radius:8px;
  padding:9px 4px; font-family:inherit; font-size:13px; font-weight:700; cursor:pointer; transition:all .2s var(--transition);
}
.gf-amt:hover{ border-color:var(--accent-soft); color:var(--text); }
.gf-custom-input{ grid-column:6 / 7; min-width:0; padding:9px 8px; font-size:13px; text-align:center; }
@media(max-width:420px){ .gf-amounts{ grid-template-columns:repeat(3,1fr); } .gf-custom-input{ grid-column:auto; } }

.gf-type-row, .gf-method-row{ display:flex; gap:6px; }
.gf-type, .gf-method{
  flex:1; background:var(--surface-2); color:var(--text-muted); border:1px solid var(--border);
  border-radius:8px; padding:9px; font-family:inherit; font-size:12.5px; font-weight:600; cursor:pointer;
  transition:all .2s var(--transition);
}
.gf-type:hover, .gf-method:hover{ color:var(--text); border-color:var(--border-light); }
.gf-type.active, .gf-method.active{ color:var(--accent); background:var(--accent-glow); border-color:var(--accent-soft); }
.gf-anon-row, .gf-rec-row{ margin:12px 0; }
.gf-check{ display:flex; align-items:center; gap:8px; font-size:13px; color:var(--text-muted); cursor:pointer; }
.gf-check input{ width:16px; height:16px; accent-color:var(--accent); }
.gf-check strong{ color:var(--accent); }
.gf-summary{
  display:flex; align-items:baseline; justify-content:space-between; gap:8px; padding:12px;
  background:var(--surface-2); border-radius:10px; margin:14px 0; font-size:13px; color:var(--text-muted);
}
.gf-total-amount{ font-size:22px; font-weight:700; color:var(--accent); }
.gf-give-btn{ width:100%; font-size:15px; padding:14px; }
.gf-footnote{ font-size:11px; color:var(--text-dim); text-align:center; margin-top:10px; line-height:1.5; }

/* ── Campaign cards (giving sidebar) ── */
.camp-card{
  background:var(--surface-2); border:1px solid var(--border); border-radius:var(--radius-sm);
  padding:12px; margin-bottom:10px; cursor:pointer; transition:all .2s var(--transition);
}
.camp-card:hover{ border-color:var(--accent-soft); transform:translateY(-1px); }
.camp-name{ font-size:13.5px; font-weight:700; color:var(--text); font-family:'Georgia',serif; }
.camp-desc{ font-size:11.5px; color:var(--text-muted); line-height:1.5; margin:4px 0 8px; }
.camp-bar{ height:6px; background:var(--surface-3); border-radius:3px; overflow:hidden; }
.camp-bar-fill{ height:100%; background:linear-gradient(90deg,var(--accent-soft),var(--accent)); border-radius:3px; transition:width .6s var(--transition); }
.camp-meta{ display:flex; justify-content:space-between; font-size:11px; color:var(--text-dim); margin-top:5px; }

/* ── Gifts history ── */
.give-total{ text-align:center; padding:18px; background:var(--surface); border:1px solid var(--accent-soft); border-radius:var(--radius-lg); margin-bottom:14px; box-shadow:0 4px 20px var(--accent-glow); }
.gt-label{ font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); font-weight:700; }
.gt-amount{ font-size:34px; font-weight:700; color:var(--accent); font-family:'Georgia',serif; margin-top:4px; }
.gift-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-sm); padding:12px; margin-bottom:8px; }
.gc-head{ display:flex; align-items:center; justify-content:space-between; }
.gc-amount{ font-size:18px; font-weight:700; color:var(--accent); font-family:'Georgia',serif; }
.gc-status{ font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; padding:3px 8px; border-radius:6px; }
.gc-status.completed, .gc-status.test_completed{ background:rgba(90,158,111,0.18); color:var(--success); }
.gc-status.pending{ background:rgba(201,168,76,0.18); color:var(--warning); }
.gc-meta{ font-size:12px; color:var(--text-muted); margin-top:4px; }
.gc-msg{ font-size:12px; color:var(--text-muted); font-style:italic; margin-top:4px; padding-left:10px; border-left:2px solid var(--accent-soft); }
.gc-rec{ font-size:11px; color:var(--accent); margin-top:4px; font-weight:600; }

/* ── Admin ── */
.admin-head{ padding:16px; background:var(--surface); border-radius:var(--radius-lg); border:1px solid var(--border-light); margin-bottom:12px; }
.ah-title{ font-size:20px; font-weight:700; color:var(--text); font-family:'Georgia',serif; }
.ah-sub{ font-size:12.5px; color:var(--text-muted); margin-top:4px; }
.admin-tabs{ display:flex; gap:6px; margin-bottom:12px; overflow-x:auto; scrollbar-width:none; }
.admin-tabs::-webkit-scrollbar{ display:none; }
.admin-tab{
  flex:0 0 auto; background:var(--surface-2); color:var(--text-muted); border:1px solid var(--border);
  padding:8px 14px; border-radius:var(--radius-sm); font-family:inherit; font-size:12.5px; font-weight:600; cursor:pointer; white-space:nowrap; transition:all .2s var(--transition);
}
.admin-tab.active{ color:var(--accent); background:var(--accent-glow); border-color:var(--accent-soft); }
.admin-section{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:14px; }
.as-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; font-size:13px; color:var(--text-muted); }
.as-metrics{ display:flex; gap:12px; margin-bottom:14px; }
.metric{ flex:1; background:var(--surface-2); border:1px solid var(--border); border-radius:var(--radius-sm); padding:14px; text-align:center; }
.m-num{ font-size:24px; font-weight:700; color:var(--accent); font-family:'Georgia',serif; }
.m-label{ font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--text-dim); font-weight:700; margin-top:4px; }
.admin-table{ width:100%; border-collapse:collapse; font-size:12.5px; }
.admin-table .at-row{ display:grid; grid-template-columns:1fr; gap:4px; padding:8px 0; border-bottom:1px solid var(--border); align-items:center; }
@media(min-width:720px){ .admin-table .at-row{ grid-template-columns:60px 2fr 1fr 1fr 1fr 1fr; } }
.admin-table .at-head{ color:var(--text-dim); font-size:10px; letter-spacing:.1em; text-transform:uppercase; font-weight:700; border-bottom:1px solid var(--border-light); }
.at-art{ width:40px; height:40px; border-radius:6px; overflow:hidden; line-height:0; }
.at-art svg{ width:100%; height:100%; }
.at-name{ color:var(--text); font-weight:600; font-family:'Georgia',serif; }
.at-mono{ font-family:'Menlo',monospace; font-size:11px; color:var(--text-muted); }
.at-status{ font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; padding:2px 6px; border-radius:5px; display:inline-block; }
.at-status.completed, .at-status.test_completed{ background:rgba(90,158,111,0.18); color:var(--success); }
.at-status.pending{ background:rgba(201,168,76,0.18); color:var(--warning); }
.at-row .low{ color:var(--warning); font-weight:700; }
/* ═════ STRIPE PAYMENT LINK BUTTONS ═══════════════════════════════ */
.btn-stripe {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  margin-top: 10px;
  padding: 14px 18px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .02em;
  text-decoration: none;
  background: linear-gradient(135deg, #635bff 0%, #4f46e5 100%);
  color: #fff;
  border: 1px solid rgba(99,91,255,.5);
  box-shadow: 0 6px 18px -4px rgba(99,91,255,.45), inset 0 1px 0 rgba(255,255,255,.2);
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  cursor: pointer;
}
.btn-stripe:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -4px rgba(99,91,255,.55), inset 0 1px 0 rgba(255,255,255,.25);
  filter: brightness(1.08);
}
.pd-buy-btn { animation: shimmer-pop .6s ease both; }
@keyframes shimmer-pop {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
