/* ###########################################################################
#
#  CABEÇALHO PÚBLICO
#
#  Responsável por:
#  • Logo
#  • Menu
#  • Botões
#
############################################################################ */

.pp-public-header{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(18px);
    border-bottom:1px solid var(--pp-line);
}

.pp-public-inner{
    max-width:1180px;
    margin:0 auto;
    padding:18px 18px 20px;
    min-height:112px;
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    align-items:center;
    gap:14px;
}

.pp-logo-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    max-width:100%;
}

.pp-public-logo{
    display:block;
    width:auto;
    height:72px;
    max-width:min(360px, 86vw);
    object-fit:contain;
}

.pp-nav{
    width:min(640px, 100%);
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    align-items:center;
}

.pp-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:12px 16px;
    border-radius:18px;
    cursor:pointer;
    white-space:nowrap;
    font-weight:900;
    letter-spacing:-.1px;
    text-align:center;
    text-decoration:none;
    line-height:1.1;
}

.pp-btn-primary{
    color:#ffffff;
    background:var(--pp-grad);
    border:1px solid rgba(217,15,31,.12);
    box-shadow:0 12px 30px rgba(217,15,31,.25);
}

.pp-btn-ghost{
    color:var(--pp-dark);
    background:#ffffff;
    border:1px solid #e8ecf4;
    box-shadow:0 8px 22px rgba(15,23,42,.05);
}

.pp-main{min-height:80vh;}
.pp-main--app{min-height:0;}
.pp-footer{padding:28px 14px;text-align:center;color:var(--pp-muted);}

@media (max-width:780px){
    .pp-public-inner{
        padding:14px 14px 16px;
        min-height:auto;
        gap:12px;
    }
    .pp-public-logo{height:54px;max-width:82vw;}
    .pp-nav{width:100%;gap:8px;}
    .pp-nav .pp-btn{min-height:48px;padding:10px 8px;border-radius:17px;font-size:14px;}
}

@media (max-width:380px){
    .pp-public-logo{height:48px;}
    .pp-nav{gap:7px;}
    .pp-nav .pp-btn{font-size:12.5px;min-height:44px;border-radius:15px;padding:9px 6px;}
}


/* Compatibilidade com o painel PedidoPop SaaS.
   Em páginas do app logado, o menu público do tema não deve disputar espaço com o painel. */
.pp-public-header.pp-public-header--app{
  min-height: 0;
  padding: 8px 0;
}
.pp-public-header.pp-public-header--app .pp-public-inner{
  justify-content: center;
}
.pp-public-header.pp-public-header--app .pp-public-logo{
  max-height: 34px;
}
