/* ============================================================
   CLAUDE (Anthropic) THEME — Skin override for the platform
   Aplica a paleta parchment/terracotta + serif headlines + warm
   neutrals + ring shadows + generous radius sobre o style.css
   original sem alterar PHP/HTML.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap');

/* ─────────────── Tokens ─────────────── */
:root,
[data-theme="light"],
[data-theme="dark"]{
    /* Surfaces (warm chiaroscuro) */
    --c-parchment:#f5f4ed;
    --c-ivory:#faf9f5;
    --c-white:#ffffff;
    --c-warm-sand:#e8e6dc;
    --c-near-black:#141413;
    --c-dark-surface:#30302e;

    /* Brand */
    --c-terracotta:#c96442;
    --c-terracotta-dark:#b85838;
    --c-coral:#d97757;

    /* Text */
    --c-charcoal:#4d4c48;
    --c-olive:#5e5d59;
    --c-stone:#87867f;
    --c-dark-warm:#3d3d3a;
    --c-warm-silver:#b0aea5;

    /* Borders / rings */
    --c-border-cream:#f0eee6;
    --c-border-warm:#e8e6dc;
    --c-ring-warm:#d1cfc5;
    --c-ring-deep:#c2c0b6;
    --c-focus-blue:#3898ec;

    /* Fonts */
    --c-serif:'Source Serif 4', Georgia, 'Times New Roman', serif;
    --c-sans:'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;

    /* Mapeia tokens antigos do style.css para a paleta Claude */
    --bg:#f5f4ed!important;
    --bg2:#faf9f5!important;
    --bg3:#e8e6dc!important;
    --bg4:#f0eee6!important;
    --bg-deep:#f5f4ed!important;
    --bg-dark:#141413!important;
    --bg-card:#faf9f5!important;
    --bg-card-hover:#f0eee6!important;

    --text:#4d4c48!important;
    --text2:#5e5d59!important;
    --text3:#87867f!important;
    --text-dim:#5e5d59!important;
    --text-bright:#141413!important;
    --bright:#141413!important;

    --accent:#c96442!important;
    --accent2:#d97757!important;
    --accent-glow:rgba(201,100,66,0.12)!important;

    --border:#f0eee6!important;
    --border2:#e8e6dc!important;

    --radius:16px!important;
    --radius-sm:10px!important;
    --radius-lg:20px!important;

    --green:#c96442!important;
    --blue:#5e5d59!important;
    --coral:#c96442!important;
    --purple:#5e5d59!important;
    --orange:#d97757!important;

    --font:'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Arial, sans-serif!important;
    --mono:'Source Serif 4', Georgia, 'Times New Roman', serif!important;
}

/* ─────────────── Base ─────────────── */
html{scroll-behavior:smooth;background:var(--c-parchment)!important}
body{
    font-family:var(--c-sans)!important;
    background:var(--c-parchment)!important;
    color:var(--c-near-black)!important;
    line-height:1.6!important;
    -webkit-font-smoothing:antialiased;
}

/* Esconde os SVGs de circuito decorativos — Claude é editorial, não tech */
.circuit-bg{display:none!important}

/* Tipografia editorial — serif com peso 500 para hierarquia */
h1,h2,h3,h4,h5,h6,
.section-title,.hero h1,.tagline,
.faq-item summary,.testimonial-text{
    font-family:var(--c-serif)!important;
    color:var(--c-near-black)!important;
    font-weight:500!important;
    letter-spacing:-0.005em!important;
}

a{color:var(--c-near-black)!important;text-decoration:none}
a:hover{color:var(--c-terracotta)!important;opacity:1}

::selection{background:rgba(201,100,66,.18);color:var(--c-near-black)}

/* ─────────────── Navbar ─────────────── */
.navbar{
    background:rgba(245,244,237,.85)!important;
    backdrop-filter:blur(10px)!important;
    border-bottom:1px solid var(--c-border-cream)!important;
    box-shadow:none!important;
}
.navbar .logo,.navbar a.logo{
    color:var(--c-near-black)!important;
    font-family:var(--c-serif)!important;
    font-weight:500!important;
}
.ai-mark{
    background:var(--c-near-black)!important;
    color:var(--c-ivory)!important;
    border-radius:8px!important;
    font-family:var(--c-sans)!important;
    font-weight:600!important;
    letter-spacing:.5px!important;
}
.navbar-links a:not(.btn){
    color:var(--c-olive)!important;
    font-family:var(--c-sans)!important;
    font-weight:400!important;
}
.navbar-links a:not(.btn):hover{color:var(--c-near-black)!important}

