@font-face{font-family:Diagram;src:url('assets/diagram-font.ttf') format('truetype');font-weight:100 900;font-display:block}
:root{--blue:#2457e6;--navy:#17283f;--muted:#62748d;--pale:#edf4ff;--line:#dce7f7}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:Diagram,'Noto Sans KR','Malgun Gothic',sans-serif;background:#e5ebf3;color:var(--navy)}button{font:inherit;cursor:pointer}#viewport{position:absolute;inset:0 0 52px;display:grid;place-items:center}.stage{width:1600px;height:900px;position:absolute;transform-origin:center;overflow:hidden;background:white;box-shadow:0 16px 80px #14233c18}.slide{position:absolute;inset:0;background:white;display:none;overflow:hidden}.slide.active{display:block}.el{position:absolute}.text{line-height:1.5;word-break:keep-all;overflow-wrap:normal;letter-spacing:-.035em}.text b,.blue{color:var(--blue)}.label{font-size:20px;font-weight:750;letter-spacing:.14em;color:var(--blue)}.title{font-size:50px;font-weight:780;line-height:1.24;letter-spacing:-.055em}.subtitle{font-size:27px;line-height:1.55;color:var(--muted);font-weight:400}.body{font-size:27px;color:var(--muted)}.center{text-align:center}.bold{font-weight:750}.small{font-size:21px}.muted{color:var(--muted)}.white{color:white}.image{object-fit:contain;mix-blend-mode:multiply}.pill{border-radius:60px;background:var(--pale);padding:14px 24px;text-align:center;font-size:25px;font-weight:650}.panel{background:linear-gradient(140deg,#f6faff,#e9f2ff);border:1px solid #e5eefb;border-radius:28px}.node{background:linear-gradient(135deg,#f6faff,#e5f0ff);border:1px solid #dce9fd;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}.node strong{font-size:29px;line-height:1.25}.node span{font-size:22px;color:var(--muted);line-height:1.5}.node.core{color:white;background:linear-gradient(145deg,#4076ff,#1448d6);box-shadow:0 16px 36px #2457e62c;border:8px solid #eef4ff}.node.core span{color:#e3edff}.icon{display:block;color:var(--blue);flex:none}.node .icon{width:64px;height:64px}.core .icon{color:white}.footer{position:absolute;left:80px;right:80px;bottom:27px;height:27px;font-size:15px;color:#8a9ab0;display:flex;justify-content:space-between;letter-spacing:.05em}.footer:before{content:'';position:absolute;left:0;right:0;top:-15px;height:1px;background:#eaf0f8}.arrow{color:var(--blue);font-size:55px;line-height:1;text-align:center}.crop{position:absolute;overflow:hidden}.crop img{position:absolute;max-width:none;mix-blend-mode:multiply}.rule{height:4px;background:var(--blue)}.num{font-size:24px;font-weight:750;color:var(--blue)}.caption{font-size:23px;text-align:center;color:var(--muted);line-height:1.5}.tag{font-size:21px;font-weight:650;color:var(--blue);background:#eaf2ff;border-radius:18px;padding:7px 16px;text-align:center}.metric{font-size:30px;font-weight:750;text-align:center}.lineart{position:absolute;overflow:visible;pointer-events:none}.science{font-size:23px;color:var(--muted);line-height:1.55}.science strong{font-size:26px;color:var(--navy)}.tablebox{border-radius:18px;background:#f5f9ff;padding:18px 20px}.tablebox h3{margin:0 0 9px;font-size:24px;color:var(--blue)}.tablebox p{margin:0;font-size:20px;color:var(--muted);line-height:1.55}.legend{font-size:17px;color:var(--muted)}
#controls{height:52px;position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:12px;background:#f7f9fc;border-top:1px solid #d8e1ef;color:#49617e;font-size:13px;z-index:20}#controls button{border:0;border-radius:8px;background:transparent;color:#49617e;padding:7px 14px}#controls button:hover,#controls button:focus-visible{background:#e3ecfb;outline:2px solid #b5ccf9}#counter{min-width:70px;text-align:center;font-variant-numeric:tabular-nums}#progress{position:fixed;bottom:52px;left:0;height:3px;background:var(--blue);z-index:22;transition:width .2s}#overview{position:fixed;inset:0;background:#e7edf6;z-index:40;overflow:auto;padding:30px;display:none}#overview.open{display:block}.overview-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.overview-head button{padding:9px 20px;border:0;border-radius:8px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:22px}.thumb{height:255px;position:relative;background:white;overflow:hidden;cursor:pointer;border:3px solid transparent;border-radius:8px}.thumb:hover,.thumb:focus{border-color:var(--blue)}.thumb .slide{display:block;transform:scale(.24);transform-origin:top left;width:1600px;height:900px;pointer-events:none}.thumb-label{position:absolute;bottom:0;left:0;right:0;background:white;padding:10px 14px;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.presentation #viewport{bottom:0}.presentation #controls,.presentation #progress{display:none}.help{position:fixed;right:24px;bottom:70px;z-index:50;padding:22px 28px;background:#17283f;color:white;line-height:1.9;border-radius:14px;display:none;font-size:15px}.help.open{display:block}
@media print{@page{size:1600px 900px;margin:0}html,body{overflow:visible;background:white;height:auto}#viewport{display:block;position:static}.stage{position:static;transform:none!important;box-shadow:none;width:1600px;height:auto;overflow:visible}.slide{display:block!important;position:relative;width:1600px;height:900px;page-break-after:always;break-after:page;print-color-adjust:exact;-webkit-print-color-adjust:exact}#controls,#progress,#overview,.help{display:none!important}}
[data-source="27"] .tablebox h3{font-size:19px;line-height:1.3;margin-bottom:7px;white-space:nowrap;letter-spacing:-.04em}[data-source="27"] .tablebox p{font-size:18px;line-height:1.4;letter-spacing:-.045em}[data-source="32"] .el[style*="color:white"] .icon{color:white}
.halo{border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#f7fbff 30%,#eaf3ff 100%);border:1px solid #edf4ff}
.solidbox{background:#2457e6;border-radius:18px}
.solid{background:#2457e6;color:#fff}
.platform{background:linear-gradient(#f8fbff,#dcecff);border:1px solid #d0e1fa;border-radius:50%;box-shadow:0 15px 0 #e5effc}
.pillar{border:2px solid #cdddf5;background:linear-gradient(#fafcff,#edf4ff);border-radius:70px 70px 0 0}
.core-circle{border-radius:50%;background:linear-gradient(145deg,#4076ff,#1448d6);color:white;border:7px solid #edf4ff;box-shadow:0 16px 36px #2457e62c;display:flex;align-items:center;justify-content:center;text-align:center;font-size:32px;font-weight:750;line-height:1.45}
.switch{background:#2457e6;border-radius:20px;padding:4px}.switch i{display:block;width:26px;height:26px;background:white;border-radius:50%;margin-left:28px;box-shadow:0 2px 4px #00226a22}
.pill{line-height:1.35;padding:13px 20px}.body,.muted{color:#526680}.subtitle{color:#526680}.text{line-height:1.48}.panel{background:linear-gradient(145deg,#f7fbff,#eef5ff)}
[data-source="27"] .tablebox{padding:12px 11px;background:white;border:1px solid #e0eafb}
[data-source="27"] .tablebox h3{font-size:23px;line-height:1.25;margin-bottom:9px;white-space:normal;letter-spacing:-.05em}
[data-source="27"] .tablebox p{font-size:22px;line-height:1.4;letter-spacing:-.05em}
.help a{color:#b7d2ff}.help small{display:block;margin-top:14px;font-size:12px}
:root{--blue:#36594c;--navy:#272c2a;--muted:#626a65;--pale:#f1f1ea;--line:#dce1d7}
body{background:#e9e8e2;color:var(--navy)}
.label,.blue,.text b,.num,.arrow{color:var(--blue)}
.body,.muted,.subtitle,.caption{color:#626a65}
.panel{background:#f5f5ef;border:1px solid #e2e5db;border-radius:16px}
.halo{background:#f3f3ec;border:1px solid #e7e9e0}
.pill{background:#eeeee5;border-radius:12px;font-weight:650;color:#37443a}
.pill.solid,.solidbox{background:#465e4e;color:white;border-radius:12px}
.platform{background:linear-gradient(#f7f7f0,#e5e8de);border:1px solid #d9dfd1;box-shadow:0 10px 0 #edf0e7}
.pillar{background:#f7f7f1;border-color:#d9dfd1;border-radius:36px 36px 0 0}
.core-circle{background:#465e4e;border:7px solid #edf0e7;box-shadow:none;color:white}
.switch{background:#69806b}.switch i{box-shadow:none}
.rule{background:#36594c}
.tablebox h3,[data-source="27"] .tablebox h3{color:#36594c}
[data-source="27"] .tablebox{border-color:#e0e3d9}
[data-source="27"] .tablebox p{color:#626a65}
.footer{color:#8c938a}.footer:before{background:#e8ebe2}
.white{color:white}
#controls{background:#f7f7f2;border-color:#d9ddd2;color:#59675a}#controls button{color:#59675a}#controls button:hover,#controls button:focus-visible{background:#e7eadf;outline-color:#a5b59d}#progress{background:#69806b}#overview{background:#e9ece3}.thumb:hover,.thumb:focus{border-color:#69806b}.help{background:#303a32}.help a{color:#cedbc4}
.grid{grid-template-columns:repeat(auto-fit,minmax(min(350px,100%),1fr))}
