/* AMZX Link v1.5.592 — REBASE LIMPO / CONTRATO ESTRUTURAL GLOBAL
   Escopo: TODAS as Bios públicas, temas, Modelos Prontos e widgets.
   Esta camada organiza geometria e responsividade; NÃO fixa paleta e NÃO altera dados. */
:root{
 --amzx-layout-shell-max:1180px;
 --amzx-layout-content-max:1040px;
 --amzx-layout-gap:16px;
 --amzx-layout-card-gap:14px;
 --amzx-layout-safe-inline:clamp(10px,2.2vw,22px);
}
html,body{max-width:100%;overflow-x:hidden}
#profile.amzx-profile-shell{
 box-sizing:border-box!important;
 width:min(calc(100% - 24px),var(--amzx-layout-shell-max))!important;
 max-width:var(--amzx-layout-shell-max)!important;
 margin-inline:auto!important;
 padding-inline:var(--amzx-layout-safe-inline)!important;
}
#profile.amzx-profile-shell>.row{
 width:100%!important;max-width:100%!important;
 margin-inline:0!important;
}
#profile.amzx-profile-shell>.row>.amzx-profile-head,
#profile.amzx-profile-shell>.row>.col-md-6.offset-md-3,
#profile.amzx-profile-shell>.row>.col-md-6,
#profile.amzx-profile-shell>.row>.col-12{
 box-sizing:border-box!important;
 min-width:0!important;
 margin-left:auto!important;margin-right:auto!important;
}
/* O topo nunca fica preso ao antigo limite de 820px do guard legado. */
#profile.amzx-profile-shell>.row:first-child>.amzx-profile-head,
#profile.amzx-profile-shell>.row:first-child>.col-12{
 width:100%!important;max-width:100%!important;flex:0 0 100%!important;
}
/* Conteúdo público: largura útil única e previsível em qualquer tema. */
#profile.amzx-profile-shell>.row:nth-of-type(2)>.col-md-6.offset-md-3,
#profile.amzx-profile-shell>.row:nth-of-type(2)>.col-md-6{
 width:100%!important;max-width:var(--amzx-layout-content-max)!important;flex:0 0 100%!important;
 padding-inline:0!important;
}
/* Títulos de seção: respiram, não viram cards gigantes nem ficam colados ao item seguinte. */
#profile #content>.amzx-layout-heading{padding-block:10px 2px!important}
#profile #content>.amzx-layout-heading :where(h1,h2,h3,h4){margin:0!important;line-height:1.15!important}

/* Layout 1/3: mantém identidade do tema e apenas corrige largura/alinhamento. */
body:not(.amzx-model-collection-pro20) #profile .layout1,
body:not(.amzx-model-collection-pro20) #profile .layout3{width:100%!important;max-width:100%!important;margin-inline:auto!important}
body:not(.amzx-model-collection-pro20) #profile .layout3>.amzx-header-banner{width:100%!important;max-width:100%!important;overflow:hidden!important}
body:not(.amzx-model-collection-pro20) #profile .layout3>.amzx-header-banner>.d-flex{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important;gap:16px!important}

/* Layout 2 padrão: um hero integrado e organizado para TODOS os temas comuns.
   Modelos PRO20 mantêm suas receitas próprias. */
@media(min-width:781px){
 body:not(.amzx-model-collection-pro20) #profile .layout2{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:auto!important;
  justify-items:center!important;
  align-items:start!important;
  width:100%!important;max-width:100%!important;
  overflow:visible!important;
 }
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-header-banner{
  grid-column:1!important;grid-row:1!important;
  width:100%!important;max-width:100%!important;
  min-height:clamp(250px,29vw,360px)!important;height:clamp(250px,29vw,360px)!important;
  border-radius:clamp(18px,2.3vw,30px)!important;
  overflow:hidden!important;position:relative!important;
 }
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-header-avatar-wrap{
  grid-column:1!important;grid-row:1 / span 2!important;
  align-self:end!important;justify-self:center!important;
  margin:0 0 -84px!important;z-index:12!important;
 }
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-profile-meta-stack-v15188{margin-top:96px!important}
 body:not(.amzx-model-collection-pro20) #profile .layout2>:is(.amzx-profile-meta-stack-v15188,h3,.amzx-profile-name-v15188,.amzx-model-role-v15561,.item,.amzx-profile-header-actions-v15194,.amzx-profile-header-metrics-v15194,#social){
  grid-column:1!important;max-width:min(100%,780px)!important;margin-left:auto!important;margin-right:auto!important;
 }
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-profile-name-v15188,
 body:not(.amzx-model-collection-pro20) #profile .layout2>h3{text-align:center!important}
}

