/*
Theme Name: JAV SUN
Theme URI: https://sun.jav.local
Description: SUN — warm sunset edition — derivative of jav-master with unique DOM + palette for SEO isolation.
Version: 1.0.10
Author: JAV STUDIO
Text Domain: avth18
*/

:root{
  --sn-bg:#fff8ec;
  --sn-surface:#ffffff;
  --sn-surface-2:#fdecd0;
  --sn-border:#f3dfb4;
  --sn-accent:#ff7a1a;
  --sn-accent-2:#c2410c;
  --sn-text:#2a1a08;
  --sn-muted:#7c5a2e;
  --sn-radius:14px;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:var(--sn-bg);color:var(--sn-text);font-family:'Kanit',sans-serif;min-height:100vh}
body{overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}

/* ============ COMMON TOKENS ============ */
.sn-wrap{max-width:1400px;margin:0 auto;padding:24px;position:relative}
.sn-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--sn-radius);background:var(--sn-accent);color:var(--sn-bg);font-weight:700;border:none;text-decoration:none;transition:transform .15s}
.sn-btn:hover{transform:translateY(-1px)}
.sn-btn-ghost{background:transparent;border:1px solid var(--sn-border);color:var(--sn-text)}
.sn-muted{color:var(--sn-muted);font-size:12px}
.sn-badge{display:inline-block;padding:3px 10px;border-radius:var(--sn-radius);background:var(--sn-surface-2);color:var(--sn-text);font-size:11px;border:1px solid var(--sn-border);margin:2px}
.sn-badge:hover{background:var(--sn-accent);color:var(--sn-bg);border-color:var(--sn-accent)}
.sn-badge.actress{background:var(--sn-accent);color:var(--sn-bg);border-color:var(--sn-accent)}