/* ─────────────── Buttons ─────────────── */
.btn,button.btn,a.btn{
    font-family:var(--c-sans)!important;
    font-weight:500!important;
    border-radius:12px!important;
    background:var(--c-warm-sand)!important;
    color:var(--c-charcoal)!important;
    box-shadow:0 0 0 1px var(--c-ring-warm)!important;
    border:none!important;
    transition:box-shadow .2s,background .2s,color .2s!important;
    text-transform:none!important;
    letter-spacing:0!important;
}
.btn:hover{
    box-shadow:0 0 0 1px var(--c-ring-deep),0 4px 24px rgba(0,0,0,.04)!important;
    background:var(--c-warm-sand)!important;
    color:var(--c-near-black)!important;
    transform:none!important;
    opacity:1!important;
}
.btn-primary,a.btn-primary,button.btn-primary{
    background:var(--c-terracotta)!important;
    color:var(--c-ivory)!important;
    box-shadow:0 0 0 1px var(--c-terracotta)!important;
}
.btn-primary:hover{
    background:var(--c-terracotta-dark)!important;
    color:var(--c-ivory)!important;
    box-shadow:0 0 0 1px var(--c-terracotta-dark),0 4px 24px rgba(201,100,66,.18)!important;
}
.btn-outline,a.btn-outline,button.btn-outline{
    background:var(--c-white)!important;
    color:var(--c-near-black)!important;
    box-shadow:0 0 0 1px var(--c-border-warm)!important;
    border:none!important;
}
.btn-outline:hover{
    background:var(--c-warm-sand)!important;
    color:var(--c-near-black)!important;
    box-shadow:0 0 0 1px var(--c-ring-warm)!important;
}
.btn-ghost,a.btn-ghost,button.btn-ghost{
    background:transparent!important;
    color:var(--c-near-black)!important;
    box-shadow:0 0 0 1px var(--c-border-warm)!important;
    border:none!important;
}
.btn-ghost:hover{
    background:var(--c-ivory)!important;
    color:var(--c-near-black)!important;
    box-shadow:0 0 0 1px var(--c-ring-warm)!important;
}
.btn-lg{padding:14px 24px!important;font-size:16px!important;border-radius:14px!important}

/* Botões em superfícies escuras (caso haja seções dark) */
.dark .btn,.bg-dark .btn{background:var(--c-dark-surface)!important;color:var(--c-warm-silver)!important}

/* ─────────────── Inputs / Forms ─────────────── */
input,textarea,select{
    font-family:var(--c-sans)!important;
    background:var(--c-ivory)!important;
    color:var(--c-near-black)!important;
    border:1px solid var(--c-border-warm)!important;
    border-radius:12px!important;
    padding:11px 14px!important;
    transition:border-color .2s,box-shadow .2s!important;
}
input:focus,textarea:focus,select:focus{
    outline:none!important;
    border-color:var(--c-focus-blue)!important;
    box-shadow:0 0 0 3px rgba(56,152,236,.18)!important;
}
input::placeholder,textarea::placeholder{color:var(--c-stone)!important}
label{color:var(--c-charcoal)!important;font-family:var(--c-sans)!important;font-weight:500!important}

/* ─────────────── Cards & containers ─────────────── */
.card,.section-card,.offer-card,.cat-card,.problem-item,.plan-card,
.volume-card,.testimonial-card,.faq-item,.guarantee-box,.demo-window,
.authority-card,.gerador-banner-inner,.doc-card,.profile-card,
.dashboard-card,.tab-panel,.modal-content,
[class*="-card"],[class*="-panel"],[class*="-box"]{
    background:var(--c-ivory)!important;
    border:1px solid var(--c-border-cream)!important;
    border-radius:16px!important;
    box-shadow:rgba(0,0,0,0.04) 0 4px 24px!important;
    color:var(--c-near-black)!important;
}
.card::before,.problem-item::before,.offer-card::before,.cat-card::before,
.volume-card::before,.plan-card::before{display:none!important}

.card h1,.card h2,.card h3,.card h4,
[class*="-card"] h1,[class*="-card"] h2,[class*="-card"] h3,[class*="-card"] h4{
    color:var(--c-near-black)!important;
    font-family:var(--c-serif)!important;
    font-weight:500!important;
}
.card p,[class*="-card"] p{color:var(--c-olive)!important;font-family:var(--c-sans)!important}

