@font-face { font-family:'Pribylskaia'; src:url('Font/Pribylskaia-Regular.woff2') format('woff2'),url('Font/Pribylskaia-Regular.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap; }
/* Inter (self-hosted, variable 400–700, Google Fonts subsets) — replaces Lab Grotesque */
@font-face { font-family:'Inter'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/Font/inter-cyrillic-ext.woff2') format('woff2'); unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family:'Inter'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/Font/inter-cyrillic.woff2') format('woff2'); unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family:'Inter'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/Font/inter-latin-ext.woff2') format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'Inter'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/Font/inter-latin.woff2') format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
/* app-like feel: no text selection, no long-press menu, no double-tap zoom */
:root{ color-scheme:light; }
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; background:#F1EFE3; color-scheme:light; }
body{font-family:'Inter',-apple-system,sans-serif;font-size:14px;background:#F1EFE3;color:#333;-webkit-font-smoothing:antialiased;
  user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;overscroll-behavior-y:none;}
/* but real inputs/editable fields stay selectable */
input,textarea,[contenteditable="true"]{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default;}
/* hide scrollbars everywhere (keep scrolling) */
html,body,*{scrollbar-width:none;-ms-overflow-style:none;}
::-webkit-scrollbar{width:0;height:0;display:none;}
button{cursor:pointer;border:none;background:none;font-family:inherit;padding:0;}
input{font-family:inherit;border:none;outline:none;}

.app{max-width:430px;margin:0 auto;min-height:100vh;background:#F1EFE3;position:relative;}
.page{display:none;min-height:100vh;padding-bottom:24px;}
#page-home{display:none;min-height:100vh;flex-direction:column;}
#page-home.active{display:flex;}
#page-search{display:none;min-height:100vh;flex-direction:column;}
#page-search.active{display:flex;}
.page.active{display:block;}
.page-anim{position:absolute;top:0;left:0;width:100%;height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch;will-change:transform;}
.app.animating{overflow:hidden;}

/* LOGO */
.logo-wrap{display:flex;align-items:center;gap:2px;}
.logo-img{display:block;height:47px;width:auto;}
.logo-text{font-family:'Pribylskaia',serif;font-size:36px;color:rgba(24,24,16,1);line-height:1;}

/* PROFILE BUTTON */
.prof{position:relative;width:60px;height:60px;flex-shrink:0;background:none;border:none;padding:0;cursor:pointer;}
.prof img{width:60px;height:60px;display:block;}
.notif-dot{position:absolute;top:35px;right:4px;width:17px;height:17px;border-radius:50%;background:rgba(236,89,81,1);display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;font-weight:700;font-size:11px;color:rgba(241,239,227,1);}

/* BACK BUTTON */
.back-btn{width:44px;height:44px;background:rgba(24,24,16,1);border-radius:99px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.back-btn img{width:24px;height:24px;filter:invert(1);}

/* HEADERS */
.home-header{padding:calc(15px + env(safe-area-inset-top)) 12px 12px;display:flex;align-items:center;justify-content:space-between;}
.page-hdr{padding:calc(15px + env(safe-area-inset-top)) 12px 12px;display:flex;align-items:center;justify-content:space-between;}

/* PAGE TITLE */
.page-title-row{display:flex;align-items:flex-end;padding:0 13px 16px;}
#page-search .page-title-row{display:block;}
.page-title{font-family:'Pribylskaia',serif;font-size:74px;color:rgba(24,24,16,1);line-height:0.9;margin:0;font-weight:normal;}
.title-last{white-space:nowrap;}
.page-title-like{display:inline-block;vertical-align:bottom;line-height:0;margin-left:8px;}
.title-heart{background:none;border:none;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:bottom;}
.title-heart img{width:65px;height:65px;display:block;position:relative;top:4px;}
.title-heart .hf{display:none;filter:invert(39%) sepia(76%) saturate(592%) hue-rotate(312deg) brightness(107%) contrast(93%);}
.title-heart.liked .ho{display:none;}
.title-heart.liked .hf{display:block;}

/* RATING */
.rating-row{display:none;align-items:center;gap:9px;padding:0 13px 6px;margin-top:0;}
.rating-row.show{display:flex;}
.stars{display:inline-flex;gap:2px;}
.star{position:relative;display:inline-block;width:19px;height:19px;background-color:rgba(24,24,16,.16);-webkit-mask:url('/icon/ui/star-black.svg') center/contain no-repeat;mask:url('/icon/ui/star-black.svg') center/contain no-repeat;}
.star-fill{position:absolute;left:0;top:0;height:100%;overflow:hidden;background-color:rgba(247,199,83,1);-webkit-mask:url('/icon/ui/star-black.svg') left center/19px 19px no-repeat;mask:url('/icon/ui/star-black.svg') left center/19px 19px no-repeat;}
.rating-num{font-family:'Inter',sans-serif;font-size:15px;font-weight:700;color:rgba(24,24,16,1);}
.rating-count{font-family:'Inter',sans-serif;font-size:13px;color:rgba(133,133,133,1);}
/* skeleton star = full star silhouette with shimmer */
.star.sk{background-color:rgba(0,0,0,.11);}
.sk-rating-txt{display:inline-block;width:118px;height:15px;border-radius:6px;}

/* MEDIA (screenshots + trailer) — subtle, button flows into the block */
.media-sec{margin:0 13px 10px;background:rgba(24,24,16,.045);border-radius:14px;overflow:hidden;}
.media-btn{width:100%;display:flex;align-items:center;gap:6px;background:none;border:none;padding:11px 16px;font-family:'Inter',sans-serif;font-size:14px;color:rgba(24,24,16,.72);cursor:pointer;text-align:left;}
.media-btn .chev{display:inline-block;font-size:11px;color:rgba(24,24,16,.45);transition:transform .25s ease;}
.media-btn.active .chev{transform:rotate(180deg);}
.media-body{max-height:0;overflow:hidden;transition:max-height .32s ease;}
.media-sec.open .media-body{max-height:220px;}
.desc-body{padding:12px 16px 14px;}
.desc-body.open .game-desc-text{-webkit-line-clamp:unset;line-clamp:unset;display:block;}
.media-strip{display:flex;gap:14px;overflow-x:auto;padding:2px 0 14px 14px;scroll-padding-left:14px;-webkit-overflow-scrolling:touch;}
.media-strip>.media-thumb:last-child{margin-right:14px;}
.media-strip::-webkit-scrollbar{display:none;}
.media-thumb{position:relative;flex:0 0 auto;width:250px;height:140px;border-radius:14px;overflow:hidden;background:rgba(217,217,217,1);cursor:pointer;}
/* GAME DESCRIPTION */
.game-desc{margin:10px 13px 16px;}
.game-desc-text{font-family:'Inter',sans-serif;font-size:14px;line-height:1.55;color:rgba(24,24,16,.82);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden;}
.game-desc.open .game-desc-text{-webkit-line-clamp:unset;line-clamp:unset;display:block;}
.game-desc-toggle{margin-top:6px;font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:rgba(78,123,249,1);background:none;border:none;cursor:pointer;padding:0;}
.game-desc-toggle:hover{text-decoration:underline;}
/* announced game */
.tag-announce{background:rgba(247,199,83,1)!important;color:rgba(24,24,16,1)!important;font-weight:600;}
.announce-card{margin:14px 13px 24px;background:rgba(255,255,255,1);border-radius:22px;padding:24px 20px;text-align:center;}
.announce-title{font-family:'Inter',sans-serif;font-size:17px;font-weight:700;color:rgba(24,24,16,1);margin-bottom:8px;}
.announce-text{font-family:'Inter',sans-serif;font-size:14px;line-height:1.5;color:rgba(24,24,16,.7);margin:0 auto 18px;max-width:340px;}
.announce-fav-btn{display:inline-flex;align-items:center;gap:8px;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;color:rgba(24,24,16,1);background:rgba(247,199,83,1);border:none;border-radius:14px;padding:12px 20px;cursor:pointer;transition:transform .08s ease,background .15s ease;}
.announce-fav-btn:active{transform:scale(.96);}
.announce-fav-btn.on{background:rgba(203,216,126,1);}
.announce-fav-heart{display:inline-flex;}
.announce-fav-heart img{width:20px;height:20px;display:block;}
.announce-fav-heart .hf{display:none;filter:invert(39%) sepia(76%) saturate(592%) hue-rotate(312deg) brightness(107%) contrast(93%);}
.announce-fav-btn.on .announce-fav-heart .ho{display:none;}
.announce-fav-btn.on .announce-fav-heart .hf{display:block;}
.media-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.media-thumb .play-ic{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.22);}
.media-thumb .play-ic span{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.25);}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:300;padding:16px;}
.lightbox.open{display:flex;}
.lightbox img,.lightbox video{max-width:100%;max-height:92vh;border-radius:10px;}
.lightbox-close{position:absolute;top:16px;right:18px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.14);border:none;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;}

