/* SaaS Stack Finder — self-contained app styles (.ssaf- scoped) */
.ssaf-app{--blue:#146BFF;--navy:#0B132B;--gray:#E6EBF3;--muted:#5A6B85;--muted2:#8A98B2;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:520px;margin:0 auto;background:#fff;border:1px solid var(--gray);border-radius:24px;box-shadow:0 30px 70px rgba(11,19,43,.14);overflow:hidden;color:var(--navy);}
.ssaf-app{padding:0;}
.ssaf-app>*{padding-left:26px;padding-right:26px;}
.ssaf-embed-title{text-align:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:28px;margin:0 0 18px;color:var(--navy);}
.ssaf-loading,.ssaf-empty{padding:40px 26px;text-align:center;color:var(--muted);}
.ssaf-empty strong{color:var(--navy);}

.ssaf-app::before{content:"";display:block;height:5px;background:linear-gradient(90deg,#146BFF,#5B9BFF);margin:0;padding:0;}
.ssaf-head{display:flex;align-items:center;justify-content:space-between;padding-top:22px;margin-bottom:16px;}
.ssaf-brand{display:flex;align-items:center;gap:10px;}
.ssaf-ic{width:34px;height:34px;border-radius:10px;background:linear-gradient(150deg,#146BFF,#0B132B);display:flex;align-items:center;justify-content:center;}
.ssaf-ttl{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15px;}
.ssaf-sub{font-size:12px;color:var(--muted2);}
.ssaf-step{font-size:12px;font-weight:700;color:var(--blue);background:#EEF4FF;padding:6px 11px;border-radius:999px;white-space:nowrap;}
.ssaf-prog{height:6px;background:#EDF1F8;border-radius:999px;overflow:hidden;margin-bottom:22px;}
.ssaf-prog i{display:block;height:100%;background:linear-gradient(90deg,#146BFF,#5B9BFF);border-radius:999px;transition:width .35s ease;}
.ssaf-q{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:20px;line-height:1.3;margin:0 0 4px;}
.ssaf-hint{font-size:13px;color:var(--muted2);margin:0 0 16px;}
.ssaf-opts{display:flex;flex-direction:column;gap:9px;max-height:300px;overflow-y:auto;}
.ssaf-opt{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-radius:12px;cursor:pointer;background:#fff;border:1.5px solid var(--gray);transition:all .15s;font-family:inherit;}
.ssaf-opt:hover{border-color:#CFE0FF;}
.ssaf-opt.is-sel{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,107,255,.12);}
.ssaf-optlab{display:flex;align-items:center;gap:12px;}
.ssaf-emo{font-size:18px;width:24px;text-align:center;}
.ssaf-optxt{font-size:14.5px;font-weight:600;color:#1B2740;text-align:left;}
.ssaf-ck{width:22px;height:22px;border-radius:7px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#fff;border:1.5px solid #DDE4F0;}
.ssaf-ck svg{width:12px;height:12px;opacity:0;}
.ssaf-opt.is-sel .ssaf-ck{background:var(--blue);border-color:var(--blue);}
.ssaf-opt.is-sel .ssaf-ck svg{opacity:1;}
.ssaf-nav{display:flex;gap:10px;margin-top:20px;padding-bottom:26px;}
.ssaf-back{padding:13px 18px;border-radius:11px;border:1px solid var(--gray);background:#fff;color:#3A4861;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;}
.ssaf-back:hover{background:#F4F7FC;}
.ssaf-next{flex:1;padding:13px;border-radius:11px;border:none;font-weight:700;font-size:14.5px;cursor:pointer;background:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(20,107,255,.3);font-family:inherit;}
.ssaf-next:disabled{background:#EDF1F8;color:#A6B2C8;cursor:not-allowed;box-shadow:none;}

/* result */
.ssaf-win{display:flex;align-items:center;gap:10px;background:#F2F8F3;border:1px solid #CDEBD6;border-radius:13px;padding:12px 14px;margin-bottom:16px;font-size:13.5px;font-weight:600;color:#1C7A3E;}
.ssaf-rhead{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px;gap:10px;}
.ssaf-k{font-size:12px;color:var(--muted2);font-weight:600;text-transform:uppercase;letter-spacing:.04em;}
.ssaf-rttl{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:21px;letter-spacing:-0.02em;}
.ssaf-tools{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;}
.ssaf-tool{display:flex;align-items:center;gap:12px;border:1px solid #EDF1F8;border-radius:12px;padding:11px 13px;}
.ssaf-chip{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;border-radius:10px;flex-shrink:0;}
.ssaf-chip--md{width:38px;height:38px;font-size:16px;}
.ssaf-tool-main{flex:1;min-width:0;}
.ssaf-cat{font-size:11px;color:var(--muted2);font-weight:600;text-transform:uppercase;letter-spacing:.04em;}
.ssaf-tool-name{font-size:14.5px;font-weight:700;color:#1B2740;text-decoration:none;}
.ssaf-tool-name:hover{color:var(--blue);text-decoration:underline;}
.ssaf-badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;margin-left:4px;vertical-align:middle;}
.ssaf-badge--ok{color:#1C7A3E;background:#E7F7EE;}
.ssaf-badge--zap{color:#B45309;background:#FEF3E2;}
.ssaf-tool-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
.ssaf-price{font-size:13.5px;font-weight:700;color:var(--navy);white-space:nowrap;}
.ssaf-visit{font-size:12px;font-weight:700;color:var(--blue);text-decoration:none;white-space:nowrap;}
.ssaf-visit:hover{text-decoration:underline;}
.ssaf-missed{font-size:12.5px;color:var(--muted);background:#F6F9FD;border-radius:10px;padding:10px 12px;margin:12px 0 0;}

.ssaf-budget{margin-top:14px;}
.ssaf-budget-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;margin-bottom:6px;}
.ssaf-under{color:#1C7A3E;font-size:12px;}
.ssaf-budget-bar{height:10px;background:#EDF1F8;border-radius:999px;overflow:hidden;}
.ssaf-budget-bar i{display:block;height:100%;background:linear-gradient(90deg,#3CD68A,#09A859);border-radius:999px;transition:width .4s ease;}
.ssaf-total{display:flex;justify-content:space-between;align-items:center;background:var(--navy);border-radius:13px;padding:14px 16px;margin-top:14px;color:#fff;}
.ssaf-total-val{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:20px;}
.ssaf-total-val small{font-size:13px;color:#9DB0D4;font-weight:600;}

.ssaf-save{margin-top:16px;}
.ssaf-saverow{display:flex;gap:8px;margin-bottom:10px;}
.ssaf-saverow input{flex:1;border:1px solid var(--gray);border-radius:11px;padding:12px 14px;font-size:14px;font-family:inherit;outline:none;}
.ssaf-emailbtn{background:var(--navy);color:#fff;border:none;border-radius:11px;padding:12px 16px;font-weight:700;font-size:14px;cursor:pointer;font-family:inherit;white-space:nowrap;}
.ssaf-sharebtn{width:100%;background:var(--blue);color:#fff;border:none;border-radius:11px;padding:13px;font-weight:700;font-size:14px;cursor:pointer;font-family:inherit;box-shadow:0 8px 18px rgba(20,107,255,.28);}
.ssaf-shared-lab{font-size:12px;font-weight:700;color:var(--muted2);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
.ssaf-shared-row{display:flex;gap:8px;}
.ssaf-shared-row input{flex:1;border:1px solid var(--gray);border-radius:11px;padding:12px 14px;font-size:13px;font-family:inherit;background:#F6F9FD;}
.ssaf-copy{background:var(--blue);color:#fff;border:none;border-radius:11px;padding:12px 16px;font-weight:700;font-size:13px;cursor:pointer;font-family:inherit;}
.ssaf-emailed{font-size:12.5px;color:#1C7A3E;margin-top:8px;font-weight:600;}
.ssaf-mini{font-size:13px;color:var(--muted);padding:6px 0;}
.ssaf-disc{font-size:11px;color:var(--muted2);line-height:1.5;margin-top:14px;}
.ssaf-ractions{padding-top:14px;padding-bottom:26px;}
.ssaf-ractions .ssaf-back{width:100%;}
