/* Exclusivo da escolha de extras dos packs da pagina 120. */
.congresso-pack-servicos { width: 480px; max-width: 100%; box-sizing: border-box; color: #111; text-align: left; font: 14px/1.5 Arial, sans-serif; }
.congresso-pack-servicos *, .congresso-pack-servicos *::before, .congresso-pack-servicos *::after { box-sizing: border-box; }
.congresso-pack-servicos h3 { margin: 0 0 18px; font-size: 22px; line-height: 1.25; color: #111; }
.congresso-pack-servicos p { margin: 0 0 14px; }
.congresso-pack-servicos .congresso-pack-nome { font-size: 16px; }
.congresso-pack-servicos .congresso-pack-nome span, .congresso-pack-servicos .congresso-pack-nota { color: #555; font-size: 13px; }
.congresso-pack-servicos fieldset { border: 0; padding: 0; margin: 18px 0; min-width: 0; }
.congresso-pack-servicos .congresso-pack-opcao { display: flex; align-items: center; gap: 12px; padding: 14px 12px; margin: 0 0 10px; border: 1px solid #ddd; border-radius: 10px; cursor: pointer; font-weight: normal; }
.congresso-pack-servicos .congresso-pack-opcao:focus-within { outline: 2px solid #278800; outline-offset: 2px; }
.congresso-pack-servicos .congresso-pack-opcao.escolhida { border-color: #3ee00a; background: #f4fff0; }
.congresso-pack-servicos .congresso-pack-opcao input[type=radio] { position: static; display: inline-block; flex: 0 0 18px; width: 18px; height: 18px; opacity: 1; margin: 0; accent-color: #248900; }
.congresso-pack-servicos .congresso-pack-opcao-nome { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.congresso-pack-servicos .congresso-pack-opcao-nome small { display: block; font-size: 12px; color: #555; }
.congresso-pack-servicos .congresso-pack-opcao > strong { flex-shrink: 0; white-space: nowrap; }
.congresso-pack-servicos .congresso-pack-total { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid #ddd; padding-top: 16px; font-size: 16px; }
.congresso-pack-servicos .congresso-pack-acoes { display: flex; gap: 10px; margin-top: 20px; }
.congresso-pack-servicos .congresso-pack-acoes button { flex: 1; border: 1px solid #3ee00a; border-radius: 20px; padding: 10px 14px; font: inherit; font-weight: bold; line-height: 1.3; cursor: pointer; color: #111; }
.congresso-pack-servicos .congresso-pack-cancelar { background: #fff; }
.congresso-pack-servicos .congresso-pack-confirmar { background: #3ee00a; }
.congresso-pack-servicos button:disabled { opacity: .6; cursor: wait; }
.congresso-pack-servicos .congresso-pack-erro { color: #a40000; }
.congresso-pack-servicos .congresso-pack-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
@media (max-width: 480px) {
    .congresso-pack-servicos .congresso-pack-acoes { flex-direction: column-reverse; }
    .congresso-pack-servicos .congresso-pack-opcao { gap: 8px; padding: 12px 8px; }
}

/* O recibo global usa a mesma largura, tipografia e botoes do Congresso.
   Sobrepoe as dimensoes antigas de .background e .compraboxinner. */
.background:has(> #shoppopup.congresso-pack-recibo) {
    width: 480px;
    max-width: 100%;
    height: auto;
    background: #fff;
    color: #111;
}
.background > #shoppopup.congresso-pack-recibo {
    width: 480px;
    max-width: 100%;
    padding: 0;
    color: #111;
    font: 14px/1.5 Arial, sans-serif;
}
.background > #shoppopup.congresso-pack-recibo h3 {
    font-size: 22px;
    font-weight: 600;
    color: #111;
    text-align: left;
}
.background > #shoppopup.congresso-pack-recibo .congresso-pack-acoes {
    display: flex;
    flex-direction: row;
}
.background > #shoppopup.congresso-pack-recibo .congresso-pack-acoes button {
    min-height: 42px;
    text-transform: none;
}
@media (max-width: 480px) {
    .background > #shoppopup.congresso-pack-recibo .congresso-pack-acoes {
        flex-direction: column-reverse;
    }
}
