:root{
  --primary:#FF8A00;
  --accent2:#FF4D5A;
  --accent3:#00B4A6;
  --highlight:#FFD84D;
  --text:#FFF1E8;
  --text-secondary:#D9D7CF;
  --muted:#A9AFB5;
  --disabled:#707A84;
  --surface-1:#263A4A;
  --surface-2:#1B2A3A;
  --bg:#0D1B2A;
  --pixel:'Press Start 2P', cursive;
  --sans:'Inter', system-ui, sans-serif;
  --wrap:1100px;
  --gutter:28px;
}

/* .midimodes-theme is on <body> everywhere (body_class filter), so this is
   the single source of brand styling for the whole site. */
.midimodes-theme{
  background:var(--bg);
  color:var(--text);
  font-family:var(--sans);
  line-height:1.6;
  background-image:
    radial-gradient(circle at 15% 10%, #ff8a0012, transparent 40%),
    radial-gradient(circle at 85% 30%, #00b4a614, transparent 45%);
  background-attachment:fixed;
}
.midimodes-theme *{box-sizing:border-box;}
.midimodes-theme img{max-width:100%; height:auto;}
.midimodes-theme .wrap{max-width:var(--wrap); margin:0 auto; padding:0 var(--gutter);}

/* ---------------------------------------------------------------- NAV */
.midimodes-theme header{
  position:sticky; top:0; z-index:50;
  background:#0D1B2Add; backdrop-filter:blur(10px);
  border-bottom:1px solid var(--surface-1);
}
.midimodes-theme nav.wrap{display:flex; align-items:center; justify-content:space-between; min-height:72px; gap:24px; flex-wrap:wrap;}
.midimodes-theme .logo{font-family:var(--pixel); font-size:14px; letter-spacing:1px; color:var(--highlight); text-shadow:2px 2px 0 var(--accent2);}
.midimodes-theme .logo-image a{display:flex; align-items:center;}
.midimodes-theme .logo-image img, .midimodes-theme .logo-image .custom-logo{width:clamp(200px, 24vw, 280px); max-width:60vw; height:auto; display:block;}
.midimodes-theme header .logo-image{padding:10px 0; text-shadow:none;}
.midimodes-theme nav.wrap{min-height:88px;}
.midimodes-theme .nav-links, .midimodes-theme .nav-links ul{display:flex; gap:26px; align-items:center; list-style:none; margin:0; padding:0; flex-wrap:wrap;}
.midimodes-theme .nav-links li{list-style:none; margin:0;}
.midimodes-theme .nav-links a{font-weight:600; font-size:13px; letter-spacing:.3px; color:var(--text-secondary); transition:color .2s;}
.midimodes-theme .nav-links a:hover{color:var(--primary);}
.midimodes-theme .nav-links .divider{width:5px; height:5px; background:var(--primary); transform:rotate(45deg);}
.midimodes-theme .cart-link{color:var(--highlight) !important; font-weight:700 !important;}

/* Page column for every non-homepage template (header.php / footer.php). */
.midimodes-theme .site-main-wrap{padding:48px var(--gutter) 80px; max-width:var(--wrap); margin:0 auto; min-height:50vh;}
.midimodes-theme .site-main-wrap > *:first-child{margin-top:0;}
/* Kadence's own inner containers would otherwise add a second gutter. */
.midimodes-theme .site-main-wrap .content-container,
.midimodes-theme .site-main-wrap .site-container,
.midimodes-theme .site-main-wrap .entry-content-wrap,
.midimodes-theme .site-main-wrap .content-area{padding-left:0 !important; padding-right:0 !important; margin-left:0 !important; margin-right:0 !important; max-width:none !important;}
.midimodes-theme .site-main-wrap .entry-content-wrap{padding-top:0 !important;}
.midimodes-theme .content-bg, .midimodes-theme .entry.content-bg{background:transparent !important; box-shadow:none !important;}

/* Kadence's automatic page-title banner: flatten to a plain heading. */
.midimodes-theme .entry-hero, .midimodes-theme .entry-hero-container-inner, .midimodes-theme .hero-section-overlay,
.midimodes-theme .entry-hero .entry-header{background:transparent !important; box-shadow:none !important; border:none !important;}
.midimodes-theme .entry-hero .entry-header{min-height:0 !important; padding:0 0 28px !important; text-align:left !important;}
.midimodes-theme .entry-hero .entry-title, .midimodes-theme .site-main-wrap h1.entry-title{color:var(--text) !important; font-family:var(--sans) !important; font-size:34px !important; font-weight:800 !important; line-height:1.15; margin:0 0 6px !important;}
.midimodes-theme .entry-hero:not(:has(.entry-title)), .midimodes-theme .entry-hero:has(.entry-title:empty){display:none;}

/* --------------------------------------------------------------- HERO */
.midimodes-theme .hero{padding:96px 0 84px; position:relative; overflow:hidden;}
.midimodes-theme .hero .wrap{display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:center;}
.midimodes-theme .eyebrow-tag{display:inline-block; font-size:12px; color:var(--accent3); font-weight:700; letter-spacing:.6px; margin-bottom:18px;}
.midimodes-theme h1.hero-title{font-size:clamp(34px, 5vw, 56px); line-height:1.1; font-weight:800; margin:0 0 22px;}
.midimodes-theme h1.hero-title .stroke{background:linear-gradient(180deg, var(--highlight), var(--primary)); -webkit-background-clip:text; background-clip:text; color:transparent;}
.midimodes-theme .hero p.lede{font-size:17px; color:var(--text-secondary); max-width:480px; margin:0 0 32px;}
.midimodes-theme .btn-row{display:flex; gap:14px; flex-wrap:wrap; align-items:center;}
.midimodes-theme .btn{display:inline-block; padding:14px 26px; font-weight:700; font-size:14px; border-radius:8px; line-height:1.2; transition:transform .15s ease; cursor:pointer;}
.midimodes-theme .btn-primary{background:var(--primary); color:#1a1000 !important; box-shadow:0 6px 0 #b85e00;}
.midimodes-theme .btn-primary:hover{transform:translateY(-2px);}
.midimodes-theme .btn-outline{border:2px solid var(--surface-1); color:var(--text) !important; background:transparent;}
.midimodes-theme .btn-outline:hover{border-color:var(--accent3); color:var(--accent3) !important;}
.midimodes-theme .btn .woocommerce-Price-amount{color:inherit;}

.midimodes-theme .hero-visual{aspect-ratio:1/1; border-radius:24px; background:linear-gradient(160deg, var(--surface-1), var(--surface-2)); border:2px solid var(--surface-1); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;}
.midimodes-theme .hero-visual::before{content:""; position:absolute; inset:14px; border-radius:16px; border:1px dashed var(--surface-1); pointer-events:none;}
.midimodes-theme .hero-visual img{width:100%; height:100%; object-fit:cover;}
.midimodes-theme .hero-stats{display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:34px; width:100%;}
.midimodes-theme .hero-stats div{background:#0D1B2Acc; border:1px solid var(--surface-1); border-radius:14px; padding:22px 16px; text-align:center;}
.midimodes-theme .hero-stats strong{display:block; font-family:var(--pixel); font-size:22px; color:var(--highlight); margin-bottom:8px;}
.midimodes-theme .hero-stats span{font-size:12px; color:var(--muted); letter-spacing:.5px; text-transform:uppercase;}
.midimodes-theme .hero-badge{position:absolute; bottom:18px; left:18px; background:var(--accent2); color:#fff; font-weight:800; font-size:12px; padding:10px 16px; border-radius:8px; box-shadow:0 6px 0 #a52933;}

/* ----------------------------------------------------------- SECTIONS */
.midimodes-theme section.pillar{padding:88px 0;}
.midimodes-theme .section-head{max-width:620px; margin-bottom:44px;}
.midimodes-theme .section-head .kicker, .midimodes-theme .kicker{font-family:var(--pixel); font-size:11px; margin-bottom:14px; display:block; letter-spacing:1px;}
.midimodes-theme .section-head h2{font-size:32px; font-weight:800; margin:0 0 14px; line-height:1.15;}
.midimodes-theme .section-head p{color:var(--text-secondary); font-size:15px; margin:0;}

/* Course outline */
.midimodes-theme .modules{display:flex; flex-direction:column; gap:36px;}
.midimodes-theme .module{display:grid; grid-template-columns:260px 1fr; gap:32px; align-items:start;}
.midimodes-theme .module-head{position:sticky; top:112px;}
.midimodes-theme .module-num{font-family:var(--pixel); font-size:10px; color:var(--primary); display:block; margin-bottom:12px;}
.midimodes-theme .module-head h3{font-size:22px; font-weight:800; margin:0 0 10px; line-height:1.2;}
.midimodes-theme .module-head p{font-size:14px; color:var(--muted); margin:0;}
.midimodes-theme .lesson-list{display:flex; flex-direction:column; gap:12px;}
.midimodes-theme .lesson-card{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:12px; padding:16px 20px; display:flex; align-items:center; gap:16px; color:inherit; transition:border-color .2s;}
.midimodes-theme .lesson-card:hover{border-color:var(--accent3);}
.midimodes-theme .lesson-card.is-preview{border-color:var(--accent3);}
.midimodes-theme .lesson-num{font-family:var(--pixel); font-size:11px; color:var(--accent3); width:34px; flex:0 0 34px;}
.midimodes-theme .lesson-card h4{font-size:15px; margin:0 0 4px; color:var(--text);}
.midimodes-theme .lesson-card p{font-size:13px; color:var(--muted); margin:0;}
.midimodes-theme .lesson-meta{margin-left:auto; display:flex; flex-direction:column; align-items:flex-end; gap:6px;}
.midimodes-theme .lesson-level{font-size:11px; font-weight:700; color:var(--highlight); background:#ffd84d1a; padding:6px 10px; border-radius:6px; white-space:nowrap;}
.midimodes-theme .lesson-card.is-preview .lesson-level{color:var(--accent3); background:#00b4a61a;}
.midimodes-theme .lesson-card.empty-state{justify-content:center; text-align:center;}

/* Pricing */
.midimodes-theme .pricing{padding-top:0;}
.midimodes-theme .pricing-card{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:20px; padding:44px; display:grid; grid-template-columns:1.2fr .8fr; gap:40px; align-items:center;}
.midimodes-theme .pricing-text h2{font-size:30px; font-weight:800; margin:0 0 18px; line-height:1.15;}
.midimodes-theme .pricing-text h2 .woocommerce-Price-amount{color:var(--highlight);}
.midimodes-theme .pricing-list{list-style:none; padding:0; margin:0; display:grid; gap:10px;}
.midimodes-theme .pricing-list li{padding-left:26px; position:relative; font-size:15px; color:var(--text-secondary);}
.midimodes-theme .pricing-list li::before{content:""; position:absolute; left:0; top:9px; width:10px; height:10px; background:var(--accent3); transform:rotate(45deg); border-radius:2px;}
.midimodes-theme .pricing-cta{background:var(--bg); border:1px solid var(--surface-1); border-radius:16px; padding:32px; text-align:center; display:flex; flex-direction:column; gap:14px; align-items:center;}
.midimodes-theme .price-big{font-size:44px; font-weight:800; color:var(--highlight); line-height:1;}
.midimodes-theme .price-big .woocommerce-Price-amount{color:inherit;}
.midimodes-theme .pricing-cta .btn{width:100%;}
.midimodes-theme .pricing-preview{font-size:13px; color:var(--accent3);}
.midimodes-theme .pricing-note{font-size:12px; color:var(--muted); margin:0;}

/* Ear trainer teaser */
.midimodes-theme .play-panel{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:18px; padding:44px; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;}
.midimodes-theme .play-mock{background:var(--bg); border-radius:12px; border:1px solid var(--surface-1); padding:22px; display:grid; grid-template-columns:repeat(4,1fr); gap:10px;}
.midimodes-theme .play-key{aspect-ratio:1; border-radius:8px; background:var(--surface-1); display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--muted); font-weight:700;}
.midimodes-theme .play-key.active{background:var(--accent2); color:#fff;}
.midimodes-theme .play-text .kicker{color:var(--accent2);}
.midimodes-theme .play-text h3{font-size:24px; margin:0 0 12px;}
.midimodes-theme .play-text p{color:var(--text-secondary); font-size:14px; margin:0 0 22px;}

/* FAQ */
.midimodes-theme .faq{padding-top:0;}
.midimodes-theme .faq-grid{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
.midimodes-theme .faq-grid div{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:14px; padding:22px 24px;}
.midimodes-theme .faq-grid h4{font-size:16px; margin:0 0 8px;}
.midimodes-theme .faq-grid p{font-size:14px; color:var(--text-secondary); margin:0;}

/* ------------------------------------------------------------- FOOTER */
.midimodes-theme footer{border-top:1px solid var(--surface-1); padding:44px 0; margin-top:24px;}
.midimodes-theme footer .wrap{display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; align-items:center;}
.midimodes-theme footer .logo{font-size:12px;}
.midimodes-theme footer .foot-links{display:flex; gap:24px; font-size:13px; color:var(--muted); flex-wrap:wrap;}
.midimodes-theme footer .foot-links a{color:var(--muted);}
.midimodes-theme footer .foot-links a:hover{color:var(--primary);}
.midimodes-theme footer .foot-legal{margin-top:20px; padding-top:20px; border-top:1px solid var(--surface-1); display:flex; gap:20px; flex-wrap:wrap; font-size:12px; color:var(--disabled); justify-content:flex-start;}
.midimodes-theme footer .foot-legal a{color:var(--disabled);}
.midimodes-theme footer .foot-legal a:hover{color:var(--muted);}

/* ------------------------------------------------ Generic content */
.midimodes-theme h1, .midimodes-theme h2, .midimodes-theme h3, .midimodes-theme h4, .midimodes-theme h5, .midimodes-theme h6{color:var(--text); font-family:var(--sans); line-height:1.2;}
.midimodes-theme p, .midimodes-theme li, .midimodes-theme label{color:var(--text-secondary);}
.midimodes-theme a{color:var(--accent3); text-decoration:none;}
.midimodes-theme a:hover{color:var(--primary);}
.midimodes-theme header a, .midimodes-theme footer a, .midimodes-theme .btn, .midimodes-theme .lesson-card a{color:inherit;}
.midimodes-theme table{border-collapse:collapse; width:100%;}
.midimodes-theme table th, .midimodes-theme table td{padding:12px 14px; border-bottom:1px solid var(--surface-1);}
.midimodes-theme hr{border:none; border-top:1px solid var(--surface-1);}
.midimodes-theme blockquote{border-left:3px solid var(--accent3); padding-left:18px; color:var(--text-secondary);}
.midimodes-theme code{background:var(--surface-2); border-radius:4px; padding:2px 6px; color:var(--text-secondary);}
.midimodes-theme pre{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; padding:14px 18px; color:var(--text); overflow-x:auto; font-size:14px; line-height:1.5;}

.midimodes-theme input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),
.midimodes-theme textarea, .midimodes-theme select{background:var(--bg); border:1px solid var(--surface-1); color:var(--text); border-radius:6px; padding:10px 12px; font-family:var(--sans); font-size:14px;}
.midimodes-theme select{background-repeat:no-repeat !important; background-position:right 12px center !important; background-size:12px !important; padding-right:34px;}
.midimodes-theme input::placeholder, .midimodes-theme textarea::placeholder{color:var(--muted);}
.midimodes-theme button, .midimodes-theme input[type="submit"], .midimodes-theme input[type="button"], .midimodes-theme .button{
  display:inline-block; background:var(--primary); color:#1a1000 !important; font-weight:700; border:none; border-radius:8px; padding:12px 22px; box-shadow:0 6px 0 #b85e00; font-family:var(--sans); font-size:14px; cursor:pointer; transition:transform .15s ease;
}
.midimodes-theme button:hover, .midimodes-theme input[type="submit"]:hover, .midimodes-theme input[type="button"]:hover, .midimodes-theme .button:hover{transform:translateY(-2px); color:#1a1000 !important;}
.midimodes-theme .btn:disabled, .midimodes-theme button:disabled{opacity:.45; cursor:not-allowed; transform:none !important;}

/* -------------------------------------------------------- WooCommerce */
.midimodes-theme .woocommerce-message, .midimodes-theme .woocommerce-info, .midimodes-theme .woocommerce-error, .midimodes-theme .woocommerce-noreviews{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; padding:16px 20px; list-style:none; color:var(--text);}
.midimodes-theme .woocommerce-error{border-color:var(--accent2);}
.midimodes-theme table.shop_table, .midimodes-theme table.cart{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:12px; overflow:hidden;}
.midimodes-theme table.shop_table th, .midimodes-theme table.cart th{background:var(--surface-1); color:var(--text); text-align:left;}
.midimodes-theme table.shop_table td, .midimodes-theme table.cart td{color:var(--text-secondary);}
.midimodes-theme .woocommerce-MyAccount-navigation ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px;}
.midimodes-theme .woocommerce-MyAccount-navigation li{list-style:none;}
.midimodes-theme .woocommerce-MyAccount-navigation a{display:block; padding:10px 14px; border-radius:8px; background:var(--surface-2); color:var(--text-secondary) !important; box-shadow:none;}
.midimodes-theme .woocommerce-MyAccount-navigation li.is-active a{background:var(--primary); color:#1a1000 !important;}
.midimodes-theme .woocommerce-MyAccount-content{color:var(--text-secondary);}
.midimodes-theme .select2-container .select2-selection--single, .midimodes-theme .select2-dropdown{background:var(--bg); border-color:var(--surface-1); color:var(--text);}
.midimodes-theme .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--text);}
.midimodes-theme .woocommerce-product-gallery img{border-radius:12px;}
.midimodes-theme .product_meta{font-size:13px; color:var(--muted); margin-top:18px;}
.midimodes-theme .single-product .summary .price{font-size:30px; font-weight:800; color:var(--highlight);}
.midimodes-theme .single-product .summary .woocommerce-product-details__short-description p{font-size:15px;}
.midimodes-theme .single-product form.cart{display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin:18px 0;}
.midimodes-theme .quantity input{width:64px; text-align:center;}
.midimodes-theme .woocommerce-breadcrumb{display:none;}
.midimodes-theme .wp-block-woocommerce-cart .wc-block-components-product-name, .midimodes-theme .wc-block-components-totals-item__label{color:var(--text);}
.midimodes-theme .wc-block-components-totals-item__value, .midimodes-theme .wc-block-components-product-price{color:var(--highlight);}
.midimodes-theme .wc-block-components-sidebar-layout .wc-block-components-sidebar{padding-left:0;}
/* One-product store: no "New in store" grid on the empty cart. */
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title),
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wc-block-grid,
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wp-block-separator{display:none;}
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{display:block; color:var(--text); text-align:center;}
.midimodes-theme .wp-block-woocommerce-empty-cart-block{text-align:center;}
.midimodes-theme .wp-block-woocommerce-empty-cart-block::after{content:""; display:block;}
.midimodes-theme .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__image{margin:0 auto 12px;}
.midimodes-theme .wp-block-woocommerce-cart h1, .midimodes-theme .wp-block-woocommerce-checkout h1{text-align:left;}
/* Sensei legacy course outline (single course page). */
.midimodes-theme .course-lessons .module-title, .midimodes-theme .module-title{font-size:18px !important; margin:0 !important;}
.midimodes-theme .module-description, .midimodes-theme .module-container .module-description{color:var(--muted); font-size:14px; padding:12px 20px 0;}
.midimodes-theme .course-lessons h3, .midimodes-theme .module-lessons h3{font-size:13px; letter-spacing:.5px; text-transform:uppercase; color:var(--muted); padding:12px 20px 4px; margin:0;}
.midimodes-theme .module-lessons, .midimodes-theme .course-lessons ul{list-style:none; margin:0; padding:0 0 8px;}
.midimodes-theme .module-lessons li, .midimodes-theme .course-lessons li{padding:10px 20px; border-top:1px solid var(--surface-1);}
.midimodes-theme .preview-label, .midimodes-theme .lesson-preview-label{background:var(--accent3); color:#062a27 !important; font-size:11px; font-weight:700; padding:4px 8px; border-radius:6px;}

/* ----------------------------------------------------------- Lessons */
.midimodes-theme .lesson-body{max-width:780px;}
.midimodes-theme .lesson-intro{font-size:18px; color:var(--text-secondary); border-left:3px solid var(--accent3); padding-left:18px; margin:8px 0 36px;}
.midimodes-theme .lesson-section{margin:0 0 40px;}
.midimodes-theme .lesson-section h2{font-size:22px; font-weight:800; margin:0 0 14px; padding-top:8px;}
.midimodes-theme .lesson-section p, .midimodes-theme .lesson-section li{font-size:15px; line-height:1.7;}
.midimodes-theme .lesson-section ol, .midimodes-theme .lesson-section ul{padding-left:22px; margin:0 0 12px;}
.midimodes-theme .lesson-section li{margin-bottom:6px;}
.midimodes-theme .lesson-section .caption{font-size:13px; color:var(--muted); margin-top:6px;}
.midimodes-theme .tab-example pre{display:inline-block; min-width:220px;}

.midimodes-theme .chord-row{display:flex; flex-wrap:wrap; gap:12px; margin:18px 0;}
.midimodes-theme .chord-diagram{width:120px; height:150px; background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px;}
.midimodes-theme .scale-diagram{width:100%; max-width:640px; height:auto; background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; margin:18px 0; display:block;}
.midimodes-theme .chord-name{font-family:var(--sans); font-weight:800; font-size:13px; fill:var(--text);}
.midimodes-theme .chord-nut{fill:var(--text-secondary);}
.midimodes-theme .chord-fret, .midimodes-theme .chord-string{stroke:var(--muted); stroke-width:1;}
.midimodes-theme .chord-dot{fill:var(--primary);}
.midimodes-theme .scale-root{fill:var(--accent2);}
.midimodes-theme .chord-open{fill:none; stroke:var(--accent3); stroke-width:1.5;}
.midimodes-theme .chord-mark{font-family:var(--sans); font-size:10px; fill:var(--muted);}
.midimodes-theme .chord-finger{font-family:var(--sans); font-size:9px; font-weight:700; fill:#1a1000;}

.midimodes-theme .rhythm-table{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin:18px 0;}
.midimodes-theme .rhythm-table div{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; padding:14px; font-size:13px; color:var(--text-secondary); display:flex; align-items:center; gap:12px; line-height:1.6;}
.midimodes-theme .rhythm-note{font-size:30px; line-height:1; color:var(--highlight);}

.midimodes-theme .lesson-handout{background:var(--surface-2); border:1px dashed var(--accent3); border-radius:14px; padding:24px 28px;}
.midimodes-theme .handout-head{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:8px;}
.midimodes-theme .handout-head h2{margin:0; padding:0;}
.midimodes-theme .handout-print{padding:10px 16px; font-size:13px; cursor:pointer; color:var(--text) !important; background:transparent; box-shadow:none;}
.midimodes-theme .lesson-handout h3{font-size:17px; margin:8px 0 12px;}

/* Buy / locked prompts, Sensei bits */
.midimodes-theme .course-buy{background:var(--surface-2); border:1px solid var(--surface-1); border-left:4px solid var(--primary); border-radius:14px; padding:22px 26px; margin:0 0 32px;}
.midimodes-theme .course-buy .kicker{color:var(--accent2); margin-bottom:10px;}
.midimodes-theme .course-buy h3{font-size:20px; margin:0 0 8px;}
.midimodes-theme .course-buy p{font-size:14px; color:var(--text-secondary); margin:0 0 16px;}
.midimodes-theme .course-buy-row{display:flex; align-items:center; gap:18px; flex-wrap:wrap;}
.midimodes-theme .course-buy-row .price{font-size:22px; font-weight:800; color:var(--highlight);}
.midimodes-theme .course-buy-login{font-size:13px; color:var(--muted);}
.midimodes-theme .course-ready{margin:18px 0;}
.midimodes-theme.course-paid .sensei-message.info{display:none;}
.midimodes-theme .sensei-message{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; padding:14px 18px; color:var(--text-secondary); margin:0 0 20px;}
.midimodes-theme .sensei-breadcrumb{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:10px; padding:12px 16px; font-size:13px; color:var(--muted); margin:24px 0 0; display:block;}
.midimodes-theme .course-lessons, .midimodes-theme .wp-block-sensei-lms-course-outline{margin-top:24px;}
.midimodes-theme .wp-block-sensei-lms-course-outline-module, .midimodes-theme .module-container{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:14px; margin-bottom:16px; overflow:hidden;}
.midimodes-theme .wp-block-sensei-lms-course-outline-module__header, .midimodes-theme .module-title{padding:16px 20px; background:var(--surface-1);}
.midimodes-theme .wp-block-sensei-lms-course-outline-lesson, .midimodes-theme .course-lessons .lesson{padding:12px 20px; border-top:1px solid var(--surface-1); color:var(--text-secondary);}
.midimodes-theme .wp-block-sensei-lms-course-outline-lesson:hover{background:#ffffff08;}
.midimodes-theme .sensei-course-progress, .midimodes-theme .wp-block-sensei-lms-course-progress{margin:16px 0;}

/* Ear trainer */
.midimodes-theme .ear-trainer{background:var(--surface-2); border:1px solid var(--surface-1); border-radius:18px; padding:26px; margin:24px 0;}
.midimodes-theme .et-top{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:22px;}
.midimodes-theme .et-tabs{display:flex; gap:6px; background:var(--bg); padding:4px; border-radius:10px;}
.midimodes-theme .et-tab{background:transparent; color:var(--muted) !important; box-shadow:none; padding:8px 16px; font-size:13px; border-radius:8px;}
.midimodes-theme .et-tab.is-active{background:var(--primary); color:#1a1000 !important;}
.midimodes-theme .et-tab:hover{transform:none;}
.midimodes-theme .et-options{display:flex; gap:14px; flex-wrap:wrap; font-size:13px; color:var(--muted);}
.midimodes-theme .et-options label{display:flex; align-items:center; gap:8px;}
.midimodes-theme .et-options select{padding:8px 32px 8px 10px; font-size:13px;}
.midimodes-theme .et-prompt{font-size:15px; color:var(--text-secondary); margin-bottom:16px;}
.midimodes-theme .et-actions{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:18px;}
.midimodes-theme .et-actions .btn{padding:11px 20px; font-size:13px; box-shadow:none;}
.midimodes-theme .et-choices{display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:10px; margin-bottom:16px;}
.midimodes-theme .et-choice{background:var(--surface-1); color:var(--text) !important; box-shadow:none; padding:12px 10px; font-size:13px; border-radius:10px; border:1px solid transparent;}
.midimodes-theme .et-choice:hover:not(:disabled){border-color:var(--accent3); transform:none;}
.midimodes-theme .et-choice.is-answer{background:var(--accent3); color:#062a27 !important;}
.midimodes-theme .et-choice.is-wrong{background:var(--accent2); color:#fff !important;}
.midimodes-theme .et-feedback{min-height:22px; font-size:14px; color:var(--text-secondary);}
.midimodes-theme .et-feedback.is-right{color:var(--accent3);}
.midimodes-theme .et-feedback.is-wrong{color:var(--accent2);}
.midimodes-theme .et-score{display:flex; gap:24px; flex-wrap:wrap; border-top:1px solid var(--surface-1); margin-top:18px; padding-top:14px; font-size:13px; color:var(--muted);}
.midimodes-theme .et-score strong{color:var(--highlight);}

/* ------------------------------------------------------------- Print */
@media print{
  .midimodes-theme{background:#fff !important; color:#000 !important;}
  .midimodes-theme header, .midimodes-theme footer, .midimodes-theme .lesson-body > *:not(.lesson-handout),
  .midimodes-theme .entry-hero, .midimodes-theme .handout-print, .midimodes-theme .course-buy, .midimodes-theme .sensei-breadcrumb,
  .midimodes-theme .sensei-lesson-actions, .midimodes-theme .wp-block-sensei-lms-lesson-actions{display:none !important;}
  .midimodes-theme .lesson-handout{border:1px solid #999; background:#fff; color:#000; break-inside:avoid;}
  .midimodes-theme .lesson-handout *{color:#000 !important;}
  .midimodes-theme .chord-diagram, .midimodes-theme .scale-diagram{background:#fff; border-color:#999;}
  .midimodes-theme .chord-name, .midimodes-theme .chord-mark{fill:#000;}
  .midimodes-theme .chord-fret, .midimodes-theme .chord-string{stroke:#555;}
  .midimodes-theme .chord-nut, .midimodes-theme .chord-dot{fill:#000;}
  .midimodes-theme .scale-root{fill:#c0392b;}
  .midimodes-theme .chord-finger{fill:#fff;}
  .midimodes-theme .chord-open{stroke:#000;}
}

/* -------------------------------------------------------- Responsive */
@media (max-width:900px){
  .midimodes-theme .hero{padding:64px 0 56px;}
  .midimodes-theme .hero .wrap, .midimodes-theme .module, .midimodes-theme .pricing-card, .midimodes-theme .play-panel, .midimodes-theme .faq-grid{grid-template-columns:1fr;}
  .midimodes-theme .module-head{position:static;}
  .midimodes-theme .hero-visual{max-width:420px;}
  .midimodes-theme section.pillar{padding:56px 0;}
  .midimodes-theme .pricing-card{padding:28px;}
}
@media (max-width:600px){
  :root{--gutter:18px;}
  .midimodes-theme .lesson-card{flex-wrap:wrap;}
  .midimodes-theme .lesson-meta{margin-left:50px; align-items:flex-start;}
  .midimodes-theme .chord-diagram{width:104px; height:130px;}
}
