.taf-wrap{
  --red:#E2001A; --red-d:#b00014; --ink:#151a23; --ink2:#1f2733;
  --line:#e9ecf1; --soft:#f5f6f9; --muted:#6b7480;
  max-width:1180px; margin:0 auto; padding:8px 16px 40px;
  font-family:'Manrope',system-ui,sans-serif; color:var(--ink); line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
.taf-wrap *{box-sizing:border-box}
.taf-kicker{display:inline-block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;color:var(--red);margin-bottom:10px}

/* HERO */
.taf-hero{position:relative;overflow:hidden;border-radius:24px;margin:10px 0 26px;
  background:radial-gradient(120% 140% at 80% -10%,#2a3444 0,#151a23 55%,#0f131a 100%);
  color:#fff;padding:38px 40px}
.taf-hero__glow{position:absolute;top:-60px;right:-40px;width:340px;height:340px;
  background:radial-gradient(circle,rgba(226,0,26,.55),transparent 62%);filter:blur(8px);pointer-events:none}
.taf-hero__in{position:relative;max-width:760px}
.taf-hero__logo{height:38px!important;width:auto!important;max-width:200px;background:#fff;padding:7px 12px;border-radius:9px;margin-bottom:20px;display:inline-block;box-sizing:content-box}
.taf-hero__title{font-family:'Sora',sans-serif;font-weight:800;font-size:clamp(26px,3.4vw,40px);
  line-height:1.08;margin:0 0 14px;letter-spacing:-.01em}
.taf-hero__title span{color:#ff5563}
.taf-hero__sub{color:#c5ccd6;font-size:16px;max-width:640px;margin:0 0 24px}
.taf-chips{display:flex;flex-wrap:wrap;gap:12px}
.taf-chip{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  border-radius:14px;padding:11px 16px;backdrop-filter:blur(6px)}
.taf-chip b{font-family:'Sora',sans-serif;display:block;font-size:16px;color:#fff}
.taf-chip span{font-size:12px;color:#9aa3b0}

/* GRID */
.taf-grid{display:grid;grid-template-columns:1.25fr .85fr;gap:24px;align-items:start}
/* prevent grid items from blowing past their column on mobile (min-width:auto blowout) */
.taf-grid>*{min-width:0}
.taf-card{background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:0 10px 40px rgba(20,26,40,.06)}
.taf-sim{padding:26px}

/* PICKER */
.taf-picker{position:relative;margin-bottom:14px}
.taf-picker__btn{width:100%;display:flex;align-items:center;gap:14px;cursor:pointer;
  background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:10px 14px;text-align:left}
.taf-picker__btn:hover{border-color:#d3d8e0}
.taf-picker__btn img{width:74px;height:54px;object-fit:cover;border-radius:9px;background:#e7eaef;flex:none}
.taf-picker__meta{flex:1;min-width:0}
.taf-picker__name{display:block;font-family:'Sora',sans-serif;font-weight:700;font-size:15px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.taf-picker__price{display:block;color:var(--red);font-weight:700;font-size:14px;margin-top:2px}
.taf-picker__caret{color:var(--muted);flex:none;transition:transform .2s}
.taf-picker.open .taf-picker__caret{transform:rotate(180deg)}
.taf-picker__panel{display:none;position:absolute;z-index:30;left:0;right:0;top:calc(100% + 8px);
  background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(20,26,40,.18);padding:10px}
.taf-picker.open .taf-picker__panel{display:block}
.taf-picker__search{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;
  font-family:inherit;font-size:14px;margin-bottom:8px}
.taf-picker__list{max-height:300px;overflow:auto}
.taf-opt{display:flex;align-items:center;gap:12px;padding:8px;border-radius:10px;cursor:pointer}
.taf-opt:hover,.taf-opt.sel{background:var(--soft)}
.taf-opt img{width:58px;height:42px;object-fit:cover;border-radius:7px;background:#e7eaef;flex:none}
.taf-opt__n{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.taf-opt__p{font-size:13px;color:var(--red);font-weight:700}

/* PHOTO */
.taf-photo{border-radius:16px;overflow:hidden;background:#eceff3;aspect-ratio:16/9;margin-bottom:18px}
.taf-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* SHARE LINK */
.taf-share{display:flex;align-items:center;gap:10px;background:var(--soft);border:1px solid var(--line);
  border-radius:12px;padding:8px 8px 8px 14px;margin-bottom:18px}
.taf-share__url{flex:1;min-width:0;font-size:12.5px;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.taf-share__btn{flex:none;display:inline-flex;align-items:center;gap:7px;cursor:pointer;
  background:var(--ink);color:#fff;border:0;border-radius:9px;padding:9px 14px;
  font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}
.taf-share__btn:hover{background:#000}
.taf-share__btn svg{flex:none}

/* CONTROLS */
.taf-controls{display:grid;gap:16px;margin-bottom:18px}
.taf-field{display:block}
.taf-field__top{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:#39404b;margin-bottom:8px}
.taf-field__top b{font-family:'Sora',sans-serif;color:var(--ink)}
.taf-field input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:6px;
  background:linear-gradient(var(--red),var(--red)) no-repeat,var(--line);background-size:var(--fill,30%) 100%}
.taf-field input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;
  background:#fff;border:2px solid var(--red);box-shadow:0 2px 8px rgba(226,0,26,.4);cursor:pointer}
.taf-field input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;
  border:2px solid var(--red);cursor:pointer}
.taf-field--sel select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;
  font-family:inherit;font-size:15px;background:#fff;cursor:pointer}

/* RESULT */
.taf-result{background:linear-gradient(180deg,#fff,#fbf4f4);border:1px solid #f1dede;
  border-radius:16px;padding:20px;margin-bottom:20px}
.taf-result__rate{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}
.taf-result__num{font-family:'Sora',sans-serif;font-weight:800;font-size:42px;color:var(--red);line-height:1}
.taf-result__unit{font-size:14px;color:var(--muted);font-weight:600}
.taf-result__rows{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.taf-result__rows div{display:flex;justify-content:space-between;gap:8px;font-size:14px;
  padding-bottom:8px;border-bottom:1px dashed #ecdcdc}
.taf-result__rows span{color:var(--muted)}
.taf-result__rows b{font-family:'Sora',sans-serif}
.taf-msg{color:var(--red);font-weight:700;font-size:13px;margin:12px 0 0}
.taf-msg:empty{display:none}
.taf-disclaimer{font-size:11px;color:#98a0ab;margin:12px 0 0;line-height:1.45}

/* FORM */
.taf-form h3{font-family:'Sora',sans-serif;font-size:19px;margin:0 0 4px}
.taf-form__hint{color:var(--muted);font-size:13px;margin:0 0 14px}
.taf-form__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.taf-form input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;
  font-family:inherit;font-size:15px;margin-bottom:10px;background:var(--soft)}
.taf-form input:focus{outline:none;border-color:var(--red);background:#fff;box-shadow:0 0 0 3px rgba(226,0,26,.1)}
.taf-hp{position:absolute!important;left:-9999px!important}
.taf-form button{width:100%;padding:15px;background:var(--red);color:#fff;border:0;border-radius:12px;
  font-family:'Sora',sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s,transform .05s}
.taf-form button:hover{background:var(--red-d)}
.taf-form button:active{transform:translateY(1px)}
.taf-formmsg{margin:14px 0 0;font-size:15px;font-weight:600}
.taf-formmsg:empty{display:none}
.taf-formmsg.ok{font-family:'Sora',sans-serif;font-size:19px;font-weight:700;color:#0f7a37;
  background:#e7f7ed;border:1px solid #aee3c0;border-radius:14px;padding:16px 18px;text-align:center;
  display:flex;align-items:center;justify-content:center;gap:10px;line-height:1.3}
.taf-formmsg.ok::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:50%;background:#0f7a37;color:#fff;font-size:16px;flex:none}
.taf-formmsg.err{font-size:15px;color:var(--red)}

/* ASIDE */
.taf-aside{display:grid;gap:18px}
.taf-about{padding:24px}
.taf-about h2{font-family:'Sora',sans-serif;font-size:21px;margin:0 0 12px;letter-spacing:-.01em}
.taf-about p{color:#4b535f;font-size:14.5px;margin:0 0 16px}
.taf-benefits{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.taf-benefits li{position:relative;padding-left:28px;font-size:14px;color:#39404b}
.taf-benefits li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;
  background:var(--red);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2l-3.5-3.5L4 14.2 9 19.2 20 8.2l-1.5-1.5z'/></svg>") center/14px no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='white' d='M9 16.2l-3.5-3.5L4 14.2 9 19.2 20 8.2l-1.5-1.5z'/></svg>") center/14px no-repeat}
.taf-benefits li b{font-weight:700;color:var(--ink)}
.taf-steps{padding:22px 24px}
.taf-steps h3,.taf-products h3{font-family:'Sora',sans-serif;font-size:17px;margin:0 0 14px}
.taf-steps ol{margin:0;padding-left:20px;display:grid;gap:10px}
.taf-steps li{font-size:14px;color:#4b535f}
.taf-steps li b{color:var(--ink)}
.taf-products{padding:22px 24px}
.taf-prod{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.taf-prod:first-of-type{border-top:0}
.taf-prod__dot{width:10px;height:10px;border-radius:50%;background:var(--red);flex:none}
.taf-prod b{font-family:'Sora',sans-serif;font-size:14.5px;display:block}
.taf-prod small{color:var(--muted);font-size:12.5px}

/* RESPONSIVE */
@media(max-width:900px){
  .taf-grid{grid-template-columns:1fr}
  .taf-hero{padding:30px 24px}
}
@media(max-width:520px){
  .taf-wrap{padding:4px 10px 30px}
  .taf-sim{padding:18px}
  .taf-result__rows{grid-template-columns:1fr}
  .taf-form__row{grid-template-columns:1fr}
  .taf-result__num{font-size:34px}
}
