:root{--tsr-maroon: #682838;--tsr-maroon-dark: #4a1c28;--tsr-ink: #1c1815;--tsr-ink-strong: #201c19;--tsr-muted: #6b645b;--tsr-faint: #9a9188;--tsr-dot-off: #d9d2c8;--tsr-sans: "Public Sans", system-ui, -apple-system, sans-serif;--tsr-serif: "Lora", Georgia, "Times New Roman", serif}*{box-sizing:border-box}html,body{margin:0;background:var(--tsr-bg, transparent);font-family:var(--tsr-sans);-webkit-font-smoothing:antialiased}@keyframes tsr-spin{to{transform:rotate(360deg)}}@keyframes tsr-rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.tsr-page{display:flex;justify-content:center}.tsr-shell{position:relative;width:100%;max-width:440px;min-height:520px;display:flex;flex-direction:column}.tsr-app{flex:1;display:flex;flex-direction:column}.tsr-header{padding:26px 26px 0}.tsr-kicker{font:700 11px var(--tsr-sans);letter-spacing:.13em;text-transform:uppercase;color:var(--tsr-maroon);margin-bottom:9px}.tsr-title{margin:0 0 6px;font:600 25px/1.12 var(--tsr-serif);color:var(--tsr-ink);text-wrap:balance}.tsr-subtitle{margin:0;font:400 14px/1.45 var(--tsr-sans);color:var(--tsr-muted)}.tsr-stage{flex:1}.tsr-log{display:flex;flex-direction:column;justify-content:flex-end;gap:15px;padding:16px 30px 4px;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 22%,#000 100%);mask-image:linear-gradient(180deg,transparent 0,#000 22%,#000 100%)}.tsr-logrow{display:flex;gap:13px;align-items:flex-start;animation:tsr-rise-in .45s ease both}.tsr-logrow-icon{width:20px;height:20px;flex:none;margin-top:4px;display:grid;place-items:center}.tsr-check{color:var(--tsr-maroon);font:700 15px var(--tsr-sans)}.tsr-spinner{width:15px;height:15px;border:2px solid #e2dccf;border-top-color:var(--tsr-maroon);border-radius:50%;animation:tsr-spin .8s linear infinite}.tsr-logrow-text{font:italic 500 18px/1.32 var(--tsr-serif);color:var(--tsr-muted);transition:color .3s}.tsr-logrow-text.is-done{color:var(--tsr-faint)}.tsr-insight-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px 30px;animation:tsr-rise-in .5s ease both}.tsr-dots{display:flex;gap:12px;margin-bottom:22px}.tsr-dot{--dot: var(--tsr-dot-off);width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,var(--dot) 0 10%,transparent 74%)}.tsr-dot.is-on{--dot: var(--tsr-maroon)}.tsr-insight-kicker{font:700 11px var(--tsr-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--tsr-maroon);margin-bottom:20px}.tsr-insight-text{font:600 29px/1.2 var(--tsr-serif);color:var(--tsr-ink-strong);max-width:19ch;text-wrap:balance}.tsr-foot{padding:16px 26px max(30px,env(safe-area-inset-bottom))}.tsr-foot-q{text-align:center;font:600 14.5px var(--tsr-sans);color:#2a2521;margin-bottom:14px;transition:opacity .4s}.tsr-foot-q.is-hidden{opacity:0}.tsr-rate{display:grid;grid-template-columns:1fr 1fr 1fr;gap:11px}.tsr-btn{appearance:none;border:1.5px solid var(--bd);background:transparent;color:var(--fg);border-radius:13px;padding:14px 0;text-align:center;font:600 15px var(--tsr-sans);cursor:pointer;transition:background .2s,opacity .3s}.tsr-btn.is-selected{background:var(--bd);color:#fff}.tsr-btn.is-disabled{opacity:.35;pointer-events:none;cursor:default}.tsr-btn--off{--fg: #b23f34;--bd: #e0b6b0}.tsr-btn--partly{--fg: #3f6ba3;--bd: #bcccdf}.tsr-btn--spot{--fg: #3d8a58;--bd: #b6d6c0}.tsr-final{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px 32px 34px;animation:tsr-rise-in .5s ease both}.tsr-final-badge{width:56px;height:56px;border-radius:50%;background:var(--tsr-maroon);color:#fff;display:flex;align-items:center;justify-content:center;font:700 26px var(--tsr-sans);margin-bottom:26px}.tsr-final-title{margin:0 0 14px;font:700 27px/1.18 var(--tsr-serif);color:var(--tsr-ink);text-wrap:balance}.tsr-final-body{margin:0;font:400 15px/1.55 var(--tsr-sans);color:var(--tsr-muted);max-width:33ch}.tsr-cta{appearance:none;border:none;margin-top:30px;background:var(--tsr-maroon);color:#fff;border-radius:15px;padding:16px 40px;font:700 15.5px var(--tsr-sans);cursor:pointer}.tsr-cta:hover{background:var(--tsr-maroon-dark)}
