:root {
  color-scheme: dark;
  font-family: Arial, Helvetica, sans-serif;
  color: #e5e7eb;
  background: #121212;
}
* { box-sizing: border-box; }
body { margin: 0; line-height: 1.55; }
a { color: #80edac; text-underline-offset: .2em; }
header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem clamp(1rem, 4vw, 3rem);
  background: #151c18;
  border-bottom: 1px solid #344339;
}
.brand { color: #e5e7eb; font-size: 1.2rem; font-weight: 750; text-decoration: none; }
.brand span { color: #80edac; }
main { padding: clamp(1.5rem, 6vw, 4rem) 1rem; }
.login-card {
  max-width: 30rem;
  margin: 0 auto;
  padding: clamp(1.25rem, 4vw, 2rem);
  background: #1a201c;
  border: 1px solid #303b34;
  border-radius: 15px;
}
.eyebrow { color: #80edac; letter-spacing: .13em; font-size: .72rem; font-weight: 700; }
h1 { margin: .4rem 0; font-size: clamp(1.8rem, 5vw, 2.4rem); line-height: 1.15; }
.muted { color: #a5ada8; }
form { margin-top: 1.4rem; }
label { display: block; margin: .9rem 0; font-weight: 650; }
input:not([type="checkbox"]) {
  display: block;
  width: 100%;
  margin-top: .35rem;
  padding: .75rem;
  font: inherit;
  color: inherit;
  background: #151c18;
  border: 1px solid #405246;
  border-radius: 7px;
}
.check { display: flex; align-items: center; gap: .5rem; font-size: .88rem; font-weight: 400; }
input[type="checkbox"] { accent-color: #1db954; }
button {
  width: 100%;
  padding: .75rem 1rem;
  border: 0;
  border-radius: 8px;
  background: #1db954;
  color: #07150c;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}
button:hover { background: #36cf6b; }
button:disabled { opacity: .6; cursor: wait; }
:focus-visible { outline: 2px solid #80edac; outline-offset: 3px; }
#form-message { min-height: 1.4em; font-size: .88rem; overflow-wrap: anywhere; }
nav { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .75rem; margin-top: 1.3rem; font-size: .88rem; }

/* HLI customer design tokens; original reusable ReleaseGrove layout retained. */
:root{color-scheme:light;--bg:#f7f4ed;--panel:#fffdf8;--text:#24221e;--muted:#62645e;--line:#d8d3c8;--accent:#741d30}body{background:var(--bg);color:var(--text)}header{background:#24221e;color:#fff7ec}.brand,header a{color:inherit}.brand span{display:block;font-size:11px;letter-spacing:.2em;margin-top:4px}h1{font-family:Georgia,serif}.login-card{background:var(--panel);border-color:var(--line)}input{background:#fff;color:var(--text);border:1px solid #9b9b92}button{background:var(--accent);color:white;border-color:var(--accent)}a{color:var(--accent)}.muted{color:var(--muted)}[hidden]{display:none!important}.private-key{display:block;overflow-wrap:anywhere;white-space:pre-wrap;background:#eee9df;padding:12px;border-radius:6px;font:14px/1.6 monospace}footer{max-width:620px;margin:24px auto;color:var(--muted);font-size:12px}details{margin-top:24px}details p{font-size:14px}progress{width:100%}nav{flex-wrap:wrap;gap:12px}label input:not([type=checkbox]){box-sizing:border-box;width:100%}@media(max-width:540px){main{padding:20px 14px}header{padding:18px 14px;gap:12px;align-items:flex-start}.brand{font-size:17px}header>a:last-child{font-size:12px}.login-card{padding:24px 20px}h1{font-size:32px}}

input:not([type=checkbox]){background:#fff;color:#24221e;border-color:#9b9b92}.eyebrow{color:#741d30}.brand span{color:#ece0c9}button:hover{background:#5d1726}:focus-visible{outline-color:#741d30}input[type=checkbox]{accent-color:#741d30}
