/* ============================================================================
   HoodFox — фабл-раунд-11 (2026-09-02): заголовки по центру везде, карточки
   без номеров в рамочках, крупный основной текст и жирные числа, рулетка во
   всю ширину, подписи сундуков в одну строку, пицца v2 на светлой плашке,
   подсказка прокрутки таблиц на телефоне, соцссылки X/TG в шапке и футере,
   новые блоки (5 шагов, линия времени, FAQ, глоссарий, «как минтить»).
   Подключается ПОСЛЕ fable10.css и потому выигрывает каскад.
   Источник: ВОЛТ-СИСТЕМА/ТЗ-ВЛАДЕЛЬЦА-САЙТ-РАУНД-11.md, ОЦЕНКА-САЙТА-ФАБЛ-2026-09-02.md
   ========================================================================== */

/* ---------- П1. Заголовки секций и карточек — ПО ЦЕНТРУ, везде ----------
   Раунд 7 ставил заголовки карточек с номером слева (fable7.css П2) — владелец это отменил.
   Единственное исключение — строка слота в редакторе ханта (.slot-head h3): это подпись
   ряда фишек рядом с пейджером, а не заголовок карточки. */
main h1,main h2,main h3,main h4{text-align:center}
.mechanic-head,.mechanic-head>div,.season-lead>div,.presale-hero>div,.sim-side,.token-lead>div,.more,.regcta>div,.stat,.info-card{text-align:center}
.mechanic-head p,.season-lead p,.presale-hero p,.token-lead p,.more p,.regcta p,.info-card p{max-width:none;margin-left:auto;margin-right:auto}
.mechanic-head h3,.season-lead h3,.presale-hero h3,.mechanic-head>div h3,.sim-side h3,.season-panel h3{text-align:center}
.rule-card,.presale-card,.card,.character,.week,.feature-link,.guide-card,.heist-card h4{text-align:center}
.rule-card b,.presale-card b,.card b,.card .hud,.character b,.feature-link b,.feature-link .hud,.feature-link p,.regcta b,.regcta .hud,.more b,.more .hud,.token-lead .cap,.season-panel .hud,.heist-card h4,.roadmap-rows .roadmap-card b{text-align:center}
.heist-card ul,.heist-card p{text-align:left}
.heist-card p{margin-top:10px;color:var(--faded)}
/* раунд 12: заголовок слота примерочной тоже по центру (ТЗ 1, приёмка Сола); пейджер — справа поверх, на телефоне под заголовком */
.slot-head{position:relative;justify-content:center}
.slot-head h3{text-align:center;margin-right:0;flex:1 1 100%;padding:0 96px;box-sizing:border-box}
.slot-head .pager{position:absolute;right:0;top:50%;transform:translateY(-50%)}
@media (max-width:640px){.slot-head h3{padding:0}.slot-head .pager{position:static;transform:none;flex:1 1 100%;justify-content:center;margin-top:6px}}
/* хиро-карточки: одна колонка, ценник под текстом по центру */
.presale-hero,#rolls .presale-hero,#presale .presale-hero{grid-template-columns:minmax(0,1fr)}
.presale-hero .presale-amount,#rolls .presale-amount{justify-self:center;width:auto;min-width:min(100%,320px)}
.token-lead{grid-template-columns:minmax(0,1fr);text-align:center}
.token-lead .cap{text-align:center;justify-self:center;margin-top:10px}
.regcta{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.more{grid-template-columns:minmax(0,1fr);text-align:center;justify-items:center}
.more .gallery{justify-content:center}
.more>*{grid-column:1}
.sec-head{max-width:none}
#dressing .stats+.small-note{max-width:none;text-align:center;margin-top:18px}

/* ---------- П2. Без номеров в рамочках у карточек; абзац во всю ширину ----------
   .mechanic-no («01»…«06» на play/hunt) и .t-no (01–04 у заданий пре-рега) — не
   последовательности, а декор; убраны. Нумерация фаз минта (.stage-row .n), шагов
   (.steps .sn) и остановок роадмапа (.roadmap-no) — настоящие порядки, оставлены. */
.mechanic-no,.task .t-no{display:none}
.mechanic-head{display:block}
.mechanic-head>div{max-width:none}
.mechanic-head h3{margin-top:0}
.task{grid-template-columns:minmax(0,1fr) auto auto}
@media (max-width:640px){.task .t-open,.task .t-state{grid-column:1}}

/* ---------- П3. Читаемость: основной текст крупнее, числа жирным ----------
   Базовый кегль абзацев/пунктов/ячеек — 17px на десктопе, 16px на телефоне.
   Числа оборачиваются скриптом в <strong class="n">. */
:root{--body:17px}
@media (max-width:640px){:root{--body:16px}}
main p,main li,main td,main dd,.task .t-sub,.steps .sd,.pathcard .pd,.stage-row .who,.strip .v,.mock-note,.counter,.wl-status,.stat .lbl,.week span,.allocation span,.hunt-stage p,.card p,.roadmap-card p,.rm-list li,.sim-honest,.sim-side p,.pizza-fine span,.unlock-body,.formula,.small-note,.rule-card p,.presale-card p,.season-panel>p,.heist-card li,.character p,.disclaimer,.card .foot-note,.close-note,.safety,figcaption,.plate figcaption,.foot p,.faq .faq-a,.glossary p,.tl-stop span{font-size:var(--body)}
.hero-sub,.section-note{font-size:19px;line-height:1.65}
.hero-head{max-width:96ch}
.hero-head h1.display{max-width:none}
.hero-sub{max-width:74ch}
.fine,.foot .fine{font-size:15px}
.hud,.strip .k{font-size:13px}
.steps .st{font-size:14px}
.steps .sn{font-size:14px}
.safety b{font-size:13px}
.wl-label{font-size:14px}
.pathcard b{font-size:18px}
.stage-row b{font-size:16px}
.roadmap-card .jump,.feature-link .jump{font-size:14px}
table.season-table th,table.token-table th{font-size:13px}
table.season-table td.value,table.season-table th.value,.season-table .value{font-size:16px}
table.season-table td.rarity-word{font-size:var(--body)}
table.season-table td.value,table.season-table th.value{white-space:normal;line-height:1.45}
table.season-table{min-width:0;table-layout:auto}
.roles-table th:nth-child(1),.roles-table td:nth-child(1){width:15%}.roles-table th:nth-child(2),.roles-table td:nth-child(2){width:24%}.roles-table th:nth-child(3),.roles-table td:nth-child(3){width:21%}
#heist table.season-table th:nth-child(1),#heist table.season-table td:nth-child(1){width:14%}#heist table.season-table th:nth-child(2),#heist table.season-table td:nth-child(2){width:26%}#heist table.season-table th:nth-child(3),#heist table.season-table td:nth-child(3){width:14%}
@media (max-width:760px){table.season-table{min-width:680px}}
.rule-card b,.presale-card b,.heist-card h4{font-size:15px;line-height:1.35}
.week b{font-size:16px}
.pizza-fine b{font-size:14px}
.btn{font-size:15px}
.placard{font-size:13px}
.table-title{margin:18px 0 -8px;text-align:center;color:var(--sand);font:16px/1.4 var(--pxf);text-transform:uppercase;letter-spacing:.04em}
strong.n{font-weight:700;color:var(--cream)}
#stages .mock-note,.mock-note{font-size:var(--body)} /* раунд 12: fable5 #stages .mock-note{15px} перебивал по специфичности */
td.value strong.n,.formula strong.n,.presale-card em strong.n,.strip .v strong.n,.counter strong.n{color:inherit}
.presale-card em,.rule-card em{font-weight:700}

/* ---------- П4. Рулетка: крутится дольше (JS: D=9600 мс, easeOutCubic), текст во всю ширину ---------- */
#rolls .simulator .sim-grid,.simulator .sim-grid{grid-template-columns:minmax(0,1fr)}
#rolls .sim-side{text-align:center;max-width:none}
#rolls .sim-side p,#rolls .sim-side .sim-honest,#rolls .sim-honest,.sim-side p{max-width:none}
#rolls .section-note{max-width:none}

/* ---------- П5. Токеномика: подписи сундуков «1 к 1» — одна строка названия у всех шести ----------
   Названия сокращены (Presale, Trait Hunt), кегль крупнее, перенос запрещён; ниже 1000px —
   три колонки, чтобы подпись не упиралась в рамку. */
.token-label,.token-item .token-label{height:96px;max-width:184px;padding:8px 4px}
.token-label b,.token-item .token-label b{font:13px/1.3 var(--pxf);white-space:nowrap;max-width:100%}
.token-label strong,.token-item .token-label strong{font:16px/1.2 var(--pxf);margin-top:7px}
@media (max-width:1000px){.token-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.token-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}}

