:root{--bg: #ffffff;--text: #1c1e21;--muted: #66707a;--accent: #0e7c66;--border: #e6e8ea;--code-bg: #f4f5f6}@media(prefers-color-scheme:dark){:root{--bg: #101214;--text: #e8eaed;--muted: #9aa5ad;--accent: #3ecfa8;--border: #2a2d31;--code-bg: #1a1d20}}*{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--text);font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Segoe UI,Roboto,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif;font-size:1.0625rem;line-height:1.75;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}body>header,body>main,body>footer{max-width:42rem;margin-inline:auto;padding-inline:1.25rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.2em}h1,h2,h3{line-height:1.4;letter-spacing:-.01em}h1{font-size:1.75rem}h2{font-size:1.25rem;margin-top:2.5rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:var(--code-bg);padding:.15em .4em;border-radius:4px}pre{background:var(--code-bg);padding:1rem;border-radius:8px;overflow-x:auto;line-height:1.6}pre code{background:none;padding:0}.site-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-block:2rem 1rem}.wordmark{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.125rem;font-weight:700;color:var(--text)}.wordmark .accent{color:var(--accent)}.site-header nav{display:flex;gap:1rem}.site-header nav a{color:var(--muted);font-size:.95rem}.site-header nav a:hover{color:var(--text);text-decoration:none}main{padding-block:1.5rem 3rem;min-height:60vh}.intro p{margin-block:.75rem}.more{font-size:.95rem}.post-list{list-style:none;margin:0;padding:0}.post-list li{padding-block:1rem;border-bottom:1px solid var(--border)}.post-list li:last-child{border-bottom:none}.post-list a{font-weight:600;color:var(--text)}.post-list a:hover{color:var(--accent)}.post-list time{margin-left:.6em;font-size:.85rem;color:var(--muted);white-space:nowrap}.post-desc{margin:.25rem 0 0;font-size:.95rem;color:var(--muted)}.post>header{margin-bottom:2rem}.post>header h1{margin-bottom:.25rem}.post>header time{color:var(--muted);font-size:.9rem}.prose p{margin-block:1.1rem}.prose blockquote{margin-inline:0;padding-left:1rem;border-left:3px solid var(--border);color:var(--muted)}.prose img{max-width:100%;height:auto;border-radius:8px}.prose hr{border:none;border-top:1px solid var(--border);margin-block:2rem}.subscribe{margin-top:3rem;padding:1.25rem 1.5rem;border:1px solid var(--border);border-radius:12px}.subscribe h2{margin-top:0;font-size:1.1rem}.subscribe form{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.subscribe input[type=email]{flex:1 1 12rem;padding:.55rem .8rem;font-size:1rem;color:var(--text);background:var(--bg);border:1px solid var(--muted);border-radius:8px}.subscribe input[type=email]:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.subscribe button{padding:.55rem 1.2rem;font-size:1rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;cursor:pointer}@media(prefers-color-scheme:dark){.subscribe button{color:#0c1210}}.site-footer{display:flex;justify-content:space-between;gap:1rem;padding-block:1.5rem 2.5rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--muted)}.footer-links{display:flex;gap:1rem}.layer-map{list-style:none;margin:1.5rem 0 0;padding:0;border-left:2px solid var(--border)}.layer{padding:.9rem 0 .9rem 1rem;border-bottom:1px solid var(--border)}.layer:last-child{border-bottom:none}.layer-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:.25rem .6rem}.layer-no{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;color:var(--accent);white-space:nowrap}.layer-name{font-weight:600;color:var(--text)}.layer.empty .layer-name{color:var(--muted)}.layer-count,.layer-soon,.layer-summary{color:var(--muted);font-size:.95rem}.layer-summary,.layer-soon{margin:.2rem 0 0}.layer-lessons{list-style:none;margin:.4rem 0 0;padding:0}.layer-lessons li{padding-block:.15rem}.lesson-id,.lesson-draft{margin-left:.5em;font-size:.85rem;color:var(--muted)}.lesson-draft{padding:0 .4em;border:1px solid var(--muted);border-radius:4px}.layer-map.compact .layer{padding-block:.45rem}.lesson-meta{margin:0;font-size:.9rem;color:var(--muted)}.lesson>header h1{margin:.3rem 0 .4rem}.lesson-desc{margin:0 0 1.5rem;color:var(--muted)}.lesson-hook{margin-top:2rem;padding-left:1rem;border-left:3px solid var(--accent)}.lesson-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.95rem}.lesson-nav .next{margin-left:auto;text-align:right}.lesson-related ul{padding-left:1.2rem}.shorts{position:relative;width:min(100%,20rem);aspect-ratio:9 / 16;margin:0 auto 1.5rem;border-radius:12px;overflow:hidden;background:var(--code-bg)}.shorts button{all:unset;display:block;width:100%;height:100%;cursor:pointer}.shorts button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shorts img,.shorts iframe{display:block;width:100%;height:100%;border:0;object-fit:cover}.shorts-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);padding:.6rem 1.1rem;border-radius:999px;background:var(--accent);color:var(--bg);font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
