/* ============================================================
   Masir brand skin v3 — token-driven (light/dark), Webrokh Brand Book.
   WP-only (Total + Tutor + WooCommerce). Tokens come from masir-tokens.css.
   ============================================================ */

/* ---------- Map Total / Tutor / Woo to design tokens (auto-switch with .dark) ---------- */
:root{
  /* Total (wpex) */
  --wpex-surface-1:var(--background); --wpex-surface-2:var(--card); --wpex-surface-3:var(--secondary); --wpex-surface-4:var(--accent);
  --wpex-text-1:var(--foreground); --wpex-text-2:var(--muted-foreground); --wpex-text-3:var(--muted-foreground); --wpex-text-4:var(--muted-foreground);
  --wpex-border-main:var(--border);
  --wpex-accent:var(--primary); --wpex-accent-hover:var(--primary); --wpex-accent-alt:var(--primary);
  --wpex-link-color:var(--primary); --wpex-link-color-hover:var(--primary);
  /* Tutor */
  --tutor-color-primary:var(--primary); --tutor-color-primary-hover:var(--primary);
  --tutor-color-primary-rgb:234,50,68; --tutor-color-primary-hover-rgb:234,50,68;
  --tutor-body-color:var(--foreground); --tutor-body-color-rgb:29,35,46;
  --tutor-border-color:var(--border);
}

/* ---------- Total chrome ---------- */
/* hide Total's native header, top bar & footer (replaced by .masir-nav / .masir-footer) */
#site-header,#site-header-sticky-wrapper,#top-bar-wrap,#footer,#footer-bottom,.footer-callout-wrap{display:none !important;}
.page-header{background:transparent !important;border:none !important;box-shadow:none !important;}
.page-header-title,.entry-title{color:var(--foreground) !important;}
/* red dot signature after big page/course titles */
.page-header-title::after,.tutor-course-details-title::after{content:".";color:var(--primary);margin-inline-start:.25rem;font-weight:800;}
h1,h2,h3,h4,h5,h6{color:var(--foreground);}
a{color:var(--primary);}

/* ---------- Tutor utilities (hardcoded in plugin) -> tokens ---------- */
.tutor-bg-white{background-color:var(--card) !important;}
.tutor-bg-gray-10,.tutor-bg-gray-20{background-color:var(--secondary) !important;}
.tutor-color-secondary{color:var(--foreground) !important;}
.tutor-color-muted,.tutor-color-hints,.tutor-color-subdued{color:var(--muted-foreground) !important;}

.tutor-card,.tutor-sidebar-card{
  background-color:var(--card) !important;border:1px solid var(--border) !important;border-radius:var(--radius) !important;box-shadow:none !important;
}
.tutor-accordion-item{background-color:var(--card) !important;border:1px solid var(--border) !important;border-radius:var(--radius) !important;overflow:hidden;margin-bottom:10px;}
.tutor-accordion-item-header,.tutor-accordion-item-body,.tutor-accordion-item-body-content{background-color:var(--card) !important;color:var(--foreground) !important;}
.tutor-accordion-item-header.is-active{background-color:var(--secondary) !important;}
.tutor-course-content-list{background-color:transparent !important;}
.tutor-course-content-list-item{background-color:transparent !important;border-block-end:1px solid var(--border) !important;}
.tutor-course-content-list-item-title{color:var(--foreground) !important;}
.tutor-course-content-list-item-icon{color:var(--primary) !important;}
.tutor-course-content-list-item-status,.tutor-course-content-list-item-duration{color:var(--muted-foreground) !important;}
.tutor-single-course-sidebar .tutor-sidebar-card .tutor-card-body,
.tutor-single-course-sidebar .tutor-course-single-info-card,
.tutor-single-course-sidebar-more>div,
.tutor-card-list-item,.tutor-card-list-item:nth-child(2n){background-color:var(--card) !important;border-color:var(--border) !important;}

/* fully expand course description (no Show-More truncation) */
.tutor-toggle-more-content{max-height:none !important;height:auto !important;}
.tutor-toggle-more-collapsed:before,.tutor-toggle-more-collapsed::before{display:none !important;}
.tutor-toggle-more-btn,[class*="toggle-more-btn"]{display:none !important;}

.tutor-nav-link{color:var(--muted-foreground) !important;}
.tutor-nav-link.is-active{color:var(--primary) !important;border-color:var(--primary) !important;}
.tutor-course-single-pricing,.tutor-course-price{color:var(--primary) !important;}