/* пицца v2: подписи впечатаны в картинку, поэтому арт лежит на светлой плашке-меню в ОБЕИХ
   темах (ночью тонкие тёмные выноски иначе тонут в #241530 — ОТЧЁТ-ОПУС-ПИЦЦА-V2.md);
   легенда без дублей процентов — только количество и назначение, в сетке 3×2 под артом */
.pizza-plate{grid-template-columns:minmax(0,1fr);gap:16px;justify-items:center}
.pizza-plate>.hud{grid-column:auto;margin-bottom:4px}
.pizza-board{position:relative;width:100%;max-width:760px;margin:0 auto;padding:0;background:transparent;border:0;box-shadow:none;clip-path:none;justify-self:center;box-sizing:border-box}
.pizza-board img{display:block;width:100%;max-width:none;height:auto;image-rendering:auto;margin:0 auto}
.pizza-callout{position:absolute;box-sizing:border-box;width:auto;height:auto;margin:0;padding:0;background:transparent;appearance:none;-webkit-appearance:none;border:4px solid var(--slice-color);cursor:pointer;pointer-events:auto;z-index:2;transition:none;touch-action:manipulation}
.pizza-callout.season{--slice-color:var(--fox);left:76.24%;top:1.54%;width:22.8%;height:15.58%}
.pizza-callout.presale{--slice-color:var(--sand);left:42.24%;top:87.67%;width:26.96%;height:11.3%}
.pizza-callout.liquidity{--slice-color:var(--mint);left:7.44%;top:72.86%;width:18.72%;height:10.96%}
.pizza-callout.future{--slice-color:#d5a7ff;left:.32%;top:43.07%;width:17.12%;height:13.7%}
.pizza-callout.team{--slice-color:#ffe071;left:4.32%;top:18.15%;width:14.88%;height:9.85%}
.pizza-callout.hunt{--slice-color:#ff7f71;left:16.32%;top:1.03%;width:21.28%;height:10.45%}
.pizza-callout.is-linked{border-width:6px;transform:translateY(-2px)}
.pizza-callout:focus-visible{outline:2px solid var(--slice-color);outline-offset:2px}
@media (max-width:560px){.pizza-callout{border-width:2px}}
.pizza-fine{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:980px;margin:6px auto 0;padding:0;align-self:auto}
.pizza-fine li{display:block;text-align:center;min-width:0;padding:14px 12px;background:var(--night);border:2px solid var(--shadow);border-top:4px solid var(--slice-color);cursor:pointer;transition:none;touch-action:manipulation}
.pizza-fine li:first-child{border-top:4px solid var(--fox);padding-top:14px}
.pizza-fine li[data-slice="season0"]{--slice-color:var(--fox)}.pizza-fine li[data-slice="presale"]{--slice-color:var(--sand)}.pizza-fine li[data-slice="liquidity"]{--slice-color:var(--mint)}
.pizza-fine li[data-slice="future"]{--slice-color:#d5a7ff}.pizza-fine li[data-slice="team"]{--slice-color:#ffe071}.pizza-fine li[data-slice="trait-hunt"]{--slice-color:#ff7f71}
.pizza-fine li.is-linked{border-color:var(--slice-color);border-top-width:6px;transform:translateY(-2px);box-shadow:0 4px 0 var(--slice-color)}
.pizza-fine li:focus-visible{outline:2px solid var(--slice-color);outline-offset:2px}
.pizza-fine b{display:block;font:14px/1.35 var(--pxf);letter-spacing:.04em;text-transform:uppercase;color:var(--sand)}
.pizza-fine span{display:block;margin-top:6px;color:var(--faded)}
@media (max-width:900px){.pizza-fine{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pizza-fine{grid-template-columns:minmax(0,1fr)}}

/* ---------- Таблицы и широкие схемы на телефоне: карточки и полный кадр без бокового свайпа ---------- */
@media (max-width:760px){
  .sol-mobile-fixes .table-wrap{overflow:visible;position:relative}
  .sol-mobile-fixes .table-wrap::before{content:none;display:none}
  .sol-mobile-fixes .table-wrap table.season-table,.sol-mobile-fixes .table-wrap table.token-table{display:block;width:100%!important;inline-size:100%!important;max-width:100%!important;max-inline-size:100%!important;min-width:0!important;min-inline-size:0!important;contain:inline-size;table-layout:fixed;box-sizing:border-box;border:0;background:transparent;box-shadow:none;overflow:hidden}
  .sol-mobile-fixes .table-wrap table.season-table thead,.sol-mobile-fixes .table-wrap table.token-table thead{display:none}
  .sol-mobile-fixes .table-wrap table.season-table tbody,.sol-mobile-fixes .table-wrap table.season-table tfoot,.sol-mobile-fixes .table-wrap table.token-table tbody,.sol-mobile-fixes .table-wrap table.token-table tfoot{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;max-width:100%;min-width:0;overflow:hidden}
  .sol-mobile-fixes .table-wrap table.season-table tfoot,.sol-mobile-fixes .table-wrap table.token-table tfoot{margin-top:12px}
  .sol-mobile-fixes .table-wrap table.season-table tr,.sol-mobile-fixes .table-wrap table.token-table tr{display:block;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0;box-sizing:border-box;padding:8px 12px;background:var(--dusk);border:2px solid var(--shadow);box-shadow:0 4px 0 var(--shadow);overflow:hidden}
  .sol-mobile-fixes .table-wrap table.season-table tbody td,.sol-mobile-fixes .table-wrap table.season-table tfoot th,.sol-mobile-fixes .table-wrap table.token-table tbody td,.sol-mobile-fixes .table-wrap table.token-table tfoot th{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:34px;box-sizing:border-box;padding:8px 0;border:0;border-bottom:1px solid var(--line);text-align:right;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
  .sol-mobile-fixes .table-wrap table.season-table tbody td:last-child,.sol-mobile-fixes .table-wrap table.season-table tfoot th:last-child,.sol-mobile-fixes .table-wrap table.token-table tbody td:last-child,.sol-mobile-fixes .table-wrap table.token-table tfoot th:last-child{border-bottom:0}
  .sol-mobile-fixes .table-wrap table.season-table tbody td::before,.sol-mobile-fixes .table-wrap table.season-table tfoot th::before,.sol-mobile-fixes .table-wrap table.token-table tbody td::before,.sol-mobile-fixes .table-wrap table.token-table tfoot th::before{content:attr(data-label);flex:0 0 42%;color:var(--sand);font:10px/1.4 var(--pxf);letter-spacing:.04em;text-align:left;text-transform:uppercase}
  .sol-mobile-fixes .mobile-table-value{flex:1;min-width:0;max-width:58%;text-align:right;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
  .sol-mobile-fixes .mobile-table-value strong{white-space:normal}
  .sol-mobile-fixes .table-wrap td.value.num{font-size:12px;letter-spacing:0}
  .sol-mobile-fixes .table-wrap td strong{min-width:0;white-space:normal}
  .sol-mobile-fixes .hunt-scroll{overflow:visible}
  .sol-mobile-fixes .hunt-trail{min-width:0;grid-template-columns:minmax(0,1fr);gap:14px;padding:18px 14px 22px}
  .sol-mobile-fixes .hunt-trail::before{display:none}
  .sol-mobile-fixes .roadmap-scroll{width:100%;max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box}
  .sol-mobile-fixes .roadmap-scene,.sol-mobile-fixes .roadmap-visual,.sol-mobile-fixes .roadmap-art{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
  .sol-mobile-fixes .roadmap-marker{display:none}
  .sol-mobile-fixes .token-art-scroll{overflow:visible;padding-left:0;padding-right:0}
  .sol-mobile-fixes .token-row{width:100%;max-width:100%;min-width:0;grid-template-columns:516fr 384fr 304fr 276fr 200fr 148fr;gap:1px;box-sizing:border-box;overflow:hidden}
  .sol-mobile-fixes .token-item{min-width:0;max-width:100%;min-height:0;overflow:hidden}
  .sol-mobile-fixes .token-label{display:none}
  .sol-mobile-fixes .bar-scroll{overflow:visible}
  .sol-mobile-fixes .supply-bar{width:100%;min-width:0;height:62px}
  .sol-mobile-fixes .supply-bar span{font-size:6px}
  .sol-mobile-fixes .chips{display:grid;grid-template-columns:repeat(4,68px);justify-content:center;max-width:100%;overflow:visible;padding:2px}
  .sol-mobile-fixes .chip .tag{display:none}
  .sol-mobile-fixes .wall{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;overflow:visible;padding:26px 0 18px;scroll-snap-type:none}
  .sol-mobile-fixes .exhibit,.sol-mobile-fixes .exhibit .frame{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
  .sol-mobile-fixes .exhibit img{max-width:100%;margin:0 auto}
  .sol-mobile-fixes .placard.pxt{zoom:.72;max-width:100%;overflow:hidden}
  .sol-mobile-fixes .num.pxt{zoom:.9;max-width:100%;overflow:hidden}
  .sol-mobile-fixes .roadmap-trail,.sol-mobile-fixes .roadmap-cards,.sol-mobile-fixes .roadmap-stop,.sol-mobile-fixes .roadmap-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}
  .sol-mobile-fixes .roadmap-cards{grid-template-columns:minmax(0,1fr)!important}
  .sol-mobile-fixes .roadmap-card b,.sol-mobile-fixes .roadmap-card p{max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}
  .sol-mobile-fixes .roadmap-card .pxt,.sol-mobile-fixes .roadmap-card .pxw{zoom:.8}
  .sol-mobile-fixes .skyfield,.sol-mobile-fixes .skyfield>*{inset:0!important;width:100vw!important;max-width:100vw!important;margin:0!important;padding:0!important;box-sizing:border-box;overflow:hidden}
}

/* ---------- П10. Соцссылки X / Telegram в шапке и футере ----------
   Telegram скрыт (hidden), пока в fable11.js пустая константа TG_GROUP_URL. */
.head-right{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.head-social{display:inline-grid;place-items:center;width:44px;height:44px;flex:0 0 auto;color:var(--cream);text-decoration:none;
  background:var(--dusk);border:2px solid var(--shadow);box-shadow:0 3px 0 var(--shadow);transition:transform .08s ease,box-shadow .08s ease}
.head-social svg{width:20px;height:20px;fill:currentColor;display:block}
.head-social:hover{transform:translateY(1px);box-shadow:0 2px 0 var(--shadow);color:var(--sand)}
.head-social:focus-visible{outline:2px solid var(--fox);outline-offset:2px}
html[data-theme="day"] .head-social{background:#f7d6ae;color:#33132a}
.head-social[hidden],.foot-col a[hidden],[data-tg-text][hidden],.task[hidden]{display:none}
@media (max-width:900px){header .page{gap:8px}.head-right{margin-left:auto}header .logo{margin-right:0}}

/* ---------- П9. Новые блоки: 5 шагов, инфо-карточки, линия времени, FAQ, глоссарий ---------- */
.steps.steps-5,.steps.steps-4{display:grid;list-style:none;margin:18px 0 0;padding:0}
.steps .sn{display:inline-grid;place-items:center;width:30px;height:30px;background:var(--fox);color:var(--night);border:2px solid var(--shadow);box-shadow:0 2px 0 var(--shadow);font:14px/1 var(--pxf)}
.steps .st{display:block;font-family:Consolas,"Courier New",monospace;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--cream)}
.steps .sd{color:var(--faded);margin-top:2px}
.steps.steps-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.steps.steps-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.steps.steps-5 li,.steps.steps-4 li{display:block;padding:18px 16px;background:var(--night);border:2px solid var(--shadow);text-align:center}
.steps.steps-5 .sn,.steps.steps-4 .sn{margin:0 auto 10px}
.steps.steps-5 .st,.steps.steps-4 .st{display:block}
.steps.steps-5 .sd,.steps.steps-4 .sd{margin-top:8px}
@media (max-width:1000px){.steps.steps-5{grid-template-columns:repeat(3,minmax(0,1fr))}.steps.steps-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.steps.steps-5,.steps.steps-4{grid-template-columns:minmax(0,1fr)}}
.info-card{margin-top:22px;padding:clamp(20px,3vw,32px)}
.info-card .hud{display:block;margin-bottom:10px}
.info-card h3{font:clamp(19px,2.3vw,28px)/1.25 var(--pxf);color:var(--sand)}
.info-card p{margin-top:12px;color:var(--faded)}
.info-card .steps{margin-top:18px}
.info-card .mock-note{margin-top:14px}
.timeline-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:22px}
.tl-stop{position:relative;padding:16px 12px 14px;background:var(--night);border:2px solid var(--shadow);border-top:4px solid var(--line);text-align:center;min-width:0}
.tl-stop.long{border-top-color:var(--fox)}
.tl-stop b{display:block;font:14px/1.35 var(--pxf);color:var(--sand);text-transform:uppercase;letter-spacing:.02em}
.tl-stop span{display:block;margin-top:6px;color:var(--faded);line-height:1.4}
.tl-stop:not(:last-child)::after{content:"\2192";position:absolute;right:-9px;top:50%;transform:translateY(-50%);z-index:1;color:var(--fox);font:14px/1 var(--pxf);background:var(--dusk);padding:0 1px}
@media (max-width:1100px){.timeline-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.tl-stop:nth-child(4)::after{display:none}}
@media (max-width:640px){.timeline-strip{grid-template-columns:minmax(0,1fr)}.tl-stop::after{display:none}}
.faq{display:grid;gap:10px;margin-top:22px}
.faq details{border:2px solid var(--shadow);background:var(--dusk);box-shadow:0 4px 0 var(--shadow)}
.faq summary{cursor:pointer;list-style:none;padding:16px 18px;font:15px/1.4 var(--pxf);color:var(--cream);text-align:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+ ";color:var(--fox)}
.faq details[open] summary::before{content:"- "}
.faq .faq-a{padding:0 18px 18px;color:var(--faded);text-align:center}
.glossary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.glossary div{padding:14px;background:var(--night);border:2px solid var(--shadow);text-align:center}
.glossary b{display:block;font:14px/1.3 var(--pxf);color:var(--sand);text-transform:uppercase}
.glossary p{margin-top:6px;color:var(--faded)}
@media (max-width:900px){.glossary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.glossary{grid-template-columns:minmax(0,1fr)}}
#after-season .rule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.rule-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.presale-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){#after-season .rule-grid,.rule-grid,.rule-grid.two{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.presale-grid,.presale-grid.two{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-head h1.display{font-size:clamp(30px,9.5vw,40px)}}

/* ---------- П12 (раунд 12). Public-страницы (season-preview, public-full) в shell основного сайта ----------
   Разметка шапки/футера скопирована с index; здесь — то, что у основных страниц задано инлайн-CSS. */
body.public-shell{font-size:17px}
body.public-shell header .page{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:1200px}
body.public-shell nav a{font-size:13px;padding:8px 6px}
body.public-shell nav a.active{color:var(--sand);border-bottom-color:var(--fox)}
@media (min-width:1100px){body.public-shell nav{-webkit-mask-image:none;mask-image:none}}
body.public-shell .foot p{font-size:14px}
body.public-shell .skyfield .sky-orb,body.public-shell .daycycle{display:none!important}
/* П13 (раунд 12) */ .steps .sn,.stage-row .n{font-weight:700} /* номера шагов/фаз — тоже жирные (выборка чисел Сола на presale); после П9, иначе font: сбрасывает weight */
