.hidden{display:none}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--bg:#0d1117;--bg-card:#161b22;--bg-input:#0d1117;--text:#c9d1d9;--text-dim:#8b949e;--heading:#58a6ff;--accent:#39d353;--accent-hover:#2ea043;--accent-dim:#39d35318;--danger:#f85149;--warning:#d29922;--success:#39d353;--font:"JetBrains Mono", monospace;--font-display:"JetBrains Mono", monospace;--radius:6px;--border:1px solid #30363d;--shadow:none;--padding:1.25rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6}.app-wrapper{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--bg-card);border-bottom:var(--border);padding:1rem 1.5rem}.header-inner{justify-content:space-between;align-items:center;max-width:52rem;margin:0 auto;display:flex}.logo-area{align-items:center;gap:.6rem;display:flex}.logo-icon{flex-shrink:0;width:24px;height:24px}.app-title{font-family:var(--font-display);color:var(--heading);font-size:1.1rem;font-weight:700}.contact-link{color:var(--text-dim);font-size:.8rem;text-decoration:none;transition:color .15s}.contact-link:hover{color:var(--accent)}.header-tagline{display:none}.app-main{flex:1;padding:1.5rem 1rem}.content-grid{gap:1rem;width:100%;max-width:52rem;margin:0 auto;display:grid}.card{background:var(--bg-card);border-radius:var(--radius);border:var(--border);box-shadow:var(--shadow);padding:var(--padding)}.card-title{font-family:var(--font-display);color:var(--heading);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem;font-size:.85rem;font-weight:600}.card-text{color:var(--text);font-size:.9rem;line-height:1.65}.inline-link{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .15s}.inline-link:hover{border-bottom-color:var(--accent)}.password-input{width:100%;font-family:var(--font);color:var(--text);background:var(--bg-input);border:var(--border);border-radius:var(--radius);outline:none;padding:.75rem .875rem;font-size:1rem;transition:border-color .15s,box-shadow .15s;display:block}.password-input::placeholder{color:var(--text-dim);opacity:.7}.password-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input-actions{flex-wrap:wrap-reverse;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.generate-btn{font-family:var(--font);border-radius:var(--radius);background:var(--accent);color:var(--bg);cursor:pointer;border:none;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:opacity .15s}.generate-btn:hover{opacity:.85}.generate-btn:disabled{opacity:.5;cursor:not-allowed}.generate-btn.loading:after{content:"";vertical-align:middle;border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:.75em;height:.75em;margin-left:.5em;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.show-password-toggle{align-items:center;gap:.3rem;display:flex}.show-password-checkbox{accent-color:var(--accent)}.show-password-label{color:var(--text-dim);cursor:pointer;font-size:.75rem}.progress-track{background:var(--accent-dim);border-radius:99px;height:6px;margin-bottom:.4rem;overflow:hidden}.progress-fill{border-radius:99px;height:100%;transition:width .3s}.strength-labels{text-align:center;color:var(--text-dim);grid-template-columns:repeat(5,1fr);font-size:.6rem;display:grid}.checklist-grid{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.check-item{align-items:center;display:flex}.check-svg{flex-shrink:0;width:1.25rem;height:1.25rem;margin-right:.2rem}.check-label{color:var(--text-dim);font-size:.8rem}.crack-times-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:640px){.crack-times-grid{grid-template-columns:1fr}}.crack-time-heading{font-family:var(--font-display);color:var(--heading);margin-bottom:.35rem;font-size:.8rem;font-weight:600;text-decoration:none}.crack-time-value{color:var(--danger);font-size:.9rem;font-weight:700}.crack-time-fact{color:var(--text-dim);margin-top:.2rem;font-size:.8rem;font-style:italic}.leak-status{align-items:flex-start;gap:.4rem;display:flex}.warning-svg{flex-shrink:0;width:1.25rem;height:1.25rem}.leak-text{color:var(--warning);font-size:.85rem}.warnings-list{gap:.75rem;margin-top:.6rem;font-size:.85rem;display:grid}.warnings-inner{margin-bottom:.75rem}.tips-list{color:var(--text);flex-direction:column;gap:.35rem;font-size:.85rem;list-style:none;display:flex}.tips-list li:before{content:"· ";color:var(--accent);font-weight:700}.improvements-list{margin-top:.35rem}.app-footer{background:var(--bg-card);border-top:var(--border);padding:.75rem 1.5rem}.footer-inner{text-align:center;max-width:52rem;color:var(--text-dim);margin:0 auto;font-size:.75rem}[data-theme=terminal] .app-header{background:#010409}[data-theme=terminal] .app-title:before{content:"$ ";color:#39d353;font-weight:400}[data-theme=terminal] .header-tagline{text-align:left;max-width:52rem;margin:.25rem auto 0;display:block}[data-theme=terminal] .header-tagline:after{content:"Type a password to begin analysis...";color:#8b949e;font-family:JetBrains Mono,monospace;font-size:.7rem}[data-theme=terminal] .card-title:before{content:"# ";color:#39d353;font-weight:400}[data-theme=terminal] .password-input{caret-color:#39d353;font-family:JetBrains Mono,monospace}[data-theme=terminal] .password-input::placeholder{color:#484f58}[data-theme=terminal] .generate-btn{letter-spacing:.02em;font-family:JetBrains Mono,monospace}[data-theme=terminal] .tips-list li:before{content:"> "}[data-theme=terminal] .footer-inner:before{content:"exit code: 0 — ";color:#39d353}@media (max-width:640px){.app-header{padding:.75rem 1rem}.app-main{padding:1rem .75rem}.app-title{font-size:.95rem}.header-inner{flex-direction:column;gap:.4rem}.checklist-grid{flex-direction:column}.crack-times-grid{grid-template-columns:1fr}}
