/* WE MAFIA — раскладка страниц платформы поверх tokens.css и bundle.css.
   Только переменные системы (--wm-*, --space-*, --motion-*). Новых цветов и шрифтов нет. */

/* ---------- из образца лендинга дизайн-системы (landing.html) ---------- */
.hero{position:relative;min-height:calc(100svh - var(--header-height));display:flex;flex-direction:column;padding:16px var(--grid-phone-margin) 16px;overflow:hidden}
@media(min-width:960px){.hero{min-height:calc(100svh - var(--header-height-desktop));padding:40px var(--grid-desktop-margin) 56px;display:grid;grid-template-columns:minmax(0,1fr) 440px;grid-template-rows:auto 1fr auto;column-gap:96px}}
.hero .wm-top{grid-column:1/-1}
.hero .stage{display:flex;flex-direction:column;justify-content:flex-end;gap:16px;padding-top:96px;flex:1}
@media(min-width:960px){.hero .stage{grid-row:2/4;padding-top:120px;gap:24px}}
.hero .wm-next{margin-top:32px}
@media(min-width:960px){.hero .wm-next{grid-column:2;grid-row:3;align-self:end;margin-top:0}}
.split{display:grid;gap:32px}
@media(min-width:960px){.split{grid-template-columns:5fr 7fr;gap:96px;align-items:start}.split--sticky>:first-child{position:sticky;top:96px}.split--75{grid-template-columns:7fr 5fr}}
.bento{display:grid;gap:12px}
@media(min-width:960px){.bento{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.bento .c7{grid-column:span 7}.bento .c5{grid-column:span 5}.bento .c4{grid-column:span 4}}
.final{background:#000;padding:128px var(--grid-phone-margin) 96px;min-height:100svh;display:flex;flex-direction:column;justify-content:center}
@media(min-width:960px){.final{padding:160px var(--grid-desktop-margin) 128px}}
.final h2{font-family:var(--font-display);font-weight:700;font-size:56px;line-height:.9;letter-spacing:-.01em;text-transform:uppercase}
@media(max-width:380px){.final h2{font-size:46px}}
@media(min-width:960px){.final h2{font-size:120px;line-height:.88}}
.chips-sticky{position:sticky;top:var(--header-height);z-index:5;background:var(--wm-night);padding:8px 0}
@media(min-width:960px){.chips-sticky{position:static;padding:0}}
@media(max-width:959px){.bento--strip{grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-bottom:4px}.bento--strip::-webkit-scrollbar{display:none}.bento--strip>*{scroll-snap-align:start;min-height:300px!important}}

/* ---------- общее ---------- */
.wm-skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--wm-white);color:var(--wm-night);padding:var(--space-3) var(--space-4);font-weight:600}
.wm-skip:focus{left:8px}
.wm-icon--xs{width:14px;height:14px}
.wm-stack,.wm-stack-24{display:flex;flex-direction:column;gap:var(--space-6)}
.wm-stack{gap:20px}
.wm-stack-12{display:flex;flex-direction:column;gap:var(--space-3)}
.wm-stack-16{display:flex;flex-direction:column;gap:var(--space-4)}
.wm-stack-40{display:flex;flex-direction:column;gap:40px}
.wm-btns{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}
.wm-row-acts{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center}
.wm-afisha-foot{display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;align-items:center}
.wm-page-top{padding-top:var(--space-8)}
@media(min-width:960px){.wm-page-top{padding-top:var(--space-12)}}
.wm-back{margin-bottom:var(--space-2)}
.wm-segset{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:6px}
.wm-hidden-nick{display:inline-flex;align-items:center;gap:6px;color:var(--wm-grey)}
.wm-num{font-variant-numeric:tabular-nums}
.wm-ok{color:var(--wm-success);font-weight:600}
.wm-warn{color:var(--wm-warning);font-weight:600}
.wm-count{margin-left:auto;min-width:22px;height:22px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--wm-field-line);font-family:var(--font-display);font-size:12px;color:var(--wm-grey)}
.wm-count--on{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}
.wm-demo-note{font-size:13px;line-height:1.45;color:var(--wm-grey);border-left:2px solid var(--wm-field-line);padding-left:var(--space-3)}
.wm-demo{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--wm-field-line);background:var(--wm-surface)}
.wm-demo__t{display:flex;gap:var(--space-2);align-items:center;font-size:13px;color:var(--wm-grey)}
@media(max-width:959px){.wm-desk{display:none!important}}
@media(min-width:960px){.wm-mobonly{display:none!important}}
.wm-narrow{max-width:640px;display:flex;flex-direction:column;gap:var(--space-4)}
.wm-narrow--wide{max-width:860px}
.wm-filter-empty[hidden]{display:none}
.wm-empty__a{margin-top:var(--space-2)}

/* бренд: знак + словесная марка */
.wm-brand{gap:10px}
.wm-brand img{height:32px;width:auto}
@media(min-width:960px){.wm-brand img{height:38px}}
.wm-header .wm-brand span{display:none}
@media(min-width:360px){.wm-header .wm-brand span{display:inline}}

