@charset "UTF-8";
:root{--paper:#f7f8f5;--white:#fff;--ink:#252b2b;--muted:#646e68;--line:#dce1da;--teal:#285e59;--rust:#a54c35;--soft:#eaf0e9;--radius:3px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;font-size:15px;line-height:1.7;word-break:keep-all;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}button,input,textarea{font:inherit}button{cursor:pointer}a,button,input{touch-action:manipulation}button{color:inherit}img,video{max-width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.45;letter-spacing:-.055em}h2{font-size:23px}h3{font-size:18px}p{margin-bottom:18px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}[hidden]{display:none!important}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:10px;left:10px;z-index:100;background:white;padding:15px}.muted{color:var(--muted)}.eyebrow{font:11px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.12em;color:var(--teal);text-transform:uppercase}.dot{display:inline-block;width:7px;height:7px;background:var(--rust);border-radius:50%;margin-right:7px}
.site-header{background:rgba(255,255,255,.94);border-bottom:1px solid var(--line)}.header-inner{max-width:1300px;margin:auto;padding:25px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;letter-spacing:-.065em;line-height:1.25}.brand small{display:block;font:9px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.2em;margin-top:5px}.primary-nav{display:flex;gap:29px;font-size:13px;font-weight:600}.primary-nav a:last-child{color:var(--teal)}.menu-toggle{border:1px solid var(--line);background:white;padding:8px 12px}.site-wrap{max-width:1300px;margin:auto;padding:0 36px}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:32px;align-items:center;padding:65px 0 54px;border-bottom:1px solid var(--ink);margin-bottom:40px}.hero h1{font-size:clamp(30px,3.3vw,46px);line-height:1.4;margin:23px 0 20px;letter-spacing:-.075em}.hero em{font-style:normal;color:var(--teal)}.hero-description{font-size:15px;color:var(--muted);line-height:1.9}.text-link{font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:20px;padding:9px 0;border-bottom:1px solid currentColor}.hero-figure img{width:100%;display:block}.hero-figure figcaption{text-align:center;color:var(--muted);font-size:11px;letter-spacing:.1em;margin-top:8px}
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 253px;gap:42px;padding-top:40px}#tt-body-index .workspace{padding-top:0}main{min-width:0}main:focus{outline:none}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:21px}.section-head h1,.section-head h2{margin:0}.section-head>a{font-size:12px;white-space:nowrap}.archive-section,.list-section{margin-bottom:36px}.card-grid,.index-entries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.collision-card{min-width:0;background:var(--white);padding:27px 27px 24px;border:1px solid var(--line);border-top:2px solid var(--ink);position:relative;transition:border-color .16s,background .16s;display:flex;flex-direction:column}.collision-card:hover{border-color:var(--teal);background:#fcfdfb}.collision-card .eyebrow{font-size:10px;margin-bottom:16px}.collision-card h2,.collision-card h3{font-size:22px;margin:0 0 17px;font-weight:700}.card-title{display:block}.card-title:after{content:"";position:absolute;inset:0}.card-title:focus-visible:after{outline:3px solid var(--teal);outline-offset:3px}.card-summary{font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.8;margin-bottom:26px}.card-meta{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.card-meta a{position:relative;z-index:1}.card-arrow{position:absolute;right:20px;top:22px;color:var(--teal)}.empty-state{display:none;color:var(--muted);font-size:13px;padding:22px 0;margin:0}.card-grid:empty+.empty-state,.review-items:empty+.empty-state,.update-items:empty+.empty-state{display:block}.review-panel{background:var(--soft);border-left:3px solid var(--teal);padding:28px 30px;margin:34px 0}.review-panel .eyebrow{margin-bottom:8px}.review-panel .section-head{margin-bottom:12px}.review-panel p:not(.eyebrow){font-size:13px;color:#4d6259;margin-bottom:8px}.review-mark{font-size:32px;line-height:1}.review-item{display:block;padding:17px 0;border-bottom:1px solid #ccd8ce}.review-item strong{display:block;font-size:17px}.review-item span{display:block;color:var(--muted);font-size:12px;margin-top:6px}.review-panel .text-link{margin-top:12px}.updates-panel{margin:36px 0}.update-item{display:grid;grid-template-columns:100px 1fr;gap:7px 16px;border-top:1px solid var(--line);padding:18px 0}.update-label{font-size:11px;color:var(--rust)}.update-item strong{font-size:14px}.update-item>span:last-child{grid-column:2;font-size:12px;color:var(--muted)}.updates-panel>.text-link{margin-top:10px}.no-results{padding:35px 20px;background:white;border:1px solid var(--line)}
.explorer{border-left:1px solid var(--line);padding-left:27px;min-width:0}.explore-search h2{font-size:17px;margin-bottom:17px}.search-field{display:flex;align-items:center;background:white;border:1px solid var(--line)}.search-field input{min-width:0;width:100%;border:0;background:transparent;padding:10px 11px;font-size:12px}.search-field button{flex:none;background:transparent;border:0;font-size:20px;padding:5px 13px;color:var(--teal)}.explore-section{padding:26px 0;border-bottom:1px solid var(--line)}.explore-section h3{font-size:14px;margin-bottom:16px;letter-spacing:0}.section-number{font:10px ui-monospace,Consolas,monospace;color:var(--muted);margin-right:12px}.category-tree ul{padding:0;margin:0;list-style:none}.category-tree ul ul{margin:6px 0}.category-tree ul ul ul{padding-left:13px}.category-tree a{display:block;padding:5px 0;font-size:13px}.category-tree .c_cnt{font-size:10px;color:var(--muted);margin-left:8px}.category-tree img{vertical-align:middle}.status-links{display:grid;gap:9px;font-size:12px}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin:0 11px 1px 1px;background:var(--teal)}.status-dot.amber{background:#a27629}.status-dot.outline{background:transparent;border:1px solid var(--teal);width:7px;height:7px}.status-dot.gray{background:#818984}.status-dot.rust{background:var(--rust)}.theory-links,.tag-cloud{display:flex;flex-wrap:wrap;gap:7px}.theory-links a,.tag-cloud a{padding:5px 10px;border:1px solid var(--line);background:white;font:11px/1.8 ui-monospace,Consolas,"Malgun Gothic",monospace}.theory-links a:hover,.tag-cloud a:hover{border-color:var(--teal)}.small-link{display:inline-block;font-size:11px;margin-top:15px;color:var(--muted)}.editor-note{padding-top:26px}.editor-note h3{font-size:18px;line-height:1.6;margin-bottom:12px}.editor-note p:not(.eyebrow){font-size:12px;color:var(--muted)}.editor-note>span{font-size:11px;color:var(--muted)}.editor-note strong{margin-left:12px;color:var(--ink)}
.home-only{display:none}#tt-body-index .home-only{display:block}#tt-body-index .hero{display:grid}main:has(.review-items) .fallback-review,main:has(.update-items) .fallback-updates{display:none}main:has(.list-section) .index-entries,main:has(.cover-area) .index-entries{display:none}.index-entries:empty{display:none}.index-entries:has(.post-detail){display:block}.workspace:has(.post-detail),.workspace:has(.standalone){display:block}.workspace:has(.post-detail)>.explorer,.workspace:has(.standalone)>.explorer{display:none}.post-header{max-width:900px;padding:14px 0 35px;margin:0 auto 36px;border-bottom:1px solid var(--line)}.post-header h1{font-size:clamp(28px,4vw,43px);margin:20px 0 22px;line-height:1.45}.post-meta{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:12px;color:var(--muted)}.reading-layout{display:grid;grid-template-columns:190px minmax(0,760px);gap:50px;justify-content:center}.reading-body{min-width:0}.article-toc{position:sticky;top:25px;align-self:start;border-top:2px solid var(--ink);padding-top:18px}.article-toc ol{list-style:none;padding:0;margin:0;counter-reset:toc}.article-toc li{counter-increment:toc;margin:9px 0}.article-toc a{font-size:12px;color:var(--muted);display:block;padding:3px 0}.article-toc a:before{content:counter(toc,decimal-leading-zero);font:10px ui-monospace,Consolas,monospace;margin-right:10px;color:#7d8780}.article-toc a[aria-current="location"]{color:var(--teal);font-weight:700}.article-body{font-size:16px;line-height:1.95}.article-body h2{font-size:25px;border-top:1px solid var(--line);padding-top:28px;margin-top:45px;scroll-margin-top:30px}.article-body h3{font-size:20px;margin-top:30px}.article-body p{margin-bottom:22px}.article-body a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}.article-body blockquote{margin:24px 0;border-left:3px solid var(--teal);background:var(--soft);padding:20px 25px}.article-body pre{overflow:auto;background:#e9ede7;padding:18px;font-size:13px;white-space:pre}.article-body :not(pre)>code{font-size:.9em;background:#e9ede7;padding:2px 5px}.article-body iframe{max-width:100%}.article-body table{border-collapse:collapse;width:100%;font-size:14px}.article-body td,.article-body th{border:1px solid var(--line);padding:12px;text-align:left;min-width:100px}.article-body th{background:var(--soft)}.table-scroll{overflow-x:auto;width:100%;margin:25px 0}.table-scroll:focus-visible{outline:2px solid var(--teal)}.article-body figure{max-width:100%;margin:25px 0}.article-body ul,.article-body ol{padding-left:23px}.tc-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;font-size:12px}.tc-meta span{padding:5px 11px;border:1px solid var(--line);background:white}.tc-meta .tc-number{color:white;background:var(--teal);border-color:var(--teal);font-family:Consolas,monospace}.tc-theories{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 30px}.tc-theories>span{padding:12px 20px;border:1px solid var(--line);border-top:2px solid var(--ink);background:white;font-size:14px}.tc-collision{padding:20px 24px;border-left:3px solid var(--rust);background:#f3eae5}.tc-collision strong{color:var(--rust)}.tc-collision p:last-child{margin-bottom:0}.tc-history{padding:20px 24px;background:white;border:1px solid var(--line)}.tc-history p:last-child{margin-bottom:0}.post-tags{margin:35px 0;padding:20px 0;border-block:1px solid var(--line);font-size:12px;color:var(--teal)}.post-tags a{display:inline-block;margin:4px 6px}.comments{margin:40px 0 20px}.comments h2{font-size:22px}.comments>.muted{font-size:13px}.standalone{max-width:850px;margin:20px auto 60px;min-height:350px}.standalone h1{font-size:36px;margin-bottom:24px}.protected-form{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.protected-form input{padding:10px;border:1px solid var(--line);min-width:0;max-width:100%}.protected-form button{padding:10px 23px;background:var(--teal);color:white;border:0}.notice-card{padding:24px;border-bottom:1px solid var(--line)}.pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px;padding:32px 0}.pagination a{display:inline-block;font-size:12px;padding:6px 10px}.pagination .selected{font-weight:bold;color:var(--teal);border-bottom:2px solid var(--teal)}.pagination .no-more-prev,.pagination .no-more-next,.pagination a:not([href]){color:#747e78;pointer-events:none}.site-footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--ink);margin-top:65px;padding:28px 0 35px;font-size:11px;color:var(--muted)}.site-footer strong{font-size:16px;color:var(--ink)}.site-footer p{margin:7px 0}.site-footer>div:last-child{display:flex;align-items:flex-start;flex-wrap:wrap;gap:20px}.preview-banner{padding:9px 20px;text-align:center;background:#eaf0e9;font-size:12px;color:#285e59}.preview-banner a{text-decoration:underline;margin-left:12px}
.menu-toggle{display:none}.reading-layout:not(:has(.article-toc:not([hidden]))){display:block;max-width:760px;margin-inline:auto}main:has(.list-section)>.protected-entry{display:none}#tt-body-index main:has(.review-items) .fallback-review,#tt-body-index main:has(.update-items) .fallback-updates{display:none}
@media(min-width:1001px){.card-grid .collision-card:first-child{border-top-color:var(--teal)}}
@media(max-width:1000px){.header-inner,.site-wrap{padding-left:26px;padding-right:26px}.primary-nav{gap:20px}.hero{padding-top:44px;gap:15px}.hero h1{font-size:34px}.hero .eyebrow{font-size:9px}.workspace{grid-template-columns:minmax(0,1fr) 210px;gap:25px}.explorer{padding-left:20px}.collision-card{padding:21px}.collision-card h2,.collision-card h3{font-size:19px}.reading-layout{grid-template-columns:155px minmax(0,1fr);gap:28px}}
@media(max-width:760px){.header-inner{padding:18px 20px;flex-wrap:wrap;gap:16px}.brand{font-size:19px}.primary-nav{width:100%;gap:12px 22px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}.js .menu-toggle{display:block!important}.js .primary-nav:not(.is-open){display:none}.site-wrap{padding:0 20px}.hero{grid-template-columns:1fr!important;padding:36px 0 30px;gap:18px;margin-bottom:28px}.hero h1{font-size:34px;margin-top:20px}.hero-description{font-size:13px}.hero-figure{display:none}.hero .eyebrow{font-size:9px;letter-spacing:.06em}.workspace{display:block;padding-top:25px}.explorer{border-left:0;border-top:1px solid var(--ink);padding:28px 0 0;margin-top:35px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.explore-search,.editor-note{grid-column:1/-1}.explore-section{padding:22px 0}.editor-note{padding-top:25px}.card-grid,.index-entries{gap:13px}.collision-card{padding:22px 20px}.section-head h2{font-size:21px}.review-panel{padding:24px;margin:27px 0}.update-item{grid-template-columns:1fr;gap:5px}.update-item>span:last-child{grid-column:auto}.reading-layout{display:flex;flex-direction:column;gap:24px}.article-toc{position:static;width:100%;padding:15px 18px;background:var(--soft);border-top:0}.article-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:1px 14px}.article-toc li{margin:2px 0}.article-toc .eyebrow{margin-bottom:10px}.post-header{margin-bottom:24px;padding-top:0;padding-bottom:26px}.post-header h1{font-size:31px}.article-body{font-size:15px}.article-body h2{font-size:23px}.site-footer{margin-top:45px;flex-direction:column;padding-bottom:28px}.site-footer>div:last-child{gap:15px}.standalone h1{font-size:29px}.section-head .eyebrow{font-size:9px;letter-spacing:.05em}}
@media(max-width:480px){.card-grid,.index-entries{grid-template-columns:1fr}.collision-card h2,.collision-card h3{font-size:22px}.hero h1{font-size:30px}.tc-theories>span{padding:9px 13px}.tc-meta{font-size:11px}.section-head{gap:10px}.explorer{column-gap:18px}.theory-links a{font-size:10px}.post-header h1{font-size:28px}.article-body table{font-size:12px}.article-toc a{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.explorer,.article-toc,.comments,.site-footer,.preview-banner,.post-tags,.menu-toggle{display:none!important}body{background:white;color:black}.site-wrap{padding:0}.workspace,.reading-layout{display:block}.article-body{font-size:11pt}.post-header h1{font-size:24pt}.article-body h2{break-after:avoid}.tc-history,.tc-collision{break-inside:avoid}}

/* v1.1: actual category tree replaces status and theory shortcuts. */
.category-tree>.tt_category>li>a{font-size:12px;color:var(--muted);padding-bottom:14px}
.category-tree .category_list>li{padding:15px 0;border-top:1px solid var(--line)}
.category-tree .category_list>li>a{font-size:15px;font-weight:700;color:var(--ink)}
.category-tree .sub_category_list{padding-left:13px;border-left:1px solid var(--line);margin:9px 0 2px!important}
.category-tree .sub_category_list a{font-size:12px;padding:5px 0;font-weight:400}
@media(max-width:760px){.explorer>.explore-section{grid-column:1/-1}.category-tree .category_list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.category-tree .category_list>li>a{font-size:13px}}
@media(max-width:480px){.category-tree .category_list{grid-template-columns:1fr}.category-tree .sub_category_list{display:flex;flex-wrap:wrap;gap:3px 16px}.category-tree .category_list>li{padding:12px 0}}
