/* Hall of Fame layer for /events and /leaderboard (9 Oct 2026). Sits on top of arceus.css + ops.css,
   uses their --a-* tokens, so the dark island look stays one system. */
.ops .h-sec{padding:clamp(28px,4vw,48px) 0}
.ops .h-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 18px}
.ops .h-head h2{margin:0}
.ops .h-head p{margin:6px 0 0;color:var(--a-soft);max-width:60ch;font-size:15px;line-height:1.5}
.ops .h-k{display:inline-block;font-weight:900;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--a-gold-hi)}

/* segmented switch: one look for period and board switching */
.ops .h-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:var(--a-r-pill);background:var(--a-smoke-hi);box-shadow:var(--a-rim)}
.ops .h-seg button,.ops .h-seg a{border:0;background:none;color:var(--a-soft);font:inherit;font-weight:800;font-size:14px;padding:9px 18px;border-radius:var(--a-r-pill);cursor:pointer;min-height:40px;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.ops .h-seg [aria-selected="true"],.ops .h-seg [aria-current="true"]{background:var(--a-grad-gold);color:var(--a-ink)}
.ops .h-seg button:focus-visible,.ops .h-seg a:focus-visible{outline:2px solid var(--a-gold-hi);outline-offset:2px}
.ops .h-seg small{font-size:11px;font-weight:900;opacity:.75}
.ops .h-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.ops .h-chip{border:0;font:inherit;font-weight:800;font-size:13px;padding:8px 14px;border-radius:var(--a-r-pill);background:var(--a-tile);color:var(--a-text);box-shadow:var(--a-rim);cursor:pointer;text-decoration:none}
.ops .h-chip[aria-current="true"]{box-shadow:inset 0 0 0 2px var(--a-gold-hi);color:var(--a-gold-hi)}

/* frequency tag */
.ops .h-freq{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--a-r-pill);font-weight:900;font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:rgba(111,207,95,.16);color:#9BE58E}
.ops .h-freq.weekly{background:rgba(145,70,255,.2);color:var(--a-purple-soft)}
.ops .h-freq.monthly,.ops .h-freq.once{background:rgba(254,214,84,.16);color:var(--a-gold-hi)}
.ops .h-freq i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 currentColor;animation:hPulse 1.8s infinite}
@keyframes hPulse{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}

/* record breaks ticker */
.ops .h-tick{position:relative;overflow:hidden;border-radius:var(--a-r);background:var(--a-smoke-hi);box-shadow:var(--a-rim);margin:0 0 20px}
.ops .h-tick__in{display:flex;gap:34px;width:max-content;padding:12px 18px;animation:hTick 40s linear infinite}
.ops .h-tick:hover .h-tick__in{animation-play-state:paused}
.ops .h-tick span{white-space:nowrap;font-weight:700;color:var(--a-soft);font-size:14px}
.ops .h-tick b{color:var(--a-gold-hi);font-family:var(--a-display);font-weight:400;letter-spacing:.02em}
.ops .h-tick em{font-style:normal;color:var(--a-text)}
@keyframes hTick{to{transform:translateX(-50%)}}