/* ---------- первый экран с фото ---------- */
.hero__ph{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--wm-scrim-60) 0%,var(--wm-scrim-80) 45%,var(--wm-night) 100%)}
@media(min-width:960px){.hero__ph::after{background:linear-gradient(to right,var(--wm-night) 0%,var(--wm-scrim-80) 45%,var(--wm-scrim-60) 100%),linear-gradient(to bottom,transparent 60%,var(--wm-night) 100%)}}
.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.hero__img--d{display:none}
@media(min-width:960px){.hero__img--d{display:block}.hero__img--m{display:none}}
.hero>*{position:relative;z-index:1}
.hero>.hero__ph{position:absolute;inset:0;z-index:0}
.hero.wm-grain::after{z-index:1}
.hero__logo{width:112px;height:auto;margin-bottom:var(--space-2)}
@media(min-width:960px){.hero__logo{width:150px}}
.hero__lead{max-width:460px;color:var(--wm-white)}
.hero__acts{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

/* снимки в блоках */
.wm-photo{display:block}
.first__ph{margin-top:var(--space-8);aspect-ratio:4/3}
.turnkey__ph{margin-top:var(--space-8);aspect-ratio:16/10}
@media(max-width:959px){.first__ph{display:none}}
.wm-photo__text{color:var(--wm-white)}
.wm-format--ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:var(--photo-tone)}
.wm-format--ph::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--wm-scrim-60) 0%,var(--wm-scrim-60) 25%,var(--wm-scrim-80) 55%,var(--wm-night) 100%);z-index:0}
.wm-report:has(img)::before{background:linear-gradient(to bottom,var(--wm-scrim-60) 0%,var(--wm-scrim-60) 30%,var(--wm-scrim-80) 60%,var(--wm-night) 100%)}
.wm-shelf::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,var(--wm-scrim-60) 0%,transparent 30%,transparent 50%,var(--wm-scrim-80) 100%);pointer-events:none}
.wm-shelf img{opacity:.85}
.wm-format>*{position:relative;z-index:1}
.wm-format--ph>img{z-index:0}
.wm-package__p small{display:block;font-family:var(--font-text);font-size:12px;font-weight:400;color:var(--wm-grey);text-align:right}
.wm-review--empty{background:var(--spot-lamp);justify-content:space-between;color:var(--wm-grey)}
.wm-review__ph{position:relative;z-index:1;font-family:var(--font-display);font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--wm-grey);padding:var(--space-2)}
.wm-map{overflow:hidden}
.wm-map .wm-eyebrow{position:relative;z-index:1;color:var(--wm-white)}
.wm-trophy--side{align-items:flex-start}
.wm-shelf--lg{width:min(100%,360px)}

/* ---------- подвал и меню ---------- */
.wm-footer ul{display:flex;flex-direction:column}
.wm-footer__logo{width:96px;height:auto}
.wm-footer__demo{display:block;margin-top:var(--space-3);color:var(--wm-grey-2)}
.wm-footer__demo a{color:var(--wm-grey-2)!important;text-decoration:underline;text-underline-offset:3px}
.wm-footer--nobar{padding-bottom:var(--space-12)}
dialog.wm-menu{border:0;margin:0;max-width:none;max-height:none;width:100%;height:100%;color:var(--wm-white)}
dialog.wm-menu:not([open]){display:none}
dialog.wm-menu::backdrop{background:var(--wm-night)}
.wm-menu[open]{animation:wm-fade var(--motion-reveal) var(--motion-ease)}
@keyframes wm-fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.wm-menu[open]{animation:none}}
.wm-menu--page{position:relative;min-height:100dvh}
.wm-menu__foot .wm-link{align-self:flex-start}

/* ---------- афиша и строки ---------- */
.wm-row__m-se{display:inline}
@media(min-width:960px){.wm-row__m-se{display:none}}
.wm-row__se--few,.wm-row__se--few b{color:var(--wm-warning)}
.wm-row[data-state="few"] .wm-row__m-se{color:var(--wm-warning)}
.wm-row__mine{color:var(--wm-success);font-weight:600}
.wm-row:hover .wm-row__t{color:var(--wm-grey)}
.wm-row[data-state="full"] .wm-row__d,.wm-row[data-state="waitlist"] .wm-row__d{color:var(--wm-grey)}
.wm-monthnav{display:flex;align-items:center;gap:var(--space-4)}
.wm-monthnav .wm-h3{min-width:180px;text-align:center}
.wm-monthnav [aria-disabled="true"]{color:var(--wm-field-line);pointer-events:none;border-color:var(--wm-line)}
a.wm-chip{text-decoration:none}

