:root{--cyan:#0BB7D0;--navy:#04202F;--line:#dde5ea;--muted:#5b7180}
  *{box-sizing:border-box;margin:0}
  body{font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
    background:var(--navy);color:var(--navy);display:grid;place-items:center;min-height:100vh;padding:20px}
  .card{background:#fff;border-radius:16px;padding:34px;width:100%;max-width:380px;
    box-shadow:0 18px 50px rgba(0,0,0,.35)}
  h1{font-size:19px;letter-spacing:-.01em;margin-bottom:4px}
  .sub{color:var(--muted);font-size:14px;margin-bottom:26px}
  label{display:block;font-size:13px;color:var(--muted);margin:0 0 6px}
  input{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:9px;font:inherit;margin-bottom:16px}
  input:focus{outline:2px solid var(--cyan);outline-offset:-1px;border-color:transparent}
  button{width:100%;background:var(--navy);color:#fff;border:0;border-radius:9px;padding:12px;
    font:inherit;font-weight:600;cursor:pointer}
  button:disabled{opacity:.6;cursor:default}
  .err{color:#8c2020;font-size:13px;margin-top:14px;min-height:19px}
  .rule{height:5px;width:52px;background:var(--cyan);border-radius:4px;margin-bottom:20px}