/* PRO20 mantém sua receita visual; recebe somente o limite externo seguro. */
@media(min-width:781px){body.amzx-model-collection-pro20 #profile{max-width:var(--amzx-pro-shell-max,1120px)!important}}

/* Bancada de homologação: o topo tem avatar fictício real e banner identificável,
   mas usa exatamente o mesmo motor de layout das demais Bios. */
#profile.amzx-all-widgets-fixture .amzx-header-banner{
 background-image:url("fixtures/todoswidgets-banner-v15581.svg")!important;
 background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
 min-height:300px!important;
}
#profile.amzx-all-widgets-fixture .amzx-header-avatar-wrap{filter:none!important}
#profile.amzx-all-widgets-fixture .amzx-header-avatar-media{object-fit:cover!important;object-position:center!important}

@media(max-width:780px){
 :root{--amzx-layout-gap:12px;--amzx-layout-card-gap:12px;--amzx-layout-safe-inline:8px}
 #profile.amzx-profile-shell{width:calc(100% - 8px)!important;max-width:100%!important;padding-inline:8px!important}
 #profile.amzx-profile-shell>.row:first-child>.amzx-profile-head,
 #profile.amzx-profile-shell>.row:nth-of-type(2)>.col-md-6.offset-md-3,
 #profile.amzx-profile-shell>.row:nth-of-type(2)>.col-md-6{width:100%!important;max-width:100%!important;padding-inline:0!important}
 body:not(.amzx-model-collection-pro20) #profile .layout2{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important}
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-header-banner{order:0!important;width:100%!important;height:clamp(210px,62vw,300px)!important;min-height:210px!important;border-radius:20px!important;overflow:hidden!important;position:relative!important}
 body:not(.amzx-model-collection-pro20) #profile .layout2>.amzx-header-avatar-wrap{order:1!important;margin-top:-78px!important;margin-bottom:8px!important;position:relative!important;z-index:12!important;align-self:center!important}
 body:not(.amzx-model-collection-pro20) #profile .layout2>:is(.amzx-profile-meta-stack-v15188,h3,.amzx-profile-name-v15188,.amzx-model-role-v15561,.item,.amzx-profile-header-actions-v15194,.amzx-profile-header-metrics-v15194,#social){width:min(100%,620px)!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
 body:not(.amzx-model-collection-pro20) #profile .layout3>.amzx-header-banner>.d-flex{display:grid!important;grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important}
 body:not(.amzx-model-collection-pro20) #profile .layout3>.amzx-header-banner .text-start,
 body:not(.amzx-model-collection-pro20) #profile .layout3>.amzx-header-banner .text-left{text-align:center!important;margin-left:0!important}
}
@media(max-width:360px){
 #profile.amzx-profile-shell{width:100%!important;padding-inline:5px!important}
 #profile #content{gap:10px!important}
}


@media(min-width:781px){
 #profile.amzx-all-widgets-fixture .layout2>.amzx-header-banner{height:380px!important;min-height:380px!important;border-radius:28px!important}
 #profile.amzx-all-widgets-fixture .layout2>.amzx-header-avatar-wrap{display:block!important;visibility:visible!important;opacity:1!important;z-index:15!important}
}

/* Autoridade estrutural única, carregada por último.
   Organiza sem redesenhar: não define paleta, tipografia, animação, conteúdo,
   estado de details, URLs, pagamentos ou lógica interna dos widgets. */
