:root{--accent-color: #ccf181;--bg-color: #313848;--card-bg: #1f2937;--text-color: #e4e7eb;--text-secondary: #d1d5db;--border-color: rgb(55 65 81 / .5);--success-color: #4ade80;--panel-width: 48%}@font-face{font-family:Lilita One;src:url(/assets/LilitaOne-Regular-C8J_njg9.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Inter;src:url(/assets/Inter-Regular-BpskOkD5.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Parkinsans;src:url(/assets/Parkinsans-Regular-D1W4jOr2.ttf) format("truetype");font-display:swap;font-weight:400}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-color);color:var(--text-color);font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:3rem}#app{width:100%}.container{width:100%;display:flex;justify-content:space-between;gap:2rem;margin-top:2rem}.left-panel,.right-panel{width:var(--panel-width);flex-shrink:0}@media (max-width: 880px){:root{--panel-width: 100%}body{align-items:flex-start;padding:1rem}#app{max-width:480px}.container{flex-direction:column}.left-panel,.right-panel{width:100%}}.logo{text-align:center;margin-bottom:1rem}.title{color:var(--accent-color);font-size:3rem;margin-bottom:.5rem;text-align:center;font-family:Lilita One,sans-serif;letter-spacing:.225rem}.subtitle{color:var(--text-secondary);text-align:center;margin-bottom:2rem;font-family:Parkinsans,sans-serif;font-size:1.25rem}.controls{background-color:var(--card-bg);padding:2rem;border-radius:1rem;border:1px solid var(--border-color);height:100%}.control-group{margin-bottom:1.5rem}.slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;color:var(--text-secondary);font-size:.875rem}.count-value,.length-value{color:var(--accent-color);font-weight:500;font-size:.85rem}input[type=range]{width:100%;height:8px;background:var(--border-color);border-radius:3px;outline:none;-webkit-appearance:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--accent-color);border-radius:50%;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.12);box-shadow:0 6px 12px #00000040,0 0 0 6px #ccf18140}input[type=range]:hover{background:#374151a6}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2);box-shadow:0 10px 18px #00000059,0 0 0 8px #ccf18140}input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--accent-color);border:none;border-radius:50%;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}input[type=range]:hover::-moz-range-thumb{transform:scale(1.12);box-shadow:0 6px 12px #00000040,0 0 0 6px #ccf18140}input[type=range]:active::-moz-range-thumb{transform:scale(1.2);box-shadow:0 10px 18px #00000059,0 0 0 8px #ccf18140}.options{display:grid;gap:1rem;margin:1.5rem 0}.toggle{display:flex;justify-content:space-between;align-items:center;color:var(--text-secondary);background:var(--border-color);padding:1rem;border-radius:.5rem;transition:background ease-in-out .2s}.toggle:hover{cursor:pointer;background-color:#374151;transition:background ease-in-out .2s}.toggle-wrapper{position:relative;width:44px;height:24px}.toggle input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(20px)}.password-list{background-color:var(--card-bg);padding:1rem;height:100%;border-radius:1rem}.password-item{background-color:var(--border-color);padding:1rem;border-radius:.5rem;display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.password-text{font-family:monospace;font-size:1.1rem;word-break:break-all}.copy-icon{position:relative}.copy-icon,.copy-all{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:.25rem;display:flex;align-items:center;gap:.5rem;transition:all .2s;flex-shrink:0}.copy-icon:hover,.copy-all:hover,.copy-icon.copied{color:var(--accent-color)}.copy-tooltip{position:absolute;top:-20px;right:-10px;background:var(--accent-color);color:var(--bg-color);font-size:.75rem;padding:.25rem .5rem;border-radius:.375rem;box-shadow:0 6px 16px #00000040;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:10}.copy-tooltip.show{opacity:1;transform:translateY(0)}.copy-all .copy-tooltip{top:-28px;left:50%;right:auto;transform:translate(-50%,6px)}.copy-all .copy-tooltip.show{transform:translate(-50%)}.checkmark{animation:checkmark .2s ease-in-out forwards}@keyframes checkmark{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.copy-all{width:100%;border:1px solid var(--border-color);margin-top:1rem;background-color:var(--border-color);border-radius:.5rem;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;position:relative}.copy-all:active{transform:scale(.98)}.copy-all.copied{color:var(--accent-color);border-color:var(--accent-color)}.generate-button{width:100%;background-color:var(--accent-color);color:var(--bg-color);border:none;padding:1rem;border-radius:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1rem;transition:transform .2s ease;position:relative;overflow:hidden}.generate-button:hover{opacity:.95}.generate-button:active{transform:scale(.98)}.generate-button svg{transition:transform .5s ease}.generate-button.generating svg{animation:spin 1s linear infinite}.generate-button:after{content:"";position:absolute;top:0;left:-150%;height:100%;width:50%;background:linear-gradient(120deg,#fff0,#ffffff59,#fff0);transform:skew(-20deg);pointer-events:none}.generate-button:hover:after{animation:button-shine 1.1s ease}.generate-button.generating:after{animation:button-shine 1.3s ease-in-out infinite}@keyframes button-shine{0%{left:-150%}to{left:150%}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}footer{margin-top:2rem;text-align:center}footer ul{list-style-type:none}footer li{display:inline-block;margin-right:15px}footer a{text-decoration:none;font-size:.875rem;color:#fff9}footer ul li a:hover{color:var(--accent-color)}footer li:not(:last-child):after{content:"⬥";margin-left:15px;color:var(--accent-color)}
