
*{box-sizing:border-box}html{background:var(--background);color:var(--ink);font-family:Pretendard,sans-serif}body{margin:0}a{color:inherit;text-underline-offset:5px}a:hover{opacity:.7}a:focus-visible{outline:2px solid currentColor;outline-offset:6px}.skip{position:absolute;top:-80px}.skip:focus{top:12px;background:var(--background);z-index:2}nav{max-width:1180px;margin:auto;padding:30px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{font:32px 'Instrument Serif',serif;text-decoration:none}.nav-label{font-size:13px;letter-spacing:.05em}.layout{max-width:1060px;margin:92px auto 110px;padding:0 36px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:58px}aside{padding-top:9px;font-size:12px;line-height:1.8}aside .label{font:italic 30px 'Instrument Serif',serif;margin:0 0 24px}aside time{display:block}aside .sample{margin-top:22px;color:var(--muted)}article{min-width:0;max-width:720px}.article-head{border-left:1px solid currentColor;padding-left:26px;margin-bottom:48px}.eyebrow{font-size:12px;letter-spacing:.14em;margin:0 0 24px}h1{font-size:clamp(36px,4.5vw,59px);letter-spacing:-.055em;font-weight:600;line-height:1.24;margin:0 0 26px;word-break:keep-all}.intro{font-size:20px;line-height:1.7;word-break:keep-all;margin:0}.body{font-size:18px;line-height:1.95;word-break:keep-all;overflow-wrap:anywhere}.body p{margin:0 0 25px}h2{font-size:27px;line-height:1.4;letter-spacing:-.035em;margin:60px 0 22px;font-weight:600}figure{margin:40px 0 48px}figure svg{display:block;width:100%;height:auto;border:1px solid var(--border);background:var(--surface)}figcaption{font-size:12px;line-height:1.7;margin-top:12px;color:var(--muted)}blockquote{border-left:1px solid currentColor;padding:8px 0 8px 24px;margin:38px 0;font-size:23px;line-height:1.7;letter-spacing:-.025em}pre{font:14px/1.9 'IBM Plex Mono',monospace;overflow-x:auto;padding:24px;border:1px solid var(--border);background:var(--surface);margin:26px 0}code{font-family:'IBM Plex Mono',monospace}.comment{color:var(--muted)}.end{margin-top:64px;padding-top:24px;border-top:1px solid var(--border);font-size:14px;display:flex;justify-content:space-between;gap:20px}footer{max-width:1180px;margin:auto;padding:28px 36px;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}@media(max-width:760px){nav{padding:23px 24px}.layout{display:block;padding:0 24px;margin:48px auto 64px}aside{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:30px}aside .label{font-size:25px;margin:0}aside .sample{margin:0}aside .category{display:none}.article-head{padding-left:20px}.intro{font-size:18px}.body{font-size:17px;line-height:1.9}h2{font-size:24px}blockquote{font-size:21px}footer{padding:24px}}

@font-face{font-family:'AmenoFuri Logo';src:url('/assets/fonts/amenofuri-logo.woff2') format('woff2');font-display:swap}
.project-logo{display:block;width:max-content;font:34px/1.1 'AmenoFuri Logo',serif;letter-spacing:-.055em;text-decoration:none;margin-bottom:22px}.signature{position:relative}.signature::before{content:'';position:absolute;left:0;right:.055em;top:.02em;height:.075em;background:#5bcefa}
.brand-group{display:flex;align-items:center;gap:10px;min-width:0}.brand{display:block;width:250px;height:42px;line-height:42px;white-space:nowrap;font-family:'IBM Plex Mono',monospace}.brand span.typing::after{content:'';display:inline-block;height:.85em;border-left:1px solid currentColor;margin-left:3px;vertical-align:-.04em}
@media(max-width:760px){aside{display:block}.project-logo{margin-bottom:12px}.brand{font-size:24px;width:190px;height:36px;line-height:36px}.brand-group{gap:0}nav{padding-left:20px;padding-right:20px}}


html { color-scheme: light; --background: #fff; --ink: #000; --muted: #555; --border: #d4d4d4; --surface: #f7f7f7; }
html[data-theme="dark"] { color-scheme: dark; --background: #000; --ink: #fff; --muted: #aaa; --border: #303030; --surface: #090909; }
#theme-ink { position: fixed; inset: 0; z-index: 4; background: #fff; mix-blend-mode: difference; pointer-events: none; }
.theme-toggle { position: fixed; bottom: 20px; left: 20px; z-index: 3; min-height: 44px; min-width: 44px; padding: 8px; border: 0; background: var(--background); color: inherit; font: 12px Pretendard, sans-serif; cursor: pointer; }
.theme-toggle:hover { opacity: .65; }
.theme-toggle:focus-visible { outline: 1px solid currentColor; outline-offset: 3px; }

.body img{max-width:100%;height:auto}.modified{margin:8px 0 0;color:var(--muted)}
