/* Penicase: graphite casing, silver edges and acid-lime enamel. */
.steam-login { text-decoration: none; width: 100%; box-sizing: border-box; margin-top: 20px; }
.steam-login[aria-disabled="true"] { pointer-events: none; opacity: .5; }
.steam-account-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.steam-account-actions [hidden], #registerForm[hidden], #profileNameForm button[hidden] { display: none; }
#steamAuthMessage { font-size: 14px; line-height: 1.5; }
#steamAuthMessage:empty { display: none; }
.profile-avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
#profileDisplayName { overflow-wrap: anywhere; }
.inventory-panel > .section-heading { flex-wrap: wrap; }
.inventory-bulk-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; min-width: 0; }
#sellAllInventoryBtn { white-space: normal; }
#inventorySaleMessage:empty { display: none; }
#inventorySaleMessage { color: var(--success); font-size: 14px; }
#sellAllSummary { line-height: 1.6; }
:root { --bg:#111315; --surface:#1c2023; --surface-2:#252b2f; --accent:#d0ff38; --gold:#d0ff38; --accent-2:#9ee9d2; --success:#8de1bb; --text:#f2f3ed; --muted:#a0a9ad; --line:#b7c3ce1b; }
body { background:var(--bg); }
.funding-maintenance { margin:20px 0; padding:14px 18px; border-left:3px solid var(--accent); background:var(--surface); color:var(--text); font-size:14px; line-height:1.5; }
.sidebar { background:linear-gradient(180deg,#24292d 0,#191d20 5%,#171a1c 96%,#343b3e); border-bottom:1px solid #68737c55; box-shadow:0 4px 18px #0003; }
.brand { gap:10px; }
.sidebar .brand-mark { width:56px; height:62px; transform:none; flex-shrink:0; }
.brand-mark img { width:100%; height:100%; object-fit:contain; display:block; }
.brand strong { font-weight:800; color:#f6f5ef; }
.brand-dot { color:var(--accent); }
.brand .demo-tag { background:#252d19; border-color:#c9f64140; color:#dcff7c; }
.nav-tab { color:#a6afb3; transition:color 160ms,background 160ms; }
.nav-tab:hover { color:#f2f3ed; }
.nav-tab.is-active { color:var(--accent); background:linear-gradient(0deg,#d0ff380b,transparent 80%); }
.nav-tab.is-active::after { height:3px; background:var(--accent); box-shadow:0 -4px 14px #d0ff3816; }
.primary-button,.promo-banner .primary-button { background:linear-gradient(170deg,#e0ff78 0,#d0ff38 44%,#bae52c 100%); color:#192008; border:1px solid #e6ff98; border-bottom-color:#829e2d; border-radius:5px; box-shadow:inset 0 1px 0 #f5ffbc,0 3px 0 #53641c,0 7px 14px #0003; }
.primary-button:hover:not(:disabled),.promo-banner .primary-button:hover:not(:disabled) { filter:brightness(1.06); box-shadow:inset 0 1px #fff9,0 3px 0 #607825,0 8px 22px #b9e42b20; }
.primary-button:active:not(:disabled) { transform:translateY(2px); box-shadow:inset 0 1px #fff6,0 1px 0 #53641c; }
.primary-button:disabled { background:#2b3027; color:#8a937d; border-color:#555f3940; box-shadow:none; opacity:1; }
.ghost-button,.icon-button { background:linear-gradient(165deg,#30373c,#22272b); border:1px solid #8b9ca02d; box-shadow:inset 0 1px #ffffff09,0 2px 3px #0002; color:#c0c9cd; }
.ghost-button:hover:not(:disabled),.icon-button:hover:not(:disabled) { background:#343c40; color:#f5f7ef; border-color:#aab9c05c; }
.ghost-button:disabled,.icon-button:disabled { opacity:.45; }
.balance-panel #headerTopup { background:var(--accent); color:#202709; border-color:#e4ff92; }
.bonus-button { background:transparent; color:#d0e697; }
.price-pill,.case-browser .case-tile span { color:#deff88; }
.live-bar { background:#141719; border-bottom:1px solid #a7b5bd20; }
.live-drop { background:linear-gradient(140deg,color-mix(in srgb,var(--drop-color) 13%,#272d32),#161a1d 80%); }
.online-indicator { background:#1a211d; }
.online-indicator strong { color:#a2ead2; }
.promo-banner { position:relative; isolation:isolate; overflow:hidden; background:linear-gradient(110deg,#292f31,#1d2524 65%,#2d3824); border:1px solid #8b979c30; border-left:3px solid var(--accent); box-shadow:inset 0 1px #ffffff0a; }
.promo-banner::before { content:''; position:absolute; z-index:-1; width:170px; height:170px; right:21%; top:50%; transform:translateY(-50%) rotate(10deg); background:url('./assets/penicase-mark-v1.png') center / contain no-repeat; opacity:.12; pointer-events:none; }
.promo-offer strong,.promo-offer svg { color:var(--accent); }
.promo-code-block strong { color:#e9eee4; }
.topbar h1 { color:#f3f4ee; }
.case-browser .section-heading h2 { border-left:3px solid var(--accent); padding-left:12px; }
.case-browser .case-tile { background:linear-gradient(145deg,#2b3236 0,#1f2529 36%,#181d20 100%); border:1px solid #85949d2d; box-shadow:inset 0 1px #b8c4ca12,0 5px 10px #0002; border-radius:6px; }
.case-browser .case-tile::after { top:0; left:20px; width:56px; height:3px; }
.case-browser .case-tile:hover { background:linear-gradient(145deg,#353e43,#252d30 45%,#1b2123); border-color:color-mix(in srgb,var(--case-color) 50%,#7a8790); box-shadow:inset 0 1px #dce7e31c,0 7px 17px #0004; }
.case-browser .case-tile span { border:1px solid #c5e28e27; border-top-color:#ebffc13a; background:linear-gradient(150deg,#343d2a,#272e24); box-shadow:inset 0 1px #ffffff07; }
.case-browser .case-tile strong { color:#ecf0e8; }
.case-browser .case-tile small { color:#a5afb3; }
.peni-pack { background:linear-gradient(135deg,#66727c 0,#303b41 7%,#1b2227 52%,#394247 96%); border-color:#a4b1b77a; box-shadow:7px 9px 0 #0b0f11,8px 10px 0 #7c888f55,0 18px 20px #0005; }
.peni-pack::before { background:url('./assets/penicase-mark-v1.png') 90% 15% / 44px 54px no-repeat; border:1px solid #c4d0d12e; border-left:5px solid var(--case-color); }
.peni-pack b { color:#e7edde; font-size:20px; text-shadow:0 2px 1px #080b0c; }
.case-hero { border-bottom:1px solid #b5c4c719; margin-bottom:16px; }
.case-hero h2 { color:#f0f4e6; }
.qty-chip { background:#20262a; border-color:#7b8b9433; }
.qty-chip.is-active { background:#303b1d; border-color:#c5f138; color:#e7ffa0; box-shadow:inset 0 1px #e7ffa522; }
.open-reel-lane { background:#151a1c; border-block-color:#83939a4d; box-shadow:inset 0 1px #0008,inset 0 -1px #fff1; }
.open-reel-lane::after { background:#e4ff87; box-shadow:0 0 9px #d0ff3860; }
.skin-card { border-color:#9eb0b521; background:linear-gradient(150deg,color-mix(in srgb,var(--rarity) 9%,#2a3035),#1b2024 75%); }
.skin-card.is-selected { border-color:#d0ff38; background:#2b3223; }
.skin-card.is-selected::before { background:#d0ff38; color:#1d230d; }
.skin-meta small { color:#a4b0b4; }
.skin-meta > span { color:#d4ed9b; }
.skin-actions { border-top:1px solid #a4b6bb13; }
.upgrade-track { background-color:#252c30; box-shadow:0 0 0 1px #89999d55,0 0 0 5px #15191c,inset 0 1px 2px #fff2; }
.upgrade-track-wrap::before { border-color:#abb7be25; }
.upgrade-needle::before { background:#e8ff9a; filter:drop-shadow(0 1px 3px #10150a); }
.upgrade-needle::after { display:none; }
.upgrade-readout .upgrade-emblem { object-fit:contain; width:40px; height:40px; margin:0; }
.upgrade-machine.is-spinning .primary-button { color:#daeea5; background:#2f3728; border-color:#a4c05860; box-shadow:none; }
.selected-preview::after { background:linear-gradient(90deg,transparent,#c5f13870,transparent); }
.step-index { color:var(--accent); border-color:#bede7538; background:#293122; }
.turbo-control input:checked { background:var(--accent); }
.profile-avatar { color:#daff79; background:linear-gradient(145deg,#3d4637,#202b24); border-color:#8da25e70; outline-color:#d0ff3808; }
.profile-tabs [aria-selected=true] { color:var(--accent); border-bottom-color:var(--accent); }
.history-drop-card { background:linear-gradient(150deg,#2a3033,#1a2023); border-color:#9fadb331; }
.drop-card-price { color:#d9f39e; }
.topup-dialog,.auth-box,.admin-login-page .auth-box { background:linear-gradient(150deg,#282e32,#191f22 70%); border:1px solid #a8b5bd45; border-top:2px solid #c7f33a; box-shadow:0 20px 70px #0008,inset 0 1px #eaffaa0a; }
.auth-brand-art { display:block; width:180px; height:180px; object-fit:contain; margin:0 auto 16px; border-radius:6px; }
.auth-box .eyebrow { color:#c5dd91; }
.auth-box h1 { font-size:23px; }
.site-footer { background:#14181a; border-top-color:#84949c30; }
.footer-brand { display:inline-flex; align-items:center; gap:0; color:#eff2e8; }
.footer-brand img { object-fit:contain; margin-right:9px; flex-shrink:0; }
.admin-login-page .footer-brand img { width:48px; height:48px; }
.admin-mode .primary-button { box-shadow:inset 0 1px #f5ffbc; }
@media(max-width:1000px) { .sidebar .brand-mark { width:44px; height:50px; } }
@media(max-width:600px) {
  .sidebar .brand { gap:6px; }
  .sidebar .brand-mark { width:34px; height:40px; }
  .sidebar .brand strong { font-size:20px; }
  .sidebar .brand small { margin-top:3px; font-size:8px; gap:5px; }
  .promo-banner::before { width:140px; height:140px; right:3%; opacity:.08; }
  .peni-pack::before { background-size:30px 38px; }
  .peni-pack b { font-size:14px; left:12px; }
  .auth-brand-art { width:150px; height:150px; }
  .auth-box { max-height:calc(100dvh - 24px); overflow:auto; }
}
@media(prefers-reduced-motion:reduce) { .nav-tab { transition:none; } }