/* ============ SUN SPLIT ============ */
.sn-bar{background:var(--sn-surface);border-bottom:2px solid var(--sn-accent);padding:16px 0}
.sn-bar-inner{max-width:1400px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.sn-nav-l,.sn-nav-r{display:flex;gap:6px;flex-wrap:wrap}
.sn-nav-l{justify-content:flex-end}
.sn-brand{text-align:center;font-family:'Kanit';font-weight:800;font-size:26px;color:var(--sn-accent);letter-spacing:-.3px}
.sn-brand em{font-style:normal;color:var(--sn-accent-2);font-weight:600}
.sn-pill{padding:7px 14px;border-radius:999px;background:transparent;color:var(--sn-text);font-size:13px;font-weight:600;transition:all .2s}
.sn-pill:hover,.sn-pill.on{background:var(--sn-accent);color:#fff}
.sn-wrap{max-width:1400px;margin:0 auto;padding:24px;display:grid;grid-template-columns:1fr 2fr;gap:22px}
.sn-featured{display:flex;flex-direction:column;gap:14px}
.sn-hero{background:var(--sn-surface);border-radius:var(--sn-radius);padding:18px;box-shadow:0 6px 30px rgba(255,122,26,.08)}
.sn-hero h2{font-size:17px;font-weight:700;color:var(--sn-accent);margin-bottom:10px}
.sn-feature-card{background:var(--sn-surface);border-radius:var(--sn-radius);overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.05);transition:box-shadow .2s}
.sn-feature-card:hover{box-shadow:0 8px 28px rgba(255,122,26,.15)}
.sn-feature-card figure{aspect-ratio:16/10;overflow:hidden}
.sn-feature-card figure img{width:100%;height:100%;object-fit:cover}
.sn-feature-card .sn-caption{padding:12px 14px}
.sn-feature-card h3{font-size:14px;font-weight:600;line-height:1.4;color:var(--sn-text)}
.sn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-content:start}
.sn-card{background:var(--sn-surface);border-radius:var(--sn-radius);overflow:hidden;position:relative;box-shadow:0 2px 10px rgba(0,0,0,.04);transition:transform .2s}
.sn-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px rgba(255,122,26,.15)}
.sn-card figure{aspect-ratio:16/10;overflow:hidden;position:relative}
.sn-card figure img{width:100%;height:100%;object-fit:cover}
.sn-card .sn-caption{padding:10px 12px}
.sn-card h3{font-size:13px;font-weight:600;line-height:1.3;color:var(--sn-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:4px}
.sn-card time{font-size:11px;color:var(--sn-muted)}
.sn-card .sn-fav{position:absolute;top:8px;right:8px;background:#fff;border:none;width:30px;height:30px;border-radius:50%;font-size:15px;box-shadow:0 2px 6px rgba(0,0,0,.2);z-index:3}
.sn-card .sn-fav.on{color:var(--sn-accent)}
.sn-card .sn-q{position:absolute;top:8px;left:8px;background:var(--sn-accent);color:#fff;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700}
.sn-card .sn-d{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.7);color:#fff;padding:1px 7px;border-radius:999px;font-size:10px}
@media(max-width:900px){.sn-wrap{grid-template-columns:1fr}.sn-bar-inner{grid-template-columns:1fr;gap:10px}.sn-nav-l,.sn-nav-r{justify-content:center}.sn-grid{grid-template-columns:repeat(2,1fr)}}

/* ============ SINGLE POST (shared structure, unique palette) ============ */
.sn-single{max-width:1600px;margin:0 auto;padding:24px}
@media(min-width:1920px){.sn-single{max-width:1800px}}
.sn-crumb{font-size:12px;color:var(--sn-muted);margin-bottom:14px}
.sn-crumb a{color:var(--sn-accent)}
.sn-player{background:#000;aspect-ratio:16/9;border-radius:var(--sn-radius);overflow:hidden;margin-bottom:14px}
.sn-player iframe,.sn-player video{width:100%;height:100%;border:none}
.sn-player img{width:100%;height:100%;object-fit:cover}
.sn-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.sn-h1{font-size:22px;font-weight:700;color:var(--sn-text);line-height:1.3;margin-bottom:14px}
.sn-h1 span{color:var(--sn-accent);font-weight:800}
.sn-desc{background:var(--sn-surface);border:1px solid var(--sn-border);border-radius:var(--sn-radius);padding:14px;margin-bottom:16px;line-height:1.7;color:var(--sn-text)}
.sn-meta-box{background:var(--sn-surface);border:1px solid var(--sn-border);border-radius:var(--sn-radius);padding:14px;margin-bottom:24px}
.sn-meta-row{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:7px 0;border-bottom:1px dashed var(--sn-border);font-size:13px}
.sn-meta-row:last-child{border-bottom:none}
.sn-meta-k{color:var(--sn-muted);font-weight:600}
.sn-meta-v{color:var(--sn-text)}
.sn-meta-v .sn-badge{margin-right:4px}
.sn-rel-title{font-size:17px;font-weight:700;color:var(--sn-accent);margin:18px 0 14px;padding-bottom:8px;border-bottom:2px solid var(--sn-border)}
@media(max-width:720px){.sn-meta-row{grid-template-columns:110px 1fr}}

/* ============ FOOTER ============ */
.sn-foot{background:var(--sn-surface);border-top:1px solid var(--sn-border);padding:28px 0 18px;margin-top:60px}
.sn-foot-in{max-width:1400px;margin:0 auto;padding:0 24px}
.sn-foot-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-bottom:20px}
.sn-foot-tags a{font-size:11px;padding:4px 12px;background:var(--sn-surface-2);border-radius:var(--sn-radius);color:var(--sn-muted);transition:all .2s}
.sn-foot-tags a:hover{background:var(--sn-accent);color:var(--sn-bg)}
.sn-foot-copy{text-align:center;color:var(--sn-muted);font-size:12px;padding-top:16px;border-top:1px solid var(--sn-border)}

/* ============ PAGINATION ============ */
.sn-pager{display:flex;gap:6px;justify-content:center;margin:24px 0;flex-wrap:wrap}
.sn-pager a,.sn-pager span{padding:7px 12px;border:1px solid var(--sn-border);border-radius:var(--sn-radius);color:var(--sn-text);font-size:13px;background:var(--sn-surface);transition:all .2s}
.sn-pager a:hover,.sn-pager .current{background:var(--sn-accent);color:var(--sn-bg);border-color:var(--sn-accent)}

/* ============ 404 / EMPTY ============ */
.sn-empty{text-align:center;padding:80px 20px;color:var(--sn-muted)}
.sn-empty h2{font-size:28px;color:var(--sn-accent);margin-bottom:8px}

/* ============ AGE MODAL ============ */
#avth18-age{position:fixed;inset:0;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;z-index:99999}
#avth18-age > div{background:var(--sn-surface);border:1px solid var(--sn-border);border-radius:var(--sn-radius);padding:28px;max-width:420px;text-align:center}
#avth18-age h3{color:var(--sn-accent);font-size:20px;margin-bottom:10px}
#avth18-age p{color:var(--sn-text);font-size:14px;margin-bottom:18px;line-height:1.5}
#avth18-age .btns{display:flex;gap:10px;justify-content:center}
#avth18-age button{padding:9px 22px;border:none;border-radius:var(--sn-radius);font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}
#avth18-age [data-age-yes]{background:var(--sn-accent);color:var(--sn-bg)}
#avth18-age [data-age-no]{background:var(--sn-surface-2);color:var(--sn-muted);border:1px solid var(--sn-border)}

/* override sn-wrap grid on single posts so sn-single fills full width */
body.single .sn-wrap { display: block; max-width: 1000px; padding: 0; }
@media (min-width: 1920px) { body.single .sn-wrap { max-width: 1100px; } }

/* avsupermax-style player-first hero: breadcrumb after player */
.sn-single { display: flex; flex-direction: column; }
.sn-crumb { order: 99; margin-top: 16px; margin-bottom: 0; opacity: 0.7; }


/* avsupermax-style: player capped 952px centered (need width:100% for flex item) */
.sn-player { width: 100%; max-width: 952px; margin-left: auto; margin-right: auto; box-sizing: border-box; }

/* desktop content cap — squeeze homepage/listing pages */
.sn-wrap { max-width: 952px; }


/* JAV-LOGO-IMG — uploaded wordmark SVG */
.brand-logo { height: 40px; width: auto; display: inline-block; vertical-align: middle; }

/* JAV-LOGO-IPXSSIS — clean bg + large size */
.sn-bar { background: transparent; border-bottom: none; padding: 8px 0; }
.sn-brand { background: transparent; padding: 0; }
.sn-brand .brand-logo { height: 80px; max-height: 90px; width: auto; }

/* JAV-MOBILE-HEADER */
@media (max-width: 768px) {
  .sn-bar, .sn-hero, .sn-crown { padding: 10px 12px !important; }
  .sn-bar-inner, .sn-wrap, .sn-nav, .sn-pills, .sn-pill-row, .sn-nav-inner {
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 !important;
  }
  .sn-brand, .sn-logo {
    text-align: center !important;
    width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
  }
  .sn-brand .brand-logo, .sn-logo .brand-logo, .sn-hero .brand-logo, .sn-crown .brand-logo {
    height: 48px !important;
    max-height: 56px !important;
    width: auto !important;
    margin: 0 auto !important;
    display: block !important;
  }
  .sn-nav-l, .sn-nav-r, .sn-pills, .sn-nav {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 100%;
    overflow: visible !important;
  }
  .sn-pill, .sn-nav-icn, .sn-menu-link {
    padding: 4px 10px !important;
    font-size: 12px !important;
    white-space: nowrap;
  }
  .sn-search, .sn-search-box {
    width: 100% !important;
    max-width: 360px;
    margin: 4px auto !important;
  }
  .sn-search input, .sn-search-box input {
    width: 100% !important;
  }
}
