/* ==========================================================
   WordPress additions for the Major League Padel theme.
   The original design lives untouched in style.css.
========================================================== */

/* Accessibility helpers */
.screen-reader-text{
    border:0;
    clip:rect(1px,1px,1px,1px);
    clip-path:inset(50%);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px;
    word-wrap:normal !important;
}

.skip-link:focus{
    clip:auto;
    clip-path:none;
    height:auto;
    width:auto;
    margin:0;
    padding:12px 18px;
    top:8px;
    left:8px;
    z-index:100000;
    background:var(--ml-gold);
    color:#000;
    font-weight:600;
}

/* Journal cards: image is now a link */
.ml-journal-image a{
    display:block;
}

/* Wishlist heart on product cards (was a button nested in a link) */
span.ml-wishlist-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1rem;
    font-weight:400;
    color:#000;
}

/* WooCommerce prices contain nested spans; keep them on one line */
.ml-best-card span span,
.ml-best-card span bdi,
.ml-product-card span span,
.ml-product-card span bdi{
    display:inline;
    font-size:inherit;
    color:inherit;
}

/* ---------- Editor content (pages & articles) ---------- */

.ml-entry{
    color:#222;
    font-size:16px;
    line-height:1.8;
}

.ml-entry > * + *{
    margin-top:1.15em;
}

.ml-entry h2,
.ml-entry h3,
.ml-entry h4{
    color:#111;
    line-height:1.3;
    margin-top:1.8em;
}

.ml-entry h2{ font-size:30px; }
.ml-entry h3{ font-size:24px; }
.ml-entry h4{ font-size:20px; }

.ml-entry > :first-child{
    margin-top:0;
}

.ml-entry a:not(.btn){
    color:#9a742c;
    text-decoration:underline;
    text-underline-offset:3px;
}

.ml-entry a:not(.btn):hover{
    color:#111;
}

.ml-entry ul,
.ml-entry ol{
    padding-left:1.4em;
}

.ml-entry li + li{
    margin-top:.4em;
}

.ml-entry blockquote{
    border-left:4px solid var(--ml-gold);
    padding:6px 0 6px 22px;
    font-family:'Playfair Display',serif;
    font-size:20px;
    color:#333;
}

.ml-entry img,
.ml-entry figure{
    max-width:100%;
    height:auto;
}

.ml-entry img{
    border-radius:14px;
}

.ml-entry figcaption,
.ml-entry .wp-caption-text{
    font-size:13px;
    color:#777;
    margin-top:8px;
    text-align:center;
}

.ml-entry table{
    width:100%;
    border-collapse:collapse;
}

.ml-entry th,
.ml-entry td{
    border:1px solid rgba(0,0,0,.12);
    padding:10px 14px;
    text-align:left;
}

.ml-entry .alignleft{ float:left; margin:6px 24px 16px 0; }
.ml-entry .alignright{ float:right; margin:6px 0 16px 24px; }
.ml-entry .aligncenter{ margin-left:auto; margin-right:auto; text-align:center; }
.ml-entry::after{ content:""; display:table; clear:both; }

.ml-home-content{
    min-height:0;
}

/* ---------- Pagination ---------- */

.ml-pagination{
    margin-top:50px;
}

.ml-pagination .nav-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.ml-pagination .page-numbers{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:44px;
    height:44px;
    padding:0 14px;
    border-radius:12px;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    color:#222;
    font-weight:500;
    transition:.3s;
}

.ml-pagination a.page-numbers:hover,
.ml-pagination .page-numbers.current{
    background:#111;
    border-color:#111;
    color:var(--ml-gold);
}

/* ---------- Forms ---------- */

.mlp-hp{
    position:absolute !important;
    left:-9999px !important;
    width:1px !important;
    height:1px !important;
    opacity:0 !important;
}

.mlp-form .form-label{
    font-size:12px;
    letter-spacing:2px;
    text-transform:uppercase;
    font-weight:600;
    color:#555;
    margin-bottom:8px;
}

.mlp-form .form-control{
    background:#fff;
    border:1px solid rgba(0,0,0,.12);
    border-radius:12px;
    padding:14px 18px;
    font-size:15px;
    color:#111;
}

.mlp-form .form-control:focus{
    border-color:var(--ml-gold);
    box-shadow:0 0 0 3px rgba(212,167,86,.2);
}

.mlp-notice{
    margin:0 0 24px;
    padding:14px 18px;
    border-radius:12px;
    font-size:15px;
    line-height:1.6;
    border:1px solid transparent;
}

.mlp-notice.is-success{
    background:#f3f7ee;
    border-color:#b9d3a0;
    color:#2f5a17;
}

.mlp-notice.is-error{
    background:#fbefee;
    border-color:#e5b3ae;
    color:#8a231a;
}

.mlp-notice-dark{
    margin:16px 0 0;
    background:transparent !important;
    padding:0;
    border:0;
}

.mlp-notice-dark.is-success{ color:var(--ml-gold); }
.mlp-notice-dark.is-error{ color:#ff9c92; }

/* ---------- Search ---------- */

.ml-search-form{
    display:flex;
    gap:12px;
    max-width:560px;
}

.ml-search-form .form-control{
    border-radius:0;
    padding:12px 16px;
    border:1px solid rgba(0,0,0,.15);
}

.ml-search-form .btn{
    white-space:nowrap;
}

.ml-search-panel .ml-search-form{
    margin:0 auto;
    padding:6px 0 22px;
}

.ml-search-panel .form-control{
    background:transparent;
    border-color:rgba(212,167,86,.45);
    color:#fff;
}

.ml-search-panel .form-control::placeholder{
    color:rgba(255,255,255,.55);
}

.ml-search-panel .form-control:focus{
    background:transparent;
    border-color:var(--ml-gold);
    box-shadow:none;
    color:#fff;
}

/* ---------- Widgets (optional sidebar widget area) ---------- */

.ml-widget{
    padding:10px 20px 20px;
}

.ml-widget .ml-sidebar-title{
    padding:20px 0 14px;
}

.ml-widget ul{
    list-style:none;
}

.ml-widget li{
    padding:8px 0;
    border-bottom:1px solid rgba(0,0,0,.06);
}

.ml-widget li:last-child{
    border-bottom:0;
}

.ml-widget a:hover{
    color:var(--ml-gold);
}

.ml-journal-sidebar{
    margin-bottom:25px;
}

/* ---------- WooCommerce basics ---------- */

.ml-shop .woocommerce-breadcrumb{
    display:none;
}

.ml-shop ul.products{
    list-style:none;
    padding-left:0;
}

.ml-shop .button,
.ml-shop button.button,
.ml-shop a.button{
    background:var(--ml-gold);
    color:#000;
    border-radius:0;
    font-weight:600;
}

.ml-shop .price{
    color:#9a742c;
    font-weight:600;
}
