/*
 Theme Name:   Parlayr AU
 Theme URI:    https://parlayr.com.au
 Description:  GeneratePress child theme for Parlayr Australia - daily parlays and SGPs for the culture.
 Author:       Parlayr
 Author URI:   https://parlayr.com.au
 Template:     generatepress
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  parlayr
*/

/* ═══ CSS VARIABLES ═══ */
:root {
    --neon:#BFFF00;--neon-rgb:191,255,0;--neon-dim:rgba(191,255,0,0.08);--neon-glow:rgba(191,255,0,0.15);--neon-teal:#00FF88;
    --bg:#0A0A0A;--surface:#111111;--surface-2:#181818;--border:#1E1E1E;--border-hover:#333333;
    --text:#FFFFFF;--text-dim:#777777;--text-mid:#AAAAAA;
    --green:#22C55E;--red:#EF4444;--amber:#F59E0B;--blue:#3B82F6;--purple:#A855F7;--orange:#FF6B35;
    --gradient-neon:linear-gradient(135deg,var(--neon),var(--neon-teal));
    --font-display:'Archivo Black',Impact,sans-serif;--font-body:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;
    --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:100px;
}

/* ═══ BASE ═══ */
body{background-color:var(--bg)!important;color:var(--text)!important;font-family:var(--font-body)!important;-webkit-font-smoothing:antialiased;}
body::after{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;}
a{color:var(--neon);text-decoration:none;transition:all 0.25s;}a:hover{color:var(--neon-teal);}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-1px;color:var(--text);}

/* ═══ GENERATEPRESS LAYOUT OVERRIDES ═══ */
/* Force full-width, single-column vertical stacking */
.site-content{display:block!important;}
.inside-article{padding:0!important;}
.entry-content{max-width:100%!important;margin:0!important;padding:0!important;}
.site-main{margin:0!important;width:100%!important;max-width:100%!important;}
.content-area{width:100%!important;max-width:100%!important;float:none!important;flex:none!important;}
.site-content .content-area{width:100%!important;}
#primary{width:100%!important;max-width:100%!important;}

/* Kill GP's grid/flex on the main content wrapper */
.site-content,
.site-content > *,
#content,
#content > * {
    display:block!important;
    flex-direction:unset!important;
}

/* Remove GP's default container width on our pages */
.page-template-front-page .inside-article,
.single-parlayr_pick .inside-article,
.tax-parlayr_sport .inside-article,
.post-type-archive-parlayr_pick .inside-article {
    max-width:100%!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
}

/* Remove GP default sidebar */
.right-sidebar .site-main,
.left-sidebar .site-main {
    width:100%!important;
    float:none!important;
}
#right-sidebar,#left-sidebar{display:none!important;}

/* Remove GP default article styling that interferes */
article.page,
article.parlayr_pick {
    padding:0!important;
    margin:0!important;
    max-width:100%!important;
}

/* Remove GP page header if present */
.page-header{display:none;}

/* Ensure GP container doesn't constrain us */
.grid-container,
.inside-page-header {
    max-width:100%!important;
    padding:0!important;
}

/* ═══ GP OVERRIDES ═══ */
.site-header{background:rgba(10,10,10,0.75)!important;backdrop-filter:blur(24px);border-bottom:1px solid var(--border);}
.main-navigation a,.main-navigation .menu>li>a{color:var(--text-dim)!important;font-size:0.85rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;}
.main-navigation a:hover,.main-navigation .current-menu-item>a{color:var(--neon)!important;}
.site-footer{background:var(--bg)!important;border-top:1px solid var(--border);color:var(--text-dim);}
.site-footer a{color:var(--text-dim);}.site-footer a:hover{color:var(--neon);}
.entry-content,.site-content{color:var(--text-mid);}

/* ═══ LAYOUT ═══ */
.parlayr-container{max-width:1300px;margin:0 auto;padding:0 48px;}
@media(max-width:768px){.parlayr-container{padding:0 20px;}}
.parlayr-section{padding:100px 0;}.parlayr-section+.parlayr-section{border-top:1px solid var(--border);}
.section-label{font-size:0.72rem;text-transform:uppercase;letter-spacing:3px;color:var(--neon);font-weight:700;margin-bottom:12px;font-family:var(--font-body);}
.section-title{font-size:clamp(2rem,4vw,3rem);letter-spacing:-2px;line-height:1;margin-bottom:16px;}
.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;flex-wrap:wrap;gap:20px;}
.text-neon{background:var(--gradient-neon);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}