/* ---------- рейтинг ---------- */
.wm-reg--line{display:flex;align-items:center;justify-content:center;min-height:40px;border-bottom:1px solid var(--wm-field-line);font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
a.wm-reg:hover .wm-reg__nick{color:var(--wm-grey)}
.wm-av svg{width:70%;height:70%;color:var(--wm-grey)}
.wm-avatar--lg.wm-av svg{color:var(--wm-white)}
.wm-av-icon{width:60%;height:60%}
.wm-search{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:flex-end;margin-bottom:var(--space-4)}
.wm-search .wm-field{flex:1 1 220px}
.wm-pager{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-4)}
.wm-pager div{display:flex;flex-wrap:wrap;gap:4px}
.wm-pager__p{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;border:1px solid var(--wm-field-line);text-decoration:none;font-family:var(--font-display);font-variant-numeric:tabular-nums}
.wm-pager__p[aria-current]{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}
.wm-myplace__n{display:flex;align-items:center;gap:var(--space-3)}
.wm-myplace__n b{font-family:var(--font-display);font-weight:700;font-size:56px;line-height:1;font-variant-numeric:tabular-nums}
.wm-myplace__n span{font-size:14px;color:var(--wm-grey)}
.wm-seasons{display:grid;gap:var(--space-3)}
@media(min-width:720px){.wm-seasons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.wm-season--link{text-decoration:none;color:inherit}
.wm-season--link:hover{border-color:var(--wm-white)}
.wm-trophy-wrap{padding:var(--space-6) 0}
.wm-awards{display:flex;flex-wrap:wrap;gap:4px var(--space-4);margin-top:var(--space-2)}

/* ---------- страницы с колонками ---------- */
.wm-pagehead{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}
.wm-pagehead .wm-h1,.wm-pagehead .wm-h2{margin-top:var(--space-3)}
.wm-tabs{display:flex;gap:var(--space-6);overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--wm-line)}
.wm-tabs::-webkit-scrollbar{display:none}
.wm-tabs a{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:var(--tap-min);color:var(--wm-grey);text-decoration:none;font-weight:500;font-size:15px;border-bottom:2px solid transparent;margin-bottom:-1px}
.wm-tabs a:hover{color:var(--wm-white)}
.wm-tabs a[aria-current]{color:var(--wm-white);font-weight:600;border-bottom-color:var(--wm-white)}
.wm-cols{display:grid;gap:var(--space-8)}
@media(min-width:1100px){.wm-cols{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}
.wm-cols__side{display:flex;flex-direction:column;gap:var(--space-4)}
.wm-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--wm-surface);border:1px solid var(--wm-line)}
@media(min-width:960px){.wm-card{padding:var(--space-6)}}
.wm-card--link{text-decoration:none;color:inherit}
.wm-card--link:hover{border-color:var(--wm-field-line)}
.wm-rules{display:flex;flex-direction:column}
.wm-rules li{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) 0;border-top:1px solid var(--wm-line);font-size:14px}
.wm-rules li b{font-weight:600}
.wm-rules li span{color:var(--wm-grey)}
.wm-stats--4{border-top:0}
.wm-stats--4 b{font-size:28px}
@media(min-width:960px){.wm-stats--4 b{font-size:40px}.wm-stats--4 li{padding-top:var(--space-4);padding-bottom:var(--space-4)}}
.wm-reports{display:grid;gap:var(--space-3)}
@media(min-width:720px){.wm-reports{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.wm-reports{grid-template-columns:repeat(3,minmax(0,1fr))}}
.wm-reports .wm-report{min-height:360px}
.wm-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
@media(min-width:960px){.wm-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}}
.wm-gallery__it{aspect-ratio:3/4}
.wm-gallery__it--big{grid-column:1/-1;aspect-ratio:16/10}
@media(min-width:960px){.wm-gallery__it--big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}}
.wm-gallery .wm-photo::before{background:linear-gradient(to bottom,transparent 70%,var(--wm-scrim-60) 100%)}
.wm-prose{display:flex;flex-direction:column;gap:var(--space-4)}
.wm-prose .wm-h3{margin-top:var(--space-6);scroll-margin-top:96px}
.wm-docnav{display:flex;flex-direction:column}
.wm-gamepage{display:grid;gap:var(--space-6)}
@media(min-width:960px){.wm-gamepage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-12);align-items:start}.wm-gamepage>.wm-game{position:sticky;top:96px}}
.wm-game__title{font-size:44px}
.wm-game .wm-btn+.wm-link{align-self:center}
.wm-lead--done{gap:var(--space-4)}
.wm-error{min-height:60vh}

/* ---------- шаги: вход, запись, оплата ---------- */
.is-flow .wm-page{background:var(--wm-night)}
.wm-flowhead{justify-content:space-between;padding:0 4px}
.wm-flowhead .wm-brand span{display:none}
@media(min-width:960px){.wm-flowhead{padding:0 var(--grid-desktop-margin)}.wm-flowhead .wm-brand span{display:inline}}
.wm-flow{flex:1;display:flex;flex-direction:column;justify-content:flex-end}
@media(min-width:960px){.wm-flow{justify-content:center;align-items:center;padding:var(--space-12) var(--grid-desktop-margin)}.wm-flow--2{display:grid;grid-template-columns:minmax(0,560px) minmax(0,400px);justify-content:center;align-items:stretch;gap:0}}
.wm-flow__panel{display:flex;flex-direction:column;gap:var(--space-4);background:var(--wm-surface);box-shadow:var(--shadow-sheet);padding:var(--space-2) var(--space-4) calc(var(--space-8) + env(safe-area-inset-bottom));width:100%}
@media(min-width:960px){.wm-flow__panel{max-width:560px;padding:var(--space-8);box-shadow:var(--shadow-lamp)}}
.wm-flow__panel .wm-sheet__grab{margin-top:var(--space-2)}
@media(min-width:960px){.wm-flow__panel .wm-sheet__grab{display:none}}
.wm-flow__aside{display:none}
@media(min-width:960px){.wm-flow__aside{display:flex;flex-direction:column;background:var(--wm-surface-2);padding:var(--space-8);gap:var(--space-4)}}
.wm-flow__aside .wm-flow__ph{margin:calc(-1 * var(--space-8));flex:1;min-height:420px}
.wm-flow__ph .wm-photo__text{padding:var(--space-8)}
.wm-ticks{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-4);font-size:14px;color:var(--wm-grey)}
.wm-ticks li::before{content:"— "}
.wm-or{display:flex;align-items:center;gap:var(--space-3);color:var(--wm-grey);font-size:13px}
.wm-or::before,.wm-or::after{content:"";flex:1;height:1px;background:var(--wm-line)}
.wm-orgentry{border-top:1px solid var(--wm-line);padding-top:var(--space-4);display:flex;flex-direction:column;gap:4px}
.wm-orgentry .wm-btn--text{padding:0;height:var(--tap-min)}
.wm-sum{display:flex;flex-direction:column;gap:var(--space-3)}
.wm-sum__t{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase}
.wm-check{display:flex;gap:var(--space-3);align-items:flex-start;min-height:var(--tap-min);padding:10px 0;cursor:pointer;font-size:15px;text-decoration:none;color:inherit}
.wm-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--wm-white);flex:none}
.wm-check.is-invalid input{outline:2px solid var(--wm-error);outline-offset:2px}
.wm-check.is-static{cursor:default;color:var(--wm-grey)}
.wm-check__box{width:20px;height:20px;border:1px solid var(--wm-field-line);background:var(--wm-surface-2);display:inline-flex;align-items:center;justify-content:center;flex:none}
.wm-check--link[aria-checked="true"] .wm-check__box{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}
.wm-avpick{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2)}
.wm-avpick__opt{position:relative;display:flex;justify-content:center;padding:6px 0;cursor:pointer}
.wm-avpick__opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.wm-avpick__opt>span:first-of-type{display:inline-flex;border-radius:var(--radius-full);outline:2px solid transparent;outline-offset:3px}
.wm-avpick__opt input:checked+span{outline-color:var(--wm-white)}
.wm-avpick__opt input:focus-visible+span{box-shadow:var(--focus-ring)}
.wm-switch{width:100%}
.wm-switch__label{flex:1;display:flex;flex-direction:column}
.wm-switch__hint{font-size:13px;color:var(--wm-grey)}
.wm-pick{display:flex;flex-direction:column;gap:var(--space-2)}
.wm-pick__opt{position:relative;display:block;cursor:pointer}
.wm-pick__opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.wm-pick__opt>span{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--wm-field-line);min-height:56px}
.wm-pick__opt>span span{font-size:14px;color:var(--wm-grey)}
.wm-pick__opt>span small{font-size:13px;color:var(--wm-grey)}
.wm-pick__opt input:checked+span{border-color:var(--wm-white);background:var(--wm-surface-3)}
.wm-pick__opt input:focus-visible+span{outline:2px solid var(--wm-white);outline-offset:2px}
.wm-booking dd .wm-badge{margin-left:4px}
dl.wm-booking{gap:0}
dl.wm-booking>div{display:flex;justify-content:space-between;gap:var(--space-4);min-height:40px;align-items:center;border-top:var(--hairline) solid var(--wm-line);font-size:14px;padding:6px 0}
dl.wm-booking>div:last-child{border-bottom:var(--hairline) solid var(--wm-line)}
a.wm-balance{text-decoration:none;color:inherit}
a.wm-balance:hover{border-color:var(--wm-white)}
.wm-nextcab .wm-btn{width:auto;margin-top:0}
.wm-nextcab .wm-btns{margin-top:var(--space-2)}

