:root{--bg:#141618;--card:#1c1f22;--ink:#e8e6e1;--dim:#9aa0a6;--line:#2e3338;--gold:#c9a227;}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;}
.wrap{max-width:44rem;margin:0 auto;padding:2.5rem 1.2rem 4rem;}
h1{font-size:1.5rem;margin:0 0 .2rem;letter-spacing:.01em}
.sub{color:var(--dim);margin:0 0 2rem;font-size:.95rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:1.3rem 1.3rem 1.5rem;margin:0 0 1.3rem}
label{display:block;margin:0 0 1rem}
label span{display:block;font-size:.85rem;color:var(--dim);margin:0 0 .35rem}
input,select,textarea{width:100%;font:inherit;padding:.6rem .7rem;background:#111416;color:var(--ink);border:1px solid var(--line);border-radius:3px}
textarea{min-height:9rem;resize:vertical}
button{font:inherit;padding:.65rem 1.3rem;border:1px solid var(--gold);background:transparent;color:var(--gold);border-radius:3px;cursor:pointer}
button:hover{background:var(--gold);color:#141618}
button.ghost{border-color:var(--line);color:var(--dim)}
button:disabled{opacity:.5;cursor:default}
.row{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}
code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.out{background:#111416;border:1px solid var(--line);border-radius:3px;padding:.7rem;word-break:break-all;font-family:ui-monospace,monospace;font-size:.95rem}
.k{font-size:.8rem;color:var(--dim);text-transform:uppercase;letter-spacing:.08em;margin:1rem 0 .3rem}
.err{color:#e0675f;margin:.8rem 0 0;min-height:1.3em}
.ok{color:#7fb77e}
.hide{display:none}
.note{color:var(--dim);font-size:.88rem;border-left:2px solid var(--line);padding-left:.8rem;margin:1.2rem 0 0}
