/* Playwexa Phase 15.2: UI polish, original 10-world artwork, accessible search/navigation and category movement. */
:root{--pw-heading-font:Inter,ui-sans-serif,system-ui,sans-serif;--pw-label-font:Inter,ui-sans-serif,system-ui,sans-serif;--pw-graphic-cyan:#6be9f8;--pw-surface-dark:#0c1730}
body{font-family:var(--pw-label-font);letter-spacing:normal}
h1,h2,h3,h4,.section-heading h2{font-family:var(--pw-heading-font);letter-spacing:-.035em}
.eyebrow,.pill,.game-index,.section-heading>.eyebrow,.world-card .eyebrow,.world-hero .eyebrow,.game-tile .eyebrow,.world-card-body .eyebrow{font-family:var(--pw-label-font)!important;font-size:clamp(.78rem,.9vw,.91rem)!important;font-weight:650!important;letter-spacing:.015em!important;text-transform:none!important;line-height:1.5!important}
.world-card .eyebrow,.home-worlds .world-card-body .eyebrow{font-size:clamp(.79rem,.87vw,.87rem)!important}
.world-card h3{font-size:clamp(1.12rem,1.35vw,1.4rem)!important}
.world-art{position:relative;overflow:hidden}.world-art .orbit,.world-art .world-spark{display:none!important}
.world-illustration{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .35s ease,filter .35s ease;filter:saturate(1.04)}
.world-card:is(:hover,:focus-visible) .world-illustration{transform:scale(1.06);filter:saturate(1.2) brightness(1.13)}
.world-hero-glyph{display:flex;align-items:center;justify-content:center;font-size:inherit!important}.world-hero-glyph img{width:min(100%,470px);height:auto;border-radius:20px;filter:drop-shadow(0 12px 30px #0007)}
/* Header: top action bar + a genuinely navigable second row at wide desktop sizes. */
.topbar.pw-topbar{height:auto!important;position:relative;z-index:100;overflow:visible}
.pw-topbar .nav-wrap{min-height:82px;width:min(1440px,calc(100% - 36px));max-width:none;gap:22px;justify-content:space-between}
.pw-topbar .nav-end{display:flex;align-items:center;gap:9px}
.pw-topbar .desktop-nav{display:none!important}
.pw-topbar .brand{flex:0 0 auto}.pw-topbar .brand .pw-wordmark{width:clamp(150px,14vw,212px);height:68px;object-fit:contain}
.pw-search-container{flex:1;max-width:460px;position:relative;min-width:180px}
.pw-topbar .nav-search{height:46px;width:100%;display:flex;gap:7px;border-radius:15px;padding:0 9px 0 14px;border:1px solid #687cab76;background:#18243b;font-size:.88rem;overflow:visible;align-items:center;transition:border-color .15s,box-shadow .15s}
.pw-topbar .nav-search:focus-within{outline:none;border-color:#76eaff;box-shadow:0 0 0 3px #67dce51a}
.pw-topbar .nav-search .search-magnify{color:#98d7fc;font-size:1.6rem}
.pw-topbar .nav-search input{flex:1;max-width:none;width:100%;min-width:0;color:#f7f9ff;font-size:.85rem;padding:8px 3px;outline:none;background:transparent;border:0}
.pw-topbar .nav-search button{font-family:inherit;font-size:.76rem;border-radius:8px;white-space:nowrap}
.pw-topbar .nav-search .pw-search-submit{background:linear-gradient(115deg,#315892,#6842a7);color:#eefcff;padding:7px 10px;min-width:0}
.pw-topbar .nav-search .pw-search-clear{color:#eafcff;font-size:1.25rem;min-width:30px;padding:3px}
.pw-topbar .nav-search .pw-search-clear[hidden]{display:none}
.pw-search-results[hidden]{display:none!important}.pw-search-results{position:absolute;top:calc(100% + 10px);left:0;right:0;background:#111e35;border:1px solid #6381b9;border-radius:16px;padding:8px;max-height:min(445px,65vh);overflow-y:auto;box-shadow:0 21px 55px #020711d9;z-index:200}
.pw-search-results a{color:#eaf0ff;display:flex;align-items:center;gap:12px;border-radius:11px;padding:9px 12px;text-decoration:none}
.pw-search-results a:hover,.pw-search-results a.is-active{background:#2c3b62}
.pw-search-results strong,.pw-search-results small{display:block}.pw-search-results strong{font-size:.85rem}.pw-search-results small{font-size:.73rem;color:#a7bbd7}.pw-result-icon{font-size:1.3rem;color:#72e7fb}.pw-search-empty{padding:12px;color:#b6c9e5;font-size:.84rem}
.pw-nav-action{display:flex;align-items:center;gap:7px;border:1px solid #53699470;border-radius:12px;padding:9px 11px;text-decoration:none;font-size:1rem;color:#c8e9fc;min-height:43px;background:#15233a}.pw-nav-action span{font-size:.8rem;color:#e3eaff}
.pw-nav-action:hover{background:#213355;border-color:#79d9f2}
.pw-topbar .mobile-toggle{display:flex!important;align-items:center;justify-content:center;gap:7px;min-width:74px;padding:0 10px;font-size:1.1rem}.pw-topbar .mobile-toggle .menu-button-text{font-size:.74rem}
.pw-worlds-row{min-height:61px;border-top:1px solid #364a6c7c;background:linear-gradient(100deg,#0d1a30,#101b38 50%,#0e2338);display:flex;align-items:center;justify-content:center;gap:clamp(3px,.64vw,13px);padding:7px max(12px,calc((100vw - 1450px)/2))}
.pw-worlds-row .world-nav-link{display:flex;align-items:center;gap:5px;padding:6px 5px;border-radius:9px;white-space:nowrap;text-decoration:none;color:#dce8fb;font-size:clamp(.69rem,.79vw,.85rem);font-weight:600;min-width:0}
.pw-worlds-row .world-nav-link:hover,.pw-worlds-row .world-nav-link:focus-visible,.pw-worlds-row .world-nav-link.is-active{background:#263b64;color:white}
.pw-worlds-row .world-nav-link img{width:clamp(24px,2.4vw,33px);height:30px;object-fit:cover;border-radius:8px;flex-shrink:0}
.pw-worlds-row .pw-worlds-all{border:1px solid #506b98;border-radius:10px;padding:8px 10px;background:#233152;color:#d9edff;cursor:pointer;font-size:.76rem;white-space:nowrap}
.pw-worlds-mega[hidden],.pw-mobile-menu[hidden]{display:none!important}
.pw-worlds-mega{position:absolute;top:100%;left:50%;transform:translateX(-50%);z-index:170;width:min(990px,calc(100vw - 32px));max-height:min(65vh,550px);overflow:auto;background:#101b34;border:1px solid #6b85b8;border-radius:0 0 21px 21px;box-shadow:0 22px 65px #050916d9;padding:23px}
.pw-menu-heading{display:flex;justify-content:space-between;align-items:center;font-weight:800;color:#fff;margin-bottom:15px;font-size:1.1rem}.pw-menu-heading a{font-size:.8rem;color:#95eaff}
.pw-mega-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.pw-mega-item{display:flex;align-items:center;gap:8px;border-radius:12px;border:1px solid #596e9b55;background:#1a2946;padding:11px 9px;color:#fff;text-decoration:none;min-width:0}.pw-mega-item:hover{border-color:#95e9ff;background:#24395a}.pw-mega-item img{height:45px;width:45px;object-fit:cover;border-radius:9px}.pw-mega-item span{min-width:0}.pw-mega-item strong{display:block;font-size:.82rem}.pw-mega-item small{display:block;color:#b5c0da;font-size:.7rem;overflow:hidden;text-overflow:ellipsis}
.pw-mobile-menu{position:absolute!important;right:max(15px,calc((100% - 1450px)/2));top:calc(100% + 8px);left:auto!important;width:min(380px,calc(100vw - 30px));height:auto!important;max-height:min(79vh,720px);overflow-y:auto;display:block!important;z-index:180;background:#101d35;border:1px solid #6886bd;border-radius:18px;box-shadow:0 25px 60px #020817d9;padding:17px;color:#f3f6ff}
.pw-mobile-menu-title{display:flex;justify-content:space-between;align-items:center;padding:0 4px 13px;font-size:1.1rem}.pw-mobile-menu-title button{font-size:1.45rem;background:#293a61;color:#fff;border:1px solid #778fbd;border-radius:9px;width:35px;height:35px;cursor:pointer}
.pw-quick-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pw-quick-nav a{display:flex;align-items:center;gap:9px;border-radius:11px;padding:10px;font-size:.84rem;background:#1b2c4a;color:#e1e9fd;text-decoration:none}.pw-quick-nav a span{font-size:1.1rem;color:#8de8ff}.pw-quick-nav a:hover,.pw-quick-nav a:focus-visible{background:#344a77}
.pw-mobile-menu-worlds{margin-top:15px;border-top:1px solid #4b608b;padding-top:13px}.pw-mobile-menu-worlds>strong{display:block;margin-bottom:10px;font-size:.87rem}.pw-mobile-menu-worlds>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pw-mobile-menu-worlds .world-nav-link{font-size:.78rem;display:flex;align-items:center;gap:8px;padding:6px 5px;color:#e4edff;text-decoration:none;min-width:0}.pw-mobile-menu-worlds .world-nav-link img{width:32px;height:32px;object-fit:cover;border-radius:7px}.pw-mobile-menu-worlds .world-nav-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pw-more-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px;font-size:.78rem}.pw-more-links a{color:#a9dcff}
/* Hero is a bespoke layered multiverse, not the old bare door or a screen capture. */
.hero-world-art{width:min(100%,760px);max-height:100%;object-fit:contain;filter:drop-shadow(0 18px 31px #000a)}
.hero-world-chip{display:none!important}
.hero-visual-glint{display:none}
body[data-route="/"] .hero{background:radial-gradient(ellipse at 83% 38%,#4742a152,transparent 52%),radial-gradient(ellipse at 10% 20%,#135b7852,transparent 48%),linear-gradient(135deg,#09152b,#0a0e20)}
body[data-route="/"] .hero-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
/* Published category marquee: only one accessible focusable category list. */
.pw-category-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 11px}
.pw-category-controls button,.pw-category-controls a{font-family:inherit;background:#202c4d;color:#e0f1ff;border:1px solid #6c82b0;border-radius:10px;padding:9px 13px;font-size:.78rem;text-decoration:none;cursor:pointer}
.pw-category-viewport{width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);border-radius:13px;padding:11px 0}
.pw-category-track{display:flex;gap:12px;width:max-content;animation:pw-categories-move 33s linear infinite;will-change:transform}
.pw-category-track>.pw-category-item,.pw-category-duplicates .pw-category-item{min-width:215px;flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:9px 13px 9px 8px;background:linear-gradient(110deg,#1c2949,#14283b);border:1px solid #637cac88;border-radius:15px;color:#f2f6ff;text-decoration:none;font-size:.82rem;box-shadow:0 8px 25px #030a1954;transition:border-color .2s,transform .2s}
.pw-category-track>.pw-category-item:is(:hover,:focus-visible){transform:scale(1.035);border-color:#8deeff;outline:none}.pw-category-track .pw-category-item img{width:57px;height:45px;object-fit:cover;border-radius:9px}.pw-category-item .pw-category-icon{font-size:1.4rem;color:#a6ecff}.pw-category-item>span:last-child{color:#93e7ff;margin-left:auto}
.pw-category-duplicates{display:flex;gap:12px;pointer-events:none}
.pw-category-viewport:is(:hover,:focus-within) .pw-category-track,.pw-category-viewport.is-paused .pw-category-track{animation-play-state:paused}
.pw-category-viewport.is-paused{mask-image:none;overflow-x:auto}.pw-category-viewport.is-paused .pw-category-track{animation:none!important;transform:none!important}
.pw-category-caption{margin:9px 0 0!important;font-size:.75rem!important;color:#aebfd9}
@keyframes pw-categories-move{to{transform:translateX(-50%)}}
@media(max-width:1350px){.pw-worlds-row .world-nav-link{gap:3px;padding:5px 2px}.pw-worlds-row{gap:3px}.pw-worlds-row .world-nav-link img{width:26px;height:26px}.pw-worlds-row .world-nav-link{font-size:.7rem}.pw-nav-action span{display:none}}
@media(max-width:1199px){.pw-worlds-row{display:none!important}.pw-topbar .nav-wrap{min-height:75px}.pw-mobile-menu{top:calc(100% + 7px)}}
@media(max-width:768px){.pw-topbar .nav-wrap{gap:10px}.pw-topbar .brand .pw-wordmark{width:clamp(135px,25vw,195px)}.pw-search-container{max-width:280px;min-width:0}.pw-topbar .nav-search .pw-search-submit{display:none}.pw-topbar .nav-search input{font-size:.76rem}.pw-topbar .nav-search{padding-left:8px}.pw-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-route="/"] .hero-inner{grid-template-columns:1fr}}
@media(max-width:550px){.pw-topbar .nav-wrap{width:calc(100% - 22px)}.pw-search-container{position:absolute;left:10px;right:10px;top:100%;max-width:none;z-index:201;display:none}.pw-topbar.pw-search-open .pw-search-container{display:block}.pw-topbar .nav-end{margin-left:auto;gap:5px}.pw-nav-action{padding:6px;width:36px;justify-content:center;min-height:37px}.pw-topbar .mobile-toggle{min-width:42px;width:42px;padding:0}.pw-topbar .mobile-toggle .menu-button-text{display:none}.pw-topbar .brand .pw-wordmark{width:clamp(122px,38vw,166px)}.pw-topbar .nav-wrap{min-height:70px}.pw-search-results{max-height:55vh}.pw-mobile-menu{right:9px}body[data-route="/"] .hero-visual{height:290px}.world-illustration{object-fit:cover}}
@media(prefers-reduced-motion:reduce){.pw-category-track{animation:none!important;transform:none!important}.pw-category-viewport{mask-image:none;overflow-x:auto}.world-illustration{transition:none!important}}

#pw-search-mobile{display:none;border:1px solid #637aa1;background:#18243b;color:#b5edff;border-radius:12px;font-size:1.65rem;width:39px;height:40px;cursor:pointer}@media(max-width:550px){#pw-search-mobile{display:block}.pw-topbar .nav-end>a:first-of-type{display:none}}
@media(max-width:355px){.pw-topbar #theme-toggle{display:none!important}}
/* Screen-reader names must never occupy visible space in the search field. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
