/* Eleven Host - tokens e componentes (roadmap #55). Consolida os tokens do #56 (mesmos nomes --eh-*).
   Escopo: variaveis em .eh-scope; estilos so em classes .eh-*. Nunca body, :root ou classes do tema apexhost. */
.eh-scope{
  /* cor monocromatica */
  --eh-bg:#0a0a0a; --eh-card:#171717; --eh-card-2:#1f1f1f; --eh-line:#2e2e2e; --eh-line-strong:#8a8a8a;
  --eh-text:#f5f5f5; --eh-muted:#bdbdbd; --eh-btn-bg:#ffffff; --eh-btn-fg:#0a0a0a;
  --eh-btn-bg-hover:#d4d4d4; --eh-dis-bg:#262626; --eh-dis-fg:#a3a3a3;
  --eh-focus:#ffffff; --eh-warn:#d4d4d4;
  /* tipografia */
  --eh-font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --eh-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --eh-fs-sm:.9375rem; --eh-fs-md:1rem; --eh-fs-lg:1.25rem; --eh-fs-xl:1.75rem; --eh-fs-2xl:2.5rem;
  --eh-lh-tight:1.15; --eh-lh-body:1.6;
  /* espacamento base 8px */
  --eh-s1:.25rem; --eh-s2:.5rem; --eh-s3:.75rem; --eh-s4:1rem; --eh-s5:1.5rem; --eh-s6:2rem; --eh-s7:3rem;
  /* forma e movimento */
  --eh-radius:12px; --eh-radius-sm:8px; --eh-focus-w:3px; --eh-dur:180ms; --eh-ease:cubic-bezier(.2,.7,.2,1);
  background:var(--eh-bg); color:var(--eh-text); font-family:var(--eh-font); font-size:var(--eh-fs-md);
  line-height:var(--eh-lh-body); padding:var(--eh-s6) var(--eh-s4);
}
.eh-scope *,.eh-scope *::before,.eh-scope *::after{box-sizing:border-box}
.eh-wrap{max-width:960px;margin:0 auto}
.eh-h1{font-size:var(--eh-fs-xl);line-height:var(--eh-lh-tight);margin:0 0 var(--eh-s2)}
.eh-h2{font-size:var(--eh-fs-lg);line-height:var(--eh-lh-tight);margin:var(--eh-s7) 0 var(--eh-s3);border-top:1px solid var(--eh-line);padding-top:var(--eh-s5)}
.eh-muted{color:var(--eh-muted);font-size:var(--eh-fs-sm)}
.eh-code{font-family:var(--eh-mono);font-size:var(--eh-fs-sm);color:var(--eh-muted)}
.eh-row{display:flex;flex-wrap:wrap;gap:var(--eh-s4);align-items:center}
.eh-grid{display:grid;gap:var(--eh-s4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}

/* botao */
.eh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--eh-s2) var(--eh-s5);
  border-radius:var(--eh-radius-sm);border:2px solid var(--eh-btn-bg);font:600 var(--eh-fs-md)/1 var(--eh-font);
  text-decoration:none;cursor:pointer;transition:background var(--eh-dur) var(--eh-ease),color var(--eh-dur) var(--eh-ease)}
.eh-btn--primary{background:var(--eh-btn-bg);color:var(--eh-btn-fg)}
.eh-btn--primary:hover{background:var(--eh-btn-bg-hover);border-color:var(--eh-btn-bg-hover)}
.eh-btn--secondary{background:transparent;color:var(--eh-text);border-color:var(--eh-line-strong)}
.eh-btn--secondary:hover{border-color:var(--eh-btn-bg);background:var(--eh-card-2)}
.eh-btn:disabled,.eh-btn[aria-disabled="true"]{background:var(--eh-dis-bg);color:var(--eh-dis-fg);border-color:var(--eh-dis-bg);cursor:not-allowed}
.eh-btn:focus-visible,.eh-input:focus-visible{outline:var(--eh-focus-w) solid var(--eh-focus);outline-offset:3px}

/* card de plano */
.eh-card{background:var(--eh-card);border:1px solid var(--eh-line);border-radius:var(--eh-radius);padding:var(--eh-s5);
  display:flex;flex-direction:column;gap:var(--eh-s3);transition:border-color var(--eh-dur) var(--eh-ease)}
.eh-card:hover{border-color:var(--eh-line-strong)}
.eh-card--soon{border-style:dashed}
.eh-card__title{font-size:var(--eh-fs-lg);margin:0}
.eh-card__price{font-size:var(--eh-fs-md);font-weight:700;color:var(--eh-text);border:1px dashed var(--eh-line-strong);border-radius:var(--eh-radius-sm);padding:var(--eh-s2) var(--eh-s3)}
.eh-card__list{margin:0;padding-left:var(--eh-s5);color:var(--eh-muted);font-size:var(--eh-fs-sm)}

/* badge */
.eh-badge{display:inline-block;align-self:flex-start;padding:var(--eh-s1) var(--eh-s3);border-radius:999px;
  font-size:var(--eh-fs-sm);font-weight:600;border:1px solid var(--eh-line-strong);color:var(--eh-text);background:var(--eh-card-2)}
.eh-badge--soldout{background:var(--eh-dis-bg);color:var(--eh-muted)}
.eh-badge--soon{border-style:dashed;background:transparent}

/* campo */
.eh-field{display:flex;flex-direction:column;gap:var(--eh-s2);max-width:360px}
.eh-label{font-weight:600;font-size:var(--eh-fs-md)}
.eh-hint{color:var(--eh-muted);font-size:var(--eh-fs-sm)}
.eh-input{min-height:44px;padding:var(--eh-s2) var(--eh-s3);background:var(--eh-bg);color:var(--eh-text);
  border:2px solid var(--eh-line-strong);border-radius:var(--eh-radius-sm);font:var(--eh-fs-md) var(--eh-font)}
.eh-input:hover{border-color:var(--eh-text)}
.eh-input:disabled{background:var(--eh-dis-bg);color:var(--eh-dis-fg);border-color:var(--eh-dis-bg);cursor:not-allowed}

/* aviso */
.eh-alert{background:var(--eh-card-2);border:1px solid var(--eh-line-strong);border-left:6px solid var(--eh-warn);
  border-radius:var(--eh-radius-sm);padding:var(--eh-s4);font-size:var(--eh-fs-md)}
.eh-alert strong{display:block;margin-bottom:var(--eh-s1)}

@media (prefers-reduced-motion:reduce){
  .eh-scope *,.eh-scope *::before,.eh-scope *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
