:root{
  --paper:#f5eddd;--surface:#fffaf0;--ink:#201f1b;--muted:#625e56;--line:rgba(32,31,27,.16);
  --panel:clamp(228px,15vw,280px);--inspect:clamp(400px,32vw,560px);--content-max:1760px;--top:86px;--shadow:0 14px 34px rgba(57,43,18,.14),0 2px 5px rgba(57,43,18,.08)
}
[hidden]{display:none!important}*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;font-family:"Pretendard Variable","Apple SD Gothic Neo","Noto Sans KR",Arial,sans-serif;letter-spacing:-.015em}
.topbar{height:var(--top);position:fixed;z-index:50;inset:0 0 auto;display:grid;grid-template-columns:var(--panel) minmax(320px,680px) 1fr;align-items:center;gap:18px;padding:0 22px;background:rgba(255,250,240,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--ink);border-radius:50%;font:800 12px ui-monospace,monospace;letter-spacing:.08em}.brand strong{display:block;font-size:18px;line-height:1.1}.brand small{display:block;margin-top:5px;font-size:12px;color:var(--muted);white-space:nowrap}
.search-wrap{height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 1px 2px rgba(30,25,15,.04)}.search-wrap:focus-within{outline:3px solid rgba(23,105,170,.22);border-color:#5794c5}.search-wrap input{min-width:0;flex:1;border:0;outline:0;background:transparent;font:500 16px inherit;color:var(--ink)}kbd{padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:#f6f0e4;color:var(--muted);font-size:12px}
.top-actions{justify-self:end;display:flex;gap:7px}.quiet-button,.text-button{border:0;background:transparent;color:var(--muted);font:650 14px inherit;cursor:pointer}.quiet-button{padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:#fff}.quiet-button:hover,.quiet-button[aria-pressed=true]{color:var(--ink);border-color:rgba(36,35,31,.4)}
button:focus-visible,input:focus-visible,select:focus-visible,.keyword-card:focus-visible{outline:4px solid rgba(23,105,170,.3);outline-offset:2px}
.app-shell{display:grid;grid-template-columns:var(--panel) minmax(0,1fr);padding-top:var(--top);min-height:100vh}.filters,.inspector{position:fixed;top:var(--top);bottom:0;overflow:auto;background:var(--surface)}
.filters{left:0;width:var(--panel);padding:14px 18px 26px;border-right:1px solid var(--line);transition:width .18s ease,padding .18s ease}.filters section+section{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.sidebar-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.sidebar-toggle{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:850 21px/1 ui-monospace,monospace;cursor:pointer}.sidebar-toggle:hover{border-color:#827667;background:#fff5df}.filters-body{min-width:234px}
.eyebrow{margin:0 0 9px;color:#7b6d58;font:800 12px ui-monospace,monospace;letter-spacing:.12em}.filters h2{margin:0;font-size:24px;line-height:1.3;letter-spacing:-.045em}.section-head{display:flex;align-items:center;justify-content:space-between}.section-head h3{margin:0;font-size:16px}
.lens-tabs{display:grid;gap:7px;margin-top:14px}.lens-tab{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 11px 11px 35px;border:2px solid color-mix(in srgb,var(--book-accent) 45%,#777);border-radius:8px;background:transparent;color:var(--muted);font:650 15px inherit;text-align:left;cursor:pointer;opacity:.72}.lens-tab:hover{background:#f3ead9;opacity:1}.lens-tab[aria-pressed=true]{background:color-mix(in srgb,var(--book-accent) 88%,#fff);border-color:color-mix(in srgb,var(--book-accent) 70%,#111);color:#fff;box-shadow:0 3px 9px rgba(30,25,15,.18);opacity:1}.lens-tab[aria-pressed=true]::before{content:'✓';position:absolute;left:11px;font-weight:900}.lens-tab[aria-pressed=true] span:last-child{color:#fff}.filter-summary{margin:9px 0 0;color:var(--muted);font-size:13px;font-weight:750}.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}.lens-tab span:last-child{font:600 12px ui-monospace,monospace;color:#8c8275}
.category-list{display:grid;gap:2px;margin-top:10px}.category-item{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:9px;width:100%;padding:8px 6px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:550 14px inherit;text-align:left;cursor:pointer}.category-item:hover,.category-item.active{background:#eee4d1;color:var(--ink)}.swatch{width:10px;height:10px;border-radius:2px;background:var(--swatch)}.category-item small{font:600 12px ui-monospace,monospace}
.year-controls{display:grid;gap:9px}.year-controls h3{margin:0}.year-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.year-modes button{padding:8px 3px;border:1px solid var(--line);background:#fff;color:var(--muted);font:650 12px inherit}.year-modes button[aria-pressed=true]{background:var(--ink);color:#fff}.year-controls label{display:block;margin:6px 0 4px;color:var(--muted);font-size:12px}.year-controls select{width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:#fff}.filter-grid{display:grid;grid-template-columns:1fr;gap:10px}.filter-grid label span{display:block;margin-bottom:6px;color:var(--muted);font-size:13px}.filter-grid select{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font:550 14px inherit}
.legend-line{width:28px;border-top-style:solid;border-top-color:#69645d}.legend-line.primary{border-top-width:7px}.legend-line.secondary{border-top-width:3px}.legend-line.context{border-top-width:2px;opacity:.62}.legend-line.documented{border-top-width:3px}.legend-line.editorial{border-top-width:3px;border-top-style:dashed;opacity:.72}.legend-box h3{margin:0 0 12px;font-size:16px}.legend-box p{display:flex;align-items:center;gap:9px;margin:10px 0;font-size:14px;color:var(--muted)}.legend-dot{width:12px;height:12px;border-radius:3px;border:2px solid #69645d}.legend-dot.anchor{background:#f2b01e;border-color:#25221c;box-shadow:0 0 0 2px #fff,0 0 0 3px #25221c}.legend-box .legend-note{display:block;margin-top:12px;font-size:13px;line-height:1.55;color:var(--muted)}
.notice{padding:15px!important;border:1px solid #d5bd84!important;border-radius:9px;background:#fff2cc}.notice strong{font-size:15px}.notice p{margin:8px 0 0;font-size:13px;line-height:1.6;color:#5f5437}
.workspace{grid-column:2;padding:clamp(28px,2.4vw,48px) clamp(20px,2.7vw,56px) 90px;min-width:0}.workspace-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 auto 22px;max-width:var(--content-max)}.workspace-head h1{margin:0;font-size:clamp(38px,3.1vw,58px);line-height:1.08;letter-spacing:-.06em}.workspace-head p:not(.eyebrow){max-width:780px;margin:12px 0 0;color:var(--muted);font-size:clamp(16px,1.05vw,19px);line-height:1.65}.result-summary{text-align:right;flex:0 0 auto}.result-summary strong{display:block;font:700 clamp(42px,3vw,58px) ui-monospace,monospace}.result-summary span{font-size:14px;color:var(--muted)}
.research-note{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);align-items:start;gap:clamp(44px,5vw,96px);max-width:var(--content-max);margin:0 auto 32px;padding:clamp(32px,3.4vw,58px);background:#fffaf0;border:1px solid #d9c79f;border-radius:12px}.research-note>div:first-child{padding-top:3px;border-top:4px solid #201f1b}.research-note .eyebrow{margin-top:18px}.research-note h2{max-width:13ch;margin:0;font-size:clamp(30px,2.25vw,44px);line-height:1.2;letter-spacing:-.055em;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}.research-copy{max-width:70ch;justify-self:end}.research-copy p{margin:0;color:#4f4a41;font-size:clamp(16px,1.05vw,19px);line-height:1.82;letter-spacing:-.02em;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}.research-copy>p:first-child{color:#29261f;font-size:clamp(19px,1.28vw,23px);line-height:1.72;letter-spacing:-.025em}.research-copy p+p{margin-top:clamp(17px,1.5vw,24px)}.study-purpose{margin-block:clamp(25px,2vw,34px)!important;padding:clamp(20px,1.8vw,28px) 0!important;border-block:1px solid #bda978;border-left:0;background:transparent;color:#28241d!important;font-size:clamp(18px,1.18vw,21px)!important;line-height:1.74!important}.study-purpose strong{display:block;margin-bottom:7px;font-size:.78em;letter-spacing:.06em;text-transform:uppercase}
.active-filter{max-width:var(--content-max);margin:0 auto 14px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:14px;color:var(--muted)}.atlas{position:relative;max-width:var(--content-max);margin:0 auto}.edge-layer{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:3}.edge{fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.16}.edge.outbound{stroke:var(--edge-color,#1769aa);filter:drop-shadow(0 1px 1px rgba(255,255,255,.9)) drop-shadow(0 1px 2px rgba(29,23,14,.18))}.edge.primary-flow{stroke-width:7px;opacity:.92}.edge.secondary-flow{stroke-width:3.2px;opacity:.58}.edge.context-link{stroke-width:1.8px;opacity:.42}.edge.documented-link{stroke-dasharray:none}.edge.editorial-link{stroke-dasharray:9 7}.year-row{position:relative;display:grid;grid-template-columns:78px 1fr;gap:12px;padding:18px 0 22px;border-top:1px solid var(--line)}.year-row:last-child{border-bottom:1px solid var(--line)}.year-label{position:sticky;top:104px;align-self:start;z-index:5}.year-label strong{display:block;font:750 24px ui-monospace,monospace}.year-label span{display:block;margin-top:6px;font-size:12px;color:#81786c;letter-spacing:.04em}
.keyword-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:clamp(8px,.7vw,13px)}.keyword-card{position:relative;z-index:4;min-height:156px;padding:clamp(14px,1vw,18px);border:0;border-radius:6px;background:var(--node-color);color:var(--node-ink);text-align:left;cursor:pointer;box-shadow:0 2px 5px rgba(42,32,15,.12);transition:transform .16s ease,box-shadow .16s ease,opacity .2s ease,filter .16s ease}.keyword-card:hover{transform:translateY(-3px);filter:saturate(1.1);box-shadow:var(--shadow)}.keyword-card .seq{display:block;margin-bottom:8px;color:inherit;opacity:.78;font:750 12px ui-monospace,monospace}.keyword-card .name{display:block;font-size:clamp(17px,1.12vw,20px);line-height:1.3;font-weight:800;letter-spacing:-.03em;text-wrap:pretty}.keyword-card .meaning{display:-webkit-box;margin-top:9px;padding-top:8px;border-top:1px solid color-mix(in srgb,currentColor 42%,transparent);overflow:hidden;color:inherit;font-size:clamp(14px,.9vw,16px);line-height:1.5;font-weight:650;letter-spacing:-.015em;word-break:keep-all;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:2}.keyword-card .meta{display:inline-flex;align-items:center;max-width:100%;margin-top:11px;padding:4px 7px;border-radius:4px;background:rgba(255,255,255,.22);color:inherit;font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.keyword-card.year-anchor{grid-column:span 2;min-height:174px;padding:clamp(16px,1.2vw,21px);border:3px solid #25221c;background:var(--annual-background,var(--node-color));box-shadow:5px 5px 0 #25221c}.keyword-card.year-anchor .name{max-width:90%;font-size:clamp(21px,1.42vw,25px)}.keyword-card.year-anchor .meaning{max-width:92%;font-size:clamp(14px,.95vw,17px)}.anchor-badge{display:inline-block;margin-bottom:9px;padding:4px 7px;background:#25221c;color:#fff;font:800 12px ui-monospace,monospace;letter-spacing:.06em}.keyword-card.selected{box-shadow:0 0 0 4px #fff,0 0 0 8px var(--node-color),var(--shadow);transform:translateY(-3px)}.keyword-card.connected{box-shadow:0 0 0 3px rgba(255,255,255,.85),var(--shadow)}.atlas.has-selection .keyword-card:not(.selected):not(.connected){opacity:.62;filter:saturate(.58)}.keyword-card[hidden],.year-row[hidden]{display:none}
.inspector{right:0;width:var(--inspect);padding:32px 30px 56px;border-left:1px solid var(--line);box-shadow:-20px 0 45px rgba(38,31,17,.16);z-index:70;visibility:hidden;transform:translateX(104%);transition:transform .22s ease,visibility 0s linear .22s}body.has-detail .inspector{visibility:visible;transform:translateX(0);transition-delay:0s}.inspector-close{position:sticky;z-index:2;top:0;margin-left:auto;display:block;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted);font:650 13px inherit;cursor:pointer;box-shadow:0 2px 8px rgba(38,31,17,.12)}.inspector-close:hover{color:var(--ink);border-color:#8f8373}.inspector-empty{display:none}.inspector-empty h2{max-width:360px;margin:3px 0 12px;color:var(--ink);font-size:30px;line-height:1.3;letter-spacing:-.045em}.inspector-empty>p:last-child{max-width:350px;margin:0;font-size:16px;line-height:1.7}.empty-orbit{width:78px;height:78px;margin-bottom:24px;border:2px solid #c9b79a;border-radius:50%;box-shadow:inset 0 0 0 18px #f3e7d1}
.inspector-top{padding:10px 0 24px;border-bottom:1px solid var(--line)}.inspector-year{font:750 13px ui-monospace,monospace;color:var(--node-color)}.inspector h2{margin:10px 0 12px;font-size:36px;line-height:1.12;letter-spacing:-.055em}.summary{margin:0;color:#49453e;font-size:18px;line-height:1.65}.status-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.pill{padding:6px 9px;border-radius:5px;background:#eee5d5;color:#5c554b;font-size:13px}
.annual-frame{margin:20px 0 0;padding:17px;border:2px solid #29251e;border-radius:8px;background:#fff3cf}.annual-frame.is-anchor{background:var(--node-color);color:var(--node-ink)}.annual-frame>span{display:block;margin-bottom:7px;font:800 12px ui-monospace,monospace;letter-spacing:.08em}.annual-frame strong{display:block;font-size:17px;line-height:1.35}.annual-frame p{margin:7px 0 0;font-size:14px;line-height:1.55}.annual-frame button{margin-top:12px;padding:8px 10px;border:1px solid currentColor;border-radius:5px;background:#fff;color:#29251e;font:750 13px inherit;cursor:pointer}
.detail-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.detail-title-row h3{margin:0}.detail-title-row>span{color:var(--muted);font-size:12px}.media-list{display:grid;gap:9px}.media-card{display:block;padding:15px;border:1px solid #d7cab4;border-radius:8px;background:#fff;color:var(--ink);text-decoration:none;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.media-card:hover{transform:translateY(-2px);border-color:#8a7554;box-shadow:0 8px 20px rgba(57,43,18,.09)}.media-type{display:inline-block;margin-bottom:8px;padding:4px 7px;border-radius:4px;background:#eee5d5;color:#6a573a;font:800 11px ui-monospace,monospace;letter-spacing:.06em}.media-card strong{display:block;font-size:16px;line-height:1.45}.media-card p{margin:8px 0;color:#4d4942;font-size:14px;line-height:1.65;word-break:keep-all}.media-card small{display:block;color:#71695f;font-size:12px}.media-empty{padding:17px;border:1px dashed #b9aa90;border-radius:8px;background:#faf5e9}.media-empty strong{display:block;font-size:15px;line-height:1.45}.media-empty p{margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.6}
.detail-section{padding:25px 0;border-bottom:1px solid var(--line)}.detail-section>h3{margin:0 0 18px;font-size:17px}.story-step{display:grid;grid-template-columns:32px 1fr;gap:12px;margin:22px 0}.story-num{display:grid;place-items:center;width:28px;height:28px;border-radius:4px;background:var(--node-color);color:var(--node-ink);font:800 13px ui-monospace,monospace}.story-step strong{display:block;font-size:16px;line-height:1.4}.story-step p{margin:7px 0 0;color:#4d4942;font-size:15px;line-height:1.75;word-break:keep-all}.knowledge-highlight{margin:0 .08em;padding:0 .08em;color:inherit;background:linear-gradient(transparent 54%,rgba(255,215,64,.72) 54%,rgba(255,226,92,.72) 90%,transparent 90%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.connection-list,.connection-group{display:grid;gap:9px}.connection-group.primary{margin-bottom:24px}.connection-group.expanded{gap:7px}.connection-subtitle{margin-top:26px!important;padding-top:22px;border-top:1px dashed var(--line)}.connection-button{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;width:100%;padding:11px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:left;cursor:pointer}.connection-group.primary .connection-button{border-width:2px;border-color:color-mix(in srgb,var(--node-color,#596579) 48%,var(--line));box-shadow:0 7px 18px rgba(57,43,18,.08)}.connection-group.expanded .connection-button.context-link{border-style:dashed;background:#fcf8ef}.connection-button:hover{border-color:#8e8170}.connection-button .year{font:700 calc(14px * var(--reader-scale)) ui-monospace,monospace;color:var(--muted)}.connection-button strong{font-size:calc(17px * var(--reader-scale));line-height:1.4}.connection-button small{font:650 calc(13px * var(--reader-scale)) ui-monospace,monospace;color:#756c61}.question-box{margin-top:24px;padding:19px;border-radius:8px;background:color-mix(in srgb,var(--node-color) 17%,#fff8e8);border:1px solid color-mix(in srgb,var(--node-color) 38%,transparent)}.question-box span{font:800 12px ui-monospace,monospace;letter-spacing:.11em;color:var(--node-color)}.question-box p{margin:9px 0 0;font-size:17px;line-height:1.65;font-weight:700}.source-note{margin-top:18px;color:#71695f;font-size:13px;line-height:1.65}
.view-switch{display:flex;flex-wrap:wrap;gap:8px;max-width:var(--content-max);margin:0 auto 18px;padding:6px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.6)}.view-switch button,.series-filters button{border:1px solid transparent;border-radius:10px;background:transparent;padding:11px 15px;color:var(--muted);font-weight:800;cursor:pointer}.view-switch button[aria-pressed=true],.series-filters button[aria-pressed=true]{border-color:var(--line-strong);background:#201f1b;color:#fff}.comparison-view{max-width:var(--content-max);margin:0 auto}.comparison-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:clamp(22px,3vw,38px);border:2px solid #27231c;border-radius:20px;background:#fff7e5}.comparison-head h2{margin:4px 0 9px;font:800 clamp(27px,2.4vw,42px)/1.16 Fraunces,serif}.comparison-head p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.65}.comparison-count{text-align:right;flex:0 0 auto}.comparison-count strong{display:block;font:800 clamp(40px,4vw,64px)/1 ui-monospace,monospace}.comparison-count span{color:var(--muted);font-size:13px}.secondary-source-note{margin:14px 0 18px;padding:17px 19px;border-left:5px solid #b86b3a;background:#fff1df}.secondary-source-note p{margin:6px 0 0;color:#604c3f;line-height:1.65}.comparison-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}.series-filters{display:flex;flex-wrap:wrap;gap:5px}.comparison-controls label{display:flex;align-items:center;gap:8px;font-weight:800}.comparison-controls select{padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:#fff}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}.comparison-year{margin:26px 0}.comparison-year>h3{margin:0 0 12px;font:800 26px ui-monospace,monospace}.comparison-card{min-height:150px;padding:16px;border:1px solid var(--line-strong);border-top:7px solid #5d7894;border-radius:12px;background:#fff;box-shadow:0 3px 9px rgba(42,32,15,.07)}.comparison-card.source-life-trend{border-top-color:#a16b3c}.comparison-card.source-trend-note{border-top-color:#7d5e8e}.comparison-card .source-badge{display:inline-block;margin-right:8px;color:#6b6256;font-size:11px;font-weight:900}.comparison-card>small{color:#9b8f7d;font:700 11px ui-monospace,monospace}.comparison-card h4{margin:13px 0 8px;font-size:18px;line-height:1.35}.comparison-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.phenomenon-section{margin-top:44px;padding-top:26px;border-top:2px solid #2b271f}.phenomenon-section h3{margin:0;font:800 clamp(24px,2vw,34px)/1.2 Fraunces,serif}.phenomenon-section>p:not(.eyebrow){max-width:780px;color:var(--muted);line-height:1.65}.phenomenon-candidates{display:grid;gap:10px;margin-top:18px}.candidate-pair{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}.candidate-pair>div{display:grid;gap:5px}.candidate-pair span{color:var(--muted);font-size:11px}.candidate-pair strong{font-size:16px}.candidate-pair>b{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#f0e4ca;font:800 13px ui-monospace,monospace}body.comparison-mode .app-shell{grid-template-columns:1fr}body.comparison-mode .filters{display:none}body.comparison-mode .workspace{grid-column:1}body.comparison-mode .research-note{display:block;margin-bottom:14px;padding:14px 22px}body.comparison-mode .research-note>div:first-child{display:none}body.comparison-mode .research-copy p:not(.study-purpose){display:none}body.comparison-mode .study-purpose{margin:0;padding:11px 14px;font-size:clamp(16px,1vw,18px)!important}
.participation{max-width:var(--content-max);margin:clamp(24px,4vw,56px) auto 0;padding:clamp(22px,3vw,36px);border:2px solid var(--line-strong);border-radius:24px;background:linear-gradient(145deg,#fffdf8,#f5efe2);box-shadow:var(--shadow)}
.participation-intro{max-width:760px}.participation-intro h2{margin:6px 0 10px;font:800 clamp(24px,2.4vw,38px)/1.18 Fraunces,serif}.participation-intro>p:last-child{color:var(--muted);line-height:1.7}.participation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:clamp(20px,3vw,44px);margin-top:24px}.insight-form,.private-report form{display:grid;gap:14px}.insight-form label,.private-report label{display:grid;gap:7px;font-size:13px;font-weight:800}.insight-form textarea,.private-report textarea,.private-report input,.insight-form select,.private-report select{width:100%;border:1px solid var(--line-strong);border-radius:13px;background:#fff;padding:12px 14px;color:var(--ink);font:inherit}.insight-form textarea{min-height:120px;resize:vertical}.private-report textarea{min-height:140px;resize:vertical}.insight-context{padding:10px 12px;border-radius:12px;background:#f2ead8;color:#65563e;font-size:12px;font-weight:800}.check-row{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;font-weight:600!important;line-height:1.5}.check-row input{margin-top:3px}.submit-button{justify-self:start;border:2px solid #1d1b18;border-radius:999px;background:#1d1b18;color:white;padding:11px 18px;font-weight:900;cursor:pointer}.submit-button:hover{background:var(--accent);border-color:var(--accent)}.form-status{min-height:1.4em;margin:0;color:var(--accent);font-size:12px;font-weight:800}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.approved-insights h3{margin:0 0 12px;font:800 21px/1.2 Fraunces,serif}.approved-insights>div{display:grid;gap:10px}.insight-card,.insights-empty{margin:0;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fff}.insight-card span{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.08em}.insight-card p{margin:7px 0;line-height:1.6}.insight-card small{color:var(--muted)}.private-report{margin-top:24px;border-top:1px solid var(--line);padding-top:18px}.private-report summary{cursor:pointer;font-weight:900;color:#594b35}.private-report>p{color:var(--muted);font-size:13px;line-height:1.65}.private-report form{max-width:760px;margin-top:16px}
.empty-state{max-width:var(--content-max);margin:30px auto;padding:50px;text-align:center;border:2px dashed var(--line);border-radius:10px}.empty-state button{display:block;margin:16px auto 0;padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:14px}.site-rights{max-width:var(--content-max);margin:32px auto 0;padding-top:20px;border-top:1px solid var(--line);color:#6b645a;font-size:13px;line-height:1.6}.site-rights p{margin:4px 0}
.toast{position:fixed;z-index:100;left:50%;bottom:24px;transform:translate(-50%,16px);padding:12px 16px;border-radius:8px;background:#27251f;color:#fff;font-size:14px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
body.sidebar-collapsed{--panel:56px}body.sidebar-collapsed .filters{width:56px;padding-left:7px;padding-right:7px}body.sidebar-collapsed .sidebar-toolbar{justify-content:center}body.sidebar-collapsed .filters-body{display:none}body.sidebar-collapsed .workspace{padding-left:34px;padding-right:34px}
@media(max-width:1180px){:root{--panel:210px;--inspect:min(440px,42vw)}.topbar{grid-template-columns:210px 1fr auto}.brand small{display:none}.research-note{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(32px,4vw,56px)}.inspector{padding-left:23px;padding-right:23px}.inspector h2{font-size:30px}.story-step{grid-template-columns:28px 1fr}.story-step p{font-size:15px}}
@media(max-width:980px){.research-note{grid-template-columns:1fr;gap:32px}.research-note>div:first-child{max-width:620px}.research-note h2{max-width:18ch}.research-copy{max-width:68ch;justify-self:start}.participation-grid{grid-template-columns:1fr}}
@media(max-width:900px){.app-shell{display:flex;flex-direction:column;padding-top:144px}.topbar{grid-template-columns:auto 1fr auto;height:88px;padding:0 12px}.search-wrap{position:fixed;top:88px;left:0;right:0;height:56px;border-radius:0}.brand-mark{display:none}.brand strong{font-size:16px}.top-actions{gap:4px}.quiet-button{padding:8px;font-size:12px}.filters{position:relative;top:auto;bottom:auto;display:block;width:100%;max-height:390px;padding:12px 16px 20px;overflow:auto;border-right:0;border-bottom:1px solid var(--line)}body.sidebar-collapsed .filters{width:100%;height:58px;padding:8px 14px}body.sidebar-collapsed .sidebar-toolbar{justify-content:flex-start}body.sidebar-collapsed .workspace{padding-left:14px;padding-right:14px}.workspace{grid-column:auto;padding:26px 14px}.workspace-head{align-items:flex-start}.workspace-head h1{font-size:32px}.workspace-head p:not(.eyebrow){font-size:15px}.result-summary strong{font-size:34px}.research-note{padding:clamp(24px,6vw,38px)}.inspector{display:none}body.has-detail .inspector{display:block;position:fixed;top:144px;bottom:0;left:0;right:0;width:100%;height:auto;border-left:0;border-top:1px solid var(--line);z-index:40}body.has-detail .inspector-close{position:fixed;top:154px;right:14px;z-index:45;box-shadow:0 2px 8px rgba(38,31,17,.14)}.keyword-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.year-row{grid-template-columns:58px 1fr;gap:8px}.year-label strong{font-size:19px}.keyword-card{min-height:144px}.keyword-card .name{font-size:16px}.keyword-card .meaning{font-size:13px}.site-rights{font-size:12px}}
@media(max-width:520px){.research-note{gap:25px}.research-note h2{max-width:14ch;font-size:30px}.research-copy{max-width:none}.research-copy>p:first-child{font-size:18px}.study-purpose{padding-block:18px!important}.topbar{grid-template-columns:1fr auto}.brand strong{font-size:15px}.workspace-head{display:block}.result-summary{text-align:left;margin-top:12px}.keyword-grid{grid-template-columns:1fr}.keyword-card.year-anchor{grid-column:span 1}.year-row{grid-template-columns:52px 1fr}.research-copy p{font-size:15px}}
@media(max-width:700px){.comparison-head{display:block}.comparison-count{text-align:left;margin-top:18px}.comparison-controls{align-items:stretch;flex-direction:column}.candidate-pair{grid-template-columns:1fr}.candidate-pair>b{width:auto;height:auto;border-radius:999px;padding:7px 12px;justify-self:start}.view-switch button{flex:1 1 220px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.edge.same-year{stroke-linecap:round}.keyword-card.dimmed{opacity:.24}


/* v0.5 reading comfort: scalable type, Korean wrapping and safe scroll endings */
:root{--reader-scale:1}
.font-controls{display:flex;gap:4px}.font-button{min-width:44px;font-weight:800}.font-button:disabled{opacity:.38;cursor:not-allowed}
.inspector{padding-bottom:max(120px,calc(72px + env(safe-area-inset-bottom)));overscroll-behavior:contain;scroll-padding-bottom:120px}
.inspector-content{padding-bottom:48px}
.inspector h2{font-size:calc(36px * var(--reader-scale));overflow-wrap:anywhere;word-break:keep-all;text-wrap:balance}
.summary,.story-step p,.question-box p,.media-card p,.source-note{font-size:calc(1em * var(--reader-scale));word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.story-step strong,.detail-section>h3{font-size:calc(1em * var(--reader-scale));word-break:keep-all;text-wrap:balance}
.story-step p{line-height:1.82}.question-box p{line-height:1.72}.media-card{padding:18px}.detail-section{padding-block:30px}
@media(max-width:1180px){.inspector h2{font-size:calc(30px * var(--reader-scale))}}
@media(max-width:900px){
  body.has-detail{overflow:hidden}
  body.has-detail::before{content:"";position:fixed;inset:0;background:rgba(32,31,27,.32);z-index:69}
  body.has-detail .inspector{display:block;top:max(18vh,116px);height:auto;border-radius:18px 18px 0 0;padding:22px 20px max(110px,calc(70px + env(safe-area-inset-bottom)));box-shadow:0 -18px 50px rgba(38,31,17,.22);z-index:70}
  body.has-detail .inspector::before{content:"";display:block;width:42px;height:5px;margin:-10px auto 14px;border-radius:999px;background:rgba(32,31,27,.2)}
  body.has-detail .inspector-close{top:calc(max(18vh,116px) + 14px);right:16px}
  .inspector h2{padding-right:58px;font-size:calc(28px * var(--reader-scale))}
  .summary{font-size:calc(16px * var(--reader-scale))}
}
@media(max-width:520px){.top-actions{gap:3px}.font-button{min-width:38px;padding-inline:7px}.quiet-button{padding-inline:8px}.story-step{grid-template-columns:30px minmax(0,1fr);gap:11px}.detail-section{padding-block:25px}}

.basic-story{display:block}.basic-story>div{max-width:72ch}.editorial-pending{margin:18px 0 0;padding:14px 16px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:14px;line-height:1.65}

.connection-button .connection-reason{grid-column:2/-1;margin:2px 0 0;color:var(--muted);font-size:calc(16px * var(--reader-scale));line-height:1.55;text-align:left;word-break:keep-all;overflow-wrap:anywhere}

.connection-count-badge{position:absolute;right:10px;bottom:10px;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.3);font:750 10px ui-monospace,monospace}.connection-reason{grid-column:1/-1;padding-top:8px;border-top:1px solid var(--line)}.connection-reason p{margin:5px 0;color:var(--muted);font-size:calc(16px * var(--reader-scale));line-height:1.55}.connection-reason b{color:var(--ink)}
@media(min-width:1401px){body.has-detail .research-note{display:none}body.has-detail .workspace{margin-right:var(--inspect);transition:margin-right .22s ease}body.has-detail .workspace-head{margin-bottom:14px}body.has-detail .topbar{padding-right:calc(var(--inspect) + 22px)}}

.promotion-banner{display:block;position:relative;z-index:4;width:100%;max-width:var(--content-max);margin:28px auto 34px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#eee4d1;box-shadow:var(--shadow)}.promotion-banner picture,.promotion-banner img{display:block;width:100%;height:auto}.promotion-banner img{object-fit:contain}.promotion-banner:focus-visible{outline:4px solid rgba(23,105,170,.3);outline-offset:3px}@media(max-width:900px){.promotion-banner{margin:20px auto 26px;border-radius:11px}.promotion-banner img{aspect-ratio:auto}}@media(max-width:520px){.promotion-banner img{aspect-ratio:auto}}

.inspector{font-size:17px}.detail-title-row>span,.media-card small{font-size:calc(14px * var(--reader-scale))}.media-card strong{font-size:calc(17px * var(--reader-scale))}.media-type{font-size:calc(12px * var(--reader-scale))}.pill{font-size:calc(14px * var(--reader-scale))}
