:root{--bg:#0a0c10;--bg-soft:#0f1218;--panel:#131720;--panel-2:#191e29;--line:#252b37;--text:#f4f6f8;--muted:#8e95a4;--accent:#a9ff3d;--accent-2:#79dc16;--purple:#7967ff;--danger:#ff6767;--shadow:0 25px 80px rgba(0,0,0,.35)}
*{box-sizing:border-box}
[hidden]{display:none !important}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"DM Sans",sans-serif}button,input,select{font:inherit}button{border:0;cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
body.light{--bg:#f5f7fa;--bg-soft:#eef1f5;--panel:#fff;--panel-2:#f0f3f7;--line:#dce1e8;--text:#10141b;--muted:#68707e;--shadow:0 25px 70px rgba(38,49,62,.14)}
.site{min-height:100vh}.topbar{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.topbar-inner{max-width:1480px;margin:auto;padding:13px 28px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;background:transparent;font-weight:800;letter-spacing:.08em}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,var(--accent),#e8ffb8);color:#0b1207;display:grid;place-items:center;box-shadow:0 0 30px rgba(169,255,61,.18)}.brand-text{font-size:17px}.main-nav{display:flex;gap:5px}.nav-link{background:transparent;color:var(--muted);padding:9px 11px;border-radius:9px;font-weight:600;font-size:13px}.nav-link:hover,.nav-link.active{background:var(--panel-2);color:var(--text)}.top-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.search-box{height:40px;width:min(410px,34vw);display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--muted)}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);min-width:0}.search-box kbd{padding:3px 7px;border:1px solid var(--line);background:var(--bg-soft);border-radius:6px;font-size:10px;color:var(--muted)}.icon-btn{width:38px;height:38px;border-radius:10px;background:transparent;display:grid;place-items:center;color:var(--muted);position:relative}.icon-btn:hover{background:var(--panel-2);color:var(--text)}.has-dot:after{content:"";position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--bg)}.profile-btn{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 4px;border-radius:999px;background:var(--panel);border:1px solid var(--line)}.avatar{width:29px;height:29px;border-radius:50%;background:linear-gradient(145deg,var(--purple),#b0a6ff);display:grid;place-items:center;font-size:10px;font-weight:800}.profile-btn svg{width:14px}.mobile-menu{display:none}
.hero-section{max-width:1480px;margin:0 auto;padding:48px 34px 20px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}.hero-copy{padding:30px 15px 30px 0}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--muted)}.hero-copy h1{font-size:clamp(48px,6.4vw,84px);line-height:.94;letter-spacing:-.055em;margin:14px 0 19px}.hero-copy h1 span{color:var(--accent)}.hero-copy p{max-width:610px;margin:0 0 26px;color:var(--muted);line-height:1.7}.hero-actions{display:flex;gap:10px}.primary-btn,.secondary-btn,.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:12px 16px;font-weight:700}.primary-btn{background:var(--accent);color:#0e160a}.primary-btn:hover{background:var(--accent-2)}.secondary-btn,.ghost-btn{background:var(--panel);border:1px solid var(--line)}.secondary-btn:hover,.ghost-btn:hover{background:var(--panel-2)}.wide{width:100%}.hero-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:25px;color:var(--muted);font-size:11px}.hero-meta span{display:flex;align-items:center;gap:6px}.hero-meta svg{width:14px;color:var(--accent)}
.hero-art{height:430px;position:relative;display:grid;place-items:center}.hero-orbit{position:absolute;border:1px solid color-mix(in srgb,var(--accent) 26%,transparent);border-radius:50%;transform:rotate(-18deg)}.orbit-a{width:360px;height:360px}.orbit-b{width:270px;height:270px;border-color:color-mix(in srgb,var(--purple) 30%,transparent)}.hero-card{position:relative;width:260px;height:350px;border-radius:22px;border:1px solid #3c4453;background:linear-gradient(145deg,#26320f 0%,#11151d 46%,#3c2a66 100%);box-shadow:0 35px 90px rgba(0,0,0,.4);overflow:hidden}.hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 25%,rgba(169,255,61,.45),transparent 31%),radial-gradient(circle at 78% 72%,rgba(121,103,255,.42),transparent 34%)}.hero-card-top{position:absolute;left:17px;right:17px;top:15px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:#d9dde5}.hero-game-logo{position:absolute;inset:0;display:grid;place-items:center;font-size:110px;font-weight:900;color:rgba(255,255,255,.88);text-shadow:0 10px 35px rgba(0,0,0,.3)}.hero-card-bottom{position:absolute;left:18px;right:18px;bottom:16px}.hero-card-bottom strong{display:block;font-size:24px;letter-spacing:-.03em}.hero-card-bottom small{color:#c8ccd5}.hero-floating{position:absolute;padding:11px 12px;border:1px solid var(--line);background:var(--panel);border-radius:12px;box-shadow:var(--shadow);font-size:11px;font-weight:800}.float-one{left:5%;top:23%}.float-two{right:2%;bottom:21%;color:var(--accent)}
.content-section{max-width:1480px;margin:auto;padding:38px 34px 0}.section-last{padding-bottom:90px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}.section-head h2{margin:6px 0 0;font-size:26px;letter-spacing:-.03em}.compact-head{margin-bottom:18px}.section-controls{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.chip-row{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:8px 11px;background:var(--panel);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}.chip.active,.chip:hover{color:var(--text);background:var(--panel-2);border-color:#434b59}.sort-select{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:9px 10px;font-size:11px}.result-bar{display:flex;justify-content:space-between;align-items:center;margin:14px 0;color:var(--muted);font-size:11px}.text-btn{background:transparent;color:var(--muted);font-size:11px}.text-btn:hover{color:var(--text)}
.game-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.game-card{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease;position:relative}.game-card:hover{transform:translateY(-5px);border-color:#3b4350;background:var(--panel-2)}.cover{aspect-ratio:1.2/.98;position:relative;display:flex;align-items:flex-end;padding:13px;overflow:hidden}.cover:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 25% 20%,rgba(255,255,255,.38),transparent 20%),radial-gradient(circle at 75% 75%,rgba(255,255,255,.12),transparent 30%);transform:rotate(9deg)}.cover-logo{position:relative;font-size:31px;font-weight:800;letter-spacing:-.06em}.g1{background:linear-gradient(145deg,#223f0e,#11171a 52%,#3f5eea)}.g2{background:linear-gradient(145deg,#4a1c2e,#171017 56%,#de754a)}.g3{background:linear-gradient(145deg,#12363b,#101719 58%,#65debf)}.g4{background:linear-gradient(145deg,#3a3212,#15140e 55%,#d6b853)}.g5{background:linear-gradient(145deg,#2c2255,#13101d 57%,#b56dff)}.g6{background:linear-gradient(145deg,#1a3648,#0e151c 55%,#5da5ff)}.g7{background:linear-gradient(145deg,#4a2515,#17130f 58%,#ff9a52)}.g8{background:linear-gradient(145deg,#3d1a4f,#15101d 58%,#ed5fd1)}.game-badge{position:absolute;top:10px;right:10px;padding:5px 8px;border-radius:999px;background:rgba(8,10,13,.75);backdrop-filter:blur(8px);font-size:9px;font-weight:800}.discount{color:var(--accent)}.heart-btn{position:absolute;top:10px;left:10px;width:31px;height:31px;border-radius:9px;background:rgba(8,10,13,.72);backdrop-filter:blur(8px);display:grid;place-items:center;color:white}.heart-btn.liked{color:#ff6c8b}.game-info{padding:12px}.game-info h3{margin:0 0 5px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-info p{margin:0;color:var(--muted);font-size:11px}.game-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:11px}.price strong{font-size:14px}.old-price{margin-left:5px;text-decoration:line-through;color:var(--muted);font-size:10px}.rating{display:flex;align-items:center;gap:4px;font-size:10px;color:#dfe2e8}.rating svg{width:12px;fill:#ffd75f;color:#ffd75f}.quick-add{padding:8px 10px;border-radius:9px;background:var(--bg-soft);border:1px solid var(--line);font-size:10px;font-weight:700}.quick-add:hover{background:var(--accent);color:#10130d}
.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.collection{min-height:160px;position:relative;overflow:hidden;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--panel),var(--bg-soft))}.collection:after{content:"";position:absolute;right:-30px;bottom:-45px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,var(--accent),transparent 64%);opacity:.17}.collection h3{margin:9px 0 7px;font-size:21px}.collection p{max-width:260px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.collection .eyebrow{color:#cfd3db}.library-panel{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);display:flex;align-items:center;gap:14px}.library-icon{width:45px;height:45px;border-radius:12px;background:var(--panel-2);display:grid;place-items:center;color:var(--accent)}.library-panel h3{margin:0 0 4px;font-size:14px}.library-panel p{margin:0;color:var(--muted);font-size:11px}.library-panel .secondary-btn{margin-left:auto}
.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mini-card{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.mini-cover{width:56px;height:56px;border-radius:9px;display:grid;place-items:center;font-size:18px;font-weight:800}.mini-card strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-card span{display:block;font-size:10px;color:var(--muted);margin-top:3px}.empty-inline,.empty-state{text-align:center;color:var(--muted);padding:25px;border:1px dashed var(--line);border-radius:14px;margin-top:13px;font-size:12px}.empty-state{padding:80px 20px}.empty-state svg{width:34px;height:34px;margin-bottom:8px}.empty-state h3{margin:0 0 5px;color:var(--text)}.empty-state p{margin:0 0 15px}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(3px);z-index:70}.side-panel{position:fixed;right:0;top:0;bottom:0;width:min(430px,92vw);z-index:80;background:var(--panel);border-left:1px solid var(--line);padding:23px;display:flex;flex-direction:column;box-shadow:-30px 0 80px rgba(0,0,0,.3);transform:translateX(100%);transition:transform .23s ease}.side-panel.open{transform:translateX(0)}.side-panel.narrow{width:min(390px,92vw)}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.panel-head h3{margin:5px 0 0;font-size:23px}.cart-items{display:grid;gap:10px;overflow:auto;padding-right:3px}.cart-item{display:grid;grid-template-columns:62px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:13px}.cart-cover{width:62px;height:62px;border-radius:9px;display:grid;place-items:center;font-size:18px;font-weight:800}.cart-item h4{margin:0 0 4px;font-size:12px}.cart-item p{margin:0;color:var(--muted);font-size:10px}.cart-actions{display:flex;align-items:center;gap:4px;margin-top:8px}.qty-btn{width:25px;height:25px;border-radius:7px;background:var(--bg-soft);display:grid;place-items:center}.remove-btn{color:var(--danger);background:transparent;font-size:10px;margin-left:4px}.cart-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.total-row{display:flex;justify-content:space-between;margin-bottom:12px}.total-row strong{font-size:20px}.notification-list{display:grid;gap:8px}.notification{display:grid;grid-template-columns:36px 1fr;gap:9px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--bg-soft)}.notification-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center}.notification-icon.green{background:rgba(169,255,61,.12);color:var(--accent)}.notification-icon.purple{background:rgba(121,103,255,.12);color:#9d92ff}.notification-icon.blue{background:rgba(76,157,255,.12);color:#6bb2ff}.notification strong{font-size:11px}.notification p{margin:3px 0;color:var(--muted);font-size:10px;line-height:1.4}.notification small{font-size:9px;color:var(--muted)}
.modal-wrap{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.55);backdrop-filter:blur(8px)}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:22px;padding:25px;background:var(--panel);box-shadow:var(--shadow);position:relative}.modal-close{position:absolute;right:14px;top:14px}.modal-hero{display:grid;grid-template-columns:190px 1fr;gap:18px}.modal-cover{min-height:240px;border-radius:16px;display:grid;place-items:center;font-size:50px;font-weight:800}.modal-copy h2{margin:5px 0 7px;font-size:28px}.modal-copy p{margin:0;color:var(--muted);line-height:1.6;font-size:12px}.modal-tags{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.modal-tag{padding:5px 8px;border-radius:999px;border:1px solid var(--line);font-size:9px;color:var(--muted)}.modal-price{font-size:24px;font-weight:800;margin:14px 0}.modal-actions{display:flex;gap:8px}.auth-form{max-width:390px;margin:auto}.auth-form h2{margin:4px 0 7px;font-size:27px}.auth-form p{color:var(--muted);font-size:12px;line-height:1.55}.field{display:grid;gap:6px;margin-top:13px}.field label{font-size:10px;color:var(--muted);font-weight:700}.field input{width:100%;border:1px solid var(--line);background:var(--bg-soft);color:var(--text);border-radius:10px;padding:11px 12px;outline:0}.auth-form .primary-btn{width:100%;margin-top:16px}.auth-switch{margin-top:13px;text-align:center;color:var(--muted);font-size:11px}.auth-switch button{background:transparent;color:var(--accent);font-weight:700}.checkout-summary{display:grid;gap:8px}.summary-row{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.summary-row strong{color:var(--text)}.checkout-note{margin:15px 0;padding:12px;border-radius:11px;background:var(--bg-soft);border:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.5}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:120;background:#f3f4f6;color:#101216;border-radius:11px;padding:11px 15px;box-shadow:var(--shadow);font-size:11px;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:1200px){.game-grid{grid-template-columns:repeat(4,1fr)}.artist-grid{grid-template-columns:repeat(3,1fr)}.hero-section{grid-template-columns:1fr .7fr}.hero-art{transform:scale(.9)}}
@media(max-width:980px){.main-nav{display:none}.search-box{width:39vw}.game-grid{grid-template-columns:repeat(3,1fr)}.collection-grid{grid-template-columns:1fr 1fr}.mini-grid{grid-template-columns:1fr 1fr}.hero-section{grid-template-columns:1fr;padding-top:30px}.hero-art{height:300px}.hero-card{height:270px;width:215px}.orbit-a{width:280px;height:280px}.orbit-b{width:220px;height:220px}.hero-game-logo{font-size:85px}}
@media(max-width:700px){.topbar-inner{padding:11px 14px}.search-box{flex:1;width:auto}.search-box kbd,.themeBtn{}.top-actions .icon-btn#themeBtn{display:none}.profile-btn{display:none}.mobile-menu{display:grid}.hero-section,.content-section{padding-left:15px;padding-right:15px}.hero-copy{padding-right:0}.hero-copy h1{font-size:46px}.hero-meta{gap:10px}.section-head{align-items:flex-start;flex-direction:column}.section-controls{width:100%;justify-content:flex-start}.game-grid{grid-template-columns:repeat(2,1fr)}.collection-grid,.mini-grid{grid-template-columns:1fr}.library-panel{align-items:flex-start;flex-wrap:wrap}.library-panel .secondary-btn{margin-left:59px}.modal-hero{grid-template-columns:1fr}.modal-cover{min-height:180px}.modal-actions{flex-direction:column}.modal{padding:21px}.cart-footer{padding-bottom:6px}}
@media(max-width:440px){.brand-text{display:none}.search-box{height:38px}.hero-art{display:none}.game-grid{gap:9px}.game-card .game-info{padding:9px}.quick-add{padding:7px}.cover{padding:10px}.cover-logo{font-size:24px}.section-heading h2{font-size:22px}}

/* ================= V2 POLISH ================= */
:root{--bg:#090b0f;--panel:#12151b;--panel-2:#191d24;--line:#2a2f39;--text:#f6f7f9;--muted:#9298a6;--accent:#b8ff4a;--accent-hover:#a7ed39;--soft:#dfe4ea}
body.light{--bg:#f4f6f9;--panel:#fff;--panel-2:#eef1f5;--line:#dce2ea;--text:#10141b;--muted:#69717e;--soft:#11151b;background:var(--bg)}
body.light .topbar{background:rgba(244,246,249,.9)}
body.light .hero-section,.body.light .game-card{box-shadow:0 15px 45px rgba(15,23,42,.07)}
body.light .search-box,body.light .icon-btn,body.light .profile-btn,body.light .ghost-btn,body.light .secondary-btn,body.light .sort-select{background:#fff;color:var(--text);border-color:var(--line)}
body.light .game-card,body.light .collection,body.light .library-panel,.light .side-panel,.light .modal,.light .notification{background:var(--panel)}
body.light .quick-add{background:#11151b;color:#fff}
body.light .secondary-btn{color:var(--text)}
body.light .toast{background:#11151b;color:#fff}
.search-shell{position:relative}
.search-suggest{position:absolute;top:49px;left:0;right:0;min-width:310px;border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:7px;box-shadow:0 20px 60px rgba(0,0,0,.24);z-index:40}
.search-suggest button{width:100%;display:flex;align-items:center;gap:10px;padding:9px;border-radius:10px;background:transparent;text-align:left;color:var(--text)}
.search-suggest button:hover{background:var(--panel-2)}
.search-suggest button span:last-child{display:grid;gap:2px}.search-suggest small{color:var(--muted)}
.suggest-art{width:37px;height:37px;border-radius:9px;display:grid;place-items:center;font-size:11px;font-weight:800;border:1px solid var(--line)}
.suggest-empty{padding:13px;color:var(--muted);font-size:12px}
.nav-count{min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;border-radius:999px;background:var(--panel-2);font-size:10px}
.cart-button{position:relative}.cart-count{position:absolute;top:-1px;right:-1px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:var(--accent);color:#111;font-size:9px;font-weight:800;display:grid;place-items:center}
.panel-tools{display:flex;align-items:center;gap:6px}
.notification{position:relative;width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;padding:11px;border:0;border-radius:11px;background:transparent;color:var(--text);text-align:left}
.notification:hover{background:var(--panel-2)}
.notification.read{opacity:.76}.notification b{display:block}.notification p{margin:3px 0;color:var(--muted);font-size:12px}.notification small{color:var(--muted);font-size:10px}
.unread-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);margin-top:5px}
.account-card,.account-preview{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}
.account-avatar{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#6657ef,#3431a9);font-weight:800}
.account-card strong,.account-card span,.account-preview strong,.account-preview span{display:block}.account-card span,.account-preview span{margin-top:3px;color:var(--muted);font-size:12px}
.account-menu{display:grid;gap:4px;margin-top:12px}.account-menu button{display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;background:transparent;text-align:left;color:var(--text)}.account-menu button:hover{background:var(--panel-2)}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px 0}.detail-grid span{display:grid;gap:3px;padding:10px;border:1px solid var(--line);background:var(--panel-2);border-radius:10px;color:var(--muted);font-size:12px}.detail-grid b{color:var(--text);font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.modal-price{font-size:28px;font-weight:800;margin:17px 0}.modal-price del{font-size:14px;color:var(--muted);margin-left:7px}
.checkout-summary{display:grid;gap:8px;margin:16px 0;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.summary-row{display:flex;justify-content:space-between;gap:10px;font-size:13px}.summary-row.total{padding-top:10px;margin-top:4px;border-top:1px solid var(--line);font-size:15px}
.checkout-fields{display:grid;grid-template-columns:1.25fr .9fr;gap:10px;margin-bottom:14px}.checkout-fields label,.field label{display:grid;gap:7px;color:var(--muted);font-size:11px}.checkout-fields input,.checkout-fields select,.field input{width:100%;height:42px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);padding:0 11px;outline:0}
.settings-form{display:grid;gap:15px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.setting-row span{display:grid;gap:3px}.setting-row small{color:var(--muted)}.toggle{width:48px;height:27px;border-radius:99px;background:#333944;padding:3px}.toggle span{display:block;width:21px;height:21px;border-radius:50%;background:#fff;transition:.18s}.toggle.on{background:var(--accent)}.toggle.on span{transform:translateX(21px)}.danger-btn{padding:8px 11px;border-radius:9px;background:#432127;color:#ffbdc7}
.library-list{display:grid;gap:6px;margin-top:14px}.library-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:transparent;text-align:left}.library-item:hover{background:var(--panel-2)}.library-item span:nth-child(2){display:grid;gap:3px}.library-item small{color:var(--muted)}
.mini-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}
.bottom-bar{position:fixed;right:18px;bottom:15px;z-index:8;display:flex;gap:12px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(17,20,25,.86);backdrop-filter:blur(12px);color:var(--muted);font-size:10px}.bottom-bar kbd{padding:2px 5px;border-radius:5px;background:var(--panel-2);color:var(--text)}
@media(max-width:900px){.main-nav{display:none}.mobile-menu{display:grid}.mobile-nav{display:flex;gap:7px;padding:9px 15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);overflow:auto}.mobile-nav button{white-space:nowrap;padding:8px 11px;border-radius:9px;background:transparent;color:var(--muted)}.mobile-nav button.active{background:var(--panel-2);color:var(--text)}.checkout-fields{grid-template-columns:1fr}.bottom-bar{display:none}}
@media(max-width:640px){.search-suggest{min-width:260px}.detail-grid{grid-template-columns:1fr}.modal-price{font-size:24px}}


/* ================= FINAL UI / THEME POLISH ================= */
body,
.game-card,
.game-info,
.collection,
.library-panel,
.side-panel,
.modal,
.notification,
.search-box,
.profile-btn,
.secondary-btn,
.ghost-btn,
.quick-add,
.sort-select{transition:background-color .18s ease,color .18s ease,border-color .18s ease}

.game-info{
  width:100%;
  display:block;
  border:0;
  outline:0;
  background:transparent;
  color:var(--text);
  text-align:left;
  padding:14px 14px 12px;
  cursor:pointer;
}
.game-info:hover{background:transparent;color:var(--text)}
.game-info h3{color:var(--text);font-size:15px;font-weight:800;letter-spacing:-.015em;margin:0 0 6px}
.game-info p{color:var(--muted);font-size:11px;margin:0}
.game-bottom{margin-top:13px;gap:10px}
.price{display:flex;align-items:baseline;gap:7px;min-width:0}
.price strong{font-size:15px;letter-spacing:-.02em;color:var(--text)}
.old-price{margin:0;color:var(--muted);font-size:10px}
.rating{flex:0 0 auto;padding:5px 7px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line);color:var(--text);font-weight:700}
.rating svg{width:11px;height:11px}

.cover{position:relative}
.game-badge{left:10px;right:auto;max-width:calc(100% - 54px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.heart-btn{
  left:auto;
  right:10px;
  top:10px;
  z-index:4;
  width:34px;
  height:34px;
  border:1px solid rgba(255,255,255,.14);
  background:color-mix(in srgb,var(--bg) 72%,transparent);
  color:rgba(255,255,255,.9);
  box-shadow:0 6px 18px rgba(0,0,0,.2);
  transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease;
}
.heart-btn:hover{transform:translateY(-1px) scale(1.04);background:var(--panel);color:var(--text)}
.heart-btn.liked{color:#ff6b8a;border-color:rgba(255,107,138,.35)}
.heart-btn svg{width:16px;height:16px;stroke-width:2.25}

.quick-add{
  display:block;
  width:calc(100% - 28px);
  margin:0 14px 14px;
  min-height:36px;
  border-radius:10px;
  background:var(--bg-soft);
  border:1px solid var(--line);
  color:var(--text);
  font-size:11px;
  font-weight:800;
  letter-spacing:-.01em;
}
.quick-add:hover{background:var(--accent);color:#10130d;border-color:var(--accent)}
.game-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--line) 40%,var(--text) 60%);background:var(--panel-2)}

/* Light mode: every text-bearing surface follows the theme instead of staying white/black. */
body.light .game-info,
body.light .game-info h3,
body.light .price strong,
body.light .rating,
body.light .game-card,
body.light .modal,
body.light .side-panel,
body.light .notification,
body.light .collection,
body.light .library-panel{color:var(--text);background-color:var(--panel)}
body.light .game-info p,
body.light .old-price{color:var(--muted)}
body.light .rating{background:var(--panel-2);border-color:var(--line)}
body.light .quick-add{background:#171b22;color:#fff;border-color:#171b22}
body.light .quick-add:hover{background:var(--accent);color:#10130d;border-color:var(--accent)}
body.light .search-box,
body.light .icon-btn,
body.light .profile-btn,
body.light .ghost-btn,
body.light .secondary-btn,
body.light .sort-select{background:var(--panel);color:var(--text);border-color:var(--line)}
body.light .side-panel{box-shadow:-25px 0 70px rgba(15,23,42,.12)}
body.light .modal{box-shadow:0 25px 80px rgba(15,23,42,.16)}
body.light .bottom-bar{background:rgba(255,255,255,.9);color:var(--muted)}
body.light .bottom-bar kbd{background:var(--panel-2);color:var(--text)}

/* Better card rhythm on small screens. */
@media(max-width:700px){
  .game-info{padding:12px 11px 10px}
  .game-info h3{font-size:14px}
  .quick-add{width:calc(100% - 22px);margin:0 11px 11px}
  .heart-btn{right:9px;top:9px}
  .game-badge{left:9px;top:9px;max-width:calc(100% - 55px)}
}
