/* Botox Calculator — scoped styles with high specificity to survive theme resets */
div.botox-calc,div.botox-calc *,div.botox-calc *::before,div.botox-calc *::after{margin:0;padding:0;box-sizing:border-box;border:none;float:none;letter-spacing:normal;text-transform:none;text-indent:0;text-shadow:none;list-style:none}
div.botox-calc{
  --bg:#faf8f5;--bg-card:#ffffff;--bg-alt:#f5f0eb;
  --text:#2c2420;--text-muted:#7a6e64;--text-light:#a89e94;
  --accent:#c8a98a;--accent-hover:#b8956e;--accent-light:rgba(200,169,138,0.15);
  --border:#e8e0d8;--radius:12px;--shadow:0 2px 12px rgba(44,36,32,0.06);
  --font:'Segoe UI','Helvetica Neue',Arial,sans-serif;
  font-size:16px !important;font-family:var(--font) !important;background:var(--bg);color:var(--text);line-height:1.6 !important;-webkit-font-smoothing:antialiased;
  max-width:100%;width:100%;
}
div.botox-calc h2{font-size:1.75rem !important;font-weight:600 !important;color:var(--text) !important;margin:0 0 8px !important;padding:0 !important;line-height:1.3 !important;letter-spacing:normal !important;text-transform:none !important}
div.botox-calc p{margin:0 !important;padding:0 !important}
div.botox-calc a{text-decoration:none}
div.botox-calc div{max-width:none}
div.botox-calc input[type=checkbox]{appearance:auto;-webkit-appearance:auto}
div.botox-calc input[type=range]{appearance:auto;-webkit-appearance:auto}

div.botox-calc .calc-widget{max-width:960px;margin:0 auto;padding:24px 16px}
div.botox-calc .calc-header{text-align:center;margin-bottom:36px}
div.botox-calc .calc-header h2{font-size:1.75rem !important;font-weight:600 !important;color:var(--text) !important;margin-bottom:8px !important}
div.botox-calc .calc-header p{color:var(--text-muted);font-size:0.95rem !important}

/* Cards */
div.botox-calc .card{background:var(--bg-card);border:1px solid var(--border) !important;border-radius:var(--radius);padding:24px;margin-bottom:20px;box-shadow:var(--shadow)}
div.botox-calc .card-title{font-size:1rem !important;font-weight:600 !important;margin-bottom:16px;color:var(--text);display:flex;align-items:center;gap:8px}
div.botox-calc .card-title .num{width:28px;height:28px;background:var(--accent);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:0.8rem !important;font-weight:700 !important;flex-shrink:0}

/* Top row */
div.botox-calc .top-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:700px){div.botox-calc .top-row{grid-template-columns:1fr}}

/* Product tabs */
div.botox-calc .product-tabs{display:flex;gap:10px;flex-wrap:wrap}
div.botox-calc .product-tab{flex:1;min-width:0;padding:14px 10px;border:2px solid var(--border) !important;border-radius:var(--radius);cursor:pointer;text-align:center;transition:all .2s;background:var(--bg-card)}
div.botox-calc .product-tab:hover{border-color:var(--accent) !important}
div.botox-calc .product-tab.active{border-color:var(--accent) !important;background:var(--accent-light)}
div.botox-calc .product-tab .name{font-weight:600 !important;font-size:0.9rem !important;margin-bottom:2px}
div.botox-calc .product-tab .price{color:var(--text-muted);font-size:0.75rem !important}

/* Age selector */
div.botox-calc .age-options{display:flex;gap:10px;flex-wrap:wrap}
div.botox-calc .age-opt{flex:1;min-width:0;padding:12px 8px;border:2px solid var(--border) !important;border-radius:var(--radius);cursor:pointer;text-align:center;transition:all .2s;background:var(--bg-card)}
div.botox-calc .age-opt:hover{border-color:var(--accent) !important}
div.botox-calc .age-opt.active{border-color:var(--accent) !important;background:var(--accent-light)}
div.botox-calc .age-opt .label{font-weight:600 !important;font-size:0.9rem !important}
div.botox-calc .age-opt .desc{color:var(--text-muted);font-size:0.7rem !important;margin-top:2px}

