/* CTB automated checkout — v45. Overlay drawer; yard cards replace launch pill. */
/* Sheet open: tuck yard cards + mobile mailpill so they don't sit on the drawer */
.ctb-co-open .yard{opacity:0;visibility:hidden;pointer-events:none;-webkit-transition:opacity .2s;transition:opacity .2s}
html.ctb-co-open,html.ctb-co-open body{overflow:hidden;height:100%}
@media (max-width:640px){
  .ctb-co-open .mailpill{opacity:0;pointer-events:none}
}


.ctb-co-backdrop{position:fixed;inset:0;z-index:40;background:rgba(20,12,40,.45);
  opacity:0;pointer-events:none;transition:opacity .28s ease}
.ctb-co-open .ctb-co-backdrop{opacity:1;pointer-events:auto}

.ctb-co-sheet{position:fixed;left:50%;bottom:0;z-index:41;width:min(920px,100vw);
  max-height:min(88vh,820px);-webkit-transform:translate(-50%,105%);transform:translate(-50%,105%);
  transition:-webkit-transform .32s cubic-bezier(.2,.8,.2,1),transform .32s cubic-bezier(.2,.8,.2,1);
  background:#fff;border-radius:18px 18px 0 0;
  box-shadow:0 -8px 40px rgba(63,42,156,.28);display:flex;flex-direction:column;
  font:400 15px/1.45 "Trebuchet MS",system-ui,sans-serif;color:#1a1228}
.ctb-co-open .ctb-co-sheet{-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}

.ctb-co-banner{flex:none;background:#fff3cd;color:#5c4800;font:600 12px/1.3 "Trebuchet MS",system-ui,sans-serif;
  padding:8px 16px;text-align:center;border-bottom:1px solid #f0e0a0;letter-spacing:.2px}
.ctb-co-banner strong{color:#9a1b1b}

.ctb-co-head{flex:none;display:flex;align-items:center;gap:10px;padding:12px 16px 8px;
  border-bottom:1px solid #eee8f8}
.ctb-co-head h2{margin:0;flex:1;font:700 clamp(16px,2.2vw,20px)/1.2 "Trebuchet MS",system-ui,sans-serif;color:#3f2a9c}
.ctb-co-close{width:36px;height:36px;border:0;border-radius:50%;background:#f3efff;color:#3f2a9c;
  font:700 18px/1 system-ui,sans-serif;cursor:pointer}
.ctb-co-close:hover{background:#e6dcff}

.ctb-co-steps{flex:none;display:flex;gap:4px;padding:8px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.ctb-co-step-pill{flex:none;padding:4px 10px;border-radius:999px;font:600 11px/1.2 "Trebuchet MS",system-ui,sans-serif;
  background:#f3efff;color:#6b5a9e;white-space:nowrap}
.ctb-co-step-pill.is-on{background:#3f2a9c;color:#fff}
.ctb-co-step-pill.is-done{background:#e8f5e9;color:#2e7d32}

.ctb-co-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:12px 16px 20px}
.ctb-co-foot{flex:none;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;
  padding:10px 16px 14px;border-top:1px solid #eee8f8;background:#faf8ff}

.ctb-co-btn{appearance:none;border:0;border-radius:999px;padding:10px 18px;cursor:pointer;
  font:700 14px/1.1 "Trebuchet MS",system-ui,sans-serif;transition:transform .15s,opacity .15s}
.ctb-co-btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}
.ctb-co-btn-primary{background:#d32f2f;color:#fff;box-shadow:0 2px 0 #9a1b1b}
.ctb-co-btn-primary:hover:not(:disabled){transform:translateY(-1px)}
.ctb-co-btn-ghost{background:#f3efff;color:#3f2a9c}
.ctb-co-btn-ghost:hover:not(:disabled){background:#e6dcff}
.ctb-co-btn-outline{background:#fff;color:#3f2a9c;border:2px solid #3f2a9c}

.ctb-co-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.ctb-co-card{border:2px solid #e6dcff;border-radius:14px;padding:14px;background:#fff;
  cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s;position:relative;
  min-width:0;overflow:hidden;box-sizing:border-box}
.ctb-co-card:hover{border-color:#b8a4f0;box-shadow:0 4px 14px rgba(63,42,156,.12)}
.ctb-co-card.is-selected{border-color:#d32f2f;box-shadow:0 0 0 2px rgba(211,47,47,.25)}
.ctb-co-card h3{margin:0 0 4px;font:700 16px/1.2 "Trebuchet MS",system-ui,sans-serif;color:#1a1228}
.ctb-co-card .price{font:700 14px/1.2 "Trebuchet MS",system-ui,sans-serif;color:#d32f2f;margin:0 0 6px}
.ctb-co-card .hook{font:600 12px/1.35 "Trebuchet MS",system-ui,sans-serif;color:#2e7d32;margin:0 0 8px}
.ctb-co-card p{margin:0;font-size:13px;color:#4a4060}
.ctb-co-card .demo-actions{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap;min-width:0;width:100%;max-width:100%}
.ctb-co-card .demo-actions .ctb-co-btn{
  max-width:100%;box-sizing:border-box;white-space:normal;text-align:center;justify-content:center;
  line-height:1.25;padding:9px 14px;overflow-wrap:anywhere;word-break:break-word}
.ctb-co-card.ctb-co-custom{border-style:dashed;opacity:.95;cursor:default}
.ctb-co-card.ctb-co-custom.is-selected{border-color:#3f2a9c}
.ctb-co-card.ctb-co-custom .demo-actions .ctb-co-btn{font-size:12px;padding:8px 12px;align-self:stretch}

.ctb-co-field{margin:0 0 12px}
.ctb-co-field label{display:block;font:600 12px/1.2 "Trebuchet MS",system-ui,sans-serif;color:#3f2a9c;margin:0 0 4px}
.ctb-co-field input,.ctb-co-field select,.ctb-co-field textarea{
  width:100%;box-sizing:border-box;padding:10px 12px;border:2px solid #e6dcff;border-radius:10px;
  font:400 14px/1.3 "Trebuchet MS",system-ui,sans-serif;background:#fff;color:#1a1228}
.ctb-co-field input:focus,.ctb-co-field select:focus,.ctb-co-field textarea:focus{
  outline:none;border-color:#3f2a9c;box-shadow:0 0 0 3px rgba(63,42,156,.15)}
.ctb-co-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.ctb-co-row{grid-template-columns:1fr}}

.ctb-co-domain-row{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch}
.ctb-co-domain-row input{flex:1;min-width:160px}
.ctb-co-domain-results{margin-top:10px}
.ctb-co-domain-item{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:10px 12px;border:1px solid #eee8f8;border-radius:10px;margin-bottom:6px}
.ctb-co-domain-item .avail{color:#2e7d32;font-weight:700;font-size:12px}
.ctb-co-domain-item .taken{color:#9a1b1b;font-weight:700;font-size:12px}
.ctb-co-muted{color:#6b5a9e;font-size:12px;margin:4px 0 0}

.ctb-co-cart{border:2px solid #eee8f8;border-radius:12px;overflow:hidden;margin:8px 0 12px}
.ctb-co-cart-row{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;
  border-bottom:1px solid #f3efff;font-size:14px}
.ctb-co-cart-row:last-child{border-bottom:0;background:#faf8ff;font-weight:700}
.ctb-co-cart-row .lbl{color:#1a1228}.ctb-co-cart-row .amt{color:#d32f2f;white-space:nowrap}

.ctb-co-panel{border:2px dashed #e6dcff;border-radius:12px;padding:14px;background:#faf8ff;margin:8px 0}
.ctb-co-panel h3{margin:0 0 6px;font:700 15px/1.2 "Trebuchet MS",system-ui,sans-serif;color:#3f2a9c}
.ctb-co-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;
  font:700 11px/1 "Trebuchet MS",system-ui,sans-serif;background:#fff3cd;color:#5c4800}
.ctb-co-status.ok{background:#e8f5e9;color:#2e7d32}
.ctb-co-status.lock{background:#ffebee;color:#c62828}

.ctb-co-preview{position:fixed;inset:0;z-index:50;background:rgba(20,12,40,.55);
  display:none;align-items:center;justify-content:center;padding:16px}
.ctb-co-preview.is-on{display:flex}
.ctb-co-preview-box{width:min(960px,100%);height:min(80vh,720px);background:#fff;border-radius:14px;
  overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.ctb-co-preview-bar{flex:none;display:flex;align-items:center;gap:8px;padding:8px 12px;background:#3f2a9c;color:#fff}
.ctb-co-preview-bar span{flex:1;font:600 13px/1.2 "Trebuchet MS",system-ui,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ctb-co-preview iframe{flex:1;border:0;width:100%;background:#fff}

.ctb-co-txf{display:inline-block;height:1em;width:auto;aspect-ratio:3/2;vertical-align:-0.15em;margin:0 .35em;
  border-radius:1px;box-shadow:0 0 2px rgba(63,42,156,.3)}

.ctb-co-success{text-align:center;padding:20px 8px}
.ctb-co-success h3{margin:0 0 8px;color:#2e7d32;font:700 20px/1.2 "Trebuchet MS",system-ui,sans-serif}
