/* Tool Kit core styles. Scoped to .tk so the WordPress theme cannot break the tool. */
.tk{--tk-accent:#2563eb;--tk-accent-ink:#fff;--tk-bg:#fff;--tk-soft:#f5f7fb;--tk-line:#e3e8f0;--tk-ink:#14213d;--tk-mute:#5b6478;--tk-good:#0f8a4b;--tk-bad:#c0392b;--tk-r:14px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--tk-ink);line-height:1.5;max-width:860px;margin:0 auto 32px;-webkit-text-size-adjust:100%}
.tk *,.tk *::before,.tk *::after{box-sizing:border-box}
.tk-card{background:var(--tk-bg);border:1px solid var(--tk-line);border-radius:var(--tk-r);box-shadow:0 6px 24px rgba(20,33,61,.07);padding:20px}
.tk-h{font-size:clamp(1.35rem,3.2vw,1.9rem);line-height:1.2;margin:0 0 6px;font-weight:750;letter-spacing:-.01em}
.tk-sub{color:var(--tk-mute);margin:0 0 16px;font-size:.98rem}
.tk-tabs{display:flex;gap:6px;flex-wrap:wrap;background:var(--tk-soft);padding:5px;border-radius:12px;margin:0 0 18px}
.tk-tab{flex:1 1 auto;border:0;background:transparent;color:var(--tk-mute);font:inherit;font-weight:650;padding:9px 12px;border-radius:9px;cursor:pointer;min-height:42px}
.tk-tab[aria-selected="true"]{background:var(--tk-bg);color:var(--tk-ink);box-shadow:0 1px 4px rgba(20,33,61,.12)}
.tk [hidden]{display:none!important}
.tk-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.tk-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.tk-field label,.tk-lbl{font-size:.86rem;font-weight:650;color:var(--tk-mute)}
.tk input,.tk select{font:inherit;font-size:1.05rem;color:var(--tk-ink);background:#fff;border:1.5px solid var(--tk-line);border-radius:10px;padding:10px 12px;min-height:46px;width:100%;transition:border-color .15s,box-shadow .15s;-moz-appearance:textfield}
.tk input::-webkit-outer-spin-button,.tk input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tk input:focus,.tk select:focus{outline:none;border-color:var(--tk-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--tk-accent) 22%,transparent)}
.tk-check{display:flex;gap:9px;align-items:center;font-size:.95rem;color:var(--tk-ink);cursor:pointer;margin-top:10px}
.tk .tk-check input{width:20px;height:20px;min-height:0;padding:0;accent-color:var(--tk-accent);flex:none}
.tk-link{border:0;background:none;color:var(--tk-accent);font:inherit;font-size:.82rem;font-weight:650;cursor:pointer;padding:0;align-self:flex-start}
.tk-unit{position:relative}.tk-unit input{padding-right:44px}.tk-unit span{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--tk-mute);font-size:.9rem;pointer-events:none}
.tk-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 0}
.tk-btn{font:inherit;font-weight:650;border-radius:10px;border:1.5px solid var(--tk-line);background:#fff;color:var(--tk-ink);padding:9px 14px;min-height:42px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.tk-btn:hover{border-color:var(--tk-accent);color:var(--tk-accent)}
.tk-btn-p{background:var(--tk-accent);border-color:var(--tk-accent);color:var(--tk-accent-ink)}
.tk-btn-p:hover{filter:brightness(1.07);color:var(--tk-accent-ink)}
.tk-btn:focus-visible,.tk-tab:focus-visible{outline:3px solid color-mix(in srgb,var(--tk-accent) 45%,transparent);outline-offset:2px}
.tk-result{margin-top:18px;border-radius:12px;background:color-mix(in srgb,var(--tk-accent) 8%,#fff);border:1.5px solid color-mix(in srgb,var(--tk-accent) 30%,#fff);padding:16px 18px}
.tk-result-lbl{font-size:.85rem;font-weight:700;color:var(--tk-mute);text-transform:uppercase;letter-spacing:.04em}
.tk-big{font-size:clamp(1.8rem,6vw,2.6rem);font-weight:800;line-height:1.15;margin:4px 0 6px;word-break:break-word;font-variant-numeric:tabular-nums}
.tk-stats{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:10px}
.tk-stat{background:#fff;border:1px solid var(--tk-line);border-radius:10px;padding:9px 11px}
.tk-stat b{display:block;font-size:1.08rem;font-variant-numeric:tabular-nums}
.tk-stat small{color:var(--tk-mute);font-size:.8rem}
.tk-steps{margin:12px 0 0;padding:10px 12px;background:#fff;border:1px dashed var(--tk-line);border-radius:10px;font-size:.92rem;color:var(--tk-mute)}
.tk-steps code{color:var(--tk-ink);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.9rem}
.tk-err{color:var(--tk-bad);font-size:.9rem;margin-top:8px;min-height:1em}
.tk-note{font-size:.85rem;color:var(--tk-mute);margin-top:10px}
.tk-hist{margin-top:16px}
.tk-hist h3{font-size:.95rem;margin:0 0 8px}
.tk-hist ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.tk-hist li{display:flex;justify-content:space-between;gap:10px;align-items:center;background:var(--tk-soft);border-radius:9px;padding:7px 10px;font-size:.9rem}
.tk-hist li button{border:0;background:none;color:var(--tk-accent);font:inherit;font-weight:650;cursor:pointer;padding:4px}
.tk-tbl{width:100%;border-collapse:collapse;font-size:.93rem;margin-top:8px}
.tk-tbl th,.tk-tbl td{border-bottom:1px solid var(--tk-line);padding:7px 8px;text-align:left}
.tk-tbl th{color:var(--tk-mute);font-weight:650}
.tk-info{margin-top:22px}
.tk-info h2{font-size:1.25rem;margin:22px 0 8px}
.tk-info p,.tk-info li{color:#2b3550}
.tk-faq details{border:1px solid var(--tk-line);border-radius:10px;padding:10px 14px;margin:8px 0;background:#fff}
.tk-faq summary{font-weight:650;cursor:pointer}
.tk-faq details p{margin:8px 0 0}
.tk-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);background:var(--tk-ink);color:#fff;padding:9px 16px;border-radius:999px;font-size:.92rem;opacity:0;transition:opacity .2s;pointer-events:none;z-index:99999}
.tk-toast.on{opacity:1}
.tk-x{border:0;background:var(--tk-soft);color:var(--tk-mute);border-radius:8px;min-width:40px;min-height:40px;cursor:pointer;font-size:1.1rem}
.tk-x:hover{color:var(--tk-bad)}
@media (max-width:520px){.tk-card{padding:16px;border-radius:12px}.tk-grid{grid-template-columns:1fr 1fr}.tk-stats{grid-template-columns:1fr 1fr}.tk-tab{font-size:.88rem;padding:8px 6px;flex:1 1 28%}.tk-big{font-size:2rem}}
@media print{.tk-tabs,.tk-row,.tk-hist,.tk-btn{display:none!important}.tk-card{box-shadow:none}}

@media (max-width:520px){.tk-tabs{display:grid;grid-template-columns:1fr 1fr}.tk-tabs:has(>.tk-tab:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}.tk-tab{padding:9px 6px;font-size:.92rem}}