/* ─────────────── Section anchors / headings ─────────────── */
.section-label,.d-marker,.vol-tag,.offer-badge,.plan-name,.role,.step-num{
    font-family:var(--c-sans)!important;
    color:var(--c-terracotta)!important;
    text-transform:uppercase!important;
    letter-spacing:.5px!important;
    font-weight:500!important;
}
.offer-badge{
    background:rgba(201,100,66,.08)!important;
    color:var(--c-terracotta)!important;
    padding:5px 10px!important;
    border-radius:8px!important;
    box-shadow:0 0 0 1px rgba(201,100,66,.18)!important;
}

.section-title{font-family:var(--c-serif)!important;font-weight:500!important;color:var(--c-near-black)!important}
.section-desc{font-family:var(--c-sans)!important;color:var(--c-olive)!important;font-weight:400!important}

/* ─────────────── Hero ─────────────── */
.hero{background:var(--c-parchment)!important;color:var(--c-near-black)!important;border-bottom:1px solid var(--c-border-cream)!important}
.hero h1{color:var(--c-near-black)!important}
.hero h1 .gradient,.hero .gradient{
    color:var(--c-terracotta)!important;
    background:none!important;
    -webkit-text-fill-color:var(--c-terracotta)!important;
}
.hero .subtitle{color:var(--c-olive)!important;font-family:var(--c-sans)!important}
.hero-badge{
    background:var(--c-ivory)!important;
    color:var(--c-charcoal)!important;
    box-shadow:0 0 0 1px var(--c-border-warm)!important;
    border:none!important;
    border-radius:24px!important;
}
.hero-badge .dot{background:var(--c-terracotta)!important}
.hero-trust{color:var(--c-stone)!important;font-family:var(--c-sans)!important}
.hero-trust .check{color:var(--c-terracotta)!important}

