/* TEAM AF V7 — layered over V6. */
:root{--v7-ink:#050505;--v7-paper:#f5f5f2;--v7-line:rgba(245,245,242,.18)}

/* 1. V4 logo spin: white mark, black surround, golden edge */
.af-mark{perspective:340px}
.af-mark-face{transform-style:preserve-3d;border:1px solid #c9a24a!important;border-radius:50%;background:#050505!important;
 box-shadow:inset 0 0 0 3px #050505,inset 0 0 0 4px rgba(201,162,74,.55),2px 2px 0 rgba(201,162,74,.35),4px 4px 0 #050505!important;
 animation:af-metal 8s ease-in-out infinite!important}
.af-mark-face::before{content:none!important}
.af-mark-face img{filter:invert(1)!important;transform:translateZ(8px)}
@keyframes af-metal{0%,100%{transform:rotateY(-16deg) rotateX(8deg)}50%{transform:rotateY(22deg) rotateX(-8deg)}}

/* 1b. Animated game thumbnails */
.gx-thumb{overflow:hidden;position:relative}
.gx-thumb img.gx-shot{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;animation:gx-pan 12s ease-in-out infinite alternate;transition:transform .5s}
.gx-thumb::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:250% 100%;animation:gx-glint 5s linear infinite}
.gx-card:hover .gx-thumb img.gx-shot{animation-duration:4s}
@keyframes gx-pan{0%{transform:scale(1.04) translate(-1.5%,0)}100%{transform:scale(1.14) translate(1.5%,-2%)}}
@keyframes gx-glint{0%{background-position:150% 0}100%{background-position:-100% 0}}
@media (prefers-reduced-motion:reduce){.gx-thumb img.gx-shot,.gx-thumb::after{animation:none!important}}

/* 2. Desktop typography and spacing */
@media (min-width:1024px){
 body{font-size:1.0625rem;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
 main h1{font-size:clamp(3rem,4.6vw,4.75rem);line-height:1.04;letter-spacing:-.025em;max-width:18ch}
 main h2{font-size:clamp(2rem,2.8vw,2.85rem);line-height:1.12;letter-spacing:-.02em}
 main h3{line-height:1.25}
 main p{max-width:68ch}
 main>section{padding-block:clamp(4.5rem,7vw,7.5rem)}
 .container-af{padding-inline:clamp(2rem,4vw,4rem)}
 .af-v6-nav{min-height:76px}
 .af-v6-desktop a,.af-v6-desktop summary{letter-spacing:.02em}
}

/* 3. Footer contact buttons */
.af-v6-footer a[href^="mailto:"],.af-v6-footer a[href^="tel:"],.af-v6-footer a[href*="share.google"],.af-v6-footer a[href*="wa.me"]{
 display:inline-flex!important;align-items:center;gap:.5rem;margin:.4rem .5rem 0 0!important;padding:.6rem 1.05rem;
 border:1px solid var(--v7-line);border-radius:999px;background:rgba(255,255,255,.04);
 color:var(--v7-paper)!important;font-size:.85rem;font-weight:600;text-decoration:none!important;
 transition:background .2s,color .2s,border-color .2s,transform .2s}
.af-v6-footer a[href^="mailto:"]::before{content:"✉"}
.af-v6-footer a[href*="share.google"]::before{content:"⌖"}
.af-v6-footer a[href^="tel:"]::before{content:"☎"}
.af-v6-footer a[href^="mailto:"]:hover,.af-v6-footer a[href^="tel:"]:hover,.af-v6-footer a[href*="share.google"]:hover,.af-v6-footer a[href*="wa.me"]:hover,
.af-v6-footer a[href^="mailto:"]:focus-visible,.af-v6-footer a[href*="share.google"]:focus-visible{background:var(--v7-paper);color:var(--v7-ink)!important;border-color:var(--v7-paper);transform:translateY(-1px)}
.af-v6-social a{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--v7-line);border-radius:50%;transition:background .2s,color .2s}
.af-v6-social a:hover{background:var(--v7-paper);color:var(--v7-ink)!important}

/* 4. High-contrast monochrome game art */
.gx-thumb,[data-stage]{background:var(--v7-ink)!important;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px)!important}
.af-game-scene{color:var(--v7-paper)!important;opacity:1!important;filter:grayscale(1) contrast(1.4)}
.af-game-scene svg{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 10px rgba(255,255,255,.25))}
.af-game-scene svg [stroke]{stroke-width:2.5}
.gx-thumb img,.gx-card img{filter:grayscale(1) contrast(1.35)}
.gx-playbadge{background:var(--v7-paper)!important;color:var(--v7-ink)!important;border:0!important}
.gx-card:hover .af-game-scene svg{filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 18px rgba(255,255,255,.45))}

/* 5. Bookmarks */
.v7-bm-toggle{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .7rem;border:1px solid var(--v7-line);border-radius:999px;background:transparent;color:inherit;font:inherit;font-size:.8rem;cursor:pointer}
.v7-bm-toggle[aria-pressed="true"]{background:var(--v7-paper);color:var(--v7-ink)}
.v7-bm-count{min-width:1.2em;padding:0 .35em;border-radius:999px;background:var(--v7-paper);color:var(--v7-ink);font-size:.7rem;font-weight:700;text-align:center}
.gx-card{position:relative}
.v7-card-save{position:absolute;top:.6rem;right:.6rem;z-index:3;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--v7-line);border-radius:50%;background:rgba(0,0,0,.7);color:var(--v7-paper);cursor:pointer;font-size:1rem}
.v7-card-save[aria-pressed="true"]{background:var(--v7-paper);color:var(--v7-ink)}
.v7-fab{position:fixed;right:1rem;bottom:1rem;z-index:60;display:flex;gap:.5rem}
.v7-fab button{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1rem;border:1px solid var(--v7-line);border-radius:999px;background:var(--v7-ink);color:var(--v7-paper);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.5)}
.v7-fab button[aria-pressed="true"]{background:var(--v7-paper);color:var(--v7-ink)}
.v7-panel{position:fixed;right:1rem;bottom:4.5rem;z-index:61;width:min(360px,calc(100vw - 2rem));max-height:60vh;overflow:auto;padding:1.1rem;border:1px solid var(--v7-line);border-radius:14px;background:var(--v7-ink);color:var(--v7-paper);box-shadow:0 20px 60px rgba(0,0,0,.6)}
.v7-panel h2{margin:0 0 .6rem;font-size:1rem}
.v7-panel ul{list-style:none;margin:0;padding:0}
.v7-panel li{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem 0;border-top:1px solid var(--v7-line)}
.v7-panel li a{color:var(--v7-paper);text-decoration:underline;text-underline-offset:3px}
.v7-panel li button,.v7-panel .v7-clear{background:none;border:0;color:#aaa;cursor:pointer;font:inherit}
.v7-panel .v7-empty{color:#aaa;font-size:.9rem}
@media print{.v7-fab,.v7-panel,.v7-card-save{display:none!important}}
@media (prefers-reduced-motion:reduce){.af-mark-face,.af-mark-face::before{animation:none!important}}