/* ═══ HERO ═══ */
.parlayr-hero{min-height:90vh;display:flex;flex-direction:column;justify-content:center;padding:120px 0 60px;position:relative;}
.parlayr-hero::before{content:'';position:absolute;top:-100px;right:-200px;width:900px;height:900px;background:radial-gradient(circle,rgba(var(--neon-rgb),0.06) 0%,transparent 55%);pointer-events:none;}
.hero-top-row{display:flex;align-items:center;gap:16px;margin-bottom:32px;}
.live-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:rgba(34,197,94,0.1);border:1px solid rgba(34,197,94,0.25);border-radius:var(--radius-full);font-size:0.78rem;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:1px;}
.live-badge::before{content:'';width:7px;height:7px;background:var(--green);border-radius:50%;animation:livePulse 1.5s infinite;}
.parlayr-hero h1{font-size:clamp(3.5rem,9vw,8rem);line-height:0.9;letter-spacing:-4px;margin-bottom:28px;}
.hero-subtitle{font-size:clamp(1rem,1.8vw,1.25rem);color:var(--text-mid);max-width:520px;line-height:1.7;margin-bottom:40px;}
.hero-subtitle strong{color:var(--text);}
.hero-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}

/* ═══ BUTTONS ═══ */
.btn-primary{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;background:var(--neon);color:var(--bg);font-family:var(--font-display);font-size:0.9rem;text-transform:uppercase;letter-spacing:0.5px;border-radius:var(--radius-full);border:none;cursor:pointer;transition:all 0.3s;text-decoration:none;}
.btn-primary:hover{transform:scale(1.04);box-shadow:0 0 50px rgba(var(--neon-rgb),0.25);color:var(--bg);}
.btn-ghost{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:transparent;border:1px solid var(--border);color:var(--text);font-size:0.88rem;font-weight:600;border-radius:var(--radius-full);cursor:pointer;text-decoration:none;transition:all 0.25s;}
.btn-ghost:hover{border-color:var(--text-dim);color:var(--text);}
.btn-small{padding:10px 20px;font-size:0.8rem;}

/* ═══ TICKER ═══ */
.ticker-bar{padding:16px 0;border-bottom:1px solid var(--border);overflow:hidden;background:var(--surface);}
.ticker-track{display:flex;gap:40px;animation:ticker 30s linear infinite;width:max-content;}
.ticker-item{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:0.85rem;font-weight:600;}
.ticker-sport{color:var(--neon);font-family:var(--font-display);font-size:0.7rem;letter-spacing:1px;text-transform:uppercase;padding:3px 8px;background:var(--neon-dim);border-radius:4px;}
.ticker-matchup{color:var(--text-mid);}.ticker-odds{color:var(--neon);font-weight:700;}.ticker-sep{color:var(--border);}

/* ═══ FILTER CHIPS ═══ */
.filter-chips{display:flex;gap:8px;flex-wrap:wrap;}
.filter-chip{padding:8px 18px;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;color:var(--text-dim);font-size:0.8rem;font-weight:600;cursor:pointer;transition:all 0.2s;text-decoration:none;}
.filter-chip:hover{border-color:var(--text-dim);color:var(--text);}
.filter-chip.active,.filter-chip.current{background:var(--text);color:var(--bg);border-color:var(--text);}

/* ═══ PICK CARDS ═══ */
.picks-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
@media(max-width:900px){.picks-grid{grid-template-columns:1fr;}}
.pick-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:all 0.3s;text-decoration:none;color:var(--text);display:block;}
.pick-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,0.3);color:var(--text);}
.pick-card-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;}
.pick-card-sport{display:flex;align-items:center;gap:8px;}
.sport-tag{font-family:var(--font-display);font-size:0.68rem;letter-spacing:1px;text-transform:uppercase;padding:4px 10px;border-radius:6px;}

