.password-header{border-bottom:0;padding-bottom:10px}.password-main{padding-top:10px}.password-workbench{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--brand) 22%,var(--line));border-radius:18px;background:var(--surface);box-shadow:0 18px 45px #0f172a12}.password-panel{min-width:0;padding:clamp(24px,3.5vw,34px)}.password-output-panel{border-left:1px solid var(--line);background:linear-gradient(135deg,var(--brand-soft) 0%,var(--surface) 78%)}.password-panel-heading{display:flex;align-items:flex-start;gap:11px;margin-bottom:26px}.password-step{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;color:var(--brand);border-radius:8px;background:var(--brand-soft);font-size:.72rem;font-weight:760;letter-spacing:.04em}.password-panel h2{font-size:1rem;line-height:1.35}.password-panel-heading p:not(.password-step){margin-top:4px;color:var(--muted);font-size:.8rem;line-height:1.5}.password-length-field{margin-bottom:22px}.password-length-field>label{display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:.8rem}.password-length-field>label span{display:grid;min-width:34px;min-height:26px;place-items:center;color:var(--brand);border-radius:7px;background:var(--brand-soft);font-variant-numeric:tabular-nums}.password-length-field input[type=range]{width:100%;margin:14px 0 0;accent-color:var(--brand)}.password-range-scale{display:flex;justify-content:space-between;margin-top:3px;color:var(--muted);font-size:.74rem}.password-fieldset{margin:0 0 22px;padding:0;border:0}.password-fieldset legend{margin-bottom:8px;color:var(--ink);font-size:.8rem;font-weight:700}.password-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.password-choice{display:flex;align-items:center;min-height:42px;gap:8px;padding:9px 11px;color:var(--ink);border:1px solid var(--line);border-radius:9px;background:var(--surface);font-size:.8rem;cursor:pointer;transition:border-color .18s ease,background .18s ease}.password-choice:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:var(--brand-soft)}.password-choice input{width:auto;flex:0 0 auto;accent-color:var(--brand)}.password-custom-field{margin-bottom:22px}.password-custom-field>label{color:var(--ink);font-size:.8rem}.password-custom-field input{min-height:44px}.password-action-row{display:flex;flex-wrap:wrap;gap:8px}.password-action-row .btn{min-height:44px;margin:0}.password-action-row .btn:first-child{flex:1}.password-output-field{margin-bottom:22px}.password-output-field>label{color:var(--ink);font-size:.8rem}.password-output-shell{display:grid;gap:8px}.password-output-shell input{min-height:52px;color:color-mix(in srgb,var(--brand) 78%,var(--ink));font-family:SFMono-Regular,Consolas,monospace;font-size:.95rem;font-weight:650;letter-spacing:.02em}.password-output-actions{display:flex;gap:8px}.password-output-actions .btn{min-height:40px;margin:0}.password-strength-section{margin-bottom:22px}.password-strength-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:var(--ink);font-size:.8rem;font-weight:700}.password-strength-heading span:last-child{color:var(--muted);font-weight:500;text-align:right}.strength-bar{height:9px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--brand) 12%,var(--line))}.strength-fill{width:0;height:100%;border-radius:inherit;transition:width .2s ease,background .2s ease}.password-batch{margin-top:22px}.password-batch h3,.password-advice h3{margin-bottom:10px;font-size:.86rem}.password-list{max-height:240px;overflow-y:auto;padding:0;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface) 82%,transparent)}.password-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.password-list-item:last-child{border-bottom:0}.password-list-item code{min-width:0;flex:1;overflow-wrap:anywhere;color:var(--ink);font-family:SFMono-Regular,Consolas,monospace;font-size:.78rem}.password-list-item .btn{flex:0 0 auto;min-height:34px;margin:0;padding:6px 10px;font-size:.76rem}.password-result{margin:20px 0 0;padding:12px 14px;border:1px solid transparent;border-radius:9px;font-size:.84rem;font-weight:650}.password-result.success{color:var(--success);border-color:color-mix(in srgb,var(--success) 32%,var(--line));background:color-mix(in srgb,var(--success) 8%,var(--surface))}.password-result.error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.password-advice{margin-top:22px;padding:16px;border:1px solid color-mix(in srgb,var(--brand) 16%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--surface) 84%,transparent)}.password-advice ul{display:grid;gap:7px;margin:0;padding-left:1rem;color:var(--muted);font-size:.78rem;line-height:1.55}.password-advice li::marker{color:var(--brand)}@media (max-width: 760px){.password-workbench{grid-template-columns:1fr}.password-output-panel{border-top:1px solid var(--line);border-left:0}}@media (max-width: 440px){.password-choice-grid{grid-template-columns:1fr}.password-action-row .btn{width:100%}.password-action-row .btn:first-child{flex:auto}}@media (prefers-reduced-motion: reduce){.password-choice,.strength-fill{transition:none}}
