.tool-anim{margin:4px 0 18px;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#0B0F17;display:flex;justify-content:center}
.tool-anim .ta{width:100%;max-width:100%;height:auto;max-height:230px}
.tcard .ta{border-radius:12px;margin:0 0 4px}
.skip{position:absolute;left:-9999px;top:8px;z-index:9;background:var(--fg);color:var(--bg);padding:8px 14px;border-radius:10px;font-weight:700;text-decoration:none}
.skip:focus{left:12px}
main{max-width:860px}
.top .in{max-width:860px}
.cmp th{text-transform:none;letter-spacing:0;font-size:.88rem}
.cmp td,.cmp th{word-break:normal;overflow-wrap:anywhere}
.crumbs{font-size:.88rem;color:var(--mute);margin:0 0 14px}.crumbs a{color:var(--mute)}.crumbs span{margin:0 6px}
.kicker{color:var(--buy);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px}
.free{display:inline-block;background:rgba(43,214,123,.14);color:var(--buy);border:1px solid rgba(43,214,123,.35);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:800;letter-spacing:.06em;vertical-align:middle;margin-left:6px}
.tool{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px;margin:18px 0 8px;display:grid;gap:14px}
.tool label{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:8px;font-weight:600;font-size:.95rem}
.tool label>input,.tool label>textarea,.tool label>select{flex:1 0 100%}
.tool .row2{align-items:end}
.tool input,.tool select{height:50px}
.tool .opt{color:var(--mute);font-weight:400}
.tool input,.tool textarea,.tool select{width:100%;box-sizing:border-box;background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font:inherit;font-size:1rem}
.tool textarea{min-height:120px;resize:vertical}
.tool input:focus,.tool textarea:focus,.tool select:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:transparent}
.tool .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tool .acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.tool .count{color:var(--mute);font-size:.85rem}
.tool button.btn{border:0;cursor:pointer;font:inherit}
.tool button.btn[disabled]{opacity:.6;cursor:wait}
.limit{color:var(--mute);font-size:.85rem;margin:0}
.err{color:#FF9AA8;margin:0}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.bc-box{display:flex;justify-content:center}
.out{display:grid;gap:14px;margin:18px 0}
.out[hidden]{display:none}
.rcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.rcard h3{margin:0 0 8px;font-size:1.05rem}
.rcard p{margin:0 0 8px}.rcard p:last-child{margin-bottom:0}
.rcard ol,.rcard ul{margin:0;padding-left:20px}.rcard li{margin:0 0 8px}
.rcard .sub{color:var(--mute);font-size:.92rem}
.lead-card{border-color:rgba(43,214,123,.35)}
.tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:2px 9px;margin-left:6px;vertical-align:middle}
.tag.crit{background:rgba(242,85,107,.16);color:#FF9AA8}.tag.high{background:rgba(247,183,49,.16);color:var(--maybe)}.tag.mod{background:rgba(62,166,255,.16);color:var(--blue)}
.cmp{width:100%;border-collapse:collapse;font-size:.95rem}.cmp th,.cmp td{border-top:1px solid var(--line);padding:9px 8px;text-align:left;vertical-align:top}.cmp th{color:var(--mute);font-weight:600}
.cmp .win{color:var(--buy);font-weight:700}
.cmp-cards{display:none}
.cmp-card{border-top:1px solid var(--line);padding:12px 0}.cmp-card:first-child{border-top:0;padding-top:4px}
.cmp-card h4{margin:0 0 6px;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--mute)}
.cmp-card p{margin:0 0 6px}.cmp-card p.win{color:var(--buy);font-weight:600}.cmp-card p.win b{color:var(--buy)}
@media (max-width:600px){.rcard .tw:has(.cmp){display:none}.cmp-cards{display:block}}
.check{list-style:none;padding:0!important}.check li{display:flex;gap:10px;align-items:flex-start}
.check input{width:20px;height:20px;margin-top:3px;flex:none;accent-color:#2BD67B}
.check .done{text-decoration:line-through;color:var(--mute)}
.verify{color:var(--maybe);font-size:.85rem}
.tag.unv{background:rgba(152,162,179,.16);color:var(--mute)}
.tools-row{display:flex;flex-wrap:wrap;gap:10px}
.btn.ghost{cursor:pointer}
.note{border-left:3px solid var(--maybe);padding:2px 0 2px 14px;margin:6px 0;color:#D0D5DD;font-size:.95rem}
.cta{background:var(--panel);border:1px solid rgba(43,214,123,.35);border-radius:18px;padding:22px;margin:24px 0 0;text-align:center}
.cta h2{margin-top:0}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}
@media (max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.cards{grid-template-columns:1fr}.tool .row2{grid-template-columns:1fr}.tool{padding:16px}}
.tcard{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--fg)}
.tcard:hover,.tcard:focus-visible{border-color:rgba(43,214,123,.5)}
.tcard .ic{font-size:1.6rem;line-height:1}.tcard h3,.tcard h2{margin:0;font-size:1.05rem;letter-spacing:-.01em}.tcard p{margin:0;color:var(--mute);font-size:.94rem;flex:1}
.tcard .go{color:var(--buy);font-weight:700}
.tcard h2 .free,.tcard h3 .free,.tcard .tfree{display:table;margin:0 0 0;align-self:flex-start}  
.related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width:700px){.related{grid-template-columns:1fr}}
details{border-top:1px solid var(--line);padding:12px 0}details summary{cursor:pointer;font-weight:700}details p{margin:8px 0 0}
@media print{.top,.crumbs,.tool,.cta,footer,.no-print,.related,section.more{display:none!important}body{background:#fff;color:#000}.rcard{border-color:#ccc;background:#fff}}
.ta{display:block;width:100%;height:auto}
.ta *{transform-box:fill-box}
@media (prefers-reduced-motion: reduce){.ta *{animation:none!important}}
@keyframes ta-flick{0%,100%{transform:scaleY(1) scaleX(1)}25%{transform:scaleY(1.12) scaleX(.94)}50%{transform:scaleY(.92) scaleX(1.05)}75%{transform:scaleY(1.06) scaleX(.97)}}
@keyframes ta-ember{0%{transform:translate(0,0);opacity:0}15%{opacity:1}100%{transform:translate(var(--dx,0px),-120px);opacity:0}}
@keyframes ta-glow{0%,100%{opacity:.35}50%{opacity:.75}}
.ta-flame{transform-origin:50% 100%;animation:ta-flick 1.2s ease-in-out infinite}
.ta-ember{animation:ta-ember 2.4s linear infinite}
.ta-halo{animation:ta-glow 2.4s ease-in-out infinite}
@keyframes ta-rise{0%{transform:translateY(0) scale(.6);opacity:0}12%{transform:translateY(-14px) scale(1);opacity:1}70%{opacity:1}100%{transform:translateY(-96px) scale(1);opacity:0}}
@keyframes ta-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.ta-bub{animation:ta-rise 6s ease-out infinite}
.ta-head{animation:ta-bob 2s ease-in-out infinite}
@keyframes ta-scan{0%{transform:translateX(-80px);opacity:0}8%{opacity:.9}92%{opacity:.9}100%{transform:translateX(600px);opacity:0}}
@keyframes ta-edgeA{0%,40%,100%{opacity:1}50%,90%{opacity:.15}}
@keyframes ta-edgeB{0%,40%,100%{opacity:.15}50%,90%{opacity:1}}
.ta-scan{animation:ta-scan 3.2s linear infinite}
.ta-ea{animation:ta-edgeA 6.4s ease-in-out infinite}.ta-eb{animation:ta-edgeB 6.4s ease-in-out infinite}
@keyframes ta-pick3{0%,30%{transform:translateX(0)}33.3%,63.3%{transform:translateX(var(--s))}66.6%,96.6%{transform:translateX(calc(var(--s) * 2))}100%{transform:translateX(0)}}
@keyframes ta-caret{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes ta-type{0%,100%{transform:scaleX(.35)}50%{transform:scaleX(1)}}
.ta-pick{animation:ta-pick3 4.5s cubic-bezier(.6,0,.3,1) infinite}
.ta-caret{animation:ta-caret 1s steps(1) infinite}
.ta-type{transform-origin:0 50%;animation:ta-type 3s ease-in-out infinite}
@keyframes ta-beam{0%,100%{transform:translateY(0)}50%{transform:translateY(150px)}}
@keyframes ta-wob{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
@keyframes ta-warn{0%,100%{opacity:.25}50%{opacity:.9}}
.ta-beam{animation:ta-beam 4s ease-in-out infinite}
.ta-wob{transform-origin:50% 100%;animation:ta-wob 1.6s ease-in-out infinite}
.ta-warn{animation:ta-warn 1.6s ease-in-out infinite}
@keyframes ta-roll{from{transform:translateY(0)}to{transform:translateY(-200px)}}
@keyframes ta-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes ta-stars{from{transform:translateY(0)}to{transform:translateY(200px)}}
.ta-roll{animation:ta-roll 8s linear infinite}
.ta-float{animation:ta-float 2.6s ease-in-out infinite}
.ta-stars{animation:ta-stars 4s linear infinite}
