:root{color-scheme:dark;--bg:#101214;--card:#1a1c20;--line:#35383c;--text:#f6f6f2;--muted:#babdc2;--lime:#d6fe3d;--mono:ui-monospace,Consolas,monospace;--heading:"Arial Narrow","Arial",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--lime)}a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.wrap{max-width:1300px;width:92%;margin:auto}.skip{position:absolute;left:-100vw}.skip:focus{left:1rem;top:1rem;background:black;z-index:8;padding:1rem}.top{border-bottom:1px solid var(--line);background:#141618}.top .wrap,.nav,.brand,.metadata,.sectionhead,.crumb,.gamecard,.footline{display:flex;align-items:center}.top .wrap{min-height:76px;gap:38px}.brand{gap:10px;font-weight:950;font-size:26px;letter-spacing:-1.8px;line-height:1}.brand img{width:35px;height:35px}.brand i{color:var(--lime);font-style:normal}.nav{gap:25px;font-size:14px;font-weight:700}.searchlink{margin-left:auto;display:flex;gap:9px;align-items:center;border:1px solid var(--line);padding:8px 15px;color:#d6d8da;border-radius:5px;font-size:13px}.glass{width:14px;height:14px;border:2px solid currentColor;border-radius:50%;position:relative;display:inline-block}.glass:after{content:"";position:absolute;width:6px;height:2px;background:currentColor;transform:rotate(45deg);right:-5px;bottom:-2px}.ticker{border-bottom:1px solid var(--line)}.ticker .wrap{display:flex;align-items:center;gap:18px;min-height:41px;overflow:auto;white-space:nowrap;scrollbar-width:none}.ticker a{font-size:12px;color:#d0d1d3}.ticker a+a:before{content:"/";color:#646a6d;margin-right:18px}.eyebrow,.pill,.date,.kicker,.metadata,.ranknum{font:700 11px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}.eyebrow,.kicker,.ranknum{color:var(--lime)}.hero{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr);gap:20px;margin:30px 0 47px}.lead{position:relative;isolation:isolate;border:1px solid var(--line);border-radius:9px;overflow:hidden;min-height:450px;display:flex;align-items:end}.lead>img{position:absolute;z-index:-2;height:100%;width:100%;object-fit:cover}.lead:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070b0ef7,rgba(7,11,14,.70) 26%,transparent 80%)}.leadcopy{padding:30px;width:100%}.pill{display:inline-block;background:var(--lime);color:#161912;padding:5px 9px;border-radius:3px}.lead h1,.pagehead h1,.body h1{font:900 clamp(36px,4.2vw,66px)/1 var(--heading);letter-spacing:-.055em;margin:13px 0}.lead h1{max-width:770px;text-wrap:balance}.lead p{margin:0 0 15px;color:#e0e2df;max-width:590px}.metadata,.date{color:#b9bcbe;font-size:10px}.rankbox{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:22px;display:flex;flex-direction:column}.rankbox h2,.sectionhead h2{font:900 clamp(26px,3vw,40px)/1.1 var(--heading);letter-spacing:-.055em;margin:3px 0}.rankbox h2{font-size:30px;margin:0 0 9px}.rankrow{display:grid;grid-template-columns:26px 1fr 65px;gap:11px;align-items:center;padding:15px 0;border-top:1px solid var(--line);flex:1}.rankrow img{width:65px;height:58px;object-fit:cover;border-radius:4px}.rankrow strong{font-size:16px;line-height:1.23;display:block;letter-spacing:-.025em}.rankrow .kicker{font-size:9px;color:#aeb4a9}.ranknum{font-size:19px;color:var(--lime);letter-spacing:-.07em}.section{margin:46px 0}.sectionhead{justify-content:space-between;gap:14px;margin-bottom:19px}.sectionhead h2:before{content:"";display:inline-block;width:6px;height:.73em;background:var(--lime);transform:skew(-12deg);margin-right:11px}.more{font:700 12px var(--mono);color:#d8dbd9}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:7px;overflow:hidden;display:flex;flex-direction:column}.card:hover{border-color:#777d6e}.thumb{aspect-ratio:1.98;width:100%;object-fit:cover;display:block}.cardcopy{padding:19px;display:flex;flex-direction:column;flex:1}.cardcopy h3,.gamecard h3{margin:7px 0;font-size:22px;line-height:1.12;letter-spacing:-.035em}.cardcopy p{color:var(--muted);font-size:14px;margin:3px 0 15px}.cardcopy .date{margin-top:auto}.games{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gamecard{padding:10px;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:6px}.gamecard img{width:54px;height:54px;object-fit:cover;border-radius:4px}.gamecard h3{font-size:17px}.faq details{border-top:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:var(--muted);max-width:75ch}footer{border-top:1px solid var(--line);padding:30px 0;font-size:13px;color:var(--muted);margin-top:68px}.footline{justify-content:space-between;gap:16px;flex-wrap:wrap}.footlinks,.chips{display:flex;gap:16px;flex-wrap:wrap}.chips a,.action{border:1px solid var(--line);padding:7px 13px;border-radius:4px}.crumb{gap:7px;flex-wrap:wrap;font-size:12px;color:#aeb3b6;margin:24px 0}.pagehead{margin:42px 0 24px}.pagehead h1{font-size:clamp(35px,5vw,60px)}.pagehead p,.intro{color:#d1d4d6;max-width:70ch}.layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:clamp(30px,6vw,100px);align-items:start}.body h1{font-size:clamp(34px,4vw,58px)}.body h2{font-size:29px;letter-spacing:-.04em;line-height:1.2;margin-top:35px}.body h3{font-size:19px;line-height:1.3;margin-bottom:5px}.body p{line-height:1.75}.artimg{width:100%;height:auto;aspect-ratio:2.1;object-fit:cover;border-radius:7px}.toc,.cta{background:var(--card);border:1px solid var(--line);padding:20px;border-radius:6px}.toc{margin-top:12px}.toc ol{padding-left:20px;margin-bottom:0}.toc li{padding:4px 0}.source a,.body p a{color:var(--lime);text-decoration:underline}.action{display:inline-block;background:var(--lime);color:#161813;font-weight:800}.action:hover{background:white;color:black}.searchform{display:flex;gap:8px;max-width:640px;margin:20px 0}.searchform input{flex:1;min-width:0;background:var(--card);border:1px solid #757a7e;color:white;padding:13px;border-radius:4px;font:inherit}.searchform button{cursor:pointer}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}@media(max-width:900px){.top .wrap{gap:18px}.nav{gap:13px}.hero{grid-template-columns:1.5fr 1fr}.rankbox{padding:16px}.rankrow{grid-template-columns:20px 1fr}.rankrow img{display:none}.games{grid-template-columns:repeat(2,1fr)}.grid{gap:12px}.layout{grid-template-columns:1fr}.toc{order:-1}}@media(max-width:670px){.top .wrap{min-height:64px;flex-wrap:wrap;padding:13px 0 9px;gap:10px}.nav{order:3;width:100%;justify-content:space-between;font-size:13px;padding-top:6px}.hero{grid-template-columns:1fr;margin:18px 0 32px;gap:14px}.lead{min-height:390px}.leadcopy{padding:20px}.lead p{font-size:14px}.rankrow{grid-template-columns:25px 1fr 60px;padding:12px 0}.rankrow img{display:block;width:60px;height:45px}.grid{grid-template-columns:1fr}.gamecard{padding:8px;gap:7px}.gamecard img{width:39px;height:43px}.gamecard h3{font-size:14px}.section{margin:32px 0}.chips{gap:7px}.more{font-size:11px}.brand{font-size:23px}.wrap{width:92%}}

:root{--bg:#141123;--card:#201c34;--line:#39324d;--lime:#c1a6ff;--muted:#c7bfd9}body{background:radial-gradient(ellipse 65% 600px at 50% 2%,#2e224b 0%,transparent 87%),#141123;font-family:"Segoe UI",Arial,sans-serif}.homebar{background:#1b172bdc;border-bottom:1px solid #403352}.homebar>.wrap,.wideNav,.jump{display:flex;align-items:center}.homebar>.wrap{min-height:76px;gap:36px}.wideNav{gap:27px;font-weight:700;color:#d8cfe8}.brand i{color:#d6fe3d}.jump{margin-left:auto;gap:13px;background:#27213a;border:1px solid #514664;border-radius:13px;padding:9px 17px;font-size:14px}.mobileNav{display:none}.discovery{text-align:center;padding:clamp(52px,6vw,94px) 0 35px;position:relative}.discovery h1{font:900 clamp(42px,5.5vw,86px)/1.16 "Segoe UI",Arial,sans-serif;letter-spacing:-.056em;margin:0;color:#fff}.discovery em{display:inline-block;font-style:normal;font-weight:900;letter-spacing:-.05em;border-radius:.23em;padding:0 .23em .08em;background:linear-gradient(160deg,#a58afb,#8254e7);box-shadow:0 6px #5633a1;transform:rotate(-1.4deg)}.discovery p{color:#d5cce4;font-size:clamp(16px,1.55vw,22px);margin:27px auto;max-width:44ch}.lookup{position:relative;display:flex;align-items:center;gap:18px;margin:32px auto 25px;width:min(100%,760px);padding:9px 10px 9px 24px;border:2px solid #7256a8;border-radius:20px;background:#29213e;box-shadow:0 0 0 8px #35294755,0 6px #0d0b18;color:#b994ff}.lookup input{flex:1;min-width:0;padding:10px 0;background:transparent;color:white;border:0;font:inherit}.lookup input::placeholder{color:#bbb1ce}.lookup button,.mobileNav summary{background:linear-gradient(#a282ff,#8456e6);box-shadow:0 3px #5934a4;border:0;border-radius:12px;color:white;font:700 15px "Segoe UI",sans-serif;cursor:pointer;padding:12px 19px}.hot{font-size:14px;color:#ffac67;margin:25px 0 12px}.pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.pills a{display:flex;align-items:center;gap:8px;background:#272138;border:1px solid #554862;border-radius:99px;padding:5px 13px 5px 6px;font-size:14px;font-weight:650}.pills img{border-radius:100%;object-fit:cover}.token{position:absolute;z-index:-0;font-size:26px;border:2px solid #4c3f65;border-radius:13px;color:#71608b;line-height:1;padding:9px;transform:rotate(-13deg);pointer-events:none}.token-a{top:45%;left:3%}.token-b{top:18%;right:1%;transform:rotate(13deg)}.token-c{top:67%;right:6%;font-size:16px}.counts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#262038,#1e192e);padding:18px 0}.counts a{text-align:center;display:grid}.counts a+a{border-left:1px solid var(--line)}.counts b{font-size:30px;line-height:1.15}.counts span{color:var(--muted);font-size:14px}.sectionhead h2:before{width:8px;border-radius:5px;background:#aa82ec}.card,.gamecard{border-radius:18px;background:linear-gradient(150deg,#29213e,#1f1a30);box-shadow:0 4px #0c0a14}.card .thumb{aspect-ratio:2.06}.cardcopy .kicker{color:#dac6ff}.cardcopy h3{font-family:"Segoe UI",Arial,sans-serif;font-size:22px}.date{border-top:1px solid var(--line);padding-top:11px}.more{background:#28213b;border:1px solid var(--line);padding:7px 12px;border-radius:9px}.sectionhead h2{font-family:"Segoe UI",Arial,sans-serif}.faq summary{color:#eee7fa}@media(max-width:850px){.token{display:none}.wideNav{gap:14px}.homebar>.wrap{gap:18px}}@media(max-width:670px){.homebar>.wrap{min-height:66px;gap:9px}.wideNav,.jump span+span{display:none}.jump{padding:14px;border-radius:11px}.mobileNav{display:block;position:relative}.mobileNav summary{list-style:none;padding:9px 13px;font-size:18px}.mobileNav summary::-webkit-details-marker{display:none}.mobileNav nav{position:absolute;z-index:5;right:0;top:49px;width:170px;display:grid;background:#29213c;border:1px solid var(--line);border-radius:13px;padding:6px;box-shadow:0 8px 22px #0008}.mobileNav nav a{padding:8px 13px}.discovery{padding:37px 0 25px}.discovery h1{font-size:clamp(38px,9vw,56px)}.discovery em{display:table;margin:6px auto 0}.discovery p{margin:21px auto;max-width:34ch}.lookup{margin:23px auto 18px;padding:7px 8px 7px 14px;gap:12px}.lookup button{padding:10px;font-size:13px}.lookup input{font-size:15px}.pills{flex-direction:column;align-items:center;gap:7px}.counts{gap:6px;background:none;border:0;padding:0}.counts a{padding:12px 3px;background:#252035;border:1px solid var(--line);border-radius:13px;box-shadow:0 4px #0d0b17}.counts b{font-size:23px}.counts span{font-size:12px}}
.pagehead h1,.body h1,.body h2{font-family:"Segoe UI",Arial,sans-serif;line-height:1.08}.body h1{margin:16px 0 20px}.crumb{color:#beb0d4}.crumb a{color:#d6c0ff}.pill,.chips a{border-radius:20px;background:#33264b;color:#e6d6ff;border:1px solid #665083}.pill{padding:6px 12px}.toc,.cta{border-radius:18px;background:linear-gradient(145deg,#2c2440,#201a30);border-color:#514161}.toc strong{color:#e5d8ff}.toc li::marker{color:#c3a2fa}.body .metadata{display:block;line-height:1.8;color:#cbbcd9}.artimg{border-radius:18px}.body .intro{font-size:1.12rem}.body section,.body>.faq,.body>.source,.body>p{max-width:76ch}.action,.searchform button{background:#c4a7ff;color:#221432;border-radius:12px}.searchform input{background:#282139;border-color:#71548d;border-radius:12px}.body .faq details{background:#211a30;border:1px solid #473754;border-radius:12px;padding:14px 18px;margin-bottom:8px}footer{background:#191525}.footlinks a{color:#d2c3e4}.mobileNav{z-index:10}.body{min-width:0}@media(min-width:901px){.toc{position:sticky;top:20px}}@media(max-width:900px){.toc{order:0}.layout{gap:15px}}
.brand img{width:45px;height:45px}.brand i{color:#c097ff}.wideNav{gap:clamp(10px,1.4vw,24px);font-size:15px}.resource .cover{position:relative}.cover span,.cover b{position:absolute;top:12px;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:750}.cover span{left:12px;background:#211a34ed;color:white}.cover b{right:12px;background:#90e5b4;color:#123321}.signature{display:flex;align-items:center;gap:8px;border-top:1px solid #473953;padding-top:12px;margin-top:auto;color:#ded3ef}.collectionGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.panel,.offer,.filterbar{border:1px solid #483b58;background:linear-gradient(145deg,#272039,#1d182c);border-radius:18px;box-shadow:0 4px #100d1b}.offer{display:flex;align-items:center;gap:16px;padding:19px;margin:12px 0}.offer>span:nth-child(2){display:grid;gap:3px}.offer>b{margin-left:auto;color:#c6aaff}.offer strong{font-size:22px}.offer small,.testnote{color:#c7bad8}.offerIcon{font-size:30px;background:#55388b;border-radius:14px;padding:10px 17px}.filterbar{display:flex;flex-wrap:wrap;gap:16px;padding:18px;align-items:end}.filterbar label{display:grid;gap:5px;color:#d9cde6;font-size:14px}.filterbar input,.filterbar select,.filterbar button{background:#302642;border:1px solid #746087;color:#fff;border-radius:11px;padding:10px;font:inherit}.detailgrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:24px;align-items:start}.resourcebody{overflow:hidden}.detailcover{width:100%;aspect-ratio:2.4;object-fit:cover;display:block}.inner{padding:clamp(18px,3vw,34px)}.inner h1{font-size:clamp(32px,4.5vw,60px);line-height:1.03;letter-spacing:-.045em;margin:15px 0}.inner h2{letter-spacing:-.04em}.inner p,.inner li{color:#e5dcec}.inner li{margin:8px 0}.ctaButton{background:linear-gradient(#a783f9,#7851d2);color:white;border-radius:12px;padding:12px 24px;display:inline-block;font-weight:750;box-shadow:0 4px #523788}.ctaButton:hover{color:white;filter:brightness(1.15)}.testnote{display:block;margin-top:10px}.jumpnav{margin:26px 0}.codebox pre{overflow:auto;padding:15px;background:#100d18;border-radius:12px;font-size:13px}.codebox summary{cursor:pointer;color:#ceb3ff}.inner dl{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inner dd{text-align:right;margin:0}.productDetail{max-width:760px}.filterbar button{cursor:pointer}@media(max-width:980px){.wideNav{display:none}.mobileNav{display:block;position:relative}.mobileNav summary{list-style:none;cursor:pointer}.mobileNav nav{position:absolute;right:0;z-index:10;background:#2b213f;padding:12px;display:grid;border:1px solid #534061;border-radius:12px;min-width:160px}.mobileNav nav a{padding:8px}}@media(max-width:700px){.detailgrid{grid-template-columns:1fr}.collectionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.collectionGrid .cardcopy{padding:12px}.collectionGrid h3{font-size:17px}.filterbar{gap:10px}.filterbar label:first-child{width:100%}.offer strong{font-size:18px}}
/* Catalog layout */
.brand,.brand:hover,.brand:focus-visible{color:#fff}
.homebar{position:relative;z-index:4}
.wideNav a{padding:7px 8px;border-radius:8px}
.wideNav{gap:clamp(2px,.7vw,11px)}
nav a[aria-current="page"]{color:#f6f0ff;background:#412e60}
.collectionGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.3vw,18px);align-items:stretch}
.collectionGrid .card{min-width:0}
.collectionGrid .thumb{display:block;width:100%;height:clamp(85px,10vw,142px);aspect-ratio:auto;object-fit:cover}
.collectionGrid .cardcopy{padding:14px;gap:5px}
.collectionGrid h3{font-size:clamp(16px,1.4vw,20px);margin:0}
.collectionGrid small{color:#c7bad8}
.filterbar{display:grid;grid-template-columns:minmax(200px,2fr) minmax(150px,1fr) minmax(135px,.85fr) auto;gap:14px;padding:20px 22px;align-items:end;background:#211c31}
.filterbar label{display:grid;gap:7px;font-weight:650;font-size:13px}
.filterbar input,.filterbar select,.filterbar button{width:100%;height:44px;min-width:0;padding:0 14px;border:1px solid #635477;background:#30283f;color:#fff;border-radius:10px;font:500 15px "Segoe UI",Arial,sans-serif}
.filterbar button{color:#edddff;background:#402f59;font-weight:700}
#filter-status{color:#d0c3df;font-size:14px;margin:22px 0 12px}
.cover{isolation:isolate;overflow:hidden}.resource .cover .thumb{width:100%;height:auto;aspect-ratio:2.1;object-fit:cover;display:block}
.cover span,.cover b{line-height:1.3;z-index:1}.cover span{backdrop-filter:blur(4px)}
.card:focus-visible,.offer:focus-visible{outline-offset:2px}.card:hover,.offer:hover{border-color:#9474bb}
@media(max-width:850px){.collectionGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.collectionGrid .thumb{height:clamp(85px,18vw,140px)}.filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.filterbar{padding:14px;gap:10px}.filterbar label:first-child{grid-column:1/-1}.filterbar button{grid-column:1/-1;height:36px}.filterbar input,.filterbar select{font-size:16px}.collectionGrid .cardcopy{padding:10px}.collectionGrid .thumb{height:clamp(76px,23vw,118px)}}
.catalog-pages,.model{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:24px 0}.catalog-pages button,.model input{background:#322842;color:white;border:1px solid #695880;border-radius:8px;padding:10px 14px;font:inherit}.catalog-pages button{cursor:pointer}.catalog-pages button:disabled{opacity:.48;cursor:default}.model{justify-content:flex-start;align-items:end;background:#1c172a;border:1px solid #4b3c5e;padding:15px;border-radius:14px}.model label{display:grid;gap:5px;font-size:14px;flex:1 1 160px}.model input{max-width:100%;width:100%}.model output{flex-basis:100%;font-size:20px;font-weight:700;color:#e2caff}.source a{text-decoration:underline}.source li{overflow-wrap:anywhere}.resourcebody h2{line-height:1.22}.inner pre{white-space:pre-wrap}

.directoryHero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.75fr);gap:11%;align-items:center;padding:clamp(24px,4vw,64px) 0 clamp(38px,5vw,78px)}
.directoryTitle,.directorySearch,.resultHead,.viewSwitch{display:flex;align-items:center;gap:14px}.directoryTitle h1{font:900 clamp(44px,6vw,80px)/1 "Segoe UI",sans-serif;letter-spacing:-.055em;margin:0}.directoryTitle span,.viewSwitch [aria-pressed=true]{background:#7956ca;color:white;border-radius:10px;padding:6px 12px;font-weight:700}.directoryHero p{color:#d1c5e0;max-width:43ch;font-size:clamp(16px,1.6vw,22px)}.directorySearch{padding:14px 18px;border:2px solid #705893;border-radius:16px;background:#29223a;color:#c6a5ff}.directorySearch input{width:100%;min-width:0;background:transparent;border:0;color:white;font:inherit}.codeArt{background:linear-gradient(145deg,#302440,#211a31);border:1px solid #655379;border-radius:16px;box-shadow:0 7px #100c1c;transform:rotate(-3deg);overflow:hidden;color:#c7b6dc}.codeArt div{padding:10px 14px;background:#332940;font:13px Consolas,monospace}.codeArt pre{padding:12px 16px;font-size:clamp(10px,1vw,16px);line-height:1.9}.codeArt i{color:#bf9aff}.codeArt b{color:#8fdec4}
.directoryBody{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}.dirFilters{background:#241d34;padding:16px;border:1px solid #52435e;border-radius:15px}.dirFilters summary{font-weight:750;cursor:pointer}.dirFilters label{display:grid;gap:6px;color:#d4c8df;font-size:13px;margin:16px 0}.dirFilters select,.dirFilters button,.viewSwitch button{border:1px solid #605272;border-radius:9px;background:#30283e;color:white;font:inherit;padding:8px 12px;cursor:pointer}.dirFilters select{width:100%}.resultHead{justify-content:space-between}.resultHead h2{font-size:clamp(23px,2.3vw,32px);margin:0;letter-spacing:-.04em}.viewSwitch{gap:3px;padding:3px;border-radius:11px;background:#282233}.viewSwitch button{border:0}.directoryBody #filter-status{font-size:13px;margin:10px 0 17px}.directoryBody .grid{gap:14px}.directoryBody .cardcopy{padding:14px}.directoryBody .cardcopy p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.directoryBody .cardcopy h3{font-size:19px}.library.rows{grid-template-columns:1fr}.library.rows .card{display:grid;grid-template-columns:clamp(110px,16vw,200px) 1fr;align-items:center}.library.rows .signature,.library.rows .cover b,.library.rows .cover span{display:none}.library.rows h3{margin:3px 0}.reading{max-width:860px;margin:28px auto;border:1px solid #4b3e59;background:#211b30;border-radius:18px;overflow:hidden}.readingCover{width:100%;max-height:240px;object-fit:cover}.readingText{padding:clamp(19px,4vw,48px)}.readingText h1{font-size:clamp(31px,4vw,54px);line-height:1.05;letter-spacing:-.045em;margin:.4em 0}.readingText p{line-height:1.7;color:#ddd4e7}.readingText h2{line-height:1.2;margin-top:1.4em}.refs{border-top:1px solid #4a3d58;padding-top:16px;margin-top:24px}.refs summary{cursor:pointer}
@media(min-width:741px) and (max-width:1100px){.directoryBody{grid-template-columns:170px 1fr;gap:14px}.directoryBody .grid:not(.rows){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.directoryBody,.directoryHero{grid-template-columns:minmax(0,1fr);gap:16px}.directoryHero{padding:24px 0}.codeArt{display:none}.dirFilters[open]>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dirFilters label{margin:10px 0}.directoryBody .grid:not(.rows){grid-template-columns:1fr}.directoryBody .rows .cardcopy p{display:none}.directoryBody .rows .cardcopy h3{font-size:16px}.directoryTitle{flex-wrap:wrap}}
.storyGrid{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(240px,1fr);gap:22px;align-items:start}.storyMain,.sideStack{display:grid;gap:16px;min-width:0}.storyCover{width:100%;aspect-ratio:2.13;object-fit:cover;border:1px solid #4b405c;border-radius:18px}.publisher,.miniStory,.storyNav{display:flex;align-items:center;gap:12px}.publisher{font-size:18px;font-weight:750;margin-top:10px}.miniStory{padding:12px 0;border-top:1px solid #473952;font-weight:650;line-height:1.3}.miniStory img{object-fit:cover;border-radius:7px}.storyNav{flex-wrap:wrap;border-bottom:1px solid #493953;padding-bottom:14px}.storyNav a{padding:6px 12px;background:#382b4e;border-radius:10px;color:#eadfff}.storyButton{display:block;text-align:center}.storyMain p{max-width:72ch;line-height:1.72}.sideStack h2{margin-top:0;font-size:21px}.sideStack dd{overflow-wrap:anywhere}.body section{padding:3px 0}.body .artimg{margin:8px 0 20px}@media(max-width:760px){.storyGrid{grid-template-columns:1fr}.storyMain h1{font-size:34px}.sideStack{gap:12px}}
.chapterPanel{overflow:hidden;background:#1e192f;border:1px solid #3d354e;border-radius:20px}.chapterBody{padding:clamp(18px,3vw,34px)}.chapterLinks{display:flex;gap:8px;flex-wrap:wrap;padding:14px 17px;background:#191526;border-bottom:1px solid #393148}.chapterLinks a{border-radius:11px;padding:10px 15px;color:#d5cbe7;font-weight:750;font-size:15px}.chapterLinks a:first-child,.chapterLinks a[aria-current=location]{color:white;background:#815de3;box-shadow:0 3px #53389c}.chapterLinks:has([aria-current]) a:first-child:not([aria-current]){color:#d5cbe7;background:transparent;box-shadow:none}.chapterBody h2,.specGroup h2{font:800 clamp(22px,2.2vw,29px)/1.23 "Segoe UI",sans-serif;letter-spacing:-.03em}.chapterBody>h2:first-child{margin-top:0}.specGroup{margin:34px 0;scroll-margin-top:16px}.specList{display:grid;gap:11px;margin:16px 0 0;padding:0;list-style:none}.specList .specRow{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:start;gap:13px;padding:18px clamp(14px,2vw,22px);margin:0;border:1px solid #484058;border-radius:16px;background:#292238}.specMark{display:grid;place-items:center;height:28px;width:28px;border:1px solid #537669;background:#2c3b3b;border-radius:9px;color:#8be0b0;font-weight:800}.specRow h3{font:750 17px/1.4 "Segoe UI",sans-serif;letter-spacing:0;margin:0;color:#fff}.specRow p{margin:6px 0 0;color:#d6cde2;font-size:16px;line-height:1.6}.stepsList .specMark{background:#352946;border-color:#635087;color:#b8a0ff}.specExtras p{font:600 11px/1.4 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#c3b5d6;margin:18px 0 9px}.specExtras ul{display:flex;gap:7px;flex-wrap:wrap;padding:0;list-style:none}.specExtras li{margin:0;border-radius:8px;padding:3px 10px;border:1px solid #51435f;background:#2c253a;font-size:13px;color:#e1d3ed}@media(max-width:560px){.chapterLinks{gap:3px;padding:10px}.chapterLinks a{font-size:13px;padding:8px 9px}.specList .specRow{gap:9px;padding:13px}.specRow p{font-size:15px}}

.themeSwitch{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #534760;border-radius:12px;background:#292237;color:#ffd670;font-size:21px;cursor:pointer}.homebar>.wrap{column-gap:clamp(8px,1.7vw,24px)}.discovery{isolation:isolate}.floatSet{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;color:#9e85d5}.floatSet>span{position:absolute;border:1px solid #5c4c78;border-radius:12px;background:#282137;box-shadow:0 4px #100e1a;padding:7px 12px;opacity:.65;transform:rotate(var(--tilt,-9deg));animation:drift 8s ease-in-out infinite alternate}.spark{left:7%;top:14%;font-size:21px}.terminal{left:2%;top:48%;width:82px;height:63px;text-align:left}.terminal i{display:block;font:8px monospace}.terminal b{display:block;height:4px;border-radius:8px;background:#9e7bf4;margin:5px 0;width:78%}.terminal b:last-child{width:49%}.load{left:6%;top:76%;font:11px monospace;--tilt:6deg}.brackets{right:3%;top:32%;font:700 20px monospace;--tilt:10deg}.key{right:9%;top:57%;font-size:17px}.toggleArt{right:3%;top:78%;font:10px monospace}.toggleArt i{display:inline-block;width:18px;height:10px;border-radius:8px;background:radial-gradient(circle at 75% 50%,#e2d3ff 3px,#8655ce 4px)}.floatSet>span:nth-child(even){animation-delay:-3s}.floatSet>span:nth-child(3n){animation-duration:10s}@keyframes drift{to{transform:translate(2px,-6px) rotate(calc(var(--tilt,-9deg) + 3deg))}}
.trendingStrip{position:relative;margin:26px auto 0;max-width:78%}.trendingStrip h2{font-size:15px;color:#ffad69;margin:0 0 12px}.trendingStrip h2 small{font-weight:400;margin-left:6px;color:var(--muted)}.trendingStrip>div{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.trendingStrip a{display:flex;align-items:center;gap:7px;padding:5px 12px 5px 5px;border:1px solid #564766;background:#282037;color:#f0e8fa;border-radius:22px;font-size:13px;font-weight:650}.trendingStrip img{border-radius:50%;object-fit:cover}
.merchFoot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;gap:10px;padding-top:14px;border-top:1px solid var(--line);font-size:13px}.merchFoot b{background:#7050b7;padding:5px 10px;border-radius:8px;color:white}.productHero{display:block;width:100%;height:clamp(170px,24vw,320px);object-fit:cover;border-radius:12px;margin-bottom:20px}.productPage{max-width:780px;margin:32px auto}
:where(button,.ctaButton,.more,.action,.trendingStrip a,.mobileNav summary,.merch){transition:box-shadow .18s,border-color .18s}:is(button,.ctaButton,.more,.action,.trendingStrip a,.mobileNav summary,.merch):is(:focus-visible,:hover):not(:disabled){border-color:#a683f6;box-shadow:0 0 0 1px #b69afa77,0 0 16px #9661eb55}
@media(max-width:900px){.terminal,.load,.toggleArt,.key{display:none}.spark{left:1%;top:4%}.brackets{right:1%;top:8%}.trendingStrip{max-width:100%}}
@media(max-width:540px){.floatSet>span{font-size:13px;padding:4px 7px}.themeSwitch{height:37px;width:37px}.trendingStrip h2 small{font-size:12px}.discovery{padding-top:44px}}
@media(prefers-reduced-motion:reduce){.floatSet>span{animation:none}button,.ctaButton,.more,.action,.trendingStrip a,.merch{transition:none}}
html[data-theme=light]{color-scheme:light;--bg:#f9f7fc;--card:#fff;--text:#21192e;--muted:#574e64;--line:#d6cddd;--lime:#603398}
html[data-theme=light] body{background:radial-gradient(ellipse 80% 410px at 50% 0,#eae0fa,transparent 95%),#faf8fc;color:var(--text)}
html[data-theme=light] :is(.homebar,footer,.card,.panel,.chapterPanel,.offer,.codeArt,.directorySearch,.dirFilters,.trendingStrip a,.mobileNav nav,.reading,.cta,.toc,.body .faq details){background:#fff;color:#21192e;border-color:#d7cee0;box-shadow:0 3px 10px #4221630b}
html[data-theme=light] :is(.brand,.brand:hover,.wideNav,.discovery h1,.faq summary,.specRow h3,.toc strong,.directoryHero p,.storyMain p,.inner p,.inner li,.intro,.body p,.pagehead p,.discovery p,.cardcopy p,.footlinks a,.signature,.crumb,.testnote,.filterbar label,.dirFilters label,.stepMark,.specRow p,.specExtras p,#filter-status){color:#3b304b}
html[data-theme=light] :is(.jump,.themeSwitch,.lookup,.searchform input,.filterbar,.catalog-pages button,.specRow,.specExtras li,.chapterLinks,.viewSwitch,.more,.storyNav a,.chips a,.pill,.dirFilters select,.dirFilters button,.viewSwitch button,.codeArt div,.floatSet>span){background:#f1edf7;color:#473158;border-color:#cbbbdc}
html[data-theme=light] :is(.lookup input,.directorySearch input){color:#21192e}
html[data-theme=light] :is(.lookup input,.directorySearch input)::placeholder{color:#665970}
html[data-theme=light] :is(.chapterLinks a,.crumb a,.cardcopy .kicker,.trendingStrip h2,.source a,.codebox summary,.body p a,.body .metadata){color:#683398}
html[data-theme=light] :is(.discovery em,.viewSwitch button[aria-pressed=true],.chapterLinks a[aria-current=location],nav a[aria-current=page],.lookup button,.ctaButton,.mobileNav summary){color:white;background:#6b43b3}
html[data-theme=light] .specList .specRow{background:#f5f2fa;border-color:#d6cbe0}
html[data-theme=light] .specMark{background:#d9f2e6;color:#226c4a}
html[data-theme=light] .stepsList .specMark{background:#e8dff5;color:#633a91}
html[data-theme=light] .chapterLinks:has([aria-current]) a:first-child:not([aria-current]){background:transparent;color:#683398}
html[data-theme=light] .codeArt i{color:#743c99}html[data-theme=light] .codeArt b{color:#126e59}html[data-theme=light] .codebox pre{color:#eee9f7}
/* Keep image labels inside their own thumbnails, including product cards. */
.cover { position: relative; }

/* Use the product highlight on interactive controls across all page layouts. */
:root { --interaction-edge: #ba9cff; --interaction-halo: #9868ef55; }
html[data-theme=light] { --interaction-edge: #8460c9; --interaction-halo: #8052c938; }
:is(button:not(:disabled),a.card,a.more,a.jump,a.ctaButton,a.action,a.miniStory,.wideNav a,.mobileNav a,.chapterLinks a,.trendingStrip a,summary) {
  transition: box-shadow .16s ease, border-color .16s ease;
}
@media (hover:hover) {
  :is(button:not(:disabled),a.card,a.more,a.jump,a.ctaButton,a.action,a.miniStory,.wideNav a,.mobileNav a,.chapterLinks a,.trendingStrip a,summary):hover {
    border-color: var(--interaction-edge);
    box-shadow: 0 0 0 1px var(--interaction-edge), 0 0 15px var(--interaction-halo);
  }
}
:is(button:not(:disabled),a.card,a.more,a.jump,a.ctaButton,a.action,a.miniStory,.wideNav a,.mobileNav a,.chapterLinks a,.trendingStrip a,summary):is(:focus-visible,:active) {
  border-color: var(--interaction-edge);
  box-shadow: 0 0 0 1px var(--interaction-edge), 0 0 15px var(--interaction-halo);
}
summary { border-radius: 8px; }
@media(prefers-reduced-motion:reduce) {
  :is(button,a.card,a.more,a.jump,a.ctaButton,a.action,a.miniStory,.wideNav a,.mobileNav a,.chapterLinks a,.trendingStrip a,summary) { transition:none; }
}
