/* ===========================================================
   ACORDA MÍDIA — Platform v3 (layout estilo Vorterix)
   Preto, cards flutuando, acento verde-limão, header e player fixos.
   =========================================================== */
:root{
  --am-bg:#000;
  --am-surface:#0c0c0c;
  --am-surface-2:#141414;
  --am-text:#f3f3f3;
  --am-muted:#9a9a9a;
  --am-line:#1f1f1f;
  --am-accent:#c6f432;     /* verde-limão (assinatura) */
  --am-accent-2:#9ad400;
  --am-live:#ff3b30;       /* ponto vermelho "ao vivo" */
  --am-radius:16px;
  --am-max:1280px;
  --am-header-h:78px;
  --am-aire-h:74px;
}
.am-body{
  background:var(--am-bg)!important;
  color:var(--am-text);
  margin:0;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  padding-top:var(--am-header-h);
  padding-bottom:calc(var(--am-aire-h) + 14px);
}
.am-body a{color:var(--am-text)}
.am-main{max-width:var(--am-max);margin:0 auto;padding:18px 16px 40px}
.am-page-wrap>h1,.am-archive-title,.am-single-title{font-size:clamp(30px,5vw,64px);letter-spacing:-.04em;line-height:1;margin:14px 0 18px;text-transform:uppercase}

/* ---------- Header fixo ---------- */
.am-header{position:fixed;top:0;left:0;right:0;z-index:60;background:rgba(8,8,8,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--am-line)}
.am-header-inner{max-width:var(--am-max);margin:0 auto;height:var(--am-header-h);display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:18px}
.am-logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.02em;font-size:20px;text-decoration:none;color:var(--am-text)!important;text-transform:uppercase}
.am-logo b{color:var(--am-accent);font-weight:900}
.am-logo-mark{width:22px;height:22px;border-radius:6px;background:conic-gradient(from 220deg,var(--am-accent),#3a7d00);display:inline-block;box-shadow:0 0 0 2px #000 inset}
.am-logo-mark.big{width:34px;height:34px}
.am-nav{display:flex;gap:22px;flex-wrap:wrap}
.am-nav a{color:var(--am-text)!important;text-decoration:none!important;font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:.04em;opacity:.85}
.am-nav a:hover{opacity:1;color:var(--am-accent)!important}

/* ---------- Seções e botões ---------- */
.am-live-block,.am-week,.am-week-grid,.am-section,.am-archive-block,.am-submit-form-wrap,.am-single-platform{max-width:var(--am-max);margin:22px auto;padding:24px;background:var(--am-surface);border:1px solid var(--am-line);border-radius:var(--am-radius)}
.am-section-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:var(--am-accent);margin-bottom:10px}
.am-section-kicker:before{content:"";width:8px;height:8px;background:var(--am-accent);border-radius:50%}
.am-actions,.am-live-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.am-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--am-accent);background:var(--am-accent);color:#071100!important;text-decoration:none!important;border-radius:999px;padding:11px 20px;font-weight:800;line-height:1}
.am-button:hover{filter:brightness(1.08)}
.am-button-ghost{background:transparent;color:var(--am-text)!important;border-color:var(--am-line)}
.am-button-small{font-size:13px;padding:8px 13px}
.am-live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--am-live);box-shadow:0 0 0 4px rgba(255,59,48,.18);animation:ampulse 1.6s infinite}
@keyframes ampulse{50%{box-shadow:0 0 0 7px rgba(255,59,48,.05)}}

