/* StoryTrip — бренд-слой поверх дизайн-системы.
   ВАЖНО: этот файл НЕ объявляет токены. Единственный источник переменных —
   css/tokens.css, и каждая страница обязана подключать его. Раньше здесь лежала
   копия :root со старой тёплой палитрой; на страницах, где brand.css грузился
   после tokens.css, она молча побеждала по порядку загрузки и держала админку
   коричневой. Значения ниже берутся только через var(--…). */

.logo,.hdr-logo{font-family:var(--font-display)!important;letter-spacing:-.5px}
.logo::before,.hdr-logo::before{content:"";display:inline-block;vertical-align:-.14em;width:1em;height:1em;margin-right:7px;background:currentColor;-webkit-mask:url(/img/mark.png) center/contain no-repeat;mask:url(/img/mark.png) center/contain no-repeat}

/* ── Глобальные переопределения темы ──
   Все страницы грузят этот файл перед своими <style>;
   !important возвращает объявления, которые иначе выиграли бы инлайн-блоки. */

/* Base */
body{background:var(--bg)!important;color:var(--ink)!important}
footer{border-top-color:var(--border)!important;color:var(--muted)!important}
footer a:hover{color:var(--ink)!important}

/* Sticky app headers (admin / venues / partners / analytics / partner) */
header{background:color-mix(in srgb,var(--bg) 97%,transparent)!important;border-bottom-color:var(--border)!important}

/* Cards / surfaces */
.card,.section,.kpi,.stat,.table-wrap,.modal,.s-card,.row3,.cta-band{background:var(--surface)!important;border-color:var(--border)!important}

/* Tables — borders global; dark text scoped to internal pages only (header+main anchor;
   excludes landing / map which have no <header>→<main> structure with tables) */
th{border-bottom-color:var(--border)!important}
td{border-bottom-color:var(--border)!important}
tr:last-child td{border-bottom:none!important}
tr:hover td{background:var(--soft)!important}
header ~ main th{color:var(--ink)!important}
header ~ main td{color:var(--ink)!important}

/* Inputs */
input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),
textarea,.search,.field input,.field select,.field textarea{
  background:var(--soft)!important;border-color:var(--border)!important;color:var(--ink)!important}
input:focus,textarea:focus,.search:focus,
.field input:focus,.field select:focus,.field textarea:focus{border-color:color-mix(in srgb,var(--coral) 40%,transparent)!important}

/* Primary buttons → coral */
.btn.primary,.add-btn,.btn-save,.act-btn,.nav-link.primary,button[type=submit]{
  background:linear-gradient(135deg,var(--coral),var(--coral-deep))!important;
  color:var(--on-coral)!important;border-color:transparent!important}
.btn.primary:hover,.add-btn:hover,.btn-save:hover,.act-btn:hover{opacity:.9!important;transform:translateY(-1px)!important}

/* Neutral/ghost buttons */
.filter-btn,.range-btn,.refresh-btn,.nav-link:not(.primary),.icon-btn,.btn-cancel,.disc-btn{
  border-color:var(--border)!important;background:transparent!important;color:var(--muted)!important}
.filter-btn:hover,.range-btn:hover,.refresh-btn:hover,
.nav-link:not(.primary):hover,.icon-btn:hover,.disc-btn:hover{border-color:var(--coral)!important;color:var(--coral)!important}
.icon-btn.del:hover{border-color:var(--coral-deep)!important;color:var(--coral-deep)!important}

/* Active neutral → coral fill */
.filter-btn.active,.range-btn.active{
  background:var(--coral)!important;border-color:transparent!important;color:var(--on-coral)!important}

/* Accent / logo / eyebrow */
.logo span,.logo em,.eyebrow,.stat-val.green,.v-insta,.conv,.s-title,
.faq summary::after,.auto.live,.p-handle{color:var(--coral)!important}
.row3 .n{background:color-mix(in srgb,var(--coral) 13%,transparent)!important;color:var(--coral)!important}

/* Muted / secondary text */
.subtitle,.stat-label,.kpi-label,.section .hint,.v-reward,.reward-txt,.ts,.coords,
.logo-sub,.done-label,.empty,.faq p,.head .lead,.card p,.cta-band p,.step-gap,
.funnel-meta,.funnel-meta b,.note,.sub,.opt,.msg-hint,
.auto.wait,.auto.off,.logo-sub,.drop{color:var(--muted)!important}

/* Amber accent */
.stat-val.yellow,.badge.inactive,.st-pending,.auto.wait{color:var(--amber)!important}

/* Status badges */
.badge.active,.st-live,.st-active,.st-pill.st-active,.conv-pill{
  background:color-mix(in srgb,var(--coral) 12%,transparent)!important;
  border-color:color-mix(in srgb,var(--coral) 25%,transparent)!important;color:var(--coral)!important}
.badge.inactive,.st-pending{
  background:color-mix(in srgb,var(--amber) 10%,transparent)!important;
  border-color:color-mix(in srgb,var(--amber) 22%,transparent)!important;color:var(--amber)!important}
.st-hidden,.st-off{background:color-mix(in srgb,var(--muted) 10%,transparent)!important;color:var(--muted)!important}

/* FAQ */
.faq details{border-bottom-color:var(--border)!important}

/* Toast */
#toast{background:color-mix(in srgb,var(--bg) 97%,transparent)!important;
  border-color:color-mix(in srgb,var(--coral) 28%,transparent)!important;color:var(--ink)!important}

/* Modal overlay */
.overlay{background:color-mix(in srgb,var(--ink) 60%,transparent)!important}

/* Partner page permission icons */
.perm-icon.green{background:color-mix(in srgb,var(--coral) 12%,transparent)!important}

/* Summary card rows */
.s-row{border-bottom-color:var(--border)!important}
.s-label{color:var(--muted)!important}
.s-val{color:var(--ink)!important}

/* Analytics funnel drop colour */
.drop{color:var(--coral-deep)!important}
