/* Read-only skin results inherit the toolbox's established cat-logo palette. */
.vote-entries { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:8px; }
.vote-entries .annual-vote-entry { grid-column:auto; grid-template-columns:46% minmax(0,1fr); margin:0; border-radius:12px; }
.vote-entries .annual-vote-entry img { width:100%; height:100%; min-height:160px; object-fit:cover; }
.vote-entries .annual-entry-copy { display:flex; gap:10px; padding:20px; }
.vote-entries .annual-entry-copy strong { font-size:20px; line-height:1.5; }
.vote-entries .annual-entry-action { min-height:36px; margin:0; padding:0; background:transparent; font-size:14px; }
.vote-entries .annual-vote-entry:hover .annual-entry-action { background:transparent; text-decoration:underline; text-underline-offset:4px; }
.skin-return-votes-page { max-width:1040px; margin:0 auto; padding-bottom:32px; }
.skin-return-votes-page .annual-back { white-space:nowrap; }
.skin-return-votes-page .annual-back svg { width:20px; height:20px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.skin-return-heading { margin:18px 0 20px; }
.skin-return-heading h1 { margin:0 0 8px; font-size:30px; line-height:1.4; }
.skin-return-meta-row { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 16px; }
.skin-return-heading .skin-return-meta { margin:0; color:var(--muted); font-size:14px; line-height:1.7; font-variant-numeric:tabular-nums; }
.skin-return-heading .skin-return-countdown { margin:0; color:#8b641d; font-size:14px; font-weight:600; line-height:1.7; font-variant-numeric:tabular-nums; white-space:nowrap; }
.skin-return-heading .skin-return-countdown.is-closed { color:var(--muted); }
.skin-return-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; margin:0; padding:0; list-style:none; }
.skin-return-card { min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
.skin-return-art { position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--surface-soft); }
.skin-return-art img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.skin-return-art.is-couple img { object-position:var(--skin-focus); transform:scale(1.6); transform-origin:var(--skin-focus); }
.skin-return-rank { position:absolute; left:10px; top:10px; padding:3px 8px; border-radius:6px; background:var(--panel); color:var(--accent-strong); font-size:13px; line-height:1.5; font-weight:600; font-variant-numeric:tabular-nums; }
.skin-return-caption { padding:14px; }
.skin-return-hero { margin:0 0 3px; color:var(--text); font-size:17px; font-weight:600; line-height:1.5; overflow-wrap:anywhere; }
.skin-return-name { margin:0; color:var(--muted); font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.skin-return-total { margin:14px 0 0; color:var(--accent-strong); font-size:20px; font-weight:600; line-height:1.5; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.skin-return-total.is-pending { font-size:14px; color:var(--muted); font-weight:400; }
.skin-return-total.is-long { font-size:15px; }
.skin-return-total span { margin-left:4px; color:var(--muted); font-size:12px; font-weight:400; }
.skin-return-error { margin:16px 0; color:var(--muted); font-size:14px; line-height:1.8; }
.skin-return-retry { min-height:44px; margin:0 0 16px; padding:8px 16px; border:1px solid var(--line); border-radius:8px; background:var(--panel); color:var(--accent-strong); font:inherit; cursor:pointer; }
.skin-return-retry:hover { background:var(--surface-soft); }
.skin-return-votes-page :is(button,a):focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.skin-return-votes-page ::selection { color:var(--brand-ink); background:var(--brand); }
.skin-return-skeleton { min-height:230px; border-radius:12px; background:var(--surface-soft); }
/* Preserve the original 2 / 1 / 3 podium, 4–6 cards and 7+ list hierarchy. */
.skin-return-list.is-ranking { --rank-ink:#8b641d; --rank-ground:#f7f8fc; --rank-line:#e5e1d9; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:0 12px; max-width:760px; margin:24px auto 0; padding:24px 14px 12px; background:var(--rank-ground); }
.is-ranking .skin-return-card { border-color:var(--rank-line); }
.is-ranking .skin-return-art { aspect-ratio:1; }
.is-ranking .is-position-1 { grid-column:2; grid-row:1; border-color:#c99a46; background:#fff7e3; }
.is-ranking .is-position-1 .skin-return-art { aspect-ratio:4/5; }
.is-ranking .is-position-2 { grid-column:1; grid-row:1; }
.is-ranking .is-position-3 { grid-column:3; grid-row:1; }
.is-ranking .is-podium .skin-return-caption { display:flex; flex-direction:column; align-items:center; padding:10px 6px 14px; text-align:center; }
.is-ranking .is-podium .skin-return-rank { position:static; margin:0 0 5px; padding:0; background:transparent; color:var(--rank-ink); font-size:12px; font-weight:700; }
.is-ranking .is-podium .skin-return-hero { margin:0 0 4px; font-size:18px; font-weight:700; }
.is-ranking .is-podium .skin-return-name { min-height:34px; font-size:13px; line-height:1.35; }
.is-ranking .skin-return-total { color:var(--rank-ink); }
.is-ranking .is-podium .skin-return-total { margin-top:12px; font-size:20px; }
.is-ranking .skin-return-gap-slot { width:100%; min-height:20px; margin-top:7px; }
.skin-return-gap { display:flex; align-items:center; justify-content:center; gap:3px; min-width:0; margin:0; color:#716d66; font-size:13px; font-weight:400; line-height:1.45; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.skin-return-gap svg { width:13px; height:13px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.is-ranking .is-grid { margin-top:18px; }
.is-ranking .is-grid .skin-return-art { aspect-ratio:1.4; }
.is-ranking .is-grid .skin-return-caption { padding:9px 10px 12px; }
.is-ranking .is-grid .skin-return-rank { top:6px; left:6px; padding:3px 5px; background:rgba(25,35,58,.8); color:#fff; font-size:11px; font-weight:700; }
.is-ranking .is-grid .skin-return-hero { font-size:16px; font-weight:700; }
.is-ranking .is-grid .skin-return-name { min-height:32px; font-size:12px; line-height:1.4; }
.is-ranking .is-grid .skin-return-total { margin-top:8px; font-size:17px; }
.is-ranking .is-grid .skin-return-gap { justify-content:flex-start; min-height:18px; margin-top:7px; }
.is-ranking .is-row { grid-column:1/-1; display:flex; align-items:center; gap:12px; min-height:78px; padding:12px 0; border:0; border-bottom:1px solid var(--rank-line); border-radius:0; background:transparent; }
.is-ranking .is-row.is-position-7 { margin-top:18px; border-top:1px solid var(--rank-line); }
.is-ranking .is-row .skin-return-rank { position:static; flex-shrink:0; width:22px; margin:0; padding:0; background:transparent; color:#746b5f; text-align:center; font-size:14px; font-weight:700; }
.is-ranking .is-row .skin-return-art { flex-shrink:0; width:52px; height:52px; border-radius:8px; }
.is-ranking .is-row .skin-return-caption { flex:1; min-width:0; padding:0; }
.is-ranking .is-row .skin-return-hero { margin:0 0 2px; font-size:16px; font-weight:700; }
.is-ranking .is-row .skin-return-name { font-size:12px; line-height:1.45; }
.is-ranking .skin-return-stats { display:flex; flex-shrink:0; flex-direction:column; align-items:flex-end; max-width:46%; text-align:right; }
.is-ranking .is-row .skin-return-total { max-width:100%; margin:0; font-size:16px; }
.is-ranking .is-row .skin-return-gap { justify-content:flex-end; max-width:100%; margin-top:4px; }
.is-ranking .skin-return-total.is-long { font-size:14px; }
@media(max-width:860px) {
  .vote-entries { grid-template-columns:1fr; gap:12px; margin:0; }
  .vote-entries .annual-vote-entry { grid-template-columns:38% minmax(0,1fr); }
  .vote-entries .annual-vote-entry img { min-height:112px; }
  .vote-entries .annual-entry-copy { display:flex; padding:14px 16px; gap:6px; }
  .vote-entries .annual-entry-copy strong { font-size:18px; }
  .vote-entries .annual-entry-action { min-height:32px; font-size:13px; }
  .skin-return-heading { margin:12px 0 16px; }
  .skin-return-heading h1 { font-size:26px; }
  .skin-return-heading .skin-return-meta { font-size:13px; }
  .skin-return-heading .skin-return-countdown { font-size:13px; }
  .skin-return-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .skin-return-caption { padding:12px; }
  .skin-return-hero { font-size:16px; }
  .skin-return-name { font-size:13px; }
  .skin-return-total { font-size:18px; }
  .skin-return-total.is-long { font-size:14px; }
  .skin-return-list.is-ranking { gap:0 8px; padding:20px 8px 8px; }
  .is-ranking .is-grid { margin-top:16px; }
  .is-ranking .is-podium .skin-return-caption { padding:9px 5px 12px; }
  .is-ranking .is-podium .skin-return-rank { font-size:10px; }
  .is-ranking .is-podium .skin-return-hero { font-size:15px; }
  .is-ranking .is-podium .skin-return-name { min-height:30px; font-size:11px; }
  .is-ranking .is-podium .skin-return-total { margin-top:7px; font-size:clamp(11px,3.2vw,18px); }
  .is-ranking .skin-return-total span { margin-left:3px; color:var(--rank-ink); font-size:10px; }
  .is-ranking .skin-return-gap-slot { min-height:16px; margin-top:6px; }
  .skin-return-gap { font-size:11px; }
  .skin-return-gap svg { width:11px; height:11px; }
  .is-ranking .is-grid .skin-return-caption { padding:7px 7px 10px; }
  .is-ranking .is-grid .skin-return-rank { font-size:9px; }
  .is-ranking .is-grid .skin-return-hero { font-size:12px; }
  .is-ranking .is-grid .skin-return-name { min-height:28px; font-size:10px; }
  .is-ranking .is-grid .skin-return-total { font-size:clamp(10px,2.9vw,16px); }
  .is-ranking .is-grid .skin-return-gap { min-height:16px; }
  .is-ranking .is-row { gap:8px; min-height:68px; padding:10px 0; }
  .is-ranking .is-row .skin-return-rank { width:18px; font-size:12px; }
  .is-ranking .is-row .skin-return-art { width:38px; height:38px; }
  .is-ranking .is-row .skin-return-hero { font-size:13px; }
  .is-ranking .is-row .skin-return-name { font-size:10px; }
  .is-ranking .is-row .skin-return-total { font-size:12px; }
  .is-ranking .skin-return-total.is-long { font-size:10px; }
}
@media(max-width:360px) { .vote-entries .annual-entry-copy strong { font-size:16px; } .vote-entries .annual-entry-copy { padding:12px; } .skin-return-list { gap:10px; } .skin-return-caption { padding:10px; } .is-ranking .skin-return-gap { font-size:10px; } .is-ranking .skin-return-gap svg { width:10px; height:10px; } }
.skin-return-empty{display:flex;align-items:center;justify-content:center;min-height:240px;color:#716b62;font-size:16px;line-height:1.7}
.skin-return-empty[hidden]{display:none}
