/* ===== PlayPass Cart: retro arcade ===== */
:root{
  --bg:#07000f; --surface:#120624; --surface-2:#1c0b36; --text:#f2eaff; --muted:#a993cf; --border:#3a1d66;
  --accent:#ff2bd6; --accent-text:#fff; --cyan:#00f0ff; --yel:#ffe600; --grn:#39ff14; --mag:#ff2bd6;
  --font-head:"Press Start 2P",monospace; --font-body:Rubik,system-ui,sans-serif; --head-weight:400;
  --radius:0; --btn-radius:0; --card-radius:0; --wrap:1240px; --gap:24px; --px:4px;
  --input-bg:#0d0420; --input-text:#f2eaff; --input-border:#5a2f9a;
}
body.ac{background:#07000f radial-gradient(900px 500px at 50% 0,#2a0050 0,transparent 70%)}
.ac a{text-decoration:none}
.ac h1,.ac h2,.ac h3,.ac h4{line-height:1.5}
.ac-crt{position:fixed;inset:0;pointer-events:none;z-index:999;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}
.ac-vt{font-family:VT323,monospace;font-size:1.35em;color:var(--cyan);letter-spacing:.04em}
.ac-blink{animation:ac-blink 1s steps(1) infinite}
@keyframes ac-blink{50%{opacity:0}}
/* pixel-cornered box */
.ac-px{box-shadow:0 calc(var(--px)*-1) 0 0 currentColor,0 var(--px) 0 0 currentColor,calc(var(--px)*-1) 0 0 0 currentColor,var(--px) 0 0 0 currentColor}
.ac .gk-btn,.ac .button,.ac #place_order{font-family:var(--font-head);font-size:11px;letter-spacing:.06em;padding:14px 18px;background:var(--mag);color:#fff;
  box-shadow:0 -4px 0 0 #000,0 4px 0 0 #000,-4px 0 0 0 #000,4px 0 0 0 #000,0 8px 0 0 #8a0a73,inset 0 -4px 0 0 rgba(0,0,0,.25)}
.ac .gk-btn:hover,.ac .button:hover{background:var(--cyan);color:#000}
.ac-start{background:var(--yel)!important;color:#000!important}

/* marquee + header */
.ac-marquee{background:var(--mag);color:#fff;font-family:var(--font-head);font-size:10px;white-space:nowrap;overflow:hidden;padding:8px 0}
.ac-marquee span{display:inline-block;padding-left:100%;animation:ac-mq 28s linear infinite}
@keyframes ac-mq{to{transform:translateX(-100%)}}
.ac-header{position:sticky;top:0;z-index:50;background:rgba(7,0,15,.94);border-bottom:4px solid var(--cyan);box-shadow:0 4px 0 #003b40}
.ac-header-in{display:flex;align-items:center;gap:26px;height:80px}
.ac-logo{display:flex;flex-direction:column;line-height:1.3;font-family:var(--font-head)}
.ac-logo-1{color:var(--yel);font-size:18px;text-shadow:3px 3px 0 var(--mag)}
.ac-logo-2{color:var(--cyan);font-size:12px;letter-spacing:.5em;text-shadow:2px 2px 0 #0a3a5a}
.ac-nav{display:flex;gap:22px;font-family:var(--font-head);font-size:10px;margin-left:auto}
.ac-nav a:hover{color:var(--yel)}
.ac-nav a::before{content:"▶ ";color:var(--mag);opacity:0}
.ac-nav a:hover::before{opacity:1}
.ac-tools{display:flex;align-items:center;gap:14px;font-family:var(--font-head);font-size:10px}
.ac-cur .gk-cur-btn{font-family:var(--font-head);font-size:9px;border:2px solid var(--border);border-radius:0}
.ac-p1{color:var(--grn)}
.ac-cartbtn{background:var(--cyan);color:#000;padding:10px 12px}
.ac-cartbtn .gk-cart-count{background:#000;color:var(--yel);padding:2px 6px;margin-left:4px}
.ac-burger{display:none;background:none;border:2px solid var(--cyan);color:var(--cyan);font-size:22px;width:44px;height:44px;cursor:pointer}
.ac-menu{display:none}

/* hero: cabinet + high scores */
.ac-hero{padding:56px 0 40px}
.ac-hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:46px;align-items:start}
.ac-cabinet{background:linear-gradient(180deg,#2a0b4f,#14052a);padding:18px 22px 26px;border:4px solid #000;box-shadow:0 0 0 4px var(--mag),0 0 40px rgba(255,43,214,.35)}
.ac-cab-top{text-align:center;font-family:var(--font-head);font-size:14px;color:var(--yel);padding:12px;background:#000;border:4px solid var(--cyan);margin-bottom:18px;text-shadow:0 0 10px var(--yel)}
.ac-screen{position:relative;border:10px solid #050008;border-radius:18px;overflow:hidden;aspect-ratio:4/3;background:#000;box-shadow:inset 0 0 60px rgba(0,240,255,.25)}
.ac-screen img{width:100%;height:100%;object-fit:cover;filter:saturate(1.3) contrast(1.1);opacity:.55;image-rendering:pixelated}
.ac-screen::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.35) 0 2px,transparent 2px 4px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.7))}
.ac-screen-txt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2;padding:20px}
.ac-screen-txt h1{font-size:clamp(22px,3.4vw,40px);color:#fff;text-shadow:4px 4px 0 var(--mag),-2px -2px 0 var(--cyan);margin:14px 0}
.ac-small{font-family:var(--font-head);font-size:12px;color:var(--yel);margin:0}
.ac-controls{display:flex;align-items:center;gap:22px;justify-content:center;margin-top:20px;background:#0a0216;padding:14px;border:4px solid #000}
.ac-stick{width:22px;height:22px;border-radius:50%;background:#e11;box-shadow:0 18px 0 -6px #222,0 22px 0 -4px #444}
.ac-controls a{width:34px;height:34px;border-radius:50%;box-shadow:inset 0 -5px 0 rgba(0,0,0,.4)}
.ac-btn-red{background:#ff2b4a}.ac-btn-blue{background:var(--cyan)}.ac-btn-yel{background:var(--yel)}
.ac-scores{background:#000;border:4px solid var(--cyan);padding:24px 26px;box-shadow:0 0 30px rgba(0,240,255,.25)}
.ac-scores h2{font-size:clamp(14px,1.6vw,20px);color:var(--mag);text-align:center;margin-bottom:6px;text-shadow:0 0 10px var(--mag)}
.ac-scores .ac-vt{text-align:center;margin-bottom:18px}
.ac-scores ol{list-style:none;margin:0 0 22px;padding:0}
.ac-scores li{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:baseline;padding:8px 0;border-bottom:2px dashed #2a1250;font-family:VT323,monospace;font-size:1.4em}
.ac-scores li:nth-child(1){color:var(--yel)}.ac-scores li:nth-child(2){color:var(--cyan)}.ac-scores li:nth-child(3){color:var(--grn)}
.ac-rank{font-family:var(--font-head);font-size:10px}
.ac-scores li a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ac-scores li a:hover{color:var(--mag)}
.ac-score,.ac-score .amount{color:inherit;font-family:VT323,monospace}
.ac-scores .ac-start{display:flex;width:100%}

/* sections */
.ac-section{padding:56px 0}
.ac-title{font-size:clamp(14px,1.8vw,20px);color:var(--yel);margin-bottom:28px;text-shadow:3px 3px 0 #6b0058}
.ac-title span{color:var(--mag)}
.ac-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.ac-card{--c:var(--mag);background:#0d0420;border:4px solid #000;box-shadow:0 0 0 4px var(--c);display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.ac-card:hover{transform:translate(-4px,-4px);box-shadow:0 0 0 4px var(--c),8px 8px 0 4px #000,0 0 30px var(--c)}
.ac-mag{--c:var(--mag)}.ac-cyan{--c:var(--cyan)}.ac-yel{--c:var(--yel)}.ac-grn{--c:var(--grn)}
.ac-card-media{position:relative;display:block;border-bottom:4px solid #000}
.ac-card-media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ac-card-body{padding:12px 12px 14px;display:flex;flex-direction:column;flex:1}
.ac-card h3{font-family:Rubik,sans-serif;font-weight:700;font-size:.98em;line-height:1.3;margin:0 0 10px}
.ac-card-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center}
.ac-coins,.ac-coins .amount{font-family:VT323,monospace;font-size:1.6em;color:var(--c)}
.ac-1up{font-family:var(--font-head);font-size:9px;background:var(--c);color:#000;padding:8px 9px}
.ac-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ac-level{display:flex;flex-direction:column;gap:6px;padding:20px 18px;background:#000;border:4px solid var(--border);transition:border-color .15s}
.ac-level:hover{border-color:var(--yel);background:#120024}
.ac-level small{font-family:var(--font-head);font-size:9px;color:var(--mag)}
.ac-level b{font-family:var(--font-head);font-size:13px;color:#fff}
.ac-level em{font-family:VT323,monospace;font-size:1.3em;color:var(--cyan);font-style:normal}
.ac-bonus{display:grid;grid-template-columns:.9fr 2fr;gap:30px;align-items:center;background:#000;border:4px dashed var(--yel);padding:30px}

/* footer */
.ac-footer{border-top:4px solid var(--mag);margin-top:30px;padding:40px 0 20px;background:#04000a}
.ac-continue{text-align:center;margin-bottom:40px}
.ac-continue p{font-family:var(--font-head);font-size:20px;color:var(--yel);text-shadow:3px 3px 0 var(--mag)}
.ac-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px;border-top:2px dashed var(--border);padding-top:30px}
.ac-footer p{color:var(--muted);font-size:.95em}
.ac-footer h4{font-size:11px;color:var(--cyan);margin-bottom:12px}
.ac-footer a{display:block;color:var(--muted);margin-bottom:6px}
.ac-footer a:hover{color:var(--yel)}
.ac-credits{font-family:var(--font-head);font-size:9px;text-align:center;color:#6b5a8f!important;margin-top:24px;line-height:2}

/* shop / woo */
.ac .gk-page-head{text-align:center;padding:50px 0 24px}
.ac .gk-page-title{font-size:clamp(18px,2.6vw,30px);color:var(--yel);text-shadow:3px 3px 0 var(--mag)}
.ac .gk-prose{background:#0d0420;border:4px solid var(--border);padding:30px;margin-bottom:50px}
.ac .gk-prose h2{font-size:14px;color:var(--cyan)}
.ac .gk-prose .gk-lead{font-family:VT323,monospace;font-size:1.8em;color:var(--yel)}
.ac .gk-shop h1.page-title{text-align:center;font-size:clamp(18px,2.6vw,28px);color:var(--yel);text-shadow:3px 3px 0 var(--mag)}
.ac ul.products li.product{background:#0d0420;border:4px solid #000;box-shadow:0 0 0 4px var(--border)}
.ac ul.products li.product:hover{box-shadow:0 0 0 4px var(--cyan)}
.ac ul.products li.product .woocommerce-loop-product__title{font-family:Rubik,sans-serif;font-weight:700}
.ac ul.products li.product .price{font-family:VT323,monospace;font-size:1.6em;color:var(--cyan);font-weight:400}
.ac ul.products li.product .button{font-size:9px}
.ac div.product .product_title{font-size:clamp(16px,2vw,24px);color:var(--yel)}
.ac div.product p.price{font-family:VT323,monospace;color:var(--cyan);font-size:2.6em}
.ac .woocommerce-tabs ul.tabs li a{font-family:var(--font-head);font-size:9px}
.ac table.shop_table th{font-family:var(--font-head);font-size:9px;color:var(--cyan)}
.ac #customer_details h3,.ac #order_review_heading,.ac .cart_totals h2{font-size:13px;color:var(--yel)}

@media (max-width:1000px){ .ac-nav{display:none} .ac-hero-in,.ac-bonus{grid-template-columns:1fr} .ac-grid,.ac-levels{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){
  .ac-cur,.ac-p1{display:none}
  .ac-burger{display:block}
  .ac-tools{margin-left:auto}
  body.ac-open .ac-menu{display:flex;flex-direction:column;gap:14px;padding:18px 20px 22px;font-family:var(--font-head);font-size:11px;border-top:2px dashed var(--border)}
  .ac-logo-1{font-size:14px}.ac-logo-2{font-size:10px}
  .ac-hero{padding:30px 0}
  .ac-cabinet{padding:12px}
  .ac-scores{padding:18px 14px}
  .ac-scores li{grid-template-columns:40px 1fr auto;font-size:1.2em}
  .ac-grid,.ac-levels{gap:16px}
  .ac-card-foot{flex-wrap:wrap;gap:6px}
  .ac-bonus{padding:18px}
  .ac-footer-grid{grid-template-columns:1fr}
}
.ac-continue .gk-btn{display:inline-flex;width:auto;min-width:260px}
