
:root{color-scheme:dark;--bg:#000;--panel:#080808;--surface:#080808;--line:rgba(255,255,255,.13);--ln:var(--line);--ln2:rgba(255,255,255,.24);--text:#f4f4f4;--ink:#f4f4f4;--muted:#a0a0a0;--accent:#dedede;--warm:#ddd;--pad:clamp(20px,4vw,56px);--f-lat:'IBM Plex Sans',sans-serif;--f-ko:'IBM Plex Sans KR','IBM Plex Sans',-apple-system,sans-serif;--f-mono:'IBM Plex Mono',ui-monospace,monospace}
*{box-sizing:border-box}body{margin:0;background:#000;color:var(--text);font:300 16px/1.7 var(--f-ko);-webkit-font-smoothing:antialiased;word-break:keep-all}h1,h2,h3,h4,p{margin:0}a{color:inherit}button,input,select,summary{font:inherit}button,a,input,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #ddd}button{cursor:pointer}button,select{border-radius:0}button{transition:background .15s,color .15s}input[type=range]{accent-color:#ddd}a{text-underline-offset:4px}.nav-wrap{width:100%;max-width:1200px;margin:auto;padding-inline:var(--pad)}.study-shell{width:100%;max-width:1640px;margin:auto;padding:0 var(--pad)}.study-heading{padding:26px 0 23px;display:flex;justify-content:space-between;align-items:end;gap:22px}.study-kicker{font:12px/1.7 var(--f-mono);letter-spacing:.12em;color:#999;margin-bottom:12px}.study-kicker a{text-decoration:none}.study-kicker span{color:#555;margin:0 9px}.study-heading h1{font:300 clamp(31px,3.4vw,47px)/1.15 var(--f-lat);letter-spacing:-.018em}.study-heading h1 b{font-weight:600}.study-heading p{color:#aaa;font-size:14px;margin-top:10px}.study-tools{display:flex;align-items:center;gap:23px;font:12px var(--f-mono);padding-bottom:4px}.study-tools a{text-decoration:none;color:#999;padding:9px 0;border-bottom:1px solid transparent;white-space:nowrap}.study-tools a[aria-current=page]{color:#fff;border-color:#ccc}.study-tools a:hover{color:#fff}.portfolio-footer{max-width:1640px;margin:30px auto 0;padding:25px var(--pad) 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#999;font:12px/1.7 var(--f-mono)}.portfolio-footer a{text-decoration:none;color:#bbb}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(0,0,0,.92);border-bottom:1px solid var(--ln);backdrop-filter:blur(16px)}
.site-nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.site-nav a,.portfolio-section a,.portfolio-footer a{color:inherit;text-decoration:none}
.wordmark{display:flex;align-items:center;gap:13px;flex-shrink:0;font:500 15px/1.25 var(--f-lat);letter-spacing:.13em}
.wordmark small{display:block;font:9px/1.7 var(--f-mono);letter-spacing:.24em;color:#999}
.brand-orbit{position:relative;display:block;flex-shrink:0;width:22px;height:22px;transform:rotate(-28deg)}
.brand-orbit svg{position:absolute;left:-7px;top:-3px;display:block;width:36px;height:28px;overflow:visible}
.site-links{display:flex;align-items:center;gap:clamp(18px,2.3vw,30px)}
.site-links>a{position:relative;display:flex;align-items:center;min-height:44px;font:400 13px var(--f-lat);white-space:nowrap;color:#aaa;transition:color .2s}
.site-links>a:hover,.site-links>a[aria-current]{color:#fff}
.site-links>a[data-section]::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.site-links>a[aria-current]::after{transform:scaleX(1)}
.site-links>.nav-cv{border-left:1px solid var(--ln2);padding-left:22px;gap:12px;color:#eee;font-family:var(--f-mono);font-size:12px}
.nav-number,.nav-korean,.menu-toggle{display:none}
.skip-link{position:fixed;top:12px;left:16px;z-index:50;background:white;color:black;padding:10px 16px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #eee;outline-offset:5px}
@media(max-width:999px){
 .site-nav{height:66px}
 .menu-toggle{display:flex;align-items:center;gap:13px;min-height:44px;padding:8px 0 8px 12px;background:none;border:0;color:#ddd;font:12px var(--f-ko);cursor:pointer}
 .menu-toggle-icon{position:relative;display:block;width:20px;height:12px;border-top:1px solid;border-bottom:1px solid;transition:transform .2s}
 .menu-open .menu-toggle-icon{height:1px;border-bottom:0;transform:rotate(45deg)}
 .menu-open .menu-toggle-icon::after{content:'';position:absolute;inset:-1px 0 0;border-top:1px solid;transform:rotate(90deg)}
 .site-links{position:absolute;top:100%;left:0;right:0;background:#070707;border-bottom:1px solid #333;display:none;padding:20px var(--pad) 30px;max-height:calc(100dvh - 66px);overflow-y:auto}
 .menu-open .site-links{display:block}
 .site-links>a{display:grid;grid-template-columns:28px 1fr auto;gap:12px;padding:16px 0;font-size:23px;border-bottom:1px solid var(--ln);white-space:normal}
 .site-links>a[data-section]::after{display:none}
 .site-links>a[aria-current] .nav-number{color:#fff}
 .nav-number{display:block;font:10px var(--f-mono);color:#666}.nav-korean{display:block;font:11px var(--f-ko);color:#999}
 .site-links>.nav-cv{display:flex;justify-content:space-between;border:0;padding:20px 0 0;margin-left:40px;font-size:13px}
}
.site-links[hidden]{display:none}
.site-header{max-width:none;padding:0;margin:0}.site-nav{padding-block:0}.site-header .menu-toggle{border:0;border-radius:0;background:none}.site-header .site-links>a{font-size:14px}.site-header .nav-cv{font-size:12px}.site-header .wordmark{color:#fff}.site-header .wordmark small{font-size:9px}.site-header .site-links{line-height:1.5}.site-header .brand-orbit{filter:none}.site-header .site-nav a:hover{background:none}.site-header .site-nav .menu-toggle{color:#ddd}
@media(max-width:999px){.site-header .site-links>a{font-size:21px}.site-header .nav-korean{font-size:12px}.study-heading{align-items:start;flex-direction:column;gap:12px}.study-tools{font-size:12px}.study-heading h1{font-size:36px}}
@media(max-width:640px){.study-heading h1{font-size:32px}.portfolio-footer{flex-direction:column;gap:8px}.study-tools{gap:22px}.study-heading p{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
