

body.shell{--shk-key:#66c0f4; --shk-gift:#b48cff}
body.shell .shk-ic{width:18px; height:18px; flex:none}


body.shell .shk-shelf{--acc:var(--shk-key)}
body.shell .shk-shelf.shk-gift{--acc:var(--shk-gift)}
body.shell .shk-shelf .sh-h span{display:flex; align-items:center; gap:8px; min-width:0}
body.shell .shk-shelf .sh-h .shk-ic{width:16px; height:16px; color:var(--acc)}
body.shell .shk-shelf .sh-h small{margin-left:4px; font:600 12px/1 var(--font); letter-spacing:0; text-transform:none; color:var(--sh-mute); white-space:nowrap}
body.shell .shk-all{display:inline-flex; align-items:center; gap:2px; min-height:44px; padding:0 4px 0 10px; border:0; background:none; cursor:pointer; font:700 13px/1 var(--font); letter-spacing:0; text-transform:none; color:var(--cream)}
body.shell .shk-all .shk-ic{width:15px; height:15px}
body.shell .shk-shelf-row{display:grid; grid-auto-flow:column; grid-auto-columns:236px; gap:10px; margin:0 -16px; padding:2px 16px 10px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:16px; scrollbar-width:none; -webkit-overflow-scrolling:touch}
body.shell .shk-shelf-row::-webkit-scrollbar{display:none}
body.shell .shk-sc{position:relative; display:block; aspect-ratio:16 / 9; padding:0; border:0; border-radius:12px; overflow:hidden; cursor:pointer; scroll-snap-align:start; background:var(--stone-deep);
  box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 0 0 1px color-mix(in oklab, var(--acc) 30%, transparent), 0 14px 26px -16px rgba(0,0,0,.95); transition:transform 140ms var(--ease-out)}
body.shell .shk-sc img{width:100%; height:100%; object-fit:cover}
body.shell .shk-sc b{position:absolute; left:0; right:0; bottom:0; padding:26px 10px 8px; font:700 12.5px/1.2 var(--font); color:#fff; text-align:left; overflow-wrap:normal; word-break:normal; hyphens:manual; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; background:linear-gradient(0deg, rgba(0,0,0,.9) 40%, transparent)}
body.shell .shk-sc:active{transform:scale(.97)}

body.shell .shk-cat{--acc:var(--shk-key); background:radial-gradient(70% 90% at 0% 50%, color-mix(in oklab, var(--acc) 18%, transparent), transparent 70%) padding-box, var(--nw-лоск) padding-box, var(--nw-кожа) padding-box, linear-gradient(120deg, color-mix(in oklab, var(--acc) 55%, transparent), var(--nw-нить) 60%) border-box}
body.shell .shk-cat.shk-gift{--acc:var(--shk-gift)}
body.shell .shk-cat-art{position:relative; flex:none; width:58px; height:42px}
body.shell .shk-tc{position:absolute; width:44px; aspect-ratio:16 / 9; border-radius:5px; overflow:hidden; background:var(--stone-deep); box-shadow:0 0 0 1.5px var(--stone-deep), 0 6px 10px -4px rgba(0,0,0,.8)}
body.shell .shk-tc img{width:100%; height:100%; object-fit:cover}
body.shell .shk-tc.i0{left:0; top:2px; z-index:1; transform:rotate(-7deg)}
body.shell .shk-tc.i1{left:7px; top:12px; z-index:2}
body.shell .shk-tc.i2{left:14px; top:22px; z-index:3; transform:rotate(6deg)}


body.shell .shk-wrap{padding:0 0 12px; max-width:1100px; margin-left:auto; margin-right:auto}
body.shell .shk-head{display:flex; flex-direction:column; gap:10px; margin-bottom:12px}
body.shell .shk-switch{display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:4px; border-radius:13px; background:color-mix(in oklab, var(--stone-deep) 84%, transparent); box-shadow:inset 0 0 0 1px var(--nw-нить-ярко)}
body.shell .shk-switch button{display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; border:1px solid transparent; border-radius:10px; background:none; cursor:pointer; font:700 13.5px/1 var(--font); color:var(--sand)}
body.shell .shk-switch button[aria-selected="true"]{color:var(--cream); background:color-mix(in oklab, var(--shk-key) 16%, var(--stone-2)); border-color:color-mix(in oklab, var(--shk-key) 55%, transparent)}
body.shell .shk-switch button[aria-selected="true"]:last-child{background:color-mix(in oklab, var(--shk-gift) 16%, var(--stone-2)); border-color:color-mix(in oklab, var(--shk-gift) 55%, transparent)}
body.shell .shk-switch button[aria-selected="true"] .shk-ic{color:var(--shk-key)}
body.shell .shk-switch button[aria-selected="true"]:last-child .shk-ic{color:var(--shk-gift)}
body.shell .shk-title{margin:6px 0 0; font:800 34px/.95 var(--font-display); letter-spacing:.04em; text-transform:uppercase;
  background:linear-gradient(180deg, #fbfcff 0%, #d9dbea 34%, #8e92b3 50%, #5b5f7d 53%, #e6e8f4 62%, #b4b8d3 82%, #f2f3fa 100%); -webkit-background-clip:text; background-clip:text; color:transparent}
body.shell .shk-lead{margin:0; font:500 14px/1.45 var(--font); color:var(--sand)}
body.shell .shk-lead b{display:block; margin-top:4px; font-weight:700; color:var(--cream); font-variant-numeric:tabular-nums}
body.shell .shk-search{margin-top:4px}
body.shell .shk-search .shk-ic{color:var(--lamp-hi)}
body.shell .shk-sortrow{display:flex; margin-top:10px; overflow-x:auto; scrollbar-width:none}
body.shell .shk-sortrow::-webkit-scrollbar{display:none}
body.shell .shk-sortrow .sh-sort button{padding:0 11px; font-size:12.5px}
body.shell .shk-chips{display:flex; gap:8px; margin:10px -16px 0; padding:2px 16px 2px; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch}
body.shell .shk-chips::-webkit-scrollbar{display:none}
body.shell .shk-chips .sh-chip small{font:600 11.5px/1 var(--font); color:var(--sh-mute)}
body.shell .shk-chips .sh-chip.on{color:var(--cream); border-color:var(--shk-key); background:color-mix(in oklab, var(--shk-key) 12%, var(--stone-2))}
body.shell .shk-hint{display:flex; gap:8px; margin:12px 0 0; padding:10px 12px; border-radius:12px; font:500 12.5px/1.4 var(--font); color:var(--sand);
  background:color-mix(in oklab, var(--zhar) 7%, var(--stone-deep)); box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--zhar) 28%, transparent)}
body.shell .shk-hint .shk-ic{width:16px; height:16px; color:var(--zhar)}
body.shell .shk-found{margin:16px 0 10px; font:700 12px/1 var(--font); letter-spacing:.12em; text-transform:uppercase; color:var(--sand); font-variant-numeric:tabular-nums}
body.shell .shk-grid{display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px 10px}
body.shell .shk-card{display:flex; flex-direction:column; gap:6px; min-width:0; padding:0; border:0; background:none; cursor:pointer; text-align:left; color:var(--cream); transition:transform 140ms var(--ease-out); animation:shk-in 320ms var(--ease-out) backwards; animation-delay:calc(min(var(--i, 0), 8) * 30ms)}
body.shell .shk-card:active{transform:scale(.97)}
body.shell .shk-cover{position:relative; display:block; aspect-ratio:16 / 9; border-radius:11px; overflow:hidden; background:linear-gradient(135deg, var(--stone-2), var(--stone-deep)); box-shadow:0 0 0 1px rgba(255,255,255,.1), 0 12px 22px -16px rgba(0,0,0,.95)}
body.shell .shk-cover img{width:100%; height:100%; object-fit:cover}
body.shell .shk-nocover{position:absolute; inset:0; display:grid; place-items:center; padding:8px; font:800 12px/1.1 var(--font-display); font-style:normal; text-transform:uppercase; text-align:center; color:var(--sand)}
body.shell .shk-reg{position:absolute; left:6px; top:6px; display:inline-flex; align-items:center; gap:4px; height:20px; padding:0 6px; border-radius:6px; font:800 10px/1 var(--font); font-style:normal; letter-spacing:.05em; text-transform:uppercase; color:#fff; background:rgba(8,10,16,.75); box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
body.shell .shk-reg.ok::before{content:""; width:5px; height:5px; border-radius:50%; background:var(--nw-skidka)}
body.shell .shk-name{font:700 13.5px/1.2 var(--font); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.4em}
body.shell .shk-price{font:800 15px/1 var(--font); color:var(--cream); font-variant-numeric:tabular-nums}
body.shell .shk-ghost{pointer-events:none; animation:none}
body.shell .shk-ghost .shk-cover, body.shell .shk-ghost-b{animation:shk-pulse 1.4s ease-in-out infinite alternate}
body.shell .shk-ghost .shk-name{height:14px; min-height:0; border-radius:6px; background:color-mix(in oklab, var(--stone-2) 70%, transparent)}
body.shell .shk-more{min-height:12px}
@keyframes shk-in{from{opacity:0; transform:translateY(8px)}}
@keyframes shk-pulse{to{opacity:.55}}



body.shell .shk-l, body.shell .shk-r{display:contents}
body.shell .shk-big{margin:0; aspect-ratio:16 / 9; border-radius:16px; overflow:hidden; background:var(--stone-deep); box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 26px 46px -28px rgba(0,0,0,1)}
body.shell .shk-big img{width:100%; height:100%; object-fit:cover}
body.shell .shk-ghost-b{border-radius:16px; background:color-mix(in oklab, var(--stone-2) 50%, transparent)}
body.shell .shk-ghost-l{height:220px; margin-top:16px}
body.shell .shk-ptitle{margin:16px 0 8px; font:800 26px/1.05 var(--font-display); letter-spacing:.03em; text-transform:uppercase; color:var(--cream)}
body.shell .shk-tags{display:flex; flex-wrap:wrap; gap:6px}
body.shell .shk-tags i{display:inline-flex; align-items:center; height:26px; padding:0 9px; border-radius:7px; font:600 12px/1 var(--font); font-style:normal; color:var(--sand); background:color-mix(in oklab, var(--stone-deep) 70%, transparent); box-shadow:inset 0 0 0 1px var(--nw-нить)}
body.shell .shk-tags .shk-plat{font-weight:800; font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:#fff; background:color-mix(in oklab, var(--shk-key) 22%, var(--stone-deep)); box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--shk-key) 55%, transparent)}
body.shell .shk-tags .shk-plat.k{background:color-mix(in oklab, var(--lamp) 18%, var(--stone-deep)); box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--lamp) 50%, transparent)}
body.shell .shk-tags .shk-plat.g{background:color-mix(in oklab, var(--shk-gift) 22%, var(--stone-deep)); box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--shk-gift) 55%, transparent)}
body.shell .shk-where{--tone:var(--nw-skidka); display:flex; flex-direction:column; gap:8px; margin-top:16px; padding:16px; border-radius:16px; border:1px solid transparent;
  background:radial-gradient(70% 120% at 0% 0%, color-mix(in oklab, var(--tone) 14%, transparent), transparent 70%) padding-box, var(--nw-кожа) padding-box, linear-gradient(120deg, color-mix(in oklab, var(--tone) 60%, transparent), var(--nw-нить) 50%) border-box; box-shadow:var(--nw-фаска)}
