:root{--bg: #f7f6f2;--bg-soft: #fbfaf7;--text-main: #1b2333;--text-muted: #5d6778;--glass: rgba(255, 255, 255, .62);--glass-border: rgba(255, 255, 255, .75);--electric-blue: #2f6dff;--deep-purple: #5d47d8;--neon-coral: #ff6f61;--neo-mint: #89d6c2;--lavender: #c9c0ff;--shadow-soft: 0 14px 32px rgba(53, 67, 88, .16)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Sora,Manrope,Segoe UI,sans-serif;color:var(--text-main);background:radial-gradient(1200px 700px at 10% -20%,rgba(137,214,194,.5),transparent 60%),radial-gradient(1000px 620px at 100% 10%,rgba(201,192,255,.45),transparent 62%),radial-gradient(900px 500px at 0% 100%,rgba(255,207,183,.35),transparent 58%),var(--bg)}.appShell{min-height:100vh;max-width:860px;margin:0 auto;padding:16px 16px 96px}.content{display:grid;gap:12px}.panel{border-radius:20px;border:1px solid var(--glass-border);background:linear-gradient(160deg,var(--glass),rgba(255,255,255,.45));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);padding:14px}.topStats{display:flex;justify-content:flex-end}.tonChip{border-radius:999px;padding:9px 15px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--electric-blue),var(--deep-purple));box-shadow:0 10px 20px #4e4bbe59}.notice{border-radius:12px;padding:10px 12px;border:1px solid rgba(255,111,97,.28);background:#ff6f611f;color:#9a2f25}h2,h3,p{margin:0}h2{font-size:30px;line-height:1.05;letter-spacing:-.02em;font-weight:800}h3{font-size:24px;line-height:1.15;letter-spacing:-.01em}.homePanel{display:grid;gap:12px;min-height:178px}.subtle{color:var(--text-muted)}.countdown{font-size:clamp(28px,8vw,44px);line-height:1;letter-spacing:.03em;font-weight:900;color:#243153}.primary,.mini,.subtab,.navBtn,select,input,button{font:inherit}.primary,.mini,.subtab,.navBtn{border:none;cursor:pointer}.primary{width:fit-content;border-radius:14px;padding:11px 16px;color:#fff;font-weight:700;background:linear-gradient(135deg,var(--electric-blue),var(--deep-purple));box-shadow:0 10px 24px #4753d259;transition:transform .15s ease,box-shadow .15s ease}.primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px #4753d266}.primary:disabled{opacity:.55;cursor:not-allowed}.mini{border-radius:11px;padding:8px 12px;color:#273153;background:linear-gradient(160deg,#ffffffbf,#eef1fab8);border:1px solid rgba(80,99,128,.2)}.subtabs{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.subtab{border-radius:11px;padding:10px;color:#4f5b73;background:#ffffff94;border:1px solid rgba(160,178,203,.35);transition:transform .12s ease,background .12s ease}.subtab.active{color:#fff;background:linear-gradient(130deg,var(--electric-blue),var(--deep-purple));border-color:transparent;transform:translateY(-1px)}.inventoryGrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.invCard{border-radius:14px;border:1px solid rgba(171,186,209,.38);background:linear-gradient(160deg,#ffffffbd,#f5f8ff9e);overflow:hidden;box-shadow:inset 0 1px #fffc}.invArt{height:96px;display:grid;place-items:center;font-weight:800;letter-spacing:.03em;color:#fff;background:linear-gradient(140deg,#79c9b4,#7ea8df)}.invArt small{font-size:11px}.packArt{background:linear-gradient(140deg,var(--neo-mint),#6ca9d9)}.rewardArt{background:linear-gradient(140deg,#d8c091,#b59176)}.invMeta{padding:9px 10px 10px;display:grid;gap:4px}.invMeta span{font-weight:700;font-size:14px;line-height:1.2}.invMeta strong{font-size:13px;color:#364358}.invMeta small{color:#71809a;font-size:12px}.listWrap{display:grid;gap:8px}.listItem{border-radius:12px;border:1px solid rgba(158,177,202,.35);background:#ffffffa8;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px}.listItem small{display:block;margin-top:3px;color:#6f7f97}.marketPanel{display:grid;gap:14px}.marketCreate{display:grid;gap:8px}input,select{width:100%;border-radius:10px;border:1px solid rgba(150,170,197,.42);background:#ffffffd1;color:#1f2a40;padding:9px 10px}.marketItem{align-items:flex-start}.bottomNav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#f7f6f2e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(185,199,220,.5)}.navBtn{border-radius:12px;padding:11px 8px;color:#5b687d;font-size:13px;font-weight:600;background:#ffffffb3;border:1px solid rgba(168,184,207,.34)}.navBtn.active{color:#fff;background:linear-gradient(130deg,var(--electric-blue),var(--deep-purple));border-color:transparent}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#141a2666;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:14px;z-index:40}.modal{width:min(420px,100%);display:grid;gap:14px}.packPulse{width:132px;height:172px;margin:0 auto;border-radius:16px;display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.04em;background:linear-gradient(145deg,var(--neo-mint),var(--electric-blue));animation:pulse 1.3s ease-in-out infinite}.revealCard{border-radius:14px;padding:16px;text-align:center;animation:reveal .4s ease-out}.rarityText{letter-spacing:1.2px;font-size:12px;margin-bottom:6px}.rarity-common{background:linear-gradient(160deg,#d9e6ff,#cddcf7);color:#28334d}.rarity-rare{background:linear-gradient(160deg,#b9ddff,#9ac8f8);color:#1f3353}.rarity-epic{background:linear-gradient(160deg,#dcc8ff,#c7aff9);color:#33244d}.rarity-relic{background:linear-gradient(160deg,#f3ddb5,#e8c693);color:#4b331e}.rarity-legendary{background:linear-gradient(145deg,#ffd385,#ffb45e);color:#3b270f}.actions{display:flex;justify-content:flex-end;gap:8px}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #2f6dff3d}50%{transform:scale(1.04);box-shadow:0 0 26px #5d47d859}to{transform:scale(1);box-shadow:0 0 #2f6dff33}}@keyframes reveal{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 420px){.appShell{padding:12px 12px 94px}.subtabs{grid-template-columns:repeat(3,minmax(0,1fr))}.inventoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
