:root{--bg:#061120;--card:#0d1b2f;--card2:#111f35;--gold:#d4af37;--gold2:#f3d77a;--silver:#d9e1ea;--muted:#91a1b5;--line:rgba(255,255,255,.1);--green:#42e08f;--red:#ff5c6c;--yellow:#ffd166;--blue:#5bc0ff;--shadow:0 18px 60px rgba(0,0,0,.42)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top,#142642 0,#061120 45%,#03070d 100%);color:#fff}body{padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom)}button,input,select{font:inherit}.app-shell{width:min(460px,100%);margin:0 auto;padding:20px 0 28px}.hero-card,.password-card,.settings-card,.security-card{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:18px;margin:14px 0;backdrop-filter:blur(12px)}.top-row{display:flex;align-items:center;justify-content:space-between}.logo{width:86px;height:86px;border-radius:24px;object-fit:cover;box-shadow:0 10px 32px rgba(0,0,0,.38)}h1{font-size:36px;letter-spacing:5px;margin:10px 0 0;background:linear-gradient(90deg,var(--gold2),#fff,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-card p{margin:6px 0 0;color:var(--muted);letter-spacing:.8px}.language-select{background:#09182b;color:var(--silver);border:1px solid rgba(212,175,55,.5);border-radius:14px;padding:10px 12px}.section-label{display:block;color:var(--gold2);font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:1.4px;margin-bottom:10px}.password-box{display:flex;gap:10px;background:#071223;border:1px solid rgba(212,175,55,.32);border-radius:18px;padding:10px}#passwordOutput{width:100%;background:transparent;border:0;outline:0;color:#fff;font-size:22px;font-weight:800;letter-spacing:1px}.icon-btn,.primary-btn,.mode-btn,.stepper button{border:0;cursor:pointer;border-radius:15px;font-weight:800}.icon-btn{background:rgba(255,255,255,.08);color:var(--silver);padding:10px 12px}.primary-btn{width:100%;margin-top:16px;padding:16px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#061120;box-shadow:0 12px 32px rgba(212,175,55,.25);text-transform:uppercase;letter-spacing:1px}.strength-line{margin-top:12px;color:var(--muted)}.message{height:20px;margin:10px 0 0;color:var(--green);font-weight:700}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-btn{min-height:48px;background:rgba(255,255,255,.06);color:var(--silver);border:1px solid var(--line);padding:10px}.mode-btn.active{background:linear-gradient(135deg,rgba(212,175,55,.95),rgba(243,215,122,.92));color:#061120;border-color:transparent}.length-row{display:flex;align-items:center;justify-content:space-between;margin:18px 0;color:var(--silver)}.stepper{display:flex;align-items:center;gap:12px;background:#071223;border:1px solid var(--line);border-radius:16px;padding:6px}.stepper button{width:38px;height:38px;background:rgba(255,255,255,.08);color:#fff;font-size:22px}.stepper strong{min-width:28px;text-align:center}.custom-panel{display:grid;grid-template-columns:1fr 1fr;gap:12px;color:var(--silver)}.custom-panel label{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:14px;padding:12px}input[type=checkbox]{accent-color:var(--gold)}.security-card{color:var(--muted);font-size:14px}.security-card strong{color:var(--silver)}@media(max-width:380px){.mode-grid,.custom-panel{grid-template-columns:1fr}h1{font-size:30px}.password-box{flex-direction:column}.icon-btn{width:100%}}
