*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Arial,sans-serif;background:#0c0d10;color:#fafafa}body{background:radial-gradient(ellipse at 50% -25%,#24262c,#0d0e11 65%)}button{font:inherit;cursor:pointer}#app{min-height:100dvh}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px max(16px,calc((100vw - 1160px)/2));border-bottom:1px solid #26292f;background:#15171b}.brand{display:flex;align-items:center;gap:10px}.brand b{font-size:17px;white-space:nowrap}.brand em{font-style:normal;color:#ffda00}.brand small{display:block;color:#92959e;font-size:9px;letter-spacing:1px;margin-top:2px}.logo{width:37px;height:37px;display:grid;place-items:center;background:#ffdd00;color:#18191c;font-size:32px;font-weight:900;clip-path:polygon(50% 0,100% 45%,100% 75%,50% 100%,0 75%,0 45%)}.wallet{display:flex;gap:7px}.wallet span{background:#24262b;border:1px solid #373a41;border-radius:8px;padding:9px 12px;font-size:13px;white-space:nowrap}main{max-width:1200px;margin:auto;padding:22px 16px 115px}.pagehead{display:flex;justify-content:space-between;align-items:end;gap:10px;margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:1.3px;color:#e4c800}h1{font-size:21px;margin:5px 0 0;letter-spacing:.3px}h2{font-size:14px;margin:0}.safe{background:#27240c;border:1px solid #75681b;border-radius:6px;color:#ffe34a;padding:8px;font-size:10px;font-weight:800;white-space:nowrap}.workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.75fr) minmax(0,1fr);align-items:center;gap:16px}.panel-slot{height:275px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:17px 10px;background:radial-gradient(ellipse at 50% 45%,#2d2d32,#1b1d21 65%);border:1px solid #363a40;border-radius:12px;text-align:center;overflow:hidden}.panel-slot.target{border-color:#665818;background:radial-gradient(ellipse at 50% 45%,#352e1a,#1b1d21 70%)}.panel-slot small{font-size:10px;color:#bdc1c9;font-weight:700}.panel-slot b{font-size:14px;line-height:1.2}.panel-slot>span{font-size:11px;color:#a6abb5}.panel-slot label{padding:4px 10px;color:#ffe663;border-radius:5px;background:#393213;font-weight:800;font-size:11px}.weapon-art{height:145px;width:100%;display:grid;place-items:center;filter:drop-shadow(0 10px 18px #000);transition:transform .2s}.gun{width:min(100%,235px);height:100%;object-fit:contain;transform:rotate(-10deg)}.core{align-items:center;display:flex;flex-direction:column;gap:7px;text-align:center}.circular{width:min(100%,210px);aspect-ratio:1;border-radius:50%;padding:12px;background:conic-gradient(#ffdf00 0 265deg,#292b30 265deg 360deg);box-shadow:0 0 0 1px #303236,0 0 28px #ffd70012}.circle-inner{width:100%;height:100%;border:13px solid #121317;background:#222328;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center}.arrows{font-weight:950;color:#ffe000;font-size:65px;line-height:.5;transform:translateY(-3px)}.circle-inner small{margin-top:23px;font-size:9px;color:#ddd}.core-caption{font-size:13px;color:#ffe45a}.core>span{font-size:10px;color:#a1a4aa}.action-row{display:flex;align-items:center;flex-direction:column;gap:14px;margin:18px 0 23px}.primary{background:#ffda00;border:0;border-radius:10px;color:#111;font-weight:900;padding:15px 27px;font-size:15px;min-width:260px;box-shadow:0 3px 0 #bc9900}.primary:disabled{background:#625d43;color:#a5a195;box-shadow:none;cursor:not-allowed}.level-row{width:min(460px,100%);display:flex;align-items:center;gap:12px;font-size:10px;color:#969ba6}.progress{flex:1;height:6px;border-radius:9px;background:#34363b;overflow:hidden}.progress div{height:100%;background:#ffdb00}.shelves{display:grid;grid-template-columns:1fr 1fr;gap:14px}.shelf{background:#181a1e;border:1px solid #30333a;border-radius:12px;padding:11px;min-width:0}.shelf-title{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #33363d;padding-bottom:12px;margin-bottom:12px}.shelf-title h2{color:#f6f6f6}.shelf-title span{font-size:10px;color:#9da1ad}.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.item{--glow:#ffdd00;min-width:0;border:1px solid #393c43;background:#222429;border-radius:8px;padding:7px;text-align:left;display:flex;flex-direction:column;gap:5px;position:relative}.item.selected{border-color:#ffe000;box-shadow:inset 0 0 0 1px #ffe00077}.item-art{height:77px;border-radius:5px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--glow),transparent 72%),#17191e 75%);display:grid;place-items:center}.item-art .gun{width:100%;max-width:160px}.item-info strong{font-size:11px;line-height:1.25;min-height:26px}.item-info small{color:#a9adb6;font-size:9px}.pill{font-size:10px;color:#ffdf4e;font-weight:800}.item button{border:1px solid #685d21;background:#4b4117;color:#ffe26a;border-radius:5px;font-weight:700;font-size:11px;padding:7px}.standalone{grid-template-columns:repeat(4,minmax(0,1fr))}.hidden{display:none!important}.sub{font-size:12px;color:#a1a5ae}.profile-card,.daily{border:1px solid #34373c;border-radius:12px;background:#202228;padding:18px;margin:16px 0}.profile-card{display:flex;align-items:center;gap:15px}.avatar{width:55px;height:55px;background:#ffdb00;color:#222;border-radius:50%;display:grid;place-items:center;font-size:27px;font-weight:900}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.stats>div{padding:16px 5px;background:#23252b;border-radius:10px;text-align:center}.stats b,.stats small{display:block}.stats small{color:#abb0b8;font-size:11px}.daily .primary{margin-top:12px}nav{position:fixed;bottom:0;left:0;right:0;background:#17191e;border-top:1px solid #34363d;display:flex;justify-content:center;padding:8px 10px max(8px,env(safe-area-inset-bottom));z-index:9}.nav{min-width:86px;padding:5px 12px;border:0;border-radius:7px;background:none;color:#a7abb4;font-size:22px;font-weight:800}.nav span{display:block;font-size:10px;font-weight:500}.nav.active{background:#403910;color:#ffe200}#toast{position:fixed;bottom:92px;left:50%;transform:translateX(-50%);background:#292c31;border:1px solid #686d73;color:white;border-radius:9px;padding:12px 18px;opacity:0;pointer-events:none;max-width:min(90%,450px);z-index:20;text-align:center;transition:opacity .2s}#toast.show{opacity:1}.pulse .weapon-art{animation:pop .55s}.spinning{animation:spin .7s ease-in-out}@keyframes spin{50%{transform:rotate(155deg);filter:brightness(1.6)}}@keyframes pop{50%{transform:scale(1.14);filter:drop-shadow(0 0 24px #ffdc00)}}@media(max-width:660px){.top{padding:10px}.brand b{font-size:13px}.brand small{font-size:8px}.logo{height:29px;width:29px;font-size:24px}.wallet span{padding:7px;font-size:11px}.wallet{gap:4px}main{padding:15px 10px 95px}.pagehead{margin-bottom:13px}h1{font-size:15px}.eyebrow{font-size:9px}.safe{font-size:8px;padding:5px}.workbench{gap:6px;grid-template-columns:minmax(0,1fr) 86px minmax(0,1fr)}.panel-slot{height:190px;padding:9px 4px}.panel-slot small{font-size:8px}.panel-slot b{font-size:10px}.panel-slot>span{font-size:8px}.weapon-art{height:92px}.core{gap:6px}.circular{padding:5px;width:85px}.circle-inner{border-width:6px}.arrows{font-size:30px}.circle-inner small{font-size:6px;margin-top:9px}.core-caption{font-size:9px}.core>span{font-size:8px}.action-row{margin:12px 0}.primary{min-width:0;width:100%;padding:13px;font-size:14px}.shelves{grid-template-columns:1fr;gap:10px}.items{grid-template-columns:repeat(3,minmax(0,1fr))}.standalone{grid-template-columns:repeat(2,minmax(0,1fr))}.item-art{height:64px}.shelf{padding:10px}.nav{min-width:65px;font-size:21px;padding:5px 8px}.shelf-title h2{font-size:12px}.shelf-title span{font-size:9px}}@media(max-width:345px){.workbench{grid-template-columns:minmax(0,1fr) 69px minmax(0,1fr)}.circular{width:69px}.panel-slot{height:175px}.weapon-art{height:75px}.core>span{display:none}.nav{min-width:55px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition:none!important}}
/* v0.4: вращающийся индикатор и управление скоростью */
.spin-controls{display:flex;gap:7px;align-items:center;margin:-5px 0 15px}.spin-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;flex:1}.spin-presets button,.spin-settings,.speed-btn,.spin-settings-panel button{background:#24262c;color:#d5d6d9;border:1px solid #45464a;border-radius:6px;padding:10px 3px;font-size:12px;font-weight:750}.spin-presets button.selected,.speed-btn.active{border-color:#f7bc18;background:#483818;color:#ffdc57}.spin-settings{padding:10px 13px;font-size:18px}.spin-settings-panel{background:#22252a;border:1px solid #4a422a;border-radius:10px;padding:12px;margin-bottom:15px}.spin-settings-panel p{font-size:11px;color:#a6a8ac}.percent-inputs{display:flex;gap:8px;margin:10px 0}.percent-inputs label{display:flex;align-items:center;gap:5px}.percent-inputs input{width:65px;border:1px solid #686463;background:#111216;color:white;padding:8px;border-radius:5px}.spin-settings-panel button{padding:9px 18px;color:#ffe46a}.circular{position:relative;isolation:isolate;overflow:visible}.spin-needle{position:absolute;inset:0;pointer-events:none;z-index:4;transform:rotate(0deg);transform-origin:50% 50%}.spin-needle span{position:absolute;left:50%;top:-10px;transform:translateX(-50%);color:#fff0a0;text-shadow:0 0 10px #ffc018;font-size:23px}.circle-inner{position:relative;z-index:2}.circle-inner strong{display:block;font-size:17px;color:#ffe45c;margin-top:12px}.circle-inner small{margin-top:5px}.speed-row{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}.speed-row>span{font-size:10px;color:#aeb0b6;letter-spacing:.5px}.speed-btn{padding:9px 12px}.spin-controls button:disabled,.speed-btn:disabled{opacity:.55;cursor:not-allowed}.circular.rolling{box-shadow:0 0 36px #ffdf0066;filter:brightness(1.13)}.circular.rolling .arrows{animation:spin-glow .38s linear infinite}@keyframes spin-glow{50%{filter:brightness(1.8);transform:translateY(-3px) scale(1.07)}}
@media(max-width:660px){.spin-controls{margin:0 0 12px}.spin-presets button{font-size:10px;padding:9px 1px}.spin-settings{padding:7px;font-size:18px}.spin-needle span{font-size:15px;top:-8px}.circle-inner strong{font-size:11px;margin-top:5px}.circle-inner small{margin-top:2px}.speed-row>span{width:100%;text-align:center}.speed-btn{padding:8px 12px}}

/* v0.6 — roulette emphasis and inventory prices */
.arrows{display:none!important}
.center-brand{font-size:clamp(10px,2vw,17px);font-weight:900;letter-spacing:1.1px;color:#dce2ea;text-shadow:0 2px 12px #0008}
.circular{width:min(100%,260px);padding:14px;box-shadow:0 0 0 1px #555963,0 0 0 10px #ffffff06,0 12px 38px #0009}
.circle-inner{border:12px solid #15171b;background:radial-gradient(circle at 50% 38%,#2b2e35,#16181b 75%)}
.circle-inner strong{font-size:clamp(18px,2.3vw,27px);margin-top:12px}
.item-price{display:block;background:#15181d;border:1px solid #343941;border-radius:5px;padding:5px 6px;font-size:10px;color:#aeb5bf;margin-top:2px}
.item-price b{float:right;color:#ffdf60;font-size:11px}
.item-info{display:flex;flex-direction:column;gap:3px}
@media(max-width:660px){.workbench{grid-template-columns:minmax(0,1fr) 106px minmax(0,1fr);gap:5px}.circular{width:106px;padding:7px}.circle-inner{border-width:7px}.circle-inner strong{font-size:15px;margin-top:5px}.center-brand{font-size:9px;letter-spacing:0}.item-price{font-size:9px;padding:4px}.item-price b{font-size:9px}.item-info strong{min-height:0}}
@media(max-width:355px){.workbench{grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr)}.circular{width:82px}.center-brand{font-size:8px}.circle-inner strong{font-size:12px}}
/* AVENTIS UPGRADER v0.8 — real illustrative skins + wide desktop layout */
:root{--gold:#ff9c19;--gold-bright:#ffd26f;--surface:#1b1e24;--line:#343944;--muted:#a5adba}
html,body{background:#0c0e12;color:#f5f7fa}
body{background:radial-gradient(ellipse at 50% -20%,#28313e 0%,#15191e 45%,#0d0f13 86%)}
.top{background:#151920;border-color:#353b43;box-shadow:0 6px 30px #0005}
.logo{background:linear-gradient(135deg,#ffc247,#ff7800);color:#090a0c}
.brand em,.eyebrow{color:var(--gold)}
.wallet span{background:#20252d;border-color:#3a434e}
main{max-width:1280px;padding-top:25px}
.pagehead{margin-bottom:18px}
.safe{background:#302517;border-color:#8b561e;color:#ffbf68}
.spin-controls{margin:0 0 22px}
.spin-presets{gap:7px}
.spin-presets button,.spin-settings{background:#22262d;border-color:#3c434d;border-radius:6px;min-height:44px}
.spin-presets button:hover{background:#353239}
.spin-presets button.selected,.speed-btn.active{color:#ffc26b;border-color:#ff9d27;background:linear-gradient(180deg,#49321c,#2a2520)}
.workbench{grid-template-columns:minmax(0,1fr) minmax(220px,.82fr) minmax(0,1fr);gap:22px;align-items:stretch}
.panel-slot{height:355px;background:radial-gradient(circle at 50% 43%,#2b3540 0,#20252b 43%,#191c21 75%);border-color:#3b444f;position:relative;padding:22px 15px;gap:4px;box-shadow:inset 0 1px 0 #ffffff08;}
.panel-slot:before{content:"";position:absolute;inset:42px 8px 52px;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:26px 26px;pointer-events:none;opacity:.6}
.panel-slot.target{background:radial-gradient(circle at 50% 44%,#35281d,#201f21 60%,#181b1f 85%);border-color:#87642a}
.panel-slot small{font-size:12px;color:#e0e4ec;letter-spacing:.7px;position:relative}
.panel-slot b{font-size:17px;position:relative}
.panel-slot>span{position:relative}
.panel-slot label{color:#ffc46e;background:#40301c;position:relative}
.weapon-art{width:100%;height:205px;z-index:1;position:relative;overflow:visible}
.gun{max-width:100%;width:100%;object-fit:contain;height:100%;transform:none;filter:drop-shadow(0 14px 13px #0009)}
.target .gun{filter:drop-shadow(0 10px 18px #dc891633) saturate(1.18) brightness(1.14)}
.slot-price{font-weight:800;font-size:13px!important;color:#ffd180!important;letter-spacing:.3px}
.core{align-self:center;justify-content:center;gap:13px}
.circular{width:min(100%,315px);padding:18px;box-shadow:0 0 0 2px #3c4048,0 0 0 10px #242a30,0 12px 44px #0008}
.circular:before{content:"";position:absolute;inset:-22px;border-radius:50%;background:repeating-conic-gradient(#78808a 0deg 1deg,transparent 1.2deg 6deg);-webkit-mask:radial-gradient(transparent 0 68%,#000 69% 72%,transparent 73%);mask:radial-gradient(transparent 0 68%,#000 69% 72%,transparent 73%);pointer-events:none;opacity:.35}
.circle-inner{border:13px solid #101317;background:radial-gradient(circle at 48% 35%,#242e38,#111419 77%)}
.center-brand{font-size:19px;color:#eceff5;letter-spacing:1.7px;text-shadow:0 5px 15px #000}
.circle-inner strong{font-size:clamp(23px,4vw,42px);color:#ffad42;margin:4px 0}
.circle-inner small{color:#aab3c0;margin:0;font-size:10px;letter-spacing:1px}
.spin-needle{z-index:7}
.spin-needle span{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-size:26px;color:#ffb13e;text-shadow:0 0 12px #ff921a,0 0 22px #ff941e}
.core-caption{color:#ffb762}
.core>span{color:#aeb5bd;font-size:11px;max-width:220px}
.action-row{margin:30px 0 26px}
.primary{background:linear-gradient(180deg,#ffd55f,#ff9c16);border:1px solid #ffe19d;color:#17130e;box-shadow:0 4px 0 #915415,0 10px 20px #ffa62225;min-width:310px;text-transform:uppercase;letter-spacing:.7px}
.primary:hover:enabled{filter:brightness(1.06)}
.level-row .progress div{background:linear-gradient(90deg,#ff9b20,#ffe08a)}
.shelves{gap:18px}
.shelf{border-color:#3b4148;background:#171b21}
.shelf-title{border-color:#303840}
.item{background:#20262d;border-color:#3b454f;border-radius:9px;padding:8px;gap:6px;transition:transform .14s,border-color .14s}
.item:hover{border-color:#9a7b45;transform:translateY(-2px)}
.item.selected{border-color:#ffae3e;box-shadow:inset 0 0 0 1px #ffad3d55}
.item-art{height:115px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--glow),transparent 87%),#151b23 75%);border:1px solid #37414e}
.item-art .gun{max-width:100%;width:100%}
.item-info strong{font-size:12px;min-height:unset}
.pill{color:#ffd08c}
.item-price{border-color:#3b434a;color:#afb7bf;background:#11171d}
.item-price b{color:#ffc370}
.item button{background:#483118;border-color:#8c571d;color:#ffe0a4}
nav{background:#151b23;border-color:#414851}
.nav.active{background:#4a321b;color:#ffbc51}
#toast{border-color:#7e632f;background:#302518}
@media(max-width:720px){
 main{padding:16px 10px 110px}
 .top{padding:9px 11px}
 .spin-controls{margin-bottom:16px}
 .spin-presets{gap:3px}
 .spin-presets button,.spin-settings{font-size:10px;min-height:34px;padding:6px 0}
 .workbench{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"source target" "core core";align-items:stretch;column-gap:8px;row-gap:25px}
 #selected-art{grid-area:source}
 .panel-slot.target{grid-area:target}
 .core{grid-area:core;align-self:center}
 .panel-slot{height:234px;padding:12px 5px;gap:3px}
 .weapon-art{height:128px}
 .panel-slot small{font-size:9px}
 .panel-slot b{font-size:11px}
 .panel-slot>span{font-size:9px}
 .panel-slot label{font-size:10px}
 .slot-price{font-size:11px!important}
 .circular{width:212px;padding:14px}
 .circle-inner{border-width:11px}
 .center-brand{font-size:14px}
 .circle-inner strong{font-size:28px}
 .circle-inner small{font-size:9px}
 .core-caption{font-size:12px}
 .core>span{font-size:10px}
 .item-art{height:88px}
 .item-info strong{font-size:11px}
 .primary{min-width:0;width:100%}
 .action-row{margin:22px 0}
 .shelves{grid-template-columns:1fr}
 .item-price b{float:none;display:block;margin-top:4px}
}
@media(max-width:370px){.panel-slot{height:215px}.weapon-art{height:110px}.spin-presets button{font-size:9px}.wallet span{font-size:10px}.brand b{font-size:11px}.items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.circular.rolling{box-shadow:0 0 0 2px #3c4048}}

/* AVENTIS UPGRADER v0.9 — neutral cosmetic spin */
.spin-demo-btn{width:min(450px,100%);background:linear-gradient(180deg,#343942,#222831);border:1px solid #6b747f;border-radius:10px;color:#e7ebf0;font-weight:900;letter-spacing:.5px;padding:13px 18px;font-size:14px;cursor:pointer}
.spin-demo-btn:disabled{opacity:.55;cursor:not-allowed}
.spin-demo-btn:hover:enabled{border-color:#ffb531;background:linear-gradient(180deg,#4a4340,#262a30)}
.spin-outcome{display:block;max-width:260px;min-height:22px;font-weight:700;color:#aeb8c8!important;font-size:11px!important}
.core>span{line-height:1.3}
@media (max-width:720px){.spin-demo-btn{width:100%;padding:11px}.spin-outcome{font-size:11px!important}}

/* v1.0: One action button, no separate cosmetic spin */
.action-row > .primary {min-width:min(450px,100%);background:linear-gradient(180deg,#ffd25c 0%,#ffad28 100%);box-shadow:0 4px 0 #9c6315,0 8px 28px #ff98001a;border-radius:10px}
.action-row > .primary:disabled{background:#4b4b4c;color:#c3c5c9;box-shadow:none}
.core .spin-outcome{min-height:20px;font-size:11px}
@media(max-width:720px){.action-row>.primary{min-width:0}}

/* v1.1 catalog */
.catalog-search{display:block;width:100%;box-sizing:border-box;background:#12161b;border:1px solid #37424f;border-radius:9px;padding:12px 13px;color:#f4f7fb;font:inherit;font-size:13px;margin:0 0 12px;outline:none}
.catalog-search:focus{border-color:#ffb138;box-shadow:0 0 0 2px #ff9a1730}
.item-art{overflow:hidden}.item-art img{width:100%;height:100%;object-fit:contain}
.item-info strong{overflow-wrap:anywhere}
@media(max-width:660px){.catalog-search{font-size:12px;padding:10px}.item-art{height:89px}}

/* v1.2: нейтральный указатель до первой прокрутки */
.spin-needle.spin-idle{opacity:.35}

/* v1.3 — цена вместо уровней */
.slot-price{font-size:15px!important;color:#ffe17c!important;padding:5px 9px;background:#28291c;border-radius:7px}
.item-price{margin-top:auto;background:#1b1d22;border:1px solid #3c4049;border-radius:6px;padding:6px 5px;font-size:10px;color:#aeb4bf}
.item-price b{color:#ffce40;font-size:12px}
.panel-slot{justify-content:space-between}
.panel-slot .weapon-art{flex:1;min-height:0}
.stats{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:660px){.slot-price{font-size:12px!important;padding:5px 6px}.item-price b{font-size:10px}.panel-slot .weapon-art{min-height:62px}.workbench{row-gap:18px}.panel-slot{height:214px}}

/* v1.4: no paywall if last fictional cosmetic is lost. */
.starter { width:min(450px,100%); padding:12px 14px; font-weight:850; background:#26313a; color:#ffdb8a; border:1px solid #94702b; border-radius:9px; }
.starter:hover { background:#34414a; }
.empty-inventory {grid-column:1/-1;padding:18px;background:#242a30;border:1px dashed #656b70;border-radius:9px;color:#c6cbd2;font-size:13px;text-align:center}

/* v1.5: free starter available in both tabs; cooldown is enforced server-side. */
.inventory-claim{margin:4px 0 15px;display:block;width:100%;max-width:500px}
.starter:disabled{opacity:.64;cursor:not-allowed}
