/* XALO STUDIO V12.6 FINAL — controlled AdSense presentation
   Custom/manual placements only. Ads remain outside hero/action surfaces and editor controls. */

:root{--xalo-ad-max:970px;--xalo-ad-multiplex:1120px}

/* Company / product pages */
.ad-shell{
  width:min(calc(100% - 40px),1240px)!important;
  margin:clamp(34px,5vw,72px) auto!important;
  padding:0!important;
  position:relative;
  isolation:isolate;
}
.ad-shell.compact{padding:0!important}
.ad-label{
  display:block;
  width:100%;
  margin:0 auto 10px!important;
  text-align:center;
  font-size:.52rem!important;
  line-height:1;
  font-weight:700;
  letter-spacing:.2em!important;
  text-transform:uppercase;
  color:rgba(184,197,216,.50)!important;
}
.ad-card{
  width:100%;
  max-width:var(--xalo-ad-max)!important;
  min-height:90px;
  margin:0 auto!important;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:18px!important;
  background:
    radial-gradient(60% 150% at 50% -20%,rgba(116,162,255,.055),transparent 65%),
    linear-gradient(180deg,rgba(255,255,255,.022),rgba(255,255,255,.010))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 24px 60px rgba(0,0,0,.10);
}
.ad-shell.multiplex .ad-card{max-width:var(--xalo-ad-multiplex)!important;min-height:130px}
.ad-card .adsbygoogle{display:block!important;width:100%!important;min-width:0;max-width:100%;margin:0 auto}

/* Empty manual placements leave no visual hole. */
.ad-shell:has(.adsbygoogle:empty),
.ad-shell:has(.adsbygoogle[data-ad-status="unfilled"]){display:none!important}
.ad-shell:has(.adsbygoogle[data-ad-status="filled"]){display:block!important}

/* A filled placement gets a quiet divider; never a loud card competing with content. */
.ad-shell:has(.adsbygoogle[data-ad-status="filled"])::before,
.ad-shell:has(.adsbygoogle[data-ad-status="filled"])::after{
  content:"";position:absolute;left:50%;width:min(720px,82%);height:1px;transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.055),transparent);pointer-events:none
}
.ad-shell:has(.adsbygoogle[data-ad-status="filled"])::before{top:-18px}
.ad-shell:has(.adsbygoogle[data-ad-status="filled"])::after{bottom:-18px}

/* Creative Studio: editorial ad lanes between content chapters. */
.xalo-ad-zone{width:100%;margin:0!important;background:transparent!important}
.xalo-ad-zone.is-filled{padding:clamp(34px,4.8vw,68px) 0!important}
.xalo-ad-zone.is-unfilled{display:none!important}
.xalo-ad-shell.shell{width:min(calc(100% - 40px),1180px)!important}
.xalo-ad-shell{margin-inline:auto;min-width:0}
.xalo-ad-heading{
  color:rgba(213,209,201,.43)!important;
  font-size:7px!important;
  font-weight:700;
  letter-spacing:.22em!important;
}
.xalo-ad-zone.is-filled .xalo-ad-heading{margin-bottom:14px!important}
.xalo-ad-slot{display:block!important;width:100%!important;max-width:970px;margin:0 auto!important;min-width:0}
.xalo-ad-zone--multiplex .xalo-ad-slot{max-width:1120px}
.xalo-ad-zone::before,.xalo-ad-zone::after{width:min(1120px,calc(100% - 48px))!important;opacity:.58!important}

/* XALO PHOTO editor: sponsor strip stays outside canvas/tools and visually subordinate. */
.editor-sponsor{
  grid-template-columns:86px minmax(0,720px)!important;
  gap:12px!important;
  padding:7px 14px!important;
  background:linear-gradient(180deg,#080b10,#070a0f)!important;
}
.editor-sponsor>span{font-size:.5rem!important;letter-spacing:.16em!important;color:#556174!important}
.editor-ad-slot{
  min-height:56px!important;max-height:64px!important;
  border-radius:9px!important;border-color:rgba(255,255,255,.05)!important;
  background:rgba(255,255,255,.012)!important
}
.editor-ad-slot .adsbygoogle{width:100%!important;max-width:720px;margin:0 auto!important}
.editor-sponsor:has(.adsbygoogle[data-ad-status="unfilled"]){display:none!important}

@media(max-width:720px){
  .ad-shell{width:min(calc(100% - 28px),1240px)!important;margin:30px auto!important}
  .ad-card{border-radius:14px!important;min-height:72px}
  .ad-shell.multiplex .ad-card{min-height:100px}
  .ad-label{font-size:.48rem!important;margin-bottom:7px!important}
  .xalo-ad-zone.is-filled{padding:26px 0!important}
  .xalo-ad-shell.shell{width:min(calc(100% - 28px),1180px)!important}
  .xalo-ad-zone::before,.xalo-ad-zone::after{width:calc(100% - 28px)!important}
}

@media(prefers-reduced-motion:reduce){.ad-card,.xalo-ad-zone,.xalo-ad-shell{transition:none!important}}
