/* Werkzeuge (Rechner) — eigene Klassen mit Präfix wz-, unabhängig vom Tailwind-Build. Farben über Variablen, damit die Einbettung sie überschreiben kann. */
.wz{--wz-bg:#fff;--wz-fg:#1e293b;--wz-mut:#64748b;--wz-line:#e2e8f0;--wz-card:#f8fafc;--wz-acc:#1772ab;--wz-acc-fg:#fff;--wz-ok:#166534;
    color:var(--wz-fg);font:15px/1.5 var(--wz-font,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);box-sizing:border-box}
.wz *,.wz *::before,.wz *::after{box-sizing:border-box}
html.dark .wz:not(.wz-hell),.wz.wz-dunkel{--wz-bg:#0f172a;--wz-fg:#e2e8f0;--wz-mut:#94a3b8;--wz-line:#334155;--wz-card:#1e293b;--wz-acc:#64b6ea;--wz-acc-fg:#0f172a;--wz-ok:#86efac}
@media (prefers-color-scheme:dark){.wz.wz-auto{--wz-bg:#0f172a;--wz-fg:#e2e8f0;--wz-mut:#94a3b8;--wz-line:#334155;--wz-card:#1e293b;--wz-acc:#64b6ea;--wz-acc-fg:#0f172a;--wz-ok:#86efac}}
.wz-embed{background:var(--wz-bg);padding:12px}
.wz h1,.wz h2,.wz h3{margin:0 0 .4rem;line-height:1.25}
.wz h2{font-size:1.15rem}.wz h3{font-size:1rem}
.wz p.wz-mut,.wz .wz-mut{color:var(--wz-mut)}
.wz-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.wz-card{border:1px solid var(--wz-line);background:var(--wz-card);border-radius:12px;padding:14px}
.wz-card a.wz-tile{display:block;color:inherit;text-decoration:none}
.wz-card a.wz-tile:hover h3{text-decoration:underline}
.wz-soon{opacity:.6}.wz-chip{display:inline-block;font-size:.72rem;padding:1px 8px;border-radius:999px;border:1px solid var(--wz-line);color:var(--wz-mut);vertical-align:middle;margin-left:6px}
.wz-form{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));margin:12px 0}
.wz-field{display:flex;flex-direction:column;min-width:0}
.wz-top{flex:1 0 auto;margin-bottom:3px}
.wz-field label{display:block;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wz-field .wz-hint{font-size:.78rem;color:var(--wz-mut);margin-top:1px}
.wz input[type=number],.wz input[type=text],.wz input[type=email],.wz select,.wz textarea{width:100%;font:inherit;color:inherit;background:var(--wz-bg);border:1px solid var(--wz-line);border-radius:8px;padding:8px 10px;min-height:40px}
.wz input:focus-visible,.wz select:focus-visible,.wz button:focus-visible,.wz summary:focus-visible,.wz a:focus-visible{outline:2px solid var(--wz-acc);outline-offset:2px}
.wz details.wz-adv{border:1px dashed var(--wz-line);border-radius:10px;padding:8px 12px;margin:10px 0}
.wz details.wz-adv>summary{cursor:pointer;font-weight:600}
.wz-btn{font:inherit;cursor:pointer;border:0;border-radius:8px;padding:8px 14px;min-height:40px;background:var(--wz-acc);color:var(--wz-acc-fg);font-weight:600}
.wz-btn.wz-zweit{background:transparent;color:var(--wz-fg);border:1px solid var(--wz-line);font-weight:400}
.wz-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.wz-result{border:1px solid var(--wz-line);border-radius:12px;margin:12px 0}
.wz-result .wz-row:first-child{border-radius:11px 11px 0 0}.wz-result .wz-row:last-child{border-radius:0 0 11px 11px}
.wz-row{display:flex;gap:10px;align-items:baseline;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--wz-line);flex-wrap:wrap}
.wz-row:first-child{border-top:0}.wz-row .wz-val{font-size:1.2rem;font-weight:800;font-variant-numeric:tabular-nums}
.wz-row .wz-lab{flex:1 1 180px}.wz-row .wz-sub{display:block;font-size:.78rem;color:var(--wz-mut)}
.wz-vt{position:relative;font-size:.7rem;border-radius:999px;padding:1px 8px;border:1px solid var(--wz-line);color:var(--wz-mut);white-space:nowrap;cursor:help;outline-offset:2px}
.wz-vt:hover,.wz-vt:focus{border-color:var(--wz-acc)}
.wz-vt::after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 8px);z-index:20;width:max-content;max-width:min(280px,80vw);white-space:normal;text-align:left;
    font-size:.8rem;line-height:1.35;color:var(--wz-fg);background:var(--wz-card);border:1px solid var(--wz-line);border-left:3px solid var(--wz-acc);border-radius:6px;padding:7px 10px;
    box-shadow:0 6px 20px rgba(0,0,0,.18);opacity:0;visibility:hidden;transition:opacity .12s;pointer-events:none}
.wz-vt:hover::after,.wz-vt:focus::after{opacity:1;visibility:visible}
.wz-vt.norm{color:var(--wz-fg);border-color:var(--wz-acc)}.wz-vt.schaetzung{border-style:dashed}
.wz-note{font-size:.8rem;color:var(--wz-mut);margin:10px 0}
.wz-warn{border-left:3px solid #d97706;background:var(--wz-card);padding:8px 12px;border-radius:6px;font-size:.88rem;margin:10px 0}
.wz-msg{font-size:.85rem;color:var(--wz-ok);min-height:1.2em}
.wz-badge{display:block;text-align:right;font-size:.75rem;margin-top:8px}.wz-badge a{color:var(--wz-mut)}
.wz pre{background:var(--wz-card);border:1px solid var(--wz-line);border-radius:8px;padding:10px;overflow:auto;font-size:.82rem;white-space:pre-wrap;overflow-wrap:anywhere}
.wz-narrow{max-width:62rem;margin:0 auto;padding:1.5rem 1rem}
.wz-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media print{.wz-actions,.wz details.wz-adv>summary,.wz-noprint{display:none}.wz details.wz-adv{border:0}}

.wz-switch{display:inline-flex;gap:6px;align-items:center;font-size:.9rem;margin:6px 0;cursor:pointer}.wz-switch input{width:auto;min-height:0}

.wz-field{position:relative}.wz-clamp{position:absolute;left:0;right:0;top:100%;margin-top:3px;z-index:5;pointer-events:none;font-size:.8rem;line-height:1.35;padding:6px 9px;border-radius:8px;background:var(--wz-card);border:1px dashed var(--wz-acc);color:var(--wz-fg);box-shadow:0 4px 14px rgba(15,23,42,.18)}.wz-clamp::before{content:"\1F975  "}
