@keyframes toastSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes toolResultIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes wizardFadeIn{0%{opacity:0;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}.passwordPage{background:var(--color-bg-secondary,#f8fafc);color:var(--color-text-primary,#0f172a);min-height:100vh;padding:32px 5% 48px;transition:background .3s ease,color .3s ease}.passwordMainContent{margin:0 auto;max-width:600px}.password__result{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;padding:24px}.password__display{display:flex;gap:8px;margin-bottom:16px}.password__output{background:var(--color-bg-input,#f1f5f9);border:1px solid var(--color-border,#e2e8f0);border-radius:8px;color:var(--color-text-primary,#0f172a);flex:1;font-family:monospace;font-size:1.6rem;font-size:1.8rem;font-weight:600;letter-spacing:.1em;line-height:1.5;padding:14px 18px;transition:border-color .15s cubic-bezier(.22,1,.36,1),background .15s cubic-bezier(.22,1,.36,1);width:100%}.password__output::-moz-placeholder{color:var(--color-text-muted,#94a3b8)}.password__output::placeholder{color:var(--color-text-muted,#94a3b8)}.password__output:focus{border-color:var(--color-accent,#2563eb);box-shadow:0 0 0 1px var(--color-accent,#2563eb);outline:none}.password__output:focus-visible{outline:none}.password__copyBtn,.password__regenerateBtn{align-items:center;background:transparent;border:1px solid var(--color-border,#e2e8f0);border-radius:8px;color:var(--color-text-secondary,#475569);cursor:pointer;display:inline-flex;height:48px;justify-content:center;min-height:48px;min-width:48px;transition:border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1),background .15s cubic-bezier(.22,1,.36,1);width:48px}.password__copyBtn:hover,.password__regenerateBtn:hover{background:rgba(37,99,235,.08);border-color:#2563eb;color:#2563eb}.password__copyBtn:active,.password__regenerateBtn:active{background:rgba(37,99,235,.12)}.password__copyBtn:focus-visible,.password__regenerateBtn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.password__copyBtn:disabled,.password__regenerateBtn:disabled{cursor:not-allowed;opacity:.5}.password__copyBtn svg,.password__regenerateBtn svg{height:20px;width:20px}.password__strength{align-items:center;display:flex;gap:16px}.password__strengthBar{background:#e2e8f0;border-radius:4px;flex:1;height:8px;overflow:hidden;position:relative}.password__strengthBar:after{background:#22c55e;border-radius:4px;content:"";height:100%;left:0;position:absolute;top:0;transition:all .2s cubic-bezier(.22,1,.36,1);width:0}.password__strengthLabel{font-size:1.5rem;font-weight:600;min-width:100px}.password__editor{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;padding:24px}.passwordForm__field,.password__editor{margin-bottom:24px}.passwordForm__label{color:var(--color-text-secondary,#475569);display:block;font-size:1.5rem;font-weight:500;margin-bottom:4px}.passwordForm__range{background:#e2e8f0;border-radius:4px;cursor:pointer;height:8px;width:100%}.passwordForm__input{background:var(--color-bg-input,#f1f5f9);border:1px solid var(--color-border,#e2e8f0);border-radius:8px;color:var(--color-text-primary,#0f172a);font-size:1.6rem;line-height:1.5;padding:14px 18px;transition:border-color .15s cubic-bezier(.22,1,.36,1),background .15s cubic-bezier(.22,1,.36,1);width:100%}.passwordForm__input::-moz-placeholder{color:var(--color-text-muted,#94a3b8)}.passwordForm__input::placeholder{color:var(--color-text-muted,#94a3b8)}.passwordForm__input:focus{border-color:var(--color-accent,#2563eb);box-shadow:0 0 0 1px var(--color-accent,#2563eb);outline:none}.passwordForm__input:focus-visible{outline:none}.passwordForm__checkboxes{display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}@media(max-width:768px){.passwordForm__checkboxes{grid-template-columns:1fr}}.passwordForm__checkbox{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:8px;padding:8px;transition:background .15s cubic-bezier(.22,1,.36,1)}.passwordForm__checkbox:hover{background:rgba(37,99,235,.1)}.passwordForm__checkbox input{accent-color:#2563eb;cursor:pointer;height:18px;width:18px}.passwordForm__checkbox input:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.passwordForm__checkbox span{color:#475569;font-size:1.5rem}.passwordForm__generateBtn{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.6rem;font-weight:600;gap:8px;justify-content:center;min-height:48px;padding:14px 28px;text-decoration:none;transition:background .15s cubic-bezier(.22,1,.36,1),box-shadow .15s cubic-bezier(.22,1,.36,1);width:100%}.passwordForm__generateBtn:hover{background:#1d4ed8;box-shadow:0 4px 14px rgba(37,99,235,.15)}.passwordForm__generateBtn:active{background:color-mix(in srgb,#2563eb 90%,#000)}.passwordForm__generateBtn:focus-visible{outline:2px solid #1d4ed8;outline-offset:2px}.passwordForm__generateBtn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.password__history{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;margin-top:24px;padding:24px}.password__historyTitle{border-bottom:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#0f172a);font-size:2rem;font-weight:600;margin:0 0 16px;padding-bottom:8px}.password__historyItem{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:16px;padding:8px 0}.password__historyItem:last-child{border-bottom:none}.password__historyPassword{color:#475569;flex:1;font-family:monospace;font-size:1.5rem}.password__historyTime{color:#94a3b8;font-size:1.4rem}.password__historyCopy{background:rgba(37,99,235,.15);border:none;border-radius:4px;color:#2563eb;cursor:pointer;font-size:1.4rem;padding:4px 12px}.password__historyCopy:hover{background:rgba(37,99,235,.25)}.passwordToast{animation:toastSlideIn .3s ease forwards;background:#22c55e;border-radius:12px;bottom:24px;box-shadow:0 4px 12px rgba(0,0,0,.08);color:#fff;display:none;font-weight:500;padding:14px 24px;position:fixed;right:24px;z-index:1000}@media(max-width:640px){.passwordToast{bottom:16px;left:16px;right:16px;text-align:center}}.passwordToast_success{background:#22c55e;color:#fff;display:block}.passwordToast_success:before{content:"✓ "}.passwordToast_error{background:#ef4444;color:#fff;display:block}.passwordToast_error:before{content:"✕ "}.passwordToast_info{background:#2563eb;color:#fff;display:block}.passwordToast_info:before{content:"ⓘ "}.passwordToast_warning{background:#eab308;color:#fff;display:block}.passwordToast_warning:before{content:"⚠ "}.password__about{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;margin-top:48px;padding:24px}.password__aboutTitle{border-bottom:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#0f172a);font-size:2rem;font-weight:600;margin:0 0 16px;padding-bottom:8px}.password__aboutText{color:#475569;line-height:1.8;margin-bottom:32px}.password__features{display:grid;gap:16px}.password__feature{align-items:flex-start;background:rgba(37,99,235,.05);border:1px solid rgba(37,99,235,.1);border-radius:12px;display:flex;gap:16px;padding:16px}.password__featureIcon{flex-shrink:0;font-size:1.5rem}.password__featureContent h3{font-size:1.6rem;font-weight:600;margin-bottom:4px}.password__featureContent p{color:#475569;font-size:1.5rem}.password__howto{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;margin-top:32px;padding:24px}.password__howtoTitle{border-bottom:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#0f172a);font-size:2rem;font-weight:600;margin:0 0 24px;padding-bottom:8px}.password__howtoSteps{counter-reset:step;list-style:none;padding-left:0}.password__howtoSteps li{margin-bottom:24px;padding-left:3rem;position:relative}.password__howtoSteps li:before{align-items:center;background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:50%;color:#fff;content:counter(step);counter-increment:step;display:flex;font-size:1.5rem;font-weight:700;height:2rem;justify-content:center;left:0;position:absolute;top:0;width:2rem}.password__howtoSteps li strong{display:block;font-size:1.6rem;margin-bottom:4px}.password__howtoSteps li p{color:#475569;font-size:1.5rem;line-height:1.6}.password__howtoSteps li:last-child{margin-bottom:0}.password__faq{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;margin-top:32px;padding:24px}.password__faqTitle{border-bottom:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#0f172a);font-size:2rem;font-weight:600;margin:0 0 24px;padding-bottom:8px}.password__faqList{display:flex;flex-direction:column;gap:16px}.password__faqItem{background:hsla(0,0%,100%,.5);border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.password__faqQ{cursor:pointer;font-weight:600;padding:16px 2.5rem 16px 16px;position:relative}.password__faqQ:after{color:#94a3b8;content:"+";font-size:1.25rem;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.password__faqA{color:#475569;font-size:1.5rem;line-height:1.7;padding:0 16px 16px}.password__faqA strong{color:#0f172a}.password__related{background:var(--color-bg-card,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:16px;margin-bottom:24px;margin-top:32px;padding:24px}.password__relatedTitle{border-bottom:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#0f172a);font-size:2rem;font-weight:600;margin:0 0 24px;padding-bottom:8px}.password__relatedGrid{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media(max-width:768px){.password__relatedGrid{grid-template-columns:1fr}}.password__relatedCard{align-items:center;background:hsla(0,0%,100%,.5);border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;padding:24px;text-align:center;text-decoration:none;transition:all .15s cubic-bezier(.22,1,.36,1)}.password__relatedCard:hover{border-color:#2563eb;transform:translateY(0)}.password__relatedIcon{font-size:2rem;margin-bottom:8px}.password__relatedCard h3{color:#0f172a;font-size:1.6rem;font-weight:600;margin-bottom:4px}.password__relatedCard p{color:#475569;font-size:1.5rem}