.text-tools,.text-tools *{box-sizing:border-box}
.text-tools{width:100%;min-width:0}.text-tool-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px}.text-tool-tabs button,.text-mode-button{appearance:none;border:1px solid #39443c;border-radius:7px;background:#181e1a;color:#b9c6ba;padding:9px 13px;font:inherit;font-size:13px;line-height:1.3;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.text-tool-tabs button:hover,.text-mode-button:hover{border-color:#94c865;color:#eef9e6}.text-tool-tabs button.active{background:#baf66b;color:#17230d;border-color:#baf66b;font-weight:700}.text-tool-panel{padding:30px;border:1px solid #303638;border-radius:14px;background:#181b1d}.text-tool-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.text-tool-kicker{font-size:10px;letter-spacing:.14em;font-weight:700;color:#91a695}.text-tool-head h2{margin:8px 0;font-size:24px;letter-spacing:-.025em}.text-tool-head p{margin:0;font-size:14px;color:#a0aaa5;line-height:1.5}.text-tool-local{white-space:nowrap;color:#a5c498;font-size:12px;padding:7px 10px;border:1px solid #3e513e;border-radius:6px}.text-tool-modes{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.text-mode-button[aria-pressed=true]{background:#354934;border-color:#709662;color:#effbe8}.text-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.text-tool-grid label,.text-length-label{display:block;margin:0 0 9px;color:#d4ddd4;font-size:13px;font-weight:600}.text-tool-grid textarea,.text-length-label input{width:100%;display:block;resize:vertical;min-width:0;min-height:190px;padding:14px;border:1px solid #46504a;border-radius:8px;background:#101411;color:#f1f3ee;font:inherit;font-size:14px;line-height:1.55}.text-tool-grid textarea:focus-visible,.text-tool-tabs button:focus-visible,.text-mode-button:focus-visible,.text-tool-actions button:focus-visible,.text-length-label input:focus-visible{outline:2px solid #baf66b;outline-offset:2px}.text-tool-grid textarea::placeholder{color:#758279}.text-tool-generator .text-tool-grid{grid-template-columns:1fr}.text-length-label{margin:20px 0 0;max-width:200px}.text-length-label input{min-height:0;margin-top:8px}.text-tool-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.text-tool-actions button{padding:11px 16px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px}.text-tool-primary{border:1px solid #baf66b;background:#baf66b;color:#17230d;font-weight:700}.text-tool-button{border:1px solid #46504a;background:#202623;color:#d5e0d5}.text-tool-actions button:hover{filter:brightness(1.12)}.text-tool-action-spacer{flex:1 1 auto}.text-tool-status{min-height:20px;margin:12px 0 0;color:#ffc8a6;font-size:13px}.text-tools [hidden]{display:none!important}@media(max-width:700px){.text-tool-panel{padding:18px}.text-tool-head{flex-wrap:wrap;gap:10px}.text-tool-grid{grid-template-columns:1fr}.text-tool-grid textarea{min-height:155px}.text-tool-tabs{gap:6px}.text-tool-tabs button{padding:9px 10px}.text-tool-actions button{min-height:44px}.text-tool-action-spacer{display:none}.text-tool-actions button{flex:1 1 40%}}

/* The password is a short result, so keep its controls together. */
.text-tool-password .text-tool-grid,.text-tool-password .text-tool-actions,.text-tool-password .text-tool-status{max-width:640px}
.text-tool-password .text-output-area textarea{height:72px;min-height:72px;resize:vertical}
.text-tool-password .text-tool-action-spacer{display:none}
