@font-face{font-family:Allround;src:url(/f/400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Allround;src:url(/f/700.woff2)format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Allround;src:url(/f/800.woff2)format("woff2");font-weight:800;font-display:swap}:root{--yellow:#ffc800;--yellow-edge:#e0a500;--yellow-ink:#3c2a00;--yellow-soft:#fff5cc;--yellow-line:#ffe17a;--blue:#1cb0f6;--blue-edge:#1899d6;--blue-soft:#ddf4ff;--blue-line:#84d8ff;--red:#ff4b4b;--red-edge:#ea2b2b;--red-soft:#ffdfe0;--red-ink:#b7171b;--yellow-text:#8a5a00;--green-soft:#e9f9d9;--green-text:#3d8f00;--purple-soft:#f3e3ff;--purple-line:#ead1ff;--purple-text:#8a3fbf;--bg:#fff;--surface:#fff;--sunk:#f7f7f7;--line:#e5e5e5;--line-strong:#d7d7d7;--text:#4b4b4b;--strong:#3c3c3c;--muted:#777;--faint:#afafaf;--shadow:0 2px 0 var(--line);--r:16px;--r-s:12px;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#131f24;--surface:#131f24;--sunk:#202f36;--line:#37464f;--line-strong:#52656d;--text:#dce6ec;--strong:#f1f7fb;--muted:#8fa3ad;--faint:#52656d;--yellow-soft:#3a3110;--yellow-line:#7a6008;--blue-soft:#10303f;--blue-line:#1f6f93;--red-soft:#3d1c1e;--red-ink:#ff8b8b;--yellow-text:#ffd54a;--green-soft:#1d3312;--green-text:#8ee04d;--purple-soft:#2e1f3d;--purple-line:#5a3d78;--purple-text:#d9a6ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#131f24;--surface:#131f24;--sunk:#202f36;--line:#37464f;--line-strong:#52656d;--text:#dce6ec;--strong:#f1f7fb;--muted:#8fa3ad;--faint:#52656d;--yellow-soft:#3a3110;--yellow-line:#7a6008;--blue-soft:#10303f;--blue-line:#1f6f93;--red-soft:#3d1c1e;--red-ink:#ff8b8b;--yellow-text:#ffd54a;--green-soft:#1d3312;--green-text:#8ee04d;--purple-soft:#2e1f3d;--purple-line:#5a3d78;--purple-text:#d9a6ff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font:400 16px/1.55 Allround,Apple SD Gothic Neo,Noto Sans KR,sans-serif}button,input,textarea,select{font:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.btn{--c:var(--yellow);--e:var(--yellow-edge);--ink:var(--yellow-ink);border-radius:var(--r);background:var(--c);min-height:50px;color:var(--ink);box-shadow:0 4px 0 var(--e);letter-spacing:.02em;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;border:0;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:16px;font-weight:800;transition:transform 80ms ease-out,box-shadow 80ms ease-out,filter .12s;display:inline-flex}.btn:hover{filter:brightness(1.04)}.btn:active,.btn.down{box-shadow:0 0 0 var(--e);transform:translateY(4px)}.btn.wide{width:100%}.btn.blue{--c:var(--blue);--e:var(--blue-edge);--ink:#fff}.btn.red{--c:var(--red);--e:var(--red-edge);--ink:#fff}.btn.ghost{--c:var(--surface);--e:var(--line);--ink:var(--blue);border:2px solid var(--line);box-shadow:0 2px 0 var(--line)}.btn.ghost:active{box-shadow:none;transform:translateY(2px)}.btn:disabled{--c:var(--line);--e:var(--line);--ink:var(--faint);cursor:default;box-shadow:0 4px 0 var(--line);filter:none;transform:none}.btn.small{border-radius:var(--r-s);min-height:40px;padding:0 14px;font-size:14px}.field{border:2px solid var(--line);border-radius:var(--r);background:var(--sunk);width:100%;min-height:54px;color:var(--strong);outline:none;padding:0 16px;font-size:17px;font-weight:700;transition:border-color .15s,background .15s}.field::placeholder{color:var(--faint);font-weight:700}.field:focus{border-color:var(--blue-line);background:var(--surface)}.field.bad{border-color:var(--red);background:var(--red-soft);animation:shake .38s var(--ease-out)}textarea.field{resize:vertical;min-height:110px;padding:14px 16px;font-weight:400;line-height:1.5}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(3px)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.gate{width:100%;max-width:420px;min-height:100dvh;padding:max(48px, 12dvh) 20px calc(28px + env(safe-area-inset-bottom));animation:rise .42s var(--ease-out) both;flex-direction:column;gap:32px;margin:0 auto;display:flex}.brand{flex-direction:column;align-items:center;gap:16px;display:flex}.brand h1{color:var(--strong);letter-spacing:-.01em;margin:0;font-size:34px;font-weight:800}.brand.small h1{font-size:24px}.mark{background:var(--yellow);width:76px;height:76px;color:var(--yellow-ink);box-shadow:0 5px 0 var(--yellow-edge);animation:pop .52s var(--ease-spring) both 80ms;border-radius:24px;place-items:center;display:grid}.brand.small .mark{border-radius:20px;width:60px;height:60px}.brand.small .mark svg{width:32px;height:32px}.stack{flex-direction:column;gap:12px;display:flex}.field.key{letter-spacing:.04em;text-align:center;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:16px}.note{min-height:22px;color:var(--red);text-align:center;margin:0;font-size:14px;font-weight:700}.stack .btn{margin-top:4px}.btn.loading{color:#0000;position:relative}.btn.loading:after{content:"";border:3px solid var(--faint);border-top-color:#0000;border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}.segs{border-radius:var(--r);grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.segs.bad{animation:shake .38s var(--ease-out)}.segs.bad .seg{border-color:var(--red)}.seg{border:2px solid var(--line);border-radius:var(--r);background:var(--surface);min-height:54px;box-shadow:0 3px 0 var(--line);color:var(--muted);cursor:pointer;font-size:16px;font-weight:800;transition:transform 80ms,box-shadow 80ms,border-color .12s,background .12s,color .12s}.seg:active{box-shadow:none;transform:translateY(3px)}.seg[aria-pressed=true]{border-color:var(--blue-line);background:var(--blue-soft);color:var(--blue-edge);box-shadow:0 3px 0 var(--blue-line)}.pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pair label{position:relative}.pair .field{text-align:right;padding-right:44px}.pair span{color:var(--muted);pointer-events:none;font-weight:700;position:absolute;top:50%;right:16px;transform:translateY(-50%)}footer{text-align:center;margin-top:auto}.link{color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:12px;font-size:13px;text-decoration:underline}.boot{place-items:center;min-height:100dvh;display:grid}.boot .mark{animation:pop .52s var(--ease-spring) both, breathe 1.6s ease-in-out infinite .6s}@keyframes breathe{50%{transform:scale(.94)}}.shade{z-index:10;background:#00000073;justify-content:center;align-items:flex-end;animation:.2s both fade;display:flex;position:fixed;inset:0}.shade.out{animation:.2s reverse both fade}@keyframes fade{0%{opacity:0}}.sheet{background:var(--surface);width:100%;max-width:640px;max-height:86dvh;animation:up .32s var(--ease-out) both;padding-bottom:env(safe-area-inset-bottom);border-radius:24px 24px 0 0;flex-direction:column;display:flex}@keyframes up{0%{transform:translateY(100%)}}.sheet-head{border-bottom:2px solid var(--line);justify-content:space-between;align-items:center;padding:18px 20px 12px;display:flex}.sheet-head h2{color:var(--strong);margin:0;font-size:19px;font-weight:800}.sheet-body{padding:8px 20px 24px;font-size:15px;overflow:auto}.sheet-body h3{color:var(--strong);margin:20px 0 6px;font-size:16px;font-weight:800}.sheet-body p{margin:0 0 6px}.sheet-body .meta{color:var(--muted);margin-top:20px;font-size:13px}
