/*
Theme Name: Alternative Twist Radio
Theme URI: https://alternativetwist.com/
Author: OpenAI
Description: Dark, red-accented alternative radio and music magazine theme with editable WordPress content and configurable Icecast/Shoutcast player.
Version: 1.3.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: alternative-twist-radio
Requires at least: 6.0
Requires PHP: 7.4
*/
:root{--atr-red:#ef3038;--atr-red2:#b91620;--atr-bg:#090909;--atr-panel:#151515;--atr-panel2:#1d1d1d;--atr-text:#f4f1ed;--atr-muted:#aaa6a3;--atr-border:#343434;--atr-max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--atr-bg);color:var(--atr-text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:var(--atr-text);text-decoration:none}a:hover{color:var(--atr-red)}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,.button,.wp-block-button__link{background:var(--atr-red);color:white;border:0;padding:.8rem 1.1rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;display:inline-block}button:hover,.button:hover,.wp-block-button__link:hover{background:#ff454d;color:white}.site-wrap{min-height:100vh;overflow:hidden}.container{width:min(calc(100% - 36px),var(--atr-max));margin-inline:auto}.site-header{background:#050505;border-bottom:3px solid var(--atr-red);position:relative;z-index:5}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-mark{width:48px;height:58px;flex:none}.brand-title{font-weight:1000;font-size:clamp(1.25rem,3vw,2.15rem);line-height:.95;letter-spacing:-.07em;text-transform:uppercase;text-shadow:2px 2px 0 #555}.brand-title span{color:var(--atr-red)}.brand-tag{font-size:.68rem;letter-spacing:.25em;color:#bbb;text-transform:uppercase;margin-top:8px}.main-nav ul{list-style:none;display:flex;gap:18px;align-items:center;padding:0;margin:0;flex-wrap:wrap}.main-nav a{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.nav-toggle{display:none}.ticker{background:var(--atr-red);color:white;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;padding:8px 0}.ticker .container{display:flex;gap:10px;align-items:center}.ticker strong{background:#111;padding:2px 7px}.hero{padding:64px 0 46px;background:radial-gradient(ellipse at 85% 20%,#421014 0,transparent 35%),linear-gradient(120deg,#111 0,#070707 65%);border-bottom:1px solid var(--atr-border);position:relative}.hero:after{content:"";position:absolute;inset:0;opacity:.1;pointer-events:none;background-image:repeating-linear-gradient(135deg,transparent 0 8px,#aaa 9px,transparent 10px 20px);mask-image:linear-gradient(90deg,black,transparent 80%)}.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:38px;align-items:center;position:relative;z-index:1}.eyebrow{color:var(--atr-red);font-weight:900;text-transform:uppercase;letter-spacing:.2em;font-size:.78rem}.hero h1{font-size:clamp(2.7rem,7vw,6rem);line-height:.88;letter-spacing:-.07em;text-transform:uppercase;margin:15px 0 22px;font-weight:1000}.hero h1 em{color:var(--atr-red);font-style:normal;display:block}.hero p{max-width:650px;color:#d0cdca;font-size:1.05rem}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.button-outline{background:transparent;border:1px solid #777}.hero-art{min-height:290px;border:1px solid #4a292b;background:linear-gradient(145deg,#261012,#090909 65%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-art:before{content:"";position:absolute;width:240px;height:240px;border:22px solid var(--atr-red);transform:rotate(45deg);opacity:.75}.hero-art:after{content:"TWIST";position:absolute;font-weight:1000;font-size:clamp(3rem,7vw,6.5rem);letter-spacing:-.1em;color:#fff;text-shadow:4px 4px 0 var(--atr-red);transform:rotate(-8deg)}.hero-art span{position:absolute;bottom:20px;right:20px;color:#ddd;font-weight:900;letter-spacing:.3em;font-size:.65rem}.section{padding:52px 0}.section-dark{background:#101010;border-block:1px solid #252525}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.section-heading h2,.page-title{font-size:clamp(1.8rem,4vw,3rem);line-height:1;text-transform:uppercase;letter-spacing:-.05em;margin:0;font-weight:1000}.section-heading h2 span,.page-title span{color:var(--atr-red)}.section-heading p{color:var(--atr-muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.content-card{background:var(--atr-panel);border:1px solid var(--atr-border);min-width:0;transition:transform .18s,border-color .18s}.content-card:hover{transform:translateY(-3px);border-color:var(--atr-red)}.card-image{aspect-ratio:16/9;background:linear-gradient(135deg,#351014,#151515);display:flex;align-items:center;justify-content:center;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-placeholder{font-size:2.6rem;color:var(--atr-red);font-weight:1000;letter-spacing:-.08em}.card-body{padding:19px}.meta{color:var(--atr-red);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.card-body h3{font-size:1.25rem;line-height:1.2;margin:8px 0}.card-body p{color:var(--atr-muted);margin:0 0 12px}.read-more{color:var(--atr-red);font-weight:900;font-size:.8rem;text-transform:uppercase}.radio-panel{background:linear-gradient(120deg,#1c1c1c,#111);border:1px solid #3d3d3d;border-left:5px solid var(--atr-red);padding:26px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.radio-panel h2{margin:0;font-size:clamp(1.6rem,4vw,2.5rem);line-height:1;text-transform:uppercase}.radio-panel p{margin:8px 0 0;color:var(--atr-muted)}.radio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.radio-play{width:60px;height:60px;border-radius:50%;padding:0;font-size:1.3rem}.radio-state{font-size:.75rem;text-transform:uppercase;color:#aaa;letter-spacing:.1em}.radio-state:before{content:"";display:inline-block;width:8px;height:8px;background:#777;border-radius:50%;margin-right:8px}.radio-state.is-playing:before{background:#49d17d;box-shadow:0 0 10px #49d17d}.volume-control{width:95px;accent-color:var(--atr-red)}.stream-note{font-size:.75rem;color:#999;margin-top:12px}.site-footer{background:#050505;border-top:3px solid var(--atr-red);padding:40px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.site-footer h3{font-size:1rem;text-transform:uppercase;margin:0 0 12px}.site-footer p,.site-footer li{color:var(--atr-muted);font-size:.9rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:5px 0}.copyright{border-top:1px solid #282828;margin-top:30px;padding-top:16px;color:#777;font-size:.75rem;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.page-main{padding:48px 0 70px}.page-title{margin-bottom:22px}.content-area{max-width:850px}.content-area>*{max-width:100%}.content-area p,.content-area li{color:#ddd}.content-area h2,.content-area h3{line-height:1.2;text-transform:uppercase}.content-area a{color:#ff555b;text-decoration:underline}.content-area blockquote{border-left:4px solid var(--atr-red);padding-left:20px;color:#bbb}.content-area input,.content-area textarea,.content-area select{background:#171717;border:1px solid #444;color:white;padding:10px}.pagination{margin-top:28px}.pagination a,.pagination span{display:inline-block;padding:8px 12px;background:#1b1b1b;margin-right:5px}.pagination .current{background:var(--atr-red)}.search-form{display:flex;gap:8px}.search-form input{min-width:0;background:#111;border:1px solid #444;color:white;padding:10px}.widget-area{padding:20px;background:#111}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.alignwide{max-width:var(--atr-max)}.wp-block-image img{height:auto}.wp-block-gallery{display:flex;flex-wrap:wrap;gap:12px}.wp-block-gallery figure{margin:0}.wp-block-separator{border-color:#444}.wp-block-quote{border-left:4px solid var(--atr-red);padding-left:18px}.wp-block-cover{min-height:280px}.post-thumbnail img{width:100%}.comment-list{padding-left:20px}.comment-form input,.comment-form textarea{background:#161616;color:white;border:1px solid #444;padding:10px;max-width:100%}
@media(max-width:900px){.header-inner{flex-wrap:wrap}.nav-toggle{display:inline-block;margin-left:auto}.main-nav{display:none;width:100%}.main-nav.is-open{display:block}.main-nav ul{display:flex;flex-direction:column;align-items:flex-start;padding:12px 0}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:220px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-panel{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.container{width:min(calc(100% - 26px),var(--atr-max))}.header-inner{padding:14px 0}.brand-mark{width:38px;height:47px}.brand-tag{font-size:.55rem}.hero{padding:42px 0 32px}.hero h1{font-size:clamp(2.7rem,15vw,4.3rem)}.section{padding:38px 0}.cards{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.radio-panel{padding:20px}.radio-controls{gap:8px}.footer-grid{grid-template-columns:1fr}.copyright{display:block}.copyright span{display:block;margin-top:5px}}

/* v1.2.0: artwork fallbacks and compact mobile navigation */
.card-art-fallback{width:100%;height:100%;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 15%,rgba(239,48,56,.22),transparent 42%),repeating-linear-gradient(135deg,#191919 0,#191919 10px,#202020 11px,#202020 12px);border-bottom:2px solid var(--atr-red)}
.card-art-fallback:before{content:"";position:absolute;width:70%;height:70%;border:10px solid rgba(239,48,56,.35);transform:rotate(45deg)}
.card-art-mark,.card-art-label{position:relative;z-index:1;text-align:center;text-transform:uppercase;font-weight:1000;letter-spacing:.05em}
.card-art-mark{font-size:clamp(1.7rem,4vw,2.8rem);color:#f4f1ed;text-shadow:3px 3px 0 var(--atr-red);letter-spacing:-.08em}
.card-art-label{font-size:.68rem;max-width:85%;color:#ff555b;letter-spacing:.16em}
@media(max-width:900px){.header-inner{gap:10px}.brand{max-width:calc(100% - 100px)}.brand-title{font-size:clamp(1.05rem,4.2vw,1.6rem)}.brand-tag{letter-spacing:.12em}.nav-toggle{padding:.65rem .75rem;font-size:.75rem;white-space:nowrap}.main-nav.is-open{padding-top:8px}.main-nav ul{gap:0;width:100%;border-top:1px solid #333}.main-nav li{width:100%;border-bottom:1px solid #222}.main-nav a{display:block;width:100%;padding:10px 4px;font-size:.9rem}.main-nav a:hover,.main-nav .current-menu-item>a{color:#fff;background:#191919;border-left:3px solid var(--atr-red);padding-left:10px}}
@media(max-width:420px){.brand-mark{width:31px;height:40px}.brand{gap:8px}.brand-title{font-size:1rem}.brand-tag{font-size:.48rem}.nav-toggle{font-size:.68rem;padding:.55rem .6rem}.ticker{font-size:.62rem;letter-spacing:.04em}}


/* v1.3.0: mobile readability and editorial page polish */
:where(.page-main,.site-footer,.section) { overflow-wrap:anywhere; }
.page-main .content-area { width:100%; max-width:850px; margin-inline:auto; }
.page-main article > .page-title { max-width:100%; }
.page-main .post-thumbnail { margin:1rem 0 1.5rem; overflow:hidden; border:1px solid var(--atr-border); }
.page-main .post-thumbnail img { display:block; width:100%; height:auto; }
.content-area h2 { margin-top:2rem; margin-bottom:.75rem; font-size:clamp(1.35rem,3.5vw,2rem); }
.content-area h3 { margin-top:1.5rem; font-size:clamp(1.1rem,3vw,1.45rem); }
.content-area p { margin-block:.8rem; }
.content-area iframe, .content-area video, .content-area embed, .content-area object { max-width:100%; }
.content-area iframe { width:100%; }
.content-area table { display:block; width:100%; overflow-x:auto; border-collapse:collapse; }
.content-area td, .content-area th { border:1px solid var(--atr-border); padding:.6rem; }
.content-area input, .content-area textarea, .content-area select, .content-area button { max-width:100%; }
.content-area form { max-width:100%; }
.content-area .wp-block-columns { gap:1.25rem; }
.content-area .wp-block-embed__wrapper { position:relative; max-width:100%; }
.content-area .wp-block-embed iframe { max-width:100%; }
.single .page-main .content-area, .page .page-main .content-area { margin-inline:auto; }
.nav-toggle:focus-visible, .main-nav a:focus-visible, a:focus-visible, button:focus-visible { outline:3px solid #fff; outline-offset:3px; }
@media (max-width: 900px) {
  .site-header { position:relative; }
  .header-inner { align-items:center; }
  .brand { flex:1 1 auto; min-width:0; }
  .brand-title { overflow-wrap:normal; }
  .main-nav { flex-basis:100%; }
  .main-nav ul { padding:8px 0 4px; }
  .main-nav a { min-height:44px; display:flex; align-items:center; }
  .main-nav .sub-menu { padding-left:16px; border-top:0; }
  .main-nav .sub-menu li:last-child { border-bottom:0; }
}
@media (max-width: 600px) {
  .page-main { padding:32px 0 48px; }
  .page-title { line-height:1.04; font-size:clamp(1.75rem,8vw,2.5rem); }
  .cards { gap:14px; }
  .card-body { padding:15px; }
  .card-body h3 { font-size:1.12rem; }
  .card-body p { font-size:.94rem; }
  .radio-panel { grid-template-columns:minmax(0,1fr); gap:16px; }
  .radio-controls { align-items:center; }
  .radio-state { overflow-wrap:anywhere; }
  .search-form { flex-wrap:wrap; }
  .search-form input { flex:1 1 160px; width:100%; }
  .search-form button { flex:0 0 auto; }
  .content-area .wp-block-columns { display:block; }
  .content-area .wp-block-column { margin-bottom:1.25rem; }
  .content-area .wp-block-buttons { gap:10px; }
  .content-area .wp-block-button { max-width:100%; }
  .content-area .wp-block-button__link { white-space:normal; }
  .footer-grid { gap:22px; }
}
@media (max-width: 360px) {
  .container { width:calc(100% - 20px); }
  .brand-mark { width:27px; height:36px; }
  .brand-title { font-size:.9rem; }
  .brand-tag { letter-spacing:.06em; }
  .nav-toggle { padding:.5rem; font-size:.65rem; }
  .ticker .container { align-items:flex-start; }
}