/* Layout: SVG + zones */
div.botox-calc .zones-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
div.botox-calc .face-svg-wrap{display:flex;justify-content:center;padding:16px;position:sticky;top:16px}
div.botox-calc .face-svg-wrap svg{width:100%;max-width:340px;height:auto}
@media(max-width:700px){div.botox-calc .zones-layout{grid-template-columns:1fr}div.botox-calc .face-svg-wrap{position:static}}
div.botox-calc .zones-layout--no-diagram{grid-template-columns:1fr}
div.botox-calc .zone-group{cursor:pointer;touch-action:manipulation}
div.botox-calc .zone-group path{fill:#EAEAEA;transition:fill .2s}
@media(hover:hover){div.botox-calc .zone-group:hover path{fill:#FF0000}}
div.botox-calc .zone-group.active path{fill:#A54444}
div.botox-calc .zone-label{fill:#2c2420;font-size:26px;opacity:0;transition:opacity .2s;pointer-events:none;text-anchor:middle;font-weight:600;paint-order:stroke;stroke:#fff;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}
div.botox-calc .zone-label-sm{font-size:22px}
@media(hover:hover){div.botox-calc .zone-group:hover .zone-label{opacity:1}}
div.botox-calc .zone-group.active .zone-label{opacity:1}

/* Zone checkboxes */
div.botox-calc .zones-list{display:flex;flex-direction:column;gap:8px}
div.botox-calc .zone-item{border:1px solid var(--border) !important;border-radius:8px;padding:10px 12px;transition:all .2s;background:var(--bg-card)}
div.botox-calc .zone-item.active{border-color:var(--accent) !important;background:var(--accent-light)}
div.botox-calc .zone-item-header{display:flex;align-items:center;gap:8px;cursor:pointer}
div.botox-calc .zone-item-header input[type=checkbox]{accent-color:var(--accent);width:16px !important;height:16px !important;cursor:pointer;margin:0 !important}
div.botox-calc .zone-item-header .zone-name{font-size:0.85rem !important;font-weight:500 !important;flex:1}
div.botox-calc .zone-item-header .zone-units{font-size:0.72rem !important;color:var(--text-muted);white-space:nowrap;text-align:right;min-width:70px}
div.botox-calc .zone-disabled{opacity:0.45;pointer-events:none}
div.botox-calc .zone-disabled .zone-item-header{cursor:not-allowed}
div.botox-calc .zone-range-note{font-size:0.72rem !important;color:var(--text-muted);padding:4px 0 0 24px;font-style:italic}
div.botox-calc .breakdown-note{font-size:0.72rem !important;color:var(--text-muted);padding:2px 0 4px 12px;font-style:italic}

/* Recommendations */
div.botox-calc .recs{margin-bottom:20px}
div.botox-calc .rec-item{display:flex;gap:10px;padding:12px 14px;background:#fef9f0;border:1px solid #f0e4d0 !important;border-radius:8px;margin-bottom:8px;font-size:0.85rem !important;color:#6b5a40;line-height:1.5 !important;align-items:flex-start}
div.botox-calc .rec-item .rec-icon{font-size:1.1rem !important;flex-shrink:0;margin-top:1px}
div.botox-calc .rec-item .rec-text{flex:1}
div.botox-calc .rec-item .rec-add-btn{flex-shrink:0;padding:6px 14px;background:var(--accent);color:#fff !important;border:none !important;border-radius:6px;font-size:0.78rem !important;cursor:pointer;transition:background .2s;white-space:nowrap;align-self:center}
div.botox-calc .rec-item .rec-add-btn:hover{background:var(--accent-hover)}
div.botox-calc .rec-item .rec-add-btn.added{background:var(--bg-alt);color:var(--text-muted) !important;cursor:default;border:1px solid var(--border) !important}
div.botox-calc .recs-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:700px){div.botox-calc .recs-grid{grid-template-columns:1fr}div.botox-calc .rec-item{flex-wrap:wrap}div.botox-calc .rec-item .rec-add-btn{width:100%;text-align:center;margin-top:4px}}

/* Results */
div.botox-calc .results-card{background:linear-gradient(135deg,#faf8f5 0%,#f5f0eb 100%);border:2px solid var(--accent) !important;border-radius:var(--radius);padding:28px;text-align:center}
div.botox-calc .results-card .total-label{font-size:0.9rem !important;color:var(--text-muted);margin-bottom:8px}
div.botox-calc .results-card .total-avg{font-size:2.8rem !important;font-weight:700 !important;color:var(--text);line-height:1.1 !important}
div.botox-calc .results-card .total-range{font-size:0.95rem !important;color:var(--text-muted);margin-top:4px}
div.botox-calc .results-card .total-units{font-size:0.85rem !important;color:var(--text-muted);margin-top:12px;line-height:1.4 !important}
div.botox-calc .results-card .no-zones{color:var(--text-light);font-size:0.95rem !important;padding:20px 0}

/* Breakdown */
div.botox-calc .breakdown{text-align:left;margin-top:20px;border-top:1px solid var(--border) !important;padding-top:16px}
div.botox-calc .breakdown-title{font-size:0.8rem !important;font-weight:600 !important;text-transform:uppercase;letter-spacing:0.05em !important;color:var(--text-muted);margin-bottom:10px}
div.botox-calc .breakdown-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:0.85rem !important;border-bottom:1px solid rgba(0,0,0,0.04) !important}
div.botox-calc .breakdown-row .zone-n{color:var(--text);flex:1;min-width:0}
div.botox-calc .breakdown-row .zone-units-detail{font-size:0.75rem !important;color:var(--text-muted);padding:0 8px;white-space:nowrap;flex-shrink:0;text-align:center}
div.botox-calc .breakdown-row .zone-cost{font-weight:600 !important;color:var(--text);white-space:nowrap;flex-shrink:0;margin-left:8px;text-align:right}

/* CTA */
div.botox-calc .cta-btn{display:inline-block !important;width:100%;padding:16px 32px !important;background:var(--accent) !important;color:#fff !important;border:none !important;border-radius:var(--radius);font-size:1rem !important;font-weight:600 !important;cursor:pointer;transition:background .2s;text-decoration:none !important;text-align:center;margin-top:16px;letter-spacing:0.02em}
div.botox-calc .cta-btn:hover{background:var(--accent-hover) !important;color:#fff !important}

/* Disclaimer */
div.botox-calc .disclaimer{text-align:center;font-size:0.75rem !important;color:var(--text-light);margin-top:24px;line-height:1.5 !important;padding:0 16px}

/* Responsive */
@media(max-width:480px){
  div.botox-calc .calc-widget{padding:16px 12px}
  div.botox-calc .card{padding:16px}
  div.botox-calc .product-tab{padding:10px 6px}
  div.botox-calc .product-tab .name{font-size:0.8rem !important}
  div.botox-calc .product-tab .price{font-size:0.68rem !important}
  div.botox-calc .age-opt{padding:10px 6px}
  div.botox-calc .results-card{padding:20px 16px}
  div.botox-calc .results-card .total-avg{font-size:2rem !important}
  div.botox-calc .breakdown-row{font-size:0.8rem !important}
}
