:root{color-scheme:light;--paper: #f7efe0;--paper-raised: #fff8ea;--paper-muted: #eadcc4;--ink: #261b11;--ink-soft: #5f5140;--ink-faint: #81725f;--accent: #8c3f1f;--accent-soft: #d8a56d;--line: #d7c6ac;--line-strong: #a98f68;--shadow-paper: 0 1rem 2.5rem rgb(88 62 32 / .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--radius-sm: .35rem;--radius-md: .75rem;--measure: 72ch;--font-serif: "AppleMyungjo", "Nanum Myeongjo", "Noto Serif KR", Georgia, serif;--font-sans: "Avenir Next", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--font-serif);line-height:1.72;text-rendering:optimizeLegibility}body{margin:0;min-height:100vh;background:var(--paper)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");opacity:.22;mix-blend-mode:multiply}a{color:var(--accent);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:var(--ink)}p,ul,ol,dl,blockquote{margin-block:0 var(--space-4)}h1,h2,h3,h4{margin-block:0 var(--space-4);color:var(--ink);font-weight:700;line-height:1.14;letter-spacing:-.025em}h1{max-width:14ch;font-size:clamp(2.65rem,9vw,5.8rem);letter-spacing:-.06em}h2{font-size:clamp(1.7rem,4vw,3rem)}h3{font-size:clamp(1.18rem,2vw,1.45rem)}code{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-raised);padding:0 var(--space-1);font-family:Menlo,Consolas,monospace;font-size:.92em}.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);z-index:10;transform:translateY(-150%);border:1px solid var(--ink);background:var(--paper-raised);padding:var(--space-2) var(--space-3)}.skip-link:focus{transform:translateY(0)}.site-shell{position:relative;width:min(100% - var(--space-6),76rem);margin-inline:auto;padding-block:var(--space-5) var(--space-8)}.site-header,.site-footer,.section-rule,.archive-item,.note-box,.writing-body{border-top:1px solid var(--line)}.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);align-items:start;padding-top:var(--space-4);font-family:var(--font-sans)}.site-mark{color:var(--ink);font-weight:700;text-decoration:none}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2) var(--space-4);font-size:.9rem}.site-nav a{color:var(--ink-soft);text-decoration:none}.site-nav a[aria-current=page]{color:var(--accent);text-decoration:underline;text-decoration-thickness:.12em}.site-main{padding-block:var(--space-7)}.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-4);padding-top:var(--space-4);color:var(--ink-faint);font-family:var(--font-sans);font-size:.88rem}.site-footer p{margin:0}.kicker,.meta,.field-label,.entry-period,.tag-list,.project-status{font-family:var(--font-sans);font-size:.82rem;letter-spacing:.04em}.kicker,.field-label,.entry-period,.project-status{color:var(--accent);font-weight:700}.meta,.tag-list{color:var(--ink-faint)}.page-intro{display:grid;grid-template-columns:minmax(0,.95fr) minmax(18rem,.55fr);gap:var(--space-7);align-items:end;margin-bottom:var(--space-7)}.profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.44fr);gap:var(--space-7);align-items:start;margin-bottom:var(--space-7)}.lead-copy{max-width:62ch;color:var(--ink-soft);font-size:clamp(1.12rem,2vw,1.32rem)}.quick-links{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-5) 0 0;padding:0;list-style:none;font-family:var(--font-sans)}.quick-links a{display:inline-flex;border:1px solid var(--line-strong);border-radius:999px;padding:var(--space-2) var(--space-3);color:var(--ink);text-decoration:none}.profile-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-raised);box-shadow:var(--shadow-paper);padding:var(--space-5)}.profile-card dl,.profile-card dd{margin:0}.profile-card div{border-top:1px solid var(--line);padding-block:var(--space-3)}.profile-card dt{color:var(--accent);font-family:var(--font-sans);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.profile-card dd{color:var(--ink-soft)}.page-intro p{max-width:var(--measure);color:var(--ink-soft);font-size:clamp(1.05rem,2vw,1.22rem)}.intro-note{border-left:1px solid var(--line-strong);padding-left:var(--space-4)}.section-rule{padding-top:var(--space-5);margin-top:var(--space-6)}.index-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:var(--space-6)}.summary-grid,.proof-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);padding:0;list-style:none}.summary-grid li,.proof-cards li{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-raised);padding:var(--space-5)}.summary-grid strong,.summary-grid span{display:block}.summary-grid span,.proof-cards p{color:var(--ink-soft)}.section-link{margin-top:var(--space-4);font-family:var(--font-sans)}.link-list,.plain-list{list-style:none;padding:0}.link-list li,.plain-list li{border-top:1px solid var(--line);padding-block:var(--space-3)}.link-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);color:var(--ink);text-decoration:none}.link-list span,.plain-list span{color:var(--ink-faint);font-family:var(--font-sans);font-size:.86rem}.archive-list{display:grid;gap:var(--space-5)}.archive-item{display:grid;grid-template-columns:minmax(10rem,.28fr) minmax(0,1fr);gap:var(--space-5);padding-top:var(--space-5)}.archive-item h2,.archive-item h3{margin-bottom:var(--space-2)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4)}.field-card{border-left:1px solid var(--line);padding-left:var(--space-3)}.field-card p{color:var(--ink-soft)}.project-list{display:grid;gap:var(--space-5)}.project-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-raised);box-shadow:var(--shadow-paper);padding:var(--space-5)}.project-card h2{margin-bottom:var(--space-2)}.project-card p{max-width:var(--measure);color:var(--ink-soft)}.proof-list{margin:var(--space-4) 0 0;padding-left:var(--space-5);color:var(--ink-soft)}.writing-list{display:grid;gap:var(--space-4)}.writing-card{border-top:1px solid var(--line);padding-top:var(--space-4)}.writing-card a{color:var(--ink);text-decoration-color:var(--accent-soft)}.writing-body{max-width:var(--measure);padding-top:var(--space-5)}.writing-body h2,.writing-body h3{margin-top:var(--space-6)}.note-box{max-width:var(--measure);padding-top:var(--space-4)}.resume-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.42fr);gap:var(--space-7);align-items:start;padding-bottom:var(--space-7)}.role-line{color:var(--accent);font-family:var(--font-sans);font-size:clamp(1.05rem,2vw,1.3rem);font-weight:700}.resume-contact{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-raised);box-shadow:var(--shadow-paper);padding:var(--space-5)}.resume-contact dl,.resume-contact dd{margin:0}.resume-contact div{border-top:1px solid var(--line);padding-block:var(--space-3)}.resume-contact div:first-child{border-top:0;padding-top:0}.resume-contact dt,.work-detail dt{color:var(--accent);font-family:var(--font-sans);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.resume-contact dd,.work-detail dd{color:var(--ink-soft)}.resume-section{display:grid;grid-template-columns:minmax(10rem,.28fr) minmax(0,1fr);gap:var(--space-6);border-top:1px solid var(--line);padding-top:var(--space-6);margin-top:var(--space-6)}.resume-section-head{position:sticky;top:var(--space-5);align-self:start}.resume-body{max-width:78ch}.skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);padding:0;list-style:none}.skill-list li{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-raised);padding:var(--space-5)}.skill-list strong,.skill-list span{display:block}.skill-list span{color:var(--ink-soft)}.company-list{display:grid;gap:var(--space-7)}.company-block{display:grid;gap:var(--space-5)}.company-block header{max-width:78ch}.work-list{display:grid;gap:var(--space-4)}.work-item{border-top:1px solid var(--line);padding-top:var(--space-4)}.work-detail{display:grid;gap:var(--space-3);margin:0}.work-detail div{display:grid;grid-template-columns:6rem minmax(0,1fr);gap:var(--space-3)}.work-detail dd{margin:0}.compact-list{padding-left:var(--space-5);color:var(--ink-soft)}@media(max-width:780px){.site-shell{width:min(100% - var(--space-5),76rem);padding-block:var(--space-4) var(--space-7)}.site-header,.site-footer,.page-intro,.profile-hero,.resume-hero,.resume-section,.index-grid,.archive-item,.field-grid,.summary-grid,.proof-cards,.skill-list,.work-detail div{grid-template-columns:1fr}.resume-section-head{position:static}.site-nav{justify-content:flex-start}.site-main{padding-block:var(--space-6)}.page-intro{gap:var(--space-4)}.link-list a{grid-template-columns:1fr;gap:var(--space-1)}}