/* AU Sport colours */
.sport-tag--nrl{background:rgba(255,107,53,0.12);color:var(--orange);}
.sport-tag--afl{background:rgba(59,130,246,0.12);color:var(--blue);}
.sport-tag--super-rugby{background:rgba(34,197,94,0.12);color:var(--green);}
.sport-tag--nba{background:rgba(168,85,247,0.12);color:var(--purple);}
.sport-tag--nbl{background:rgba(245,158,11,0.12);color:var(--amber);}
.sport-tag--bbl{background:rgba(239,68,68,0.12);color:var(--red);}
.sport-tag--nfl{background:rgba(59,130,246,0.12);color:#60A5FA;}
.sport-tag--ufc{background:rgba(245,158,11,0.12);color:var(--amber);}

.pick-type-tag{font-size:0.72rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.5px;}
.confidence-badge{display:flex;align-items:center;gap:6px;font-size:0.78rem;font-weight:700;}
.confidence-badge--high{color:var(--green);}.confidence-badge--medium{color:var(--amber);}.confidence-badge--low{color:var(--red);}
.conf-dots{display:flex;gap:3px;}.conf-dot{width:6px;height:6px;border-radius:50%;background:var(--border);}.conf-dot--filled{background:currentColor;}
.pick-card-body{padding:20px 24px;}
.pick-matchup{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-0.5px;margin-bottom:16px;line-height:1.3;text-transform:uppercase;}
.pick-legs{display:flex;flex-direction:column;gap:8px;}
.pick-leg{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface-2);border-radius:10px;border:1px solid var(--border);}
.leg-text{font-size:0.88rem;font-weight:500;color:var(--text-mid);}.leg-odds{font-size:0.82rem;font-weight:700;color:var(--neon);}
.pick-card-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border);}
.total-odds{display:flex;align-items:center;gap:8px;}.total-odds-label{font-size:0.75rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);font-weight:600;}.total-odds-value{font-family:var(--font-display);font-size:1.3rem;color:var(--neon);}
.payout-est{font-size:0.82rem;color:var(--text-dim);}.payout-est strong{color:var(--green);}

/* ═══ SGP FEATURED ═══ */
.sgp-showcase{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;}
@media(max-width:1024px){.sgp-showcase{grid-template-columns:1fr;}}
.sgp-big-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px;position:relative;overflow:hidden;}
.sgp-big-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-neon);}
.sgp-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--neon-dim);border:1px solid var(--neon-glow);border-radius:var(--radius-full);font-size:0.72rem;font-weight:700;color:var(--neon);text-transform:uppercase;letter-spacing:1px;margin-bottom:24px;}
.sgp-game{font-family:var(--font-display);font-size:1.8rem;letter-spacing:-1px;line-height:1.1;margin-bottom:8px;text-transform:uppercase;}
.sgp-meta{font-size:0.85rem;color:var(--text-dim);margin-bottom:32px;}
.sgp-legs{display:flex;flex-direction:column;gap:10px;margin-bottom:32px;}
.sgp-leg{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);}
.sgp-leg:hover{border-color:var(--border-hover);}
.sgp-leg-left{display:flex;align-items:center;gap:12px;}
.leg-number{width:24px;height:24px;border-radius:50%;background:var(--neon-dim);border:1px solid var(--neon-glow);display:flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:700;color:var(--neon);flex-shrink:0;}
.sgp-leg-text{font-size:0.92rem;font-weight:500;}.sgp-leg-odds{font-size:0.85rem;font-weight:700;color:var(--neon);}
.sgp-total{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:var(--neon-dim);border:1px solid var(--neon-glow);border-radius:14px;margin-bottom:24px;}
.sgp-total-label{font-size:0.72rem;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);font-weight:600;}
.sgp-total-odds{font-family:var(--font-display);font-size:2rem;color:var(--neon);letter-spacing:-1px;}
.sgp-total-payout{text-align:right;}.sgp-total-payout .label{font-size:0.72rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);font-weight:600;}.sgp-total-payout .value{font-family:var(--font-display);font-size:1.5rem;color:var(--green);}
.sgp-info-stack{display:flex;flex-direction:column;gap:20px;}
.sgp-info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;transition:border-color 0.3s;}
.sgp-info-card:hover{border-color:var(--border-hover);}
.sgp-info-card h4{font-size:0.95rem;letter-spacing:-0.3px;margin-bottom:12px;}
.sgp-info-card p{font-size:0.9rem;color:var(--text-dim);line-height:1.7;}
.reasoning-tag{display:inline-flex;align-items:center;gap:6px;font-size:0.72rem;text-transform:uppercase;letter-spacing:1px;color:var(--neon);font-weight:700;margin-bottom:16px;font-family:var(--font-body);}

/* ═══ SINGLE PICK ═══ */
.single-pick-layout{display:grid;grid-template-columns:1fr;gap:48px;padding:60px 0;}
.pick-analysis p{font-size:1.05rem;color:var(--text-mid);line-height:1.85;margin-bottom:24px;}
.pick-analysis h3{font-size:1.2rem;margin-bottom:16px;margin-top:40px;}

