/* Blogsite v1.1.0 - Modernização visual global */
:root{
  --bg:#050812;
  --bg-soft:#090f1d;
  --surface:#0d1628;
  --surface-2:#111d33;
  --surface-glass:rgba(13,22,40,.78);
  --text:#f4f7ff;
  --muted:#9baac4;
  --line:rgba(148,163,184,.15);
  --line-strong:rgba(96,165,250,.28);
  --accent:#4f8cff;
  --accent-2:#37d6d0;
  --accent-3:#8b5cf6;
  --good:#34d399;
  --warn:#fbbf24;
  --danger:#fb7185;
  --shadow-sm:0 10px 30px rgba(0,0,0,.18);
  --shadow-lg:0 24px 70px rgba(0,0,0,.34);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:26px;
}

html{scroll-behavior:smooth}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Arial,sans-serif;
  line-height:1.6;
  background:
    radial-gradient(900px 500px at 7% -10%,rgba(79,140,255,.18),transparent 62%),
    radial-gradient(800px 520px at 94% 0%,rgba(55,214,208,.12),transparent 60%),
    linear-gradient(180deg,#050812 0%,#070c16 55%,#050812 100%);
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,#000,transparent 82%);
}
::selection{background:rgba(79,140,255,.38);color:#fff}
.wrap{max-width:1240px;padding-left:24px;padding-right:24px}
.main-content{padding-top:34px;padding-bottom:60px}

/* Cabeçalho público */
.topbar{background:rgba(5,8,18,.72);border-bottom:1px solid var(--line);backdrop-filter:blur(20px) saturate(150%)}
.topbar.scrolled{background:rgba(5,8,18,.92);box-shadow:0 12px 40px rgba(0,0,0,.28)}
.header-wrap{height:76px}
.header-spacer{height:76px}
.site-logo{height:46px;filter:drop-shadow(0 8px 18px rgba(79,140,255,.18))}
.brand-text{font-size:19px;letter-spacing:-.25px;background:linear-gradient(90deg,#fff 5%,#9ec5ff 80%);-webkit-background-clip:text;background-clip:text}
.nav-link{padding:10px 15px;border:1px solid transparent;border-radius:12px;font-weight:650}
.nav-link:hover{background:rgba(255,255,255,.045);border-color:var(--line)}
.nav-link.active{background:linear-gradient(135deg,rgba(79,140,255,.17),rgba(55,214,208,.08));border-color:rgba(79,140,255,.26)}
.nav-indicator{display:none}
.header-contacts{display:flex;align-items:center;gap:8px}
.contact-header-link{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.035);color:var(--muted);transition:.2s ease}
.contact-header-link:hover{color:#fff;border-color:var(--line-strong);background:rgba(79,140,255,.12);transform:translateY(-2px)}

/* Hero */
.hero-premium{position:relative;isolation:isolate;overflow:hidden;min-height:560px;padding:72px 58px;border:1px solid var(--line);border-radius:32px;background:linear-gradient(145deg,rgba(17,29,51,.88),rgba(7,12,22,.76));box-shadow:var(--shadow-lg)}
.hero-premium::before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;right:-130px;top:-170px;background:radial-gradient(circle,rgba(79,140,255,.28),transparent 66%);z-index:-1}
.hero-premium::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,.035),transparent 33%);z-index:-1}
.hero-content{max-width:650px}
.hero-badge,.section-tag{border:1px solid rgba(79,140,255,.25);background:rgba(79,140,255,.09);color:#b9d2ff;box-shadow:none}
.hero-title{font-size:clamp(2.65rem,5vw,4.65rem);line-height:1.02;letter-spacing:-.055em;margin:24px 0}
.gradient-text{background:linear-gradient(95deg,#79aaff,#48dfd6 62%,#b496ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-description{font-size:1.08rem;max-width:610px;color:#b0bdd2}
.hero-cta{gap:12px;margin-top:30px}
.social-proof{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
.code-window{border:1px solid rgba(148,163,184,.18);background:#07101f;box-shadow:0 32px 70px rgba(0,0,0,.36);border-radius:20px;transform:perspective(1000px) rotateY(-4deg) rotateX(2deg)}

/* Componentes globais */
.card,.product-card,.blog-card,.step,.testimonial-card,.stat-card,.feature-card,.trust-card,.admin-card,.report-card{
  border:1px solid var(--line)!important;
  background:linear-gradient(150deg,rgba(17,29,51,.88),rgba(10,17,30,.88))!important;
  box-shadow:var(--shadow-sm);
  border-radius:var(--radius-md)!important;
}
.card:hover,.product-card:hover,.blog-card:hover,.step:hover,.testimonial-card:hover,.feature-card:hover{
  border-color:rgba(79,140,255,.30)!important;
  transform:translateY(-4px);
  box-shadow:0 20px 52px rgba(0,0,0,.30);
}
.btn,button.btn,a.btn{min-height:44px;border-radius:12px;font-weight:750;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary,.btn-glow{background:linear-gradient(135deg,var(--accent),#376be8)!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 12px 28px rgba(79,140,255,.24)!important}
.btn-secondary,.btn-ghost{background:rgba(255,255,255,.045)!important;border:1px solid var(--line)!important;color:#e7eefc!important}
.btn-secondary:hover,.btn-ghost:hover{border-color:var(--line-strong)!important;background:rgba(79,140,255,.09)!important}
.btn-danger{background:rgba(251,113,133,.13)!important;border:1px solid rgba(251,113,133,.30)!important;color:#fecdd3!important}

h1,h2,h3,h4{letter-spacing:-.035em;line-height:1.15}
.section-header-center h2,.section-title{font-size:clamp(1.85rem,3vw,2.65rem);margin-bottom:12px}
.section-header-center{margin-bottom:34px}
section{scroll-margin-top:96px}

/* Catálogo e blog */
.products-grid,.blog-grid{gap:22px}
.product-card{overflow:hidden}
.product-image-container,.product-image-wrapper{background:linear-gradient(145deg,#101b30,#09111f)}
.product-image{transition:transform .45s ease}
.product-card:hover .product-image{transform:scale(1.035)}
.product-info{padding:22px!important}
.product-title{font-size:1.14rem;line-height:1.3}
.product-description{color:var(--muted);line-height:1.65}
.product-category,.feature-tag,.trust-badge,.tag-chip,.filter-chip,.badge{border:1px solid var(--line)!important;background:rgba(255,255,255,.04)!important;border-radius:999px!important}
.btn-product{border-radius:11px;background:rgba(79,140,255,.12);border:1px solid rgba(79,140,255,.25);color:#dbe8ff}
.btn-product:hover{background:rgba(79,140,255,.20)}
.product-price .price-value{letter-spacing:-.04em}
.blog-card img,.related-post-thumb{border-radius:14px}
.post-content{font-size:1.04rem;line-height:1.82;color:#cbd5e1}
.post-content h2,.post-content h3{color:#fff;margin-top:1.8em}
.post-content pre{border:1px solid var(--line);border-radius:14px;background:#050b15;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.post-content code{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}

/* Formulários e tabelas */
.input,input,select,textarea{border:1px solid var(--line)!important;background:rgba(4,9,18,.62)!important;color:var(--text)!important;border-radius:12px!important;outline:none;transition:.18s ease}
.input:focus,input:focus,select:focus,textarea:focus{border-color:rgba(79,140,255,.60)!important;box-shadow:0 0 0 4px rgba(79,140,255,.10)!important;background:rgba(7,14,27,.92)!important}
input::placeholder,textarea::placeholder{color:#65738d}
.table{border-collapse:separate!important;border-spacing:0 8px!important}
.table th{color:#9fb0cb!important;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;background:rgba(255,255,255,.035)!important}
.table td,.table th{border-color:var(--line)!important}
.table tr td:first-child,.table tr th:first-child{border-radius:12px 0 0 12px}
.table tr td:last-child,.table tr th:last-child{border-radius:0 12px 12px 0}

/* Administração */
body.admin-modern{background:#050812}
.admin-shell-topbar{position:sticky!important;top:0!important;background:rgba(5,8,18,.90)!important;backdrop-filter:blur(18px);border-bottom:1px solid var(--line)!important;box-shadow:0 10px 34px rgba(0,0,0,.18)}
.admin-header-inner{min-height:70px}
.admin-brand-badge{display:inline-flex;align-items:center;gap:9px;padding:7px 11px;border-radius:12px;background:rgba(79,140,255,.10);border:1px solid rgba(79,140,255,.20);font-size:.78rem;color:#bcd3ff}
.admin-top-actions a{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.admin-top-actions a:hover{border-color:var(--line-strong);background:rgba(79,140,255,.09)}
.admin-nav{position:sticky;top:71px;z-index:50;margin:0 -24px 30px!important;padding:14px 24px!important;background:rgba(5,8,18,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)!important;overflow-x:auto;flex-wrap:nowrap!important}
.admin-nav-link{flex:0 0 auto;padding:10px 15px!important;border:1px solid transparent;border-radius:11px!important;font-weight:650!important}
.admin-nav-link:hover{background:rgba(255,255,255,.045)!important;border-color:var(--line)}
.admin-nav-link.active{background:linear-gradient(135deg,rgba(79,140,255,.22),rgba(55,214,208,.10))!important;border-color:rgba(79,140,255,.30)!important;box-shadow:none!important}

/* Rodapé */
.footer,.site-footer{border-top:1px solid var(--line);background:rgba(4,7,14,.72)}

/* Acessibilidade e movimento */
:focus-visible{outline:2px solid #79aaff;outline-offset:3px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

@media(max-width:980px){
  .hero-premium{padding:54px 34px;min-height:auto}
  .code-window{transform:none}
  .wrap{padding-left:18px;padding-right:18px}
}
@media(max-width:768px){
  .header-wrap{height:68px}.header-spacer{height:68px}.site-logo{height:39px}.brand-text{font-size:16px}
  .hero-premium{padding:38px 22px;border-radius:23px}.hero-title{font-size:clamp(2.15rem,12vw,3.1rem)}.hero-description{font-size:1rem}
  .hero-cta{flex-direction:column}.hero-cta .btn{width:100%}
  .header-contacts{display:none}
  .mobile-menu-panel{width:min(88vw,340px);background:#09111f}
  .admin-nav{top:69px;margin-left:-18px!important;margin-right:-18px!important;padding-left:18px!important;padding-right:18px!important;justify-content:flex-start!important}
  .admin-nav-link span{display:inline!important}
  .table{display:block;overflow-x:auto;white-space:nowrap}
}