/* TAGS */
.tags-row{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:0 13px 10px;}
.tags-row .tag{max-width:100%;white-space:normal;}
.tag{display:inline-flex;align-items:center;background:rgba(24,24,16,1);border-radius:9px;font-family:'Pribylskaia',serif;font-size:16px;color:rgba(241,239,227,1);padding:1px 9px 3px;min-height:24px;white-space:nowrap;line-height:1;}
.tag-md{font-size:22px;min-height:28px;padding:0 10px 3px;}
.tag-wide{min-width:106px;}
.tag-green{background:rgba(196,209,116,1);color:rgba(24,24,16,1);}
.tag-red{background:rgba(236,89,81,1);color:rgba(241,239,227,1);}
/* hand-drawn slanted strike-through inside red ОЗВ/СУБ tags (no Russian) */
.tag-red{position:relative;}
.tag-red::after{content:"";position:absolute;inset:0;pointer-events:none;background:no-repeat center/100% 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 24' preserveAspectRatio='none'%3E%3Cpath d='M5,16 L95,8' fill='none' stroke='%23F1EFE3' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E");}
.tag-icon{padding:0 5px 0px;display:inline-flex;align-items:center;justify-content:center;}
/* localization icon inside СУБ/ОЗВ tags — recoloured to the tag's text colour via mask */
.tag-ico{display:inline-block;width:17px;height:17px;flex-shrink:0;margin-right:5px;position:relative;top:1px;background-color:currentColor;}
.tag-ico-sub{-webkit-mask:url('/icon/ui/comments.svg') center/contain no-repeat;mask:url('/icon/ui/comments.svg') center/contain no-repeat;}
.tag-ico-voice{-webkit-mask:url('/icon/ui/audio.svg') center/contain no-repeat;mask:url('/icon/ui/audio.svg') center/contain no-repeat;}
/* hover tooltip explaining the СУБ/ОЗВ status */
.has-tip{position:relative;}
.has-tip::before{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 6px);z-index:60;width:max-content;max-width:230px;white-space:normal;background:rgba(24,24,16,.96);color:rgba(241,239,227,1);font-family:'Inter',sans-serif;font-weight:500;font-size:12px;line-height:1.35;padding:7px 10px;border-radius:9px;opacity:0;visibility:hidden;transform:translateY(-3px);transition:opacity .15s ease,transform .15s ease;pointer-events:none;}
.has-tip:hover::before{opacity:1;visibility:visible;transform:translateY(0);}
.tag-icon img{width:20px;height:20px;filter:invert(1);display:block;}

