/* TABOOO PLAY HUB v1.0.0 — component-scoped styles, no global JNews overrides. */
.tpl-root{--tpl-ink:#f7f8fc;--tpl-dim:#9da6ba;--tpl-panel:#151a29;--tpl-border:rgba(255,255,255,.1);position:relative;left:50%;transform:translateX(-50%);width:min(1190px,calc(100vw - 28px));max-width:none;margin:28px 0 50px!important;color:var(--tpl-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.5;isolation:isolate;text-align:left}
.tpl-root *, .tpl-root *::before,.tpl-root *::after{box-sizing:border-box}
.tpl-root a,.tpl-root button{transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
.tpl-root button,.tpl-root input{font:inherit}
.tpl-root a:focus-visible,.tpl-root button:focus-visible,.tpl-root input:focus-visible{outline:3px solid #ff777d;outline-offset:4px}
.tpl-root h1,.tpl-root h2,.tpl-root h3,.tpl-root p{margin:0;padding:0;color:inherit;line-height:inherit}
.tpl-root h1,.tpl-root h2,.tpl-root h3{font-family:inherit;font-weight:850;letter-spacing:-.045em}
.tpl-root .tpl-shell{background:radial-gradient(ellipse 65% 35% at 80% 7%,rgba(140,33,59,.19),transparent 82%),#090d17;border:1px solid #262b3a;border-radius:27px;padding:clamp(18px,3.7vw,46px);box-shadow:0 20px 70px rgba(0,0,0,.14);overflow:hidden}
.tpl-root .tpl-hero{position:relative;min-height:330px;padding:clamp(18px,4vw,46px) clamp(12px,3vw,28px) 34px;overflow:hidden;border-radius:22px;background:linear-gradient(108deg,#151828 0%,#161321 53%,#311523 100%);border:1px solid #383142}
.tpl-root .tpl-eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:800;letter-spacing:.24em;color:#f4a2ae;position:relative;z-index:2}.tpl-root .tpl-eyebrow-dot{width:7px;height:7px;background:#ff465e;border-radius:50%;box-shadow:0 0 0 5px rgba(255,70,94,.15)}
.tpl-root .tpl-hero .tpl-main-heading{font-size:clamp(48px,8.4vw,106px);line-height:1.05;letter-spacing:-.085em;color:#fff!important;margin:23px 0 0!important;max-width:890px;position:relative;z-index:2}.tpl-root .tpl-hero .tpl-main-heading>span{color:#ff5669}.tpl-root .tpl-period{color:#fff}
.tpl-root .tpl-tagline{font-size:clamp(15px,2.6vw,23px);font-weight:700;color:#e6d2d8;margin:10px 0 0}.tpl-root .tpl-hero-desc{max-width:490px;color:#b6b8c6;font-size:14px;margin:14px 0 0;position:relative;z-index:2}
.tpl-root .tpl-hero-stats{display:flex;gap:22px;flex-wrap:wrap;margin:34px 0 0;position:relative;z-index:2}.tpl-root .tpl-hero-stats>span{font-size:10px;letter-spacing:.12em;color:#9fa3b3;display:flex;align-items:center;gap:9px;font-weight:750}.tpl-root .tpl-hero-stats strong{font-size:25px;color:#fff;letter-spacing:-.06em}
.tpl-root .tpl-hero-decoration{position:absolute;inset:0;pointer-events:none}.tpl-root .tpl-hero-decoration span{position:absolute;border:1px solid rgba(255,151,165,.2);transform:rotate(-30deg);border-radius:22px;box-shadow:inset 0 0 55px rgba(233,72,111,.07)}.tpl-root .tpl-hero-decoration span:nth-child(1){width:240px;height:240px;right:5%;top:11%;background:linear-gradient(140deg,rgba(233,72,111,.14),transparent)}.tpl-root .tpl-hero-decoration span:nth-child(2){width:170px;height:170px;right:-2%;top:46%}.tpl-root .tpl-hero-decoration span:nth-child(3){width:115px;height:115px;right:26%;bottom:-28%;opacity:.4}
.tpl-root .tpl-section-heading{margin:38px 0 17px}.tpl-root .tpl-section-heading>span{font-size:10px;color:#f07888;letter-spacing:.21em;font-weight:900}.tpl-root .tpl-section-heading h2{font-size:clamp(25px,3vw,33px);color:#fff!important;margin:5px 0 0}.tpl-root .tpl-section-heading p{font-size:13px;margin-top:6px;color:#8992a8}
.tpl-root .tpl-featured,.tpl-root .tpl-game{--tpl-glow:#d64562;position:relative;overflow:hidden;border:1px solid var(--tpl-border);background:#171c2b;border-radius:20px;display:flex;flex-direction:column;isolation:isolate}
.tpl-root .tpl-theme-violet{--tpl-glow:#9354ec}.tpl-root .tpl-theme-blue{--tpl-glow:#458bff}.tpl-root .tpl-theme-teal{--tpl-glow:#20b4b4}.tpl-root .tpl-theme-orange{--tpl-glow:#ec8c40}.tpl-root .tpl-theme-indigo{--tpl-glow:#6875e6}.tpl-root .tpl-theme-pink{--tpl-glow:#de569c}.tpl-root .tpl-theme-green{--tpl-glow:#44b76a}
.tpl-root .tpl-featured{min-height:330px;flex-direction:row;align-items:center;background:linear-gradient(110deg,#191c2b 50%,#271b2d 100%)}
.tpl-root .tpl-art{height:178px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--tpl-glow),transparent 60%),transparent 65%),linear-gradient(155deg,#202436,#0e1320)}
.tpl-root .tpl-featured .tpl-art{position:absolute;top:0;bottom:0;right:0;width:53%;height:auto;background:radial-gradient(circle at 57% 49%,color-mix(in srgb,var(--tpl-glow),transparent 47%),transparent 55%),linear-gradient(140deg,transparent,#171624)}
.tpl-root .tpl-art-grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:32px 32px;transform:perspective(400px) rotateX(36deg) scale(1.35)}
.tpl-root .tpl-art-a,.tpl-root .tpl-art-b{position:absolute;left:50%;top:50%;border-radius:28px;aspect-ratio:1;width:130px;transform:translate(-50%,-50%) rotate(-24deg);border:1px solid color-mix(in srgb,var(--tpl-glow),white 30%);background:linear-gradient(125deg,color-mix(in srgb,var(--tpl-glow),transparent 65%),transparent);box-shadow:0 0 45px color-mix(in srgb,var(--tpl-glow),transparent 60%)}
.tpl-root .tpl-art-b{width:95px;transform:translate(-13%,-40%) rotate(25deg);opacity:.45}
.tpl-root .tpl-art-glyph{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-8deg);font-size:clamp(64px,7vw,100px);font-weight:950;letter-spacing:-.12em;color:#fff;text-shadow:0 14px 30px rgba(0,0,0,.25),0 0 30px var(--tpl-glow);white-space:nowrap;line-height:1}
.tpl-root .tpl-featured .tpl-art-a{width:235px}.tpl-root .tpl-featured .tpl-art-b{width:175px}.tpl-root .tpl-featured .tpl-art-glyph{font-size:clamp(112px,15vw,185px)}
.tpl-root .tpl-card-content{padding:20px;display:flex;flex-direction:column;flex:1;position:relative;z-index:1}.tpl-root .tpl-featured .tpl-card-content{max-width:56%;padding:28px 38px;min-height:325px;justify-content:center}.tpl-root .tpl-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.tpl-root .tpl-pill{font-size:10px;font-weight:750;color:#c9cce0;padding:5px 8px;border:1px solid rgba(255,255,255,.13);border-radius:6px;background:rgba(255,255,255,.05)}.tpl-root .tpl-state{font-size:10px;color:#c0a9a0;font-weight:700;white-space:nowrap}.tpl-root .tpl-ready{color:#8de0ad}
.tpl-root .tpl-featured-label{color:#ff8593;margin-top:25px;font-size:10px;font-weight:800;letter-spacing:.2em}.tpl-root .tpl-card-content h3{font-size:20px;line-height:1.2;margin:15px 0 0;color:#fff!important}.tpl-root .tpl-featured .tpl-card-content h3{font-size:clamp(27px,3vw,37px);line-height:1.14;margin:10px 0 0}.tpl-root .tpl-description{color:#aeb4c4;font-size:13px;margin:9px 0 0;line-height:1.65}.tpl-root .tpl-featured .tpl-description{font-size:14px;max-width:400px}
.tpl-root .tpl-card-footer{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:end;gap:13px;flex-wrap:wrap}.tpl-root .tpl-meta{font-size:11px;color:#929cb0;white-space:nowrap}
.tpl-root .tpl-play-link,.tpl-root .tpl-disabled{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:36px;padding:8px 13px;border-radius:9px;font-size:11px;line-height:1.25;font-weight:800;text-decoration:none!important;white-space:nowrap}.tpl-root .tpl-play-link{background:#f64c62;color:#fff!important}.tpl-root .tpl-play-link:hover{background:#ff7080;transform:translateY(-2px)}.tpl-root .tpl-disabled{color:#8b90a0;background:#292c3a;cursor:not-allowed}
.tpl-root .tpl-toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:25px 0 14px}.tpl-root .tpl-filters{display:flex;gap:7px;flex-wrap:wrap;flex:1}.tpl-root .tpl-filters button,.tpl-root .tpl-quick-filters button{background:#171c2a;color:#aeb7ca;border:1px solid #2b3143;border-radius:9px;padding:8px 12px;font-size:11px;font-weight:700;cursor:pointer;line-height:1.3;box-shadow:none}.tpl-root .tpl-filters button:hover,.tpl-root .tpl-quick-filters button:hover{border-color:#db526d;color:#fff}.tpl-root .tpl-filters button.is-active,.tpl-root .tpl-quick-filters button.is-active{background:#e84761;color:#fff;border-color:#e84761}
.tpl-root .tpl-search{border:1px solid #2c3345;background:#171c2a;border-radius:10px;display:flex;align-items:center;gap:10px;color:#a6b0c5;padding:0 11px;min-width:185px;max-width:100%;height:38px}.tpl-root .tpl-search>span:not(.screen-reader-text){font-size:21px}.tpl-root .tpl-search input{margin:0!important;padding:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;min-width:0;width:145px;font-size:12px;height:34px}
.tpl-root .tpl-quick-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tpl-root .tpl-quick-filters button{font-size:10px;padding:7px 10px;border-radius:999px}.tpl-root .tpl-quick-filters button.is-active{background:#363345;border-color:#8d697b}.tpl-root .tpl-count{color:#8d96a9;font-size:11px;letter-spacing:.05em;margin:20px 0 11px}.tpl-root .tpl-count-value{color:#fff;font-weight:800}
.tpl-root .tpl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tpl-root .tpl-game{min-width:0}.tpl-root .tpl-game[hidden]{display:none!important}.tpl-root .tpl-game:hover{border-color:color-mix(in srgb,var(--tpl-glow),transparent 30%);transform:translateY(-3px)}.tpl-root .tpl-game .tpl-card-content{min-height:218px}.tpl-root .tpl-game .tpl-description{min-height:45px}
.tpl-root .tpl-empty{border:1px dashed #454b61;border-radius:15px;text-align:center;padding:35px 20px;color:#9ba5ba}.tpl-root .tpl-empty[hidden]{display:none}.tpl-root .tpl-empty>span{font-size:35px}.tpl-root .tpl-empty h3{font-size:21px;color:#fff}.tpl-root .tpl-empty p{margin:8px 0 16px}.tpl-root .tpl-reset{color:#fff;border:0;background:#e84761;padding:9px 17px;border-radius:9px;cursor:pointer}
.tpl-root .tpl-bottom{border-top:1px solid #272c3d;margin:43px 0 0;padding:20px 2px 0;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;color:#8c93a8;font-size:10px}.tpl-root .tpl-bottom strong{font-size:12px;letter-spacing:.12em;color:#fff}
@media (max-width:950px){.tpl-root .tpl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tpl-root .tpl-featured .tpl-card-content{max-width:65%}.tpl-root .tpl-featured .tpl-art{width:49%}.tpl-root .tpl-hero-decoration span{opacity:.4}}
@media (max-width:620px){.tpl-root{margin-top:8px!important}.tpl-root .tpl-shell{padding:13px;border-radius:16px}.tpl-root .tpl-hero{min-height:305px;padding:24px 18px 28px}.tpl-root .tpl-hero .tpl-main-heading{font-size:clamp(50px,14vw,80px);margin-top:33px!important}.tpl-root .tpl-hero-decoration{opacity:.35}.tpl-root .tpl-section-heading{margin-top:29px}.tpl-root .tpl-featured{flex-direction:column}.tpl-root .tpl-featured .tpl-art{position:relative;inset:auto;width:100%;height:170px}.tpl-root .tpl-featured .tpl-art-a{width:145px}.tpl-root .tpl-featured .tpl-art-b{width:100px}.tpl-root .tpl-featured .tpl-art-glyph{font-size:90px}.tpl-root .tpl-featured .tpl-card-content{max-width:100%;width:100%;min-height:260px;padding:20px}.tpl-root .tpl-featured-label{margin-top:16px}.tpl-root .tpl-featured .tpl-card-content h3{font-size:28px}.tpl-root .tpl-grid{grid-template-columns:1fr}.tpl-root .tpl-game{flex-direction:row;min-height:195px}.tpl-root .tpl-game .tpl-art{width:36%;height:auto;min-width:115px;flex-shrink:0}.tpl-root .tpl-game .tpl-art-a{width:95px}.tpl-root .tpl-game .tpl-art-b{width:60px}.tpl-root .tpl-game .tpl-art-glyph{font-size:70px}.tpl-root .tpl-game .tpl-card-content{padding:14px;min-height:190px}.tpl-root .tpl-card-content h3{font-size:17px}.tpl-root .tpl-card-footer{padding-top:12px}.tpl-root .tpl-search{width:100%}.tpl-root .tpl-search input{width:100%}.tpl-root .tpl-bottom{flex-direction:column;align-items:flex-start}}
@media(max-width:390px){.tpl-root .tpl-game .tpl-art{width:30%;min-width:96px}.tpl-root .tpl-game .tpl-card-top{align-items:flex-start}.tpl-root .tpl-game .tpl-state{font-size:9px}.tpl-root .tpl-game .tpl-description{font-size:12px}.tpl-root .tpl-game .tpl-card-footer{align-items:start;flex-direction:column}}
@media (prefers-reduced-motion:reduce){.tpl-root *,.tpl-root *::before,.tpl-root *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.tpl-root .screen-reader-text{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}
