.generator-options {display:grid;gap:1rem;margin-top:1.2rem}
.generator-options label,.tool-field {display:grid;gap:.45rem;font-size:.85rem;color:var(--text)}
.generator-options label.check {display:flex;align-items:center;gap:.65rem}
.generator-options input:not([type=checkbox]),.generator-options select,.tool-input {width:100%;min-width:0;padding:.65rem;background:#0b1424;color:#edf2fa;border:1px solid #53617a;border-radius:6px;font:inherit}
.generator-options input[type=checkbox] {width:1.2rem;height:1.2rem;accent-color:#73dfd3}
.tool-note {font-size:.85rem;color:#b4c2d8;line-height:1.6;margin:.75rem 0;overflow-wrap:anywhere}
.tool-error {color:#ffb8b8}
.tool-actions {display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0}
.tool-panel {padding:1.4rem;border:1px solid var(--border);border-radius:12px;margin-top:1.2rem;background:rgba(7,14,26,.7)}
.tool-panel h3 {margin-bottom:.8rem}
.tool-panel textarea {min-height:6rem}
.batch-list {max-height:20rem;overflow:auto;margin:1rem 0;padding-left:1.6rem;font-family:var(--font-mono);overflow-wrap:anywhere}
.history-item {display:flex;gap:.5rem;flex-wrap:wrap}
.history-item button {font:inherit;color:#c7d8f1;border:1px solid #53617a;background:#101c30;padding:.5rem;cursor:pointer;border-radius:4px}
:focus-visible {outline:3px solid #73dfd3!important;outline-offset:4px}
[hidden] {display:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.table-scroll {overflow-x:auto}
.crack-table {border-collapse:collapse;width:100%;font-size:.8rem;text-align:left;margin-top:1rem}
.crack-table caption {text-align:left;font-weight:600;padding:.5rem 0}
.crack-table td,.crack-table th {padding:.7rem .4rem;border-bottom:1px solid #35445c;vertical-align:top}
.crack-table summary {cursor:pointer}
.crack-table p {font-weight:400;margin-top:.5rem}
.mode-tabs {display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}
.mode-tabs button {border:1px solid #53617a;border-radius:6px;padding:.8rem 1rem;color:#cedbef;background:#0b1424;font:inherit;cursor:pointer}
.mode-tabs [aria-selected=true] {background:#73dfd3;color:#07111c;border-color:#73dfd3}
.gen-col {min-width:0}
.spelling-output {max-height:16rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font: .85rem/1.8 var(--font-mono);margin:1rem 0;color:#dce7f7}
#qr-canvas {max-width:100%;height:auto;image-rendering:pixelated}
#print-sheet {display:none}
@media print {
 @page {margin:15mm}
 body {background:#fff!important;color:#000!important}
 body > :not(#print-sheet) {display:none!important}
 body::before,body::after {display:none!important}
 #print-sheet {display:block!important;font:12pt/1.5 sans-serif;color:#000!important;background:#fff!important}
 #print-sheet h1 {font-size:18pt}
 #print-sheet .print-password {font:20pt/1.5 'Fira Code',monospace;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all}
 #print-sheet canvas {float:right;width:50mm;height:auto;margin:0 0 5mm 5mm;image-rendering:pixelated}
}
.dice-inputs {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}
.dice-inputs input {text-align:center;font-size:1.3rem!important}
:root {--muted:#94a2bd;--text-dim:#94a2bd}
.footer-col h3 {font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#c3d0e6;margin-bottom:1rem}
#resultOutput,.print-password,.spelling-output,.batch-list {font-variant-ligatures:none;font-feature-settings:'liga' 0,'calt' 0}
#generator,#analyse,#dienst-regeln,#leak-abgleich,#uebertragen,#faq {scroll-margin-top:6rem}
