*{box-sizing:border-box}body{margin:0;font-family:Nunito,system-ui,sans-serif;color:#2d2a32;min-height:100vh;background:radial-gradient(circle at 20% 20%,#f7d6e8,transparent 40%),radial-gradient(circle at 80% 70%,#d6dcf7,transparent 45%),#fbf6fb}
.lock{min-height:100vh;display:grid;place-items:center;padding:24px}
.lock-card{background:#fff;max-width:420px;width:100%;border-radius:26px;padding:36px 30px;text-align:center;box-shadow:0 18px 40px rgba(60,40,90,.12)}
.lock-ic{font-size:2.6rem}h1{font-family:Fredoka,sans-serif;font-weight:600;font-size:1.7rem;margin:.3em 0}
p{color:#6b6570}form{display:grid;gap:12px;margin-top:18px}
input[type=password]{font:inherit;padding:13px 16px;border:2px solid #e9e0ef;border-radius:14px;text-align:center}input[type=password]:focus{outline:none;border-color:#9b6fd8}
.rem{font-size:.9rem;color:#6b6570;display:flex;gap:8px;justify-content:center;align-items:center}
button{font:inherit;font-weight:800;background:#9b6fd8;color:#fff;border:0;border-radius:999px;padding:13px;cursor:pointer}button:disabled{opacity:.7}
.err{color:#c0392b;font-weight:700;min-height:1.2em;margin:0}.small{font-size:.85rem;margin-top:22px}.small a{color:#7a4fc0;font-weight:800}