body.shell .shk-where.tone-warn{--tone:var(--zhar)}
body.shell .shk-where.tone-bad{--tone:#ff7a6e}
body.shell .shk-where-k{font:800 11px/1 var(--font); letter-spacing:.16em; text-transform:uppercase; color:var(--sand)}
body.shell .shk-where-v{display:flex; align-items:center; gap:10px; font:800 28px/1 var(--font-display); letter-spacing:.03em; text-transform:uppercase; color:var(--cream)}
body.shell .shk-where-v .shk-ic{width:24px; height:24px; color:var(--tone)}
body.shell .shk-verdict{display:flex; align-items:center; gap:9px; margin:0; font:700 14px/1.35 var(--font); color:var(--cream)}
body.shell .shk-verdict i{flex:none; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; color:#0c0d10; background:var(--tone)}
body.shell .shk-verdict .shk-ic{width:14px; height:14px; stroke-width:2.8}
body.shell .shk-countries{border-top:1px solid var(--nw-нить); padding-top:8px}
body.shell .shk-countries summary{min-height:32px; display:flex; align-items:center; cursor:pointer; font:700 13px/1.3 var(--font); color:var(--sand)}
body.shell .shk-countries p{margin:6px 0 0; font:500 12.5px/1.5 var(--font); color:var(--sh-mute)}
body.shell .shk-other{display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding-top:8px; border-top:1px solid var(--nw-нить); font:600 12.5px/1.3 var(--font); color:var(--sand)}
body.shell .shk-other button{min-height:36px; padding:0 11px; border-radius:9px; cursor:pointer; font:700 12.5px/1 var(--font); color:var(--cream); background:color-mix(in oklab, var(--stone-2) 80%, transparent); border:1px solid var(--nw-нить-ярко)}
body.shell .shk-tabs{margin-top:14px}
body.shell .shk-tabs .sh-chip.on{border-color:var(--shk-gift); background:color-mix(in oklab, var(--shk-gift) 14%, var(--stone-2))}
body.shell .shk-eds{display:flex; flex-direction:column; gap:6px; max-height:376px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin}
body.shell .shk-ed{display:grid; grid-template-columns:auto minmax(0, 1fr) auto; align-items:center; gap:10px; min-height:52px; padding:8px 12px; border-radius:12px; cursor:pointer; text-align:left; color:var(--cream);
  background:color-mix(in oklab, var(--stone-deep) 70%, transparent); border:1px solid var(--nw-нить-ярко); font:600 14px/1.25 var(--font)}
body.shell .shk-ed b{font:800 14.5px/1 var(--font); font-variant-numeric:tabular-nums; white-space:nowrap}
body.shell .shk-dot{width:18px; height:18px; border-radius:50%; box-shadow:inset 0 0 0 2px var(--nw-нить-ярко)}
body.shell .shk-ed[aria-checked="true"]{border-color:var(--lamp); background:color-mix(in oklab, var(--lamp) 9%, var(--stone-2))}
body.shell .shk-ed[aria-checked="true"] .shk-dot{box-shadow:inset 0 0 0 5px var(--lamp)}
body.shell .shk-ed.off{opacity:.45; cursor:default}
body.shell .shk-ed.off b{font-size:12px; font-weight:600; color:var(--sh-mute)}
body.shell .shk-none{margin:0; color:var(--sand)}
body.shell .shk-qty{display:flex; align-items:center; justify-content:space-between; margin-top:14px; font:600 14px/1 var(--font); color:var(--sand)}
body.shell .shk-step{display:flex; align-items:center; gap:4px; padding:3px; border-radius:12px; background:color-mix(in oklab, var(--stone-deep) 80%, transparent); box-shadow:inset 0 0 0 1px var(--nw-нить-ярко)}
body.shell .shk-step button{width:44px; height:44px; border:0; border-radius:9px; cursor:pointer; font:700 20px/1 var(--font); color:var(--cream); background:color-mix(in oklab, var(--stone-2) 85%, transparent)}
body.shell .shk-step button:disabled{opacity:.35}
body.shell .shk-step output{min-width:32px; text-align:center; font:800 16px/1 var(--font); color:var(--cream)}
body.shell .shk-field{display:flex; flex-direction:column; gap:7px; margin-top:16px}
body.shell .shk-field > span{font:800 11px/1.2 var(--font); letter-spacing:.14em; text-transform:uppercase; color:var(--sand)}
body.shell .shk-field input{box-sizing:border-box; width:100%; height:52px; padding:0 14px; border-radius:12px; font:600 16px/1 var(--font); color:var(--cream); outline:0;
  background:color-mix(in oklab, var(--stone-deep) 86%, transparent); border:1px solid color-mix(in oklab, var(--shk-gift) 50%, transparent)}
body.shell .shk-field input:focus{border-color:var(--shk-gift)}
body.shell .shk-field small{font:500 12.5px/1.4 var(--font); color:var(--sh-mute)}
body.shell .shk-field small[data-tone="bad"]{color:#ff9a8f}
body.shell .shk-field small[data-tone="ok"]{color:var(--nw-skidka)}
body.shell .shk-warn{display:flex; gap:9px; margin:16px 0 0; padding:12px; border-radius:12px; font:600 13px/1.45 var(--font); color:var(--cream);
  background:color-mix(in oklab, var(--zhar) 10%, var(--stone-deep)); border:1px solid color-mix(in oklab, var(--zhar) 50%, transparent)}
body.shell .shk-warn .shk-ic{width:17px; height:17px; color:var(--zhar)}
body.shell .shk-agree{position:relative; display:flex; align-items:center; gap:11px; min-height:48px; margin-top:8px; cursor:pointer; font:700 14px/1.35 var(--font); color:var(--cream)}
body.shell .shk-agree input{position:absolute; opacity:0; width:1px; height:1px}
body.shell .shk-agree i{flex:none; display:grid; place-items:center; width:26px; height:26px; border-radius:8px; color:transparent; border:2px solid var(--nw-нить-ярко)}
body.shell .shk-agree i .shk-ic{width:15px; height:15px; stroke-width:3}
body.shell .shk-agree input:checked + i{color:#0c0d10; background:var(--lamp); border-color:var(--lamp)}
body.shell .shk-methods{display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:6px; margin-top:14px}
body.shell .shk-methods:empty{display:none}
body.shell .shk-m{display:flex; flex-direction:column; align-items:flex-start; gap:5px; min-height:52px; padding:8px 11px; border-radius:11px; cursor:pointer; text-align:left; color:var(--cream);
  background:color-mix(in oklab, var(--stone-deep) 70%, transparent); border:1px solid var(--nw-нить-ярко)}
body.shell .shk-m b{font:700 12.5px/1.2 var(--font)}
body.shell .shk-m span{font:800 14px/1 var(--font); font-variant-numeric:tabular-nums}
body.shell .shk-m.on{border-color:var(--lamp); background:color-mix(in oklab, var(--lamp) 8%, var(--stone-2))}
body.shell .shk-err{margin:12px 0 0; padding:10px 12px; border-radius:10px; font:600 13.5px/1.4 var(--font); color:#ffd2cc; background:rgba(255,90,70,.1); border:1px solid rgba(255,154,143,.4)}
body.shell .shk-pay{width:100%; margin-top:14px; min-height:56px}
body.shell .shk-pay:disabled{filter:saturate(.3) brightness(.75)}
body.shell .shk-get{display:flex; flex-direction:column; gap:8px; margin-top:22px; padding:16px; border-radius:16px; background:color-mix(in oklab, var(--stone-deep) 72%, transparent); box-shadow:inset 0 0 0 1px var(--nw-нить)}
body.shell .shk-get h2{display:flex; align-items:center; gap:9px; margin:0; font:800 17px/1.1 var(--font-display); letter-spacing:.04em; text-transform:uppercase; color:var(--cream)}
body.shell .shk-get h2 .shk-ic{width:20px; height:20px; color:var(--shk-key)}
body.shell .shk-get h3{margin:6px 0 0; font:800 11px/1 var(--font); letter-spacing:.16em; text-transform:uppercase; color:var(--sand)}
body.shell .shk-get p, body.shell .shk-get li{margin:0; font:500 14px/1.5 var(--font); color:var(--sand)}
body.shell .shk-get ol{margin:0; padding-left:20px; display:flex; flex-direction:column; gap:6px}


body.shell .shk-fail{display:flex; flex-direction:column; gap:10px; padding:16px; border-radius:16px; background:color-mix(in oklab, var(--zhar) 8%, var(--stone-deep)); border:1px solid color-mix(in oklab, var(--zhar) 45%, transparent)}
body.shell .shk-fail b{font:800 19px/1.15 var(--font-display); letter-spacing:.03em; text-transform:uppercase; color:var(--cream)}
body.shell .shk-fail p{margin:0; font:500 14px/1.5 var(--font); color:var(--sand)}
body.shell .shk-fail small{font:500 12.5px/1.4 var(--font); color:var(--sh-mute)}
body.shell .shk-fail-bot{width:100%; text-decoration:none}


@media (min-width:744px){
  body.shell .shk-shelf-row{margin:0 -24px; padding:2px 24px 10px; grid-auto-columns:280px; scroll-padding-inline:24px}
  body.shell .shk-chips{margin:10px -24px 0; padding:2px 24px}
  body.shell .shk-title{font-size:46px}
  body.shell .shk-grid{grid-template-columns:repeat(auto-fill, minmax(210px, 1fr)); gap:18px 14px}
  body.shell .shk-switch{max-width:420px}
  body.shell .shk-page{display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr); column-gap:24px; align-items:start}
  body.shell .shk-l, body.shell .shk-r{display:block; min-width:0}
  body.shell .shk-r > .shk-tabs:first-child, body.shell .shk-r > .sh-h:first-child{margin-top:0}
  body.shell .shk-page > .shk-get{grid-column:1}
}
@media (prefers-reduced-motion: reduce){
  body.shell .shk-card, body.shell .shk-sc{animation:none; transition:none}
  body.shell .shk-ghost .shk-cover, body.shell .shk-ghost-b{animation:none}
}


@media (max-width:743.98px){
  body.shell .shk-pay{position:sticky; bottom:calc(var(--sh-b) + 10px); z-index:5; box-shadow:var(--nw-хром), 0 14px 30px -10px rgba(0,0,0,.9)}
}


body.shell .sh-stage.shk-stage img{width:min(280px, 78%); height:auto; aspect-ratio:16 / 9; object-fit:cover; border-radius:14px; box-shadow:0 0 0 1px rgba(255,255,255,.14), 0 24px 40px -20px rgba(0,0,0,.95)}


body.shell .sh-catalog .shk-shelf .sh-h, body.shell .shk-shelf .sh-h{margin:6px 0 6px; min-height:32px}
body.shell .shk-shelf-row{padding-bottom:4px}
body.shell .shk-shelf + .shk-shelf{margin-top:0}
