/* iOutlet Savings — green Apple-inspired */
#io-sav-app{
  max-width:720px;margin:48px auto;padding:0 24px;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,sans-serif;
  color:#1d1d1f;
}
.io-sav-loading{padding:80px 0;text-align:center;color:#86868b}
.io-sav-step{animation:svfade .35s ease}
@keyframes svfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.io-sav-eyebrow{
  display:inline-block;font-size:13px;letter-spacing:.04em;text-transform:uppercase;
  color:#1b8a3e;font-weight:600;margin-bottom:12px;
}
.io-sav-h1{font-size:40px;line-height:1.1;font-weight:600;letter-spacing:-.02em;margin:0 0 16px}
.io-sav-sub{font-size:18px;line-height:1.5;color:#424245;margin:0 0 28px;max-width:560px}

.io-sav-q{font-size:24px;font-weight:600;letter-spacing:-.01em;margin:0 0 20px;line-height:1.25}
.io-sav-options{display:grid;gap:10px;margin-bottom:24px}
.io-sav-opt{
  display:block;width:100%;text-align:left;padding:16px 20px;
  background:#fff;border:1.5px solid #d2d2d7;border-radius:14px;
  font-size:16px;color:#1d1d1f;cursor:pointer;
  transition:border-color .2s,background .2s;
}
.io-sav-opt:hover{border-color:#1b8a3e;background:#f3faf5}
.io-sav-opt.is-selected{border-color:#1b8a3e;background:#eaf6ee;color:#0e5f2c;font-weight:500}

.io-sav-qty{
  display:flex;align-items:center;justify-content:center;gap:18px;margin:24px 0 32px;
}
.io-sav-qty button{
  width:48px;height:48px;border:1.5px solid #d2d2d7;background:#fff;border-radius:50%;
  font-size:24px;color:#1d1d1f;cursor:pointer;transition:border-color .2s,background .2s;
}
.io-sav-qty button:hover{border-color:#1b8a3e;background:#f3faf5}
.io-sav-qty .val{font-size:32px;font-weight:600;min-width:48px;text-align:center}

.io-sav-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.io-sav-back{background:none;border:none;color:#1b8a3e;cursor:pointer;font-size:16px}
.io-sav-back:hover{text-decoration:underline}
.io-sav-cta{
  background:#1b8a3e;color:#fff;border:none;border-radius:980px;
  padding:14px 28px;font-size:17px;font-weight:500;cursor:pointer;
  transition:background .2s;text-decoration:none;display:inline-block;
}
.io-sav-cta:hover{background:#0e6b2d}
.io-sav-cta:disabled{background:#d2d2d7;color:#86868b;cursor:not-allowed}

.io-sav-gate{max-width:480px;margin:0 auto;text-align:left}
.io-sav-gate-icon{
  width:64px;height:64px;border-radius:50%;background:#eaf6ee;
  display:flex;align-items:center;justify-content:center;margin-bottom:20px;
}
.io-sav-gate-icon svg{width:28px;height:28px;color:#1b8a3e}
.io-sav-form{display:grid;gap:14px;margin-top:24px}
.io-sav-form input[type=email]{
  width:100%;padding:14px 16px;border:1.5px solid #d2d2d7;border-radius:12px;
  font-size:16px;font-family:inherit;color:#1d1d1f;background:#fff;
}
.io-sav-form input[type=email]:focus{outline:none;border-color:#1b8a3e}
.io-sav-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#424245;line-height:1.45}
.io-sav-consent input{margin-top:2px;flex-shrink:0}
.io-sav-msg{margin-top:14px;padding:12px 16px;border-radius:10px;font-size:14px}
.io-sav-msg.is-error{background:#fff0f0;color:#b71c1c}

.io-sav-result{padding:24px 0}
.io-sav-result-eyebrow{font-size:13px;color:#86868b;letter-spacing:.04em;text-transform:uppercase;text-align:center;margin-bottom:24px;font-weight:600}
.io-sav-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}
@media (max-width:560px){ .io-sav-stats{grid-template-columns:1fr} }
.io-sav-stat{
  background:linear-gradient(135deg,#1b8a3e,#0e5f2c);color:#fff;
  border-radius:18px;padding:28px 24px;text-align:center;
}
.io-sav-stat.is-money{background:linear-gradient(135deg,#0071e3,#005bbb)}
.io-sav-stat .label{font-size:13px;opacity:.85;letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}
.io-sav-stat .value{font-size:48px;font-weight:600;letter-spacing:-.02em;line-height:1;margin-bottom:6px}
.io-sav-stat .caption{font-size:13px;opacity:.85;line-height:1.4}

.io-sav-equiv{
  background:#f5f5f7;border-radius:18px;padding:24px;margin:0 0 32px;
}
.io-sav-equiv h3{font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#86868b;margin:0 0 14px;font-weight:600;text-align:center}
.io-sav-equiv ul{list-style:none;padding:0;margin:0}
.io-sav-equiv li{
  display:flex;align-items:center;gap:12px;padding:10px 0;color:#1d1d1f;font-size:16px;
  border-bottom:1px solid #e8e8ed;
}
.io-sav-equiv li:last-child{border-bottom:none}
.io-sav-equiv li svg{width:24px;height:24px;color:#1b8a3e;flex-shrink:0}

.io-sav-coupon-card{
  background:#0e5f2c;color:#fff;border-radius:18px;padding:20px;text-align:center;margin-bottom:24px;
}
.io-sav-coupon-card .label{font-size:12px;opacity:.85;letter-spacing:.05em;text-transform:uppercase}
.io-sav-coupon-card .code{font-size:28px;font-weight:600;letter-spacing:.04em;margin:6px 0 4px;font-family:"SF Mono",Menlo,monospace}
.io-sav-coupon-card .terms{font-size:12px;opacity:.85}

.io-sav-actions-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}
.io-sav-restart{background:none;border:none;color:#1b8a3e;cursor:pointer;font-size:14px;margin-top:18px;display:block;margin-left:auto;margin-right:auto}
.io-sav-restart:hover{text-decoration:underline}
.io-sav-method{font-size:12px;color:#86868b;text-align:center;margin-top:32px;line-height:1.5;max-width:560px;margin-left:auto;margin-right:auto}

@media (max-width:560px){
  #io-sav-app{margin:24px auto;padding:0 18px}
  .io-sav-h1{font-size:30px}
  .io-sav-stat .value{font-size:38px}
}
