@font-face{font-family:Pretendard;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Pretendard-Regular.subset.woff2) format("woff2")}@font-face{font-family:Pretendard;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Pretendard-SemiBold.subset.woff2) format("woff2")}:root{--color-bg: #faf8f4;--color-surface: #fffdf9;--color-text: #26231f;--color-muted: #726b63;--color-line: #e2ddd4;--color-accent: #2f4e7e;--color-axis: #cfc8bc;font-family:Pretendard,Malgun Gothic,-apple-system,sans-serif;color:var(--color-text);background:var(--color-bg);color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:dark){:root{--color-bg: #1a1815;--color-surface: #211e1a;--color-text: #ede9e1;--color-muted: #9c948a;--color-line: #332f29;--color-accent: #8fb0de;--color-axis: #6c6457}}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--color-bg)}body,#root{min-height:100vh}body{margin:0;background:var(--color-bg)}button,input,textarea,select{font:inherit}.app-header{position:sticky;z-index:10;top:0;border-bottom:1px solid var(--color-line);background:var(--color-bg)}.app-header__inner{display:flex;width:100%;max-width:760px;min-height:56px;align-items:center;justify-content:space-between;padding:0 16px;margin:0 auto}.app-header h1{margin:0;color:var(--color-text);font-size:18px;font-weight:600;letter-spacing:-.02em}.app-brand{color:var(--color-text);font-size:18px;font-weight:600;letter-spacing:-.02em;text-decoration:none}.app-header__link,.app-footer a,.source-page a{color:var(--color-accent);text-underline-offset:3px}.app-header__link{display:inline-flex;min-height:44px;align-items:center;font-size:13px;font-weight:600}.app-brand:focus-visible,.app-header__link:focus-visible,.app-footer a:focus-visible,.source-page a:focus-visible{border-radius:3px;outline:2px solid var(--color-accent);outline-offset:3px}.stage-controls{display:flex;gap:6px}.stage-controls button{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:0 9px;border:1px solid var(--color-line);border-radius:999px;background:var(--color-surface);color:var(--color-muted);cursor:pointer;font-size:12px;font-weight:600}.stage-controls button[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-bg)}.stage-controls button:focus-visible,.interval-chip:focus-visible,.timeline-collapse:focus-visible,.timeline-item-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.app-main{width:100%;padding:16px 16px 48px}.app-footer{border-top:1px solid var(--color-line)}.app-footer__inner{display:flex;width:100%;max-width:760px;min-height:64px;align-items:center;padding:0 16px;margin:0 auto}.app-footer a{display:inline-flex;min-height:44px;align-items:center;font-size:13px}.source-main{width:100%;padding:32px 16px 64px}.source-page{width:100%;max-width:760px;margin:0 auto}.source-page__intro{max-width:640px;margin-bottom:32px}.source-page__eyebrow{margin:0 0 8px;color:var(--color-accent);font-size:13px;font-weight:600}.source-page h1{margin:0 0 12px;font-size:28px;letter-spacing:-.03em;line-height:1.25}.source-page__intro>p:last-child,.source-section p,.source-note p{margin:0;color:var(--color-muted);font-size:14px;line-height:1.7}.source-section{padding:24px 0;border-top:1px solid var(--color-line)}.source-section h2,.source-note h2{margin:0 0 10px;font-size:18px;letter-spacing:-.02em;line-height:1.45}.source-section p+p{margin-top:10px}.source-section strong{color:var(--color-text);font-weight:600}.source-section .source-section__attribution{color:var(--color-text)}.source-table-wrap{margin-top:20px;overflow-x:auto}.source-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13.5px;line-height:1.5;text-align:left}.source-table caption{position:absolute;width:1px;height:1px;padding:0;border:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.source-table th,.source-table td{padding:12px 8px;border-bottom:1px solid var(--color-line);overflow-wrap:anywhere;vertical-align:top}.source-table th:first-child{width:46%}.source-table thead th{color:var(--color-muted);font-size:12px;font-weight:600}.source-table tbody th{color:var(--color-text);font-weight:400}.source-note{padding:20px;border:1px solid var(--color-line);border-radius:8px;margin-top:16px;background:var(--color-surface)}.timeline{width:100%;max-width:760px;margin:0 auto}.timeline-list{--axis-x: 100px;--row-height: 44px;position:relative;padding:0;margin:0;list-style:none;overflow-anchor:none}.timeline-axis{position:absolute;z-index:0;left:var(--axis-x);width:1.5px;pointer-events:none;transform:translate(-50%)}.timeline-axis--before{top:0;height:calc(var(--row-height) / 2)}.timeline-axis--after{top:calc(var(--row-height) / 2);bottom:0}.timeline-axis:before,.timeline-axis:after{position:absolute;inset:0;content:""}.timeline-axis:before{background:repeating-linear-gradient(to bottom,var(--color-axis) 0 3px,transparent 3px 6px)}.timeline-axis:after{background:var(--color-axis)}.timeline-list--animate .timeline-axis:before,.timeline-list--animate .timeline-axis:after{transition:opacity .2s ease}.timeline-axis--dashed:before,.timeline-axis--solid:after{opacity:1}.timeline-axis--dashed:after,.timeline-axis--solid:before{opacity:0}.timeline-axis--none{display:none}.timeline-row{--item-indent: 0px;position:relative;min-width:0;min-height:var(--row-height)}.timeline-row--level-2{--item-indent: 13px}.timeline-row--level-3{--item-indent: 27px}.timeline-connector{position:absolute;z-index:1;top:calc(var(--row-height) / 2);left:var(--axis-x);width:calc(var(--item-indent) + 1px);height:1.5px;background:var(--color-axis);transform:translateY(-50%)}.timeline-row--level-1 .timeline-connector{left:calc(var(--axis-x) - 10px);width:20px}.timeline-node{position:absolute;z-index:5;top:calc(var(--row-height) / 2);left:calc(var(--axis-x) + var(--item-indent));width:9px;height:9px;border:1.5px solid var(--color-axis);border-radius:50%;background:var(--color-bg);transform:translate(-50%,-50%)}.timeline-row--level-1 .timeline-node{width:10px;height:10px;border:0;background:var(--color-accent)}.timeline-row--level-2 .timeline-node{border-color:var(--color-muted)}.timeline-collapse{position:absolute;z-index:4;top:calc(var(--row-height) / 2);left:var(--axis-x);display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--color-muted);cursor:pointer;transform:translate(-50%,-50%)}.timeline-collapse__mark{display:block;width:8px;height:14px;border:1px solid var(--color-line);border-radius:2px;background:repeating-linear-gradient(135deg,var(--color-muted) 0 1px,var(--color-bg) 1px 4px);box-shadow:0 0 0 2px var(--color-bg)}.timeline-item-trigger{position:relative;display:flex;width:fit-content;max-width:100%;min-height:var(--row-height);align-items:center;padding:0;border:0;margin:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.timeline-content{position:relative;z-index:5;display:block;min-width:0;padding:5px 0;margin-left:calc(var(--axis-x) + var(--item-indent) + 16px)}.timeline-title-line{display:flex;min-width:0;align-items:baseline;flex-wrap:wrap;column-gap:6px}.timeline-name,.timeline-end-year{font-size:15px;line-height:1.35}.timeline-name{color:var(--color-text);font-weight:600;overflow-wrap:anywhere}.timeline-end-year{color:var(--color-muted);font-weight:400;white-space:nowrap}.timeline-row--level-2 .timeline-name{font-weight:400}.timeline-row--level-3 .timeline-name{color:var(--color-muted);font-weight:400}.timeline-row--level-3 .timeline-name,.timeline-row--level-3 .timeline-end-year{font-size:14px}.timeline-year{position:absolute;z-index:5;display:block;top:50%;right:calc(100% - var(--axis-x) + 12px);left:0;color:var(--color-muted);font-size:12px;font-variant-numeric:tabular-nums;font-weight:400;line-height:1.4;text-align:right;transform:translateY(-50%)}.timeline-description-shell{max-width:calc(100% - var(--axis-x) - var(--item-indent) - 16px);margin-left:calc(var(--axis-x) + var(--item-indent) + 16px);overflow:hidden}.timeline-description{padding:10px 12px;border:1px solid var(--color-line);border-radius:8px;margin:0 0 8px;background:var(--color-surface);color:var(--color-text);font-size:13.5px;font-weight:400;line-height:1.7;overflow-wrap:anywhere}.timeline-gap-slot{position:relative;height:44px}.interval-chip{position:absolute;z-index:4;top:50%;left:var(--axis-x);display:inline-flex;min-width:44px;height:44px;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:var(--color-accent);cursor:pointer;transform:translate(-50%,-50%)}.interval-chip__label{display:inline-flex;min-width:32px;min-height:22px;align-items:center;justify-content:center;padding:0 5px;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-bg);box-shadow:0 0 0 3px var(--color-bg);font-size:9px;font-weight:500;line-height:1;white-space:nowrap}.interval-chip__label--desktop{display:none}@media(hover:hover){.stage-controls button:hover,.interval-chip:hover .interval-chip__label{border-color:var(--color-accent)}.timeline-collapse:hover .timeline-collapse__mark{border-color:var(--color-muted)}}@media(min-width:768px)and (hover:hover)and (pointer:fine){.timeline-item-trigger:hover .timeline-content,.timeline-item-trigger:hover .timeline-year{border-radius:4px;background:var(--color-surface);box-shadow:0 0 0 4px var(--color-surface)}}@media(min-width:768px){.app-header__inner{min-height:60px;padding:0 24px}.app-header h1,.app-brand{font-size:20px}.app-main{padding:24px 24px 64px}.app-footer__inner{padding:0 24px}.source-main{padding:48px 24px 80px}.source-page h1{font-size:32px}.source-table{font-size:14px}.timeline-list{--axis-x: 200px;--row-height: 44px}.timeline-row--level-2{--item-indent: 16px}.timeline-row--level-3{--item-indent: 34px}.timeline-year{right:calc(100% - var(--axis-x) + 20px)}.timeline-content{padding:4px 0;margin-left:calc(var(--axis-x) + var(--item-indent) + 18px)}.timeline-description-shell{max-width:calc(100% - var(--axis-x) - var(--item-indent) - 18px);margin-left:calc(var(--axis-x) + var(--item-indent) + 18px)}.timeline-description{font-size:14px}.timeline-name,.timeline-end-year{font-size:16px}.timeline-row--level-3 .timeline-name,.timeline-row--level-3 .timeline-end-year{font-size:15px}.interval-chip{width:auto}.interval-chip__label--mobile{display:none}.interval-chip__label--desktop{display:inline-flex}.interval-chip__label{min-height:24px;padding:0 6px;font-size:12px}}@media(prefers-reduced-motion:reduce){.timeline-axis:before,.timeline-axis:after{transition:none}}
