@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap");[data-app=passwords]{--primary:160 84% 30%;--primary-foreground:0 0% 100%;--primary-hover:160 84% 24%;--accent:0 72% 51%;--accent-foreground:0 0% 100%;--background:222 47% 6%;--foreground:0 0% 95%;--card:222 35% 9%;--card-foreground:0 0% 95%;--popover:222 35% 9%;--popover-foreground:0 0% 95%;--secondary:222 30% 12%;--secondary-foreground:222 10% 80%;--muted:222 30% 14%;--muted-foreground:222 10% 55%;--border:222 25% 18%;--input:222 25% 18%;--ring:160 84% 30%;--destructive:0 72% 51%;--destructive-foreground:0 0% 100%;--radius:0.5rem;--font-sans:"Inter",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;font-family:var(--font-sans)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}[data-app=passwords] .animate-fade-in-up{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) both}[data-app=passwords] .animate-fade-in{animation:fadeIn .4s ease-out both}[data-app=passwords] .animate-scale-in{animation:scaleIn .45s cubic-bezier(.22,1,.36,1) both}[data-app=passwords] .delay-100{animation-delay:.1s}[data-app=passwords] .delay-200{animation-delay:.2s}[data-app=passwords] .delay-300{animation-delay:.3s}[data-app=passwords] .delay-400{animation-delay:.4s}[data-app=passwords] .delay-500{animation-delay:.5s}@media (prefers-reduced-motion:reduce){[data-app=passwords] .animate-fade-in,[data-app=passwords] .animate-fade-in-up,[data-app=passwords] .animate-scale-in{animation:none!important;opacity:1!important;transform:none!important}}[data-app=passwords] .pw-eyebrow{font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:hsl(var(--primary));display:block;margin:0}[data-app=passwords] .pw-hero{position:relative;background-image:radial-gradient(circle at 20% 60%,hsl(160 84% 30%/.06) 0,transparent 50%),radial-gradient(circle at 80% 20%,hsl(0 72% 51%/.03) 0,transparent 40%)}[data-app=passwords] .pw-main-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start}@media (min-width:768px){[data-app=passwords] .pw-main-grid{grid-template-columns:1fr 1fr}}[data-app=passwords] .pw-generator-card{background:hsl(var(--card));border:1.5px solid hsl(var(--border));border-radius:calc(var(--radius) * 2);padding:clamp(1.5rem,4vw,2rem);position:relative;overflow:hidden;box-shadow:0 4px 24px hsl(222 47% 4%/.4)}[data-app=passwords] .pw-generator-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,hsl(var(--primary)),hsl(160 84% 50%))}[data-app=passwords] .pw-display{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:hsl(222 35% 6%);border:1.5px solid hsl(var(--border));border-radius:var(--radius);margin-bottom:1.25rem;overflow:hidden}[data-app=passwords] .pw-password-text{flex:1;font-family:var(--font-mono);font-size:1.0625rem;font-weight:500;color:hsl(var(--primary));word-break:break-all;line-height:1.5;letter-spacing:.02em}[data-app=passwords] .pw-display-actions{display:flex;gap:.375rem;flex-shrink:0}[data-app=passwords] .pw-icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1.5px solid hsl(var(--border));border-radius:var(--radius);background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}[data-app=passwords] .pw-icon-btn:hover{border-color:hsl(var(--primary));color:hsl(var(--primary));background:hsl(var(--primary)/.1)}[data-app=passwords] .pw-strength-track{height:6px;background:hsl(var(--muted));border-radius:99px;overflow:hidden}[data-app=passwords] .pw-strength-fill{height:100%;border-radius:99px}[data-app=passwords] .pw-strength-label{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}[data-app=passwords] .pw-strength-meta{font-size:.75rem;color:hsl(var(--muted-foreground));font-family:var(--font-mono)}[data-app=passwords] .pw-section{margin-bottom:1.5rem}[data-app=passwords] .pw-length-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;padding:.25rem .625rem;background:hsl(var(--primary)/.15);color:hsl(var(--primary));border-radius:var(--radius);font-family:var(--font-mono);font-size:.875rem;font-weight:700}[data-app=passwords] .pw-slider{width:100%;height:6px;-webkit-appearance:none;appearance:none;background:hsl(var(--muted));border-radius:99px;outline:none;cursor:pointer}[data-app=passwords] .pw-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:hsl(var(--primary));border:3px solid hsl(var(--card));box-shadow:0 0 0 2px hsl(var(--primary)/.3);cursor:grab;transition:box-shadow .15s ease}[data-app=passwords] .pw-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px hsl(var(--primary)/.3)}[data-app=passwords] .pw-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:hsl(var(--primary));border:3px solid hsl(var(--card));cursor:grab}[data-app=passwords] .pw-range-label{font-size:.6875rem;color:hsl(var(--muted-foreground));font-family:var(--font-mono)}[data-app=passwords] .pw-toggle-grid{display:grid;gap:.5rem}[data-app=passwords] .pw-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border:1px solid hsl(var(--border));border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease}[data-app=passwords] .pw-toggle-row:hover{border-color:hsl(var(--primary)/.4)}[data-app=passwords] .pw-toggle-info{display:flex;align-items:center;gap:.625rem}[data-app=passwords] .pw-toggle-mono{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:hsl(var(--primary));background:hsl(var(--primary)/.1);padding:.125rem .375rem;border-radius:3px;min-width:2.5rem;text-align:center}[data-app=passwords] .pw-toggle-desc{font-size:.8125rem;color:hsl(var(--muted-foreground))}[data-app=passwords] .pw-switch{width:36px;height:20px;border-radius:99px;background:hsl(var(--muted));border:none;padding:2px;cursor:pointer;transition:background .2s ease;position:relative;flex-shrink:0}[data-app=passwords] .pw-switch.active{background:hsl(var(--primary))}[data-app=passwords] .pw-switch-thumb{display:block;width:16px;height:16px;border-radius:50%;background:hsl(var(--foreground));transition:transform .2s ease}[data-app=passwords] .pw-switch.active .pw-switch-thumb{transform:translateX(16px)}[data-app=passwords] .pw-generate-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.9375rem 1.5rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-family:var(--font-sans);font-size:1rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border:none;border-radius:var(--radius);cursor:pointer;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;box-shadow:0 2px 0 hsl(160 84% 18%),0 4px 12px hsl(var(--primary)/.3)}[data-app=passwords] .pw-generate-btn:hover{background:hsl(var(--primary-hover));transform:translateY(-1px);box-shadow:0 2px 0 hsl(160 84% 15%),0 6px 20px hsl(var(--primary)/.35)}[data-app=passwords] .pw-generate-btn:active{transform:translateY(1px);box-shadow:0 1px 0 hsl(160 84% 18%),0 2px 6px hsl(var(--primary)/.2)}[data-app=passwords] .pw-bulk-card,[data-app=passwords] .pw-history-card,[data-app=passwords] .pw-tips-card{background:hsl(var(--card));border:1.5px solid hsl(var(--border));border-radius:calc(var(--radius) * 2);padding:1.25rem 1.5rem;box-shadow:0 2px 12px hsl(222 47% 4%/.3)}[data-app=passwords] .pw-bulk-list,[data-app=passwords] .pw-history-list{display:grid;gap:.375rem}[data-app=passwords] .pw-bulk-row,[data-app=passwords] .pw-history-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .625rem;background:hsl(222 35% 6%);border:1px solid hsl(var(--border));border-radius:var(--radius)}[data-app=passwords] .pw-history-text{flex:1;font-family:var(--font-mono);font-size:.8125rem;color:hsl(var(--foreground));word-break:break-all;line-height:1.4}[data-app=passwords] .pw-bulk-index{font-weight:600;min-width:1.25rem}[data-app=passwords] .pw-bulk-index,[data-app=passwords] .pw-icon-btn-sm{font-family:var(--font-mono);font-size:.6875rem;color:hsl(var(--muted-foreground))}[data-app=passwords] .pw-icon-btn-sm{padding:.25rem .5rem;border:1px solid hsl(var(--border));border-radius:4px;background:transparent;cursor:pointer;transition:color .15s ease,border-color .15s ease;flex-shrink:0}[data-app=passwords] .pw-icon-btn-sm:hover{color:hsl(var(--primary));border-color:hsl(var(--primary))}[data-app=passwords] .pw-action-btn{padding:.5rem 1rem;border:none;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease;white-space:nowrap}[data-app=passwords] .pw-action-btn:hover{background:hsl(var(--primary-hover))}[data-app=passwords] .pw-copy-btn{padding:.375rem .875rem;border:1.5px solid hsl(var(--primary));border-radius:var(--radius);background:transparent;color:hsl(var(--primary));font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}[data-app=passwords] .pw-copy-btn:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}[data-app=passwords] .pw-number-input{width:3.5rem;padding:.5rem;border:1.5px solid hsl(var(--border));border-radius:var(--radius);background:hsl(222 35% 6%);color:hsl(var(--foreground));font-family:var(--font-mono);font-size:.875rem;text-align:center;outline:none;-moz-appearance:textfield;appearance:textfield}[data-app=passwords] .pw-number-input:focus{border-color:hsl(var(--primary))}[data-app=passwords] .pw-number-input::-webkit-inner-spin-button,[data-app=passwords] .pw-number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}[data-app=passwords] .pw-tips-list{display:grid;gap:.625rem}[data-app=passwords] .pw-tip-row{display:flex;gap:.625rem;align-items:flex-start}[data-app=passwords] .pw-tip-icon{flex-shrink:0;color:hsl(var(--primary));margin-top:2px}[data-app=passwords] .pw-tip-text{font-size:.8125rem;color:hsl(var(--muted-foreground));line-height:1.55}[data-app=passwords] .pw-faq-grid{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,5rem);align-items:start}@media (min-width:900px){[data-app=passwords] .pw-faq-grid{grid-template-columns:1fr 2fr}}[data-app=passwords] header{border-bottom:1.5px solid hsl(var(--border));background:hsl(var(--background)/.95);backdrop-filter:blur(12px)}