/* VELYRA v4.1 — Design System Reset
   Carregado por último para estabilizar header, tipografia, containers e responsividade. */
:root{
  --v41-bg:#08070c;--v41-surface:#100d16;--v41-surface-2:#15111c;--v41-line:rgba(255,255,255,.09);
  --v41-text:#f8f3eb;--v41-muted:#a8a0af;--v41-gold:#c8a65b;--v41-radius:18px;--v41-shell:1440px;
}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
.wrap{width:100%;max-width:var(--v41-shell)!important;margin-inline:auto!important}
.section,.hero,.page-hero,.store-hero,.search-panel{padding-left:clamp(20px,4.5vw,72px)!important;padding-right:clamp(20px,4.5vw,72px)!important}
h1{font-size:clamp(2.35rem,4.4vw,4.75rem)!important;line-height:1.01!important;letter-spacing:-.045em!important}
h2{font-size:clamp(1.8rem,3vw,3.15rem)!important;line-height:1.05!important}
h3{line-height:1.15!important}
.lead{font-size:clamp(.98rem,1.15vw,1.15rem)!important}

/* Header definitivo */
.top.v41-top{height:auto!important;min-height:72px!important;padding:0!important;background:rgba(7,6,11,.92)!important;border-bottom:1px solid var(--v41-line)!important;backdrop-filter:blur(22px) saturate(135%)!important}
.v41-header-inner{width:min(calc(100% - 40px),var(--v41-shell));min-height:72px;margin:auto;display:flex;align-items:center;gap:28px}
.v41-top .brand{flex:0 0 auto;min-width:max-content}
.v41-top .brand img{width:28px;height:34px}
.v41-top .brand b{font-size:15px}.v41-top .brand small{font-size:6.5px}
.v41-main-nav{margin-left:auto;display:flex!important;align-items:center!important;justify-content:flex-end;gap:16px!important;min-width:0;font-size:12.5px!important;color:#c9c2ce!important}
.v41-nav-group{display:flex;align-items:center;gap:16px;min-width:0}
.v41-nav-group+.v41-nav-group{padding-left:16px;border-left:1px solid rgba(255,255,255,.08)}
.v41-nav-media a{font-weight:750;color:#eee5f0!important}
.v41-main-nav a{white-space:nowrap;line-height:1;padding:10px 0;transition:color .18s ease,opacity .18s ease}
.v41-main-nav a:hover{color:var(--gold)!important}
.v41-main-nav .admin-pill{padding:9px 12px!important}
.v41-logout{opacity:.72}
.v41-nav-toggle{display:none!important;width:42px;height:42px;padding:0!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.03)!important;box-shadow:none!important;border-radius:12px!important;flex-direction:column;gap:5px}
.v41-nav-toggle span{display:block;width:18px;height:1.5px;background:#f4edf4;border-radius:2px}

/* Consistência global */
.card,.form,.review-card,.store-feature,.showcase-card{border-color:var(--v41-line)!important;box-shadow:0 16px 44px rgba(0,0,0,.22)!important}
.btn,button{border-radius:11px!important;min-height:42px}
.field input,.field textarea,.field select,select,input,textarea{font-size:14px!important}
.book-card h3{font-size:clamp(1rem,1.25vw,1.18rem)!important;line-height:1.18!important}
.book-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))!important;gap:clamp(16px,2vw,24px)!important}
footer{max-width:calc(var(--v41-shell) - 80px)!important;margin-inline:auto!important}

/* Admin: largura e hierarquia previsíveis */
.admin-shell{max-width:1280px!important;margin-inline:auto!important;padding-left:24px!important;padding-right:24px!important}
.admin-sidebar{flex:0 0 250px!important}
.admin-content{min-width:0!important;flex:1 1 auto!important}
.admin-content h1{font-size:clamp(2.2rem,4vw,4rem)!important}

/* Tablet */
@media (max-width:1180px){
  .v41-header-inner{width:min(calc(100% - 28px),var(--v41-shell));gap:16px}
  .v41-main-nav{gap:11px!important;font-size:11.5px!important}.v41-nav-group{gap:11px}.v41-nav-group+.v41-nav-group{padding-left:11px}
  .v41-nav-account>a:not(.admin-pill):not(.v41-logout){display:none}
}

/* Menu mobile/tablet */
@media (max-width:900px){
  .top.v41-top{position:sticky!important;top:0!important}
  .v41-header-inner{min-height:64px;position:relative}
  .v41-top .brand img{width:25px;height:30px}
  .v41-nav-toggle{display:flex!important;margin-left:auto}
  .v41-main-nav{display:none!important;position:absolute;top:calc(100% + 8px);left:0;right:0;margin:0!important;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(12,10,17,.985);box-shadow:0 26px 70px rgba(0,0,0,.5);flex-direction:column;align-items:stretch!important;gap:0!important;z-index:80}
  .v41-main-nav.is-open{display:flex!important}
  .v41-nav-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px 0!important;border:0!important}
  .v41-nav-group+.v41-nav-group{border-top:1px solid rgba(255,255,255,.07)!important}
  .v41-nav-account>a{display:flex!important}
  .v41-main-nav a{padding:12px 13px;border-radius:10px;background:rgba(255,255,255,.025)}
  .v41-main-nav .admin-pill{padding:12px 13px!important;border-radius:10px!important}
  .section,.hero,.page-hero,.store-hero,.search-panel{padding-left:20px!important;padding-right:20px!important}
  .grid,.grid.three,.feature-strip,.benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .split,.store-hero,.hero{grid-template-columns:1fr!important}
  .admin-shell{padding-inline:14px!important}
}

@media (max-width:600px){
  .v41-header-inner{width:calc(100% - 22px)}
  .v41-top .brand span small{display:none}
  .v41-nav-group{grid-template-columns:1fr}
  .section,.hero,.page-hero,.store-hero,.search-panel{padding-left:16px!important;padding-right:16px!important}
  h1{font-size:clamp(2.05rem,10vw,3.15rem)!important}
  h2{font-size:clamp(1.65rem,8vw,2.35rem)!important}
  .grid,.grid.three,.feature-strip,.benefit-grid{grid-template-columns:1fr!important}
  .book-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .book-card h3{font-size:.98rem!important}
  footer{margin-bottom:78px!important;padding-inline:16px!important}
}
