@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Noto+Sans+KR:wght@300;400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500&display=swap');
:root{--bg:#07101a;--panel:#0c1722;--line:#263644;--text:#eef3f5;--muted:#8495a3;--cyan:#46d5e8;--green:#57d49b;--gold:#d8b36b;--red:#ff7e78;--paper:#eef1ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'Noto Sans KR',sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}.obs-header{height:76px;padding:0 clamp(22px,4vw,68px);display:flex;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;background:#07101aee;backdrop-filter:blur(18px);z-index:20}.obs-brand{display:flex;align-items:center;gap:11px}.obs-brand img{width:38px;filter:brightness(2)}.obs-brand span{display:grid}.obs-brand b{font:600 13px 'IBM Plex Mono';letter-spacing:.12em}.obs-brand small{color:var(--muted);font:9px 'IBM Plex Mono';letter-spacing:.08em;margin-top:3px}.obs-header nav{margin:auto;display:flex;gap:32px}.obs-header nav a{font:11px 'IBM Plex Mono';color:#a9b6c0}.obs-header nav a:hover{color:var(--cyan)}.header-state{display:flex;align-items:center;gap:8px;font:9px 'IBM Plex Mono';color:#aeb9c1}.header-state i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}
.obs-hero{min-height:620px;padding:90px clamp(22px,6vw,96px);display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:radial-gradient(circle at 75% 50%,#163b4b80,transparent 32%),#07101a}.obs-hero:after{content:'SEOUL 37.5665° N  ·  GLOBAL RESEARCH INTERFACE';position:absolute;bottom:18px;left:clamp(22px,6vw,96px);font:8px 'IBM Plex Mono';letter-spacing:.12em;color:#496172}.eyebrow,.panel-label,.registry-head p,.section-title>p,.method>div>p,.brief-lead>p{font:10px 'IBM Plex Mono';letter-spacing:.14em;color:var(--cyan)}.hero-copy h1{font:500 clamp(62px,7.5vw,118px)/.9 'Source Serif 4',serif;letter-spacing:-.06em;margin:28px 0}.hero-copy h1 em{font-style:italic;color:var(--cyan)}.hero-copy>p:not(.eyebrow){color:#a2b0bb;line-height:1.85;max-width:610px;font-size:15px}.hero-actions{display:flex;gap:12px;margin-top:30px}.hero-actions a{padding:14px 18px;border:1px solid #3a5669;font:10px 'IBM Plex Mono'}.hero-actions a:first-child{background:var(--cyan);color:#07101a;border-color:var(--cyan);font-weight:600}
.system-map{width:min(530px,42vw);aspect-ratio:1;justify-self:center;position:relative;border-radius:50%;border:1px solid #2c5363;background:radial-gradient(circle,#183c4a 0 1px,transparent 2px);background-size:18px 18px}.system-map:before,.system-map:after{content:'';position:absolute;border:1px solid #24434f;border-radius:50%;inset:14%}.system-map:after{inset:30%}.map-grid{position:absolute;inset:50% 0;border-top:1px solid #24434f}.map-grid:after{content:'';position:absolute;left:50%;top:-265px;height:530px;border-left:1px solid #24434f}.map-core{position:absolute;inset:37%;border:1px solid var(--cyan);border-radius:50%;display:grid;place-content:center;text-align:center;background:#0b1e28;box-shadow:0 0 45px #46d5e826;z-index:2}.map-core span{font:9px 'IBM Plex Mono';color:var(--cyan)}.map-core b{font:11px/1.5 'IBM Plex Mono';margin-top:5px}.orbit{position:absolute;display:grid;place-items:center;width:78px;height:78px;border:1px solid #3b5b67;border-radius:50%;background:#0a1720;font:9px 'IBM Plex Mono';z-index:3}.orbit-a{top:3%;left:43%}.orbit-b{right:5%;top:44%}.orbit-c{bottom:4%;left:43%}.orbit-d{left:3%;top:44%}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.metrics article{padding:25px clamp(18px,3vw,44px);border-right:1px solid var(--line)}.metrics span{font:9px 'IBM Plex Mono';color:var(--muted)}.metrics b{display:block;font:400 31px 'IBM Plex Mono';margin:10px 0 4px}.metrics small{color:#6f8493;font-size:10px}.workspace{display:grid;grid-template-columns:280px 1fr;min-height:800px}.filters-panel{padding:42px 26px;border-right:1px solid var(--line);background:#08131d}.filters-panel h2{font:500 24px 'Source Serif 4';margin:8px 0 24px}.search{height:44px;border:1px solid var(--line);display:flex;align-items:center;padding:0 12px;margin-bottom:30px}.search input{width:100%;border:0;outline:0;background:none;color:white;padding:10px}.filter-group{display:grid;margin:25px 0}.filter-group>b{font:9px 'IBM Plex Mono';color:#526b7b;margin-bottom:8px}.filter-group button{border:0;background:none;color:#8193a0;text-align:left;padding:10px 8px;display:flex;justify-content:space-between;cursor:pointer;font:11px 'IBM Plex Mono';border-left:2px solid transparent}.filter-group button.active,.filter-group button:hover{color:var(--text);background:#101f2b;border-color:var(--cyan)}.filter-group i{font-style:normal;color:#4d6877}.aside-link{display:block;border-top:1px solid var(--line);margin-top:35px;padding-top:20px;font:10px 'IBM Plex Mono';color:var(--cyan)}
.registry{padding:42px clamp(20px,4vw,60px)}.registry-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.registry-head h2{font:500 clamp(34px,4vw,52px) 'Source Serif 4';margin:7px 0}.registry-actions{display:flex;gap:14px;align-items:center}.registry-actions span{font:9px 'IBM Plex Mono';color:var(--muted)}.registry-actions button{border:1px solid #385365;background:none;color:var(--cyan);padding:11px 13px;font:9px 'IBM Plex Mono'}.table-head,.record-row{display:grid;grid-template-columns:minmax(320px,1fr) 120px 130px 100px 20px;gap:14px;align-items:center}.table-head{padding:12px 15px;border-top:1px solid #49606f;border-bottom:1px solid var(--line);font:8px 'IBM Plex Mono';color:#657b8b}.record-row{width:100%;padding:19px 15px;border:0;border-bottom:1px solid var(--line);background:none;color:inherit;text-align:left;cursor:pointer}.record-row:hover{background:#0c1a25}.record-main{display:grid;gap:5px}.record-main small{font:9px 'IBM Plex Mono';color:var(--cyan)}.record-main b{font-size:14px}.record-main p{margin:0;color:#748895;font-size:11px;line-height:1.55}.domain,.record-row time{font:10px 'IBM Plex Mono';color:#8296a3}.record-row i{color:var(--cyan)}.badge{justify-self:start;padding:6px 8px;border:1px solid;font:8px 'IBM Plex Mono'}.badge.evidence{color:var(--green);border-color:#39745c}.badge.use{color:var(--cyan);border-color:#357182}.badge.check{color:var(--gold);border-color:#725e34}.badge.blocked{color:var(--red);border-color:#77403e}.empty{padding:50px;text-align:center;color:var(--muted)}
.programmes{padding:110px clamp(22px,6vw,96px);background:var(--paper);color:#101a22}.section-title{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:50px}.section-title h2{font:500 clamp(45px,6vw,80px)/1 'Source Serif 4';margin:15px 0 0}.section-title span{color:#66717a;justify-self:end;max-width:380px;font-size:13px}.programme-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #17242c}.programme-grid>a,.programme-grid>article{padding:34px 30px 10px 0;min-height:350px;border-right:1px solid #bec6c5}.programme-grid>*+*{padding-left:30px}.programme-grid>*:last-child{border:0}.programme-grid span{font:9px 'IBM Plex Mono';color:#2c75a7}.programme-grid h3{font:500 42px 'Source Serif 4';margin:38px 0 15px}.programme-grid p{font-size:13px;line-height:1.8;color:#59666f;min-height:70px}.programme-grid dl{display:flex;gap:30px;margin:38px 0}.programme-grid dt{font:600 16px 'IBM Plex Mono'}.programme-grid dd{margin:4px 0 0;font-size:9px;color:#778187}
.industry-brief{padding:100px clamp(22px,6vw,96px);display:grid;grid-template-columns:.65fr 1.35fr;gap:7vw;background:#0d1a25}.brief-lead h2{font:500 clamp(45px,5vw,72px)/1.06 'Source Serif 4';margin:22px 0}.brief-lead>span{display:block;color:var(--muted);font-size:13px;line-height:1.8}.readiness{border-top:1px solid #4a6270}.readiness-head,.readiness article{display:grid;grid-template-columns:1fr 130px 1.4fr 80px;gap:20px;align-items:center}.readiness-head{padding:12px 0;color:#627987;font:8px 'IBM Plex Mono'}.readiness article{padding:20px 0;border-top:1px solid var(--line)}.readiness article b{font-size:12px}.readiness article>span:nth-of-type(2){color:#8ea0ab;font-size:11px}.readiness em{font:8px 'IBM Plex Mono';font-style:normal;color:var(--cyan)}.meter{height:4px;background:#243844}.meter i{display:block;height:100%;background:var(--cyan)}.security-note{margin-top:25px;padding:18px;border:1px solid #384f5c;color:#7f929e;font-size:10px;line-height:1.75}.security-note b{color:var(--gold);font:9px 'IBM Plex Mono';margin-right:12px}.method{padding:90px clamp(22px,6vw,96px);display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.method h2{font:500 clamp(50px,6vw,82px)/1 'Source Serif 4';margin:25px 0}.method ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.method li{display:grid;grid-template-columns:50px 100px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);align-items:center}.method li span{font:9px 'IBM Plex Mono';color:var(--cyan)}.method li b{font:12px 'IBM Plex Mono'}.method li p{margin:0;color:var(--muted);font-size:12px}
dialog{width:min(720px,calc(100% - 28px));background:#0c1722;color:var(--text);border:1px solid #496475;padding:40px;max-height:88vh}dialog::backdrop{background:#02070acc}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:none;color:white;font-size:28px}.dialog-code{font:10px 'IBM Plex Mono';color:var(--cyan)}.dialog-status{margin:20px 0;display:inline-block}.dialog-status+h2{font:500 36px/1.25 'Source Serif 4';margin:10px 0}.dialog-summary{color:#9aabb7;line-height:1.8}#dialog-content dl{margin-top:28px;border-top:1px solid var(--line)}#dialog-content dl div{display:grid;grid-template-columns:190px 1fr;padding:15px 0;border-bottom:1px solid var(--line)}#dialog-content dt{font:9px 'IBM Plex Mono';color:#6f8695}#dialog-content dd{margin:0;font-size:13px}.dialog-note{font-size:11px;color:#748793}footer{padding:40px clamp(22px,6vw,96px);display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;border-top:1px solid var(--line);color:#728592}footer div{display:grid}footer b{font:12px 'IBM Plex Mono';color:white}footer span{font-size:9px}footer p{font:9px 'IBM Plex Mono';text-align:center}footer nav{display:flex;justify-content:flex-end;gap:20px;font:9px 'IBM Plex Mono'}
@media(max-width:960px){.obs-header nav{display:none}.header-state{margin-left:auto}.obs-hero{grid-template-columns:1fr;gap:60px}.system-map{width:min(520px,85vw)}.metrics{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.filters-panel{border-right:0;border-bottom:1px solid var(--line)}.filter-group{display:flex;flex-wrap:wrap}.filter-group>b{width:100%}.table-head{display:none}.record-row{grid-template-columns:1fr auto auto}.section-title{grid-template-columns:1fr}.section-title span{justify-self:start}.programme-grid{grid-template-columns:1fr}.programme-grid>*{border-right:0!important;border-bottom:1px solid #bec6c5;padding:30px 0!important}.industry-brief,.method{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer p{text-align:left}footer nav{justify-content:flex-start}}@media(max-width:560px){.header-state span{display:none}.obs-hero{padding-top:65px}.hero-copy h1{font-size:57px}.hero-actions{flex-direction:column}.system-map{display:none}.metrics article{padding:20px 16px}.metrics b{font-size:22px}.registry{padding:35px 16px}.registry-head{align-items:start;flex-direction:column}.record-row{grid-template-columns:1fr auto;padding:17px 8px}.record-row .domain,.record-row time,.record-row i{display:none}.readiness-head{display:none}.readiness article{grid-template-columns:1fr 90px}.readiness article>span:nth-of-type(2){grid-column:1/-1}.method li{grid-template-columns:35px 70px 1fr}dialog{padding:30px 22px}#dialog-content dl div{grid-template-columns:1fr}}
.programme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.programme-grid>article{display:flex;min-width:0;min-height:430px;flex-direction:column;padding-bottom:28px}.programme-grid h3{font-size:clamp(30px,3vw,42px);overflow-wrap:anywhere}.programme-grid p{min-height:92px}.programme-grid ul{margin:8px 0 24px;padding:0;list-style:none;border-top:1px solid #d5d9d6}.programme-grid li{padding:9px 0;border-bottom:1px solid #d5d9d6;color:#59666f;font-size:12px;line-height:1.5}.programme-actions{display:grid;gap:8px;margin-top:auto}.programme-actions a{display:flex;justify-content:space-between;align-items:center;min-height:40px;padding:8px 0;border-bottom:1px solid #89979c;color:#162c3c;font-size:12px;font-weight:700}.programme-actions a:hover,.programme-actions a:focus-visible{color:#1a73a8;padding-left:7px;outline:none}
@media(max-width:1200px){.programme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-grid>*{border-bottom:1px solid #bec6c5}.programme-grid>*:nth-child(2n){border-right:0}.programme-grid>*:nth-child(3){padding-left:0}}
@media(max-width:680px){.programmes{padding:72px 20px}.programme-grid{grid-template-columns:1fr}.programme-grid>article{min-height:0;padding:28px 0!important;border-right:0}.programme-grid h3{margin:22px 0 12px}.programme-grid p{min-height:0;font-size:14px}.programme-grid li{font-size:13px}.programme-actions a{font-size:13px;min-height:46px}}
