:root{--bg-primary:#000;--bg-card:#0a0a0a;--bg-input:#121212;--border-subtle:#1c1c1c;--border-active:#ff2a2a;--accent-red:#ff2a2a;--accent-red-hover:#ff4d4d;--accent-red-glow:#ff2a2a66;--accent-red-dim:#ff2a2a26;--text-primary:#fff;--text-secondary:#8e8e93;--text-muted:#4e4e52;--font-family:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition-fast:.15s cubic-bezier(.16, 1, .3, 1);--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--glow-shadow:0 0 15px var(--accent-red-glow)}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);justify-content:center;align-items:center;min-height:100vh;display:flex;overflow-x:hidden}#root{flex-direction:column;gap:24px;width:100%;max-width:480px;padding:20px;display:flex}@keyframes pulseGlow{0%,to{box-shadow:0 0 12px #ff2a2a33}50%{box-shadow:0 0 20px #ff2a2a73}}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.card{background-color:var(--bg-card);border:1px solid var(--border-subtle);transition:border-color var(--transition-normal);border-radius:16px;padding:24px;box-shadow:0 10px 30px #000c}.card:focus-within{border-color:var(--accent-red-glow)}.slider-container{flex-direction:column;gap:12px;margin-bottom:8px;display:flex}.slider-header{justify-content:space-between;align-items:center;display:flex}.slider-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:14px;font-weight:500}.slider-value{color:var(--accent-red);text-shadow:0 0 10px var(--accent-red-glow);font-family:monospace;font-size:20px;font-weight:700}.custom-slider{-webkit-appearance:none;background:var(--border-subtle);cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px}.custom-slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--accent-red);width:20px;height:20px;box-shadow:0 0 8px var(--accent-red-glow);cursor:pointer;transition:transform var(--transition-fast), background var(--transition-fast);background:#fff;border-radius:50%}.custom-slider::-webkit-slider-thumb:hover{background:var(--accent-red);transform:scale(1.2)}.custom-slider::-webkit-slider-thumb:active{transform:scale(.95)}.checkbox-list{flex-direction:column;gap:16px;margin-top:12px;display:flex}.checkbox-item{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex}.checkbox-label-group{flex-direction:column;gap:2px;display:flex}.checkbox-title{color:var(--text-primary);transition:color var(--transition-fast);font-size:15px;font-weight:600}.checkbox-desc{color:var(--text-secondary);font-size:12px}.checkbox-item:hover .checkbox-title{color:var(--accent-red)}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch-slider{cursor:pointer;background-color:var(--border-subtle);border-radius:24px;transition:all .3s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.switch-slider:before{content:"";background-color:var(--text-secondary);border-radius:50%;width:18px;height:18px;transition:all .3s cubic-bezier(.16,1,.3,1);position:absolute;bottom:3px;left:3px}.switch input:checked+.switch-slider{background-color:var(--accent-red-dim);border:1px solid var(--accent-red);box-shadow:0 0 10px #ff2a2a33}.switch input:checked+.switch-slider:before{background-color:var(--accent-red);box-shadow:0 0 6px var(--accent-red-glow);transform:translate(20px)}.btn-primary{background-color:var(--accent-red);color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;width:100%;transition:all var(--transition-normal);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:16px;font-weight:700;display:flex;box-shadow:0 4px 20px #ff2a2a33}.btn-primary:hover{background-color:var(--accent-red-hover);box-shadow:var(--glow-shadow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(1px)}.toast{border:1px solid var(--accent-red);color:#fff;box-shadow:0 10px 25px #000000e6, 0 0 15px var(--accent-red-glow);z-index:100;background:#111;border-radius:30px;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;animation:.3s cubic-bezier(.16,1,.3,1) slideIn;display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.toast-icon{color:var(--accent-red)}.strength-section{border:1px solid var(--border-subtle);background-color:#050505;border-radius:12px;justify-content:space-between;align-items:center;margin-top:8px;padding:16px;display:flex}.strength-label-container{flex-direction:column;gap:2px;display:flex}.strength-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:500}.strength-val{letter-spacing:.5px;font-size:16px;font-weight:700}.strength-bars{gap:5px;display:flex}.strength-bar{width:8px;height:28px;transition:background-color var(--transition-normal), box-shadow var(--transition-normal);background-color:#1a1a1a;border-radius:2px}.display-container{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;align-items:center;min-height:72px;padding:18px 24px;display:flex;position:relative;box-shadow:0 10px 30px #0009}.password-text{letter-spacing:1.5px;word-break:break-all;-webkit-user-select:all;user-select:all;align-items:center;min-height:33px;padding-right:48px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:22px;font-weight:600;display:flex}.password-placeholder{color:var(--text-muted);font-style:italic;font-family:var(--font-family);letter-spacing:.5px;font-size:18px}.copy-btn{background:var(--bg-input);border:1px solid var(--border-subtle);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;right:16px}.copy-btn:hover{color:var(--accent-red);border-color:var(--accent-red);background:var(--accent-red-dim);box-shadow:0 0 10px var(--accent-red-glow)}.copy-btn:active{transform:scale(.92)}.app-header{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.app-logo{color:var(--accent-red);filter:drop-shadow(0 0 8px var(--accent-red-glow))}.app-title{letter-spacing:-.5px;text-transform:uppercase;background:linear-gradient(#fff 0%,#a0a0a0 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:28px;font-weight:800}.app-subtitle{color:var(--text-secondary);letter-spacing:1.5px;text-transform:uppercase;font-size:13px;font-weight:600}
