/* ACCOUNT KIT — Snake style (infra README "Snake style reference"). One file, no build step, no Tailwind needed. */
:root{
  --acc-bg:#0f172a;--acc-surface:#1e293b;--acc-text:#e2e8f0;--acc-muted:#94a3b8;--acc-faint:#64748b;--acc-placeholder:#94a3b8;
  --acc-border:#334155;--acc-input-border:#475569;--acc-accent:#22c55e;--acc-accent-text:#052e16;--acc-link:#4ade80;
  --acc-danger:#ef4444;--acc-danger-text:#fff;--acc-error:#f87171;
  --acc-radius:.75rem;--acc-radius-card:1rem;--acc-radius-badge:.25rem;
  --acc-font:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji";--acc-font-mono:ui-monospace,monospace;
  --acc-focus-ring:2px solid var(--acc-accent);
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;background:var(--acc-bg);color:var(--acc-text);-webkit-tap-highlight-color:transparent;
  font-family:var(--acc-font);line-height:1.5}
body{min-height:100dvh}
a{color:var(--acc-link);text-decoration:none}
button,input{font:inherit;border:0}
.acc-main{max-width:24rem;margin:0 auto;padding:4rem 1.5rem 1.5rem}
.acc-title{font-size:2.25rem;line-height:2.5rem;font-weight:900;text-align:center;margin:0 0 .5rem}
.acc-tag{text-align:center;color:var(--acc-muted);margin:0 0 2rem}
.acc-join{text-align:center;font-size:.875rem;margin:-1.25rem 0 .75rem}
.acc-h2{font-size:1.25rem;font-weight:700;margin:0}
.acc-h3{font-size:.875rem;font-weight:600;margin:0 0 .25rem}
.card{background:var(--acc-surface);border:1px solid var(--acc-border);border-radius:var(--acc-radius-card);padding:1rem}
.stack>*+*{margin-top:.75rem}
.btn{background:var(--acc-accent);color:var(--acc-accent-text);font-weight:700;border-radius:var(--acc-radius);padding:.6rem 1rem;transition:transform .05s;cursor:pointer}
.btn:active{transform:scale(.96)} .btn:disabled{opacity:.4}
.btn-ghost{background:var(--acc-border);color:var(--acc-text)} .btn-red{background:var(--acc-danger);color:var(--acc-danger-text)}
.btn-sm{font-size:.75rem;padding:.35rem .7rem}
.w-full{width:100%}
.inp{background:var(--acc-bg);border:1px solid var(--acc-input-border);border-radius:var(--acc-radius);padding:.6rem .8rem;width:100%;color:var(--acc-text)}
.inp:focus{outline:var(--acc-focus-ring)}
.inp::placeholder{color:var(--acc-placeholder);opacity:1}
.err{color:var(--acc-error);font-size:.875rem;margin:0;min-height:0}
.err:empty{display:none}
.muted{color:var(--acc-muted);font-size:.875rem}
.center{text-align:center}
.or{display:flex;align-items:center;gap:.75rem;font-size:.75rem;color:var(--acc-faint)}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--acc-border)}
.mono-code{font-family:var(--acc-font-mono);font-weight:900;letter-spacing:.3em;color:var(--acc-link)}
.acc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:.875rem;color:var(--acc-muted)}
.link{background:none;color:var(--acc-link);padding:0;cursor:pointer}
.badge{font-size:10px;text-transform:uppercase;background:var(--acc-border);border-radius:var(--acc-radius-badge);padding:0 .25rem}
.list{list-style:none;margin:0;padding:0}
.row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem 0}
.row .name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gap{display:flex;gap:.25rem}
.mt{margin-top:1rem}
.acc-logo{width:2.25rem;height:2.25rem;vertical-align:-.3rem}
.acc-ico{width:1.1em;height:1.1em;vertical-align:-.18em;margin-right:.35em}
/* autofill keeps the themed input colours (browsers otherwise paint a light-yellow box) */
.inp:-webkit-autofill,.inp:-webkit-autofill:hover,.inp:-webkit-autofill:focus{-webkit-text-fill-color:var(--acc-text);caret-color:var(--acc-text);-webkit-box-shadow:0 0 0 1000px var(--acc-bg) inset;transition:background-color 9999s}
/* keyboard focus ring for buttons/links (mouse/touch clicks show none); inputs keep .inp:focus */
.btn:focus-visible,.link:focus-visible,a:focus-visible{outline:var(--acc-focus-ring);outline-offset:2px}