/* ---------- кабинет ---------- */
.is-cab{background:var(--wm-night)}
.wm-cabinet{align-items:start}
@media(min-width:960px){.wm-sidenav{position:sticky;top:0;height:100dvh;overflow-y:auto}.wm-sidenav .wm-brand{padding:0 var(--space-6) var(--space-4)}}
.wm-sidenav__me{text-decoration:none;color:inherit;border-left:0!important;min-height:auto!important;background:none!important}
.wm-sidenav__me span{display:flex;flex-direction:column;line-height:1.3}
.wm-sidenav__me b{font-family:var(--font-display);font-weight:500;font-size:16px;letter-spacing:.04em;text-transform:uppercase;color:var(--wm-white)}
.wm-sidenav__me small{font-size:12px;color:var(--wm-grey)}
.wm-sidenav__foot{display:flex;flex-direction:column}
.wm-sidenav__foot a,.wm-sidenav__btn{padding:0!important;border-left:0!important}
.wm-sidenav__btn{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap-min);background:none;border:0;color:var(--wm-grey);font-size:15px;cursor:pointer;padding:0;width:100%;text-align:left}
.wm-sidenav__btn:hover{color:var(--wm-white)}
.wm-sidenav a.wm-sidenav__demo{font-size:13px;color:var(--wm-grey-2);text-decoration:underline;text-underline-offset:3px}
.wm-cab__col{min-width:0;display:flex;flex-direction:column;min-height:100dvh}
.wm-cabhead{position:sticky;top:0;padding:0 4px}
.wm-cabhead form{display:contents}
@media(min-width:960px){.wm-cabhead{display:none}}
.wm-cabhead__mark{display:inline-flex;align-items:center;min-height:var(--tap-min);padding:0 var(--space-3)}
.wm-cabhead__mark img{height:30px;width:auto}
.wm-cabhead__t{flex:1;text-align:center;font-family:var(--font-display);font-size:16px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wm-bell{position:relative}
.wm-bell__n{position:absolute;top:6px;right:4px;min-width:18px;height:18px;padding:0 4px;background:var(--wm-white);color:var(--wm-night);font-family:var(--font-display);font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
.wm-cab__main{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-4) var(--grid-phone-margin) calc(var(--tabbar-height) + var(--space-12) + env(safe-area-inset-bottom));width:100%;max-width:1320px}
@media(min-width:960px){.wm-cab__main{padding:var(--space-8) var(--grid-desktop-margin) var(--space-16)}}
.wm-cab__head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}
.wm-cab__head .wm-h2{margin-top:6px}
.wm-cab__headbtn{display:none}
@media(min-width:960px){.wm-cab__headbtn{display:inline-flex}}
.wm-tabbar--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.wm-tabbar a span{white-space:nowrap}
.wm-dash{display:grid;gap:var(--space-6)}
@media(min-width:1100px){.wm-dash{grid-template-columns:minmax(0,1fr) 360px;align-items:start}}
.wm-nextcab{padding-top:var(--space-2);padding-bottom:var(--space-2)}
.wm-nextcab .wm-booking{margin:var(--space-2) 0}
.wm-justbooked{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--wm-success);background:var(--wm-surface)}
.wm-justbooked .wm-notice{border:0;padding:0;background:none;font-size:15px}
.wm-justbooked__list{display:flex;flex-direction:column;gap:var(--space-2);font-size:14px;color:var(--wm-grey)}
.wm-justbooked__list li{display:flex;gap:var(--space-3);align-items:flex-start}
.wm-justbooked__list .wm-icon{color:var(--wm-white);flex:none}
.wm-cert{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--wm-white);background:var(--wm-surface);flex-wrap:wrap}
.wm-notes{display:flex;flex-direction:column}
.wm-notes li{border-top:1px solid var(--wm-line)}
.wm-notes a,.wm-notes li>div{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) 0;text-decoration:none;color:inherit;min-height:56px}
.wm-notes b{font-weight:600;font-size:15px}
.wm-notes span{font-size:14px;color:var(--wm-grey)}
.wm-notes small{font-size:12px;color:var(--wm-grey-2)}
.wm-notes li.is-new b::before{content:"";display:inline-block;width:6px;height:6px;border-radius:var(--radius-full);background:var(--wm-white);margin-right:8px;vertical-align:middle}
.wm-notes a:hover b{color:var(--wm-grey)}
.wm-notes--page li{padding:0}
.wm-history__pt.is-plus{color:var(--wm-success)}
.wm-tourcard .wm-h3{color:var(--wm-white)}
.wm-profile-foot{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center;border-top:1px solid var(--wm-line);padding-top:var(--space-4)}
.wm-profile{flex-wrap:wrap}

