/* ==========================================================================
   MuOnlineItalia - COME INIZIARE / GETTING STARTED + VIP PUBLIC
   File isolato: non sovrascrive assets/app.css.
   ========================================================================== */

.getting-started-page,
.vip-public-page{
    display:grid;
    gap:18px;
}

.start-hero,
.vip-public-hero{
    position:relative;
    overflow:hidden;
    min-height:250px;
    padding:34px 36px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    border-color:rgba(223,165,72,.18);
    background:
        radial-gradient(circle at 82% 30%,rgba(209,145,49,.12),transparent 24%),
        linear-gradient(135deg,rgba(15,21,30,.98),rgba(7,11,17,.99));
}

.start-hero::before,
.vip-public-hero::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(90deg,rgba(223,165,72,.08),transparent 34%);
    opacity:.55;
}

.start-hero-copy,
.vip-public-hero > *{
    position:relative;
    z-index:1;
}

.start-hero-copy{
    max-width:760px;
}

.start-hero h1,
.vip-public-hero h1{
    margin:5px 0 12px;
    color:#f1f4f8;
    font-size:clamp(30px,4vw,48px);
    line-height:1.08;
    letter-spacing:-1.1px;
}

.start-hero p,
.vip-public-hero p{
    max-width:760px;
    margin:0;
    color:#a4afbd;
    font-size:14px;
    line-height:1.7;
}

.start-hero .actions{
    margin-top:22px;
}

.start-hero-badge{
    width:150px;
    height:150px;
    display:grid;
    place-items:center;
    align-content:center;
    flex:0 0 auto;
    border:1px solid rgba(225,169,79,.22);
    border-radius:50%;
    background:
        radial-gradient(circle,rgba(218,156,59,.12),rgba(218,156,59,.025) 55%,transparent 56%);
    box-shadow:0 0 60px rgba(198,133,40,.08);
}

.start-hero-badge span{
    color:#e5b365;
    font-size:39px;
    font-weight:950;
    letter-spacing:-2px;
    line-height:1;
}

.start-hero-badge strong{
    margin-top:7px;
    color:#7f8c9d;
    font-size:13px;
    letter-spacing:2.5px;
}

.start-flow{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
}

.start-step{
    position:relative;
    min-width:0;
    min-height:255px;
    padding:22px 18px 19px;
    display:flex;
    flex-direction:column;
    border:1px solid rgba(255,255,255,.065);
    border-radius:17px;
    background:linear-gradient(155deg,rgba(14,19,27,.98),rgba(7,11,17,.98));
    box-shadow:0 15px 36px rgba(0,0,0,.13);
}

.start-step.is-vip{
    border-color:rgba(221,164,72,.21);
    background:
        radial-gradient(circle at 88% 9%,rgba(221,164,72,.10),transparent 28%),
        linear-gradient(155deg,rgba(20,18,15,.98),rgba(7,11,17,.98));
}

.start-step-number{
    position:absolute;
    top:15px;
    right:15px;
    color:#4f5b69;
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}

.start-step-icon{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border:1px solid rgba(220,162,70,.16);
    border-radius:13px;
    background:rgba(220,162,70,.055);
    color:#dfa958;
    font-size:13px;
    font-weight:950;
}

.start-step h2{
    margin:0 0 9px;
    color:#e5eaf0;
    font-size:16px;
    line-height:1.3;
}

.start-step p{
    margin:0;
    color:#8793a2;
    font-size:12px;
    line-height:1.62;
}

.start-step > a{
    margin-top:auto;
    padding-top:17px;
    color:#dba457;
    font-size:11px;
    font-weight:850;
    text-decoration:none;
}

.start-step > a:hover{
    color:#efbd72;
}

.start-vip-summary{
    padding:27px 29px;
    border-color:rgba(220,163,70,.15);
}

.start-vip-summary-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}

.start-vip-summary-head h2{
    margin:5px 0 7px;
    font-size:24px;
}

.start-vip-summary-head p{
    max-width:720px;
    margin:0;
    color:#8793a2;
    line-height:1.62;
}