#profile #content,
#profile #content>.amzx-widget-public-shell,
#profile #content>.amzx-widget-public-shell>.item,
#profile #content>.amzx-widget-public-shell>.item>*{
 box-sizing:border-box!important;min-width:0!important;max-width:100%!important
}
#profile #content{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 justify-content:flex-start!important;width:100%!important;max-width:var(--amzx-layout-content-max)!important;margin-inline:auto!important;padding:0!important;
 gap:var(--amzx-layout-card-gap,14px)!important;columns:auto!important
}
#profile #content>.amzx-widget-public-shell,
#profile #content>.item{
 display:block;position:relative;width:100%!important;max-width:100%!important;
 height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
 align-self:stretch!important;flex:0 0 auto!important;float:none!important;clear:both!important
}
#profile #content>.amzx-widget-public-shell>.item{
 width:100%!important;height:auto!important;min-height:0!important;margin:0!important;
 align-self:start!important
}
#profile #content>.amzx-widget-public-shell :where(
 .card,.amzx-card,details,form,fieldset,section,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]
){box-sizing:border-box;min-width:0!important;max-width:100%!important;height:auto;max-height:none}
#profile #content>.amzx-widget-public-shell :where(.row,[class$="-grid"],[class*="-grid "]){
 box-sizing:border-box;min-width:0!important;max-width:100%!important;margin-left:0;margin-right:0
}
#profile #content>.amzx-widget-public-shell :where(.col,.col-12,[class^="col-"],[class*=" col-"]){
 box-sizing:border-box;min-width:0!important;max-width:100%
}
#profile #content>.amzx-widget-public-shell :where(img,picture,video,canvas,iframe,embed,object){
 max-width:100%!important
}
#profile #content>.amzx-widget-public-shell :where(input,textarea,select,.form-control,.form-select){
 box-sizing:border-box!important;min-width:0!important;max-width:100%!important
}
#profile #content>.amzx-widget-public-shell :where(.amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav){
 box-sizing:border-box!important;min-width:0!important;max-width:100%!important;flex-wrap:wrap;gap:12px
}
#profile #content>.amzx-widget-public-shell :where(button,.btn,.btn-custom,[role="button"]){
 box-sizing:border-box!important;max-width:100%!important
}
/* Cabeçalhos compostos mantêm o grid de cada renderer; o contrato apenas
   impede estouro e desalinhamento do eixo vertical. */
#profile #content>.amzx-widget-public-shell :where(
 .amzx-payment-toggle,.amzx-contact-summary,.amzx-retractable-summary-v1551,
 .amzx-faq-question,.amzx-scheduler-trigger
){box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;align-items:center!important}

/* Organização visível e previsível dos blocos editoriais, sem mudar a paleta. */
#profile #content>.amzx-layout-heading{width:100%!important;padding:12px 0 4px!important;text-align:center!important}
#profile #content>.amzx-layout-heading>.item{display:flex!important;justify-content:center!important;align-items:center!important;text-align:center!important}
#profile #content>.amzx-layout-heading>.item>:where(h1,h2,h3,h4,p,.amzx-heading-v1473,.amzx-divider-v1472){
 width:100%!important;max-width:100%!important;margin-inline:auto!important;justify-content:center!important;text-align:center!important
}

@media(max-width:780px){
 #profile #content{gap:12px!important}
 #profile #content>.amzx-widget-public-shell,
 #profile #content>.amzx-widget-public-shell>.item{width:100%!important;max-width:100%!important}
 #profile #content>.amzx-widget-public-shell :where(.row,[class$="-grid"],[class*="-grid "]){max-width:100%!important}
 #profile #content>.amzx-widget-public-shell :where(.amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav){
  width:100%!important
 }
}

/* v1.5.603 — ETAPA 8: REFINO GLOBAL DOS WIDGETS — GEOMETRIA PURA.
   Esta camada e carregada por ultimo e consolida somente encaixe, fluxo e overflow.
   Nao define paleta, fundo, borda, sombra, fonte, animacao, estado, IDs, URLs ou logica.
   ETAPAS 1–7 permanecem autoridades dos seus componentes especificos. */
