/* Additional consoles only. The original css/styles.css remains byte-for-byte intact. */
#portfolio .rw-new-console .portfolio-img-static {opacity:1;}
#portfolio .rw-new-console .portfolio-img-hover {opacity:0;pointer-events:none;}
#portfolio .rw-new-console:hover .portfolio-img-hover.rw-gif-ready,
#portfolio .rw-new-console .portfolio-link:focus-visible .portfolio-img-hover.rw-gif-ready {opacity:1;}
#portfolio .rw-new-console .portfolio-hover {pointer-events:none;}
#portfolio .rw-new-console .portfolio-link:focus-visible {outline:3px solid #fed136;outline-offset:-3px;}
#portfolio .rw-new-console .portfolio-link:focus-visible .portfolio-hover {opacity:1;}
/* Use the exact same 220px image slot and yellow overlay as the original six cards. */
.rw-popup-art {width:min(100%,480px);aspect-ratio:4/3;position:relative;margin:0 auto 2rem;overflow:hidden;border-radius:.5rem;box-shadow:0 12px 32px rgba(254,209,54,.25);background:#fff;}
.portfolio-modal .modal-content .rw-popup-art img {width:100%;height:100%;max-height:none;max-width:none;object-fit:contain;margin:0;box-shadow:none;}
.rw-popup-art .rw-popup-gif {position:absolute;inset:0;opacity:0;}
.rw-new-modal.show .rw-popup-gif.rw-gif-ready {opacity:1;}
.rw-close {border:0;padding:0;}
.rw-close:focus-visible {outline:3px solid #fed136;outline-offset:4px;}
.rw-console-actions {display:flex;justify-content:center;gap:12px;flex-wrap:wrap;}
.rw-backend-note {font-size:.875rem;color:#646a70;margin:0 0 1.5rem;}
/* Touch does not need a hover step. A single tap opens the untinted animated popup. */
@media(hover:none) {
 #portfolio .rw-new-console:hover .portfolio-img-hover.rw-gif-ready {opacity:0;}
 #portfolio .rw-new-console:hover .portfolio-hover {opacity:0;}
}
@media(prefers-reduced-motion:reduce) {
 #portfolio .rw-new-console .portfolio-img-hover {display:none;}
 #portfolio .rw-new-console {transition:none;}
 /* An intentional click still opens the animation. */
}
@media(max-width:575px) {
 .rw-new-modal .modal-content {padding:76px 0 36px;}
 .rw-new-modal .modal-content h2 {font-size:1.85rem;}
 .rw-new-modal .modal-body {padding:1rem .5rem;}
 .rw-new-modal .btn-xl {font-size:.86rem;padding:.85rem 1.1rem;}
 #portfolio .rw-new-console .portfolio-caption-subheading {min-height:0;}
}
/* New library pages keep the original charcoal/yellow grid design. */
.rw-library-preview #library-section {padding-top:4rem;}
.rw-library-preview #library-header {padding-bottom:1.5rem;}
.rw-library-preview #library-header .section-subheading {margin-bottom:1.5rem;}
.rw-catalog-status {padding:.85rem 1rem;background:#242820;border:1px solid #665c30;border-radius:.4rem;color:#c8c9bd;max-width:760px;margin:0 auto 1.5rem;font-size:.875rem;}
.rw-catalog-nav {display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem;}
.rw-catalog-nav a {border:1px solid #50545b;padding:.5rem 1rem;border-radius:.35rem;color:#d1d4d8;font-family:'Montserrat',sans-serif;font-size:.85rem;}
.rw-catalog-nav a[aria-current=page] {border-color:#fed136;color:#fed136;}
.rw-catalog-controls {display:flex;gap:1rem;align-items:end;text-align:left;margin-bottom:.75rem;}
.rw-search-label {flex:1;}.rw-genre-label {width:210px;}
.rw-catalog-controls label {font-family:'Montserrat',sans-serif;font-size:.85rem;font-weight:700;}
.rw-catalog-controls input,.rw-catalog-controls select {display:block;margin-top:.45rem;width:100%;height:46px;padding:0 .75rem;border:1px solid #50545b;border-radius:.35rem;background:#25282d;color:#f2f3f4;font:16px 'Montserrat',sans-serif;color-scheme:dark;}
.rw-catalog-controls input:focus,.rw-catalog-controls select:focus {outline:2px solid #fed136;outline-offset:2px;}
.rw-catalog-controls input::placeholder {color:#aeb2b8;font-size:.875rem;}
.rw-boxing {height:46px;background:#fed136;color:#212529;border:1px solid #fed136;padding:0 1.1rem;border-radius:.35rem;font:700 .85rem 'Montserrat',sans-serif;}
.rw-boxing:focus-visible {outline:2px solid #fff;outline-offset:2px;}
.rw-boxing[aria-pressed=true] {background:#242820;color:#fed136;}
.rw-results {color:#adb5bd;font-size:.8rem;text-align:left;margin-bottom:.75rem;}
.rw-library-preview .game-tile-cover {object-fit:contain;background:#15171b;}
.rw-library-preview .game-tile:hover .game-tile-cover {opacity:1;}
.rw-library-preview .game-tile-badge {background:rgba(19,21,24,.9);color:#e2e4e8;border:1px solid #555b63;}
.rw-cover-placeholder {position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;text-align:center;padding:1rem;background:linear-gradient(135deg,#272d32,#15181c);color:#fed136;font-family:'Montserrat',sans-serif;}
.rw-cover-placeholder strong {font-size:1rem;}
.rw-cover-placeholder span {font-size:.68rem;color:#a4aab2;letter-spacing:.12em;text-transform:uppercase;}
.rw-cover-placeholder[hidden] {display:none;}
.rw-library-preview #gameDetailModal .game-modal-cover {width:100%;height:auto;max-height:350px;object-fit:contain;background:#14161a;}
.rw-library-preview #gameDetailModal .game-modal-cover.cover-fallback {padding:40px;max-height:200px;}
.rw-library-preview #gameDetailModal .game-modal-trailer {aspect-ratio:auto;position:static;background:transparent;}
.rw-library-preview #gameDetailModal .game-modal-trailer:before {content:none;}
.rw-library-preview #gameDetailModal .game-trailer-link {position:static;min-height:46px;display:flex;align-items:center;border:1px solid #4e555e;border-radius:.35rem;padding:.75rem 1rem;background:#24282e;color:#fed136;font-size:.9rem;}
.rw-library-preview #gameDetailModal .game-modal-play:disabled {cursor:not-allowed;background:#343a40;color:#bbc0c7;border:1px solid #59616b;opacity:1;}
.rw-library-preview #gameDetailModal .game-modal-rom-hint {font-size:.9rem;}
.rw-no-results {text-align:center;padding:3rem 1rem;border:1px dashed #555b64;border-radius:.4rem;}
@media(max-width:767px) {
 .rw-library-preview #library-section {padding-top:2.5rem;}
 .rw-library-preview #library-header .section-heading {font-size:1.8rem;}
 .rw-catalog-controls {flex-wrap:wrap;gap:.75rem;}
 .rw-search-label {flex-basis:100%;}.rw-genre-label {flex:1;width:auto;}
 .rw-library-preview #gameDetailModal .game-modal-title {font-size:1.3rem;}
 .rw-library-preview #gameDetailModal .modal-header,.rw-library-preview #gameDetailModal .modal-footer {padding:1rem;}
 .rw-library-preview #gameDetailModal .modal-footer {gap:.5rem;}
}