/* DISCOUNT BADGE */
.disc{display:inline-flex;align-items:center;background:rgba(247,199,83,1);border-radius:9px;font-family:'Pribylskaia',serif;font-size:16px;color:rgba(24,24,16,1);padding:1px 9px 3px;min-height:24px;line-height:1;}
.disc-lg{font-size:20px;min-height:26px;padding:0 10px 3px;}

/* SEARCH */
.search-wrap{padding:0 12px;position:relative;}
.search-box{height:58px;background:rgba(255,255,255,1);border:1.5px solid rgba(24,24,16,.12);border-radius:18px;box-shadow:0 4px 16px rgba(0,0,0,.07);position:relative;display:flex;align-items:center;gap:8px;padding:0 8px 0 18px;transition:border-color .18s ease, box-shadow .18s ease;}
.search-box:focus-within{border-color:rgba(247,199,83,1);box-shadow:0 6px 22px rgba(247,199,83,.28);}
.search-input{flex:1;min-width:0;font-family:'Inter',sans-serif;font-size:14px;color:rgba(24,24,16,1);background:transparent;text-align:left;}
.search-input::placeholder{color:rgba(190,190,190,1);}
.search-go-btn{flex-shrink:0;width:42px;height:42px;border-radius:14px;background:rgba(247,199,83,1);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease, background .15s ease, box-shadow .15s ease;box-shadow:0 2px 8px rgba(247,199,83,.4);}
.search-go-btn:hover{transform:scale(1.06);background:rgba(243,191,64,1);}
.search-go-btn:active{transform:scale(.96);}
.search-go-btn img{width:22px;height:22px;display:block;}
.search-dropdown{display:none;position:absolute;top:64px;left:20px;right:20px;background:rgba(255,255,255,1);border:1px solid rgba(196,196,196,1);border-radius:16px;box-shadow:0px 4px 12px rgba(0,0,0,.12);overflow:hidden;z-index:50;}
.search-dropdown.open{display:block;}
.search-dd-item{padding:10px 16px;font-family:'Inter',sans-serif;font-size:14px;color:rgba(24,24,16,1);cursor:pointer;border-bottom:1px solid rgba(241,239,227,1);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.search-dd-item .li-tags{flex-shrink:0;}
.search-dd-item:last-child{border-bottom:none;}
.search-dd-item:hover{background:rgba(241,239,227,1);}
.search-hint{font-size:12px;color:rgba(133,133,133,1);margin:8px auto 0;text-align:center;line-height:1.5;width:70%;}
.search-hint a{color:rgba(78,123,249,1);text-decoration:none;}
.search-hint a:hover{text-decoration:underline;}

/* SECTION HEADER */
.sec-hdr{display:flex;align-items:baseline;justify-content:space-between;padding:26px 13px 8px 15px;}
.sec-title{font-family:'Pribylskaia',serif;font-size:26px;color:rgba(24,24,16,1);display:flex;align-items:center;gap:6px;line-height:1;}
.sec-title img{width:30px;height:30px;display:block;flex-shrink:0;margin-top:5px;}
.sec-link{font-family:'Pribylskaia',serif;font-size:20px;color:rgba(78,123,249,1);display:flex;align-items:center;gap:2px;cursor:pointer;border:none;background:none;transform-origin:right center;transition:transform .18s cubic-bezier(.34,1.56,.64,1);}
.sec-link:hover{transform:scale(1.09);}
.sec-link:active{transform:scale(1.03);}
.sec-link img{width:20px;height:20px;filter:invert(34%) sepia(97%) saturate(2700%) hue-rotate(209deg) brightness(100%) contrast(97%);}
.sec-arrow{display:inline-block;width:20px;height:20px;background-color:currentColor;-webkit-mask:url('/icon/ui/arrow-right.svg') center/contain no-repeat;mask:url('/icon/ui/arrow-right.svg') center/contain no-repeat;}

/* LIST ITEMS */
.list{padding:0 13px;display:flex;flex-direction:column;gap:8px;}
.auth-hint{font-family:'Inter',sans-serif;font-size:12px;color:rgba(133,133,133,1);line-height:1.45;padding:10px 15px 0;text-align:center;max-width:85%;margin:auto;}
.auth-hint a{color:rgba(78,123,249,1);text-decoration:none;}
.auth-hint a:hover{text-decoration:underline;}
.li{height:34px;background:rgba(255,255,255,1);border-radius:14px;display:flex;align-items:center;justify-content:space-between;padding:0 9px 0 12px;overflow:hidden;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease;}
/* skeletons */
.sk{position:relative;overflow:hidden;background:rgba(0,0,0,.06);}
.sk::after{content:'';position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:sk-shimmer 1.15s infinite;}
@keyframes sk-shimmer{100%{transform:translateX(100%);}}
.sk-li{height:40px;border-radius:14px;}
.sk-scard{height:60px;border-radius:18px;}
.sk-card{width:100%;aspect-ratio:1/1.32;border-radius:22px;}
.sk-tag{display:inline-block;height:28px;width:52px;border-radius:9px;margin:0 5px 5px 0;vertical-align:middle;}
.sk-title{display:inline-block;width:72%;max-width:300px;height:30px;border-radius:9px;vertical-align:middle;margin:2px 0;}
/* title skeleton: 3 bars (50px) ≈ a 3-line title */
.sk-title-bar{display:block;height:50px;border-radius:12px;margin:0 0 10px;}
.sk-title-bar:last-child{margin-bottom:2px;}
.li:hover{transform:scale(1.035);box-shadow:0 4px 14px rgba(0,0,0,.10);}
.li-name{font-family:'Inter',sans-serif;font-size:14px;color:rgba(51,51,51,1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;}
.li-tags{display:flex;gap:3px;flex-shrink:0;margin-left:6px;align-items:center;}
/* cabinet "Редактировать" mode: per-favorite delete block to the right of the game block */
.fav-edit-link{font-family:'Pribylskaia',serif;font-size:18px;color:rgba(78,123,249,1);border:none;background:none;cursor:pointer;line-height:1;}
.fav-row{display:flex;align-items:flex-start;}
.fav-row>.li,.fav-row>.li-wrap{flex:1 1 auto;min-width:0;}
.fav-del{flex:0 0 auto;width:0;margin-left:0;overflow:hidden;opacity:0;transition:width .22s ease,margin-left .22s ease,opacity .18s ease;}
#cabinet-favorites.editing .fav-del{width:46px;margin-left:8px;opacity:1;}
.fav-trash{display:flex;align-items:center;justify-content:center;width:46px;height:34px;background:rgba(255,255,255,1);border:none;border-radius:14px;cursor:pointer;flex-shrink:0;}
.fav-trash img{width:20px;height:20px;filter:invert(39%) sepia(76%) saturate(592%) hue-rotate(312deg) brightness(107%) contrast(93%);}
.li-blue .li-name{color:rgba(78,123,249,1);}
.li-wrap{display:flex;flex-direction:column;gap:0;}
.li-wrap .li{border-radius:13px;}
.li-sub{background:rgba(220,220,215,0.45);border:1px solid rgba(196,196,190,1);border-top:none;border-radius:0;padding:5px 12px;display:flex;align-items:center;justify-content:space-between;width:93%;margin:0 auto;}
.li-wrap .li-sub:last-child{border-radius:0 0 10px 10px;}
.li-sub-country{font-family:'Inter',sans-serif;font-size:14px;color:rgba(51,51,51,1);}
.li-sub-price{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;color:rgba(133,133,133,1);}
.li-sub-rub{color:rgba(24,24,16,1);}

/* FOOTER */
.home-footer{margin-top:auto;padding:60px 12px 24px;}
.disclaimer{font-size:10px;color:rgba(133,133,133,1);text-align:center;line-height:1.5;}
.footer-links{margin-top:8px;text-align:center;font-size:11px;}
.footer-links a{color:rgba(78,123,249,1);text-decoration:none;}
.footer-links a:hover{text-decoration:underline;}
.footer-links span{color:rgba(133,133,133,1);margin:0 6px;}

/* SEARCH CARDS */
.s-card{margin:0 12px 8px;background:rgba(255,255,255,1);border:1px solid rgba(213,213,213,1);border-radius:26px;box-shadow:0px 4px 10px rgba(0,0,0,.10);padding:14px 16px;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1);}
.s-card:hover{transform:scale(1.01);}
.s-card-top{display:flex;align-items:center;gap:8px;}
.s-num{width:29px;height:29px;border-radius:50%;background:rgba(24,24,16,1);display:flex;align-items:center;justify-content:center;font-family:'Pribylskaia',serif;font-size:22px;color:rgba(255,255,255,1);flex-shrink:0;padding-bottom:3px;line-height:1;}
.s-card-tags{display:flex;gap:4px;flex:1;align-items:center;}
.s-card-country{display:inline-flex;align-items:center;background:rgba(24,24,16,1);border-radius:8px;font-family:'Pribylskaia',serif;font-size:22px;color:rgba(241,239,227,1);padding:0 8px 3px;min-height:27px;line-height:1;}
.heart-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.heart-btn img{width:26px;height:26px;}
.heart-btn .hf{display:none;filter:invert(39%) sepia(76%) saturate(592%) hue-rotate(312deg) brightness(107%) contrast(93%);}
.heart-btn.liked .ho{display:none;}
.heart-btn.liked .hf{display:block;}
.s-card-detail{max-height:0;overflow:hidden;padding-top:0;transition:max-height .35s cubic-bezier(.4,0,.2,1),padding-top .35s cubic-bezier(.4,0,.2,1);}
.s-card.open .s-card-detail{max-height:800px;padding-top:10px;}
.s-card-footer{display:flex;align-items:flex-end;justify-content:space-between;margin-top:6px;}
.s-price{font-family:'Pribylskaia',serif;font-size:54px;color:rgba(24,24,16,1);line-height:1;display:inline-flex;align-items:center;gap:3px;}
.ruble-icon{height:25px;width:auto;display:block;}
.s-prices{display:flex;gap:12px;align-items:center;}
.s-price-sub{font-family:'Inter',sans-serif;font-size:14px;font-weight:500;color:rgba(24,24,16,1);}
.s-price-old{text-decoration:line-through;color:rgba(160,160,160,1);font-weight:400;}

/* EXPANDED CARD */
.info-title{font-family:'Pribylskaia',serif;font-size:20px;color:rgba(24,24,16,1);margin:12px 0 8px;}
.info-table{background:rgba(241,239,227,1);border-radius:20px;padding:12px 14px;}
.info-row{display:flex;gap:6px;margin-bottom:6px;}
.info-row:last-child{margin-bottom:0;}
.info-k{font-family:'Inter',sans-serif;font-weight:700;font-size:13px;color:rgba(24,24,16,1);min-width:100px;flex-shrink:0;}
.info-v{font-family:'Inter',sans-serif;font-size:13px;color:rgba(24,24,16,1);flex:1;}
.avail-badge{display:inline-flex;align-items:center;background:rgba(203,216,126,0.6);border-radius:20px;font-family:'Inter',sans-serif;font-size:13px;color:rgba(24,24,16,1);padding:1px 8px;vertical-align:middle;margin-left:4px;}
.act-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:50px;background:rgba(24,24,16,1);border-radius:26px;font-family:'Inter',sans-serif;font-size:12px;color:rgba(241,239,227,1);margin-bottom:8px;margin-top:16px;cursor:pointer;transition:background .18s ease;}
.act-btn:hover{background:rgba(24,24,16,0.72);}
.act-btn img{height:24px;width:auto;filter:none;}
.card-note{font-size:9px;color:rgba(133,133,133,1);text-align:center;padding:2px 0;width:70%;margin:0 auto;}

