/* Playno client readability and form controls. Shared across detail, magazine, profile and arcade. */
:root{--playno-reading-leading:2.08}
.community-page,.community-article,.community-panel,.arcade-card{line-height:var(--playno-reading-leading)}
.community-card p,.community-panel p,.community-comment p,.community-form label,.community-article p,.community-article li{line-height:var(--playno-reading-leading)}
.community-article .community-article-text p{line-height:2.3;margin:0 0 1.4em}
.community-article .community-article-text h2{margin-top:1.65em;margin-bottom:.8em}
.community-btn,.arcade-play,.playno-btn,.community-form button,.playno-auth-dialog button,.playno-auth-dialog a{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:7px}
.community-form{gap:20px}
.community-form textarea{min-height:105px;line-height:2;resize:vertical}
.community-card h2,.community-panel h2{line-height:1.7}
.playno-auth-dialog{border:1px solid #71503c;border-radius:20px;background:#181512;color:#fff;padding:0;max-width:min(92vw,510px);box-shadow:0 30px 80px #000b}
.playno-auth-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.playno-auth-dialog-inner{padding:34px;text-align:center}
.playno-auth-dialog-inner h2{line-height:1.8;font-size:1.65rem;color:#fff;margin:0 0 12px}
.playno-auth-dialog-inner p{line-height:2;color:#e1d5cf;margin:0 0 24px}
.playno-auth-dialog-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.playno-auth-dialog-actions .community-btn{text-decoration:none;min-width:132px}
[data-game-detail] .running-tournament-thumb{height:auto;min-height:0;overflow:hidden;align-self:stretch;background:#211b17}
[data-game-detail] .running-tournament-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;max-width:100%;min-height:0;max-height:none}
[data-game-detail] .running-tournament{position:relative!important;top:auto!important;left:auto!important;transform:none!important;min-height:390px;align-items:stretch;overflow:hidden}
[data-game-detail] .parallax-banner-area{height:auto!important;min-height:390px;display:flex;flex-direction:column;justify-content:center}
[data-game-detail] .parallax-banner-area>.parallax-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}
[data-game-detail] .running-tour-info{display:flex;flex-direction:column;justify-content:center;gap:10px;z-index:1}
[data-game-detail] .running-tour-info h3{line-height:1.45}
[data-game-detail] .playno-meta-grid{row-gap:18px}
@media(min-width:992px){[data-game-detail] .running-tournament-thumb{flex:0 0 46%;max-width:46%}}
@media(max-width:991px){[data-game-detail] .running-tournament{min-height:0}[data-game-detail] .running-tournament-thumb{max-height:330px}[data-game-detail] .running-tournament-thumb img{max-height:330px}[data-game-detail] .running-tour-info{padding:24px!important}}

/* Keep large magazine/profile titles readable at desktop and phone breakpoints. */
.community-page .display-four{font-size:clamp(2.2rem,4.25vw,4rem)!important;line-height:1.42!important;letter-spacing:-.02em;margin:0 0 12px}
.community-page> .container > p,.community-heading p{line-height:2.08;margin-bottom:24px}
.community-panel,.community-card,.community-article{overflow-wrap:anywhere}
.community-form input,.community-form select,.community-form textarea{line-height:1.9;min-height:48px}
.community-btn,.arcade-play,.playno-btn{line-height:1.5;white-space:normal}
.playno-related-card .playno-related-image{flex-shrink:0}
/* Playno 2026 brand & motion refresh. The supplied brand artwork includes its wordmark. */
.header-section .navbar-brand{gap:0!important;display:inline-flex;flex:0 0 auto;align-items:center;text-decoration:none}
.header-section .navbar-brand .playno-full-brand{display:block!important;width:112px!important;height:112px!important;max-width:none!important;object-fit:contain;filter:drop-shadow(0 6px 18px rgba(10,12,22,.25))}
.footer .playno-footer-full-brand{display:block;width:190px;max-width:100%;height:auto;object-fit:contain}
.footer-logo a{width:fit-content}
@media(max-width:991px){.header-section .navbar-brand .playno-full-brand{width:86px!important;height:86px!important}}
@media(max-width:575px){.header-section .navbar-brand .playno-full-brand{width:70px!important;height:70px!important}.footer .playno-footer-full-brand{width:150px}}
/* Gamepad-inspired loader replaces the legacy radar circle; no new external assets. */
.preloader{background:radial-gradient(circle at 50% 45%,#18243c 0,#0b1020 46%,#070a13 100%);z-index:99999}
.preloader .loader{position:relative;width:90px;height:90px;border:0;background:transparent;box-shadow:none;overflow:visible;display:grid;place-items:center;isolation:isolate;animation:playno-loader-breathe 1.4s ease-in-out infinite}
.preloader .loader::before{content:"";position:absolute;inset:0;border:0;box-shadow:0 0 28px #207cff38;border-radius:50%;background:conic-gradient(#267af6 0 24%,#ffbf24 25% 49%,#fa473b 50% 74%,#1fc65d 75% 99%);mask:radial-gradient(farthest-side,transparent calc(100% - 9px),#000 calc(100% - 8px));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 9px),#000 calc(100% - 8px));animation:playno-loader-spin 1.1s linear infinite}
.preloader .loader::after{content:"🎮";position:relative;inset:auto;width:auto;height:auto;background:none;border:0;box-shadow:none;font-size:36px;line-height:1;filter:drop-shadow(0 3px 8px #0009)}
.preloader .loader span,.preloader .loader span::before{display:none!important;animation:none!important}
@keyframes playno-loader-spin{to{transform:rotate(360deg)}}
@keyframes playno-loader-breathe{50%{transform:scale(1.07)}}
@media(prefers-reduced-motion:reduce){.preloader .loader,.preloader .loader::before{animation:none!important}}
/* Show only published games; mobile experience prioritizes touch and clear controls. */
.ps1-self-import[hidden],.ps1-panel[hidden],.ps1-stage[hidden]{display:none!important}
@media(max-width:600px){.arcade-page .arcade-heading{flex-wrap:wrap;gap:18px}.arcade-page .arcade-actions{display:flex;flex-wrap:wrap;gap:10px}}
.header-section .navbar-brand .playno-full-brand,.footer .playno-footer-full-brand{background:linear-gradient(150deg,#f7faff,#eaf1ff);border-radius:20px;padding:3px}
