:root {
    --png-modal-bg: #0F2314;
    --png-modal-header: #1a3a22;
    --png-modal-gold: #CBA168;
    --png-modal-border: #8b6f47;
}
#pngrubs-popup-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.75);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99997;
}
#pngrubs-popup-overlay.show { display: flex; }
#pngrubs-popup-content {
    background: var(--png-modal-bg);
    border: 2px solid var(--png-modal-border);
    border-radius: 12px;
    width: 90%;
    max-width: 950px;
    height: 80vh;
    max-height: 700px;
    position: relative;
    display: flex;
    flex-direction: column;
}
#pngrubs-popup-header {
    background: var(--png-modal-header);
    color: var(--png-modal-gold);
    padding: 14px 20px;
    border-radius: 10px 10px 0 0;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#pngrubs-popup-close {
    background: none;
    border: none;
    color: var(--png-modal-gold);
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    padding: 0 4px;
}
#pngrubs-popup-iframe {
    flex: 1;
    width: 100%;
    border: none;
    border-radius: 0 0 10px 10px;
}
#pngrubs-popup-loading { display: none; text-align: center; padding: 40px; color: #F4F2EE; }
.pngrubs-spinner { width: 40px; height: 40px; border: 4px solid var(--png-modal-border); border-top-color: transparent; border-radius: 50%; animation: png-spin 0.8s linear infinite; margin: 0 auto 16px; }
@keyframes png-spin { to { transform: rotate(360deg); } }
#pngrubs-popup-blocked { display: none; flex: 1; flex-direction: column; justify-content: center; align-items: center; padding: 40px; text-align: center; color: #F4F2EE; }
#pngrubs-popup-blocked a { background: var(--png-modal-border); color: #fff; padding: 14px 28px; border-radius: 8px; font-weight: 600; text-decoration: none; }
