/* Shared layout, navigation and typography. */
:root{color-scheme:dark;--yellow:#dec328;--red:#ff5057;--muted:#bfbfbf;--blue:#55c7ed;--line:#383838}
*{box-sizing:border-box}
body{margin:0;background:#000;color:#fff;font-family:Arial,"Malgun Gothic",sans-serif;font-size:16px;line-height:1.6}
a{color:inherit;text-underline-offset:4px}
a:focus-visible{outline:2px solid var(--yellow);outline-offset:5px}
img{max-width:100%;height:auto}
.skip-link{position:absolute;left:16px;top:-70px;z-index:2;background:#fff;color:#000;padding:12px}
.skip-link:focus{top:12px}
.site-header{text-align:center;padding-top:18px}
.site-nav{display:flex;justify-content:center;align-items:center;gap:30px;min-height:50px;padding:0 20px}
.site-nav a{font-size:15px;text-decoration:none;white-space:nowrap}
.site-nav a[aria-current],.site-nav a:hover{color:var(--yellow)}
.brand{display:block;width:350px;margin:32px auto 0;line-height:0}
.brand img{display:block;width:100%}
.site-footer{text-align:center;padding:50px 20px 32px;color:#aaa;border-top:1px solid #222;margin-top:30px}
.site-footer p{font-size:18px;margin:0 0 12px}
.site-footer nav{display:flex;justify-content:center;gap:22px;margin-bottom:14px;font-size:14px}
.site-footer small{font-size:13px}
.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:26px;text-align:left}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;margin:0;padding:0}
.breadcrumbs li{display:flex;align-items:baseline;min-width:0;overflow-wrap:anywhere}
.breadcrumbs li+li::before{content:"›";color:#888;margin:0 10px}
.breadcrumbs a{text-decoration:none}
.breadcrumbs a:hover{color:var(--yellow);text-decoration:underline}
.breadcrumbs [aria-current=page]{color:#ddd}
.post-meta{margin:0 0 20px;font-size:14px;color:#aaa}
.table-wrap{overflow-x:auto;max-width:100%;margin:24px 0}
table{width:100%;border-collapse:collapse;line-height:1.65}
caption{text-align:left;margin-bottom:12px;color:var(--muted);font-size:14px}
th,td{border-bottom:1px solid var(--line);padding:14px 12px;text-align:left;vertical-align:top}
thead th{color:var(--yellow)}
tbody th{font-weight:500}
@media(max-width:640px){.site-header{padding-top:12px}.site-nav{display:grid;grid-template-columns:repeat(3,max-content);gap:12px 24px;min-height:60px;padding:0 12px}.site-nav a{font-size:13px}.brand{width:280px;max-width:84%;margin-top:28px}.site-footer{padding:34px 18px 25px}.site-footer p{font-size:15px}.site-footer nav{font-size:13px;gap:16px}th,td{padding:12px 9px}}
