:root{
  color-scheme: dark;
  --ink:#080A10;
  --ink-2:#0F131D;
  --surface:#151A26;
  --line:#252C3D;
  --line-soft:#1D2333;
  --text:#E9EBF2;
  --text-2:#A2A9BD;
  --text-3:#6F778E;
  --violet:#8B6BFF;
  --violet-dim:#5B44B8;
  --font-display:"Bricolage Grotesque","IBM Plex Sans KR",system-ui,sans-serif;
  --font-body:"IBM Plex Sans KR",system-ui,-apple-system,"Apple SD Gothic Neo",sans-serif;
  --font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--ink);
  background-image:radial-gradient(900px 480px at 78% -12%, rgba(139,107,255,.13), transparent 62%);
  background-repeat:no-repeat;
  color:var(--text);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.8;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:760px;margin:0 auto;padding-inline:24px}
a{color:inherit}
.mono{
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--text-3);
}
.topbar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding-block:22px;border-bottom:1px solid var(--line-soft);
}
.brand{
  font-family:var(--font-display);font-weight:800;font-size:1.05rem;
  letter-spacing:-.02em;text-decoration:none;
}
.brand .dot{color:var(--violet)}
.topbar .mono{font-size:.68rem}
.topbar a.mono{text-decoration:none}
.topbar a.mono:hover{color:var(--text-2)}

main{padding-block:56px 40px}
h1{
  font-family:var(--font-display);font-weight:800;
  font-size:clamp(1.7rem,4.6vw,2.4rem);line-height:1.25;letter-spacing:-.03em;
  margin:0 0 10px;
}
.updated{margin:0 0 40px;color:var(--text-3);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em}
h2{
  font-family:var(--font-body);font-weight:700;font-size:1.08rem;letter-spacing:-.01em;
  margin:42px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line-soft);
}
h3{font-size:.98rem;font-weight:600;margin:24px 0 8px;color:var(--text)}
p,li{color:var(--text-2);font-size:.95rem}
p{margin:0 0 14px}
ul,ol{margin:0 0 14px;padding-left:20px}
li{margin-bottom:6px}
strong{color:var(--text);font-weight:600}
a.inline{color:var(--text);text-decoration:none;border-bottom:1px solid var(--violet-dim)}
a.inline:hover{border-bottom-color:var(--violet)}
.box{
  background:linear-gradient(180deg,var(--surface),var(--ink-2));
  border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin:20px 0;
}
.box p:last-child{margin-bottom:0}
table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:.9rem}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line-soft);vertical-align:top}
th{color:var(--text-3);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;white-space:nowrap}
td{color:var(--text-2)}
footer{
  border-top:1px solid var(--line-soft);padding-block:30px 56px;
}
.biz{
  display:flex;flex-wrap:wrap;gap:4px 22px;margin:0 0 24px;
  font-size:.8rem;line-height:1.7;
}
.biz > div{display:flex;gap:8px}
.biz dt{color:var(--text-3);white-space:nowrap;font-family:var(--font-body);font-size:.8rem;letter-spacing:0;text-transform:none;padding-top:0}
.biz dd{margin:0;color:var(--text-2)}
.biz a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.biz a:hover{color:var(--text);border-bottom-color:var(--violet-dim)}
.foot-bottom{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;
}
.links{display:flex;flex-wrap:wrap;gap:18px}
.links a{font-size:.86rem;color:var(--text-2);text-decoration:none;border-bottom:1px solid transparent}
.links a:hover{color:var(--text);border-bottom-color:var(--violet)}
.copy{font-family:var(--font-mono);font-size:.7rem;color:var(--text-3)}
@media (max-width:520px){
  main{padding-block:40px 32px}
  .topbar .mono{display:none}
}
