.vc-dialog[data-astro-cid-syoqeems]{border:none;border-radius:var(--radius, 12px);background:var(--clr-bg, #FAF8F0);color:var(--clr-text);max-width:520px;width:calc(100vw - 2rem);padding:0;box-shadow:0 24px 80px rgba(0,0,0,.25);margin:auto}.vc-dialog[data-astro-cid-syoqeems]::backdrop{background:rgba(0,0,0,.5)}.vc-inner[data-astro-cid-syoqeems]{padding:1.75rem}.vc-header[data-astro-cid-syoqeems]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.vc-title[data-astro-cid-syoqeems]{font-size:1.3rem;font-weight:900;letter-spacing:-.02em;margin:0}.vc-close[data-astro-cid-syoqeems]{background:none;border:none;cursor:pointer;color:var(--clr-muted);padding:.25rem;transition:color var(--transition, .2s ease)}.vc-close[data-astro-cid-syoqeems]:hover{color:var(--clr-text)}.vc-desc[data-astro-cid-syoqeems]{font-size:.9rem;line-height:1.5;margin-bottom:1rem}.vc-instructions[data-astro-cid-syoqeems]{margin-bottom:1rem}.vc-instructions__title[data-astro-cid-syoqeems]{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--clr-accent, #C4622D);margin-bottom:.5rem}.vc-steps[data-astro-cid-syoqeems]{margin:0;padding-left:1.2rem;font-size:.88rem;line-height:1.6;color:var(--clr-text)}.vc-steps[data-astro-cid-syoqeems] li[data-astro-cid-syoqeems]{margin-bottom:.35rem}.vc-steps[data-astro-cid-syoqeems] code[data-astro-cid-syoqeems]{background:rgba(197,160,40,.12);padding:.1em .4em;border-radius:3px;font-size:.84em;font-weight:600;color:var(--clr-primary, #c5a028)}.vc-benefits[data-astro-cid-syoqeems]{margin-bottom:1rem}.vc-benefits__title[data-astro-cid-syoqeems]{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--clr-primary, #c5a028);margin-bottom:.35rem}.vc-benefits__text[data-astro-cid-syoqeems]{font-size:.85rem;line-height:1.5}.vc-notice[data-astro-cid-syoqeems]{display:flex;align-items:flex-start;gap:.5rem;font-size:.78rem;line-height:1.45;padding:.65rem .85rem;background:var(--clr-surface2, #F0EDE5);border-radius:8px;margin-bottom:1.25rem}.vc-notice[data-astro-cid-syoqeems] svg[data-astro-cid-syoqeems]{flex-shrink:0;margin-top:.1rem;opacity:.6}.vc-field[data-astro-cid-syoqeems]{margin-bottom:.85rem}.vc-label[data-astro-cid-syoqeems]{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--clr-muted);margin-bottom:.35rem}.vc-select[data-astro-cid-syoqeems],.vc-input[data-astro-cid-syoqeems]{width:100%;padding:.6rem .85rem;border:1.5px solid var(--clr-border);border-radius:8px;font-size:.92rem;background:var(--clr-bg, #FAF8F0);color:var(--clr-text);transition:border-color var(--transition, .2s ease)}.vc-select[data-astro-cid-syoqeems]:focus,.vc-input[data-astro-cid-syoqeems]:focus{outline:none;border-color:var(--clr-primary, #c5a028)}.vc-input--locked[data-astro-cid-syoqeems]{background:var(--clr-surface2, #F0EDE5);color:var(--clr-muted);cursor:not-allowed;border-style:dashed}.vc-error[data-astro-cid-syoqeems]{font-size:.85rem;color:var(--clr-danger, #c00);padding:.5rem .75rem;margin-bottom:.75rem;background:rgba(200,0,0,.06);border-radius:6px}.vc-actions[data-astro-cid-syoqeems]{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}.vc-actions[data-astro-cid-syoqeems] .btn[data-astro-cid-syoqeems]{flex:1;min-width:120px;text-align:center}.vc-loading[data-astro-cid-syoqeems]{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 0}.vc-spinner[data-astro-cid-syoqeems]{width:28px;height:28px;border:3px solid var(--clr-border);border-top-color:var(--clr-primary, #c5a028);border-radius:50%;animation:vc-spin .6s linear infinite}@keyframes vc-spin{to{transform:rotate(360deg)}}.vc-success-icon[data-astro-cid-syoqeems],.vc-fail-icon[data-astro-cid-syoqeems]{display:flex;justify-content:center;margin-bottom:.75rem;padding-top:1rem}.vc-success-title[data-astro-cid-syoqeems],.vc-fail-title[data-astro-cid-syoqeems]{font-size:1.1rem;font-weight:800;text-align:center;margin-bottom:.5rem}.vc-success-text[data-astro-cid-syoqeems],.vc-fail-text[data-astro-cid-syoqeems]{text-align:center;font-size:.9rem;line-height:1.5}@media (max-width: 480px){.vc-inner[data-astro-cid-syoqeems]{padding:1.25rem}.vc-title[data-astro-cid-syoqeems]{font-size:1.1rem}.vc-actions[data-astro-cid-syoqeems]{flex-direction:column}.vc-actions[data-astro-cid-syoqeems] .btn[data-astro-cid-syoqeems]{min-width:100%}}.rank-badge[data-astro-cid-hdxx7icr]{display:inline-flex;align-items:center;gap:.45rem;background:var(--clr-surface2, #f0ede5);border:1px solid var(--clr-border);border-radius:8px;padding:.35rem .85rem;font-size:.88rem;line-height:1}.rank-badge__label[data-astro-cid-hdxx7icr]{color:var(--clr-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.rank-badge__value[data-astro-cid-hdxx7icr]{display:inline-flex;align-items:center;gap:.2rem;font-weight:700;color:var(--clr-text)}.rank-badge__value--flash[data-astro-cid-hdxx7icr]{animation:rank-flash 1.2s ease-out}@keyframes rank-flash{0%{color:var(--clr-primary)}100%{color:var(--clr-text)}}.rank-badge__medal[data-astro-cid-hdxx7icr]{font-size:1rem}.rank-badge__num[data-astro-cid-hdxx7icr]{font-size:.9rem}.rank-badge__na[data-astro-cid-hdxx7icr]{color:var(--clr-muted)}.rank-badge__skeleton[data-astro-cid-hdxx7icr]{display:inline-block;width:34px;height:13px;border-radius:4px;background:linear-gradient(90deg,var(--clr-border) 25%,var(--clr-surface) 50%,var(--clr-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.2s infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.pd-page { padding-bottom: 3rem; }

/* ── Hero section ── */
.pd-hero {
  background:
    radial-gradient(ellipse 70% 100% at 0% 0%,   rgba(196,98,45,.07) 0%, transparent 60%),
    radial-gradient(ellipse 55% 80%  at 100% 20%, rgba(197,160,40,.05) 0%, transparent 55%),
    var(--clr-bg);
  border-bottom: 1px solid var(--clr-border);
  padding-bottom: 0;
}

/* Breadcrumb */
.pd-breadcrumb {
  display: flex;
  align-items: center;
  gap: .45rem;
  font-size: .78rem;
  color: var(--clr-muted);
  padding: 1.25rem 0 1.75rem;
}
.pd-breadcrumb a { color: var(--clr-muted); transition: color var(--transition); }
.pd-breadcrumb a:hover { color: var(--clr-text); }
.pd-breadcrumb span[aria-hidden] { opacity: .5; }

/* Identity row */
.pd-hero__row {
  display: flex;
  gap: 1.75rem;
  align-items: flex-start;
  padding-bottom: 2rem;
}

/* Avatar */
.avatar-wrap { position: relative; display: inline-flex; flex-shrink: 0; }
.hero-avatar {
  width: 120px; height: 120px;
  border-radius: 50%; object-fit: cover;
  border: 3px solid var(--clr-border);
  display: block;
}
.hero-avatar.avatar--official {
  border-color: var(--clr-primary);
  box-shadow: 0 0 0 3px rgba(197,160,40,.15), 0 0 22px rgba(197,160,40,.3);
}
.official-dot {
  position: absolute; bottom: 4px; right: 4px;
  width: 28px; height: 28px;
  background: var(--clr-primary); border-radius: 50%;
  border: 3px solid var(--clr-bg);
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 900; color: #000;
  pointer-events: none; user-select: none;
}

/* Identity */
.pd-hero__identity {
  flex: 1;
  min-width: 0;
  padding-top: .35rem;
}
.pd-name-row {
  display: flex;
  align-items: center;
  gap: .8rem;
  flex-wrap: wrap;
  margin-bottom: .55rem;
}
.pd-name {
  font-size: clamp(1.7rem, 5vw, 2.5rem);
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1;
  margin: 0;
}
.pd-handle {
  font-size: .88rem;
  display: flex;
  align-items: center;
  gap: .4rem;
  flex-wrap: wrap;
  margin-bottom: .75rem;
}
.sep { opacity: .45; }
.pd-net-icon { display: inline-flex; align-items: center; opacity: .6; }
.pd-social-link { color: var(--clr-accent); transition: opacity var(--transition); }
.pd-social-link:hover { opacity: .75; text-decoration: underline; }
.pd-tour-badges { display: flex; flex-wrap: wrap; gap: .4rem; }

/* Rank badge row */
.pd-rank-row { margin-bottom: .6rem; }

/* Verified Creator badge */
.pd-verified-badge {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--clr-primary);
  background: rgba(197,160,40,.1);
  padding: .2rem .6rem;
  border-radius: 20px;
  white-space: nowrap;
}

/* Stats strip */
.pd-stats-strip {
  border-top: 1px solid var(--clr-border);
}
.pd-stats-inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 1.25rem 0;
  gap: .5rem;
}
.pd-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: .2rem;
}
.pd-stat__val {
  font-size: 1.4rem;
  font-weight: 900;
  letter-spacing: -.025em;
  color: var(--clr-text);
}
.pd-stat__val--gold   { color: var(--clr-primary); }
.pd-stat__val--muted  { color: var(--clr-muted); }
.pd-stat__val--accent { color: var(--clr-accent); }
.pd-stat__label {
  font-size: .67rem;
  text-transform: uppercase;
  letter-spacing: .09em;
}

