.vc-hero{padding-bottom:28px}
.vc-spec{margin-top:26px}
.vc-tool-section{padding-top:8px}
.vc-tool{position:relative;background:var(--paper);border:1.5px solid var(--ink)}
.vc-tool::before,.vc-tool::after{content:"";position:absolute;width:12px;height:12px;border:0 solid var(--graphite);pointer-events:none}
.vc-tool::before{left:-7px;top:-7px;border-left-width:1px;border-top-width:1px}
.vc-tool::after{right:-7px;bottom:-7px;border-right-width:1px;border-bottom-width:1px}
.vc-tool-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;padding:12px 18px;border-bottom:1.5px solid var(--ink)}
.vc-tool-k{font:500 12.5px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--graphite)}
.vc-tool-k b{color:var(--ink);font-weight:600}
.vc-tool-tag{padding:4px 8px 3px;border:1px solid var(--ink);border-radius:3px;background:var(--lime);font:600 12px/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.vc-tool-body{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.vc-inputs{display:grid;gap:20px;align-content:start;padding:24px;border-right:1px solid var(--line-2)}
.vc-result{padding:24px;min-width:0;min-height:260px}
.vc-result:focus{outline:none}
.vc-result:focus-visible{outline:2px solid var(--forest);outline-offset:-4px}
.vc-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.vc-drop{position:relative;display:grid;justify-items:center;gap:4px;padding:30px 18px;border:1.5px dashed var(--graphite);border-radius:6px;background:var(--sheet);text-align:center;cursor:pointer;transition:border-color .15s,background-color .15s}
.vc-drop:hover,.vc-drop.is-over{border-color:var(--forest);background:#e6eedd}
.vc-drop:focus-within{outline:2px solid var(--forest);outline-offset:3px}
.vc-drop.has-file{border-style:solid;border-color:var(--forest-2)}
.vc-drop-icon{width:34px;height:42px;margin-bottom:8px;border:1.5px solid var(--forest);border-radius:2px;background:linear-gradient(135deg,transparent 0 70%,var(--forest) 70% 72%,var(--paper) 72%) top right/12px 12px no-repeat,linear-gradient(var(--line-2),var(--line-2)) 7px 16px/18px 1.5px no-repeat,linear-gradient(var(--line-2),var(--line-2)) 7px 22px/18px 1.5px no-repeat,linear-gradient(var(--line-2),var(--line-2)) 7px 28px/12px 1.5px no-repeat,var(--paper)}
.vc-drop-main{font-weight:600}
.vc-drop-sub{font-size:.9rem;color:var(--graphite)}
.vc-drop-name{max-width:100%;margin-top:8px;font-size:.82rem;color:var(--forest);overflow-wrap:anywhere}
.vc-drop-name:empty{display:none}
.vc-empty,.vc-wait{color:var(--graphite);padding-top:6px}
.vc-wait::before{content:"";display:inline-block;width:10px;height:10px;margin-right:10px;border-radius:50%;background:var(--lime);border:1px solid var(--forest);vertical-align:-1px}
@media(prefers-reduced-motion:no-preference){.vc-wait::before{animation:vc-pulse 1s ease-in-out infinite alternate}}
@keyframes vc-pulse{to{opacity:.3}}
.vc-facts{margin-bottom:20px}
.vc-facts dd{font-size:clamp(1.05rem,.95rem + .5vw,1.35rem)}
.vc-note{margin:0 0 16px;padding:10px 12px;border-left:3px solid var(--line-2);background:var(--sheet);font-size:.9rem;color:var(--graphite)}
.vc-card{padding:18px;border:1px solid var(--line-2);border-left:4px solid var(--forest);border-radius:4px;background:#fff}
.vc-card>*+*{margin-top:12px}
.vc-card .vc-card{margin-top:16px;background:var(--paper)}
.vc-ok{border-left-color:var(--forest)}
.vc-stop{border-left-color:var(--clash)}
.vc-warn{border-left-color:#b45f1a}
.vc-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 16px;flex-wrap:wrap}
.vc-card-title{font-size:1.2rem;line-height:1.25;max-width:30ch}
.vc-card .vc-card .vc-card-title{font-size:1rem}
.vc-card .stamp{flex:none}
.vc-st-stop{color:var(--clash);background:#fff4f1}
.vc-sub{font:600 12.5px/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--forest);padding-top:6px}
.vc-list{list-style:none;display:grid;gap:10px;margin:0;padding:0}
.vc-list li{position:relative;padding-left:20px;font-size:.95rem}
.vc-list li::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border:1.5px solid var(--forest);transform:rotate(45deg)}
.vc-list strong{font-weight:600}
.vc-list .tlink{display:inline;font-size:.9rem}
.vc-how{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:start}
.vc-steps{list-style:none;counter-reset:vc;display:grid;gap:22px}
.vc-steps li{position:relative;padding-left:48px;counter-increment:vc}
.vc-steps li::before{content:counter(vc,decimal-leading-zero);position:absolute;left:0;top:0;width:34px;height:28px;border:1.5px solid var(--ink);background:var(--paper);font:600 12px/26px var(--f-mono);text-align:center}
.vc-steps h3{font-size:1.15rem;line-height:1.3}
.vc-steps p{margin-top:4px;color:var(--graphite);font-size:.95rem}
.vc-limits .vc-list li{font-size:.92rem}
.vc-faq{display:grid;gap:10px;max-width:860px}
.vc-faq details{border:1px solid var(--line-2);border-radius:4px;background:var(--paper)}
.vc-faq summary{position:relative;padding:16px 48px 16px 18px;font-weight:600;cursor:pointer;list-style:none}
.vc-faq summary::-webkit-details-marker{display:none}
.vc-faq summary::after{content:"";position:absolute;right:20px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(45deg);transition:transform .2s}
.vc-faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.vc-faq details[open] summary{border-bottom:1px solid var(--line)}
.vc-faq details p{padding:14px 18px 18px;color:var(--graphite);max-width:70ch}
.vc-faq summary:focus-visible{outline:2px solid var(--forest);outline-offset:-3px}
.vc-disclaimer{margin-top:36px;max-width:860px}
@media(max-width:900px){.vc-tool-body,.vc-how{grid-template-columns:1fr}.vc-inputs{border-right:0;border-bottom:1px solid var(--line-2)}.vc-how{gap:28px}}
@media(max-width:559px){.vc-inputs,.vc-result{padding:18px}.vc-tool-head{padding:10px 14px}.vc-card{padding:14px}.vc-result{min-height:0}}
@media(prefers-reduced-motion:reduce){.vc-drop,.vc-faq summary::after{transition:none}}
.vc-tool .stamp{display:inline-block;padding:7px 9px 6px;border:1.5px solid currentColor;border-radius:3px;font:600 12px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transform:rotate(-2deg);color:var(--ink)}
.vc-tool .st-pass{background:var(--forest);border-color:var(--forest);color:var(--lime)}
.vc-tool .st-open{color:var(--forest);border-style:dashed;background:var(--paper)}
.vc-tool .vc-st-stop{color:var(--clash);background:#fff4f1}
.vc-tool .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 20px;border-top:1.5px solid var(--ink)}
.vc-tool .facts>div{padding:14px 14px 14px 0;border-bottom:1px solid var(--line-2);min-width:0}
.vc-tool .facts>div:nth-child(even){padding-left:14px;border-left:1px solid var(--line-2)}
.vc-tool .facts dt{font:500 12px/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--graphite)}
.vc-tool .facts dd{margin:6px 0 0;font:700 clamp(1.05rem,.95rem + .5vw,1.35rem)/1.05 var(--f-display);font-stretch:108%}
.vc-tool .field{display:grid;gap:6px;min-width:0}
.vc-tool .field>label{font-weight:600;font-size:1rem;color:var(--ink)}
.vc-tool .hint{font-size:.9375rem;color:var(--graphite)}
.vc-tool .input{width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--graphite);border-radius:4px;background:var(--paper);color:var(--ink);font:400 1rem/1.45 var(--f-body)}
.vc-tool .input:focus-visible{outline:2px solid var(--forest);outline-offset:2px}
.vc-tool .mono{font-family:var(--f-mono)}
@media(min-width:1100px){.vc-tool .facts{grid-template-columns:repeat(4,minmax(0,1fr))}.vc-tool .facts>div:nth-child(n){padding-left:14px;border-left:1px solid var(--line-2)}.vc-tool .facts>div:first-child{padding-left:0;border-left:0}}
.vc-strip{background:var(--paper);border-block:1.5px solid var(--ink)}
.vc-strip .sec-in{padding-block:56px}
.vc-strip-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 56px;align-items:end;margin-bottom:30px}
.vc-strip-head h2{font-size:clamp(2rem,1.4rem + 2.2vw,3.2rem);line-height:1.05;letter-spacing:-.035em}
.vc-strip-lede{color:var(--graphite);max-width:54ch}
.vc-strip .vc-tool{background:#fff}
.vc-strip-more{margin-top:22px}
@media(max-width:759px){.vc-strip-head{grid-template-columns:1fr}.vc-strip .sec-in{padding-block:40px}}
