/*
Theme Name: BBSDAZE ANSI Network
Theme URI: https://example.com/bbsdaze
Author: BBSDAZE
Description: A responsive old-school BBS/ANSI WordPress theme for communities, door games, rankings, downloads, and retro computing sites.
Version: 1.2.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: bbsdaze-ansi
*/
:root{--bg:#020704;--panel:#04100b;--green:#18ff42;--cyan:#13d9ff;--magenta:#ff26d7;--yellow:#ffd23f;--white:#d9f4f7;--muted:#83a4ab;--line:#0d6934;--danger:#ff4d5e;--max:1420px}
*{box-sizing:border-box}html{background:#000}body{margin:0;background:radial-gradient(circle at 50% 15%,#07130c 0,#010402 55%,#000 100%);color:var(--white);font-family:"Courier New",Courier,monospace;font-size:16px;line-height:1.45;text-shadow:0 0 5px rgba(20,255,70,.18)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 2px,transparent 4px);mix-blend-mode:screen}
a{color:var(--cyan);text-decoration:none}a:hover,a:focus{color:var(--green);text-shadow:0 0 8px currentColor}img{max-width:100%;height:auto}.screen{max-width:var(--max);margin:0 auto;padding:12px 18px 28px}.terminal-frame{border:2px solid var(--line);border-radius:18px;padding:18px;box-shadow:inset 0 0 35px rgba(0,255,80,.07),0 0 22px rgba(0,255,80,.09);background:rgba(0,4,2,.86)}
.status-top,.status-bottom{display:flex;justify-content:space-between;gap:16px;color:var(--green);font-size:.88rem}.site-header{border:2px solid var(--green);padding:12px 18px;margin:8px 0 12px;position:relative;text-align:center}.site-title{font-size:clamp(3rem,9vw,7.4rem);font-weight:900;line-height:.85;letter-spacing:.02em;color:var(--green);text-shadow:0 0 10px rgba(24,255,66,.45);margin:8px 0}.site-tagline{color:var(--magenta);font-size:clamp(1rem,2vw,1.45rem);letter-spacing:.08em}.castle{position:absolute;top:18px;color:var(--cyan);white-space:pre;font-size:.75rem;line-height:.85}.castle.left{left:18px}.castle.right{right:18px;transform:scaleX(-1)}
.main-nav{border:2px solid var(--cyan);margin-bottom:14px}.main-nav ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;margin:0;padding:0}.main-nav a{display:block;padding:12px 18px;text-transform:uppercase;letter-spacing:.06em}.main-nav a:before{content:"[ "}.main-nav a:after{content:" ]"}.menu-toggle{display:none;width:100%;background:#000;color:var(--green);border:0;padding:12px;font:inherit}
.grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px}.main-column,.sidebar{min-width:0}.panel{border:2px solid var(--cyan);padding:16px;margin-bottom:14px;background:rgba(0,10,8,.28);position:relative}.panel.green{border-color:var(--green)}.panel.magenta{border-color:var(--magenta)}.panel.yellow{border-color:var(--yellow)}.panel-title{margin:-29px auto 14px;background:var(--bg);width:max-content;max-width:90%;padding:0 12px;color:var(--cyan);text-transform:uppercase;letter-spacing:.09em;font-size:1.1rem}.green .panel-title{color:var(--green)}.magenta .panel-title{color:var(--magenta)}.yellow .panel-title{color:var(--yellow)}
.hero{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}.hero h1{color:var(--green);margin:0 0 12px;font-size:1.35rem;text-align:center}.hero p{margin:.55rem 0}.prompt{color:var(--green)}.ansi-computer{color:var(--cyan);white-space:pre;font-size:.8rem;line-height:.95}
.games-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.game-card{border:1px solid var(--muted);padding:15px;text-align:center;display:flex;flex-direction:column;min-height:260px}.game-card:nth-child(1){border-color:var(--green)}.game-card:nth-child(2){border-color:var(--magenta)}.game-card:nth-child(3){border-color:var(--cyan)}.game-card h3{margin:0;color:var(--green);letter-spacing:.08em}.game-card:nth-child(2) h3{color:var(--magenta)}.game-card:nth-child(3) h3{color:var(--cyan)}.ansi-icon{font-size:2.6rem;margin:16px 0;text-shadow:0 0 8px currentColor}.game-card p{flex:1;color:var(--white)}.bbs-button,.wp-block-button__link,button,input[type=submit]{display:inline-block;background:#001007;border:1px solid var(--green);color:var(--green);padding:8px 13px;font:inherit;border-radius:0;cursor:pointer}.bbs-button:before{content:"[ "}.bbs-button:after{content:" ]"}.bbs-button:hover,button:hover,input[type=submit]:hover{background:var(--green);color:#001007;text-shadow:none}
.news-event-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.news-list,.event-list,.rank-list,.messages-list{list-style:none;margin:0;padding:0}.news-list li,.messages-list li{margin:.45rem 0}.news-list li:before{content:"> ";color:var(--cyan)}.date{color:var(--muted);margin-right:9px}.post-title{color:var(--green)}
.login-form label{display:block;color:var(--white);margin:.35rem 0}.login-form input[type=text],.login-form input[type=password],input[type=email],input[type=search],input[type=text],input[type=password],textarea,select{width:100%;background:#000;border:1px solid var(--muted);color:var(--white);font:inherit;padding:8px}.sidebar .panel{padding:16px}.online-stat,.system-stat{display:flex;justify-content:space-between;gap:12px}.online-stat strong,.system-stat strong{color:var(--yellow)}.rank-list li{display:grid;grid-template-columns:25px 1fr auto;gap:6px;color:var(--yellow);padding:2px 0}.rank-list li:nth-child(1){color:var(--green)}
.ansi-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.ansi-tile{border:1px solid var(--cyan);min-height:94px;padding:8px;display:flex;align-items:center;justify-content:center;text-align:center;background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(0,255,255,.03) 5px)}.ansi-tile a{font-size:1.1rem}.site-footer{border-top:2px solid var(--green);margin-top:16px;padding-top:12px}.footer-menu ul{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;list-style:none;margin:0;padding:0}.footer-menu a:before{content:"[ "}.footer-menu a:after{content:" ]"}.copyright{text-align:center;color:var(--muted);margin-top:10px}
.entry-title{color:var(--green);text-transform:uppercase}.entry-content table{width:100%;border-collapse:collapse}.entry-content th,.entry-content td{border:1px solid var(--cyan);padding:8px}.entry-content th{color:var(--yellow)}.post-card{border-bottom:1px dashed var(--line);padding:0 0 18px;margin:0 0 18px}.pagination{display:flex;gap:8px;flex-wrap:wrap}.widget-title{color:var(--magenta);text-align:center;text-transform:uppercase}.screen-reader-text{position:absolute;left:-9999px}.alignwide{max-width:1200px}.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
@media(max-width:980px){.grid{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.sidebar .panel{margin:0}.games-grid{grid-template-columns:1fr}.news-event-grid{grid-template-columns:1fr}.ansi-gallery{grid-template-columns:repeat(2,1fr)}.castle{display:none}}
@media(max-width:640px){body{font-size:14px}.screen{padding:0}.terminal-frame{border-radius:0;padding:10px}.status-top,.status-bottom{font-size:.72rem;flex-wrap:wrap}.menu-toggle{display:block}.main-nav ul{display:none;flex-direction:column}.main-nav.open ul{display:flex}.main-nav a{text-align:center;padding:9px}.hero{grid-template-columns:1fr}.ansi-computer{display:none}.sidebar{grid-template-columns:1fr}.ansi-gallery{grid-template-columns:1fr}.site-title{font-size:3.1rem}.site-header{padding:10px 4px}}

/* v1.1.0 ANSI artwork */
.game-card{min-height:0;overflow:hidden}.game-art-link{display:block;margin:-6px -6px 13px}.game-art{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid currentColor;filter:saturate(1.08) contrast(1.04);transition:filter .18s ease,transform .18s ease}.game-art-link:hover .game-art,.game-art-link:focus .game-art{filter:saturate(1.25) brightness(1.1);transform:scale(1.01)}.game-card h3{margin:.15rem 0 .45rem}.ansi-gallery.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}.image-tile{display:block;padding:6px;margin:0;min-height:0}.image-tile img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.image-tile figcaption{padding:7px 4px 2px;color:var(--cyan);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.site-title a{color:inherit}.custom-logo{max-height:145px;width:auto}
@media(max-width:980px){.ansi-gallery.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ansi-gallery.four-up{grid-template-columns:1fr}}


/* v1.2.0 landing-page ANSI logo */
.site-header.landing-ansi-header{padding:0;border-color:var(--cyan);background:#000;overflow:hidden}
.landing-ansi-logo-link{display:block;line-height:0;background:#000}
.landing-ansi-logo{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:#000}
@media(max-width:640px){.site-header.landing-ansi-header{margin-left:-2px;margin-right:-2px}.landing-ansi-logo{width:100%;height:auto}}

/* v1.2.1: Dragon Legend terminal background hardening */
body.bbsdaze-dragon-page,
body.bbsdaze-dragon-page .screen,
body.bbsdaze-dragon-page .terminal-frame,
body.bbsdaze-dragon-page main,
body.bbsdaze-dragon-page article,
body.bbsdaze-dragon-page .entry-content,
body.bbsdaze-dragon-page .wp-site-blocks,
body.bbsdaze-dragon-page [class*="bbsdl"],
body.bbsdaze-dragon-page [id*="bbsdl"],
body.bbsdaze-dragon-page [class*="dragon"],
body.bbsdaze-dragon-page [id*="dragon"]{
  background:#000 !important;
  background-color:#000 !important;
}
body.bbsdaze-dragon-page iframe{
  background:#000 !important;
  background-color:#000 !important;
  color-scheme:dark;
}