/* ── Body ── */
.pd-body {
  padding-top: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Verify button */
.pd-verify-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  align-self: flex-start;
}

/* Vote card */
.pd-vote { max-width: 520px; }
.pd-vote__title {
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 1rem;
  letter-spacing: -.01em;
}

/* Active duel notice */
.active-duel-notice {
  display: flex;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
  padding: .75rem 1rem;
  background: rgba(196,98,45,.07);
  border: 1px solid rgba(196,98,45,.2);
  border-radius: var(--radius-sm);
  margin-bottom: 1rem;
  font-size: .85rem;
}
.active-duel-notice__link {
  color: var(--clr-accent);
  font-weight: 700;
  text-decoration: underline;
}

.pd-vote__actions {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
  margin-bottom: .75rem;
}
.pd-vote__hint {
  font-size: .8rem;
  line-height: 1.45;
}

/* ── Event sections ── */
.pd-section {
  padding-top: 2.25rem;
}
.pd-section__title {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: -.015em;
  margin-bottom: 1rem;
  color: var(--clr-text);
}
.pd-section__count {
  font-size: .72rem;
  font-weight: 700;
  color: var(--clr-muted);
  background: rgba(100,100,100,.1);
  padding: .15rem .5rem;
  border-radius: 20px;
  margin-left: .15rem;
}

