:root{color-scheme:dark;--bg:#0d0e11;--panel:rgba(24,26,32,.72);--line:rgba(255,255,255,.08);--text:#f4f4f5;--muted:#9699a2;--accent:#ddd9cf;--glow:rgba(144,194,255,.12);font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}.ambient{position:fixed;inset:0 0 auto;height:55vh;background:radial-gradient(ellipse at 50% -25%,var(--glow),transparent 70%);pointer-events:none;z-index:-1;transition:.4s}.app{max-width:720px;margin:auto;padding:20px 18px 44px;position:relative}header{height:58px;display:flex;align-items:center;justify-content:space-between;position:relative}.userblock{display:flex;align-items:center;gap:9px;min-width:125px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#292b31;border:1px solid var(--line);font-weight:800;overflow:hidden}.username{font-size:12px;font-weight:700;max-width:112px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank{font-size:10px;color:var(--muted);margin-top:2px}.brand{position:absolute;left:50%;transform:translateX(-50%);font-size:16px;font-weight:800;letter-spacing:.14em}.actions{display:flex;gap:8px}.icon{width:38px;height:38px;font-size:16px;position:relative}.glass,.card,.modal,.banner,.settingsbox{background:var(--panel);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:20px}.icon,.btn,.chip,.tab,.lang button,.media-arrow{color:inherit;cursor:pointer}.lang{width:max-content;margin:6px auto 18px;padding:5px 9px;display:flex;align-items:center;gap:9px;border-radius:30px}.lang button{border:0;background:none;color:var(--muted);font-size:10px;padding:3px}.lang button.selected{color:#fff;font-weight:800}.lang i{width:1px;height:12px;background:var(--line)}.banner{padding:20px 21px;margin:0 0 16px;min-height:118px}.eyebrow{font-size:9px;letter-spacing:.16em;color:var(--muted)}h1{font-size:18px;line-height:1.3;margin:8px 0 4px}p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.tabs{display:flex;gap:7px;margin:16px 0}.tab{border:1px solid transparent;background:none;color:var(--muted);padding:8px 12px;border-radius:20px;font-size:11px}.tab.active{background:rgba(255,255,255,.08);border-color:var(--line);color:#fff}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{border-radius:18px;overflow:hidden}.product-media{aspect-ratio: .9;background:linear-gradient(145deg,#202228,#121316);position:relative;overflow:hidden}.product-media img,.product-media video{width:100%;height:100%;object-fit:cover;display:block}.kind{position:absolute;top:10px;left:10px;border:1px solid #ffffff22;background:#101115c7;padding:5px 8px;border-radius:30px;font-size:9px;backdrop-filter:blur(8px)}.product-info{padding:12px}.product-title{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-description{font-size:10px;margin:5px 0 9px;min-height:24px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.price{font-size:13px;font-weight:800}.oldprice{font-size:10px;color:var(--muted);text-decoration:line-through;margin-left:4px}.sizes{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.chip{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:8px;padding:5px 7px;font-size:9px;color:var(--muted)}.chip.selected{color:#fff;border-color:#ffffff88;background:#ffffff14}.btn{border:1px solid var(--line);border-radius:11px;background:#ebe8e0;color:#121316;font-weight:800;font-family:inherit;font-size:10px;padding:10px 9px;width:100%;transition:.16s}.btn:active{transform:scale(.98)}.btn.secondary{background:rgba(255,255,255,.055);color:#eee}.btn:disabled{opacity:.4;cursor:not-allowed}.buyrow{display:grid;grid-template-columns:1fr 1fr;gap:6px}.product-admin{display:flex;gap:6px;margin-top:7px}.product-admin .btn{padding:8px}.add-card{display:grid;place-items:center;min-height:280px;border:1px dashed #ffffff33;background:rgba(255,255,255,.025);color:#eee;font-size:38px;cursor:pointer}.add-card small{display:block;font-size:10px;color:var(--muted);margin-top:8px}.empty{padding:45px 20px;text-align:center;color:var(--muted);font-size:12px}.badge{position:absolute;right:-3px;bottom:-3px;min-width:17px;height:17px;border-radius:20px;padding:0 4px;background:#e9e5dc;color:#131417;font-size:9px;font-weight:800;display:grid;place-items:center}.hidden{display:none!important}footer{display:flex;justify-content:space-between;color:#555860;font-size:8px;letter-spacing:.12em;margin:35px 3px 0}.settingsbox{padding:16px;margin:14px 0}.settingsbox h2{font-size:14px;margin:0 0 13px}.field{margin:10px 0}.field label{font-size:10px;color:var(--muted);display:block;margin-bottom:6px}.field input,.field textarea,.field select{width:100%;background:#101115;border:1px solid var(--line);border-radius:10px;padding:11px;color:#fff;font:inherit;font-size:11px;outline:none}.field textarea{min-height:68px;resize:vertical}.checkrow{display:flex;align-items:center;gap:8px;color:#bbb;font-size:10px;margin:9px 0}.checkrow input{accent-color:#ddd}.leader{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:8px}.leader .place{font-weight:800;font-size:13px;width:25px}.leader.gold{box-shadow:inset 0 0 25px #facc1518;border-color:#facc1544}.leader.silver{box-shadow:inset 0 0 25px #e2e8f018;border-color:#e2e8f044}.leader.bronze{box-shadow:inset 0 0 25px #d9770618;border-color:#d9770644}.leader .who{flex:1;font-size:11px;font-weight:700}.leader .pieces{font-size:10px;color:var(--muted)}.profilecard{padding:22px;text-align:center}.profilebig{width:58px;height:58px;border-radius:50%;background:#292b31;display:grid;place-items:center;margin:0 auto 10px;font-size:20px;font-weight:800}.stats{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.stat{padding:12px;border-radius:14px;background:#ffffff08}.stat strong{display:block;font-size:15px}.stat span{font-size:9px;color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:#000a;backdrop-filter:blur(7px);display:grid;place-items:center;padding:18px;z-index:4}.modal{width:min(100%,440px);max-height:90vh;overflow:auto;padding:20px;box-shadow:0 30px 100px #0009}.modal h2{font-size:17px;margin:0 0 14px}.modal .close{float:right;border:0;background:none;color:#aaa;font-size:20px;cursor:pointer}.modal-media{aspect-ratio:1.12;background:#17181d;border-radius:15px;overflow:hidden;margin:-3px 0 15px}.modal-media img,.modal-media video{width:100%;height:100%;object-fit:cover}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.pay-icons{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.pay-icons span{font-size:9px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#ffffff08}.copyrow{display:flex;gap:6px;align-items:center}.copyrow code{flex:1;background:#101115;border:1px solid var(--line);border-radius:10px;padding:12px;font-size:12px}.order-number{display:flex;align-items:center;gap:7px;background:#ffffff08;border:1px solid var(--line);border-radius:14px;padding:12px;margin:14px 0}.order-number strong{flex:1;font-size:17px;letter-spacing:.05em}.muted-note{font-size:10px;color:var(--muted);line-height:1.6;margin:10px 0}.timer{margin-top:16px}.media-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:30px;height:30px;background:#111b;color:#fff}.media-arrow.left{left:8px}.media-arrow.right{right:8px}.media-dots{position:absolute;bottom:8px;left:0;right:0;display:flex;gap:4px;justify-content:center}.media-dots b{width:4px;height:4px;border-radius:50%;background:#ffffff66}.media-dots b.on{background:white}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;background:#24262c;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:11px;transition:.2s;z-index:9;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}body[data-season=autumn]{--glow:rgba(226,129,58,.14)}body[data-season=spring]{--glow:rgba(84,196,143,.13)}body[data-season=summer]{--glow:rgba(235,196,92,.13)}body[data-season=winter]{--glow:rgba(144,194,255,.12)}#snow{pointer-events:none;position:fixed;inset:0;overflow:hidden;z-index:-1}body[data-season=winter] #snow:before,body[data-season=winter] #snow:after{content:"";position:absolute;inset:-100% 0;background-image:radial-gradient(2px 2px at 20px 30px,#fff9 50%,transparent),radial-gradient(1px 1px at 80px 130px,#fff8 50%,transparent),radial-gradient(2px 2px at 160px 50px,#fff7 50%,transparent);background-size:180px 180px;animation:snow 18s linear infinite}body[data-season=winter] #snow:after{background-size:250px 250px;animation-duration:27s;opacity:.5}@keyframes snow{to{transform:translateY(100vh)}}@media(max-width:390px){.app{padding:14px 12px 36px}.grid{gap:9px}.product-info{padding:10px}.btn{font-size:9px}.banner{padding:16px}}

/* Bottom navigation: native, restrained outline icons and clear tap targets. */
.app{padding-bottom:112px}
.icon{display:grid;place-items:center;padding:0}
.icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav{position:fixed;z-index:15;isolation:isolate;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(684px,calc(100% - 20px));min-height:68px;padding:7px 5px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-radius:18px;background:rgba(20,22,27,.96);box-shadow:0 12px 40px rgba(0,0,0,.4);touch-action:manipulation}
.nav-item{position:relative;z-index:1;min-width:0;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px 2px;border:1px solid transparent;border-radius:12px;background:transparent;color:#8d9098;text-decoration:none;font-family:inherit;font-size:8px;line-height:1.1;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none}
.nav-item svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.nav-item.active{color:#f4f2ec;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.07)}
.nav-item:active{transform:scale(.96)}
.nav-item:focus-visible{outline:2px solid rgba(255,255,255,.55);outline-offset:1px}
.support-item{font-size:7.5px}
.profile-lang{display:flex;gap:8px;margin:16px 0}
.profile-lang .chip{min-width:52px;text-align:center;font-size:11px;padding:8px 12px}
.support-large{display:block;text-align:center;text-decoration:none;margin-top:12px;padding:13px}
.crown{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.leader.gold .crown{color:#facc15}
#toast{bottom:calc(88px + env(safe-area-inset-bottom))}
@media(max-width:360px){.bottom-nav{width:calc(100% - 12px);padding-inline:2px}.nav-item{font-size:7px}.support-item{font-size:6.7px}.nav-item svg{width:18px;height:18px}}

/* Telegram Mini App and small-screen ergonomics. */
html{min-height:100%;overscroll-behavior-y:contain}
body{min-height:100vh;min-height:100dvh;min-height:var(--tg-viewport-stable-height,100dvh)}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.modal-backdrop{z-index:20;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:max(18px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom))}
.modal{max-height:calc(100dvh - 36px);scrollbar-width:thin}
#toast{z-index:30}
@media(max-width:600px){
  .app{width:100%;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  .banner{min-height:104px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .modal-backdrop{align-items:flex-start;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
  .modal{width:100%;max-height:calc(100dvh - 24px);margin:auto 0}
  .field input:not([type=file]),.field textarea,.field select{font-size:16px;scroll-margin-block:12px}
  .field input[type=file]{font-size:13px;max-width:100%}
  body.keyboard-open .bottom-nav{transform:translate(-50%,calc(100% + 20px));opacity:0;pointer-events:none}
  body.keyboard-open .modal-backdrop{padding-top:max(8px,env(safe-area-inset-top));padding-bottom:8px}
  body.keyboard-open .modal{max-height:calc(100dvh - 16px)}
}