/* PRICE CHART */
.pchart-wrap{margin:0 12px 27px;background:rgba(255,255,255,1);border-radius:26px;padding:14px 16px;position:relative;}
.pchart-area{position:relative;margin-top:0;}
.pchart-svg{width:100%;display:block;overflow:visible;}
.pchart-tooltip{position:absolute;background:rgba(24,24,16,1);border-radius:16px;padding:10px 13px;font-family:'Inter',sans-serif;font-size:12px;color:rgba(241,239,227,1);min-width:170px;display:none;z-index:20;pointer-events:none;box-shadow:0 4px 16px rgba(0,0,0,.25);}
.pchart-tooltip.visible{display:block;}
.pchart-blur{position:absolute;inset:0;display:none;align-items:center;justify-content:center;text-align:center;background:rgba(255,255,255,.2);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border-radius:16px;font-family:'Inter',sans-serif;font-size:14px;font-weight:400;color:rgba(24,24,16,.5);z-index:15;padding:0 12px;line-height:1.35;}
.pchart-blur.show{display:flex;}
.pchart-sk{position:absolute;inset:0;height:150px;border-radius:16px;z-index:16;}
.game-desc-sk{display:flex;flex-direction:column;gap:10px;}
.game-desc-sk .sk{height:15px;border-radius:6px;}
/* detail content reveal / hide transitions */
@keyframes detail-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
.detail-in{animation:detail-in .3s ease both;}
.detail-hiding{opacity:0;transform:translateY(-4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;}
.ptt-date{font-family:'Pribylskaia',serif;font-size:17px;color:rgba(241,239,227,1);margin-bottom:7px;}
.ptt-row{display:flex;justify-content:space-between;gap:14px;padding:2px 0;}
.ptt-country{color:rgba(200,200,190,1);}
.ptt-price{font-weight:600;color:rgba(241,239,227,1);}
.ptt-first .ptt-country{color:rgba(180,220,100,1);font-weight:700;}
.ptt-first .ptt-price{color:rgba(180,220,100,1);}

/* GRID */
.grid{padding:0 12px;display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;}
.g-card{display:flex;flex-direction:column;width:100%;margin:0;border-radius:22px;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease;}
.g-card:hover{transform:scale(1.035);box-shadow:0 0 0 2px rgba(24,24,16,1);}
.g-cover{position:relative;width:100%;aspect-ratio:1/1;border-radius:22px;overflow:hidden;background:rgba(217,217,217,1);flex-shrink:0;}
.g-cover img{width:100%;height:100%;object-fit:cover;display:block;}
.g-cover-tags{position:absolute;bottom:6px;left:6px;display:flex;gap:3px;flex-wrap:wrap;}
.g-tags{display:flex;gap:4px;flex-wrap:wrap;padding:0 0 4px;}
.g-heart{position:absolute;top:8px;right:8px;background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;mix-blend-mode:difference;}
.g-heart.liked{mix-blend-mode:normal;}
.g-heart img{width:34px;height:34px;filter:invert(1);}
.g-heart .hf{display:none;filter:invert(39%) sepia(76%) saturate(592%) hue-rotate(312deg) brightness(107%) contrast(93%);}
.g-heart.liked .ho{display:none;}
.g-heart.liked .hf{display:block;}
.g-info{padding:6px 10px 10px;display:flex;flex-direction:column;flex:1;}
.g-name{font-family:'Inter',sans-serif;font-size:15px;color:rgba(51,51,51,1);line-height:1.3;}
/* card prices: old (struck) + rub (headline) + local */
.g-was{font-family:'Inter',sans-serif;font-size:11px;color:rgba(160,160,160,1);text-decoration:line-through;line-height:1.25;margin-top:5px;}
.g-price-main{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;line-height:1.2;}
.g-rub{font-family:'Inter',sans-serif;font-size:15px;font-weight:700;color:rgba(24,24,16,1);}
.g-cur{font-family:'Inter',sans-serif;font-size:12px;font-weight:500;color:rgba(150,150,145,1);}
/* sequential lazy images */
.g-cover img{transition:opacity .35s ease;}
img.g-lazy{opacity:0;}

/* CABINET */
.cab-top{display:flex;flex-direction:column;align-items:center;gap:0;padding:0px 12px 8px;}
.cab-name{font-family:'Pribylskaia',serif;font-size:48px;color:rgba(24,24,16,1);text-align:center;line-height:1;}
.cab-email{font-family:'Inter',sans-serif;font-size:12px;color:rgba(133,133,133,1);text-align:center;margin-top:2px;}
.cab-logout{font-family:'Inter',sans-serif;font-size:14px;color:rgba(78,123,249,1);background:none;border:none;cursor:pointer;padding:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cab-login-btn{margin-top:14px;font-family:'Inter',sans-serif;font-size:15px;font-weight:500;color:rgba(24,24,16,1);background:rgba(247,199,83,1);border:none;border-radius:14px;padding:12px 22px;cursor:pointer;box-shadow:0 2px 10px rgba(247,199,83,.4);transition:transform .15s ease,box-shadow .15s ease;}
.cab-login-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(247,199,83,.5);}
.cab-login-btn:active{transform:translateY(0);}
.li-arrow img{width:18px;height:18px;filter:invert(34%) sepia(97%) saturate(2700%) hue-rotate(209deg) brightness(100%) contrast(97%);}

@keyframes heartBurst{
  0%{transform:translate(-50%,-50%) scale(1);opacity:1;}
  100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(0);opacity:0;}
}
.burst-p{position:fixed;border-radius:50%;pointer-events:none;z-index:9999;animation:heartBurst var(--dur,.5s) cubic-bezier(.25,.46,.45,.94) forwards;}

