/* Valor 2026-09-24: страница «Расы» — каталог, панель расы и 3D-сцена (префикс .pr-) */
.pr-stats{margin-top:34px}
.pr-stats .v2-stat span{font-size:12px}

/* ---------- панель выбранной расы ---------- */
.pr-show{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);margin-top:44px;scroll-margin-top:90px}
.pr-stage{position:relative;min-height:660px;overflow:hidden;isolation:isolate;
  background:var(--img) center/cover no-repeat,
    radial-gradient(ellipse 46% 9% at 50% 86%,rgba(255,214,140,.16),rgba(255,214,140,0) 70%),
    radial-gradient(ellipse 60% 55% at 50% 38%,rgba(241,194,45,.13),rgba(241,194,45,0) 70%),
    linear-gradient(180deg,#1d1612 0%,#0f0b09 70%,#0a0706 100%);
  box-shadow:inset -1px 0 0 #000,inset -4px 0 0 #3b3530}
.pr-stage::before{content:"";position:absolute;left:50%;bottom:7%;width:min(64%,440px);height:15%;transform:translateX(-50%);z-index:0;pointer-events:none;border-radius:50%;
  background:radial-gradient(ellipse at 50% 45%,rgba(58,46,38,.95) 0%,rgba(34,27,22,.92) 55%,rgba(0,0,0,0) 72%);
  box-shadow:0 -2px 0 rgba(241,194,45,.18)}
.pr-stage::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse 80% 70% at 50% 45%,rgba(0,0,0,0) 55%,rgba(0,0,0,.55) 100%)}
.pr-show[data-faction="alliance"] .pr-stage{--glow:74,143,224}
.pr-show[data-faction="horde"] .pr-stage{--glow:216,69,58}
.pr-show[data-faction="both"] .pr-stage{--glow:241,194,45}
.pr-stage__art{position:absolute;left:50%;bottom:9%;height:80%;max-width:92%;object-fit:contain;object-position:50% 100%;transform:translateX(-50%);z-index:1;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.85)) drop-shadow(0 0 22px rgba(var(--glow,241,194,45),.22));transition:opacity .35s}
.pr-stage__3d{position:absolute;inset:0;z-index:2;opacity:0;transition:opacity .45s;cursor:grab}
.pr-stage__3d canvas{display:block;width:100% !important;height:100% !important;outline:none}
.pr-stage__3d canvas:focus-visible{box-shadow:inset 0 0 0 2px var(--gold)}
.pr-stage__3d.is-grab{cursor:grabbing}
.pr-stage.is-3d .pr-stage__3d{opacity:1}
.pr-stage.is-3d .pr-stage__art{opacity:0}
.pr-stage__top{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:18px 16px;pointer-events:none}
.pr-stage__top>*{pointer-events:auto}
.pr-stage__bottom{position:absolute;left:0;right:0;bottom:0;z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 16px 18px;pointer-events:none;text-align:center}
.pr-stage__bottom>*{pointer-events:auto}
.pr-stage>.vs-tag{z-index:6}
.vs-tags-on .pr-stage__top{padding-top:40px}
.pr-seg{display:inline-flex;background:rgba(12,9,7,.82);box-shadow:0 0 0 1px #000,0 0 0 3px #4d4742,0 0 0 4px #000}
.pr-seg[hidden],.pr-stage.no-3d .pr-seg{display:none}
.pr-seg button{font:700 14px 'Philosopher',serif;letter-spacing:.4px;padding:8px 14px;color:var(--muted);background:none;border:0;cursor:pointer}
.pr-seg button+button{box-shadow:-1px 0 0 #3e3934}
.pr-seg button[aria-pressed="true"]{color:#fff2cf;background:linear-gradient(#2c1f11,#170f08);box-shadow:inset 0 -2px 0 var(--gold)}
.pr-seg button:hover{color:#fff2cf}
.pr-seg button:focus-visible,.pr-c:focus-visible,.pr-cf:focus-visible,.pr-card:focus-visible,.pr-3dbtn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pr-status{font-size:13px;color:#e9dcc3;text-shadow:0 1px 2px #000;min-height:1em}
.pr-status:empty{display:none}
.pr-status i{display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:-1px;border:2px solid rgba(241,194,45,.35);border-top-color:var(--gold);border-radius:50%;animation:pr-spin .8s linear infinite}
@keyframes pr-spin{to{transform:rotate(360deg)}}
.pr-hint{font-size:12px;color:rgba(233,220,195,.72);text-shadow:0 1px 2px #000}
.pr-hint[hidden],.pr-3dbtn[hidden]{display:none}
.pr-3dbtn{font:700 15px 'Philosopher',serif;padding:9px 18px;color:#fff2cf;cursor:pointer;border:0;background:linear-gradient(#2a1d10,#150d07);box-shadow:0 0 0 1px #000,0 0 0 3px #a7874f,0 0 0 4px #000}

.pr-info{padding:38px 40px 36px}
.pr-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.pr-fac{font:700 13px 'Philosopher',serif;letter-spacing:1px;text-transform:uppercase;padding:3px 10px 3px 24px;position:relative;color:#f1e4cf;background:#15100d;box-shadow:0 0 0 1px #000,0 0 0 2px #4d4742}
.pr-fac::before{content:"";position:absolute;left:9px;top:50%;width:8px;height:8px;margin-top:-4px;transform:rotate(45deg);background:var(--gold)}
.pr-fac--alliance::before{background:var(--alli)}
.pr-fac--horde::before{background:var(--horde)}
.pr-fac--both::before{background:linear-gradient(90deg,var(--alli) 50%,var(--horde) 50%)}
.pr-name{margin:14px 0 6px;font-size:52px}
.pr-tagline{margin:0 0 14px;font-size:24px;line-height:1.3;color:#f2d38a;text-shadow:0 1px 2px #000}
.pr-lore{margin:0 0 18px;font-size:16.5px;color:#e6dccf}
.pr-start{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:10px 14px;background:rgba(0,0,0,.25);box-shadow:inset 0 0 0 1px #2d2723}
.pr-start span{font:700 13px 'Philosopher',serif;letter-spacing:.8px;text-transform:uppercase;color:var(--gold)}
.pr-start b{font-weight:500;color:#f1e4cf}
.pr-start__na{font-style:normal;color:var(--muted)}
.pr-info h3{margin:24px 0 12px;font:700 22px 'Philosopher',serif;color:#f2d38a}
.pr-info h3 small{font:400 14px 'Roboto Condensed',sans-serif;margin-left:6px}
.pr-abil{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pr-abil li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}
.pr-abil img{width:36px;height:36px;border-radius:3px;box-shadow:0 0 0 1px #000,0 0 0 2px #8a8279,0 0 0 3px #000}
.pr-abil b{color:#f1e4cf;font-weight:700}
.pr-abil small{display:block;margin-top:2px;font-size:14px;line-height:1.45;color:var(--muted)}
.pr-kind{display:inline-block;margin-left:6px;padding:0 7px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#b9ad9f;box-shadow:0 0 0 1px #3e3934;vertical-align:1px}
.pr-kind--act{color:#ffcf5a;box-shadow:0 0 0 1px #7a5a14}
.pr-cls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.pr-c{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;cursor:pointer;border:0;color:#cfc4b6;background:#15100d;
  font:500 12.5px/1.15 'Roboto Condensed',sans-serif;box-shadow:0 0 0 1px #000,0 0 0 3px #3e3934,0 0 0 4px #000;transition:transform .15s,box-shadow .15s}
.pr-c img{width:34px;height:34px;border-radius:50%;box-shadow:0 0 0 1px #000,0 0 0 2px #6d665f}
.pr-c span{min-height:2.3em;display:flex;align-items:center;text-align:center}
.pr-c:hover{transform:translateY(-2px);color:#fff2cf}
.pr-c[aria-pressed="true"]{color:#fff;background:linear-gradient(#2a1d10,#150d07);box-shadow:0 0 0 1px #000,0 0 0 3px #a7874f,0 0 0 4px #000,inset 0 -3px 0 var(--c)}
.pr-c[aria-pressed="true"] img{box-shadow:0 0 0 1px #000,0 0 0 2px var(--c),0 0 12px var(--c)}
.pr-c:disabled{opacity:.3;cursor:not-allowed;transform:none}
.pr-cls-hint{margin-top:10px}
.pr-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:26px}
.pr-cta .wb{margin:0}
.pr-cta--off{opacity:.55;cursor:not-allowed;filter:grayscale(.6)}
.pr-more{font:700 15px 'Philosopher',serif;letter-spacing:.8px;text-transform:uppercase}
.pr-show.is-swap .pr-info{animation:pr-in .35s ease-out}
@keyframes pr-in{from{opacity:.25;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- фильтры и сетка рас ---------- */
.pr-filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding:16px 22px}
.pr-tabs{margin:0}
.pr-tabs .v2-tab[data-pr-fac="alliance"][aria-selected="true"]{box-shadow:0 0 0 1px #000,0 0 0 3px var(--alli),0 0 0 4px #000}
.pr-tabs .v2-tab[data-pr-fac="horde"][aria-selected="true"]{box-shadow:0 0 0 1px #000,0 0 0 3px var(--horde),0 0 0 4px #000}
.pr-cfil{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}
.pr-cfil__t{font:700 13px 'Philosopher',serif;letter-spacing:1px;text-transform:uppercase;color:var(--gold)}
.pr-cfil__list{display:flex;flex-wrap:wrap;gap:8px}
.pr-cf{position:relative;width:40px;height:40px;padding:0;border:0;cursor:pointer;background:#15100d;box-shadow:0 0 0 1px #000,0 0 0 3px #3e3934,0 0 0 4px #000;transition:transform .15s}
.pr-cf img{width:30px;height:30px;margin:5px;border-radius:50%;display:block;filter:saturate(.7)}
.pr-cf span{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);white-space:nowrap;padding:3px 8px;font-size:12px;color:#fff2cf;background:#0d0a08;
  box-shadow:0 0 0 1px #4d4742;opacity:0;pointer-events:none;transition:opacity .15s;z-index:7}
.pr-cf:hover span,.pr-cf:focus-visible span{opacity:1}
.pr-cf:hover{transform:translateY(-2px)}
.pr-cf[aria-pressed="true"]{box-shadow:0 0 0 1px #000,0 0 0 3px var(--c),0 0 0 4px #000,0 0 14px var(--c)}
.pr-cf[aria-pressed="true"] img{filter:none}
.pr-fnote{margin:14px 2px 0;min-height:1.6em;color:var(--muted);font-size:15px}
.pr-fnote b{color:#f2d38a}
.pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:22px 18px;margin-top:10px}
.pr-card{position:relative;display:block;text-align:center;color:inherit !important;transition:transform .2s,opacity .25s,filter .25s}
.pr-card[hidden]{display:none}
.pr-card__img{position:relative;display:block;height:196px;overflow:hidden;background:radial-gradient(ellipse at 50% 90%,rgba(241,194,45,.18),transparent 62%),linear-gradient(#231a15,#100c0a);
  box-shadow:0 0 0 1px #000,0 0 0 3px #4d4742,0 0 0 4px #000,inset 0 -3px 0 var(--gold)}
.pr-card[data-faction="alliance"] .pr-card__img{box-shadow:0 0 0 1px #000,0 0 0 3px #4d4742,0 0 0 4px #000,inset 0 -3px 0 var(--alli)}
.pr-card[data-faction="horde"] .pr-card__img{box-shadow:0 0 0 1px #000,0 0 0 3px #4d4742,0 0 0 4px #000,inset 0 -3px 0 var(--horde)}
.pr-card__img img{position:absolute;left:50%;bottom:0;height:92%;width:auto;max-width:none;transform:translateX(-50%);filter:drop-shadow(0 6px 8px rgba(0,0,0,.7))}
.pr-card b{display:block;margin-top:12px;font:700 17px/1.2 'Philosopher',serif;color:#f1e4cf}
.pr-card small{display:block;margin-top:3px;color:var(--muted);font-size:12.5px;line-height:1.3}
.pr-card:hover{transform:translateY(-5px)}
.pr-card:hover .pr-card__img{filter:brightness(1.15)}
.pr-card[aria-current="true"] .pr-card__img{box-shadow:0 0 0 1px #000,0 0 0 3px #d6ae5c,0 0 0 4px #000,0 0 18px rgba(241,194,45,.45),inset 0 -3px 0 var(--gold)}
.pr-card[aria-current="true"] b{color:#ffd24a}
.pr-card.is-dim{opacity:.28;filter:grayscale(.8)}
.pr-card__lock{position:absolute;top:8px;right:8px;padding:1px 7px;font:700 11px 'Roboto Condensed',sans-serif;font-style:normal;letter-spacing:.5px;text-transform:uppercase;color:#ff8a7a;background:rgba(10,7,6,.85);box-shadow:0 0 0 1px #7a2a1d}
.pr-skel{height:196px;background:linear-gradient(100deg,#15100d 30%,#221a14 50%,#15100d 70%) 0 0/300% 100%;box-shadow:0 0 0 1px #000,0 0 0 3px #3e3934,0 0 0 4px #000;animation:pr-skel 1.4s linear infinite}
@keyframes pr-skel{to{background-position:-150% 0}}
.pr-err{grid-column:1/-1;padding:22px;text-align:center;color:#e9dcc3;background:rgba(0,0,0,.3);box-shadow:inset 0 0 0 1px #4d2a22}

.pr-howto{display:flex;align-items:center;justify-content:space-between;gap:24px}
.pr-howto h2{margin-bottom:10px}
.pr-howto p{max-width:760px}
.pr-howto .wb{flex:0 0 auto;margin:0}

@media (max-width:1180px){
  .pr-name{font-size:44px}
  .pr-cls{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1000px){
  .pr-show{grid-template-columns:1fr}
  .pr-stage{min-height:560px;box-shadow:inset 0 -1px 0 #000,inset 0 -4px 0 #3b3530}
  .pr-info{padding:28px 26px 30px}
  .pr-howto{flex-direction:column;align-items:flex-start}
}
@media (max-width:640px){
  .pr-stage{min-height:480px}
  .pr-stats{grid-template-columns:1fr 1fr}
  .pr-name{font-size:38px}
  .pr-tagline{font-size:21px}
  .pr-info{padding:24px 18px 26px}
  .pr-cls{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 8px}
  .pr-c{font-size:12px}
  .pr-filters{padding:14px 12px}
  .pr-tabs{gap:8px}
  .pr-tabs .v2-tab{padding:8px 11px;font-size:14px}
  .pr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
  .pr-card__img{height:170px}
  .pr-seg button{padding:7px 11px;font-size:13px}
  .pr-cta{gap:14px 18px}
}
@media (prefers-reduced-motion:reduce){
  .pr-card,.pr-c,.pr-cf,.pr-stage__art,.pr-stage__3d{transition:none}
  .pr-show.is-swap .pr-info{animation:none}
  .pr-status i,.pr-skel{animation:none}
}
