/* =========================================================
   Anymatch — base: tema (claro e escuro), reset, botões e logo.
   Carregado por todas as páginas.
   ========================================================= */
:root{
  --bg:#F5ECDD;
  --bg-deep:#EEE0C8;
  --surface:#FFFFFF;
  --surface-2:#FBF6EC;
  --ink:#2A2118;
  --ink-soft:#6B5C4A;
  --ink-faint:#9A8B78;
  --line:rgba(58,46,34,.12);
  --honey:#B8823A;
  --moss:#5F6F52;
  --moss-deep:#47543C;

  --brand-1:#E8873A;   /* laranja do cachorro do logo */
  --brand-2:#EF5A7A;   /* rosa do coração do logo */
  --brand:linear-gradient(135deg,var(--brand-1),var(--brand-2));

  --nope:#EC4E5E;
  --like:#2FBF86;
  --super:#3A9BE8;
  --rewind:#E9A63A;
  --share:#9B6BDB;
  --err-ink:#B3263A;
  --ok-ink:#1F7A55;

  --shadow-card:0 10px 30px rgba(42,33,24,.18), 0 2px 6px rgba(42,33,24,.10);
  --shadow-btn:0 4px 14px rgba(42,33,24,.14);
  --radius:18px;
  --side-w:360px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#15110D; --bg-deep:#1E1813; --surface:#231C16; --surface-2:#2B231C;
    --ink:#F5ECDD; --ink-soft:#C9B9A3; --ink-faint:#8D7E6C; --line:rgba(245,236,221,.12); --err-ink:#FF8A96; --ok-ink:#5FD6A4;
    --shadow-card:0 10px 30px rgba(0,0,0,.5); --shadow-btn:0 4px 14px rgba(0,0,0,.4);
  }
}
:root[data-theme="dark"]{
  --bg:#15110D; --bg-deep:#1E1813; --surface:#231C16; --surface-2:#2B231C;
  --ink:#F5ECDD; --ink-soft:#C9B9A3; --ink-faint:#8D7E6C; --line:rgba(245,236,221,.12); --err-ink:#FF8A96; --ok-ink:#5FD6A4;
  --shadow-card:0 10px 30px rgba(0,0,0,.5); --shadow-btn:0 4px 14px rgba(0,0,0,.4);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:'Nunito Sans',system-ui,sans-serif; line-height:1.5;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Fraunces',serif;font-weight:600;line-height:1.1;margin:0}
p{margin:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0}
[hidden]{display:none !important}
:focus-visible{outline:3px solid var(--brand-1);outline-offset:3px;border-radius:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.icon{width:24px;height:24px;flex-shrink:0}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}

/* ---------- botões base ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 26px;border-radius:100px;font-weight:800;font-size:1rem;
  transition:transform .15s ease, filter .15s ease, background .15s ease;
  white-space:nowrap;
}
.btn:active{transform:scale(.97)}
.btn-brand{background:var(--brand);color:#fff;box-shadow:0 6px 18px rgba(239,90,122,.32)}
.btn-brand:hover{filter:brightness(1.06)}
.btn-white{background:#fff;color:#2A2118}
.btn-white:hover{background:#f3f3f3}
.btn-outline{border:2px solid var(--line);color:var(--ink)}
.btn-outline:hover{border-color:var(--ink-soft)}
.btn-ghost-light{border:2px solid rgba(255,255,255,.7);color:#fff}
.btn-ghost-light:hover{background:rgba(255,255,255,.12)}
.btn-sm{padding:9px 16px;font-size:.9rem}
.btn-block{width:100%}
.btn-danger{color:var(--nope);border:2px solid color-mix(in srgb,var(--nope) 40%,transparent)}
.btn[disabled]{opacity:.45;pointer-events:none}

.logo{display:flex;align-items:center;gap:10px;font-family:'Fraunces',serif;font-weight:600;font-size:1.45rem}
.logo img{width:36px;height:36px;border-radius:10px;object-fit:cover}
.logo em{font-style:italic;background:var(--brand);-webkit-background-clip:text;background-clip:text;color:transparent}

/* =========================================================
   LANDING
   ========================================================= */
.landing{background:#120E0A;color:#fff}