/* игры: фильтры | список | карточка */
.wm-games3{display:grid;gap:var(--space-6)}
@media(min-width:960px){.wm-games3{grid-template-columns:200px minmax(0,1fr);gap:var(--space-8);align-items:start}}
@media(min-width:1280px){.wm-games3{grid-template-columns:170px minmax(0,1fr) 360px;gap:var(--space-6)}}
.wm-filters{display:none}
@media(min-width:960px){.wm-filters{display:flex;flex-direction:column;gap:var(--space-3);position:sticky;top:var(--space-8)}}
.wm-flist{display:flex;flex-direction:column;margin-bottom:var(--space-3)}
.wm-flist a{display:flex;justify-content:space-between;align-items:center;min-height:40px;padding:0 var(--space-3);text-decoration:none;color:var(--wm-grey);font-size:15px;border-left:2px solid transparent}
.wm-flist a:hover{color:var(--wm-white)}
.wm-flist a[aria-current]{color:var(--wm-white);font-weight:600;border-left-color:var(--wm-white);background:var(--wm-surface)}
.wm-gcard{display:none}
@media(min-width:1280px){.wm-gcard{display:flex;flex-direction:column;gap:var(--space-6);position:sticky;top:var(--space-8);max-height:calc(100dvh - 64px);overflow-y:auto;scrollbar-width:thin}}
.wm-gcard .wm-game{min-height:300px}
.wm-gcard .wm-game__title{font-size:36px}
.wm-seglinks{display:flex}
.wm-seglinks a{display:inline-flex;align-items:center;min-height:var(--control-height-small);padding:0 var(--space-4);border:1px solid var(--wm-field-line);text-decoration:none;font-size:14px;font-weight:600}
.wm-seglinks a+a{border-left:0}
.wm-seglinks a[aria-current]{background:var(--wm-white);color:var(--wm-night);border-color:var(--wm-white)}
.wm-glist .wm-row{grid-template-columns:72px minmax(0,1fr) auto}
@media(min-width:960px){.wm-glist .wm-row{grid-template-columns:96px minmax(0,1fr) 130px 130px;gap:var(--space-4);padding:var(--space-4) 0;min-height:64px}.wm-glist .wm-row__pl{display:none}.wm-glist .wm-row__d{font-size:28px}.wm-glist .wm-row__t{font-size:20px}}
@media(min-width:1280px){.wm-glist .wm-row{grid-template-columns:84px minmax(0,1fr) 112px}.wm-glist .wm-row__ac{display:none}}
.wm-cal{border:1px solid var(--wm-line)}
.wm-cal__h,.wm-cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.wm-cal__h span{padding:var(--space-2);font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey);border-bottom:1px solid var(--wm-line)}
.wm-cal__c{min-height:96px;padding:6px;border-right:1px solid var(--wm-line);border-bottom:1px solid var(--wm-line);display:flex;flex-direction:column;gap:4px}
.wm-cal__c:nth-child(7n){border-right:0}
.wm-cal__c.is-empty{background:var(--wm-surface)}
.wm-cal__c.is-today .wm-cal__d{background:var(--wm-white);color:var(--wm-night)}
.wm-cal__d{align-self:flex-start;font-family:var(--font-display);font-size:14px;padding:0 4px;color:var(--wm-grey)}
.wm-cal__c.has-games .wm-cal__d{color:var(--wm-white)}
.wm-cal__g{display:flex;flex-direction:column;padding:4px 6px;background:var(--wm-surface-2);text-decoration:none;font-size:12px;line-height:1.25;color:var(--wm-white);border-left:2px solid var(--wm-field-line)}
.wm-cal__g small{color:var(--wm-grey)}
.wm-cal__g:hover,.wm-cal__g.is-sel{border-left-color:var(--wm-white);background:var(--wm-surface-3)}
/* мои записи */
.wm-bklist{display:flex;flex-direction:column}
.wm-bk{border-bottom:1px solid var(--wm-line);padding-bottom:var(--space-3)}
.wm-bk__main{display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-4) 0 var(--space-2);text-decoration:none;color:inherit;min-height:64px}
.wm-bk__main:hover .wm-row__t{color:var(--wm-grey)}
.wm-row__go2{color:var(--wm-grey)}
.wm-bk__acts{display:flex;gap:var(--space-2);flex-wrap:wrap;padding-left:0}
@media(min-width:720px){.wm-bk__acts{padding-left:100px}}
.wm-bk__acts form{display:contents}
/* шторка, загружаемая со страницы */
.wm-sheet .wm-sheetbody{display:flex;flex-direction:column;gap:var(--space-6);margin-top:var(--space-4)}
.wm-sheet .wm-game{min-height:280px}
.wm-sheet .wm-game__title{font-size:36px}
.wm-sheet-load{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) 0}