/* ── Active events list ── */
.pd-active-events-list {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.pd-active-event-card {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .85rem 1rem;
  background: rgba(196,98,45,.06);
  border: 1px solid rgba(196,98,45,.2);
  border-radius: var(--radius-sm);
  font-size: .9rem;
  font-weight: 600;
  text-decoration: none;
  color: var(--clr-text);
  transition: background var(--transition), border-color var(--transition);
}
.pd-active-event-card:hover {
  background: rgba(196,98,45,.1);
  border-color: rgba(196,98,45,.35);
}
/* Battle active cards: slightly different tint to distinguish from clashes */
.pd-active-event-card--battle {
  background: rgba(197,160,40,.06);
  border-color: rgba(197,160,40,.2);
}
.pd-active-event-card--battle:hover {
  background: rgba(197,160,40,.1);
  border-color: rgba(197,160,40,.35);
}
.pd-live-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--clr-accent);
  flex-shrink: 0;
  animation: pd-pulse 1.5s ease-in-out infinite;
}
@keyframes pd-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: .35; transform: scale(.8); }
}
.pae-title { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pae-ends  { font-size: .78rem; font-weight: 500; white-space: nowrap; flex-shrink: 0; }

/* ── Clash + Battle history ── */
.pd-history-list {
  display: flex;
  flex-direction: column;
  gap: .4rem;
}
.pd-history-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 1rem;
  background: var(--clr-surface);
  border: 1px solid var(--clr-border);
  border-left-width: 3px;
  border-radius: var(--radius-sm);
  text-decoration: none;
  color: var(--clr-text);
  transition: background var(--transition), border-color var(--transition);
}
.pd-history-item:hover {
  background: var(--clr-surface2, var(--clr-surface));
  border-color: var(--clr-muted);
}
.pd-history-item--win  { border-left-color: var(--clr-success, #2e7d32); }
.pd-history-item--loss { border-left-color: var(--clr-border); opacity: .72; }
.pd-history-item--draw { border-left-color: var(--clr-primary); }

.phi-opponent {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-width: 0;
  flex: 1;
}
.phi-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--clr-border);
}
.phi-avatar--empty { background: var(--clr-surface2, var(--clr-border)); }

