@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--bg:#fff;--ink:#1d1d1f;--muted:#59595f;--surface:#f5f5f7;--line:#e0e0e0;--blue:#0066cc;--focus:#0071e3;--danger:#b42318;--success:#167348;font-family:'Noto Sans KR',sans-serif;color:var(--ink);background:var(--bg);font-size:15px}*{box-sizing:border-box}body{margin:0}html[lang=ja]{font-family:'Noto Sans JP',sans-serif}a{color:var(--blue);text-decoration:none;text-underline-offset:4px}a:hover{text-decoration:underline}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus)}::selection{background:#cce5ff;color:var(--ink)}input{caret-color:var(--blue)}.nav{height:44px;background:#000;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1120px)/2));gap:30px}.nav a{color:#fff;font-size:12px}.nav .brand{font-size:15px;font-weight:700}.nav>div{display:flex;align-items:center;gap:24px}.lang{color:#ddd;background:none;border:0;font-size:12px;padding:5px}.buyer{max-width:1120px;padding:0 28px;margin:auto}.hero{text-align:center;padding:76px 0 60px}.hero h1{font-size:clamp(32px,4.6vw,48px);line-height:1.3;letter-spacing:-.035em;margin:0;white-space:pre-line;font-weight:700}.hero p{font-size:17px;color:var(--muted);margin:22px auto 0;max-width:54ch;line-height:1.8}h2{font-size:23px;letter-spacing:-.025em;margin:0 0 12px}h3{font-size:18px;margin:0 0 7px}.muted,small,.fine{color:var(--muted)}p{line-height:1.7}.redeem-layout{max-width:640px;margin:0 auto;padding-bottom:60px}.form-section{min-width:0}.form-section>.muted{margin:0 0 28px}label{display:block;font-weight:500;font-size:13px;margin:20px 0 8px}input,select{width:100%;border:1px solid #96969c;border-radius:8px;min-height:46px;padding:10px 12px;background:#fff;color:var(--ink)}input::placeholder{color:#69696f}small{display:block;font-size:12px;line-height:1.7;margin-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:0}.form-row>div{min-width:0}.primary{border:0;background:var(--blue);color:#fff;border-radius:999px;padding:13px 24px;font-weight:500}.primary:hover{background:#0056ad}form>.primary{margin-top:28px;width:100%}.fine{font-size:12px;text-align:center}.products{border-top:1px solid var(--line);display:flex;gap:80px;padding:32px 0 48px}.products p{font-size:13px;color:var(--muted);margin:0}footer{background:var(--surface);padding:24px max(28px,calc((100% - 1064px)/2));display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}footer>div{display:flex;gap:24px}#notice{padding:14px 16px;background:var(--surface);border-radius:8px;font-size:14px}#notice.error{color:var(--danger)}.license-result{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.license-result code{display:block;overflow-wrap:anywhere;font-size:18px;margin:18px 0}.secondary{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 14px;color:var(--blue)}.license-result button{margin-right:14px}.admin{max-width:1280px;margin:48px auto;padding:0 28px}.admin header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.admin h1{font-size:32px;letter-spacing:-.03em;margin:0}.admin header p{margin:8px 0;color:var(--muted)}.toolbar{display:flex;gap:16px;margin:24px 0}.toolbar>*{max-width:280px}.table-wrap{overflow:auto;border-block:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;font-variant-numeric:tabular-nums;white-space:nowrap}th{font-weight:500;color:var(--muted);background:var(--surface)}td,th{padding:16px 18px;border-bottom:1px solid var(--line)}td small{margin:3px 0 0}td button{font-size:12px;margin-right:6px}.badge{display:inline-block;background:var(--surface);padding:4px 9px;border-radius:5px;font-size:12px}.badge.review{color:#925300;background:#fff4dc}.badge.issued{color:var(--success);background:#edf8f1}.badge.revoked{color:var(--danger);background:#fff0ee}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin:48px 0}.admin details{border-bottom:1px solid var(--line);padding:18px 0}.admin summary{cursor:pointer;font-weight:600}.empty{text-align:center;padding:48px;color:var(--muted)}.key{font-family:ui-monospace,monospace}.admin pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:380px;overflow:auto;background:var(--surface);padding:20px}.admin .inline{display:flex;gap:12px;align-items:end}.inline>*{flex:1}.inline button{flex:0 0 auto}.admin form .primary{width:auto}.admin .status{min-height:24px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:760px){.hero{padding:48px 0 38px}.hero p{font-size:15px}.products{gap:30px;justify-content:space-between}.products h3{font-size:15px}.products p{max-width:19ch}footer{flex-direction:column}.admin-grid{grid-template-columns:1fr;gap:24px}.admin header{align-items:start;flex-direction:column}.toolbar{flex-wrap:wrap}.form-row{grid-template-columns:1fr;gap:0}.admin{padding:0 18px}.buyer{padding:0 22px}.nav>div{gap:16px}}

.policy-copy{max-width:72ch;margin:0 auto 72px}.policy-copy h2{margin-top:36px}.policy-copy p{line-height:1.9}.policy-copy hr{border:0;border-top:1px solid var(--line);margin:48px 0}