/* ---------- организатор ---------- */
.wm-orgbadge{margin-bottom:calc(-1 * var(--space-3))}
.wm-table{display:flex;flex-direction:column;border-top:1px solid var(--wm-field-line)}
.wm-tr{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,auto);gap:var(--space-3);align-items:center;min-height:60px;padding:var(--space-2) 0;border-bottom:1px solid var(--wm-line);text-decoration:none;color:inherit;font-size:14px}
@media(min-width:960px){.wm-tr{grid-template-columns:110px minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}}
a.wm-tr:hover{background:var(--wm-surface)}
.wm-tr small{display:block;font-size:12px;color:var(--wm-grey)}
.wm-tr b{font-weight:600}
.wm-tr--head{min-height:36px;font-family:var(--font-display);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--wm-grey)}
.wm-tr--roster{grid-template-columns:40px minmax(0,1fr) auto auto}
@media(min-width:960px){.wm-tr--roster{grid-template-columns:48px minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) 110px}}
.wm-tr--roster form{display:contents}
.wm-tr--players{grid-template-columns:minmax(0,1fr) 64px 84px}
@media(min-width:960px){.wm-tr--players{grid-template-columns:minmax(0,1.6fr) 90px 140px 90px minmax(0,1fr)}}
.wm-tcell-av{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.wm-fill{display:flex;flex-direction:column;gap:4px;min-width:90px}
.wm-fill span{font-size:12px;color:var(--wm-grey);font-variant-numeric:tabular-nums}
.wm-table--results .wm-tr{grid-template-columns:minmax(0,1fr) minmax(130px,180px) 64px}
.wm-field--tight .wm-field__control{min-height:var(--control-height-small)}
.wm-field--tight select{height:calc(var(--control-height-small) - 2px)!important;font-size:15px}
.wm-table--results .wm-check{padding:0;align-items:center;font-size:13px;color:var(--wm-grey)}

/* всплывающее сообщение */
.wm-toast .wm-notice{box-shadow:none}
.wm-toast.is-out{opacity:0;transition:opacity var(--motion-press) linear}
.is-cab .wm-toast{bottom:calc(var(--tabbar-height) + 16px + env(safe-area-inset-bottom))}
@media(min-width:960px){.is-cab .wm-toast{bottom:48px}}

/* цели нажатия от 44px на телефоне */
@media(max-width:959px){.wm-link--inline{display:inline-block;min-height:24px}.wm-footer__legal a{display:inline-block;min-height:28px;padding:4px 0}}

/* рейтинг внутри узкой карточки */
.wm-card .wm-reg{grid-template-columns:40px 28px minmax(0,1fr) 56px;gap:var(--space-2);min-height:48px}
.wm-card .wm-reg__rank{font-size:26px}
.wm-card .wm-reg__games{display:none}
.wm-card .wm-reg__nick{font-size:16px}
.wm-link{min-width:44px}
.wm-tabs a{min-width:44px;justify-content:center}

@media(min-width:960px){.split--faq{grid-template-columns:4fr 8fr}}
.wm-cols>*,.wm-dash>*,.wm-games3>*,.split>*{min-width:0}
.wm-monthnav .wm-iconbtn{flex:none}
.wm-monthnav .wm-h3{min-width:0;flex:1}
@media(min-width:720px){.wm-monthnav .wm-h3{flex:none;min-width:180px}}
@media(max-width:419px){.wm-avpick{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:959px){.wm-top__stack.wm-btn{justify-self:start}}

/* Первый экран умещается в окно без прокрутки (правка владельца 03.11) */
.hero .wm-poster{font-size:min(15.5vw,10.8svh);line-height:.88}
.hero .wm-poster em{line-height:.9}
.hero__logo{display:none}
.hero{height:calc(100svh - var(--header-height));min-height:0;padding-top:12px;padding-bottom:12px}
.hero .stage{padding-top:8px;gap:10px;min-height:0}
.hero .wm-next{margin-top:12px;padding-top:10px;padding-bottom:12px}
.hero .wm-next .wm-who{display:none}
.hero .wm-next .wm-seats{margin:6px 0 8px}
.hero .wm-next .wm-btn{min-height:48px}
.hero .wm-next .wm-h2{font-size:min(7vw,3.6svh)}
.hero .wm-next .wm-small{font-size:13px;line-height:1.3}
.hero__lead{font-size:15px;line-height:1.35}
.hero__acts .wm-btn--secondary{display:none}
.hero__acts .wm-link{min-height:44px;display:inline-flex;align-items:center}
@media(max-height:560px){.hero__lead{display:none}.hero .wm-top{display:none}.hero .wm-next .wm-small{display:none}}
@media(min-width:960px){
  .hero{height:calc(100svh - var(--header-height-desktop));padding-top:clamp(16px,3svh,32px);padding-bottom:clamp(16px,3.5svh,40px)}
  .hero .wm-poster{font-size:min(10.4vw,21svh)}
  .hero .stage{padding-top:0;gap:clamp(8px,1.6svh,20px)}
  .hero .wm-next .wm-who{display:flex}
  .hero .wm-next .wm-h2{font-size:clamp(24px,4.4svh,38px)}
  .hero__acts .wm-btn--secondary{display:inline-flex}
  .hero__lead{font-size:clamp(14px,2svh,17px);line-height:1.4}
}
@media(min-width:960px) and (max-height:700px){.hero .wm-next .wm-who{display:none}.hero .wm-top{display:none}}

@media(max-width:400px){.wm-btn{white-space:normal;height:auto;min-height:var(--control-height);padding-top:10px;padding-bottom:10px;text-align:center;line-height:1.2}}
.wm-cal__grid>*{min-width:0}
.wm-cal__g{overflow:hidden;overflow-wrap:anywhere}
@media(max-width:719px){.wm-cal__c{min-height:64px;padding:3px}.wm-cal__g{padding:3px;font-size:11px}.wm-cal__n,.wm-cal__g small{display:none}.wm-cal__h span{padding:6px 2px;letter-spacing:.06em}}

/* «Афиша» целиком, приём заголовка-афиши вместо заслонённого слова (правка владельца 03.11) */
.wm-occ{--occ-size:min(26.5vw,40svh);overflow:hidden}
.wm-occ__word{position:static;display:block;padding:var(--space-8) var(--grid-phone-margin) 0;font-size:var(--occ-size);line-height:.92;white-space:nowrap}
.wm-occ__front{margin-top:0;background:transparent}
.wm-occ__front[style]{padding-top:0!important}
.wm-afisha-sub{font-size:clamp(34px,5.4vw,84px);line-height:1}
.wm-afisha-sub em{top:0;font-size:1em;color:var(--wm-champagne)}
@media(min-width:960px){.wm-occ__word{padding:var(--space-12) var(--grid-desktop-margin) 0}}
@media(min-width:960px){.hero .wm-poster{margin-bottom:.1em}}
#afisha{scroll-margin-top:var(--header-height)}
.wm-occ .wm-top{margin-top:var(--space-3);align-items:flex-end}
@media(min-width:960px){#afisha{scroll-margin-top:var(--header-height-desktop)}.wm-occ__word{padding-left:calc(max(0px,(100vw - 1280px)/2) + var(--grid-desktop-margin))}}

/* Игры и расписание: список на всю ширину, карточка игры в окне по центру (правка владельца 03.11) */
@media(min-width:1280px){.wm-games3{grid-template-columns:200px minmax(0,1fr);gap:var(--space-8)}
  .wm-glist .wm-row{grid-template-columns:112px minmax(0,1.5fr) minmax(0,1fr) 150px 160px;gap:var(--space-4)}
  .wm-glist .wm-row__pl{display:block}.wm-glist .wm-row__ac{display:inline-flex}}
@media(min-width:960px){.wm-glist .wm-row__d{white-space:nowrap}.wm-glist .wm-row{grid-template-columns:112px minmax(0,1fr) 130px 150px}.wm-glist .wm-row__ac{justify-self:end}}
@media(min-width:1280px){.wm-glist .wm-row{grid-template-columns:112px minmax(0,1.5fr) minmax(0,1fr) 150px 160px}}
.wm-gamemodal::backdrop{background:#0a0a0a8c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.wm-gamemodal .wm-game__foot>.wm-btn,.wm-gamemodal .wm-game__foot>.wm-link{display:none}
.wm-gamemodal .wm-sheet__head{align-items:center}
.wm-gamemodal #sheet-t:focus{outline:none}
.wm-modalcta{position:sticky;bottom:calc(-1*var(--space-6) - env(safe-area-inset-bottom));margin:var(--space-4) calc(-1*var(--space-4)) calc(-1*var(--space-6) - env(safe-area-inset-bottom));padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--wm-surface);border-top:1px solid var(--wm-line);display:flex;flex-direction:column;gap:var(--space-2);z-index:2}
.wm-modalcta .wm-link{align-self:center}
@media(min-width:960px){
  .wm-gamemodal{inset:0;margin:auto;width:min(960px,calc(100vw - 64px));height:fit-content;max-height:min(90svh,780px);overflow:hidden;box-shadow:var(--shadow-lamp)}
  .wm-gamemodal[open]{display:flex;flex-direction:column;animation:wm-modal var(--motion-sheet) var(--motion-ease)}
  .wm-gamemodal .wm-sheet__in{display:flex;flex-direction:column;min-height:0;padding:var(--space-4) var(--space-6) 0;flex:1}
  .wm-gamemodal [data-sheet-body]{display:flex;flex-direction:column;min-height:0;flex:1}
  .wm-gamemodal .wm-sheetbody{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-6);align-items:start;overflow-y:auto;min-height:0;flex:1;margin-top:var(--space-2);padding-bottom:var(--space-4);scrollbar-width:thin}
  .wm-gamemodal .wm-sheetbody>.wm-game{position:sticky;top:0}
  .wm-modalcta{position:static;margin:0 calc(-1*var(--space-6));padding:var(--space-4) var(--space-6);flex-direction:row;justify-content:flex-end;align-items:center;gap:var(--space-4);flex:none}
  .wm-modalcta .wm-btn{width:auto;min-width:300px}
}
@keyframes wm-modal{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.wm-gamemodal[open]{animation:none}}

/* порядок слоёв: снимок → затемнение → текст */
.wm-report img,.wm-format--ph>img{z-index:0!important}
.wm-report::before,.wm-format--ph::before{z-index:1!important}
.wm-report>*:not(img),.wm-format--ph>*:not(img){z-index:2}
.wm-history__t,.wm-history__m{display:block}

/* компактный список игр на главной кабинета и даты в «Моих записях» */
@media(min-width:960px){.wm-glist--compact .wm-row,.wm-glist.wm-glist--compact .wm-row{grid-template-columns:96px minmax(0,1fr) 120px 140px!important}.wm-glist--compact .wm-row__pl{display:none!important}.wm-glist--compact .wm-row__ac{display:inline-flex!important}}
@media(min-width:960px){.wm-bk .wm-row__d{font-size:28px;white-space:nowrap}.wm-bk__main{grid-template-columns:110px minmax(0,1fr) auto}}
@media(min-width:720px){.wm-bk__acts{padding-left:122px}}

.wm-history li>span:nth-child(2){min-width:0}
.wm-history__t+.wm-history__m{margin-top:2px}

/* Окно игры на телефоне: кнопка записи всегда видна; нижняя часть меню кабинета без прокрутки (правки владельца 03.11) */
@media(max-width:959px){
  .wm-gamemodal .wm-sheet__in{padding-bottom:0}
  .wm-modalcta{bottom:0;margin:var(--space-4) calc(-1*var(--space-4)) 0}
}
@media(min-width:960px){
  .wm-sidenav{position:sticky;top:0;height:100vh;height:100dvh;min-height:0;overflow-y:auto;align-self:start;padding-top:var(--space-4);padding-bottom:var(--space-3);scrollbar-width:thin}
  .wm-sidenav__foot{margin-top:auto;padding:var(--space-2) var(--space-6) 0;border-top:var(--hairline) solid var(--wm-line)}
  .wm-sidenav a.wm-sidenav__demo{min-height:32px}
}
@media(min-width:960px) and (max-height:780px){
  .wm-sidenav{gap:0}
  .wm-sidenav a,.wm-sidenav__btn{min-height:40px}
  .wm-sidenav .wm-brand{padding-bottom:var(--space-2)}
  .wm-sidenav__me{padding-bottom:var(--space-2);margin-bottom:0}
}
@media(min-width:960px) and (max-height:640px){.wm-sidenav a,.wm-sidenav__btn{min-height:34px;font-size:14px}.wm-sidenav__me{display:none}.wm-sidenav a.wm-sidenav__demo{min-height:26px}}

/* всплывающее сообщение не закрывает главную кнопку: на телефоне — сверху под шапкой */
@media(max-width:959px){.wm-toast{top:calc(var(--header-height) + 8px);bottom:auto!important}}

/* Под ключ: фото вверху справа, форма внизу слева (правка владельца 03.11) */
.wm-tk{display:grid;gap:32px}
.wm-tk>*{min-width:0}
.wm-tk .turnkey__ph{margin-top:0}
@media(min-width:960px){
  .wm-tk{grid-template-columns:7fr 5fr;grid-template-areas:"text photo" "form photo";gap:var(--space-8) clamp(32px,5vw,72px);align-items:start}
  .wm-tk__text{grid-area:text}.wm-tk .wm-lead{grid-area:form}
  .wm-tk .wm-tk__photo{grid-area:photo;position:sticky;top:calc(var(--header-height-desktop) + var(--space-4));height:calc(100svh - var(--header-height-desktop) - var(--space-8));aspect-ratio:auto}
  .wm-tk__photo img{width:100%;height:100%;object-fit:cover}
}

/* строка рейтинга: ссылка на ник растянута на всю строку (цель нажатия — вся строка 56–60px) */
.wm-reg{position:relative}
.wm-reg__link{color:inherit;text-decoration:none}
.wm-reg__link::after{content:"";position:absolute;inset:0;z-index:1}
.wm-reg__link:focus-visible{outline:none}
.wm-reg__link:focus-visible::after{outline:var(--focus-width) solid var(--wm-white);outline-offset:-2px}
.wm-reg:hover .wm-reg__nick{color:var(--wm-grey)}
/* выбранный фильтр-ссылка: то же состояние, что у кнопки aria-pressed */
.wm-chip[aria-current="true"]{background:var(--wm-surface-3);border-color:var(--wm-grey)}
.wm-chip[aria-current="true"]::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--wm-white)}
.wm-notes .wm-badge--fill{color:var(--wm-night)}
.wm-report__t{overflow-wrap:anywhere;hyphens:auto}
@media(min-width:960px){.wm-strip .wm-report__t{font-size:clamp(28px,2.5vw,38px)}}

/* Затемнённое фото на заднем плане, как на первом экране: «О клубе» и финал (правка владельца 03.11) */
.wm-bgsec{position:relative;overflow:hidden;isolation:isolate}
.wm-bgsec>*:not(.wm-bgsec__ph){position:relative;z-index:2}
.wm-bgsec.wm-grain::after{z-index:1}
.wm-bgsec__ph{position:absolute;inset:0;z-index:0;pointer-events:none}
.wm-bgsec__ph img{width:100%;height:100%;object-fit:cover;filter:var(--photo-tone);display:block}
.wm-bgsec__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,var(--wm-night) 0%,var(--wm-scrim-80) 22%,var(--wm-scrim-80) 72%,var(--wm-night) 100%)}
@media(min-width:960px){.wm-bgsec__ph::after{background:linear-gradient(to right,var(--wm-night) 0%,var(--wm-scrim-80) 50%,var(--wm-scrim-60) 100%),linear-gradient(to bottom,var(--wm-night) 0%,transparent 22%,transparent 72%,var(--wm-night) 100%)}}