/* Battle rank badge — replaces avatar for battle history items */
.phi-battle-rank {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .75rem;
  font-weight: 800;
  color: var(--clr-primary);
  background: rgba(197,160,40,.12);
  border: 1px solid rgba(197,160,40,.2);
  flex-shrink: 0;
}

.phi-info {
  display: flex;
  flex-direction: column;
  gap: .1rem;
  min-width: 0;
}
.phi-opp-name {
  font-size: .88rem;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.phi-vs-label { font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; }
.phi-score { font-size: .75rem; display: flex; align-items: center; gap: .3rem; }
.phi-score-self { color: var(--clr-text); }
.phi-score-sep  { opacity: .4; }
.phi-score-opp  { color: var(--clr-muted); }
.phi-result-col {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: .25rem;
  flex-shrink: 0;
}
.phi-badge {
  font-size: .63rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .09em;
  padding: .2rem .55rem;
  border-radius: 20px;
  white-space: nowrap;
}
.phi-badge--win  { background: rgba(46,125,50,.14);  color: var(--clr-success, #4caf50); }
.phi-badge--loss { background: rgba(100,100,100,.1); color: var(--clr-muted); }
.phi-badge--draw { background: rgba(197,160,40,.12); color: var(--clr-primary); }
.phi-date        { font-size: .72rem; }

.pd-history-empty { font-size: .9rem; margin: 0; }

.pd-load-more {
  display: block;
  width: 100%;
  margin-top: .75rem;
  text-align: center;
}

/* ── Responsive ── */
@media (max-width: 640px) {
  .pd-hero__row      { flex-direction: column; gap: 1rem; }
  .hero-avatar       { width: 88px; height: 88px; }
  .pd-stats-inner    { grid-template-columns: repeat(2, 1fr); }
  .pd-stat__val      { font-size: 1.15rem; }
  .pd-vote           { max-width: 100%; }
  .phi-opp-name      { max-width: 130px; }
  .pd-section        { padding-top: 1.75rem; }
}

.pd-flag { font-size: .9rem; line-height: 1; }

/* ── Gold Vote Modal ─────────────────────────────────────── */
.gv-modal-overlay {
    position: fixed; inset: 0;
    background: rgba(20,18,16,.55); backdrop-filter: blur(4px);
    display: flex; align-items: center; justify-content: center;
    z-index: 1000; padding: 1rem;
  }
  .gv-modal {
    background: var(--clr-surface, #fff); border: 1px solid var(--clr-border);
    border-radius: var(--radius-lg, 1rem); padding: 2rem 1.75rem 1.75rem;
    max-width: 420px; width: 100%; position: relative;
    display: flex; flex-direction: column; gap: 1rem;
    box-shadow: 0 20px 60px rgba(0,0,0,.18);
    animation: gv-modal-in .2s ease;
  }
  @keyframes gv-modal-in {
    from { opacity: 0; transform: translateY(12px) scale(.97); }
    to   { opacity: 1; transform: none; }
  }
  .gv-modal__close {
    position: absolute; top: 1rem; right: 1rem;
    background: none; border: none; padding: .25rem; cursor: pointer;
    color: var(--clr-muted); border-radius: .25rem;
    display: flex; align-items: center; justify-content: center;
    transition: color var(--transition);
  }
  .gv-modal__close:hover { color: var(--clr-text); }
  .gv-modal__icon {
    display: flex; align-items: center; justify-content: center;
    color: var(--clr-primary); width: 64px; height: 64px;
    background: rgba(197,160,40,.1); border-radius: 50%; align-self: center;
  }
  .gv-modal__title { font-size: 1.2rem; font-weight: 900; margin: 0; text-align: center; color: var(--clr-primary); }
  .gv-modal__for { text-align: center; font-size: .9rem; color: var(--clr-muted); margin: -.25rem 0 0; }
  .gv-modal__for strong { color: var(--clr-text); }
  .gv-modal__label {
    font-size: .78rem; font-weight: 600; color: var(--clr-muted);
    display: block; margin-bottom: .3rem; letter-spacing: .03em; text-transform: uppercase;
  }
  .gv-modal__qty-row { display: flex; flex-direction: column; gap: .35rem; }
  .gv-modal__qty-ctrl { display: flex; align-items: center; gap: .5rem; }
  .gv-qty-dec, .gv-qty-inc {
    width: 36px; height: 36px; border-radius: .375rem;
    border: 1px solid var(--clr-border); background: var(--clr-surface);
    font-size: 1.1rem; font-weight: 700; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    color: var(--clr-text); flex-shrink: 0; transition: background .15s, border-color .15s;
  }
  .gv-qty-dec:hover, .gv-qty-inc:hover { background: var(--clr-surface2, #F0EDE5); border-color: var(--clr-primary); }
  .gv-qty-input {
    flex: 1; height: 36px; border: 1px solid var(--clr-border);
    border-radius: .375rem; padding: 0 .5rem; font-size: 1rem;
    font-weight: 700; text-align: center; background: var(--clr-bg);
    color: var(--clr-text); min-width: 0;
  }
  .gv-qty-input:focus { outline: 2px solid var(--clr-primary); outline-offset: 1px; }
  .gv-modal__price-row {
    display: flex; justify-content: space-between; align-items: center;
    padding: .75rem 1rem; background: rgba(197,160,40,.07);
    border-radius: .5rem; border: 1px solid rgba(197,160,40,.15); font-size: .9rem;
  }
  .gv-modal__total { font-size: 1.15rem; color: var(--clr-primary); }
  .gv-modal__email-row { display: flex; flex-direction: column; gap: .35rem; }
  .gv-email-input {
    width: 100%; height: 38px; border: 1px solid var(--clr-border);
    border-radius: .375rem; padding: 0 .75rem; font-size: .9rem;
    background: var(--clr-bg); color: var(--clr-text); box-sizing: border-box;
  }
  .gv-email-input:focus { outline: 2px solid var(--clr-primary); outline-offset: 1px; }
  .gv-modal__hint { font-size: .75rem; color: var(--clr-muted); text-align: center; margin: -.25rem 0 0; }
  .gv-modal__submit { width: 100%; justify-content: center; font-size: .95rem; }
  .gv-modal__error { font-size: .82rem; color: var(--clr-danger, #c0392b); text-align: center; margin: -.25rem 0 0; }
  @media (max-width: 480px) { .gv-modal { padding: 1.5rem 1.25rem; } }