:root{--stone-900:#101216;--stone-800:#14161a;--stone-700:#1d2026;--stone-600:#282c34;--parchment:#efe6d2;--parchment-dim:#cfc4ac;--ink:#2a2620;--brass:#c9962e;--brass-dim:#8a6a24;--garnet:#8e2f3a;--garnet-bright:#c0424f;--sage:#6f8f6a;--radius:14px;--serif:"Palatino Linotype", Palatino, "Book Antiqua", Cambria, Georgia, serif;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--vvh:100vh}*{box-sizing:border-box}html,body,#root{background:var(--stone-800);height:100%;color:var(--parchment);font-family:var(--sans);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0}body{background-image:radial-gradient(circle at 50% 0%, #1f232a 0%, var(--stone-800) 60%)}h1,h2,h3{font-family:var(--serif);letter-spacing:.01em;margin:0;font-weight:600}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}.btn{border-radius:var(--radius);background:var(--brass);color:var(--ink);box-shadow:0 2px 0 var(--brass-dim);justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.4rem;font-size:1.05rem;font-weight:650;transition:transform 80ms,filter .15s;display:inline-flex}.btn:active{filter:brightness(.95);transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--ghost{color:var(--parchment);border:1px solid var(--stone-600);box-shadow:none;background:0 0}.btn--danger{background:var(--garnet);color:var(--parchment);box-shadow:0 2px #5e1f27}.btn--block{width:100%}.card{background:var(--stone-700);border:1px solid var(--stone-600);border-radius:var(--radius);padding:1.2rem}.input{border-radius:var(--radius);border:1px solid var(--stone-600);background:var(--stone-900);width:100%;color:var(--parchment);outline:none;padding:.85rem 1rem;font-size:1.05rem}.input:focus{border-color:var(--brass-dim)}.muted{color:var(--parchment-dim)}.screen{min-height:var(--vvh);padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));flex-direction:column;display:flex}.row{align-items:center;gap:.75rem;display:flex}.grow{flex:1}.code-display{font-family:var(--serif);letter-spacing:.25em;color:var(--brass);text-align:center;font-size:clamp(3rem,12vw,7rem)}.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.banner{background:var(--garnet);color:var(--parchment);text-align:center;border-radius:10px;padding:.6rem 1rem;font-size:.95rem}
