/* Derived working version 0.1.1; complete historical rules plus a newly authored tail. See docs/RECOVERY.md. */
/* Macoly portal and sales pages. System fonts keep the first render independent of third-party CDNs. */
body.macoly-site{--mc-bg:#111313;--mc-panel:#1b1e1d;--mc-line:#303633;--mc-text:#f4f5ef;--mc-muted:#adb5ad;--mc-accent:#c7f86c;--mc-serif:Georgia,'Times New Roman',serif;margin:0;background:var(--mc-bg);color:var(--mc-text);font:15px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:0}
.macoly-site *,.macoly-site *::before,.macoly-site *::after{box-sizing:border-box}
.macoly-site a{color:inherit;text-decoration:none}.macoly-site a:hover{color:var(--mc-accent)}
.macoly-site h1,.macoly-site h2,.macoly-site h3,.macoly-site p{margin:0}.macoly-site h1,.macoly-site h2,.macoly-site h3{font-family:inherit;color:inherit;font-weight:600;line-height:1.15;letter-spacing:-.035em}
.macoly-site button,.macoly-site input,.macoly-site select,.macoly-site textarea{font:inherit}.macoly-site button{cursor:pointer}.macoly-site img{max-width:100%}.macoly-site :focus-visible{outline:2px solid var(--mc-accent);outline-offset:5px}.macoly-site [hidden]{display:none!important}
.mc-icon{flex:0 0 auto;vertical-align:middle}.mc-skip{position:fixed;left:12px;top:-100px;z-index:1000;padding:12px;background:var(--mc-accent);color:#121810!important}.mc-skip:focus{top:12px}
.mc-brand{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:650;letter-spacing:-.04em;line-height:1}.mc-mark{font-size:33px;color:var(--mc-accent);font-weight:800;line-height:1}
.mc-sidebar{position:fixed;left:0;top:0;bottom:0;width:242px;padding:34px 20px 20px;background:#171a18;border-right:1px solid #272d29;display:flex;flex-direction:column;z-index:50}
.admin-bar .mc-sidebar{top:32px}.mc-sidebar .mc-brand{padding:0 14px 44px}.mc-sidebar-caption{font-size:10px;letter-spacing:.18em;color:#78867d;margin:0 14px 12px;font-weight:600}.mc-sidebar nav{display:grid;gap:6px}
.mc-nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;color:#b1bbb2!important;font-size:14px;line-height:1.4}.mc-nav-item:hover{background:#252b25;color:#f6f7f0!important}.mc-nav-item.is-current{background:#303c25;color:var(--mc-accent)!important}.mc-sidebar-bottom{margin-top:auto;padding-top:35px}.mc-sidebar-bottom>.mc-nav-item{font-size:13px;justify-content:space-between}
.mc-profile{border-top:1px solid var(--mc-line);display:flex;gap:10px;align-items:center;padding-top:20px;margin-top:17px}.mc-avatar{width:34px;height:34px;flex:0 0 auto;border-radius:50%;background:#535e48;color:#ecf0df;display:grid;place-items:center;font-size:14px;text-transform:uppercase}.mc-profile>span:nth-child(2){min-width:0;flex:1}.mc-profile strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.mc-profile small{font-size:11px;color:var(--mc-muted)}.mc-profile>a{color:#889789}
.mc-page-wrap{min-height:100vh}.mc-member-shell .mc-page-wrap{margin-left:242px}.mc-topbar{height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #242b26;padding:0 44px;gap:20px}.mc-topbar-title{font-size:10px;letter-spacing:.19em;color:#8d9d90}.mc-topbar-actions{display:flex;gap:24px;align-items:center}.mc-cart-link{display:flex;gap:9px;align-items:center;font-size:13px}.mc-cart-count{display:grid;place-items:center;border:1px solid #3a4737;border-radius:50%;width:22px;height:22px;font-size:11px;color:var(--mc-accent)}.mc-account-link{font-size:13px}.mc-menu-toggle{display:none;background:none;border:0;color:var(--mc-text);padding:8px}.mc-main{max-width:1490px;margin:0 auto}.mc-main-portal{padding:39px 44px 70px}.mc-main-public{padding:58px 56px 80px;max-width:1232px;min-height:70vh}
.mc-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:32px}.mc-section-heading h1{font-size:clamp(26px,2.35vw,37px);margin-top:9px}.mc-section-heading p{color:var(--mc-muted);margin-top:11px;font-size:14px}.mc-eyebrow{color:#a8b798;font-size:10px;letter-spacing:.15em;line-height:1.6;font-weight:600;text-transform:uppercase}.mc-admin-preview{margin-bottom:16px!important;color:#acbbaa;font-size:12px;border-left:2px solid #64734e;padding-left:12px}
.mc-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:47px;padding:12px 20px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:600;line-height:1.4;transition:background .15s,color .15s;white-space:normal;text-align:center;box-shadow:none}.mc-btn-primary{background:var(--mc-accent);color:#162011!important}.mc-btn-primary:hover{background:#defd9a;color:#10190a!important}.mc-btn-soft{background:#2b3429;border:1px solid #3a4834;color:#e2edd8!important}.mc-btn-soft:hover{background:#3b4933}.mc-small{font-size:11px;line-height:1.5;color:#a1aea2}.mc-tag{display:inline-flex;border:1px solid #749159;border-radius:4px;padding:4px 8px;font-size:9px;color:#d3eac0;letter-spacing:.1em;line-height:1.3;font-weight:600}.mc-tag-green{background:#304220;border-color:#45602a;color:#d8f4b9}
.mc-feature{display:grid;grid-template-columns:1.15fr 1fr;border:1px solid #3b4d35;min-height:294px;background:#203024;overflow:hidden;border-radius:12px}.mc-feature-copy{padding:35px;position:relative;z-index:1;background:linear-gradient(90deg,#243627 75%,#24362700)}.mc-feature-copy h2{font-size:clamp(26px,2.6vw,42px);margin:17px 0 14px;max-width:560px}.mc-feature-copy p{font-size:13px;max-width:380px;color:#bbcab8;margin-bottom:23px}.mc-feature-art{position:relative;min-width:0}.mc-feature-art>.mc-art-img{width:100%;height:100%;object-fit:cover}.mc-feature-art .mc-art-placeholder{height:100%;background:#283e2a}.mc-feature-art .mc-art-shape{width:210px;height:210px}.mc-feature-art .mc-art-label{right:30px;bottom:25px;left:auto}
.mc-library-summary{display:flex;gap:28px;align-items:center;padding:20px 3px 25px;border-bottom:1px solid #29302b;color:#909d90;font-size:12px}.mc-library-summary strong{color:#e4ecda;font-size:16px;margin-right:6px;font-weight:500}.mc-library-summary>a{margin-left:auto;display:flex;align-items:center;gap:8px;color:#c5d2b9;font-size:12px}
.mc-product-section{margin-top:34px}.mc-section-title{display:flex;gap:22px;justify-content:space-between;align-items:center;margin-bottom:20px}.mc-section-title h2{font-size:21px}.mc-section-title .mc-eyebrow+h2{margin-top:7px}.mc-section-title>a{font-size:12px;color:#aeba9f;display:flex;align-items:center;gap:8px;white-space:nowrap}.mc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.mc-card{overflow:hidden;background:var(--mc-panel);border:1px solid #2c342d;border-radius:9px;min-width:0;transition:border-color .2s}.mc-card:hover{border-color:#57664a}.mc-card-art{position:relative;display:block;aspect-ratio:1.5;overflow:hidden;background:#333e32}.mc-art-img{display:block;width:100%;height:100%;object-fit:cover}.mc-status{position:absolute;top:13px;right:13px;display:flex;gap:5px;align-items:center;padding:6px 9px;background:#1c221ee6;border:1px solid #4a554b;border-radius:4px;font-size:9px;color:#d5dfce;backdrop-filter:blur(6px)}.mc-status .mc-icon{width:12px;height:12px}.mc-status.is-owned{color:#d5f7b4;border-color:#61794e;background:#2c3e2ce6}
.mc-card-body{padding:19px 19px 16px}.mc-card-body>.mc-eyebrow{font-size:9px;color:#a5b990}.mc-card h3{font-size:18px;margin-top:6px;font-weight:500;letter-spacing:-.02em;min-height:42px}.mc-card-body>p{color:#95a095;font-size:12px;margin-top:10px;min-height:38px;line-height:1.6}.mc-card-bottom{margin-top:17px;padding-top:13px;border-top:1px solid #2b332c;display:flex;align-items:center;justify-content:space-between;gap:10px}.mc-card-action{display:flex;gap:7px;align-items:center;font-size:11px;color:#c8e6b0!important;white-space:nowrap}.mc-card-action .mc-icon{width:16px;height:16px}.mc-price{font-size:15px;color:#eaf0df;font-weight:500}.mc-price del{font-size:11px;color:#8b9786;margin-right:5px}.mc-price ins,.mc-sales-price ins{background:none;text-decoration:none}
.mc-art-placeholder{height:100%;width:100%;min-height:150px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 65% 25%,#77845d88,transparent 60%),#404c37;display:grid;place-items:center}.mc-art-course{background:radial-gradient(ellipse at 70% 35%,#637c8077,transparent 60%),#2d4143}.mc-art-bundle{background:radial-gradient(ellipse at 70% 35%,#aa896855,transparent 60%),#4c3f31}.mc-art-shape{display:block;width:126px;height:126px;background:repeating-linear-gradient(0deg,#d9e2bd 0 2px,#919a6f 2px 4px);border-radius:30% 30% 12% 12%;transform:rotate(-15deg) skewY(4deg);box-shadow:18px 21px 0 #283a21,35px 38px 34px #17231799}.mc-art-course .mc-art-shape{border-radius:5px;transform:rotate(-14deg) skewY(6deg);background:linear-gradient(140deg,#a9cacc,#608687);box-shadow:16px 19px 0 #233b3c,28px 30px 24px #172e3588}.mc-art-bundle .mc-art-shape{border-radius:8px;transform:rotate(-18deg) skewY(12deg);background:repeating-linear-gradient(0deg,#d4c0a2 0 2px,#b39a70 2px 4px);box-shadow:13px 13px 0 #726148,25px 25px 0 #493d2e,30px 37px 28px #33211377}.mc-art-label{position:absolute;bottom:15px;left:16px;display:flex;gap:7px;align-items:center;font-size:9px;letter-spacing:.18em;color:#d9e6c4}.mc-art-label .mc-icon{width:14px;height:14px}
.mc-empty{text-align:center;padding:58px 28px;background:#1a2119;border:1px dashed #46553c;border-radius:9px;max-width:900px;margin:18px auto}.mc-empty>.mc-icon{color:#a8c089;width:35px;height:35px;margin-bottom:16px}.mc-empty h1,.mc-empty h2{font-size:24px;line-height:1.3}.mc-empty p{font-size:14px;color:var(--mc-muted);margin-top:12px}.mc-empty .mc-btn{margin-top:25px}
.mc-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}.mc-filters{display:flex;gap:7px;flex-wrap:wrap}.mc-filter{padding:7px 13px;border-radius:5px;font-size:12px;color:#9ca998!important;border:1px solid #354130}.mc-filter.is-current{background:#34462a;color:#ddf4c8!important;border-color:#5c7646}.mc-search{display:flex;align-items:center;gap:8px;border-bottom:1px solid #536046;padding:4px 0;width:240px;color:#899a7b}.mc-search>input{min-width:0;border:0!important;background:transparent!important;color:#e8eddc!important;padding:8px 0!important;width:100%;font-size:12px;outline-offset:2px}.mc-search>button{background:none;border:0;color:#c4d5b2;padding:3px}.mc-search .mc-icon{width:16px;height:16px}.mc-result-count{color:#8d9a83;font-size:11px;margin-bottom:18px!important}.mc-pagination{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:32px}.mc-pagination>*{padding:7px 11px;font-size:13px;border:1px solid #3e4d36;border-radius:4px}.mc-pagination>.current{background:#37442b;color:var(--mc-accent)}
.mc-library-detail{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:30px;margin-bottom:34px}.mc-library-image{aspect-ratio:1.4;border-radius:8px;overflow:hidden}.mc-library-detail h2{font-size:30px;margin:14px 0 12px}.mc-library-detail p{font-size:13px;color:#adbba3;margin-top:6px}.mc-content-list{padding:25px;border:1px solid #37452f;border-radius:10px;background:#1c241b}.mc-content-list>h2{font-size:21px;margin-bottom:18px}.mc-download-row{display:flex;gap:14px;align-items:center;padding:17px 0;border-top:1px solid #354230}.mc-row-icon{display:grid;place-items:center;flex:0 0 auto;background:#2e3a29;width:44px;height:44px;border-radius:6px;color:#bed3a9}.mc-download-row>div:nth-child(2){flex:1;min-width:0}.mc-download-row strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.mc-download-row span{display:block;font-size:11px;color:#9dad8c;margin-top:3px}.mc-download-row .mc-btn{min-height:37px;padding:8px 13px;font-size:11px}.mc-license{margin-top:30px;border-left:2px solid #68814f;padding:0 0 0 22px}.mc-license h3{font-size:17px;margin-bottom:10px}.mc-license p{font-size:13px;color:#a7b29d;line-height:1.8}
.mc-progress-line{display:flex;justify-content:space-between;font-size:10px;color:#a6b197;margin-top:19px}.mc-progress,.mc-curriculum progress{appearance:none;width:100%;height:4px;border:0;display:block;margin-top:8px;background:#3b4531;border-radius:4px;overflow:hidden}.mc-progress::-webkit-progress-bar,.mc-curriculum progress::-webkit-progress-bar{background:#3b4531}.mc-progress::-webkit-progress-value,.mc-curriculum progress::-webkit-progress-value{background:var(--mc-accent)}.mc-progress::-moz-progress-bar,.mc-curriculum progress::-moz-progress-bar{background:var(--mc-accent)}
.mc-back{display:inline-block;font-size:12px;color:#a8bf91!important;margin-bottom:23px}.mc-learning-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:27px;align-items:start}.mc-video-frame{aspect-ratio:16/9;background:#070a08;border:1px solid #313c2c;border-radius:8px;overflow:hidden}.mc-video-frame iframe{width:100%;height:100%;border:0;display:block}.mc-video-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center;gap:10px;color:#b8c9a5}.mc-video-pending>.mc-icon{width:40px;height:40px}.mc-video-pending strong{font-size:16px;font-weight:500}.mc-video-pending span{font-size:11px;color:#829476}.mc-lesson-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:26px}.mc-lesson-heading h2{font-size:24px;margin-top:6px}.mc-lesson-text{margin:21px 0 28px;color:#b8c3af;font-size:14px;line-height:1.8}.mc-lesson-text p+p{margin-top:12px}.mc-lesson-text a{text-decoration:underline}.mc-lesson-text ul,.mc-lesson-text ol{padding-left:23px}.mc-saved{margin-top:15px!important;color:#b8d99a;font-size:12px}.mc-curriculum{border:1px solid #35452e;border-radius:8px;background:#192118;overflow:hidden}.mc-curriculum-head{padding:22px;border-bottom:1px solid #34432c}.mc-curriculum-head h2{font-size:17px;margin-bottom:7px}.mc-curriculum-head>span{font-size:11px;color:#a1b190}.mc-curriculum progress{margin-top:14px}.mc-module-title{font-size:10px!important;text-transform:uppercase;letter-spacing:.08em!important;color:#93a580!important;padding:20px 21px 7px}.mc-curriculum-item{display:flex;align-items:start;gap:10px;padding:13px 20px;font-size:12px;line-height:1.5;color:#b4c2a7!important;border-left:2px solid transparent}.mc-curriculum-item.is-current{background:#2b3825;border-left-color:var(--mc-accent);color:#e6f2d7!important}.mc-curriculum-item small{display:block;color:#859b74;margin-top:3px;font-size:10px}.mc-lesson-dot{width:16px;height:16px;border:1px solid #5b704b;border-radius:50%;flex:0 0 auto;margin-top:2px}.mc-lesson-dot.is-complete{background:#526d35;color:#d7f4b3;display:grid;place-items:center;border-color:#73994d}.mc-lesson-dot>.mc-icon{width:11px;height:11px}
.mc-public-shell .mc-topbar{max-width:1370px;margin:auto;border-bottom:1px solid #29312b;padding:0 56px}.mc-public-shell .mc-brand{font-size:25px}.mc-sales-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;padding:22px 0 64px}.mc-sales-copy h1{font-size:clamp(38px,4.5vw,62px);font-weight:500;line-height:1.06;margin:20px 0 24px}.mc-sales-intro{color:#b1bfaa;font-size:16px;line-height:1.8;max-width:530px}.mc-sales-intro p+p{margin-top:12px}.mc-sales-access{display:flex;gap:21px;flex-wrap:wrap;font-size:12px;color:#b0c297;margin:23px 0 28px}.mc-sales-access>span{display:flex;gap:7px;align-items:center}.mc-sales-access .mc-icon{width:15px;height:15px}.mc-offer{border-top:1px solid #37472e;padding-top:23px}.mc-sales-price{font-size:31px;font-weight:500;letter-spacing:-.03em;margin-bottom:17px;line-height:1.3}.mc-sales-price del{font-size:17px;color:#8a9b7c;margin-right:8px}.mc-offer-note{font-size:11px;color:#93a585;max-width:350px;margin-top:13px!important;line-height:1.7}.mc-buy-form{margin:0}.mc-sales-art{aspect-ratio:1;overflow:hidden;border:1px solid #4c5b41;border-radius:12px}.mc-sales-art .mc-art-placeholder{height:100%}.mc-sales-art .mc-art-shape{width:200px;height:200px}.mc-sales-art .mc-art-label{left:25px;bottom:25px;font-size:12px}.mc-sales-art .mc-art-img{object-fit:contain;background:#1c281b}
.mc-sales-section{padding:45px 0;border-top:1px solid #33412b}.mc-sales-section h2{font-size:31px;font-weight:500;margin:7px 0 23px}.mc-benefits{display:grid;grid-template-columns:1fr 1fr;gap:19px 40px;padding:0;margin:0;list-style:none}.mc-benefits li{display:flex;align-items:start;gap:13px;font-size:15px;color:#c1ccba}.mc-benefits .mc-icon{color:var(--mc-accent);margin-top:2px}.mc-sales-description{color:#bec9b6;line-height:1.85}.mc-sales-description p+p{margin-top:17px}.mc-sales-description h2{color:#f0f5e8}.mc-sales-description a{color:#d3f8a2;text-decoration:underline}.mc-combo-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mc-combo-list>div{display:flex;align-items:center;gap:14px;padding:21px;background:#1f2a1b;border:1px solid #3f5132;border-radius:8px}.mc-combo-icon{display:grid;place-items:center;flex:0 0 auto;width:39px;height:39px;background:#34472b;border-radius:5px;color:#c4e7a8}.mc-combo-list strong{font-size:14px;font-weight:500}.mc-sales-curriculum{border:1px solid #3d5030;border-radius:8px;margin-top:16px;overflow:hidden}.mc-sales-curriculum>h3{font-size:18px;padding:23px;background:#22321f}.mc-sales-curriculum details{border-top:1px solid #3d5030}.mc-sales-curriculum summary{cursor:pointer;padding:18px 22px;font-size:14px}.mc-sales-curriculum summary span{float:right;font-size:11px;color:#a1b58d}.mc-sales-curriculum ol{margin:0 0 18px 25px;padding-left:23px;font-size:13px;color:#a4b993;line-height:2}.mc-sales-finish{padding:46px;background:#26361f;border:1px solid #4c633a;border-radius:10px;text-align:center;margin-top:25px}.mc-sales-finish h2{font-size:33px;font-weight:500}.mc-sales-finish p{color:#b5c8a3;margin:14px 0 22px;font-size:14px}.mc-public-footer{border-top:1px solid #2e3a28;padding:25px 56px;color:#889e76;font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1370px;margin:0 auto}.mc-public-footer>div{display:flex;gap:22px}
.mc-gate{text-align:center;max-width:780px;padding:28px 0 54px;margin:0 auto}.mc-gate-symbol{display:grid;place-items:center;width:65px;height:65px;border:1px solid #5d7448;background:#25371e;border-radius:50%;margin:0 auto 29px;color:var(--mc-accent)}.mc-gate-symbol>.mc-icon{width:26px;height:26px}.mc-gate h1{font-size:clamp(36px,4.5vw,57px);font-weight:500;line-height:1.13;margin:18px 0 24px}.mc-gate p{max-width:560px;margin:0 auto 30px;color:#abbc9b;font-size:15px}.mc-gate-note{display:block;font-size:11px;color:#8d9d80;max-width:450px;margin:22px auto 0}.mc-page-heading{font-size:38px!important;margin-bottom:32px!important}
/* Scoped WooCommerce styling preserves the official gateway fields and behavior. */
.macoly-site .woocommerce{color:#c1ceba}.macoly-site .woocommerce h2,.macoly-site .woocommerce h3{font-size:22px;margin:25px 0 17px;color:#eef4e5}.macoly-site .woocommerce form .form-row label{color:#bfcfb3;font-size:13px}.macoly-site .woocommerce input.input-text,.macoly-site .woocommerce textarea,.macoly-site .woocommerce select{background:#202b1d;color:#eef5e5;border:1px solid #4a5e3b;border-radius:4px;padding:11px;min-height:43px;width:100%}.macoly-site .woocommerce input[type=checkbox],.macoly-site .woocommerce input[type=radio]{accent-color:#c7f86c}.macoly-site .woocommerce form .form-row{padding:4px 0;margin-bottom:13px}.macoly-site .woocommerce form.login,.macoly-site .woocommerce form.register{border:1px solid #465c36;border-radius:8px;background:#1b2518;padding:26px}.macoly-site .woocommerce a.button,.macoly-site .woocommerce button.button,.macoly-site .woocommerce input.button,.macoly-site .woocommerce #respond input#submit{background:#c7f86c;color:#14210d;border:0;border-radius:5px;padding:13px 19px;font:600 13px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;text-shadow:none;box-shadow:none}.macoly-site .woocommerce a.button:hover,.macoly-site .woocommerce button.button:hover{background:#ddfb9d;color:#14210d}

/* Macoly 0.1.1: new completion. The unavailable historical CSS tail was not reconstructed. */
.macoly-site .woocommerce table.shop_table {
  width: 100%;
  border: 1px solid #43553a;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 8px;
  background: #192117;
  overflow: hidden;
  text-align: left;
}
.macoly-site .woocommerce table.shop_table th,
.macoly-site .woocommerce table.shop_table td {
  padding: 15px 17px;
  border-top: 1px solid #35452e;
  vertical-align: middle;
  overflow-wrap: anywhere;
}
.macoly-site .woocommerce table.shop_table thead th {
  border-top: 0;
  background: #23301e;
  color: #e8f2de;
  font-size: 12px;
  font-weight: 600;
}
.macoly-site .woocommerce table.shop_table td { font-size: 14px; }
.macoly-site .woocommerce table.shop_table tbody:first-child tr:first-child th,
.macoly-site .woocommerce table.shop_table tbody:first-child tr:first-child td { border-top: 0; }
.macoly-site .woocommerce table.shop_table tfoot th,
.macoly-site .woocommerce table.shop_table tfoot td { color: #e8f2de; }
.macoly-site .woocommerce .product-thumbnail img { width: 68px; height: auto; border-radius: 5px; }
.macoly-site .woocommerce .quantity .qty { width: 5.5em; min-width: 4em; padding: 9px 6px; }
.macoly-site .woocommerce a.remove { color: #ffbbb5 !important; }
.macoly-site .woocommerce a.remove:hover { background: #6e302c; color: #fff !important; }
.macoly-site .woocommerce .cart_totals { padding: 20px; border: 1px solid #43553a; border-radius: 8px; background: #1b2518; }
.macoly-site .woocommerce .cart_totals > h2 { margin-top: 0; }
.macoly-site .woocommerce .cart-collaterals { margin-top: 28px; }
.macoly-site .woocommerce .cart .actions .coupon { display: flex; gap: 10px; flex-wrap: wrap; }
.macoly-site .woocommerce .cart .actions .coupon .input-text { width: 170px; margin: 0; }
.macoly-site .woocommerce .woocommerce-info,
.macoly-site .woocommerce .woocommerce-message,
.macoly-site .woocommerce .woocommerce-error {
  padding: 17px 20px 17px 48px;
  border-top: 3px solid #a6c987;
  border-radius: 5px;
  background: #26351f;
  color: #e6f0dd;
  line-height: 1.7;
  margin-bottom: 24px;
}
.macoly-site .woocommerce .woocommerce-info::before,
.macoly-site .woocommerce .woocommerce-message::before { color: #c7f86c; }
.macoly-site .woocommerce .woocommerce-error { border-top-color: #efa39a; background: #3f2420; }
.macoly-site .woocommerce .woocommerce-error::before { color: #ffc1b7; }
.macoly-site .woocommerce .woocommerce-info a,
.macoly-site .woocommerce .woocommerce-message a,
.macoly-site .woocommerce .woocommerce-error a { text-decoration: underline; text-underline-offset: 3px; }
.macoly-site .woocommerce .woocommerce-info .button,
.macoly-site .woocommerce .woocommerce-message .button { text-decoration: none; }
.macoly-site .woocommerce form .form-row .required { color: #f0baa0; }
.macoly-site .woocommerce form .form-row.woocommerce-invalid .input-text,
.macoly-site .woocommerce form .form-row.woocommerce-invalid select { border-color: #efa39a; }
.macoly-site .woocommerce form .form-row.woocommerce-validated .input-text,
.macoly-site .woocommerce form .form-row.woocommerce-validated select { border-color: #90b873; }
.macoly-site .woocommerce button.button:disabled,
.macoly-site .woocommerce button.button:disabled[disabled],
.macoly-site .woocommerce .button.disabled { opacity: .55; cursor: not-allowed; color: #14210d; }
.macoly-site .woocommerce .woocommerce-privacy-policy-text,
.macoly-site .woocommerce .woocommerce-terms-and-conditions-wrapper { font-size: 13px; line-height: 1.8; }
.macoly-site .woocommerce .woocommerce-privacy-policy-text p { margin-bottom: 12px; }
.macoly-site .woocommerce .woocommerce-terms-and-conditions { border: 1px solid #43553a; padding: 18px; background: #1b2518; }
.macoly-site .woocommerce .woocommerce-checkout-review-order { margin-top: 18px; }
.macoly-site .woocommerce #payment { background: #1d281a; border: 1px solid #43553a; border-radius: 8px; }
.macoly-site .woocommerce #payment ul.payment_methods { padding: 20px; border-bottom: 1px solid #43553a; list-style: none; }
.macoly-site .woocommerce #payment ul.payment_methods li { margin: 0 0 12px; }
.macoly-site .woocommerce #payment ul.payment_methods li:last-child { margin-bottom: 0; }
.macoly-site .woocommerce #payment ul.payment_methods label { color: #e8f2de; cursor: pointer; }
.macoly-site .woocommerce #payment ul.payment_methods input.input-radio { margin: 0 8px 0 0; }
.macoly-site .woocommerce #payment div.payment_box { background: #2b3a24; color: #dce8d1; border-radius: 5px; line-height: 1.8; }
.macoly-site .woocommerce #payment div.payment_box::before { border-bottom-color: #2b3a24; }
.macoly-site .woocommerce #payment div.form-row { padding: 20px; margin: 0; }
.macoly-site .woocommerce #payment .payment_box p + p { margin-top: 10px; }
.macoly-site .woocommerce #payment .payment_box fieldset { border: 1px solid #53664a; padding: 15px; margin-top: 14px; border-radius: 5px; }
.macoly-site .woocommerce #place_order { min-height: 48px; min-width: 190px; margin-top: 14px; }
.macoly-site .woocommerce .woocommerce-order-overview { margin: 25px 0; padding: 20px 0; }
.macoly-site .woocommerce .woocommerce-order-overview li { margin-bottom: 14px; padding-right: 22px; color: #aebfa1; }
.macoly-site .woocommerce .woocommerce-order-overview strong { color: #eaf2e2; }
.macoly-site .woocommerce .woocommerce-order-details { margin-top: 30px; }
.macoly-site .woocommerce .woocommerce-customer-details address { border: 1px solid #43553a; background: #1b2518; padding: 20px; border-radius: 6px; line-height: 1.9; }
.macoly-site .woocommerce .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border: 1px solid #43553a; border-radius: 7px; overflow: hidden; }
.macoly-site .woocommerce .woocommerce-MyAccount-navigation li + li { border-top: 1px solid #35452e; }
.macoly-site .woocommerce .woocommerce-MyAccount-navigation a { display: block; padding: 13px 16px; background: #1b2518; }
.macoly-site .woocommerce .woocommerce-MyAccount-navigation .is-active a { background: #34462a; color: #ddf4c8; }
.macoly-site .woocommerce .woocommerce-MyAccount-content p + p { margin-top: 14px; }
.macoly-site .woocommerce .woocommerce-MyAccount-content p a { color: #d0efa9; text-decoration: underline; text-underline-offset: 3px; }
.macoly-site .woocommerce .woocommerce-MyAccount-content legend { color: #e9f3df; font-size: 18px; padding: 0 8px; }
.macoly-site .woocommerce .woocommerce-MyAccount-content fieldset { border: 1px solid #43553a; border-radius: 7px; margin: 25px 0; padding: 20px; }
.macoly-site .select2-container { max-width: 100%; }
.macoly-site .select2-container--default .select2-selection--single { min-height: 43px; height: auto; background: #202b1d; border: 1px solid #4a5e3b; border-radius: 4px; padding: 7px 5px; }
.macoly-site .select2-container--default .select2-selection--single .select2-selection__rendered { color: #eef5e5; line-height: 27px; }
.macoly-site .select2-container--default .select2-selection--single .select2-selection__arrow { top: 8px; }
.macoly-site .select2-dropdown { color: #eef5e5; background: #202b1d; border-color: #4a5e3b; }
.macoly-site .select2-container--default .select2-search--dropdown .select2-search__field { color: #eef5e5; background: #182315; border-color: #617a50; padding: 8px; }
.macoly-site .select2-container--default .select2-results__option[aria-selected=true] { background: #34462a; }
.macoly-site .select2-container--default .select2-results__option--highlighted[aria-selected] { background: #526c3c; color: #fff; }

/* Layout resilience and keyboard support. */
.macoly-site .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 !important;
  width: 1px;
  white-space: nowrap !important;
}
.macoly-site .screen-reader-text:focus {
  clip: auto;
  clip-path: none;
  height: auto;
  width: auto;
  margin: 0;
  padding: 12px;
  background: #c7f86c;
  color: #14210d;
  z-index: 100;
}
.mc-sidebar { overflow-y: auto; overscroll-behavior: contain; }
.mc-brand { min-width: 0; }
.mc-main, .mc-lesson-main, .mc-sales-copy { min-width: 0; }
.mc-section-heading h1, .mc-card h3, .mc-lesson-heading h2, .mc-sales-copy h1 { overflow-wrap: anywhere; }
.mc-course-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mc-lesson-text img, .mc-sales-description img { height: auto; border-radius: 6px; }
.mc-lesson-text iframe, .mc-sales-description iframe { max-width: 100%; }
.mc-lesson-text pre, .mc-sales-description pre { max-width: 100%; overflow-x: auto; white-space: pre; }
.mc-lesson-text table, .mc-sales-description table { display: block; max-width: 100%; overflow-x: auto; }
.mc-lesson-text blockquote, .mc-sales-description blockquote { border-left: 2px solid #7e9962; margin: 20px 0; padding-left: 20px; }
.mc-cart-link, .mc-account-link, .mc-menu-toggle { min-height: 44px; }
.mc-account-link { display: inline-flex; align-items: center; }
.mc-video-frame iframe { max-width: none; }
.mc-buy-form .mc-btn { max-width: 100%; }
.mc-public-footer > div { flex-wrap: wrap; }
.mc-feature-art .mc-art-placeholder { min-height: 250px; }

/* The mobile navigation threshold matches assets/macoly.js. */
@media (max-width: 1180px) {
  .mc-main-portal { padding: 32px 30px 55px; }
  .mc-topbar { padding-left: 30px; padding-right: 30px; }
  .mc-grid { gap: 18px; }
  .mc-card-body { padding: 17px 15px; }
  .mc-card-bottom { flex-wrap: wrap; }
  .mc-learning-layout { grid-template-columns: minmax(0, 1fr); }
  .mc-curriculum { width: 100%; }
  .mc-feature-copy { padding: 28px; }
  .mc-feature { grid-template-columns: 1.2fr 1fr; }
  .mc-library-detail { grid-template-columns: 210px minmax(0, 1fr); gap: 24px; }
}
@media (min-width: 781px) and (max-width: 1060px) {
  .mc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mc-feature { grid-template-columns: 1fr; }
  .mc-feature-art { max-height: 230px; }
  .mc-feature-art .mc-art-img { min-height: 220px; }
}
@media (max-width: 1000px) {
  .mc-main-public { padding: 40px 32px 60px; }
  .mc-public-shell .mc-topbar, .mc-public-footer { padding-left: 32px; padding-right: 32px; }
  .mc-sales-hero { gap: 30px; }
  .mc-sales-copy h1 { font-size: clamp(34px, 5vw, 48px); }
  .mc-sales-art .mc-art-shape { width: 150px; height: 150px; }
  .mc-sales-finish { padding: 32px; }
}
@media (max-width: 780px) {
  .mc-member-shell .mc-page-wrap { margin-left: 0; }
  .mc-topbar { position: sticky; top: 0; height: 72px; padding: 0 22px; z-index: 60; background: #151a16; }
  .mc-menu-toggle { display: inline-flex; align-items: center; justify-content: center; }
  .mc-sidebar {
    top: 72px;
    bottom: 0;
    width: min(320px, 88vw);
    padding: 27px 20px 20px;
    transform: translateX(-110%);
    visibility: hidden;
    pointer-events: none;
    transition: transform .2s ease, visibility .2s;
    box-shadow: 18px 0 40px #070c0799;
  }
  .mc-sidebar.is-open { transform: translateX(0); visibility: visible; pointer-events: auto; }
  .mc-sidebar .mc-brand { padding-bottom: 30px; }
  .admin-bar .mc-topbar { top: 46px; }
  .admin-bar .mc-sidebar { top: 118px; }
  .mc-main-portal { padding: 28px 22px 45px; }
  .mc-main-public { padding: 32px 22px 50px; }
  .mc-public-shell .mc-topbar { padding: 0 22px; }
  .mc-public-shell .mc-brand { font-size: 20px; }
  .mc-topbar-actions { gap: 18px; }
  .mc-topbar-title { font-size: 9px; letter-spacing: .1em; }
  .mc-section-heading { align-items: start; margin-bottom: 25px; }
  .mc-section-heading h1 { font-size: 30px; }
  .mc-feature { grid-template-columns: 1fr; }
  .mc-feature-copy { padding: 27px; background: #243627; }
  .mc-feature-copy h2 { max-width: none; font-size: 34px; }
  .mc-feature-art { min-height: 210px; max-height: 260px; }
  .mc-feature-art > .mc-art-img { min-height: 210px; }
  .mc-feature-art .mc-art-placeholder { min-height: 210px; }
  .mc-library-summary { flex-wrap: wrap; gap: 15px 22px; }
  .mc-library-summary > a { margin-left: 0; }
  .mc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .mc-section-title { align-items: start; gap: 15px; }
  .mc-section-title h2 { font-size: 21px; }
  .mc-section-title > a { white-space: normal; text-align: right; }
  .mc-catalog-toolbar { align-items: stretch; gap: 16px; }
  .mc-search { width: 100%; }
  .mc-search > input { font-size: 16px; }
  .mc-library-detail { grid-template-columns: 160px minmax(0, 1fr); gap: 20px; }
  .mc-library-detail h2 { font-size: 25px; }
  .mc-lesson-heading { align-items: start; flex-wrap: wrap; }
  .mc-lesson-heading h2 { font-size: 24px; }
  .mc-sales-hero { grid-template-columns: 1fr; padding: 10px 0 35px; gap: 32px; }
  .mc-sales-copy h1 { font-size: clamp(35px, 8vw, 52px); margin-top: 17px; }
  .mc-sales-art { max-width: 520px; width: 100%; margin: auto; }
  .mc-sales-art .mc-art-shape { width: 200px; height: 200px; }
  .mc-sales-section { padding: 32px 0; }
  .mc-sales-section h2 { font-size: 28px; }
  .mc-benefits { gap: 18px 25px; }
  .mc-combo-list { gap: 12px; }
  .mc-combo-list > div { padding: 16px; }
  .mc-public-footer { padding: 25px 22px; flex-wrap: wrap; gap: 14px; }
  .mc-public-footer > div { gap: 18px; }
  .macoly-site .woocommerce .col2-set .col-1,
  .macoly-site .woocommerce .col2-set .col-2,
  .macoly-site .woocommerce .cart-collaterals .cart_totals,
  .macoly-site .woocommerce .woocommerce-MyAccount-navigation,
  .macoly-site .woocommerce .woocommerce-MyAccount-content { float: none; width: 100%; }
  .macoly-site .woocommerce .woocommerce-MyAccount-content { margin-top: 25px; }
  .macoly-site .woocommerce .col2-set .col-2 { margin-top: 22px; }
  .macoly-site .woocommerce .form-row-first,
  .macoly-site .woocommerce .form-row-last { float: none; width: 100%; }
  .macoly-site .woocommerce input.input-text,
  .macoly-site .woocommerce select,
  .macoly-site .woocommerce textarea { font-size: 16px; }
  .macoly-site .woocommerce table.shop_table_responsive tr td { display: block; text-align: right; border-top: 1px solid #35452e; }
  .macoly-site .woocommerce table.shop_table_responsive tr td::before { content: attr(data-title) ": "; font-weight: 600; float: left; color: #e8f2de; }
  .macoly-site .woocommerce table.shop_table_responsive thead { display: none; }
  .macoly-site .woocommerce table.shop_table_responsive tr:nth-child(2n) td { background: #202c1b; }
  .macoly-site .woocommerce table.shop_table_responsive tr td.actions { text-align: left; }
  .macoly-site .woocommerce table.shop_table_responsive tr td.actions::before,
  .macoly-site .woocommerce table.shop_table_responsive tr td.product-remove::before { display: none; }
  .macoly-site .woocommerce table.shop_table_responsive tr td.product-remove { text-align: left; }
  .macoly-site .woocommerce .cart .actions .coupon { float: none; margin-bottom: 14px; }
  .macoly-site .woocommerce .cart .actions > .button { width: 100%; }
}
@media (max-width: 520px) {
  .mc-topbar { padding: 0 15px; gap: 12px; }
  .mc-public-shell .mc-topbar { padding: 0 15px; }
  .mc-topbar-title { display: none; }
  .mc-topbar-actions { gap: 13px; margin-left: auto; }
  .mc-cart-link { gap: 6px; font-size: 12px; }
  .mc-account-link { font-size: 12px; }
  .mc-public-shell .mc-brand { font-size: 18px; gap: 7px; }
  .mc-mark { font-size: 29px; }
  .mc-main-portal { padding: 25px 16px 40px; }
  .mc-main-public { padding: 27px 16px 45px; }
  .mc-grid, .mc-course-grid { grid-template-columns: minmax(0, 1fr); }
  .mc-feature-copy { padding: 25px 22px; }
  .mc-feature-copy h2 { font-size: 31px; }
  .mc-section-heading h1 { font-size: 28px; }
  .mc-section-title { flex-wrap: wrap; gap: 10px; }
  .mc-section-title > a { text-align: left; }
  .mc-card h3 { min-height: 0; font-size: 20px; }
  .mc-card-body > p { min-height: 0; }
  .mc-card-bottom { flex-wrap: nowrap; }
  .mc-card-art { aspect-ratio: 1.55; }
  .mc-library-detail { grid-template-columns: 1fr; }
  .mc-library-image { max-width: 320px; }
  .mc-content-list { padding: 20px 16px; }
  .mc-download-row { flex-wrap: wrap; gap: 12px; }
  .mc-download-row > div:nth-child(2) { flex-basis: calc(100% - 56px); }
  .mc-download-row .mc-btn { margin-left: 56px; }
  .mc-license { padding-left: 16px; }
  .mc-video-pending > .mc-icon { width: 28px; height: 28px; }
  .mc-video-pending strong { font-size: 13px; }
  .mc-video-pending span { font-size: 10px; }
  .mc-learning-layout { gap: 22px; }
  .mc-lesson-heading .mc-btn { width: 100%; }
  .mc-benefits, .mc-combo-list { grid-template-columns: 1fr; }
  .mc-sales-intro { font-size: 15px; }
  .mc-sales-access { gap: 12px; }
  .mc-sales-art .mc-art-shape { width: 160px; height: 160px; }
  .mc-sales-curriculum summary span { float: none; display: block; margin-top: 5px; }
  .mc-sales-finish { padding: 28px 20px; }
  .mc-sales-finish h2 { font-size: 29px; }
  .mc-sales-finish .mc-btn, .mc-buy-form .mc-btn { width: 100%; }
  .mc-page-heading { font-size: 30px !important; }
  .mc-gate { padding-top: 15px; }
  .mc-gate h1 { font-size: 36px; }
  .mc-public-footer { padding: 22px 16px; }
  .macoly-site .woocommerce table.shop_table th,
  .macoly-site .woocommerce table.shop_table td { padding: 12px 10px; font-size: 12px; }
  .macoly-site .woocommerce .cart_totals { padding: 16px 12px; }
  .macoly-site .woocommerce .cart .actions .coupon .input-text { width: 100%; }
  .macoly-site .woocommerce .cart .actions .coupon .button { width: 100%; }
  .macoly-site .woocommerce #payment div.form-row,
  .macoly-site .woocommerce #payment ul.payment_methods { padding: 17px; }
  .macoly-site .woocommerce #place_order { width: 100%; float: none; }
  .macoly-site .woocommerce .woocommerce-order-overview li { display: block; float: none; border: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .macoly-site *, .macoly-site *::before, .macoly-site *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
@media (forced-colors: active) {
  .mc-btn, .mc-filter, .mc-card, .mc-status, .mc-curriculum, .mc-content-list { border: 1px solid ButtonText; }
  .mc-status, .mc-sidebar, .mc-curriculum, .mc-content-list { background: Canvas; color: CanvasText; }
  .macoly-site :focus-visible { outline-color: Highlight; }
  .mc-nav-item.is-current, .mc-curriculum-item.is-current { border-left: 3px solid Highlight; }
}