/* the wall: one plaque per record */
.ops .h-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--o-gap)}
.ops .h-plq{position:relative;display:flex;flex-direction:column;border-radius:var(--a-r-lg);background:radial-gradient(120% 70% at 50% 0%,rgba(254,214,84,.16),transparent 60%),var(--a-tile);box-shadow:var(--a-rim),var(--a-shadow);overflow:hidden;transition:transform var(--a-dur) var(--a-ease)}
.ops .h-plq:hover{transform:translateY(-4px)}
.ops .h-plq__art{position:relative;display:grid;place-items:center;aspect-ratio:1.15;padding:14px 14px 0}
.ops .h-plq__art img{width:82%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(0,0,0,.5));transition:transform var(--a-slow) var(--a-back)}
.ops .h-plq:hover .h-plq__art img{transform:scale(1.06) translateY(-4px)}
.ops .h-plq__rank{position:absolute;top:12px;left:12px;font-family:var(--a-display);font-size:13px;color:var(--a-dim)}
.ops .h-plq__new{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:var(--a-r-pill);background:var(--a-grad-gold);color:var(--a-ink);font-weight:900;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.ops .h-plq__b{padding:10px 16px 16px;display:flex;flex-direction:column;gap:2px}
.ops .h-plq__n{font-family:var(--a-display);font-size:20px;color:var(--a-text);line-height:1.1}
.ops .h-plq__t{font-family:var(--a-display);font-size:clamp(34px,4vw,44px);line-height:1;color:transparent;background:var(--a-grad-gold);-webkit-background-clip:text;background-clip:text;font-variant-numeric:tabular-nums}
.ops .h-plq__t small{font-size:.5em}
.ops .h-plq__w{color:var(--a-soft);font-weight:700;font-size:14px}
.ops .h-plq__w b{color:var(--a-text)}
.ops .h-plq__f{display:flex;gap:8px;margin-top:12px}
.ops .h-plq__f a,.ops .h-plq__f button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border-radius:12px;border:0;font:inherit;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none}
.ops .h-share{background:var(--a-grad-gold);color:var(--a-ink)}
.ops .h-ghost{background:rgba(255,255,255,.08);color:var(--a-text)}
.ops .h-share svg,.ops .h-ghost svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ops .h-plq.is-open .h-plq__art img{filter:brightness(0) opacity(.45)}
.ops .h-plq.is-open .h-plq__t{font-size:22px}
.ops .h-plq.is-first{grid-column:span 2;grid-row:span 2}
.ops .h-plq.is-first .h-plq__n{font-size:28px}
.ops .h-plq.is-first .h-plq__t{font-size:clamp(56px,7vw,84px)}
@media (max-width:560px){.ops .h-wall{grid-template-columns:repeat(2,1fr);gap:12px}.ops .h-plq__b{padding:8px 12px 12px}.ops .h-plq__n{font-size:16px}.ops .h-plq__t{font-size:30px}.ops .h-plq__f{flex-direction:column}.ops .h-plq.is-first .h-plq__t{font-size:56px}}

