.promotion-policy-modal .modal-content{border:0;border-radius:14px;overflow:hidden}
.promotion-policy-modal .modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0}
.promotion-policy-modal .modal-title{font-weight:800;color:#172554}
.pp-callout{padding:14px 16px;border-left:4px solid #2563eb;background:#eff6ff;border-radius:8px;margin-bottom:16px}
.pp-callout p,.pp-birthday p,.pp-example p,.pp-legend p{margin:4px 0 0}
.pp-birthday{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;margin-bottom:20px}
.pp-icon{font-size:1.45rem;line-height:1}
.pp-title{font-weight:800;color:#1e293b;margin:22px 0 10px}
.pp-matrix th{background:#f8fafc;vertical-align:middle}
.pp-matrix td{text-align:center;vertical-align:middle;min-width:125px}
.pp-yes,.pp-best{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:800}
.pp-yes{background:#dcfce7;color:#166534}
.pp-best{background:#fef3c7;color:#92400e}
.pp-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.pp-legend>div{padding:10px 12px;border:1px solid #e2e8f0;border-radius:9px}
.pp-examples{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pp-example{padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}
.pp-policy-list{display:grid;gap:8px;margin-bottom:18px}
.pp-policy-list>div{padding:11px 13px;border:1px solid #e2e8f0;border-radius:9px}
.pp-policy-list strong{display:block;color:#1e293b}
.pp-policy-list span{display:block;color:#64748b;margin-top:3px;font-size:.82rem}
@media(max-width:767.98px){.pp-legend,.pp-examples{grid-template-columns:1fr}.promotion-policy-modal .modal-dialog{margin:.5rem}}


/* Accesso globale alle regole promozioni - topbar */
.promotion-helpbar{
    display:flex;
    align-items:center;
    height:100%;
}

.promotion-help-topbar{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:38px;
    padding:7px 11px;
    border:1px solid #dbe4f0;
    border-radius:10px;
    background:#fff;
    color:#334155;
    font:inherit;
    cursor:pointer;
    transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;
}

.promotion-help-topbar:hover,
.promotion-help-topbar:focus{
    background:#eff6ff;
    border-color:#93c5fd;
    color:#1d4ed8;
    box-shadow:0 2px 8px rgba(37,99,235,.10);
    outline:0;
}

.promotion-help-topbar-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#2563eb;
    color:#fff;
    font-size:.82rem;
    font-weight:800;
    line-height:1;
}

.promotion-help-topbar-label{
    font-size:.78rem;
    font-weight:700;
    white-space:nowrap;
}

@media(max-width:767.98px){
    .promotion-help-topbar{
        min-width:38px;
        width:38px;
        height:38px;
        padding:0;
        border-radius:50%;
    }

    .promotion-help-topbar-label{
        display:none;
    }
}