.g-prices{display:flex;flex-direction:column;gap:1px;margin-top:auto;}
/* pagination loader — three bouncing dots in brand colors */
.page-loader{display:flex;justify-content:center;align-items:flex-end;gap:8px;padding:22px 0 8px;grid-column:1/-1;height:38px;}
.page-loader span{width:10px;height:10px;border-radius:50%;animation:psina-bounce .62s ease-in-out infinite;}
.page-loader span:nth-child(1){background:rgba(247,199,83,1);}
.page-loader span:nth-child(2){background:rgba(203,216,126,1);animation-delay:.13s;}
.page-loader span:nth-child(3){background:rgba(211,79,75,1);animation-delay:.26s;}
@keyframes psina-bounce{0%,75%,100%{transform:translateY(0);opacity:.45;}35%{transform:translateY(-11px);opacity:1;}}
/* discounts controls: country dropdown */
.country-dd{position:relative;}
/* "По курсу в …" — plain-text country selector under the page title */
.rate-note{padding:0 13px;margin:-9px 3px 20px;}
.country-btn{display:inline-flex;align-items:center;background:none;border:none;border-radius:0;padding:0;font-family:'Inter',sans-serif;font-size:15px;font-weight:500;color:rgba(133,133,133,1);cursor:pointer;}
.country-btn::after{content:'▾';font-size:10px;color:#b5b5ad;margin-left:5px;}
.rate-country{color:rgba(24,24,16,1);font-weight:600;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:rgba(24,24,16,.35);text-underline-offset:3px;margin-left:4px;}
.country-menu{display:none;position:absolute;top:calc(100% + 4px);left:13px;right:auto;background:#fff;border:1px solid rgba(196,196,196,.6);border-radius:16px;box-shadow:0 6px 18px rgba(0,0,0,.14);overflow:hidden;z-index:60;min-width:180px;}
.country-menu.open{display:block;}
.country-opt{padding:11px 16px;font-family:'Inter',sans-serif;font-size:14px;cursor:pointer;border-bottom:1px solid rgba(241,239,227,1);display:flex;align-items:center;gap:8px;}
.country-opt:last-child{border-bottom:none;}
.country-opt:hover,.country-opt.active{background:rgba(241,239,227,1);}

/* SETTINGS SUB-PAGES (countries / currency rates) */
.set-desc{font-family:'Inter',sans-serif;font-size:13px;color:rgba(133,133,133,1);line-height:1.45;padding:0 16px 14px;}
.set-reset-btn{font-family:'Inter',sans-serif;font-size:14px;color:rgba(78,123,249,1);background:none;border:none;cursor:pointer;padding:0 14px;height:44px;display:flex;align-items:center;flex-shrink:0;}
.set-list{padding:0 13px;display:flex;flex-direction:column;gap:8px;}
.set-row{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:14px;padding:12px 14px;cursor:pointer;}
.set-row-label{font-family:'Inter',sans-serif;font-size:15px;color:rgba(24,24,16,1);}
.set-toggle{position:relative;width:46px;height:27px;border-radius:27px;background:rgba(200,200,200,1);flex-shrink:0;transition:background .2s ease;}
.set-toggle::after{content:"";position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s ease;}
.set-toggle.on{background:rgba(203,216,126,1);}
.set-toggle.on::after{transform:translateX(19px);}
.set-fx-row{display:flex;align-items:center;gap:8px;background:#fff;border-radius:14px;padding:10px 12px 10px 14px;}
.set-fx-mid{flex:1;display:flex;flex-direction:column;min-width:0;}
.set-fx-country{font-family:'Inter',sans-serif;font-size:15px;color:rgba(24,24,16,1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.set-fx-auto{font-family:'Inter',sans-serif;font-size:11px;color:rgba(150,150,150,1);}
.set-fx-eq{font-family:'Pribylskaia',serif;font-size:18px;color:rgba(24,24,16,1);white-space:nowrap;flex-shrink:0;}
.set-fx-input{width:74px;text-align:right;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;color:rgba(24,24,16,1);background:rgba(241,239,227,1);border:1px solid rgba(196,196,190,.6);border-radius:10px;padding:8px 10px;flex-shrink:0;}
.set-fx-unit{font-family:'Inter',sans-serif;font-size:14px;color:rgba(133,133,133,1);flex-shrink:0;}

/* PRIVACY / POLICY */
.policy{padding:0 16px 24px;font-family:'Inter',sans-serif;color:rgba(24,24,16,.9);}
.policy h2{font-family:'Pribylskaia',serif;font-size:24px;font-weight:normal;margin:0 0 4px;color:rgba(24,24,16,1);line-height:1.1;}
.policy h3{font-family:'Inter',sans-serif;font-size:15px;font-weight:700;margin:18px 0 6px;color:rgba(24,24,16,1);}
.policy p{font-size:13px;line-height:1.5;margin:0 0 7px;}
.policy a{color:rgba(78,123,249,1);text-decoration:none;}
.policy .policy-version{font-size:12px;color:rgba(133,133,133,1);margin-bottom:10px;}

/* COOKIE CONSENT */
.cookie-banner{position:fixed;left:50%;transform:translateX(-50%);bottom:0;width:100%;max-width:430px;z-index:400;padding:14px 13px calc(14px + env(safe-area-inset-bottom));background:rgba(24,24,16,1);color:rgba(241,239,227,1);box-shadow:0 -6px 24px rgba(0,0,0,.28);display:none;}
.cookie-banner.show{display:block;animation:cookie-up .32s cubic-bezier(.33,1,.68,1);}
@keyframes cookie-up{from{transform:translate(-50%,100%);}to{transform:translate(-50%,0);}}
.cookie-text{font-family:'Inter',sans-serif;font-size:12px;line-height:1.45;margin-bottom:10px;}
.cookie-text a{color:rgba(247,199,83,1);text-decoration:none;}
.cookie-btns{display:flex;gap:8px;}
.cookie-btn{flex:1;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;border:none;border-radius:12px;padding:11px 0;cursor:pointer;transition:transform .12s ease,opacity .12s ease;}
.cookie-btn:active{transform:scale(.97);}
.cookie-accept{background:rgba(247,199,83,1);color:rgba(24,24,16,1);}
.cookie-reject{background:rgba(255,255,255,.14);color:rgba(241,239,227,1);}

/* RATE-LIMIT POPUP (no backdrop, just a shadowed card) */
.rl-pop{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.92);z-index:600;background:#fff;border-radius:20px;box-shadow:0 14px 44px rgba(0,0,0,.24);padding:22px 22px 18px;width:300px;max-width:88%;text-align:center;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .22s cubic-bezier(.34,1.56,.64,1);}
.rl-pop.show{opacity:1;transform:translate(-50%,-50%) scale(1);pointer-events:auto;}
.rl-pop-title{font-family:'Pribylskaia',serif;font-size:24px;color:rgba(24,24,16,1);margin-bottom:8px;}
.rl-pop-text{font-family:'Inter',sans-serif;font-size:14px;color:rgba(24,24,16,.7);line-height:1.45;margin-bottom:16px;}
.rl-pop-btn{font-family:'Inter',sans-serif;font-size:15px;font-weight:600;background:rgba(247,199,83,1);color:rgba(24,24,16,1);border:none;border-radius:13px;padding:11px 30px;cursor:pointer;box-shadow:0 2px 10px rgba(247,199,83,.4);}
.rl-pop-btn:active{transform:scale(.97);}