/* live competitions, one card each, with the current #1 visible */
.ops .h-comps{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--o-gap)}
.ops .h-comp{display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:var(--a-r-lg);background:var(--a-tile);box-shadow:var(--a-rim),var(--a-shadow)}
.ops .h-comp__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ops .h-comp h3{margin:0;font-family:var(--a-display);font-weight:400;font-size:24px;color:var(--a-text);line-height:1.1}
.ops .h-comp p{margin:0;color:var(--a-soft);font-size:14px;line-height:1.5}
.ops .h-left{display:flex;align-items:baseline;gap:8px;color:var(--a-dim);font-weight:700;font-size:13px}
.ops .h-left b{font-family:var(--a-display);font-weight:400;font-size:26px;color:var(--a-text);font-variant-numeric:tabular-nums}
.ops .h-top3{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ops .h-top3 li{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.05)}
.ops .h-top3 li.me{box-shadow:inset 0 0 0 2px var(--a-gold-hi)}
.ops .h-top3 .n{font-weight:800;color:var(--a-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops .h-top3 .s{font-family:var(--a-display);color:var(--a-gold-hi);font-variant-numeric:tabular-nums}
.ops .h-top3 .empty{grid-template-columns:1fr;color:var(--a-dim);font-weight:700}
.ops .h-prize{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--a-soft);font-size:13px;font-weight:700}
.ops .h-prize b{color:var(--a-gold-hi)}
.ops .h-comp .btnrow{margin-top:auto}

/* rank medal (big, readable) */
.ops .h-rk{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-family:var(--a-display);font-size:15px;background:rgba(255,255,255,.1);color:var(--a-text)}
.ops .h-rk.r1{background:linear-gradient(180deg,#FED654,#E7A93A);color:#3a2500}
.ops .h-rk.r2{background:linear-gradient(180deg,#F1F3F8,#AEB6C6);color:#22262f}
.ops .h-rk.r3{background:linear-gradient(180deg,#F2B68A,#B8743F);color:#2e1606}

/* points: what they are for */
.ops .h-why{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--o-gap);margin:0 0 var(--o-gap)}
.ops .h-why__i{padding:20px;border-radius:var(--a-r-lg);background:var(--a-tile);box-shadow:var(--a-rim)}
.ops .h-why__i b{display:block;font-family:var(--a-display);font-weight:400;font-size:22px;color:var(--a-text);margin:8px 0 6px}
.ops .h-why__i p{margin:0;color:var(--a-soft);font-size:14px;line-height:1.5}
.ops .h-why__i .big{font-family:var(--a-display);font-size:34px;color:var(--a-gold-hi);line-height:1}
.ops .h-why__i.is-goal{background:radial-gradient(120% 90% at 100% 0%,rgba(254,214,84,.22),transparent 60%),var(--a-tile);box-shadow:inset 0 0 0 2px rgba(254,214,84,.5)}
.ops .h-why__i img{width:64px;height:auto;float:right;margin:-4px -4px 0 8px;transform:rotate(8deg)}
@media (max-width:820px){.ops .h-why{grid-template-columns:1fr}}

.ops .h-bar{position:relative;height:10px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}
.ops .h-bar i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--a-grad-gold-h);transition:width .8s var(--a-ease)}
.ops .h-me{display:grid;gap:10px;padding:18px 20px;border-radius:var(--a-r-lg);background:var(--a-smoke-hi);box-shadow:inset 0 0 0 2px rgba(254,214,84,.4);margin:0 0 var(--o-gap)}
.ops .h-me__row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;color:var(--a-soft);font-weight:700}
.ops .h-me__row b{font-family:var(--a-display);font-weight:400;font-size:30px;color:var(--a-text)}

/* readable board */
.ops .h-board{width:100%;border-collapse:separate;border-spacing:0 6px}
.ops .h-board th{text-align:left;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--a-dim);font-weight:900;padding:0 14px 4px}
.ops .h-board td{padding:12px 14px;background:rgba(255,255,255,.05);vertical-align:middle}
.ops .h-board td:first-child{border-radius:12px 0 0 12px;width:56px}
.ops .h-board td:last-child{border-radius:0 12px 12px 0}
.ops .h-board tr.me td{background:rgba(254,214,84,.12)}
.ops .h-board .nm{font-weight:800;color:var(--a-text);font-size:16px}
.ops .h-board .sc{font-family:var(--a-display);font-size:22px;color:var(--a-gold-hi);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ops .h-board .r{text-align:right}
.ops .h-board .pk{color:var(--a-soft);font-weight:700;font-size:13px;white-space:nowrap}
.ops .h-board .bar{min-width:120px}
@media (max-width:640px){.ops .h-board .hs{display:none}.ops .h-board td{padding:10px}.ops .h-board .sc{font-size:18px}}

/* podium with the creature when we know it */
.ops .h-pod{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:12px;margin:0 0 18px}
.ops .h-pod__c{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:16px 12px 18px;border-radius:var(--a-r-lg);background:var(--a-tile);box-shadow:var(--a-rim)}
.ops .h-pod__c.p1{order:2;padding-top:22px;background:radial-gradient(100% 80% at 50% 0%,rgba(254,214,84,.28),transparent 65%),var(--a-tile);box-shadow:inset 0 0 0 2px rgba(254,214,84,.55),var(--a-shadow)}
.ops .h-pod__c.p2{order:1}.ops .h-pod__c.p3{order:3}
.ops .h-pod__c img{width:min(120px,80%);aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(0,0,0,.5))}
.ops .h-pod__c .h-rk{width:40px;height:40px;font-size:20px}
.ops .h-pod__n{font-weight:900;color:var(--a-text);font-size:16px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops .h-pod__s{font-family:var(--a-display);font-size:clamp(26px,3.4vw,38px);color:var(--a-gold-hi);line-height:1}
.ops .h-pod__c.p1 .h-pod__s{font-size:clamp(32px,4.4vw,50px)}
.ops .h-pod__r{color:var(--a-soft);font-size:12px;font-weight:700}
@media (max-width:560px){.ops .h-pod{gap:8px}.ops .h-pod__c{padding:12px 6px}.ops .h-pod__n{font-size:13px}}

.ops .h-clock{display:inline-flex;align-items:baseline;gap:10px;padding:10px 16px;border-radius:var(--a-r);background:var(--a-smoke-hi);box-shadow:var(--a-rim);color:var(--a-soft);font-weight:800;font-size:13px}
.ops .h-clock b{font-family:var(--a-display);font-weight:400;font-size:30px;color:var(--a-text);font-variant-numeric:tabular-nums}
.ops .h-sticky{position:sticky;top:64px;z-index:5;padding:10px 0;margin:-10px 0 8px;background:linear-gradient(var(--a-night) 70%,transparent)}

/* toast after a share */
.h-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:90;padding:12px 18px;border-radius:14px;background:#1F2430;color:#F4F2EC;font:800 14px/1.3 var(--a-body,sans-serif);box-shadow:0 18px 40px rgba(0,0,0,.45)}
@media (prefers-reduced-motion:reduce){.ops .h-tick__in{animation:none}.ops .h-freq i{animation:none}.ops .h-plq,.ops .h-plq__art img{transition:none}}
@media (max-width:640px){.ops .h-seg{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:none}.ops .h-seg button,.ops .h-seg a{white-space:nowrap;padding:8px 14px}.ops .h-head .h-seg{width:100%}}
