/* basic styles */
.prem-plan-list{display:flex;gap:1rem;flex-wrap:wrap}.prem-plan{border:1px solid #ddd;padding:1rem;border-radius:8px;min-width:220px}.prem-locked{border:1px dashed #aaa;padding:1rem;border-radius:6px}

/* ------------------------------------------------------------
   Premium Plans (shortcode [prem_plans]) — UX refresh (v1.0.25)
   ------------------------------------------------------------ */
.prem-plans-wrap{
    margin: 24px 0;
}
.prem-plans-header{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin-bottom:18px;
}
.prem-plans-title{
    margin:0;
    font-size:28px;
    line-height:1.2;
}
.prem-plans-status{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:14px 16px;
    border:1px solid rgba(0,0,0,.08);
    border-radius:14px;
    background: rgba(0,0,0,.02);
}
.prem-plans-status--active{
    background: rgba(0,0,0,.03);
}
.prem-plans-status-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.03em;
    border:1px solid rgba(0,0,0,.12);
    background:#fff;
    white-space:nowrap;
}
.prem-plans-status-text strong{display:block;margin-bottom:2px}
.prem-plans-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:16px;
}
.prem-plan-card{
    border:1px solid rgba(0,0,0,.08);
    border-radius:16px;
    padding:16px;
    background:#fff;
    display:flex;
    flex-direction:column;
    gap:14px;
    box-shadow:0 1px 0 rgba(0,0,0,.03);
}
.prem-plan-top{
    position:relative;
    padding-top:4px;
}
.prem-plan-badge{
    position:absolute;
    top:-10px;
    right:0;
    font-size:12px;
    font-weight:700;
    padding:6px 10px;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.12);
    background:#fff;
}
.prem-plan-name{
    margin:0;
    font-size:18px;
}
.prem-plan-duration{
    margin-top:4px;
    font-size:14px;
    opacity:.75;
}
.prem-plan-price{
    display:flex;
    align-items:baseline;
    gap:8px;
}
.prem-plan-amount{
    font-size:28px;
    font-weight:800;
}
.prem-plan-sub{
    font-size:13px;
    opacity:.7;
}
.prem-plan-features{
    margin:0;
    padding-left:18px;
    display:flex;
    flex-direction:column;
    gap:6px;
    font-size:14px;
    opacity:.9;
}
.prem-plan-cta{
    margin-top:auto;
}
.prem-plan-button{
    width:100%;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    padding:12px 14px;
    border-radius:12px;
    font-weight:700;
    text-decoration:none !important;
}
.prem-plan-button--disabled{
    border:1px dashed rgba(0,0,0,.25);
    color:rgba(0,0,0,.6);
    background:rgba(0,0,0,.02);
}
.prem-plans-empty{
    grid-column:1/-1;
    padding:16px;
    border:1px dashed rgba(0,0,0,.2);
    border-radius:14px;
    background:rgba(0,0,0,.02);
}

/* Responsive */
@media (max-width: 980px){
    .prem-plans-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
}
@media (max-width: 640px){
    .prem-plans-grid{grid-template-columns:1fr;}
    .prem-plans-title{font-size:24px;}
}