/* ---------- Player ---------- */
.am-player{position:relative;aspect-ratio:16/9;width:100%;overflow:hidden;border-radius:14px;background:#000;border:1px solid var(--am-line);margin:18px 0}
.am-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.am-player-empty{display:flex;align-items:center;justify-content:center;color:var(--am-muted);min-height:300px;aspect-ratio:16/9;background:radial-gradient(circle at 50% 45%,#161616,#000)}
.am-live-block h2,.am-week-grid h2,.am-section h2{font-size:clamp(26px,4vw,48px);letter-spacing:-.03em;line-height:1;margin:0 0 12px}
.am-legal-note,.am-meta-line,.am-rights{color:var(--am-muted);font-size:13px}

/* ---------- Multiplataforma (fileira de cards coloridos) ---------- */
.am-platforms{max-width:var(--am-max);margin:22px auto;display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.am-plat-card{position:relative;aspect-ratio:16/10;border-radius:var(--am-radius);background:var(--c,#222);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-decoration:none!important;color:#fff!important;border:1px solid rgba(255,255,255,.08);transition:transform .2s}
.am-plat-card:hover{transform:translateY(-3px)}
.am-plat-icon{font-size:26px;font-weight:900;line-height:1}
.am-plat-name{font-size:12px;font-weight:700;opacity:.95;text-transform:uppercase;letter-spacing:.05em}

/* ---------- Grade semanal (estilo programação) ---------- */
.am-week-cols{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin-top:8px}
.am-week-col{background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px}
.am-week-col.am-today{border-color:var(--am-accent);box-shadow:0 0 0 1px var(--am-accent) inset}
.am-week-col h3{margin:0 0 4px;font-size:14px;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:8px}
.am-slot{display:flex;flex-direction:column;gap:2px;text-decoration:none!important;color:var(--am-text)!important;background:#0a0a0a;border:1px solid var(--am-line);border-radius:10px;padding:9px 10px}
.am-slot:hover{border-color:var(--am-accent)}
.am-slot-time{font-weight:900;color:var(--am-accent);font-size:13px}
.am-slot-title{font-weight:800;font-size:14px;line-height:1.1}
.am-slot-desc{color:var(--am-muted);font-size:12px}

/* ---------- Grade dinâmica (itens reais) ---------- */
.am-day-group{border-top:1px solid var(--am-line);padding:16px 0}
.am-day-group h3{text-transform:capitalize;margin:0 0 12px}
.am-schedule-list{display:grid;gap:8px}
.am-schedule-row{display:grid;grid-template-columns:80px 1fr 180px;gap:12px;align-items:center;color:var(--am-text)!important;text-decoration:none!important;background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:12px;padding:12px}
.am-schedule-row:hover{border-color:var(--am-accent)}
.am-schedule-time{font-weight:900;color:var(--am-accent)}
.am-schedule-title{font-weight:800}
.am-schedule-meta{color:var(--am-muted);font-size:13px;text-align:right}

/* ---------- Cards / grid sob demanda ---------- */
.am-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.am-card{background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.am-card-media{display:block;aspect-ratio:16/9;background:#050505;overflow:hidden}
.am-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.am-card:hover img{transform:scale(1.03)}
.am-card-placeholder{height:100%;display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--am-accent);letter-spacing:.12em;background:radial-gradient(circle at 50% 40%,#161616,#000)}
.am-card-body{padding:15px}
.am-card h3{font-size:20px;line-height:1.05;margin:8px 0}
.am-card h3 a{color:var(--am-text)!important;text-decoration:none!important}
.am-card p{color:var(--am-muted);font-size:14px}
.am-card-top{display:flex;justify-content:space-between;align-items:center}
.am-badge{display:inline-flex;align-items:center;width:max-content;border:1px solid var(--am-line);background:#0a0a0a;border-radius:999px;color:var(--am-text);padding:5px 9px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.am-status-ao-vivo{border-color:var(--am-live);color:#fff;background:rgba(255,59,48,.22)}
.am-status-estreia,.am-status-sessao-coletiva{border-color:var(--am-accent);background:rgba(198,244,50,.13)}
.am-rights{color:var(--am-muted);font-size:12px}

/* ---------- Filtros ---------- */
.am-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:20px;padding:14px;background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:14px}
.am-filters label{display:grid;gap:6px;color:var(--am-muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.am-filters select{background:#060606;color:var(--am-text);border:1px solid var(--am-line);border-radius:10px;padding:11px;min-width:180px}
.am-clear{color:var(--am-muted)!important;align-self:center}
.am-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.am-pagination a{display:inline-flex;min-width:40px;justify-content:center;padding:8px 12px;border:1px solid var(--am-line);border-radius:10px;color:var(--am-text)!important;text-decoration:none!important;background:var(--am-surface-2);font-weight:800}
.am-pagination .am-page-current{background:var(--am-accent);color:#071100!important;border-color:var(--am-accent)}

/* ---------- Single ---------- */
.am-single-wrap{max-width:var(--am-max);margin:0 auto;padding:8px 0}
.am-back{display:inline-block;color:var(--am-muted)!important;text-decoration:none;margin-bottom:8px}
.am-single-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;margin-top:20px}
.am-ficha{background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:14px;padding:18px;align-self:start}
.am-context h2{font-size:28px;letter-spacing:-.03em;margin-top:0}
.am-credit{border-left:4px solid var(--am-accent);padding-left:14px}
.am-related{margin-top:26px;border-top:1px solid var(--am-line);padding-top:18px}
.am-empty{color:var(--am-muted)}

/* ---------- Formulário ---------- */
.am-submit-form{display:grid;gap:14px}
.am-submit-form label{display:grid;gap:7px;font-weight:700}
.am-submit-form input,.am-submit-form textarea{background:#060606;color:var(--am-text);border:1px solid var(--am-line);border-radius:10px;padding:11px}
.am-submit-form textarea{min-height:100px}
.am-check{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;color:var(--am-muted)}
.am-success,.am-error{padding:14px;border-radius:12px;margin-bottom:14px}
.am-success{background:rgba(198,244,50,.12);border:1px solid rgba(198,244,50,.45)}
.am-error{background:rgba(255,59,48,.12);border:1px solid rgba(255,59,48,.45)}

/* ---------- Footer institucional ---------- */
.am-footer{max-width:var(--am-max);margin:30px auto 0;padding:0 16px}
.am-footer-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:14px}
.am-fcol{background:var(--am-surface);border:1px solid var(--am-line);border-radius:var(--am-radius);padding:22px;color:var(--am-muted)}
.am-fcol p{color:var(--am-muted);line-height:1.5}
.am-listen{display:inline-flex;align-items:center;gap:12px;color:var(--am-text)!important;text-decoration:none!important;font-size:26px;font-weight:900;letter-spacing:.02em;margin-bottom:10px}
.am-listen .am-aire-play{width:46px;height:46px;font-size:16px}
.am-contact{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.am-contact li{display:flex;align-items:center;gap:10px}
.am-contact span{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--am-line);border-radius:8px;color:var(--am-accent)}
.am-contact a{color:var(--am-text)!important;text-decoration:none}
.am-footnav{padding:20px 4px 8px;color:var(--am-muted);font-size:14px}
.am-footnav a{color:var(--am-muted)!important;text-decoration:none}
.am-footnav a:hover{color:var(--am-accent)!important}

/* ---------- Barra de player FIXA (assinatura "Aire") ---------- */
.am-aire{position:fixed;left:0;right:0;bottom:0;z-index:70;background:rgba(8,8,8,.96);backdrop-filter:blur(10px);border-top:1px solid var(--am-line)}
.am-aire-inner{max-width:var(--am-max);margin:0 auto;height:var(--am-aire-h);display:flex;align-items:center;gap:14px;padding:0 16px}
.am-aire-mark{width:36px;height:36px;border-radius:8px;background:conic-gradient(from 220deg,var(--am-accent),#3a7d00);flex:none}
.am-aire-play{width:46px;height:46px;border-radius:50%;background:var(--am-accent);color:#071100!important;display:inline-flex;align-items:center;justify-content:center;font-size:18px;text-decoration:none!important;flex:none;font-weight:900}
.am-aire-play:hover{filter:brightness(1.08)}
.am-aire-meta{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.am-aire-meta strong{font-size:15px;display:flex;align-items:center;gap:8px}
.am-aire-meta span{color:var(--am-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.am-aire-cta{margin-left:auto;color:var(--am-text)!important;text-decoration:none!important;border:1px solid var(--am-line);border-radius:999px;padding:9px 16px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.am-aire-cta:hover{border-color:var(--am-accent);color:var(--am-accent)!important}

/* admin bar offset */
.admin-bar .am-header{top:32px}

/* ---------- Responsivo ---------- */
@media(max-width:1024px){
  .am-platforms{grid-template-columns:repeat(4,1fr)}
  .am-week-cols{grid-template-columns:repeat(3,1fr)}
  .am-grid{grid-template-columns:1fr 1fr}
  .am-footer-cols{grid-template-columns:1fr}
  .am-single-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .am-nav{display:none}
  .am-platforms{grid-template-columns:repeat(2,1fr)}
  .am-week-cols{grid-template-columns:1fr}
  .am-grid{grid-template-columns:1fr 1fr}
  .am-schedule-row{grid-template-columns:64px 1fr}
  .am-schedule-meta{display:none}
  .am-aire-meta span{display:none}
}

/* ===========================================================
   v4 — CATÁLOGO MOBILE-FIRST (hero, trilhos, cards, Minha Lista)
   =========================================================== */

/* Hero estilo streaming */
.am-hero{position:relative;max-width:var(--am-max);margin:14px auto 8px;border-radius:var(--am-radius);overflow:hidden;min-height:60vh;display:flex;align-items:flex-end;background:#0a0a0a;background-image:var(--bg);background-size:cover;background-position:center;border:1px solid var(--am-line)}
.am-hero-empty{min-height:auto;align-items:flex-start;padding:32px}
.am-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.92) 100%)}
.am-hero-inner{position:relative;z-index:2;padding:28px;max-width:760px}
.am-hero h1{font-size:clamp(30px,6vw,60px);line-height:1.02;letter-spacing:-.03em;margin:6px 0 10px;text-transform:none}
.am-hero p{color:#e9e9e9;font-size:clamp(15px,2vw,19px);max-width:640px}
.am-hero-badge{display:inline-block;margin:12px 0 0;border:1px solid var(--am-accent);color:var(--am-accent);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.am-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.am-button-play{font-size:16px;padding:13px 24px}

/* Trilhos horizontais */
.am-rail{max-width:var(--am-max);margin:18px auto;padding:0 16px}
.am-rail-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.am-rail-head h2{font-size:clamp(19px,3vw,26px);letter-spacing:-.02em;margin:0}
.am-rail-all{color:var(--am-accent)!important;text-decoration:none!important;font-weight:700;font-size:14px;white-space:nowrap}
.am-rail-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 2px 12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.am-rail-track::-webkit-scrollbar{height:8px}
.am-rail-track::-webkit-scrollbar-thumb{background:#222;border-radius:8px}
.am-rail-track .am-card{flex:0 0 244px;scroll-snap-align:start}

/* Card de catálogo */
.am-card{background:var(--am-surface-2);border:1px solid var(--am-line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.am-card-media{position:relative;display:block;aspect-ratio:16/9;background:#050505;overflow:hidden}
.am-card-media>a{display:block;width:100%;height:100%}
.am-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.am-card:hover .am-card-media img{transform:scale(1.04)}
.am-card-right{position:absolute;top:8px;left:8px;z-index:2;background:rgba(0,0,0,.72);border:1px solid var(--am-line);color:#fff;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.am-card-body{padding:11px 12px 13px}
.am-card h3{font-size:15px;line-height:1.15;margin:0 0 5px}
.am-card h3 a{color:var(--am-text)!important;text-decoration:none!important}
.am-card-meta{color:var(--am-muted);font-size:12px}

/* Botão Minha Lista */
.am-mylist{display:inline-flex;align-items:center;gap:6px;cursor:pointer;border:1px solid var(--am-line);background:#0c0c0c;color:var(--am-text);border-radius:999px;padding:9px 16px;font-weight:800;font-size:14px;line-height:1}
.am-mylist:hover{border-color:var(--am-accent)}
.am-mylist .am-mylist-on{display:none}
.am-mylist.is-on{border-color:var(--am-accent);color:var(--am-accent)}
.am-mylist.is-on .am-mylist-add{display:none}
.am-mylist.is-on .am-mylist-on{display:inline}
.am-mylist-sm{position:absolute;bottom:8px;right:8px;z-index:2;padding:6px 10px;font-size:11px;background:rgba(8,8,8,.82);backdrop-filter:blur(4px)}

/* Ações na página da sessão */
.am-single-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 6px}
.am-rights-sheet{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0 4px;font-size:14px}
.am-rights-sheet dt{color:var(--am-muted);font-weight:700}
.am-rights-sheet dd{margin:0;color:var(--am-text)}

/* Busca + filtros (drawer no mobile) */
.am-search-row{display:flex;gap:10px;align-items:center}
.am-search{flex:1;background:#060606;color:var(--am-text);border:1px solid var(--am-line);border-radius:12px;padding:13px 15px;font-size:15px}
.am-filters-toggle{display:none}
.am-filters-fields{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-top:14px}

/* Minha Lista (rail no topo da home some se vazia via JS) */
.am-mylist-block{max-width:var(--am-max);margin:18px auto;padding:0 16px}
.am-mylist-block .am-rail-head h2{font-size:clamp(19px,3vw,26px)}

@media(max-width:1024px){
  .am-rail-track .am-card{flex:0 0 210px}
}
@media(max-width:680px){
  .am-hero{min-height:54vh;margin:8px 10px}
  .am-hero-inner{padding:18px}
  .am-rail{padding:0 12px}
  .am-rail-track .am-card{flex:0 0 158px}
  .am-rail-track .am-card h3{font-size:13px}
  .am-rights-sheet{grid-template-columns:1fr}
  .am-rights-sheet dt{margin-top:6px}
  /* filtros viram drawer */
  .am-filters-toggle{display:inline-flex}
  .am-filters-fields{display:none;width:100%}
  .am-filters-fields.is-open{display:flex;flex-direction:column;align-items:stretch}
  .am-filters-fields label{display:grid;gap:6px}
  .am-filters-fields select{width:100%}
}