/* ─────────────── Footer ─────────────── */
.footer-tagline{background:var(--c-dark-surface)!important;color:var(--c-ivory)!important;border-top:1px solid #2a2a28!important}
.footer-tagline .tagline{font-family:var(--c-serif)!important;color:var(--c-ivory)!important;font-weight:500!important}
.footer-tagline .tagline span{color:var(--c-coral)!important;font-style:italic!important}
.footer-legal{background:var(--c-dark-surface)!important;color:var(--c-warm-silver)!important;font-family:var(--c-sans)!important}
.footer-legal a{color:var(--c-warm-silver)!important;text-decoration:underline!important}
.footer-legal a:hover{color:var(--c-coral)!important}

/* ─────────────── Specific platform components ─────────────── */
/* Banner do gerador (dashboard) */
.gerador-banner .gerador-banner-inner,
.gerador-banner-inner{
    background:var(--c-near-black)!important;
    color:var(--c-ivory)!important;
    border:1px solid var(--c-dark-surface)!important;
    border-radius:24px!important;
    box-shadow:rgba(0,0,0,.18) 0 12px 40px!important;
}
.gerador-banner-inner h1,
.gerador-banner-inner h2,
.gerador-banner-inner h3,
.gerador-banner-inner h4{color:var(--c-ivory)!important}
.gerador-banner-inner p{color:var(--c-warm-silver)!important}

/* Volume cards (lista de volumes no dashboard) */
.volume-card .volume-cover,.volume-cover{
    border-radius:12px!important;
    background:var(--c-warm-sand)!important;
    box-shadow:0 0 0 1px var(--c-border-warm),0 4px 24px rgba(0,0,0,.05)!important;
}
.volume-card .vol-tag,.vol-tag{color:var(--c-terracotta)!important;font-family:var(--c-sans)!important;font-weight:600!important}

/* Progresso (dashboard) */
.progress-bar,[class*="progress"]{background:var(--c-warm-sand)!important}
.progress-bar .fill,.progress-fill,[class*="progress"] [class*="fill"]{
    background:linear-gradient(90deg,var(--c-terracotta),var(--c-coral))!important;
}

/* Login / Register formulários */
.login-wrap,.register-wrap,.auth-wrap,
.login-card,.register-card,.auth-card{
    background:var(--c-ivory)!important;
    border:1px solid var(--c-border-cream)!important;
    border-radius:24px!important;
    box-shadow:rgba(0,0,0,.06) 0 8px 32px!important;
    color:var(--c-near-black)!important;
}
.login-wrap h1,.register-wrap h1,.auth-wrap h1{color:var(--c-near-black)!important;font-family:var(--c-serif)!important}

/* Tabs (meuperfil, meusdocumentos) */
.tabs,.tab-list,[class*="tab-"]{font-family:var(--c-sans)!important}
.tab,.tab-item{color:var(--c-olive)!important;font-weight:500!important}
.tab.active,.tab[aria-selected="true"],.tab-item.active{
    color:var(--c-near-black)!important;
    border-bottom:2px solid var(--c-terracotta)!important;
}

/* Chips/tags/badges */
.chip,.tag,.badge,.cat-tag,.cred-chip,.stat-chip,
[class*="-chip"],[class*="-tag"]:not(.vol-tag),[class*="-badge"]:not(.hero-badge):not(.offer-badge){
    background:var(--c-warm-sand)!important;
    color:var(--c-charcoal)!important;
    border:1px solid var(--c-ring-warm)!important;
    border-radius:24px!important;
    padding:5px 11px!important;
    font-family:var(--c-sans)!important;
    font-size:12px!important;
    font-weight:500!important;
    letter-spacing:.12px!important;
    text-transform:none!important;
}

/* Tabelas (meusdocumentos) */
table{background:var(--c-ivory)!important;color:var(--c-near-black)!important;border-radius:16px!important;overflow:hidden!important;border:1px solid var(--c-border-cream)!important;border-collapse:separate!important;border-spacing:0!important}
table thead{background:var(--c-warm-sand)!important}
table th{color:var(--c-charcoal)!important;font-family:var(--c-sans)!important;font-weight:600!important;letter-spacing:.12px!important;text-transform:uppercase!important;font-size:12px!important;padding:14px 16px!important}
table td{color:var(--c-near-black)!important;border-top:1px solid var(--c-border-cream)!important;padding:14px 16px!important;font-family:var(--c-sans)!important}
table tr:hover td{background:var(--c-parchment)!important}

/* Modals */
.modal,.modal-content,.dialog,[class*="modal-"]{background:var(--c-ivory)!important;color:var(--c-near-black)!important;border-radius:20px!important;border:1px solid var(--c-border-cream)!important;box-shadow:rgba(0,0,0,.12) 0 24px 64px!important}
.modal-overlay,.backdrop,[class*="overlay"]{background:rgba(20,20,19,.45)!important;backdrop-filter:blur(4px)!important}

/* Mensagens (alert) */
.alert,.notice,[role="alert"]{font-family:var(--c-sans)!important;border-radius:12px!important;padding:14px 18px!important}
.alert-error,.error,.alert-danger{background:rgba(181,51,51,.08)!important;color:#b53333!important;border:1px solid rgba(181,51,51,.25)!important}
.alert-success,.success{background:rgba(201,100,66,.08)!important;color:var(--c-terracotta)!important;border:1px solid rgba(201,100,66,.22)!important}

/* Avatar / inicial */
.avatar,.user-avatar,.initial-avatar,.user-initial{
    background:var(--c-near-black)!important;
    color:var(--c-ivory)!important;
    border-radius:50%!important;
    font-family:var(--c-serif)!important;
    font-weight:500!important;
}

/* Dropdown menus */
.dropdown-menu,.menu-pop,[class*="dropdown"]{background:var(--c-ivory)!important;color:var(--c-near-black)!important;border:1px solid var(--c-border-cream)!important;border-radius:14px!important;box-shadow:rgba(0,0,0,.08) 0 12px 40px!important}
.dropdown-menu a,.menu-pop a{color:var(--c-near-black)!important;font-family:var(--c-sans)!important}
.dropdown-menu a:hover,.menu-pop a:hover{background:var(--c-warm-sand)!important;color:var(--c-near-black)!important}

/* FAQ */
.faq-item{background:var(--c-ivory)!important;border:1px solid var(--c-border-cream)!important;border-radius:14px!important}
.faq-item[open]{box-shadow:rgba(0,0,0,.05) 0 4px 24px!important}
.faq-item summary{font-family:var(--c-serif)!important;color:var(--c-near-black)!important;font-weight:500!important}
.faq-item summary::after{color:var(--c-terracotta)!important}
.faq-item .faq-body{color:var(--c-charcoal)!important;font-family:var(--c-sans)!important}

/* Helpers genéricos para texto colorido legado */
[style*="color:var(--accent)"],[style*="color: var(--accent)"]{color:var(--c-terracotta)!important}
[style*="color:var(--green)"],[style*="color: var(--green)"]{color:var(--c-terracotta)!important}
[style*="color:var(--coral)"],[style*="color: var(--coral)"]{color:var(--c-coral)!important}
[style*="color:var(--blue)"],[style*="color: var(--blue)"]{color:var(--c-olive)!important}
[style*="color:var(--orange)"],[style*="color: var(--orange)"]{color:var(--c-coral)!important}
[style*="color:var(--purple)"],[style*="color: var(--purple)"]{color:var(--c-olive)!important}

/* Force fonte serif em qualquer .gradient (texto destacado) */
.gradient{
    background:none!important;
    -webkit-text-fill-color:var(--c-terracotta)!important;
    color:var(--c-terracotta)!important;
}