/* buttons (inherit --tutor-color-primary = red); enforce radius */
.tutor-btn-primary,.tutor-enroll-course-button{border-radius:var(--radius) !important;color:#fff !important;}
.theme-button,.footer-callout-button-link{background-color:var(--primary) !important;color:#fff !important;border-radius:var(--radius) !important;}

/* inputs */
input,select,textarea,.tutor-form-control{background-color:var(--background) !important;color:var(--foreground) !important;border:1px solid var(--input) !important;border-radius:var(--radius) !important;}
::placeholder{color:var(--muted-foreground) !important;}

/* login / signup modal */
.tutor-modal-overlay{background-color:rgba(0,0,0,.55) !important;}
.tutor-modal-content,.tutor-modal-content-white{background-color:var(--card) !important;color:var(--foreground) !important;border:1px solid var(--border) !important;border-radius:calc(var(--radius) * 1.6) !important;}
#tutor-login-modal-title,.tutor-modal-title,.tutor-modal-body h1,.tutor-modal-body h2,.tutor-modal-body h3,.tutor-modal-body h4,.tutor-modal-body label{color:var(--foreground) !important;}
.tutor-modal-close-o,.tutor-modal .tutor-iconic-btn{color:var(--muted-foreground) !important;}

/* WooCommerce */
.woocommerce ul.products li.product,.woocommerce .cart-collaterals .cart_totals,.woocommerce-MyAccount-content,.woocommerce table.shop_table,.woocommerce-checkout #payment{
  background-color:var(--card) !important;color:var(--foreground) !important;border:1px solid var(--border) !important;border-radius:var(--radius) !important;}
.woocommerce .price,.woocommerce-Price-amount{color:var(--primary) !important;}
.woocommerce a.button,.woocommerce button.button,.woocommerce button.button.alt,.woocommerce #respond input#submit{background-color:var(--primary) !important;color:#fff !important;border-radius:var(--radius) !important;border:none !important;}

/* drop wishlist / share / category */
.tutor-course-wishlist-btn,.tutor-course-share-btn,.tutor-social-share-wrap,.tutor-course-bookmark,.save-bookmark-btn,.tutor-course-details-actions,
.tutor-course-categories,.tutor-meta-categories,.tutor-course-listing-category,.list-item-category,.tutor-course-card-categories{display:none !important;}
/* hide the single-course featured image */
.tutor-course-thumbnail,.tutor-single-course-thumbnail{display:none !important;}

/* ============ Rich course description (.masir-cdesc) — token-based ============ */
.masir-cdesc{color:var(--foreground);line-height:1.95;font-size:16px;}
.masir-cdesc h3{color:var(--foreground);font-size:23px;font-weight:800;margin:40px 0 16px;position:relative;padding-right:16px;}
.masir-cdesc h3:first-child{margin-top:6px;}
.masir-cdesc h3::before{content:"";position:absolute;right:0;top:5px;bottom:5px;width:5px;border-radius:3px;background:var(--primary);}
.masir-cdesc p{color:var(--muted-foreground);margin:0 0 14px;}
.masir-cdesc strong{color:var(--foreground);}
.masir-cdesc .m-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:18px 0;}
.masir-cdesc .m-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;}
.masir-cdesc .m-card h4{color:var(--foreground);margin:0 0 8px;font-size:17px;font-weight:700;}
.masir-cdesc .m-card p{margin:0;color:var(--muted-foreground);font-size:14px;line-height:1.8;}
.masir-cdesc .m-chips{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0;}
.masir-cdesc .m-chip{background:color-mix(in srgb,var(--primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);color:var(--primary);padding:8px 16px;border-radius:999px;font-size:14px;font-weight:600;}
.masir-cdesc .m-list{list-style:none;padding:0;margin:14px 0;display:grid;gap:11px;}
.masir-cdesc .m-list li{position:relative;padding-right:26px;color:var(--muted-foreground);}
.masir-cdesc .m-list li::before{content:"";position:absolute;right:2px;top:11px;width:8px;height:8px;border-radius:50%;background:var(--primary);}
.masir-cdesc .m-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0;}
.masir-cdesc .m-info > div{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;}
.masir-cdesc .m-info b{display:block;color:var(--foreground);font-size:15px;margin-bottom:3px;}
.masir-cdesc .m-info span{color:var(--muted-foreground);font-size:13px;}
.masir-cdesc .m-price{background:color-mix(in srgb,var(--primary) 10%,transparent);border:1px solid color-mix(in srgb,var(--primary) 30%,transparent);border-radius:calc(var(--radius)*1.6);padding:22px 24px;margin:18px 0;}
.masir-cdesc .m-price .big{font-size:25px;font-weight:800;color:var(--foreground);}
.masir-cdesc .m-price .old{color:var(--muted-foreground);text-decoration:line-through;margin-inline-start:10px;font-size:16px;}
.masir-cdesc details{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin:10px 0;overflow:hidden;}
.masir-cdesc details summary{padding:15px 20px;cursor:pointer;color:var(--foreground);font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.masir-cdesc details summary::-webkit-details-marker{display:none;}
.masir-cdesc details summary::after{content:"+";color:var(--primary);font-size:20px;font-weight:700;}
.masir-cdesc details[open] summary::after{content:"\2212";}
.masir-cdesc details .m-a{padding:0 20px 16px;color:var(--muted-foreground);line-height:1.85;}
.masir-cdesc .m-steps{counter-reset:s;list-style:none;padding:0;margin:14px 0;display:grid;gap:12px;}
.masir-cdesc .m-steps li{counter-increment:s;position:relative;padding:14px 58px 14px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);color:var(--muted-foreground);}
.masir-cdesc .m-steps li::before{content:counter(s);position:absolute;right:14px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;}
