/*
 * V141 · Popups (janelas de formulário e de confirmação).
 *
 * Carregado pelo PanelChrome::acabamentoHead() só no site do seller e no
 * site do admin, e toda regra começa por body.fi-panel-seller ou
 * body.fi-panel-admin: só o tema do site (theme.css) tem esses defeitos.
 * Os aplicativos (sellerapp e adminapp) têm tema próprio e não recebem este
 * arquivo. No app do seller o rodapé fixo já sai no roxo da escala de cinza
 * tingida do app (--gray-900 #170f29, v9-componentes.css), sem faixa cinza.
 *
 * O painel do sino (.fi-modal-slide-over) fica de fora das regras 1, 2, 4
 * e 6 de propósito: o tema desenhou a borda, a luz lateral e o respiro
 * dele, e os itens já compensam com margem própria.
 *
 * Correção genérica, sem citar tela nenhuma.
 */

/* 1. Respiro lateral do conteúdo.
   O tema zera o padding de todo .fi-modal-content (feito para o sino) e os
   rótulos, campos e caixas de seleção encostam na borda da janela, enquanto
   título e rodapé ficam a 24 px. Volta para 24 px nas laterais, 16 px abaixo
   da linha do cabeçalho e 20 px antes do rodapé. */
body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window .fi-modal-content {
    padding: 1rem 1.5rem 1.25rem !important;
}

/* 2. Sombra simétrica.
   A janela central herdava a borda roxa só à esquerda e a luz lateral do
   painel do sino. */
body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window {
    border-left-color: rgba(138, 72, 245, 0.25) !important;
    box-shadow:
        0 30px 80px -10px rgba(0, 0, 0, 0.8),
        0 0 60px rgba(91, 47, 203, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

/* 3. Botões do popup param de pular no hover e no clique.
   O tema sobe o botão 1,5 px no hover com mola (passa do ponto e volta) e
   encolhe no clique: com o cursor na borda de baixo o botão sai de baixo do
   cursor, perde o hover e volta, sem parar. Brilho e sombra continuam. */
body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal .fi-btn {
    transform: none !important;
    transition-property: background-color, border-color, box-shadow, color, filter !important;
    transition-duration: 0.2s !important;
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* 4. Celular e tablet: a janela cabe e rola inteira.
   O tema limita a janela a 100vh (ou 100vh menos 1rem) sem rolagem própria:
   num formulário comprido o rodapé (Enviar, Cancelar) ficava 201 px fora do
   fundo da janela. Quem rola é o .fi-modal-window-ctn do Filament, então a
   janela pode ter a altura do conteúdo. A largura volta às medidas do
   Filament, limitada à tela, com cantos arredondados. */
@media (max-width: 768px) {
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window {
        max-height: none !important;
        margin: 0 !important;
        max-width: 100% !important;
        border-radius: 14px !important;
    }

    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-xs { max-width: min(20rem, 100%) !important; }
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-sm { max-width: min(24rem, 100%) !important; }
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-md { max-width: min(28rem, 100%) !important; }
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-lg { max-width: min(32rem, 100%) !important; }
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-xl { max-width: min(36rem, 100%) !important; }
    body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window.fi-width-2xl { max-width: min(42rem, 100%) !important; }
}

/* 5. Aviso de cookies some enquanto um popup ou o painel do sino está aberto.
   No celular ele cobria Enviar e Cancelar e o fim da lista de avisos; no
   computador, o canto da janela. Ao fechar, ele volta, se ainda não foi
   aceito. */
body:is(.fi-panel-seller, .fi-panel-admin):has(.fi-modal.fi-modal-open) .throne-cookie-notice {
    display: none !important;
}

/* 6. Rodapé fixo (Enviar e Cancelar sempre à vista) no fundo da janela.
   O Filament pinta esse rodapé de cinza (gray-900) e ele virava uma faixa
   cinza no fim da janela roxa. Fica no tom do fim do degradê da janela. */
body:is(.fi-panel-seller, .fi-panel-admin) .fi-modal.fi-modal-has-sticky-footer:not(.fi-modal-slide-over) > .fi-modal-window-ctn > .fi-modal-window > .fi-modal-footer {
    background: #09061b !important;
    border-top-color: rgba(138, 72, 245, 0.18) !important;
}

/* 7. Aviso de sessão prestes a expirar: o botão principal não sobe no
   hover (não é .fi-modal, a regra 3 não o alcança). */
body:is(.fi-panel-seller, .fi-panel-admin) .throne-idle-modal__btn--primary:is(:hover, :active) {
    transform: none !important;
}