/* ═══ SPORT ARCHIVE ═══ */
.sport-hero{padding:120px 0 60px;border-bottom:1px solid var(--border);position:relative;}
.sport-hero::before{content:'';position:absolute;top:0;right:0;width:600px;height:600px;background:radial-gradient(circle,rgba(var(--neon-rgb),0.04) 0%,transparent 55%);pointer-events:none;}
.sport-hero h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-2px;margin-bottom:16px;}
.sport-hero-desc{font-size:1.1rem;color:var(--text-dim);max-width:600px;line-height:1.7;}
.archive-section-title{font-size:1.5rem;letter-spacing:-1px;margin-bottom:32px;}

/* ═══ HOW IT WORKS ═══ */
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:1024px){.how-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.how-grid{grid-template-columns:1fr;}}
.how-step{padding:32px 28px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all 0.3s;}
.how-step:hover{border-color:var(--neon-glow);transform:translateY(-3px);}
.how-step-number{font-family:var(--font-display);font-size:3rem;color:rgba(var(--neon-rgb),0.1);line-height:1;margin-bottom:16px;}
.how-step h3{font-size:1rem;letter-spacing:-0.3px;margin-bottom:10px;}
.how-step p{font-size:0.88rem;color:var(--text-dim);line-height:1.6;}

/* ═══ CTA ═══ */
.parlayr-cta{text-align:center;padding:120px 0;position:relative;}
.parlayr-cta::before{content:'';position:absolute;bottom:50px;left:50%;transform:translateX(-50%);width:700px;height:700px;background:radial-gradient(circle,rgba(var(--neon-rgb),0.06) 0%,transparent 55%);pointer-events:none;}
.parlayr-cta h2{font-size:clamp(2.5rem,5.5vw,5rem);letter-spacing:-3px;line-height:0.95;margin-bottom:20px;}
.parlayr-cta p{font-size:1.1rem;color:var(--text-dim);max-width:480px;margin:0 auto 40px;line-height:1.7;}

/* ═══ DISCLAIMER ═══ */
.disclaimer-box{padding:32px;background:rgba(255,107,53,0.04);border:1px solid rgba(255,107,53,0.15);border-radius:var(--radius-lg);margin-top:60px;}
.disclaimer-box h4{font-family:var(--font-display);font-size:0.85rem;text-transform:uppercase;letter-spacing:1px;color:var(--orange);margin-bottom:12px;}
.disclaimer-box p{font-size:0.85rem;color:var(--text-dim);line-height:1.8;}

/* ═══ PAGINATION ═══ */
.parlayr-pagination{display:flex;justify-content:center;gap:8px;margin-top:48px;}
.parlayr-pagination a,.parlayr-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-dim);font-weight:600;font-size:0.85rem;text-decoration:none;}
.parlayr-pagination a:hover{border-color:var(--neon);color:var(--neon);}
.parlayr-pagination .current{background:var(--neon);border-color:var(--neon);color:var(--bg);}

/* ═══ FEATURED IMAGES ═══ */
.single-pick-hero-image{position:relative;width:100%;height:420px;margin-top:72px;overflow:hidden;border-bottom:1px solid var(--border);}
.single-pick-hero-image img{width:100%;height:100%;object-fit:cover;display:block;}
.single-pick-hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,10,10,0.3) 0%,rgba(10,10,10,0.6) 50%,rgba(10,10,10,0.95) 85%,rgba(10,10,10,1) 100%);}
.hero-overlay-content{position:absolute;bottom:0;left:0;right:0;z-index:2;padding-bottom:48px;}
.hero-overlay-content .meta-row{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap;}
@media(max-width:768px){.single-pick-hero-image{height:300px;}.hero-overlay-content{padding-bottom:32px;}}
.pick-card-thumb{width:100%;height:160px;overflow:hidden;position:relative;}
.pick-card-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease;}
.pick-card:hover .pick-card-thumb img{transform:scale(1.05);}
.pick-card-thumb::after{content:'';position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to bottom,transparent,var(--surface));}
.sgp-featured-image{width:100%;height:200px;overflow:hidden;border-radius:var(--radius-md);margin-bottom:24px;position:relative;}
.sgp-featured-image img{width:100%;height:100%;object-fit:cover;display:block;}
.sgp-featured-image::after{content:'';position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,var(--surface));}

/* ═══ ANIMATIONS ═══ */
.reveal{opacity:0;transform:translateY(30px);transition:all 0.7s cubic-bezier(0.16,1,0.3,1);}.reveal.visible{opacity:1;transform:translateY(0);}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.4;transform:scale(0.7);}}
@keyframes ticker{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes marquee{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
