/* Combo Offer Builder — colors, sizes and columns come from CSS variables
   that the plugin prints per combo from the settings page. */
.cob{--p1:#9333ea;--p2:#e11d6a;--green:#16a34a;--h1:#9333ea;--h2:#c026b3;--h3:#e11d6a;--ht:#ffffff;--pill-bg:#facc15;--pill-tx:#422006;--tag-bg:#fbbf24;--tag-tx:#111111;--card-bg:#ffffff;--b1:#22c55e;--b2:#16a34a;--bt:#ffffff;--hts:28px;--hds:15px;--br:14px;--bbr:12px;--ibr:10px;--cd:6;--ct:4;--cm:3;--gap:12px;--cr:12px;--asp:1/1;--w:1240px;
	display:block;width:100%;min-width:0;max-width:var(--w);margin-left:auto;margin-right:auto;padding:14px 12px 40px;color:#111827;box-sizing:border-box;line-height:1.5}
.cob *,.cob *::before,.cob *::after{box-sizing:border-box}
.cob button{font-family:inherit;letter-spacing:0;text-transform:none}
.cob-page .cob-archive-item{padding-bottom:0}

/* ---------- hero banner ---------- */
.cob .cob-hero{display:block;background:linear-gradient(90deg,var(--h1) 0%,var(--h2) 55%,var(--h3) 100%);color:var(--ht);border-radius:var(--br);padding:22px 22px 18px;box-shadow:0 8px 24px rgba(0,0,0,.14);text-decoration:none}
.cob .cob-hero-title{margin:0 0 8px;padding:0;color:var(--ht)!important;font-size:var(--hts);line-height:1.3;font-weight:800;letter-spacing:0;text-transform:none;border:0}
.cob .cob-hero-desc{font-size:var(--hds);line-height:1.6;color:var(--ht)!important;opacity:.95}
.cob .cob-hero-desc *{color:inherit!important;margin:0}
.cob .cob-hero-desc p{margin:0 0 6px}
.cob .cob-hero-line{height:1px;background:rgba(255,255,255,.3);margin:14px 0}
.cob .cob-hero-price{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.cob .cob-hero-main{font-size:22px;font-weight:800;color:var(--ht)!important}
.cob .cob-hero-old{font-size:15px;color:var(--ht)!important;opacity:.75}
.cob .cob-pill{display:inline-block;background:var(--pill-bg);color:var(--pill-tx)!important;font-weight:700;font-size:13px;line-height:1.4;padding:4px 12px;border-radius:999px;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.cob .cob-plus{font-weight:800;color:var(--ht)!important}
.cob .cob-hero-link:hover{filter:brightness(1.05)}
.cob-archive .cob-archive-item{margin-bottom:16px}

/* ---------- picker ---------- */
.cob .cob-pick{background:#fff;border-radius:var(--br);margin-top:16px;padding:16px 12px 14px;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.cob .cob-progress-row{display:flex;align-items:center;gap:10px;padding:0 4px 12px}
.cob .cob-thumbs{display:none;gap:4px;flex:0 0 auto}
.cob .cob-thumbs img{width:36px;height:36px;object-fit:cover;border-radius:8px;border:2px solid #e9d5ff;background:#f3f4f6;margin:0;max-width:none}
.cob .cob-track,.cob .cob-spacer{flex:1;height:7px;background:#e5e7eb;border-radius:99px;overflow:hidden}
.cob .cob-spacer{background:transparent}
.cob .cob-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--p1),var(--p2));border-radius:99px;transition:width .25s}
.cob .cob-count{flex:0 0 auto;background:#f3f4f6;color:#374151;font-size:12px;font-weight:700;padding:3px 10px;border-radius:99px}
.cob .cob-count.is-full{background:var(--green);color:#fff}
.cob .cob-h{margin:4px 4px 12px;padding:0;font-size:18px;line-height:1.5;font-weight:700;color:var(--p1)!important;letter-spacing:0;text-transform:none}

.cob .cob-grid{display:grid;grid-template-columns:repeat(var(--cm),1fr);gap:var(--gap)}
@media(min-width:700px){.cob .cob-grid{grid-template-columns:repeat(var(--ct),1fr)}}
@media(min-width:1000px){.cob .cob-grid{grid-template-columns:repeat(var(--cd),1fr)}}
.cob .cob-card{position:relative;display:block;width:100%;padding:0;margin:0;border:3px solid transparent;border-radius:var(--cr);background:var(--card-bg);cursor:pointer;overflow:hidden;transition:opacity .2s,filter .2s,border-color .15s,transform .15s;-webkit-tap-highlight-color:transparent;box-shadow:0 0 0 1px #e5e7eb inset;min-height:0;line-height:1;text-align:center;color:#111}
.cob .cob-card-img{display:block;position:relative;width:100%;aspect-ratio:var(--asp);background:#f3f4f6}
.cob .cob-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;margin:0;max-width:none;border-radius:calc(var(--cr) - 3px)}
.cob .cob-card:hover{transform:translateY(-2px)}
.cob .cob-tag{position:absolute;top:5px;left:5px;background:var(--tag-bg);color:var(--tag-tx);font-size:12px;font-weight:700;line-height:1;padding:3px 6px;border-radius:4px;z-index:2}
.cob .cob-pname{display:block;padding:8px 6px;font-size:13px;font-weight:600;line-height:1.35;color:#111827}
.cob .cob-check,.cob .cob-num,.cob .cob-sel{display:none;position:absolute;z-index:3}
.cob .cob-check{top:6px;left:6px;width:22px;height:22px;border-radius:50%;background:#22c55e;color:#fff;font-size:13px;font-weight:800;line-height:18px;text-align:center;border:2px solid #fff}
.cob .cob-num{top:6px;right:6px;min-width:22px;height:22px;border-radius:50%;background:var(--p1);color:#fff;font-size:12px;font-weight:800;line-height:18px;text-align:center;border:2px solid #fff;padding:0 3px}
.cob .cob-sel{right:6px;top:calc(100% - 30px);background:var(--green);color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;line-height:1.2}
.cob .cob-card.is-selected{border-color:var(--p1);transform:none}
.cob .cob-card.is-selected .cob-check,.cob .cob-card.is-selected .cob-num,.cob .cob-card.is-selected .cob-sel{display:block}
.cob .cob-card.is-dim{opacity:.5;filter:grayscale(.35)}

/* ---------- checkout ---------- */
.cob .cob-checkout{display:grid;grid-template-columns:1fr;gap:16px;background:#fff;border-radius:var(--br);margin-top:16px;padding:16px 12px;box-shadow:0 2px 12px rgba(0,0,0,.06);align-items:start}
@media(min-width:900px){.cob .cob-checkout{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);padding:22px 32px;gap:26px}.cob .cob-checkout.cob-no-summary{grid-template-columns:minmax(0,720px);justify-content:center}}
.cob .cob-form{background:#fff;border-radius:var(--br);padding:18px;box-shadow:0 2px 14px rgba(0,0,0,.08);margin:0}
.cob .cob-notice{border:1px solid #f87171;background:#fff5f5;border-radius:10px;padding:14px;text-align:center;font-weight:700;font-size:16px;line-height:1.5;margin-bottom:14px;color:#111827}
.cob .cob-notice span{color:#dc2626}
.cob .cob-label{display:block;font-size:14px;font-weight:600;color:#374151!important;margin:12px 0 6px;padding:0;text-transform:none;letter-spacing:0}
.cob .cob-input{display:block;width:100%;max-width:none;border:1.5px solid #d1d5db;background:#fff;border-radius:var(--ibr);padding:13px 14px;font:inherit;font-size:16px;line-height:1.4;color:#111827;outline:none;transition:border-color .15s,box-shadow .15s;box-shadow:none;height:auto;min-height:0;margin:0}
.cob .cob-input::placeholder{color:#9ca3af}
.cob .cob-input:focus{border-color:var(--p1);box-shadow:0 0 0 3px rgba(147,51,234,.15)}
.cob .cob-textarea{resize:vertical;height:96px;min-height:96px}
.cob .cob-hp{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;width:0!important;padding:0!important;border:0!important}

.cob .cob-size-head{display:flex;justify-content:space-between;align-items:center;margin-top:16px}
.cob .cob-label-size{margin:0}
.cob .cob-chart-link{font-size:13px;color:var(--p1)!important;text-decoration:underline}
.cob .cob-sizes{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.cob .cob-size{min-width:48px;border:1.5px solid #d1d5db;background:#fff;color:#111827;border-radius:10px;padding:10px 16px;font-size:15px;font-weight:600;cursor:pointer;line-height:1.2;transition:all .15s;text-transform:none;height:auto;box-shadow:none}
.cob .cob-size small{display:block;font-size:10px;font-weight:600;color:#6b7280;margin-top:2px}
.cob .cob-size:hover{border-color:var(--p1)}
.cob .cob-size.is-active{border-color:var(--p1);background:#f5ebff;color:var(--p1);box-shadow:0 0 0 2px rgba(147,51,234,.2)}

.cob .cob-error{display:none;margin-top:14px;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:14px;font-weight:600}

.cob .cob-submit,.cob .cob-go{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin:18px 0 0;border:0;border-radius:var(--bbr);padding:16px;background:linear-gradient(90deg,var(--b1),var(--b2));color:var(--bt)!important;font-size:18px;font-weight:800;line-height:1.3;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.2);transition:transform .15s,opacity .15s;text-transform:none;height:auto}
.cob .cob-submit:hover:not(:disabled){transform:translateY(-1px)}
.cob .cob-submit:disabled{opacity:.7;cursor:wait}
.cob .cob-submit-price{background:rgba(255,255,255,.22);padding:3px 12px;border-radius:999px;font-size:16px}

/* ---------- summary ---------- */
.cob .cob-summary{background:#fff;border-radius:var(--br);padding:16px;box-shadow:0 2px 14px rgba(0,0,0,.08)}
.cob .cob-sum-title{margin:0 0 12px;padding:0;font-size:19px;font-weight:800;color:#111827!important;letter-spacing:0;text-transform:none}
.cob .cob-sum-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid #eee}
.cob .cob-sum-name{font-size:14px;line-height:1.5;color:#374151!important;font-weight:500;display:block;visibility:visible;opacity:1}
.cob .cob-sum-amt{white-space:nowrap;font-size:14px;color:#111827!important;font-weight:700;display:block;visibility:visible;opacity:1}
.cob .cob-sum-amt.is-free{color:var(--green)!important}
.cob .cob-sum-total{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 0 10px}
.cob .cob-sum-total>.cob-sum-name{font-size:16px;font-weight:800;color:#111827!important}
.cob .cob-sum-total-r{text-align:right}
.cob .cob-total{display:block;font-size:24px;color:var(--p2)!important;font-weight:800;line-height:1.2}
.cob .cob-cod{display:inline-block;margin-top:8px;border:1px solid #86efac;background:#f0fdf4;color:#15803d;border-radius:999px;padding:5px 14px;font-size:14px;font-weight:700}
.cob .cob-terms{display:flex;align-items:center;gap:8px;font-size:12px;color:#374151;padding:12px 0;border-top:1px solid #eee;cursor:pointer;margin:0}
.cob .cob-terms-inline{border-top:0;padding:14px 0 0}
.cob .cob-terms input{width:16px;height:16px;margin:0;accent-color:#2563eb}
.cob .cob-secure{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 12px;font-size:12px;color:#166534;display:flex;flex-direction:column;gap:2px}
.cob .cob-secure b{font-size:13px}

/* ---------- modal & toast ---------- */
body.cob-lock{overflow:hidden}
.cob-overlay{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:14px}
.cob-modal{position:relative;background:#fff;border-radius:14px;max-width:560px;width:100%;max-height:90vh;overflow:auto;padding:14px}
.cob-modal img{display:block;width:100%;height:auto;border-radius:8px}
.cob-modal-x{position:absolute;top:6px;right:8px;width:34px;height:34px;border:0;border-radius:50%;background:#f3f4f6;font-size:22px;line-height:1;cursor:pointer;z-index:2;padding:0;color:#111}
.cob-toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:#111827;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;z-index:100000;opacity:0;transition:all .25s;max-width:90vw;text-align:center}
.cob-toast.show{opacity:1;transform:translate(-50%,0)}
.cob-empty{text-align:center;padding:30px;color:#6b7280}

/* ---------- mode "clean": theme template, but no sidebar / meta / share / comments, full width ---------- */
body.cob-clean .sidebar-container,
body.cob-clean .wd-sidebar,
body.cob-clean aside.sidebar,
body.cob-clean #secondary,
body.cob-clean .widget-area,
body.cob-clean .wd-post-header,
body.cob-clean .wd-post-meta,
body.cob-clean .wd-entry-meta,
body.cob-clean .entry-meta,
body.cob-clean .post-meta,
body.cob-clean .meta-author,
body.cob-clean .meta-post-date,
body.cob-clean .entry-header,
body.cob-clean .wd-single-footer,
body.cob-clean .wd-single-author,
body.cob-clean .wd-single-nav,
body.cob-clean .post-navigation,
body.cob-clean .related-posts,
body.cob-clean .wd-related-posts,
body.cob-clean #comments,
body.cob-clean .comments-area,
body.cob-clean article .wd-social-icons,
body.cob-clean article .post-share,
body.cob-clean article .entry-footer,
body.cob-clean .wd-sticky-social{display:none!important}
body.cob-clean .site-content,
body.cob-clean .wd-content-area,
body.cob-clean .content-area,
body.cob-clean #primary{flex:0 0 100%!important;width:100%!important;max-width:100%!important;grid-column:1/-1!important;--wd-col-lg:12;--wd-col-md:12;--wd-col-sm:12}
body.cob-clean .site-content.col-lg-9,
body.cob-clean .site-content.col-md-9{flex:0 0 100%!important;max-width:100%!important}

/* ---------- mode "own": plugin template inside the theme's header/footer ---------- */
.cob-own-page{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:0 0 100%!important;grid-column:1/-1!important;float:none!important;margin:0 auto!important;padding:10px 12px 30px;box-sizing:border-box}

/* ---------- mode "blank": stand-alone landing page ---------- */
body.cob-blank{margin:0;background:#f6f6f9}
.cob-blank-bar{background:#fff;border-bottom:1px solid #eee;padding:10px 16px;font-size:14px}
.cob-blank-bar a{color:#374151;text-decoration:none;font-weight:600}
.cob-blank-page{display:block;width:100%;padding:10px 0 30px}

@media(max-width:600px){
	.cob .cob-hero{padding:16px 14px 14px}
	.cob .cob-hero-title{font-size:calc(var(--hts) * .75)}
	.cob .cob-hero-main{font-size:18px}
	.cob .cob-h{font-size:16px}
	.cob .cob-thumbs img{width:30px;height:30px}
}