:root{
 --amzx-stage8-flow-gap:12px;
 --amzx-stage8-mobile-gap:10px;
}

/* Todo renderer ocupa a largura util da Bio sem criar uma segunda largura interna. */
#profile #content>.amzx-widget-public-shell>.item>*{
 width:100%;max-width:100%!important;min-width:0!important;box-sizing:border-box!important
}
#profile #content>.amzx-widget-public-shell :where(
 .card,.amzx-card,details,form,fieldset,section,
 [class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]
){
 width:100%;max-width:100%!important;min-width:0!important;box-sizing:border-box!important
}

/* Campos compostos e grupos nao podem manter largura minima herdada do Bootstrap/plugin. */
#profile #content>.amzx-widget-public-shell :where(
 .form-group,.input-group,.form-row,.amzx-field,.amzx-form-row,
 .amzx-newsletter-fields,.amzx-form-fields,.amzx-widget-fields
){
 width:100%;max-width:100%!important;min-width:0!important;box-sizing:border-box!important
}
#profile #content>.amzx-widget-public-shell :where(.input-group,.form-row,.amzx-form-row)>*{
 min-width:0!important;max-width:100%!important;box-sizing:border-box!important
}

/* Texto real e dados longos quebram dentro do proprio widget, nunca a pagina. */
#profile #content>.amzx-widget-public-shell :where(
 h1,h2,h3,h4,h5,h6,p,small,label,legend,strong,em,a,li,dt,dd,td,th,
 .form-text,.invalid-feedback,.valid-feedback
){
 max-width:100%!important;min-width:0!important;overflow-wrap:anywhere!important;word-break:normal
}
#profile #content>.amzx-widget-public-shell :where(ul,ol,dl){max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
#profile #content>.amzx-widget-public-shell :where(pre,code){max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
#profile #content>.amzx-widget-public-shell pre{overflow-x:auto!important;overscroll-behavior-inline:contain}

/* Midia e embeds permanecem dentro do card sem alterar aspect ratio ou altura escolhida pelo renderer. */
#profile #content>.amzx-widget-public-shell :where(img,picture,video,canvas,iframe,embed,object,audio){
 max-width:100%!important;min-width:0!important;box-sizing:border-box!important
}
#profile #content>.amzx-widget-public-shell :where(iframe,embed,object,audio){width:100%!important}

/* Linhas de acao podem respirar e quebrar sem esmagar conteudo. Nao redesenha botoes. */
#profile #content>.amzx-widget-public-shell :where(
 .amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav
){
 display:flex;align-items:center;max-width:100%!important;min-width:0!important;flex-wrap:wrap!important;gap:var(--amzx-stage8-flow-gap)!important
}
#profile #content>.amzx-widget-public-shell :where(
 .amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav
)>*{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}

/* Grades internas podem encolher de verdade; nenhum filho força scroll horizontal da Bio. */
#profile #content>.amzx-widget-public-shell :where(.row,[class$="-grid"],[class*="-grid "]){
 min-width:0!important;max-width:100%!important;box-sizing:border-box!important
}
#profile #content>.amzx-widget-public-shell :where(.row,[class$="-grid"],[class*="-grid "])>*{
 min-width:0!important;max-width:100%!important;box-sizing:border-box!important
}

@media(max-width:575px){
 #profile #content>.amzx-widget-public-shell :where(
  .amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav
 ){gap:var(--amzx-stage8-mobile-gap)!important}
 #profile #content>.amzx-widget-public-shell :where(
  .amzx-form-actions,.amzx-widget-actions,.amzx-payment-actions,.amzx-scheduler-actions,.amzx-pro-nav
 )>*{flex:1 1 100%;width:100%;max-width:100%!important}
 #profile #content>.amzx-widget-public-shell :where(.form-row,.amzx-form-row){display:grid;grid-template-columns:minmax(0,1fr);gap:var(--amzx-stage8-mobile-gap)!important}
}