.start-vip-mini-grid{
    margin-top:22px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.start-vip-mini{
    padding:17px 18px;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:5px 12px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:14px;
    background:rgba(255,255,255,.018);
}

.start-vip-mini span{
    color:#dfe5ec;
    font-size:13px;
    font-weight:900;
}

.start-vip-mini strong{
    grid-row:1 / span 2;
    grid-column:2;
    color:#e1aa58;
    font-size:23px;
}

.start-vip-mini small{
    color:#788596;
    font-size:10px;
}

.start-conditions{
    margin-top:17px;
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    color:#8794a3;
    font-size:11px;
}

.start-conditions span::first-letter{
    color:#67cf93;
}

.start-info-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.start-info-card{
    padding:22px;
}

.start-info-card h3{
    margin:5px 0 9px;
    color:#e2e7ed;
    font-size:16px;
}

.start-info-card p{
    margin:0;
    color:#84909f;
    font-size:12px;
    line-height:1.65;
}


/* VIP PUBLIC -------------------------------------------------------------- */

.vip-public-hero{
    min-height:205px;
}

.vip-public-hero > div:first-child{
    max-width:780px;
}

.vip-current-status{
    padding:18px 22px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-color:rgba(255,255,255,.07);
}

.vip-current-status.is-active{
    border-color:rgba(92,214,141,.18);
    background:linear-gradient(135deg,rgba(29,77,51,.18),rgba(8,13,18,.98));
}

.vip-current-status > div{
    display:flex;
    flex-direction:column;
}

.vip-current-status span{
    color:#738092;
    font-size:9px;
    font-weight:900;
    letter-spacing:1px;
}

.vip-current-status strong{
    margin-top:5px;
    color:#e8edf2;
    font-size:18px;
}

.vip-current-status.is-active strong{
    color:#78dda2;
}

.vip-current-status small{
    margin-top:3px;
    color:#82909f;
}

.vip-payment-pending{
    margin:0;
}

.vip-plan-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.vip-plan-card{
    position:relative;
    min-width:0;
    padding:26px 24px 24px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:19px;
    background:
        linear-gradient(155deg,rgba(15,20,28,.99),rgba(7,11,17,.99));
    box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.vip-plan-card.tier-1{
    border-color:rgba(191,128,72,.18);
}

.vip-plan-card.tier-2{
    border-color:rgba(173,187,204,.19);
}

.vip-plan-card.tier-3{
    border-color:rgba(222,166,67,.26);
    background:
        radial-gradient(circle at 84% 4%,rgba(221,159,53,.11),transparent 30%),
        linear-gradient(155deg,rgba(20,18,14,.99),rgba(7,11,17,.99));
}

.vip-plan-card.is-current{
    box-shadow:
        inset 0 0 0 1px rgba(94,214,143,.10),
        0 18px 45px rgba(0,0,0,.15);
}

.vip-plan-top{
    min-height:25px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.vip-plan-level{
    color:#dfe5eb;
    font-size:14px;
    font-weight:950;
    letter-spacing:.25px;
}

.vip-plan-top em{
    padding:4px 7px;
    border:1px solid rgba(94,214,143,.17);
    border-radius:8px;
    background:rgba(94,214,143,.055);
    color:#6fda9c;
    font-size:8px;
    font-style:normal;
    font-weight:950;
    letter-spacing:.7px;
}

.vip-plan-price{
    margin-top:17px;
    display:flex;
    align-items:baseline;
    gap:8px;
}

.vip-plan-price strong{
    color:#f0b45e;
    font-size:38px;
    line-height:1;
}

.vip-plan-price span{
    color:#6e7a89;
    font-size:10px;
}

.vip-plan-exp{
    margin:18px 0 17px;
    padding:12px 14px;
    border:1px solid rgba(223,167,77,.12);
    border-radius:12px;
    background:rgba(223,167,77,.04);
    color:#e2ac59;
    font-size:24px;
    font-weight:950;
}

.vip-plan-exp span{
    color:#8e9aa9;
    font-size:10px;
    letter-spacing:1px;
}

.vip-plan-card ul{
    min-height:105px;
    margin:0 0 22px;
    padding:0;
    list-style:none;
    display:grid;
    gap:9px;
}

.vip-plan-card li{
    position:relative;
    padding-left:18px;
    color:#8d99a8;
    font-size:11.5px;
    line-height:1.45;
}

.vip-plan-card li::before{
    content:"✓";
    position:absolute;
    left:0;
    color:#69cf91;
    font-weight:900;
}

.vip-plan-disabled{
    width:100%;
    justify-content:center;
    opacity:.60;
    cursor:not-allowed;
    user-select:none;
}

.vip-login-callout{
    padding:23px 25px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.vip-login-callout h2{
    margin:5px 0 7px;
    font-size:20px;
}

.vip-login-callout p{
    margin:0;
    color:#8591a0;
    line-height:1.55;
}

.vip-legal{
    padding:23px 25px;
}

.vip-legal h2{
    margin:5px 0 8px;
    font-size:20px;
}

.vip-legal p{
    margin:0;
    color:#8995a4;
    font-size:12px;
    line-height:1.7;
}


/* Account + registration links ------------------------------------------ */

.account-vip-cta{
    margin-top:10px;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.account-vip-cta .btn{
    min-height:27px;
    padding:5px 8px;
    font-size:9px;
}

.account-activation-next{
    margin-top:12px;
    padding:18px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}

.account-activation-next > div:first-child{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.account-activation-next strong{
    color:#e2e8ee;
}

.account-activation-next span{
    color:#82909f;
    font-size:11px;
}

.registration-guide-link{
    display:inline-block;
    margin-top:14px;
    color:#dba457;
    font-size:11px;
    font-weight:850;
    text-decoration:none;
}

.registration-guide-link:hover{
    color:#efbd72;
}

.registration-steps.has-vip-step{
    grid-template-columns:repeat(4,minmax(0,1fr));
}


/* Responsive ------------------------------------------------------------- */

@media(max-width:1180px){
    .start-flow{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media(max-width:900px){
    .start-hero,
    .vip-public-hero{
        padding:28px 25px;
    }

    .start-hero-badge{
        width:120px;
        height:120px;
    }

    .start-vip-mini-grid,
    .vip-plan-grid{
        grid-template-columns:1fr;
    }

    .start-info-grid{
        grid-template-columns:1fr;
    }

    .registration-steps.has-vip-step{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:680px){
    .start-hero,
    .vip-public-hero,
    .start-vip-summary-head,
    .vip-current-status,
    .vip-login-callout,
    .account-activation-next{
        align-items:flex-start;
        flex-direction:column;
    }

    .start-hero-badge{
        display:none;
    }

    .start-flow{
        grid-template-columns:1fr;
    }

    .start-step{
        min-height:auto;
    }

    .start-vip-summary{
        padding:22px 19px;
    }

    .vip-plan-card{
        padding:23px 20px 21px;
    }

    .registration-steps.has-vip-step{
        grid-template-columns:1fr;
    }
}


/* ==========================================================================
   MuOnlineItalia - MEDAGLIE VIP SINGOLE
   Bronze = 3, Silver = 2, Gold = 1. Filigrana incorporata nell'asset.
   ========================================================================== */

.vip-plan-visual{
    position:relative;
    height:215px;
    margin:-7px 0 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.vip-plan-visual::after{
    content:"";
    position:absolute;
    left:14%;
    right:14%;
    bottom:6px;
    height:22px;
    border-radius:50%;
    background:rgba(0,0,0,.34);
    filter:blur(12px);
    pointer-events:none;
}

.vip-plan-visual img{
    position:relative;
    z-index:1;
    display:block;
    width:auto;
    height:205px;
    max-width:100%;
    object-fit:contain;
    filter:drop-shadow(0 16px 24px rgba(0,0,0,.30));
    transition:transform .22s ease, filter .22s ease;
}

.vip-plan-card:hover .vip-plan-visual img{
    transform:translateY(-3px) scale(1.025);
    filter:drop-shadow(0 18px 29px rgba(0,0,0,.38));
}

.vip-plan-card.tier-1 .vip-plan-visual{
    background:radial-gradient(circle at 50% 48%,rgba(177,95,49,.075),transparent 58%);
}

.vip-plan-card.tier-2 .vip-plan-visual{
    background:radial-gradient(circle at 50% 48%,rgba(185,202,221,.07),transparent 58%);
}

.vip-plan-card.tier-3 .vip-plan-visual{
    background:radial-gradient(circle at 50% 48%,rgba(225,165,55,.085),transparent 58%);
}

.start-vip-mini{
    grid-template-columns:48px 1fr auto;
}

.start-vip-mini-medal{
    width:46px;
    height:46px;
    grid-row:1 / span 2;
    object-fit:contain;
    filter:drop-shadow(0 5px 8px rgba(0,0,0,.28));
}

.start-vip-mini span{
    grid-column:2;
}

.start-vip-mini strong{
    grid-column:3;
}

.start-vip-mini small{
    grid-column:2;
}

@media(max-width:680px){
    .vip-plan-visual{
        height:190px;
    }

    .vip-plan-visual img{
        height:182px;
    }
}


/* ==========================================================================
   MuOnlineItalia - ADMIN VIP CENTRAL CONTROL
   ========================================================================== */

.vip-admin-central{padding:24px}
.vip-admin-central .vip-admin-settings-head p{margin:6px 0 0;max-width:760px}
.vip-master-switches{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.vip-master-switches .setting-switch-row{min-height:108px;margin:0}
.vip-master-switches .setting-switch-row.is-disabled{opacity:.56}
.vip-tier-editor-grid-central{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.vip-tier-editor-grid-central .vip-tier-editor{
    padding:17px;border:1px solid rgba(255,255,255,.07);border-radius:15px;
    background:linear-gradient(150deg,rgba(14,19,27,.98),rgba(8,12,18,.98))
}
.vip-tier-editor-grid-central .vip-tier-editor.tier-1{border-color:rgba(190,113,63,.18)}
.vip-tier-editor-grid-central .vip-tier-editor.tier-2{border-color:rgba(187,202,218,.17)}
.vip-tier-editor-grid-central .vip-tier-editor.tier-3{border-color:rgba(222,164,68,.23)}
.vip-tier-editor-head{
    display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:11px;
    padding-bottom:14px;margin-bottom:13px;border-bottom:1px solid rgba(255,255,255,.055)
}
.vip-tier-editor-head img{
    width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 7px 8px rgba(0,0,0,.28))
}
.vip-tier-editor-head strong{display:block;margin-top:3px;color:#e3e9ef;font-size:13px}
.vip-tier-visible{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important}
.vip-tier-visible input{width:auto!important}
.vip-tier-visible span{font-size:9px!important;color:#8793a2!important}
.vip-tier-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.vip-tier-editor-grid-central input{min-width:0}
.vip-settings-bottom-central{align-items:flex-end;gap:18px}
.vip-server-files{min-width:0;display:grid;gap:7px}
.vip-server-files>div{display:flex;align-items:center;gap:8px;min-width:0}
.vip-server-files span{width:150px;flex:0 0 auto;color:#707d8d;font-size:9px;font-weight:850}
.vip-server-files code{
    max-width:520px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    color:#a8b4c3;font-size:9px
}

.vip-admin-history-grid{
    display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);gap:14px;margin-top:17px
}
.vip-admin-history-panel{padding:21px;min-width:0}
.vip-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px}
.vip-history-head h2{margin:4px 0 0;font-size:18px}
.vip-history-table table{min-width:690px}
.vip-history-table th,.vip-history-table td{font-size:10px;padding:9px 10px}
.vip-history-empty{
    min-height:115px;display:flex;flex-direction:column;justify-content:center;
    padding:18px;border:1px dashed rgba(255,255,255,.07);border-radius:12px
}
.vip-history-empty strong{color:#cfd6df;font-size:12px}
.vip-history-empty span{margin-top:5px;color:#74808f;font-size:10.5px;line-height:1.5}
.vip-audit-list{display:flex;flex-direction:column;max-height:340px;overflow:auto}
.vip-audit-row{padding:10px 0;border-top:1px solid rgba(255,255,255,.05);display:grid;gap:3px}
.vip-audit-row:first-child{padding-top:0;border-top:0}
.vip-audit-row time{color:#657181;font-size:8.5px}
.vip-audit-row strong{color:#d8dfe7;font-size:10.5px}
.vip-audit-row span{color:#808c9b;font-size:9.5px}

@media(max-width:1050px){
    .vip-master-switches{grid-template-columns:1fr}
    .vip-tier-editor-grid-central{grid-template-columns:1fr}
    .vip-admin-history-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
    .vip-tier-inline-fields{grid-template-columns:1fr}
    .vip-tier-editor-head{grid-template-columns:48px 1fr}
    .vip-tier-visible{grid-column:1/-1}
    .vip-settings-bottom-central{align-items:stretch}
    .vip-server-files>div{align-items:flex-start;flex-direction:column}
    .vip-server-files span{width:auto}
}


/* FIX VIP GOLD - force render + cache refresh */
.vip-plan-visual{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
}

.vip-plan-visual img,
.start-vip-mini-medal,
.vip-tier-editor-head img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}

.vip-plan-card.tier-3 .vip-plan-visual img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:auto !important;
    height:205px !important;
    max-width:100% !important;
    object-fit:contain !important;
}

@media(max-width:680px){
    .vip-plan-card.tier-3 .vip-plan-visual img{
        height:182px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - HOME VIP PROMO
   ========================================================================== */

.home-vip-promo{
    position:relative;
    overflow:hidden;
    min-height:285px;
    margin-bottom:22px;
    padding:30px 34px;
    display:grid;
    grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);
    align-items:center;
    gap:34px;
    border-color:rgba(224,165,70,.22);
    background:
        radial-gradient(circle at 18% 50%,rgba(222,156,55,.11),transparent 30%),
        radial-gradient(circle at 92% 10%,rgba(213,148,49,.07),transparent 24%),
        linear-gradient(135deg,rgba(14,18,25,.99),rgba(7,10,15,.99));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        0 20px 55px rgba(0,0,0,.18);
}

.home-vip-promo::before{
    content:"MUONLINEITALIA";
    position:absolute;
    right:-10px;
    bottom:-15px;
    color:rgba(255,255,255,.022);
    font-size:58px;
    font-weight:950;
    letter-spacing:3px;
    pointer-events:none;
    user-select:none;
}

.home-vip-promo-art{
    position:relative;
    z-index:1;
    min-height:220px;
}

.home-vip-medal{
    position:absolute;
    display:block;
    width:145px;
    height:145px;
    object-fit:contain;
    filter:drop-shadow(0 16px 22px rgba(0,0,0,.32));
}

.home-vip-medal.bronze{
    left:3%;
    top:55px;
    transform:rotate(-9deg) scale(.88);
    opacity:.94;
}

.home-vip-medal.silver{
    left:28%;
    top:28px;
    transform:rotate(-2deg) scale(.96);
    z-index:2;
}

.home-vip-medal.gold{
    left:53%;
    top:0;
    transform:rotate(7deg) scale(1.08);
    z-index:3;
    filter:drop-shadow(0 18px 26px rgba(174,111,27,.24));
}

.home-vip-promo-copy{
    position:relative;
    z-index:2;
}

.home-vip-promo-copy h2{
    margin:5px 0 10px;
    color:#eef2f6;
    font-size:clamp(27px,3vw,39px);
    line-height:1.12;
    letter-spacing:-.8px;
}

.home-vip-promo-copy > p{
    max-width:760px;
    margin:0;
    color:#9aa6b5;
    font-size:13px;
    line-height:1.7;
}

.home-vip-promo-points{
    margin-top:16px;
    display:flex;
    flex-wrap:wrap;
    gap:8px 13px;
}

.home-vip-promo-points span{
    padding:6px 9px;
    border:1px solid rgba(102,211,145,.11);
    border-radius:9px;
    background:rgba(80,177,119,.035);
    color:#9fb2a8;
    font-size:10px;
    font-weight:800;
}

.home-vip-promo-points span::first-letter{
    color:#69d096;
}

.home-vip-promo-tiers{
    margin-top:14px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.home-vip-promo-tiers span{
    padding:7px 10px;
    border:1px solid rgba(220,163,70,.11);
    border-radius:9px;
    background:rgba(220,163,70,.035);
    color:#84909f;
    font-size:10px;
}

.home-vip-promo-tiers strong{
    color:#d9a251;
}

.home-vip-promo .actions{
    margin-top:18px;
}

.home-vip-promo-note{
    display:block;
    margin-top:12px;
    max-width:720px;
    color:#677383;
    font-size:9.5px;
    line-height:1.5;
}

@media(max-width:950px){
    .home-vip-promo{
        grid-template-columns:1fr;
        gap:14px;
        padding:26px;
    }

    .home-vip-promo-art{
        min-height:175px;
        width:min(100%,430px);
        margin:0 auto;
    }

    .home-vip-medal{
        width:125px;
        height:125px;
    }

    .home-vip-medal.bronze{left:8%;top:48px}
    .home-vip-medal.silver{left:34%;top:24px}
    .home-vip-medal.gold{left:59%;top:0}
}

@media(max-width:560px){
    .home-vip-promo{
        padding:22px 18px;
    }

    .home-vip-promo-art{
        min-height:142px;
    }

    .home-vip-medal{
        width:100px;
        height:100px;
    }

    .home-vip-medal.bronze{left:4%;top:40px}
    .home-vip-medal.silver{left:31%;top:20px}
    .home-vip-medal.gold{left:58%;top:0}

    .home-vip-promo-copy h2{
        font-size:27px;
    }
}


/* ==========================================================================
   MuOnlineItalia - HOME VIP PROMO COMPACT
   ========================================================================== */
.home-vip-promo{
    min-height:205px !important;
    margin-bottom:16px !important;
    padding:20px 24px !important;
    grid-template-columns:minmax(210px,.62fr) minmax(0,1.38fr) !important;
    gap:24px !important;
}

.home-vip-promo::before{
    font-size:42px !important;
    bottom:-10px !important;
}

.home-vip-promo-art{
    min-height:158px !important;
}

.home-vip-medal{
    width:104px !important;
    height:104px !important;
}

.home-vip-medal.bronze{
    left:4% !important;
    top:40px !important;
    transform:rotate(-9deg) scale(.88) !important;
}

.home-vip-medal.silver{
    left:30% !important;
    top:20px !important;
    transform:rotate(-2deg) scale(.96) !important;
}

.home-vip-medal.gold{
    left:56% !important;
    top:0 !important;
    transform:rotate(7deg) scale(1.06) !important;
}

.home-vip-promo-copy h2{
    margin:3px 0 7px !important;
    font-size:clamp(21px,2.3vw,29px) !important;
    line-height:1.12 !important;
}

.home-vip-promo-copy > p{
    font-size:11.5px !important;
    line-height:1.55 !important;
}

.home-vip-promo-points{
    margin-top:10px !important;
    gap:6px 8px !important;
}

.home-vip-promo-points span{
    padding:4px 7px !important;
    font-size:9px !important;
}

.home-vip-promo-tiers{
    margin-top:9px !important;
    gap:6px !important;
}

.home-vip-promo-tiers span{
    padding:5px 7px !important;
    font-size:9px !important;
}

.home-vip-promo .actions{
    margin-top:12px !important;
}

.home-vip-promo .actions .btn{
    padding:8px 12px !important;
    font-size:9.5px !important;
}

.home-vip-promo-note{
    margin-top:8px !important;
    font-size:8.5px !important;
}

@media(max-width:950px){
    .home-vip-promo{
        grid-template-columns:1fr !important;
        gap:8px !important;
        padding:18px 20px !important;
    }

    .home-vip-promo-art{
        min-height:128px !important;
        width:min(100%,360px) !important;
    }

    .home-vip-medal{
        width:90px !important;
        height:90px !important;
    }

    .home-vip-medal.bronze{left:10% !important;top:34px !important}
    .home-vip-medal.silver{left:36% !important;top:17px !important}
    .home-vip-medal.gold{left:62% !important;top:0 !important}
}

@media(max-width:560px){
    .home-vip-promo{
        padding:16px 15px !important;
    }

    .home-vip-promo-art{
        min-height:104px !important;
    }

    .home-vip-medal{
        width:74px !important;
        height:74px !important;
    }

    .home-vip-medal.bronze{left:8% !important;top:29px !important}
    .home-vip-medal.silver{left:36% !important;top:14px !important}
    .home-vip-medal.gold{left:64% !important;top:0 !important}

    .home-vip-promo-copy h2{
        font-size:22px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP HOME SUBITO SOTTO HEADER
   ========================================================================== */
.home-vip-under-header{
    width:min(1180px,calc(100% - 32px));
    margin:12px auto 0;
}
.home-vip-under-header .home-vip-promo{
    margin:0 0 14px !important;
}
.home-vip-under-header .home-vip-medal.gold,
.vip-plan-card.tier-3 .vip-plan-visual img,
.vip-tier-editor.tier-3 img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    object-fit:contain !important;
    image-rendering:auto !important;
}
@media(max-width:560px){
    .home-vip-under-header{
        width:min(100% - 20px,1180px);
        margin-top:9px;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP HOME PICCOLO E STRETTO SOPRA NOVITA
   ========================================================================== */

.home-vip-before-news{
    width:min(860px,calc(100% - 32px));
    margin:10px auto 14px;
}

.home-vip-before-news .home-vip-promo{
    min-height:132px !important;
    padding:12px 18px !important;
    margin:0 !important;
    grid-template-columns:170px minmax(0,1fr) !important;
    gap:16px !important;
    border-radius:13px !important;
}

.home-vip-before-news .home-vip-promo::before{
    font-size:30px !important;
    right:2px !important;
    bottom:-7px !important;
}

.home-vip-before-news .home-vip-promo-art{
    min-height:108px !important;
}

.home-vip-before-news .home-vip-medal{
    width:74px !important;
    height:74px !important;
}

.home-vip-before-news .home-vip-medal.bronze{
    left:0 !important;
    top:28px !important;
    transform:rotate(-8deg) scale(.86) !important;
}

.home-vip-before-news .home-vip-medal.silver{
    left:42px !important;
    top:15px !important;
    transform:rotate(-1deg) scale(.94) !important;
}

.home-vip-before-news .home-vip-medal.gold{
    left:84px !important;
    top:2px !important;
    transform:rotate(6deg) scale(1.02) !important;
}

.home-vip-before-news .home-vip-promo-copy .eyebrow{
    font-size:8px !important;
    letter-spacing:1.3px !important;
}

.home-vip-before-news .home-vip-promo-copy h2{
    margin:2px 0 4px !important;
    font-size:18px !important;
    line-height:1.12 !important;
    letter-spacing:-.25px !important;
}

.home-vip-before-news .home-vip-promo-copy > p{
    font-size:9.8px !important;
    line-height:1.45 !important;
    max-width:620px !important;
}

.home-vip-before-news .home-vip-promo-points{
    margin-top:7px !important;
    gap:4px 6px !important;
}

.home-vip-before-news .home-vip-promo-points span{
    padding:3px 6px !important;
    font-size:8px !important;
}

.home-vip-before-news .home-vip-promo-tiers{
    margin-top:6px !important;
    gap:4px !important;
}

.home-vip-before-news .home-vip-promo-tiers span{
    padding:3px 6px !important;
    font-size:8px !important;
}

.home-vip-before-news .home-vip-promo .actions{
    margin-top:7px !important;
    gap:6px !important;
}

.home-vip-before-news .home-vip-promo .actions .btn{
    padding:6px 9px !important;
    font-size:8.5px !important;
}

.home-vip-before-news .home-vip-promo-note{
    display:none !important;
}

@media(max-width:760px){
    .home-vip-before-news{
        width:min(100% - 20px,860px);
        margin:8px auto 12px;
    }

    .home-vip-before-news .home-vip-promo{
        grid-template-columns:130px minmax(0,1fr) !important;
        gap:12px !important;
        padding:11px 12px !important;
    }

    .home-vip-before-news .home-vip-promo-art{
        min-height:92px !important;
    }

    .home-vip-before-news .home-vip-medal{
        width:60px !important;
        height:60px !important;
    }

    .home-vip-before-news .home-vip-medal.bronze{
        left:0 !important; top:26px !important;
    }

    .home-vip-before-news .home-vip-medal.silver{
        left:34px !important; top:13px !important;
    }

    .home-vip-before-news .home-vip-medal.gold{
        left:68px !important; top:2px !important;
    }

    .home-vip-before-news .home-vip-promo-copy h2{
        font-size:16px !important;
    }

    .home-vip-before-news .home-vip-promo-tiers{
        display:none !important;
    }
}

@media(max-width:520px){
    .home-vip-before-news .home-vip-promo{
        grid-template-columns:1fr !important;
        text-align:center !important;
    }

    .home-vip-before-news .home-vip-promo-art{
        width:128px !important;
        min-height:82px !important;
        margin:0 auto !important;
    }

    .home-vip-before-news .home-vip-promo-points,
    .home-vip-before-news .home-vip-promo .actions{
        justify-content:center !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP BANNER AL POSTO DEL RIEPILOGO SERVER HOME
   ========================================================================== */

.home-vip-main-banner{
    width:100%;
    margin:0 0 16px;
}

.home-vip-main-banner .home-vip-promo{
    width:100%;
    min-height:178px !important;
    margin:0 !important;
    padding:17px 24px !important;
    display:grid !important;
    grid-template-columns:205px minmax(0,1fr) !important;
    align-items:center !important;
    gap:22px !important;
    border-radius:15px !important;
}

.home-vip-main-banner .home-vip-promo::before{
    content:"VIP" !important;
    right:18px !important;
    bottom:-12px !important;
    font-size:54px !important;
    letter-spacing:4px !important;
    color:rgba(255,255,255,.028) !important;
}

.home-vip-main-banner .home-vip-promo-art{
    min-height:138px !important;
}

.home-vip-main-banner .home-vip-medal{
    width:92px !important;
    height:92px !important;
}

.home-vip-main-banner .home-vip-medal.bronze{
    left:2px !important;
    top:34px !important;
    transform:rotate(-9deg) scale(.88) !important;
}

.home-vip-main-banner .home-vip-medal.silver{
    left:54px !important;
    top:17px !important;
    transform:rotate(-2deg) scale(.96) !important;
}

.home-vip-main-banner .home-vip-medal.gold{
    left:108px !important;
    top:0 !important;
    transform:rotate(7deg) scale(1.06) !important;
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}

.home-vip-main-banner .home-vip-promo-copy h2{
    margin:2px 0 6px !important;
    font-size:25px !important;
    line-height:1.12 !important;
}

.home-vip-main-banner .home-vip-promo-copy > p{
    max-width:820px !important;
    font-size:11px !important;
    line-height:1.5 !important;
}

.home-vip-main-banner .home-vip-promo-points{
    margin-top:8px !important;
}

.home-vip-main-banner .home-vip-promo-tiers{
    margin-top:7px !important;
}

.home-vip-main-banner .home-vip-promo .actions{
    margin-top:9px !important;
}

.home-vip-main-banner .home-vip-promo-note{
    display:none !important;
}

@media(max-width:760px){
    .home-vip-main-banner .home-vip-promo{
        grid-template-columns:1fr !important;
        gap:7px !important;
        padding:15px !important;
    }

    .home-vip-main-banner .home-vip-promo-art{
        width:190px !important;
        min-height:112px !important;
        margin:0 auto !important;
    }

    .home-vip-main-banner .home-vip-medal{
        width:76px !important;
        height:76px !important;
    }

    .home-vip-main-banner .home-vip-medal.bronze{left:0 !important;top:28px !important}
    .home-vip-main-banner .home-vip-medal.silver{left:50px !important;top:14px !important}
    .home-vip-main-banner .home-vip-medal.gold{left:102px !important;top:0 !important}
}


/* ==========================================================================
   MuOnlineItalia - VIP INTEGRATO COME IL VECCHIO MODULO SERVER
   ========================================================================== */

.home-vip-integrated-strip{
    overflow:hidden;
    align-items:stretch;
}

.home-vip-integrated-strip > *{
    min-width:0;
}

.vip-strip-brand{
    position:relative;
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px 12px;
    text-decoration:none;
    color:inherit;
    overflow:hidden;
}

.vip-strip-medals{
    position:relative;
    width:82px;
    height:58px;
    flex:0 0 82px;
}

.vip-strip-medals img{
    position:absolute;
    display:block;
    width:48px;
    height:48px;
    object-fit:contain;
    filter:drop-shadow(0 5px 8px rgba(0,0,0,.28));
}

.vip-strip-medals img:nth-child(1){
    left:0;
    top:10px;
    transform:rotate(-7deg) scale(.84);
    z-index:1;
}

.vip-strip-medals img:nth-child(2){
    left:19px;
    top:5px;
    transform:rotate(-1deg) scale(.91);
    z-index:2;
}

.vip-strip-medals img:nth-child(3){
    left:39px;
    top:0;
    transform:rotate(6deg);
    z-index:3;
}

.vip-strip-brand-copy{
    min-width:0;
}

.vip-strip-brand-copy span,
.vip-strip-tier span,
.vip-strip-once span{
    display:block;
    color:#7890ad;
    font-size:8px;
    font-weight:800;
    letter-spacing:1.35px;
    text-transform:uppercase;
}

.vip-strip-brand-copy strong{
    display:block;
    margin-top:3px;
    color:#f0c36d;
    font-size:23px;
    line-height:1;
    letter-spacing:.5px;
    text-shadow:0 0 20px rgba(219,160,65,.12);
}

.vip-strip-tier,
.vip-strip-once{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:10px 14px;
    text-decoration:none;
    border-left:1px solid rgba(255,255,255,.055);
    transition:background .18s ease,border-color .18s ease;
}

.vip-strip-tier:hover{
    background:rgba(220,162,68,.035);
    border-left-color:rgba(220,162,68,.13);
}

.vip-strip-tier strong,
.vip-strip-once strong{
    display:block;
    margin-top:4px;
    color:#e8edf3;
    font-size:17px;
    line-height:1;
}

.vip-strip-tier small,
.vip-strip-once small{
    display:block;
    margin-top:5px;
    color:#758293;
    font-size:8.5px;
    white-space:nowrap;
}

.vip-strip-tier.tier-1 strong{color:#d99a70}
.vip-strip-tier.tier-2 strong{color:#d8e0e8}
.vip-strip-tier.tier-3 strong{color:#edc86d}

.vip-strip-once strong{
    color:#77d9a0;
    font-size:14px;
}

.vip-strip-cta{
    display:flex !important;
    flex-direction:column;
    justify-content:center;
    min-width:150px;
}

.vip-strip-cta span{
    color:#9c845a !important;
}

.vip-strip-cta strong{
    color:#f0c36d !important;
}

@media(max-width:1000px){
    .home-vip-integrated-strip{
        grid-template-columns:1.25fr repeat(3,.75fr) 1fr 1fr !important;
    }

    .vip-strip-medals{
        width:68px;
        flex-basis:68px;
    }

    .vip-strip-brand-copy strong{
        font-size:20px;
    }
}

@media(max-width:760px){
    .home-vip-integrated-strip{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
    }

    .vip-strip-brand,
    .vip-strip-cta{
        grid-column:1 / -1;
    }

    .vip-strip-brand{
        justify-content:center;
    }

    .vip-strip-tier,
    .vip-strip-once{
        min-height:68px;
    }

    .vip-strip-cta{
        min-height:64px;
        text-align:center;
    }
}


/* ==========================================================================
   MuOnlineItalia - VECCHIO MODULO SERVER COMPATTO SOPRA VIP
   ========================================================================== */

.home-server-strip-compact{
    min-height:64px !important;
    margin-bottom:9px !important;
}

.home-server-strip-compact > *{
    min-height:64px !important;
}

.home-server-strip-compact .server-brand,
.home-server-strip-compact .server-metric,
.home-server-strip-compact .server-forum{
    padding-top:8px !important;
    padding-bottom:8px !important;
}

.home-server-strip-compact .server-brand span,
.home-server-strip-compact .server-metric span,
.home-server-strip-compact .server-forum span{
    font-size:7.5px !important;
    letter-spacing:1.3px !important;
}

.home-server-strip-compact .server-brand strong{
    margin-top:4px !important;
    font-size:17px !important;
    line-height:1.05 !important;
}

.home-server-strip-compact .server-metric b{
    margin-top:3px !important;
    font-size:19px !important;
    line-height:1 !important;
}

.home-server-strip-compact .server-forum strong{
    margin-top:4px !important;
    font-size:17px !important;
    line-height:1 !important;
}

.home-server-strip-compact .status-dot{
    width:8px !important;
    height:8px !important;
}

@media(max-width:760px){
    .home-server-strip-compact{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
    }

    .home-server-strip-compact .server-brand,
    .home-server-strip-compact .server-forum{
        grid-column:1 / -1;
    }

    .home-server-strip-compact > *{
        min-height:56px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - ORDINE HOME: SERVER SOPRA LOGO, VIP SOTTO LOGO
   ========================================================================== */

.home-server-strip-compact{
    margin-top:0 !important;
    margin-bottom:10px !important;
}

.home-server-strip-compact + .hero-v27{
    margin-top:0 !important;
}

.hero-v27 + .home-vip-integrated-strip,
.hero-v27 ~ .home-vip-integrated-strip{
    margin-top:10px !important;
}



/* ==========================================================================
   MuOnlineItalia - SERVER AGGANCIATO AL LOGO/HERO
   ========================================================================== */

.home-hero-attached-stack{
    width:100%;
    margin:0 0 10px !important;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:0 !important;
    border-radius:16px;
}

.home-hero-attached-stack > .home-server-strip-compact{
    width:100%;
    margin:0 !important;
    border-radius:16px 16px 0 0 !important;
    border-bottom-color:rgba(219,160,65,.12) !important;
    position:relative;
    z-index:2;
}

.home-hero-attached-stack > .hero-v27{
    width:100%;
    margin:0 !important;
    border-radius:0 0 16px 16px !important;
    border-top:0 !important;
    position:relative;
    z-index:1;
}

/* Una sola giunzione, come se fosse un unico modulo. */
.home-hero-attached-stack > .home-server-strip-compact::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:1px;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(218,161,67,.18) 18%,
        rgba(218,161,67,.30) 50%,
        rgba(218,161,67,.18) 82%,
        transparent
    );
    pointer-events:none;
}

.home-hero-attached-stack + .notice,
.home-hero-attached-stack ~ .home-vip-integrated-strip{
    margin-top:10px !important;
}

@media(max-width:760px){
    .home-hero-attached-stack{
        border-radius:13px;
    }

    .home-hero-attached-stack > .home-server-strip-compact{
        border-radius:13px 13px 0 0 !important;
    }

    .home-hero-attached-stack > .hero-v27{
        border-radius:0 0 13px 13px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - SERVER + HERO + VIP TUTTI AGGANCIATI
   ========================================================================== */

.home-hero-attached-stack{
    gap:0 !important;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.055);
    border-radius:16px !important;
    background:#080c12;
}

/* Il bordo esterno appartiene allo stack: i tre pezzi non devono avere stacchi. */
.home-hero-attached-stack > .home-server-strip-compact,
.home-hero-attached-stack > .hero-v27,
.home-hero-attached-stack > .home-vip-integrated-strip{
    width:100% !important;
    margin:0 !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
}

/* Parte alta: Server */
.home-hero-attached-stack > .home-server-strip-compact{
    border-top:0 !important;
    border-bottom:1px solid rgba(219,160,65,.11) !important;
}

/* Parte centrale: Hero/logo */
.home-hero-attached-stack > .hero-v27{
    border-top:0 !important;
    border-bottom:1px solid rgba(219,160,65,.11) !important;
}

/* Parte bassa: VIP */
.home-hero-attached-stack > .home-vip-integrated-strip{
    border-top:0 !important;
    border-bottom:0 !important;
    position:relative;
    z-index:2;
}

/* Linee di giunzione molto leggere, come nel vecchio modulo. */
.home-hero-attached-stack > .home-server-strip-compact::after,
.home-hero-attached-stack > .hero-v27::after{
    content:"";
    position:absolute;
    left:3%;
    right:3%;
    bottom:-1px;
    height:1px;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(218,161,67,.13) 18%,
        rgba(218,161,67,.22) 50%,
        rgba(218,161,67,.13) 82%,
        transparent
    );
    pointer-events:none;
}

/* Elimina qualunque vecchio margine che teneva il VIP separato. */
.home-hero-attached-stack ~ .home-vip-integrated-strip,
.hero-v27 ~ .home-vip-integrated-strip{
    margin-top:0 !important;
}

.home-hero-attached-stack{
    margin-bottom:16px !important;
}

@media(max-width:760px){
    .home-hero-attached-stack{
        border-radius:13px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - AGGANCIO CORRETTO COME MODULO ORIGINALE
   Server e VIP restano moduli autonomi e si sovrappongono al bordo del Hero.
   ========================================================================== */

.home-hero-attached-stack{
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    gap:0 !important;
    margin:0 0 16px !important;
    padding:0 !important;
}

/* HERO torna ad essere un modulo autonomo */
.home-hero-attached-stack > .hero-v27{
    position:relative !important;
    z-index:1 !important;
    width:100% !important;
    margin:0 !important;
    border-radius:22px !important;
    border:1px solid rgba(255,255,255,.055) !important;
    overflow:hidden !important;
}

/* SERVER: card autonoma, agganciata SOPRA al bordo del Hero */
.home-hero-attached-stack > .home-server-strip-compact{
    position:relative !important;
    z-index:3 !important;
    width:calc(100% - 52px) !important;
    margin:0 auto -11px !important;
    border-radius:16px !important;
    border:1px solid rgba(255,255,255,.075) !important;
    background:rgba(7,11,17,.985) !important;
    box-shadow:
        0 10px 28px rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.018) !important;
    overflow:hidden !important;
}

/* VIP: card autonoma, agganciata SOTTO al bordo del Hero */
.home-hero-attached-stack > .home-vip-integrated-strip{
    position:relative !important;
    z-index:3 !important;
    width:calc(100% - 52px) !important;
    margin:-11px auto 0 !important;
    border-radius:16px !important;
    border:1px solid rgba(218,161,67,.105) !important;
    background:rgba(7,11,17,.985) !important;
    box-shadow:
        0 12px 28px rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.018) !important;
    overflow:hidden !important;
}

/* Tolgo le pseudo-linee usate dal vecchio fix "fuso". */
.home-hero-attached-stack > .home-server-strip-compact::after,
.home-hero-attached-stack > .hero-v27::after{
    display:none !important;
    content:none !important;
}

/* Piccolo spazio ottico dentro il Hero per non coprire contenuti */
.home-hero-attached-stack > .hero-v27{
    padding-top:9px !important;
    padding-bottom:9px !important;
}

/* Effetto di incastro: il bordo Hero resta visibile dietro le card. */
.home-hero-attached-stack > .home-server-strip-compact{
    transform:translateY(0) !important;
}

.home-hero-attached-stack > .home-vip-integrated-strip{
    transform:translateY(0) !important;
}

/* Mantieni la Gold sempre visibile. */
.home-hero-attached-stack .vip-strip-medals img:nth-child(3),
.home-hero-attached-stack .vip-plan-card.tier-3 img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}

/* Mobile: stesso effetto, ma sovrapposizione più piccola. */
@media(max-width:760px){
    .home-hero-attached-stack > .home-server-strip-compact,
    .home-hero-attached-stack > .home-vip-integrated-strip{
        width:calc(100% - 20px) !important;
        border-radius:13px !important;
    }

    .home-hero-attached-stack > .home-server-strip-compact{
        margin-bottom:-7px !important;
    }

    .home-hero-attached-stack > .home-vip-integrated-strip{
        margin-top:-7px !important;
    }

    .home-hero-attached-stack > .hero-v27{
        border-radius:16px !important;
        padding-top:6px !important;
        padding-bottom:6px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - Testi descrittivi ripristinati nel modulo VIP
   ========================================================================== */

.vip-strip-brand-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.vip-strip-brand-note{
    display:block;
    margin-top:6px;
    color:#7b8796;
    font-size:9px;
    line-height:1.35;
    max-width:240px;
}

.vip-strip-cta{
    align-items:flex-start;
}

.vip-strip-cta-note{
    display:block;
    margin-top:6px;
    color:#7b8796;
    font-size:8.8px;
    line-height:1.35;
    white-space:normal;
    max-width:180px;
}

@media(max-width:1000px){
    .vip-strip-brand-note{
        max-width:220px;
        font-size:8.7px;
    }

    .vip-strip-cta-note{
        max-width:150px;
        font-size:8.4px;
    }
}

@media(max-width:760px){
    .vip-strip-brand-note,
    .vip-strip-cta-note{
        max-width:none;
        text-align:center;
    }

    .vip-strip-cta{
        align-items:center;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP ORIZZONTALE COME PRIMA
   ========================================================================== */

.home-hero-attached-stack > .home-vip-integrated-strip{
    display:grid !important;
    grid-template-columns:
        minmax(360px,2.05fr)
        repeat(3,minmax(110px,.72fr))
        minmax(135px,.85fr)
        minmax(145px,.90fr) !important;
    grid-auto-flow:column !important;
    grid-auto-rows:1fr !important;
    align-items:stretch !important;
    min-height:86px !important;
    width:calc(100% - 52px) !important;
    margin:-11px auto 0 !important;
    border-radius:16px !important;
    overflow:hidden !important;
}

.home-hero-attached-stack > .home-vip-integrated-strip > *{
    grid-row:1 !important;
    min-width:0 !important;
    min-height:86px !important;
}

.home-vip-integrated-strip .vip-strip-brand{
    grid-column:1 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:11px !important;
    padding:9px 13px !important;
    text-align:left !important;
}

.home-vip-integrated-strip .vip-strip-medals{
    width:82px !important;
    height:58px !important;
    flex:0 0 82px !important;
}

.home-vip-integrated-strip .vip-strip-brand-copy{
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
}

.home-vip-integrated-strip .vip-strip-brand-copy strong{
    font-size:18px !important;
    line-height:1 !important;
}

.home-vip-integrated-strip .vip-strip-brand-note{
    display:block !important;
    max-width:390px !important;
    margin-top:5px !important;
    color:#7f8b9a !important;
    font-size:8.5px !important;
    line-height:1.35 !important;
    white-space:normal !important;
}

.home-vip-integrated-strip .vip-strip-tier,
.home-vip-integrated-strip .vip-strip-once,
.home-vip-integrated-strip .vip-strip-cta{
    min-height:86px !important;
}

.home-vip-integrated-strip .vip-strip-tier{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:9px 11px !important;
}

.home-vip-integrated-strip .vip-strip-tier strong{
    font-size:17px !important;
}

.home-vip-integrated-strip .vip-strip-tier small,
.home-vip-integrated-strip .vip-strip-once small{
    font-size:8px !important;
}

.home-vip-integrated-strip .vip-strip-once{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:9px 11px !important;
}

.home-vip-integrated-strip .vip-strip-once strong{
    font-size:12px !important;
    line-height:1.15 !important;
}

.home-vip-integrated-strip .vip-strip-cta{
    grid-column:6 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:9px 12px !important;
    text-align:left !important;
}

.home-vip-integrated-strip .vip-strip-cta strong{
    font-size:15px !important;
}

.home-vip-integrated-strip .vip-strip-cta-note{
    display:block !important;
    max-width:130px !important;
    margin-top:5px !important;
    font-size:8px !important;
    line-height:1.3 !important;
    white-space:normal !important;
}

@media(min-width:761px) and (max-width:1100px){
    .home-hero-attached-stack > .home-vip-integrated-strip{
        grid-template-columns:
            minmax(285px,1.75fr)
            repeat(3,minmax(88px,.64fr))
            minmax(108px,.72fr)
            minmax(112px,.74fr) !important;
    }

    .home-vip-integrated-strip .vip-strip-medals{
        width:66px !important;
        flex-basis:66px !important;
    }

    .home-vip-integrated-strip .vip-strip-brand-note{
        max-width:300px !important;
        font-size:7.8px !important;
    }
}

@media(max-width:760px){
    .home-hero-attached-stack > .home-vip-integrated-strip{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        grid-auto-flow:row !important;
        grid-auto-rows:auto !important;
        width:calc(100% - 20px) !important;
        margin:-7px auto 0 !important;
    }

    .home-hero-attached-stack > .home-vip-integrated-strip > *{
        grid-row:auto !important;
        min-height:64px !important;
    }

    .home-vip-integrated-strip .vip-strip-brand{
        grid-column:1 / -1 !important;
        min-height:88px !important;
    }

    .home-vip-integrated-strip .vip-strip-cta{
        grid-column:1 / -1 !important;
        align-items:center !important;
        text-align:center !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP ORIZZONTALE PIU COMPLETO + POCO PIU ALTO
   ========================================================================== */

.home-hero-attached-stack > .home-vip-integrated-strip{
    min-height:104px !important;
    grid-template-columns:
        minmax(405px,2.20fr)
        repeat(3,minmax(108px,.70fr))
        minmax(145px,.86fr)
        minmax(150px,.90fr) !important;
}

.home-hero-attached-stack > .home-vip-integrated-strip > *{
    min-height:104px !important;
}

.home-vip-integrated-strip .vip-strip-brand{
    padding:11px 15px !important;
    gap:13px !important;
}

.home-vip-integrated-strip .vip-strip-medals{
    width:94px !important;
    height:70px !important;
    flex:0 0 94px !important;
}

.home-vip-integrated-strip .vip-strip-medals img{
    width:57px !important;
    height:57px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(1){
    left:0 !important;
    top:13px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(2){
    left:22px !important;
    top:7px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(3){
    left:45px !important;
    top:0 !important;
}

.home-vip-integrated-strip .vip-strip-brand-copy > span:first-child{
    font-size:8px !important;
    letter-spacing:1.55px !important;
}

.home-vip-integrated-strip .vip-strip-brand-copy strong{
    margin-top:3px !important;
    font-size:19px !important;
}

.home-vip-integrated-strip .vip-strip-brand-note{
    max-width:430px !important;
    margin-top:6px !important;
    font-size:9px !important;
    line-height:1.42 !important;
    color:#8793a2 !important;
    white-space:normal !important;
}

.vip-strip-brand-legal{
    display:block;
    margin-top:4px;
    color:#645f57;
    font-size:7.6px;
    line-height:1.3;
}

.home-vip-integrated-strip .vip-strip-tier{
    min-height:104px !important;
    padding:11px 12px !important;
}

.home-vip-integrated-strip .vip-strip-tier span{
    font-size:7.8px !important;
}

.home-vip-integrated-strip .vip-strip-tier strong{
    margin-top:5px !important;
    font-size:18px !important;
}

.home-vip-integrated-strip .vip-strip-tier small{
    margin-top:6px !important;
    font-size:8.3px !important;
    font-weight:800;
}

.home-vip-integrated-strip .vip-strip-once{
    min-height:104px !important;
    padding:11px 12px !important;
}

.home-vip-integrated-strip .vip-strip-once strong{
    margin-top:5px !important;
    font-size:13px !important;
}

.home-vip-integrated-strip .vip-strip-once small{
    margin-top:6px !important;
    max-width:130px;
    white-space:normal !important;
    line-height:1.3;
}

.home-vip-integrated-strip .vip-strip-cta{
    min-height:104px !important;
    padding:11px 13px !important;
}

.home-vip-integrated-strip .vip-strip-cta strong{
    font-size:16px !important;
}

.home-vip-integrated-strip .vip-strip-cta-note{
    max-width:145px !important;
    margin-top:6px !important;
    font-size:8.2px !important;
    line-height:1.35 !important;
}

.home-hero-attached-stack > .home-vip-integrated-strip{
    width:calc(100% - 52px) !important;
    margin:-11px auto 0 !important;
}

@media(min-width:761px) and (max-width:1100px){
    .home-hero-attached-stack > .home-vip-integrated-strip{
        min-height:98px !important;
        grid-template-columns:
            minmax(320px,1.9fr)
            repeat(3,minmax(86px,.63fr))
            minmax(115px,.75fr)
            minmax(120px,.78fr) !important;
    }

    .home-hero-attached-stack > .home-vip-integrated-strip > *{
        min-height:98px !important;
    }

    .home-vip-integrated-strip .vip-strip-medals{
        width:74px !important;
        flex-basis:74px !important;
    }

    .home-vip-integrated-strip .vip-strip-brand-note{
        max-width:330px !important;
        font-size:8px !important;
    }

    .vip-strip-brand-legal{
        font-size:7px;
    }
}

@media(max-width:760px){
    .home-hero-attached-stack > .home-vip-integrated-strip{
        min-height:0 !important;
    }

    .home-vip-integrated-strip .vip-strip-brand{
        min-height:104px !important;
    }

    .home-vip-integrated-strip .vip-strip-brand-note{
        max-width:none !important;
    }

    .vip-strip-brand-legal{
        text-align:left;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP HOME: STILE PRIMA VERSIONE, MODULO ATTUALE INVARIATO
   ========================================================================== */

.home-vip-integrated-strip .vip-strip-brand-first-style{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:13px !important;
    padding:12px 15px !important;
    text-align:left !important;
    background:
        radial-gradient(circle at 14% 50%,rgba(220,158,60,.075),transparent 38%);
}

.home-vip-integrated-strip .vip-strip-first-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
}

.vip-strip-first-kicker{
    color:#c19450;
    font-size:7.8px;
    font-weight:900;
    letter-spacing:1.55px;
    text-transform:uppercase;
}

.vip-strip-first-title{
    margin-top:3px;
    color:#eef2f6;
    font-size:16px;
    line-height:1.12;
}

.vip-strip-first-text{
    margin:4px 0 0;
    max-width:410px;
    color:#8995a4;
    font-size:8.7px;
    line-height:1.42;
}

.vip-strip-first-points{
    display:flex;
    flex-wrap:wrap;
    gap:4px 6px;
    margin-top:6px;
}

.vip-strip-first-points span{
    display:inline-flex;
    align-items:center;
    min-height:21px;
    padding:3px 6px;
    border:1px solid rgba(91,190,130,.10);
    border-radius:7px;
    background:rgba(91,190,130,.025);
    color:#90a99a;
    font-size:7.4px;
    font-weight:800;
    white-space:nowrap;
}

/* Mantieni l'altezza elegante: poco più alta della fascia originale, non banner grande */
.home-hero-attached-stack > .home-vip-integrated-strip{
    min-height:102px !important;
    grid-template-columns:
        minmax(405px,2.2fr)
        repeat(3,minmax(105px,.68fr))
        minmax(135px,.82fr)
        minmax(140px,.85fr) !important;
}

.home-hero-attached-stack > .home-vip-integrated-strip > *{
    min-height:102px !important;
}

.home-vip-integrated-strip .vip-strip-medals{
    width:92px !important;
    height:68px !important;
    flex:0 0 92px !important;
}

.home-vip-integrated-strip .vip-strip-medals img{
    width:55px !important;
    height:55px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(1){
    left:0 !important;
    top:13px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(2){
    left:21px !important;
    top:7px !important;
}

.home-vip-integrated-strip .vip-strip-medals img:nth-child(3){
    left:43px !important;
    top:0 !important;
}

/* Celle tier pulite, come il primo banner */
.home-vip-integrated-strip .vip-strip-tier{
    min-height:102px !important;
    padding:11px !important;
}

.home-vip-integrated-strip .vip-strip-tier strong{
    font-size:18px !important;
}

.home-vip-integrated-strip .vip-strip-tier small{
    font-size:8.2px !important;
}

.home-vip-integrated-strip .vip-strip-once{
    min-height:102px !important;
    padding:11px !important;
}

.home-vip-integrated-strip .vip-strip-once strong{
    font-size:13px !important;
}

.home-vip-integrated-strip .vip-strip-once small{
    margin-top:5px !important;
    white-space:normal !important;
    line-height:1.3;
    font-size:7.8px !important;
}

.home-vip-integrated-strip .vip-strip-cta{
    min-height:102px !important;
    padding:11px 12px !important;
}

.home-vip-integrated-strip .vip-strip-cta strong{
    font-size:16px !important;
}

/* MASTER ADMIN */
.vip-master-system-switch{
    border-color:rgba(218,161,67,.20) !important;
    background:
        linear-gradient(135deg,rgba(218,161,67,.045),rgba(255,255,255,.006)) !important;
}

.vip-system-disabled-public{
    max-width:780px;
    margin:30px auto;
    text-align:center;
    padding:32px;
}

.vip-system-disabled-public h1{
    margin:6px 0 10px;
}

.vip-system-disabled-public p{
    margin:0 auto 18px;
    max-width:620px;
    color:#8d99a8;
    line-height:1.6;
}

@media(min-width:761px) and (max-width:1100px){
    .home-hero-attached-stack > .home-vip-integrated-strip{
        grid-template-columns:
            minmax(315px,1.85fr)
            repeat(3,minmax(84px,.61fr))
            minmax(110px,.72fr)
            minmax(112px,.74fr) !important;
    }

    .vip-strip-first-text{
        max-width:320px;
        font-size:8px;
    }

    .vip-strip-first-points span{
        font-size:7px;
    }
}

@media(max-width:760px){
    .home-vip-integrated-strip .vip-strip-brand-first-style{
        grid-column:1 / -1 !important;
        min-height:112px !important;
    }

    .vip-strip-first-points{
        justify-content:flex-start;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP MASTER V2: OFF GLOBALE
   ========================================================================== */

.vip-master-off-notice,
.vip-master-off-secondary{
    border-color:rgba(198,91,91,.18) !important;
    background:
        linear-gradient(135deg,rgba(155,53,53,.065),rgba(255,255,255,.008)) !important;
}

.vip-master-off-notice{
    display:flex;
    align-items:center;
    min-height:110px;
    padding:20px 22px;
    margin-bottom:12px;
}

.vip-master-off-notice h2{
    margin:4px 0 6px;
    color:#e3e8ef;
}

.vip-master-off-notice p{
    margin:0;
    max-width:920px;
    color:#8a96a5;
    line-height:1.55;
}

.vip-master-off-secondary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:15px 18px;
    margin-top:12px;
}

.vip-master-off-secondary strong{
    color:#dfe5ec;
}

.vip-master-off-secondary span{
    color:#7f8b99;
    font-size:12px;
}

.vip-master-system-switch{
    box-shadow:inset 0 0 0 1px rgba(218,161,67,.035);
}

/* Visually show dependent controls as dormant while master is OFF. */
.vip-master-system-switch:has(input:not(:checked)) ~ .vip-required-switch,
.vip-master-system-switch:has(input:not(:checked)) ~ .vip-payment-switch{
    opacity:.48;
    filter:saturate(.55);
}

@media(max-width:760px){
    .vip-master-off-secondary{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* ==========================================================================
   MuOnlineItalia - HOME: TESTI PIU LEGGIBILI
   Mantiene layout e aggancio attuali, aumenta solo la leggibilita.
   ========================================================================== */

/* ---------- MODULO SERVER SOPRA HERO ---------- */

.home-server-strip-compact .server-brand span,
.home-server-strip-compact .server-metric span,
.home-server-strip-compact .server-forum span{
    font-size:9.5px !important;
    line-height:1.15 !important;
    letter-spacing:1.05px !important;
}

.home-server-strip-compact .server-brand strong{
    font-size:18px !important;
    line-height:1.1 !important;
}

.home-server-strip-compact .server-metric b{
    font-size:21px !important;
    line-height:1 !important;
}

.home-server-strip-compact .server-forum strong{
    font-size:18px !important;
    line-height:1.05 !important;
}

/* ---------- MODULO VIP HOME ---------- */

.vip-strip-first-kicker{
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:1.25px !important;
}

.vip-strip-first-title{
    margin-top:4px !important;
    font-size:19px !important;
    line-height:1.15 !important;
}

.vip-strip-first-text{
    margin-top:5px !important;
    max-width:440px !important;
    font-size:11px !important;
    line-height:1.42 !important;
    color:#a0aab7 !important;
}

.vip-strip-first-points{
    margin-top:7px !important;
    gap:5px 7px !important;
}

.vip-strip-first-points span{
    min-height:23px !important;
    padding:3px 7px !important;
    font-size:9.5px !important;
    line-height:1.15 !important;
}

/* Bronze / Silver / Gold */
.home-vip-integrated-strip .vip-strip-tier span{
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:1px !important;
}

.home-vip-integrated-strip .vip-strip-tier strong{
    margin-top:5px !important;
    font-size:21px !important;
    line-height:1 !important;
}

.home-vip-integrated-strip .vip-strip-tier small{
    margin-top:6px !important;
    font-size:10px !important;
    line-height:1.2 !important;
}

/* Accesso permanente */
.home-vip-integrated-strip .vip-strip-once span{
    font-size:9.5px !important;
    line-height:1.15 !important;
}

.home-vip-integrated-strip .vip-strip-once strong{
    margin-top:5px !important;
    font-size:15px !important;
    line-height:1.12 !important;
}

.home-vip-integrated-strip .vip-strip-once small{
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.3 !important;
}

/* Scopri */
.home-vip-integrated-strip .vip-strip-cta span{
    font-size:9.5px !important;
    line-height:1.15 !important;
    letter-spacing:1px !important;
}

.home-vip-integrated-strip .vip-strip-cta strong{
    margin-top:4px !important;
    font-size:18px !important;
    line-height:1.05 !important;
}

.home-vip-integrated-strip .vip-strip-cta-note{
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.25 !important;
    color:#8f99a6 !important;
}

/* Un filo di altezza in piu solo per evitare testo schiacciato */
.home-hero-attached-stack > .home-vip-integrated-strip,
.home-hero-attached-stack > .home-vip-integrated-strip > *{
    min-height:112px !important;
}

/* Tablet: NON rimpicciolire di nuovo i testi */
@media(min-width:761px) and (max-width:1100px){
    .vip-strip-first-text{
        max-width:350px !important;
        font-size:10px !important;
    }

    .vip-strip-first-points span{
        font-size:9px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier span{
        font-size:9px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier strong{
        font-size:19px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier small,
    .home-vip-integrated-strip .vip-strip-once small,
    .home-vip-integrated-strip .vip-strip-cta-note{
        font-size:9px !important;
    }
}

/* Mobile: testo leggibile, senza tornare minuscolo */
@media(max-width:760px){
    .vip-strip-first-kicker{
        font-size:10px !important;
    }

    .vip-strip-first-title{
        font-size:18px !important;
    }

    .vip-strip-first-text{
        font-size:10.5px !important;
    }

    .vip-strip-first-points span{
        font-size:9px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier span{
        font-size:9.5px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier small,
    .home-vip-integrated-strip .vip-strip-once small,
    .home-vip-integrated-strip .vip-strip-cta-note{
        font-size:9.5px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - HOME SERVER ONLINE/OFFLINE LIVE
   ========================================================================== */

.home-server-strip-compact .server-brand-live{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}

.home-server-strip-compact .server-brand-live > span{
    font-size:9px !important;
    font-weight:800 !important;
    letter-spacing:1.15px !important;
    color:#718096 !important;
}

.home-server-strip-compact .server-brand-live > strong{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    margin-top:5px !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:.25px !important;
    white-space:nowrap;
}

.home-server-strip-compact .server-brand-live > strong.is-online{
    color:#8ee6ad !important;
}

.home-server-strip-compact .server-brand-live > strong.is-offline{
    color:#f08b8b !important;
}

.home-server-strip-compact .status-dot-live{
    position:relative;
    display:inline-block !important;
    width:10px !important;
    height:10px !important;
    flex:0 0 10px;
    border-radius:50% !important;
    animation:eimu-server-status-pulse 1.25s ease-in-out infinite !important;
}

.home-server-strip-compact .status-dot-live.on{
    background:#48d879 !important;
    box-shadow:
        0 0 0 3px rgba(72,216,121,.10),
        0 0 10px rgba(72,216,121,.65),
        0 0 18px rgba(72,216,121,.22) !important;
}

.home-server-strip-compact .status-dot-live.off{
    background:#e85e5e !important;
    box-shadow:
        0 0 0 3px rgba(232,94,94,.10),
        0 0 10px rgba(232,94,94,.65),
        0 0 18px rgba(232,94,94,.22) !important;
}

@keyframes eimu-server-status-pulse{
    0%,100%{
        opacity:1;
        transform:scale(1);
    }
    50%{
        opacity:.42;
        transform:scale(.82);
    }
}

@media(max-width:760px){
    .home-server-strip-compact .server-brand-live > strong{
        font-size:17px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - VIP EVIDENZIATO NELLA BARRA SUPERIORE
   ========================================================================== */

.nav-vip-highlight{
    color:#e8c56a !important;
    font-size:15px !important;
    font-weight:900 !important;
    letter-spacing:.65px !important;
    text-shadow:
        0 0 10px rgba(232,197,106,.12),
        0 0 18px rgba(232,197,106,.08) !important;
}

.nav-vip-highlight:hover,
.nav-vip-highlight:focus-visible{
    color:#f4d982 !important;
    text-shadow:
        0 0 10px rgba(244,217,130,.22),
        0 0 20px rgba(244,217,130,.12) !important;
}

.nav-vip-highlight::after{
    background:#d9b65b !important;
}

/* Un filo più grande anche su tablet/mobile, senza rompere la barra */
@media(max-width:900px){
    .nav-vip-highlight{
        font-size:14px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - HERO HOME PULITO DA ELEMENTI RIDONDANTI
   ========================================================================== */

.hero-v27-copy .actions{
    margin-top:18px !important;
}

.hero-v27-copy .actions:empty{
    display:none !important;
}

.hero-v27-copy .hero-magic-tagline{
    margin-bottom:0 !important;
}

/* Sicurezza: il vecchio contatore online non deve riapparire nel Hero */
.hero-v27-copy > .hero-online{
    display:none !important;
}


/* ==========================================================================
   MuOnlineItalia - ADMIN / SICUREZZA PASSWORD PIU COMPATTA
   ========================================================================== */

.admin-password-security-note{
    padding:10px 14px !important;
    margin-top:10px !important;
    margin-bottom:10px !important;
    min-height:0 !important;
    border-radius:11px !important;
}

.admin-password-security-note > strong{
    display:block !important;
    margin:0 0 4px !important;
    font-size:13px !important;
    line-height:1.2 !important;
}

.admin-password-security-note > p{
    margin:0 !important;
    max-width:none !important;
    font-size:11.5px !important;
    line-height:1.4 !important;
    color:#8f9aa8 !important;
}

@media(max-width:760px){
    .admin-password-security-note{
        padding:9px 11px !important;
    }

    .admin-password-security-note > strong{
        font-size:12.5px !important;
    }

    .admin-password-security-note > p{
        font-size:11px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - REGISTRAZIONE: VIP SPIEGATO IN CHIARO
   ========================================================================== */

.registration-vip-disclosure{
    margin-top:14px;
    padding:14px;
    border:1px solid rgba(218,161,67,.16);
    border-radius:13px;
    background:
        linear-gradient(135deg,rgba(218,161,67,.055),rgba(255,255,255,.008));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.018);
}

.registration-vip-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.registration-vip-head > div{
    min-width:0;
}

.registration-vip-kicker{
    display:block;
    color:#c59a55;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.35px;
}

.registration-vip-head strong{
    display:block;
    margin-top:3px;
    color:#edf1f5;
    font-size:15px;
    line-height:1.2;
}

.registration-vip-once{
    flex:0 0 auto;
    padding:5px 7px;
    border:1px solid rgba(96,190,131,.13);
    border-radius:7px;
    color:#91b19d;
    background:rgba(96,190,131,.035);
    font-size:8px;
    font-weight:900;
    letter-spacing:.55px;
    white-space:nowrap;
}

.registration-vip-intro{
    margin:8px 0 0;
    color:#a0a9b5;
    font-size:11.5px;
    line-height:1.5;
}

.registration-vip-tiers{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:7px;
    margin-top:11px;
}

.registration-vip-tier{
    min-width:0;
    padding:8px 9px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:9px;
    background:rgba(255,255,255,.012);
}

.registration-vip-tier > span{
    display:block;
    color:#8794a4;
    font-size:9px;
    font-weight:800;
    letter-spacing:.45px;
}

.registration-vip-tier > strong{
    display:block;
    margin-top:3px;
    font-size:17px;
    line-height:1;
}

.registration-vip-tier > small{
    display:block;
    margin-top:5px;
    color:#819080;
    font-size:9.5px;
    font-weight:800;
}

.registration-vip-tier.tier-1 > strong{color:#d99a70}
.registration-vip-tier.tier-2 > strong{color:#d8e0e8}
.registration-vip-tier.tier-3 > strong{color:#edc86d}

.registration-vip-rules{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:10px;
}

.registration-vip-rules span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 7px;
    border:1px solid rgba(96,190,131,.09);
    border-radius:7px;
    background:rgba(96,190,131,.022);
    color:#92a89a;
    font-size:9px;
    font-weight:800;
}

.registration-vip-legal{
    margin:9px 0 0;
    color:#727d8a;
    font-size:9.5px;
    line-height:1.45;
}

.registration-vip-link{
    display:inline-block;
    margin-top:8px;
    color:#d8b765;
    font-size:10px;
    font-weight:800;
    text-decoration:none;
}

.registration-vip-link:hover{
    color:#efd37d;
}

@media(max-width:760px){
    .registration-vip-head{
        flex-direction:column;
        gap:7px;
    }

    .registration-vip-tiers{
        grid-template-columns:1fr;
    }

    .registration-vip-once{
        white-space:normal;
    }
}


/* ==========================================================================
   MuOnlineItalia - REGISTRAZIONE TEMPORANEAMENTE DISATTIVATA PER TEST
   ========================================================================== */

.registration-test-disabled{
    margin-bottom:12px !important;
}

.registration-submit[data-temporarily-disabled="1"]{
    opacity:.48 !important;
    cursor:not-allowed !important;
    filter:saturate(.55) !important;
    box-shadow:none !important;
}


/* ==========================================================================
   MuOnlineItalia - REGISTRAZIONE FINALE
   Struttura originale preservata. Solo allineamento e leggibilita.
   ========================================================================== */

/* ---------- TESTATA SINISTRA ---------- */

.registration-intro-final{
    min-width:0;
}

.registration-intro-final > .eyebrow{
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:1.55px !important;
}

.registration-intro-final > h1{
    margin-top:11px !important;
    margin-bottom:0 !important;
    font-size:32px !important;
    line-height:1.08 !important;
    letter-spacing:-.4px !important;
}

.registration-intro-final > p{
    max-width:470px !important;
    margin:14px 0 0 !important;
    font-size:13px !important;
    line-height:1.7 !important;
    color:#9ba7b6 !important;
}

/* ---------- 4 PASSAGGI: STESSA RIGA, STESSA ALTEZZA ---------- */

.registration-intro-final .registration-steps,
.registration-intro-final .registration-steps.has-vip-step{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:9px !important;
    align-items:stretch !important;
    margin-top:22px !important;
}

.registration-intro-final .registration-steps > div{
    position:relative !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    min-width:0 !important;
    min-height:150px !important;
    padding:13px 11px 12px !important;
    border-radius:11px !important;
    box-sizing:border-box !important;
}

.registration-intro-final .registration-steps > div > span{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:29px !important;
    height:29px !important;
    flex:0 0 29px !important;
    margin:0 0 10px !important;
    border-radius:7px !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:900 !important;
}

.registration-intro-final .registration-steps > div > strong{
    display:block !important;
    width:100% !important;
    min-height:34px !important;
    margin:0 !important;
    color:#f0f3f7 !important;
    font-size:12.5px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
}

.registration-intro-final .registration-steps > div > small{
    display:block !important;
    width:100% !important;
    margin:7px 0 0 !important;
    color:#96a2b1 !important;
    font-size:10.3px !important;
    line-height:1.52 !important;
    font-weight:500 !important;
}

/* ---------- BOX VIP ---------- */

.registration-intro-final .registration-vip-disclosure{
    margin-top:13px !important;
    padding:15px !important;
    border-radius:12px !important;
}

.registration-intro-final .registration-vip-head{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:12px !important;
}

.registration-intro-final .registration-vip-kicker{
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:1.2px !important;
}

.registration-intro-final .registration-vip-head strong{
    max-width:310px !important;
    margin-top:4px !important;
    font-size:16px !important;
    line-height:1.25 !important;
}

.registration-intro-final .registration-vip-once{
    display:inline-flex !important;
    align-items:center !important;
    min-height:25px !important;
    padding:5px 8px !important;
    font-size:8.7px !important;
    line-height:1.2 !important;
    letter-spacing:.45px !important;
}

.registration-intro-final .registration-vip-intro{
    margin:9px 0 0 !important;
    font-size:11.2px !important;
    line-height:1.55 !important;
    color:#a5aeb9 !important;
}

/* ---------- BRONZE / SILVER / GOLD ---------- */

.registration-intro-final .registration-vip-tiers{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    align-items:stretch !important;
    margin-top:12px !important;
}

.registration-intro-final .registration-vip-tier{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    min-width:0 !important;
    min-height:70px !important;
    padding:9px 10px !important;
    box-sizing:border-box !important;
}

.registration-intro-final .registration-vip-tier > span{
    font-size:9.7px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
}

.registration-intro-final .registration-vip-tier > strong{
    margin-top:4px !important;
    font-size:19px !important;
    line-height:1 !important;
}

.registration-intro-final .registration-vip-tier > small{
    margin-top:6px !important;
    font-size:10px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
}

/* ---------- CONDIZIONI VIP ---------- */

.registration-intro-final .registration-vip-rules{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
    margin-top:11px !important;
}

.registration-intro-final .registration-vip-rules span{
    display:flex !important;
    align-items:center !important;
    min-height:28px !important;
    padding:5px 8px !important;
    box-sizing:border-box !important;
    font-size:9.3px !important;
    line-height:1.3 !important;
    white-space:normal !important;
}

.registration-intro-final .registration-vip-rules span:last-child{
    grid-column:1 / -1 !important;
}

.registration-intro-final .registration-vip-legal{
    margin:10px 0 0 !important;
    font-size:10px !important;
    line-height:1.5 !important;
    color:#838e9c !important;
}

.registration-intro-final .registration-vip-link{
    display:inline-block !important;
    margin-top:9px !important;
    font-size:11px !important;
    line-height:1.3 !important;
    font-weight:850 !important;
}

.registration-intro-final .registration-guide-link{
    display:inline-block !important;
    margin-top:14px !important;
    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:850 !important;
}

/* ---------- RESPONSIVE SENZA ROMPERE IL DESKTOP ---------- */

@media(max-width:900px){
    .registration-intro-final .registration-steps,
    .registration-intro-final .registration-steps.has-vip-step{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .registration-intro-final .registration-steps > div{
        min-height:126px !important;
    }
}

@media(max-width:560px){
    .registration-intro-final > h1{
        font-size:28px !important;
    }

    .registration-intro-final .registration-steps,
    .registration-intro-final .registration-steps.has-vip-step{
        grid-template-columns:1fr !important;
    }

    .registration-intro-final .registration-steps > div{
        min-height:auto !important;
    }

    .registration-intro-final .registration-vip-head{
        flex-direction:column !important;
    }

    .registration-intro-final .registration-vip-tiers{
        grid-template-columns:1fr !important;
    }

    .registration-intro-final .registration-vip-rules{
        grid-template-columns:1fr !important;
    }

    .registration-intro-final .registration-vip-rules span:last-child{
        grid-column:auto !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - STRIPE VIP CHECKOUT SICURO
   ========================================================================== */

.vip-pay-button{
    font-weight:900 !important;
}

.vip-checkout-confirm-wrap{
    max-width:900px;
    margin:0 auto;
}

.vip-checkout-pagehead{
    align-items:flex-end;
}

.vip-checkout-summary{
    padding:16px 18px !important;
}

.vip-checkout-product{
    display:grid;
    grid-template-columns:70px minmax(0,1fr) auto;
    gap:15px;
    align-items:center;
}

.vip-checkout-product > img{
    width:68px;
    height:68px;
    object-fit:contain;
}

.vip-checkout-product > div:nth-child(2){
    min-width:0;
}

.vip-checkout-product > div:nth-child(2) > span{
    display:block;
    color:#788594;
    font-size:10px;
    font-weight:800;
    letter-spacing:.55px;
}

.vip-checkout-product > div:nth-child(2) > strong{
    display:block;
    margin-top:3px;
    color:#edf1f5;
    font-size:20px;
}

.vip-checkout-product > div:nth-child(2) > small{
    display:block;
    margin-top:5px;
    color:#8793a1;
    font-size:11px;
    line-height:1.4;
}

.vip-checkout-amount{
    text-align:right;
}

.vip-checkout-amount strong{
    display:block;
    color:#e5bf66;
    font-size:27px;
    line-height:1;
}

.vip-checkout-amount span{
    display:block;
    margin-top:5px;
    color:#7d8896;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
}

.vip-checkout-consent{
    margin-top:12px;
    padding:20px !important;
}

.vip-checkout-consent-head{
    margin-bottom:13px;
}

.vip-checkout-consent-head h2{
    margin:4px 0 5px;
    font-size:19px;
}

.vip-checkout-consent-head p{
    margin:0;
    color:#8793a1;
    font-size:11px;
    line-height:1.45;
}

.vip-payment-check{
    display:flex !important;
    align-items:flex-start;
    gap:10px;
    padding:10px 11px;
    margin-top:7px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:9px;
    background:rgba(255,255,255,.012);
    color:#a5afbb;
    font-size:11px !important;
    line-height:1.45;
    cursor:pointer;
}

.vip-payment-check input{
    width:16px !important;
    height:16px !important;
    min-height:0 !important;
    margin-top:1px;
    flex:0 0 16px;
}

.vip-payment-check a{
    color:#d9b65d;
    font-weight:800;
}

.vip-checkout-security-note{
    display:grid;
    gap:4px;
    margin-top:12px;
    padding:11px 12px;
    border:1px solid rgba(86,177,124,.10);
    border-radius:9px;
    background:rgba(86,177,124,.025);
}

.vip-checkout-security-note strong{
    color:#9ab9a5;
    font-size:11px;
}

.vip-checkout-security-note span{
    color:#7f8c99;
    font-size:10px;
    line-height:1.45;
}

.vip-checkout-submit{
    width:100%;
    min-height:44px;
    margin-top:13px;
    font-size:13px !important;
}

.vip-success-wrap{
    max-width:720px;
    margin:0 auto;
}

.vip-success-panel{
    padding:28px !important;
    text-align:center;
}

.vip-success-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:54px;
    height:54px;
    margin:0 auto 13px;
    border:1px solid rgba(219,171,83,.18);
    border-radius:50%;
    background:rgba(219,171,83,.04);
    color:#e3bf69;
    font-size:25px;
    font-weight:900;
}

.vip-success-panel h2{
    margin:0;
}

.vip-success-panel p{
    max-width:560px;
    margin:10px auto 0;
    color:#8f9aa7;
    line-height:1.55;
}

.vip-success-panel .actions{
    justify-content:center;
    margin-top:17px;
}

.vip-success-panel.status-paid_active .vip-success-icon{
    border-color:rgba(75,205,119,.18);
    background:rgba(75,205,119,.04);
    color:#75dc98;
}

.vip-success-panel.status-review .vip-success-icon,
.vip-success-panel.status-error .vip-success-icon{
    border-color:rgba(226,104,104,.18);
    background:rgba(226,104,104,.04);
    color:#e78686;
}

@media(max-width:680px){
    .vip-checkout-product{
        grid-template-columns:58px minmax(0,1fr);
    }

    .vip-checkout-product > img{
        width:56px;
        height:56px;
    }

    .vip-checkout-amount{
        grid-column:1 / -1;
        padding-top:9px;
        border-top:1px solid rgba(255,255,255,.05);
        text-align:left;
    }

    .vip-checkout-pagehead{
        align-items:flex-start;
    }
}


/* ==========================================================================
   MuOnlineItalia - OPENING COUNTDOWN
   Modulo Home + configurazione Admin
   ========================================================================== */

.home-opening-countdown{
    position:relative;
    display:grid;
    grid-template-columns:minmax(300px,.9fr) minmax(560px,1.1fr);
    gap:28px;
    align-items:center;
    margin:24px 0 28px;
    padding:25px 28px;
    overflow:hidden;
    border:1px solid rgba(222,174,82,.17);
    border-radius:18px;
    background:
        radial-gradient(circle at 82% 20%,rgba(218,164,67,.10),transparent 29%),
        linear-gradient(135deg,rgba(15,19,26,.98),rgba(8,11,16,.99));
    box-shadow:
        0 18px 50px rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.025);
}

.home-opening-countdown::before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:3px;
    background:linear-gradient(180deg,transparent,#d8ad55 28%,#f0c970 70%,transparent);
    opacity:.85;
}

.home-opening-countdown::after{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    right:-130px;
    bottom:-180px;
    border:1px solid rgba(222,174,82,.08);
    border-radius:50%;
    box-shadow:
        0 0 0 38px rgba(222,174,82,.025),
        0 0 0 76px rgba(222,174,82,.016);
    pointer-events:none;
}

.opening-countdown-copy,
.opening-countdown-stage{
    position:relative;
    z-index:1;
    min-width:0;
}

.opening-countdown-kicker{
    display:flex;
    align-items:center;
    gap:8px;
    color:#d9b35c;
    font-size:10px;
    font-weight:900;
    letter-spacing:1.7px;
}

.opening-countdown-kicker i{
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:#e4bd61;
    box-shadow:0 0 0 4px rgba(228,189,97,.08),0 0 14px rgba(228,189,97,.45);
    animation:openingCountdownPulse 1.55s ease-in-out infinite;
}

.home-opening-countdown h2{
    margin:9px 0 0;
    max-width:510px;
    color:#f2f4f7;
    font-size:26px;
    line-height:1.08;
    letter-spacing:-.45px;
}

.home-opening-countdown .opening-countdown-copy > p{
    max-width:500px;
    margin:9px 0 0;
    color:#929eac;
    font-size:12px;
    line-height:1.55;
}

.opening-countdown-date{
    display:flex;
    align-items:baseline;
    gap:8px;
    flex-wrap:wrap;
    margin-top:15px;
}

.opening-countdown-date > span{
    color:#626f7e;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:1.1px;
}

.opening-countdown-date > strong{
    color:#c6ced8;
    font-size:11px;
}

.opening-countdown-date > small{
    color:#626e7b;
    font-size:9px;
}

.opening-countdown-stage{
    min-height:104px;
}

.opening-countdown-grid{
    display:grid;
    grid-template-columns:1fr 16px 1fr 16px 1fr 16px 1fr;
    gap:4px;
    align-items:center;
    transition:opacity .22s ease,transform .22s ease;
}

.opening-time-box{
    display:flex;
    min-width:0;
    min-height:102px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:13px 7px 11px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:13px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.008));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}

.opening-time-box strong{
    color:#f0c86e;
    font-size:32px;
    line-height:1;
    font-weight:900;
    font-variant-numeric:tabular-nums;
    letter-spacing:-1px;
    text-shadow:0 0 22px rgba(228,184,92,.12);
}

.opening-time-box span{
    margin-top:9px;
    color:#758190;
    font-size:8.5px;
    line-height:1;
    font-weight:900;
    letter-spacing:1.05px;
}

.opening-time-separator{
    color:#514737;
    font-size:24px;
    font-style:normal;
    font-weight:900;
    text-align:center;
    transform:translateY(-8px);
}

.opening-countdown-opened{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:12px 18px;
    opacity:0;
    visibility:hidden;
    transform:translateY(6px);
    transition:opacity .22s ease,transform .22s ease,visibility .22s;
    border:1px solid rgba(83,197,124,.11);
    border-radius:13px;
    background:linear-gradient(135deg,rgba(69,154,100,.055),rgba(255,255,255,.008));
}

.opening-open-status{
    display:flex;
    align-items:center;
    gap:7px;
    color:#87c79d;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.2px;
}

.opening-open-status i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#62d18b;
    box-shadow:0 0 0 4px rgba(98,209,139,.08),0 0 15px rgba(98,209,139,.4);
    animation:openingCountdownPulse 1.35s ease-in-out infinite;
}

.opening-countdown-opened > strong{
    margin-top:7px;
    color:#eef4f0;
    font-size:22px;
}

.opening-countdown-opened > p{
    margin:5px 0 0;
    color:#89978e;
    font-size:11px;
    line-height:1.45;
}

.home-opening-countdown.is-open .opening-countdown-grid{
    opacity:0;
    visibility:hidden;
    transform:translateY(-5px);
}

.home-opening-countdown.is-open .opening-countdown-opened{
    opacity:1;
    visibility:visible;
    transform:none;
}

.home-opening-countdown.is-open .opening-countdown-kicker i{
    background:#62d18b;
    box-shadow:0 0 0 4px rgba(98,209,139,.08),0 0 15px rgba(98,209,139,.4);
}

@keyframes openingCountdownPulse{
    0%,100%{opacity:.55;transform:scale(.88)}
    50%{opacity:1;transform:scale(1.08)}
}


/* Admin --------------------------------------------------------------- */

.opening-countdown-admin-card .admin-category-icon{
    color:#e3bd65;
}

.opening-admin-status{
    display:grid;
    grid-template-columns:.55fr 1.45fr .7fr;
    gap:8px;
    margin-bottom:12px;
}

.opening-admin-status > div{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:5px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:10px;
    background:rgba(255,255,255,.012);
}

.opening-admin-status span{
    color:#697583;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.9px;
}

.opening-admin-status b{
    min-width:0;
    overflow:hidden;
    color:#cbd2da;
    font-size:11px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.opening-countdown-admin-form{
    padding:18px !important;
}

.opening-admin-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr 1fr;
    gap:10px;
    margin-top:12px;
}

.opening-admin-grid > label,
.opening-language-panel > label{
    display:flex !important;
    flex-direction:column;
    gap:6px;
}

.opening-admin-grid label > span,
.opening-language-panel label > span{
    color:#b4bdc8;
    font-size:11px;
    font-weight:800;
}

.opening-admin-grid label > small{
    color:#6f7b89;
    font-size:9px;
    line-height:1.4;
}

.opening-language-columns{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:14px;
}

.opening-language-panel{
    display:grid;
    gap:9px;
    padding:14px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:12px;
    background:rgba(255,255,255,.011);
}

.opening-language-head{
    display:flex;
    align-items:center;
    gap:9px;
    padding-bottom:10px;
    border-bottom:1px solid rgba(255,255,255,.045);
}

.opening-language-head > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:28px;
    border:1px solid rgba(221,175,87,.12);
    border-radius:7px;
    background:rgba(221,175,87,.025);
    color:#dbb65e;
    font-size:9px;
    font-weight:900;
}

.opening-language-head strong{
    display:block;
    color:#d8dde4;
    font-size:12px;
}

.opening-language-head small{
    display:block;
    margin-top:2px;
    color:#6f7b88;
    font-size:9px;
}

.opening-language-panel textarea{
    resize:vertical;
    min-height:68px;
}

.opening-admin-safety-note{
    display:grid;
    gap:3px;
    margin:12px 0;
    padding:10px 12px;
    border:1px solid rgba(85,174,121,.09);
    border-radius:9px;
    background:rgba(85,174,121,.02);
}

.opening-admin-safety-note strong{
    color:#91b19c;
    font-size:10px;
}

.opening-admin-safety-note span{
    color:#778491;
    font-size:9.5px;
    line-height:1.45;
}

@media(max-width:1050px){
    .home-opening-countdown{
        grid-template-columns:1fr;
        gap:18px;
    }

    .opening-admin-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:760px){
    .home-opening-countdown{
        margin:18px 0 22px;
        padding:20px 16px;
        border-radius:14px;
    }

    .home-opening-countdown h2{
        font-size:22px;
    }

    .opening-countdown-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:6px;
    }

    .opening-time-separator{
        display:none;
    }

    .opening-time-box{
        min-height:86px;
        padding:11px 4px 9px;
    }

    .opening-time-box strong{
        font-size:25px;
    }

    .opening-time-box span{
        margin-top:7px;
        font-size:7px;
        letter-spacing:.65px;
    }

    .opening-language-columns{
        grid-template-columns:1fr;
    }

    .opening-admin-status{
        grid-template-columns:1fr;
    }
}

@media(max-width:480px){
    .opening-countdown-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .opening-time-box{
        min-height:76px;
    }

    .opening-countdown-stage{
        min-height:164px;
    }
}

@media(prefers-reduced-motion:reduce){
    .opening-countdown-kicker i,
    .opening-open-status i{
        animation:none !important;
    }
}


/* ==========================================================================
   FIX COUNTDOWN PERSISTENZA
   ========================================================================== */

.opening-admin-status{
    grid-template-columns:.5fr 1.35fr .75fr .65fr !important;
}

.opening-admin-persist-note{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:12px 0;
    padding:10px 12px;
    border:1px solid rgba(221,175,87,.09);
    border-radius:9px;
    background:rgba(221,175,87,.02);
}

.opening-admin-persist-note strong{
    color:#cdb16f;
    font-size:10px;
}

.opening-admin-persist-note span{
    color:#778491;
    font-size:9.5px;
}

.opening-admin-persist-note code{
    color:#aeb8c4;
    font-size:9px;
}

@media(max-width:980px){
    .opening-admin-status{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:620px){
    .opening-admin-status{
        grid-template-columns:1fr !important;
    }

    .opening-admin-persist-note{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* ==========================================================================
   MuOnlineItalia - AUTO REFRESH CLASSIFICHE
   ========================================================================== */

.ranking-auto-refresh-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin:0 0 12px;
    padding:8px 11px;
    border:1px solid rgba(218,171,79,.09);
    border-radius:9px;
    background:
        linear-gradient(90deg,rgba(218,171,79,.026),rgba(255,255,255,.008));
    color:#778391;
    font-size:9.5px;
}

.ranking-auto-refresh-copy,
.ranking-auto-refresh-next{
    display:flex;
    align-items:center;
    gap:7px;
}

.ranking-auto-refresh-copy i{
    width:6px;
    height:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:#d5ac55;
    box-shadow:0 0 0 4px rgba(213,172,85,.06);
    animation:rankingRefreshPulse 1.8s ease-in-out infinite;
}

.ranking-auto-refresh-copy span{
    color:#7f8995;
    font-size:8.5px;
    font-weight:900;
    letter-spacing:.85px;
}

.ranking-auto-refresh-copy b{
    margin-left:4px;
    color:#c8a755;
}

.ranking-auto-refresh-next span{
    color:#697582;
}

.ranking-auto-refresh-next strong{
    min-width:44px;
    color:#bfc7d1;
    font-size:10px;
    font-variant-numeric:tabular-nums;
    text-align:right;
}

.ranking-auto-refresh-bar.is-refreshing{
    border-color:rgba(81,192,121,.12);
}

.ranking-auto-refresh-bar.is-refreshing .ranking-auto-refresh-copy i{
    background:#63cc89;
    box-shadow:0 0 0 4px rgba(99,204,137,.06);
}

@keyframes rankingRefreshPulse{
    0%,100%{opacity:.48;transform:scale(.9)}
    50%{opacity:1;transform:scale(1.08)}
}


/* Admin --------------------------------------------------------------- */

.admin-ranking-refresh-form{
    margin-top:12px;
    padding:17px !important;
}

.ranking-refresh-admin-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:12px;
}

.ranking-refresh-admin-head h2{
    margin:4px 0 4px;
    font-size:17px;
}

.ranking-refresh-admin-head p{
    margin:0;
    color:#788492;
    font-size:10.5px;
    line-height:1.45;
}

.ranking-refresh-state{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:48px;
    min-height:25px;
    padding:4px 8px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:7px;
    color:#788391;
    background:rgba(255,255,255,.012);
    font-size:9px;
    font-weight:900;
    letter-spacing:.7px;
}

.ranking-refresh-state.on{
    border-color:rgba(78,190,117,.12);
    color:#89b99a;
    background:rgba(78,190,117,.025);
}

.ranking-refresh-settings-grid{
    display:grid;
    grid-template-columns:1fr .9fr .9fr;
    gap:10px;
    margin-top:12px;
}

.ranking-refresh-settings-grid > label,
.ranking-refresh-presets,
.ranking-refresh-storage{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:6px;
    padding:11px 12px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:9px;
    background:rgba(255,255,255,.01);
}

.ranking-refresh-settings-grid > label > span,
.ranking-refresh-presets > span,
.ranking-refresh-storage > span{
    color:#929da9;
    font-size:10px;
    font-weight:800;
}

.ranking-refresh-settings-grid small{
    color:#6f7b88;
    font-size:9px;
    line-height:1.4;
}

.ranking-refresh-number{
    display:flex;
    align-items:center;
    gap:7px;
}

.ranking-refresh-number input{
    width:105px !important;
    min-height:36px !important;
}

.ranking-refresh-number b{
    color:#7b8794;
    font-size:10px;
}

.ranking-refresh-presets > div{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}

.ranking-refresh-presets button{
    min-height:30px;
    padding:5px 8px;
    border:1px solid rgba(218,171,79,.09);
    border-radius:7px;
    background:rgba(218,171,79,.018);
    color:#b79c61;
    font:inherit;
    font-size:9px;
    font-weight:850;
    cursor:pointer;
}

.ranking-refresh-presets button:hover{
    border-color:rgba(218,171,79,.18);
    color:#dfbd70;
}

.ranking-refresh-storage strong{
    color:#95b19f;
    font-size:10px;
}

.ranking-refresh-storage code{
    color:#788491;
    font-size:8.5px;
}

.ranking-refresh-info{
    display:grid;
    gap:3px;
    margin:11px 0 12px;
    padding:9px 11px;
    border:1px solid rgba(79,176,116,.08);
    border-radius:8px;
    background:rgba(79,176,116,.018);
}

.ranking-refresh-info strong{
    color:#90ad99;
    font-size:9.5px;
}

.ranking-refresh-info span{
    color:#73808d;
    font-size:9px;
    line-height:1.45;
}

@media(max-width:850px){
    .ranking-refresh-settings-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:600px){
    .ranking-auto-refresh-bar{
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }

    .ranking-auto-refresh-next{
        width:100%;
        justify-content:space-between;
    }

    .ranking-refresh-admin-head{
        flex-direction:column;
    }
}

@media(prefers-reduced-motion:reduce){
    .ranking-auto-refresh-copy i{
        animation:none !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - FIX CLASSIFICA GENS
   Mantiene TUTTO: Duprian / Vanert, stemmi, GM, classe, Gens Lv.,
   Contribution, Lvl/M/J, stato, colori e stile attuale.
   ========================================================================== */

/* Le due card restano affiancate quando c'è spazio reale. */
.gens-rank-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px !important;
    align-items:start !important;
}

/* Impedisce alla tabella di forzare la card oltre la propria metà. */
.gens-rank-grid > .gens-table{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* Mantiene il titolo/stemma originale senza comprimerlo. */
.gens-table .table-title{
    min-width:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
}

.gens-table .table-title > div{
    min-width:0 !important;
}

/* La tabella usa ESATTAMENTE la larghezza disponibile. */
.gens-table .ranking-gens{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    table-layout:fixed !important;
}

/*
   Distribuzione delle 7 colonne.
   Totale 100%.
*/
.gens-table .ranking-gens th:nth-child(1),
.gens-table .ranking-gens td:nth-child(1){
    width:6% !important;
}

.gens-table .ranking-gens th:nth-child(2),
.gens-table .ranking-gens td:nth-child(2){
    width:21% !important;
}

.gens-table .ranking-gens th:nth-child(3),
.gens-table .ranking-gens td:nth-child(3){
    width:18% !important;
}

.gens-table .ranking-gens th:nth-child(4),
.gens-table .ranking-gens td:nth-child(4){
    width:20% !important;
}

.gens-table .ranking-gens th:nth-child(5),
.gens-table .ranking-gens td:nth-child(5){
    width:13% !important;
}

.gens-table .ranking-gens th:nth-child(6),
.gens-table .ranking-gens td:nth-child(6){
    width:14% !important;
}

.gens-table .ranking-gens th:nth-child(7),
.gens-table .ranking-gens td:nth-child(7){
    width:8% !important;
}

/* Header: nessuna scritta tagliata. */
.gens-table .ranking-gens thead th{
    padding:9px 5px !important;
    overflow:visible !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    font-size:9px !important;
    line-height:1.2 !important;
    letter-spacing:.65px !important;
    vertical-align:middle !important;
}

/* Celle più ordinate ma non più piccole del necessario. */
.gens-table .ranking-gens tbody td{
    padding:10px 5px !important;
    overflow:hidden !important;
    font-size:10.5px !important;
    line-height:1.3 !important;
    vertical-align:middle !important;
}

/* Posizione / medaglia centrata. */
.gens-table .ranking-gens th:nth-child(1),
.gens-table .ranking-gens td:nth-child(1){
    padding-left:4px !important;
    padding-right:3px !important;
    text-align:center !important;
}

/* Personaggio + GM: resta identico, ma allineato meglio. */
.gens-table .ranking-gens td:nth-child(2){
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
}

.gens-table .ranking-gens td:nth-child(2) > strong{
    font-size:11px !important;
}

/* Classe leggibile senza occupare troppo spazio. */
.gens-table .ranking-gens .ranking-class{
    white-space:normal !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    font-size:10px !important;
}

/* Gens rank: icona + Private / Lv. restano, ma compatti e allineati. */
.gens-table .gens-db-cell{
    display:flex !important;
    min-width:0 !important;
    max-width:100% !important;
    align-items:center !important;
    gap:6px !important;
}

.gens-table .gens-db-cell > img{
    width:25px !important;
    height:25px !important;
    min-width:25px !important;
    object-fit:contain !important;
}

.gens-table .gens-db-cell > span{
    display:block !important;
    min-width:0 !important;
    overflow:hidden !important;
}

.gens-table .gens-db-cell b{
    display:block !important;
    overflow:hidden !important;
    color:inherit !important;
    font-size:9.5px !important;
    line-height:1.15 !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}

.gens-table .gens-db-cell small{
    display:block !important;
    margin-top:2px !important;
    font-size:8px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
}

/* Contribution, livelli e stato centrati e mai fuori dalla card. */
.gens-table .ranking-gens th:nth-child(5),
.gens-table .ranking-gens td:nth-child(5),
.gens-table .ranking-gens th:nth-child(6),
.gens-table .ranking-gens td:nth-child(6),
.gens-table .ranking-gens th:nth-child(7),
.gens-table .ranking-gens td:nth-child(7){
    text-align:center !important;
}

.gens-table .ranking-gens td:nth-child(5){
    font-variant-numeric:tabular-nums !important;
    white-space:nowrap !important;
}

.gens-table .ranking-gens td:nth-child(6){
    font-size:9.7px !important;
    font-variant-numeric:tabular-nums !important;
    white-space:normal !important;
}

.gens-table .ranking-gens td:nth-child(7){
    white-space:nowrap !important;
}

/* Evita che badge/stemmi allarghino forzatamente la colonna. */
.gens-table .ranking-gens .badge{
    max-width:100% !important;
    padding-left:5px !important;
    padding-right:5px !important;
}

/*
   Sotto questa larghezza è meglio NON schiacciare Duprian e Vanert:
   restano entrambi completi, semplicemente uno sotto l'altro.
*/
@media(max-width:1050px){
    .gens-rank-grid{
        grid-template-columns:1fr !important;
    }

    .gens-table .ranking-gens thead th{
        font-size:9.5px !important;
    }

    .gens-table .ranking-gens tbody td{
        font-size:11px !important;
    }

    .gens-table .ranking-gens td:nth-child(2) > strong{
        font-size:11.5px !important;
    }
}

/*
   Smartphone: non cancelliamo nessuna colonna.
   Se lo schermo è troppo stretto, consentiamo lo scorrimento della sola tabella.
*/
@media(max-width:620px){
    .gens-rank-grid > .gens-table{
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
    }

    .gens-table .ranking-gens{
        min-width:610px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - LEGGIBILITA GLOBALE TESTI PICCOLI
   Nessuna modifica strutturale ai moduli.
   Obiettivo: grigi piu chiari + microtesti meno piccoli.
   ========================================================================== */

:root{
    --mui-text-secondary:#a9b4c2;
    --mui-text-small:#9eabba;
    --mui-text-table:#b8c2cf;
    --mui-text-soft:#c4ccd6;
}

/* Rendering piu pulito sui caratteri piccoli. */
body{
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

/* Testi secondari generici: stesso stile, contrasto maggiore. */
body .muted,
body .pagehead .muted,
body .pagehead p.muted{
    color:var(--mui-text-secondary) !important;
}

/* Help e descrizioni sotto i campi. */
body .form small,
body label > small,
body .setting-help,
body .help,
body .description{
    color:var(--mui-text-small) !important;
    font-size:10.5px !important;
    line-height:1.45 !important;
}

/* Placeholder leggibili ma sempre secondari. */
body input::placeholder,
body textarea::placeholder{
    color:#8f9cac !important;
    opacity:1 !important;
}

/* Tabelle: intestazioni e righe secondarie piu leggibili. */
body table th{
    color:var(--mui-text-table) !important;
}

body table td{
    color:#e4e9ef;
}

body .empty-row,
body .table-empty,
body .ranking-empty{
    color:var(--mui-text-secondary) !important;
}

/* Footer / note generiche. */
body footer,
body footer small{
    color:var(--mui-text-secondary) !important;
}


/* --------------------------------------------------------------------------
   HOME - SERVER
   -------------------------------------------------------------------------- */

.home-server-strip-compact .server-brand span,
.home-server-strip-compact .server-metric span,
.home-server-strip-compact .server-forum span{
    color:#a7b3c2 !important;
    font-size:9.5px !important;
}

.home-server-strip-compact .server-brand-live > span{
    color:#9eabba !important;
    font-size:9.5px !important;
}


/* --------------------------------------------------------------------------
   HOME - VIP ORIZZONTALE
   -------------------------------------------------------------------------- */

.vip-strip-first-kicker,
.home-vip-integrated-strip .vip-strip-brand-copy > span:first-child{
    color:#d2a95f !important;
    font-size:9.5px !important;
}

.vip-strip-first-text,
.home-vip-integrated-strip .vip-strip-brand-note,
.vip-strip-brand-note{
    color:#a6b1bf !important;
    font-size:10px !important;
    line-height:1.4 !important;
}

.vip-strip-first-points span,
.home-vip-integrated-strip .vip-strip-brand-copy span,
.home-vip-integrated-strip .vip-strip-tier span,
.home-vip-integrated-strip .vip-strip-once span{
    color:#a7b6c9 !important;
    font-size:9.5px !important;
}

.home-vip-integrated-strip .vip-strip-tier small,
.home-vip-integrated-strip .vip-strip-once small,
.home-vip-integrated-strip .vip-strip-cta-note,
.vip-strip-tier small,
.vip-strip-once small,
.vip-strip-cta-note,
.vip-strip-brand-legal{
    color:#9eabba !important;
    font-size:9.5px !important;
    line-height:1.35 !important;
}

.home-vip-integrated-strip .vip-strip-cta span{
    font-size:10px !important;
}


/* --------------------------------------------------------------------------
   HOME - PROMO / TESTI PICCOLI
   -------------------------------------------------------------------------- */

.home-vip-before-news .home-vip-promo-copy .eyebrow{
    font-size:9.5px !important;
}

.home-vip-before-news .home-vip-promo-copy > p{
    color:#aab5c3 !important;
    font-size:10.5px !important;
}

.home-vip-before-news .home-vip-promo-points span,
.home-vip-before-news .home-vip-promo-tiers span{
    color:#a7b4c1 !important;
    font-size:9.5px !important;
}

.home-vip-before-news .home-vip-promo .actions .btn{
    font-size:9.5px !important;
}


/* --------------------------------------------------------------------------
   REGISTRAZIONE
   -------------------------------------------------------------------------- */

.registration-intro-final .registration-steps > div > small{
    color:#a7b3c1 !important;
    font-size:10.5px !important;
}

.registration-intro-final .registration-vip-kicker,
.registration-vip-kicker{
    color:#d0aa65 !important;
    font-size:9.5px !important;
}

.registration-intro-final .registration-vip-once,
.registration-vip-once{
    color:#a3c0ae !important;
    font-size:9.5px !important;
}

.registration-intro-final .registration-vip-tier > span,
.registration-vip-tier > span{
    color:#a5b0bf !important;
    font-size:10px !important;
}

.registration-intro-final .registration-vip-tier > small,
.registration-vip-tier > small{
    color:#a1b3a7 !important;
    font-size:10px !important;
}

.registration-intro-final .registration-vip-rules span,
.registration-vip-rules span{
    color:#a7b9ad !important;
    font-size:9.8px !important;
}

.registration-intro-final .registration-vip-legal,
.registration-vip-legal{
    color:#9ca8b6 !important;
    font-size:10px !important;
}


/* --------------------------------------------------------------------------
   VIP PUBBLICO / CHECKOUT
   -------------------------------------------------------------------------- */

.vip-current-status span{
    color:#9ca9b8 !important;
    font-size:9.5px !important;
}

.vip-current-status small{
    color:#9fabb9 !important;
}

.vip-plan-top em{
    font-size:9.5px !important;
}

.vip-plan-price span,
.vip-plan-exp span{
    color:#9faab8 !important;
}

.vip-checkout-product > div:nth-child(2) > span,
.vip-checkout-amount span,
.vip-checkout-security-note span{
    color:#a1adba !important;
}

.vip-checkout-security-note span{
    font-size:10.5px !important;
}


/* --------------------------------------------------------------------------
   ADMIN VIP / AUDIT
   -------------------------------------------------------------------------- */

.vip-server-files span{
    color:#9ca8b7 !important;
    font-size:9.5px !important;
}

.vip-server-files code{
    color:#b8c2cf !important;
    font-size:9.5px !important;
}

.vip-history-empty span,
.vip-audit-row span{
    color:#9eabba !important;
}

.vip-audit-row time{
    color:#929ead !important;
    font-size:9.5px !important;
}

.vip-tier-visible span{
    color:#a2aebb !important;
    font-size:9.5px !important;
}


/* --------------------------------------------------------------------------
   COUNTDOWN APERTURA
   -------------------------------------------------------------------------- */

.opening-countdown-date > span,
.opening-countdown-date > small{
    color:#97a4b3 !important;
    font-size:9.5px !important;
}

.opening-time-box span{
    color:#a0acba !important;
    font-size:9px !important;
}

.opening-admin-status span{
    color:#9aa7b5 !important;
    font-size:9.5px !important;
}

.opening-admin-grid label > small,
.opening-language-head small{
    color:#9ca9b7 !important;
    font-size:10px !important;
}

.opening-admin-safety-note span,
.opening-admin-persist-note span{
    color:#9ca9b7 !important;
    font-size:10px !important;
}

.opening-admin-persist-note code{
    color:#b8c2ce !important;
    font-size:9.5px !important;
}


/* --------------------------------------------------------------------------
   AUTO REFRESH CLASSIFICHE
   -------------------------------------------------------------------------- */

.ranking-auto-refresh-bar{
    color:#9ba8b6 !important;
    font-size:10px !important;
}

.ranking-auto-refresh-copy span{
    color:#a1adba !important;
    font-size:9.5px !important;
}

.ranking-auto-refresh-next span{
    color:#9ba8b6 !important;
}

.ranking-refresh-state{
    color:#9da9b6 !important;
    font-size:9.5px !important;
}

.ranking-refresh-settings-grid small,
.ranking-refresh-info span{
    color:#9ba8b6 !important;
    font-size:10px !important;
}

.ranking-refresh-storage code{
    color:#aab5c1 !important;
    font-size:9.5px !important;
}


/* --------------------------------------------------------------------------
   GENS - non cambia il layout appena sistemato
   -------------------------------------------------------------------------- */

.gens-table .ranking-gens thead th{
    color:#b9c4d0 !important;
}

.gens-table .gens-db-cell small{
    color:#a3afbc !important;
    font-size:9px !important;
}

.gens-table .gens-db-cell b{
    color:#e5e9ee !important;
}


/* --------------------------------------------------------------------------
   ACCOUNT / ADMIN GENERICI
   -------------------------------------------------------------------------- */

body.admin-route .admin-category-card p,
body.admin-route .admin-main-section p,
body.admin-route .admin-password-security-note p{
    color:#aeb8c5 !important;
}

body.admin-route small,
body.admin-route .muted{
    color:#a5b0be !important;
}

body.account-route small,
body.account-route .muted,
body.account-route .account-section-heading p,
body.account-route .account-security-copy,
body.account-route .account-security-flow{
    color:#aab5c2 !important;
}


/* --------------------------------------------------------------------------
   MOBILE - evitare microtesti da 7/8 px
   -------------------------------------------------------------------------- */

@media(max-width:760px){
    .opening-time-box span{
        font-size:8.5px !important;
    }

    .home-server-strip-compact .server-brand span,
    .home-server-strip-compact .server-metric span,
    .home-server-strip-compact .server-forum span{
        font-size:9px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier span,
    .home-vip-integrated-strip .vip-strip-tier small,
    .home-vip-integrated-strip .vip-strip-once small,
    .home-vip-integrated-strip .vip-strip-cta-note{
        font-size:9px !important;
    }
}


/* ==========================================================================
   MuOnlineItalia - TESTI PICCOLI LEGGERMENTE PIU GRANDI
   + circa 1px, senza cambiare layout/moduli.
   ========================================================================== */

/* Testi secondari generici */
body .muted,
body .pagehead .muted,
body .pagehead p.muted{
    font-size:11.5px !important;
    line-height:1.5 !important;
}

/* Help / note sotto campi */
body .form small,
body label > small,
body .setting-help,
body .help,
body .description{
    font-size:11px !important;
}

/* Tabelle */
body table th{
    font-size:10px !important;
}

body table td{
    font-size:11px;
}

/* HOME SERVER */
.home-server-strip-compact .server-brand span,
.home-server-strip-compact .server-metric span,
.home-server-strip-compact .server-forum span,
.home-server-strip-compact .server-brand-live > span{
    font-size:10px !important;
}

/* HOME VIP */
.vip-strip-first-kicker,
.home-vip-integrated-strip .vip-strip-brand-copy > span:first-child{
    font-size:10px !important;
}

.vip-strip-first-text,
.home-vip-integrated-strip .vip-strip-brand-note,
.vip-strip-brand-note{
    font-size:10.5px !important;
}

.vip-strip-first-points span,
.home-vip-integrated-strip .vip-strip-brand-copy span,
.home-vip-integrated-strip .vip-strip-tier span,
.home-vip-integrated-strip .vip-strip-once span{
    font-size:10px !important;
}

.home-vip-integrated-strip .vip-strip-tier small,
.home-vip-integrated-strip .vip-strip-once small,
.home-vip-integrated-strip .vip-strip-cta-note,
.vip-strip-tier small,
.vip-strip-once small,
.vip-strip-cta-note,
.vip-strip-brand-legal{
    font-size:10px !important;
}

.home-vip-integrated-strip .vip-strip-cta span{
    font-size:10.5px !important;
}

/* REGISTRAZIONE */
.registration-intro-final .registration-steps > div > small{
    font-size:11px !important;
}

.registration-intro-final .registration-vip-kicker,
.registration-vip-kicker{
    font-size:10px !important;
}

.registration-intro-final .registration-vip-once,
.registration-vip-once{
    font-size:10px !important;
}

.registration-intro-final .registration-vip-tier > span,
.registration-vip-tier > span{
    font-size:10.5px !important;
}

.registration-intro-final .registration-vip-tier > small,
.registration-vip-tier > small{
    font-size:10.5px !important;
}

.registration-intro-final .registration-vip-rules span,
.registration-vip-rules span{
    font-size:10.2px !important;
}

.registration-intro-final .registration-vip-legal,
.registration-vip-legal{
    font-size:10.5px !important;
}

/* VIP / CHECKOUT */
.vip-current-status span,
.vip-plan-top em,
.vip-plan-price span,
.vip-plan-exp span{
    font-size:10px !important;
}

.vip-checkout-product > div:nth-child(2) > span,
.vip-checkout-amount span,
.vip-checkout-security-note span{
    font-size:10.5px !important;
}

/* ADMIN VIP */
.vip-server-files span,
.vip-server-files code,
.vip-audit-row time,
.vip-tier-visible span{
    font-size:10px !important;
}

/* COUNTDOWN */
.opening-countdown-date > span,
.opening-countdown-date > small{
    font-size:10px !important;
}

.opening-time-box span{
    font-size:9.5px !important;
}

.opening-admin-status span{
    font-size:10px !important;
}

.opening-admin-grid label > small,
.opening-language-head small,
.opening-admin-safety-note span,
.opening-admin-persist-note span{
    font-size:10.5px !important;
}

.opening-admin-persist-note code{
    font-size:10px !important;
}

/* AUTO REFRESH CLASSIFICHE */
.ranking-auto-refresh-bar{
    font-size:10.5px !important;
}

.ranking-auto-refresh-copy span{
    font-size:10px !important;
}

.ranking-refresh-state{
    font-size:10px !important;
}

.ranking-refresh-settings-grid small,
.ranking-refresh-info span{
    font-size:10.5px !important;
}

.ranking-refresh-storage code{
    font-size:10px !important;
}

/* GENS */
.gens-table .ranking-gens thead th{
    font-size:9.8px !important;
}

.gens-table .ranking-gens tbody td{
    font-size:11px !important;
}

.gens-table .gens-db-cell small{
    font-size:9.5px !important;
}

.gens-table .gens-db-cell b{
    font-size:10px !important;
}

/* ACCOUNT / ADMIN generici */
body.admin-route small,
body.account-route small{
    font-size:10.5px !important;
}

/* Mobile: leggermente più piccoli del desktop ma comunque leggibili */
@media(max-width:760px){
    body .muted,
    body .pagehead .muted,
    body .pagehead p.muted{
        font-size:11px !important;
    }

    body .form small,
    body label > small{
        font-size:10.5px !important;
    }

    .home-server-strip-compact .server-brand span,
    .home-server-strip-compact .server-metric span,
    .home-server-strip-compact .server-forum span{
        font-size:9.5px !important;
    }

    .home-vip-integrated-strip .vip-strip-tier span,
    .home-vip-integrated-strip .vip-strip-tier small,
    .home-vip-integrated-strip .vip-strip-once small,
    .home-vip-integrated-strip .vip-strip-cta-note{
        font-size:9.5px !important;
    }
}
