:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#111;background:#f6f7fb}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;place-items:center;padding:24px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}button,input{font:inherit}.page{width:min(720px,100%);display:grid;gap:16px}.card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 12px 30px #00000014;border:1px solid rgba(0,0,0,.06)}.header h1{margin:0 0 6px;font-size:28px;letter-spacing:-.02em}.sub{margin:0;color:#444;line-height:1.35;text-align:center}.pill{display:inline-block;padding:2px 8px;border-radius:999px;background:#f0f2f7;border:1px solid #e3e7f1;font-size:.95em}.stage{margin:20px 0 10px;display:grid;place-items:center;min-height:200px}.form{display:grid;gap:10px}.label{font-weight:600;color:#222}.row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.input{height:44px;padding:10px 12px;border-radius:10px;border:1px solid #d7dbe7;outline:none;transition:box-shadow .12s ease,border-color .12s ease}.input:focus{border-color:#7aa7ff;box-shadow:0 0 0 4px #7aa7ff38}.btn{height:44px;padding:0 14px;border-radius:10px;border:1px solid #1a1a1a;background:#1a1a1a;color:#fff;cursor:pointer;transition:transform .12s ease,opacity .12s ease;font-weight:650}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn.secondary{background:#fff;color:#111;border-color:#cfd6ea}.meta{display:flex;justify-content:space-between;gap:12px;color:#666;font-size:13px}.result{margin-top:14px;padding:14px;border-radius:12px;border:1px solid #e8eaf2;background:#fafbff}.result.win{border-color:#22c55e59;background:#22c55e14}.result.lose{border-color:#ef44444d;background:#ef444412}.result h2{margin:0 0 6px}.muted{margin:0 0 10px;color:#444}.codeWrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.code{display:inline-block;padding:10px 12px;border-radius:10px;background:#fff;border:1px dashed rgba(0,0,0,.25);font-size:16px;letter-spacing:.08em}.tiny{margin:10px 0 0;color:#555;font-size:12px}.actions{margin-top:12px;display:flex;justify-content:flex-end}.footer{color:#666;font-size:13px;text-align:center}.center-text{text-align:center}.pokeball{position:relative;width:140px;height:140px;border-radius:50%;overflow:hidden;border:6px solid #111;background:#fff;transform:translateZ(0)}.pokeball .top{position:absolute;inset:0;height:50%;background:#e53935;transform-origin:50% 100%}.pokeball .bottom{position:absolute;left:0;right:0;bottom:0;height:50%;background:#fff}.pokeball .band{position:absolute;left:0;right:0;top:calc(50% - 9px);height:18px;background:#111}.pokeball .button{position:absolute;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-50%);border-radius:50%;background:#fff;border:6px solid #111;box-shadow:inset 0 0 0 6px #eaeaea;z-index:2}.pokeball .shine{position:absolute;width:52px;height:52px;border-radius:50%;left:18px;top:18px;background:#ffffff59;filter:blur(.2px)}.pokeball:hover{animation:poke-wiggle .5s ease-in-out}@keyframes poke-wiggle{0%{transform:rotate(0)}25%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}75%{transform:rotate(-4deg)}to{transform:rotate(0)}}.pokeball.open{animation:open-shake .7s ease-in-out 1}.pokeball.open .top{animation:open-lid .9s cubic-bezier(.2,.9,.2,1) .7s forwards}.pokeball.open .button{animation:button-glow .6s ease-in-out .9s 2}@keyframes open-shake{0%{transform:rotate(0) translateY(0)}15%{transform:rotate(-10deg) translateY(1px)}30%{transform:rotate(10deg) translateY(-1px)}45%{transform:rotate(-8deg) translateY(1px)}60%{transform:rotate(8deg) translateY(-1px)}75%{transform:rotate(-4deg) translateY(0)}to{transform:rotate(0) translateY(0)}}@keyframes open-lid{0%{transform:rotate(0)}55%{transform:rotate(-10deg)}to{transform:rotate(-145deg) translateY(-6px)}}@keyframes button-glow{0% {box-shadow: inset 0 0 0 6px #eaeaea;} 50% {box-shadow: inset 0 0 0 6px #eaeaea,0 0 18px rg :root {font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; color: #111; background: #f6f7fb;} * {box-sizing: border-box;} body {margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 24px;} button,input {font: inherit;}}}
