@import "https://fonts.googleapis.com/css2?family=Black+Han+Sans&display=swap";:root{--ink:#1c1c1e;--sub:#6b6b70;--line:#e3e3e7;--bg:#f4f4f6;--card:#fff;--accent:#5b3df5;--red:#e5484d;--yellow:#f5c518;--green:#30a46c;--blue:#3e63dd;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);margin:0}h1{margin:0;font-size:26px}h2{margin:0;font-size:20px}p{margin:0}.sub{color:var(--sub);font-size:14px}.err{color:var(--red);font-size:14px}.screen{max-width:480px;min-height:100svh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));background:var(--bg);flex-direction:column;margin:0 auto;display:flex}.screen.center{justify-content:center;align-items:center}.stack{flex-direction:column;gap:12px;width:100%;display:flex}.btn{text-align:center;background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:12px;padding:14px 16px;font-size:16px;font-weight:700;text-decoration:none;display:block}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:#fff}.btn.warn{color:#b26a00;background:#fff4e5;border:1px solid #f0d49c}.link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px;font-size:13px}.field{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:10px;padding:12px 14px;font-size:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}.note{color:var(--sub);background:#fffbe9;border:1px solid #f3e6a8;border-radius:8px;padding:8px 10px;font-size:12px}.pirate{--p-gold:#e3b341;--p-gold-deep:#b8862a;--p-cream:#f5e8c8;--p-tan:#cdb78d;--p-line:#5e4426;--p-red:#e0584f;min-height:100%;color:var(--p-cream);background:radial-gradient(125% 85% at 50% -8%,#16414f 0%,#0e2832 48%,#07151b 100%)}.pirate .screen{color:var(--p-cream);background:repeating-linear-gradient(90deg,#0000 0 44px,#0000000d 44px 46px),radial-gradient(135% 90% at 50% 0,#1a4655 0%,#0e2832 52%,#06141a 100%)}.pirate .screen.center{background:repeating-linear-gradient(90deg,#0000 0 44px,#0000000d 44px 46px),radial-gradient(135% 90% at 50% 0,#1a4655 0%,#0e2832 52%,#06141a 100%)}.pirate h1,.pirate h2{color:var(--p-gold);letter-spacing:.4px;text-shadow:0 2px #00000080;font-family:Black Han Sans,-apple-system,Apple SD Gothic Neo,sans-serif}.pirate .sub{color:var(--p-tan)}.pirate .err{color:#ff9a8a}.pirate .link{color:var(--p-gold)}.pirate .card{border:1px solid var(--p-line);color:var(--p-cream);background:linear-gradient(#3a2817 0%,#271a10 100%);border-radius:14px;box-shadow:0 7px 20px #00000080,inset 0 1px #e3b34124}.pirate .card .sub{color:var(--p-tan)}.pirate .btn{letter-spacing:.4px;color:#3a260a;text-shadow:0 1px #ffffff59;background:linear-gradient(#f5d271 0%,#e3b341 46%,#bd8c2c 100%);border:1px solid #8a6418;border-radius:12px;font-family:Black Han Sans,-apple-system,Apple SD Gothic Neo,sans-serif;box-shadow:0 4px #7a591a,0 8px 16px #0000006b}.pirate .btn:active{transform:translateY(2px);box-shadow:0 2px #7a591a,0 4px 9px #0000006b}.pirate .btn:disabled{opacity:.5;transform:none;box-shadow:0 4px #7a591a}.pirate .btn.ghost{color:var(--p-cream);border:1px solid var(--p-gold-deep);text-shadow:none;background:linear-gradient(#3c2a18,#241710);box-shadow:0 3px #140c06,0 6px 13px #0000006b}.pirate .btn.warn{color:#7a4a12;background:linear-gradient(#f1e2b4,#e6d099);border:1px solid #c9a45a;box-shadow:0 3px #b0883e}.pirate .field{color:var(--p-cream);border:1px solid var(--p-line);background:#241710;border-radius:10px}.pirate .field::placeholder{color:#9a8a66}.pirate .note{color:#5a3d12;background:linear-gradient(#efe2bd,#e6d3a3);border:1px solid #c9a45a;border-radius:8px}@keyframes pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes revealflash{0%{opacity:1}55%{opacity:.92}to{opacity:0}}@keyframes shuffle{0%{transform:rotate(-12deg)translate(-6px)scale(.95)}50%{transform:rotate(10deg)translate(6px)scale(1.05)}to{transform:rotate(-12deg)translate(-6px)scale(.95)}}@keyframes carddrop{0%{opacity:0;transform:translateY(-120vh)rotate(-10deg)}70%{opacity:1}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes cardpop{0%{opacity:0;transform:scale(.25)translateY(40px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes sparkle{0%,to{filter:brightness();transform:scale(1)rotate(0)}50%{filter:brightness(1.7);transform:scale(1.25)rotate(8deg)}}@keyframes flytochest{0%{opacity:1;transform:translate(0)scale(1)}70%{opacity:1}to{transform:var(--fly-to) scale(.3);opacity:0}}
