
:root{
 --bg:#090b0e;--panel:#12151b;--panel2:#181c23;--text:#f4f1e8;--muted:#a4a7af;
 --line:#2b3039;--accent:#ff5a36;--accent2:#ffb24d;--good:#70d39b;--blue:#73a7ff;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,"Noto Sans KR",sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none} button{font:inherit}
.wrap{width:min(1180px,90vw);margin:auto}
.topbar{position:sticky;top:0;z-index:30;min-height:66px;background:rgba(9,11,14,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:66px;margin:0;padding:0 22px}
.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--accent);color:var(--accent);font-weight:900}
.brand strong{display:block}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:.14em}
.topbar-actions{display:flex;align-items:center;gap:10px}.museum-village-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0d1a2b;color:#fff;font-size:20px;text-decoration:none}.museum-village-link:hover,.museum-village-link:focus-visible{border-color:var(--museum-blue);color:var(--museum-blue)}
nav{display:flex;gap:25px;color:#c9cbd1;font-size:14px}.btn,.btn-line{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px;font-weight:800}
.btn{background:var(--accent);color:white}.btn-line{border:1px solid var(--line)}
.kicker{font-size:11px;letter-spacing:.22em;color:var(--accent2);font-weight:900}
.hero{padding:95px 0 75px;display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center}
.hero h1{font-size:clamp(44px,6vw,82px);line-height:1.04;letter-spacing:-.055em;margin:18px 0 25px}
.hero h1 span,.accent{color:var(--accent)}
.hero p{color:#c5c7cd;font-size:18px;max-width:680px}.actions{display:flex;gap:16px;margin-top:30px;flex-wrap:wrap}
.hero-diagram{position:relative;height:470px;display:grid;place-items:center}
.core{width:155px;height:155px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--accent);font-size:23px;font-weight:900;z-index:2;box-shadow:0 0 70px rgba(255,90,54,.25)}
.ring{position:absolute;border:1px solid #343944;border-radius:50%}.r1{width:300px;height:300px}.r2{width:450px;height:450px}
.node{position:absolute;padding:9px 14px;background:var(--panel2);border:1px solid var(--line);font-weight:800}.n1{top:2%;left:42%}.n2{top:22%;right:0}.n3{bottom:20%;right:2%}.n4{bottom:2%;left:42%}.n5{bottom:20%;left:0}.n6{top:22%;left:0}
.section{padding:95px 0}.section.alt{background:#0d1014}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.section h2{font-size:clamp(34px,4vw,56px);line-height:1.12;margin:9px 0}.section-head p{max-width:470px;color:var(--muted)}
.message-grid,.cards,.standard-grid{display:grid;gap:18px}.message-grid{grid-template-columns:repeat(4,1fr)}.cards{grid-template-columns:repeat(3,1fr)}
.panel,.case-card,.standard{background:var(--panel);border:1px solid var(--line);padding:27px}
.panel b{color:var(--accent);font-size:13px}.panel h3,.case-card h3{font-size:22px;margin:12px 0 8px}.panel p,.case-card p,.standard p{color:var(--muted);margin:0}
.case-card{display:flex;flex-direction:column;min-height:410px;transition:.25s}.case-card:hover{transform:translateY(-5px);border-color:var(--accent)}
.case-type{font-size:11px;letter-spacing:.15em;color:var(--accent2)}.case-card h3{font-size:29px;line-height:1.2}
.case-meta{display:flex;gap:14px;margin:16px 0;color:#d4d5da;font-size:13px}.case-meta span{padding:4px 8px;border:1px solid var(--line)}
.mini-viz{height:120px;margin:22px 0;display:flex;align-items:end;gap:8px;border-bottom:1px solid var(--line);padding:0 8px}
.bar{flex:1;background:linear-gradient(to top,var(--accent),var(--accent2));min-height:8px}.case-card .more{margin-top:auto;color:var(--accent2);font-weight:800}
.standard-grid{grid-template-columns:repeat(4,1fr)}.standard strong{font-size:38px;color:var(--accent)}
footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted)}footer .wrap{display:flex;justify-content:space-between}
.notice{padding:16px 18px;border-left:4px solid var(--accent2);background:#171a20;color:#cfd0d4}

/* splash */
.splash-page{min-height:100vh;display:grid;place-items:center;overflow:hidden;position:relative}
.grid-bg{position:absolute;inset:-15%;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;transform:perspective(850px) rotateX(59deg) translateY(-8%);mask-image:linear-gradient(transparent,#000)}
.splash-box{position:relative;z-index:2;text-align:center;width:min(990px,88vw);padding:45px}
.splash-box h1{font-size:clamp(48px,7vw,94px);line-height:1.03;letter-spacing:-.06em;margin:18px 0}
.splash-box p{font-size:19px;color:#c7c9cf;max-width:780px;margin:0 auto}
.splash-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:38px 0}
.splash-principles div{border:1px solid var(--line);background:rgba(255,255,255,.035);padding:20px;text-align:left}.splash-principles b{display:block;color:var(--accent);font-size:12px}.splash-principles span{font-weight:800}
.splash-box small{display:block;color:#777c85;margin-top:16px}

/* case */
.case-hero{padding:75px 0 50px}.case-hero h1{font-size:clamp(42px,6vw,76px);line-height:1.05;letter-spacing:-.05em;margin:15px 0}
.case-hero .lead{font-size:20px;color:#c7c9cf;max-width:820px}
.fact-row{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:35px}.fact{padding:20px;background:var(--panel);border:1px solid var(--line)}.fact span{display:block;color:var(--muted);font-size:12px}.fact strong{font-size:25px}
.case-layout{display:grid;grid-template-columns:1fr 320px;gap:30px}.content-block{padding:34px;background:var(--panel);border:1px solid var(--line);margin-bottom:18px}.content-block h2{font-size:31px;margin:0 0 15px}.content-block p,.content-block li{color:#c5c7cc}
.sidebar{position:sticky;top:90px;height:max-content}.source-box{background:#101319;border:1px solid var(--line);padding:22px;margin-bottom:15px}.source-box h3{margin-top:0}.source-box a{display:block;color:#c7d7ff;margin:10px 0;font-size:13px}.source-grade{display:inline-block;background:rgba(112,211,155,.12);color:var(--good);padding:5px 9px;font-size:12px}
.timeline{position:relative;padding-left:30px}.timeline:before{content:"";position:absolute;left:8px;top:5px;bottom:5px;width:2px;background:var(--line)}
.timeline-item{position:relative;margin:0 0 24px}.timeline-item:before{content:"";position:absolute;left:-28px;top:7px;width:11px;height:11px;border-radius:50%;background:var(--accent)}.timeline-item b{color:var(--accent2)}
.metric-chart{display:flex;align-items:end;gap:16px;height:250px;border-bottom:1px solid var(--line);padding:20px 15px 0}
.metric-col{flex:1;text-align:center}.metric-bar{width:100%;background:linear-gradient(to top,var(--accent),var(--accent2));min-height:10px}.metric-col span{display:block;margin-top:8px;color:var(--muted);font-size:12px}.metric-col strong{font-size:13px}
.decision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.decision{background:#191d24;border:1px solid var(--line);color:var(--text);padding:18px;text-align:left;cursor:pointer}.decision:hover{border-color:var(--accent)}.decision b{display:block;margin-bottom:5px}.decision span{color:var(--muted);font-size:13px}
.result{margin-top:15px;padding:18px;border-left:4px solid var(--accent);background:#171b21}
.cause-map{display:grid;gap:10px}.cause{padding:14px;background:#181c23;border:1px solid var(--line)}.arrow{text-align:center;color:var(--accent)}
.tag{display:inline-block;border:1px solid var(--line);padding:4px 8px;margin:3px;font-size:12px;color:#d7d8dc}
@media(max-width:900px){nav{display:none}.hero{grid-template-columns:1fr}.message-grid{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr}.standard-grid{grid-template-columns:repeat(2,1fr)}.case-layout{grid-template-columns:1fr}.sidebar{position:static}.fact-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.wrap{width:min(92vw,1180px)}.topbar .wrap{min-height:60px;padding:0 12px}.topbar-actions #replayIntro{display:none}.brand small{display:none}.hero{padding-top:70px}.hero-diagram{transform:scale(.78);margin:-35px}.message-grid,.standard-grid,.splash-principles,.decision-grid{grid-template-columns:1fr}.section{padding:70px 0}.section-head{flex-direction:column;align-items:start}.fact-row{grid-template-columns:1fr}.splash-box{padding:20px}footer .wrap{flex-direction:column;gap:8px}}


/* animated intro splash */
body.intro-lock{overflow:hidden}
.museum-main.is-waiting,
.topbar.is-waiting,
footer.is-waiting{
  opacity:0;
  visibility:hidden;
}
.intro-splash{
  position:fixed;
  inset:0;
  z-index:999;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,90,54,.12), transparent 30%),
    #090b0e;
  opacity:1;
  visibility:visible;
  transition:opacity .85s ease, visibility .85s ease;
}
.intro-splash.is-leaving{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.intro-grid{
  position:absolute;
  inset:-25%;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:52px 52px;
  transform:perspective(900px) rotateX(61deg) translateY(-7%);
  animation:gridMove 6.4s linear forwards;
  mask-image:linear-gradient(to bottom,transparent 3%,#000 38%,#000 82%,transparent);
}
.intro-noise{
  position:absolute;
  inset:0;
  opacity:.14;
  background-image:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.18) 0 1px,transparent 1.5px),
    radial-gradient(circle at 80% 70%,rgba(255,255,255,.12) 0 1px,transparent 1.5px);
  background-size:38px 38px,51px 51px;
  animation:noiseDrift 5s linear infinite;
}
.intro-stage{
  position:relative;
  z-index:2;
  width:min(1050px,88vw);
  text-align:center;
  padding:36px;
}
.intro-kicker{
  color:var(--accent2);
  font-size:11px;
  letter-spacing:.28em;
  font-weight:900;
  opacity:0;
  transform:translateY(12px);
  animation:fadeUp .65s .18s forwards;
}
.intro-title{
  margin:18px 0 24px;
  font-size:clamp(42px,7vw,96px);
  line-height:1.02;
  letter-spacing:-.06em;
}
.intro-line{
  display:block;
  opacity:0;
  transform:translateY(34px);
  filter:blur(8px);
}
.intro-line.line-1{animation:lineReveal .7s .55s forwards}
.intro-line.line-2{animation:lineReveal .7s 1.12s forwards}
.intro-line.line-3{
  color:var(--accent);
  animation:lineReveal .85s 1.72s forwards;
}
.intro-sequence{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin:30px 0 20px;
  font-weight:900;
}
.intro-word,.intro-arrow{
  opacity:0;
  transform:scale(.78);
}
.word-1{animation:popIn .45s 2.6s forwards}
.arrow-1{animation:slideArrow .4s 2.92s forwards}
.word-2{animation:popIn .45s 3.16s forwards}
.arrow-2{animation:slideArrow .4s 3.48s forwards}
.word-3{animation:popIn .45s 3.72s forwards}
.intro-word{
  padding:11px 17px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.035);
}
.intro-arrow{color:var(--accent)}
.intro-description{
  max-width:720px;
  margin:0 auto;
  color:#c7c9cf;
  font-size:17px;
  opacity:0;
  transform:translateY(12px);
  animation:fadeUp .65s 4.15s forwards;
}
.intro-progress{
  width:min(420px,70vw);
  height:2px;
  margin:34px auto 0;
  background:#262a31;
  overflow:hidden;
}
.intro-progress-bar{
  width:0;
  height:100%;
  background:linear-gradient(90deg,var(--accent),var(--accent2));
  animation:progressFill 6.2s linear forwards;
}
.intro-skip{
  position:absolute;
  right:24px;
  bottom:22px;
  border:0;
  background:transparent;
  color:#8f939c;
  cursor:pointer;
  font-size:13px;
}
.intro-skip:hover{color:white}
.museum-main,
.topbar,
footer{
  transition:opacity .8s ease;
}
.museum-main.is-ready,
.topbar.is-ready,
footer.is-ready{
  opacity:1;
  visibility:visible;
}
@keyframes lineReveal{
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes fadeUp{
  to{opacity:1;transform:translateY(0)}
}
@keyframes popIn{
  to{opacity:1;transform:scale(1)}
}
@keyframes slideArrow{
  from{opacity:0;transform:translateX(-12px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes progressFill{to{width:100%}}
@keyframes gridMove{
  from{transform:perspective(900px) rotateX(61deg) translateY(-7%) translateX(0)}
  to{transform:perspective(900px) rotateX(61deg) translateY(-2%) translateX(-52px)}
}
@keyframes noiseDrift{
  from{transform:translate(0,0)}
  50%{transform:translate(8px,-5px)}
  to{transform:translate(0,0)}
}
@media (prefers-reduced-motion: reduce){
  .intro-grid,.intro-noise,.intro-kicker,.intro-line,.intro-word,.intro-arrow,
  .intro-description,.intro-progress-bar{animation:none!important}
  .intro-kicker,.intro-line,.intro-word,.intro-arrow,.intro-description{
    opacity:1!important;transform:none!important;filter:none!important
  }
  .intro-progress-bar{width:100%}
}


/* =========================================================
   DIGITAL MUSEUM REDESIGN
   ========================================================= */
:root{
  --museum-blue:#66d9ff;
  --museum-violet:#8d7cff;
  --museum-cyan:#58f0d0;
  --museum-glow:rgba(102,217,255,.24);
}

body{
  background:
    radial-gradient(circle at 18% 8%, rgba(102,217,255,.055), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(141,124,255,.055), transparent 26%),
    #080a0d;
}

.topbar{
  border-bottom:1px solid rgba(102,217,255,.14);
  box-shadow:0 8px 35px rgba(0,0,0,.28);
}
.brand-mark{
  border-color:var(--museum-blue);
  color:var(--museum-blue);
  box-shadow:inset 0 0 18px rgba(102,217,255,.08),0 0 18px rgba(102,217,255,.08);
}
.kicker{
  color:var(--museum-cyan);
}
.btn{
  background:linear-gradient(135deg,var(--museum-blue),var(--museum-violet));
  color:#071016;
  box-shadow:0 10px 30px rgba(102,217,255,.18);
}
.btn-line{
  border-color:rgba(102,217,255,.25);
  background:rgba(102,217,255,.035);
}
.btn-line:hover{
  border-color:var(--museum-blue);
  color:var(--museum-blue);
}

.museum-status-strip{
  border-bottom:1px solid rgba(102,217,255,.11);
  background:linear-gradient(90deg,rgba(102,217,255,.025),rgba(141,124,255,.035));
}
.museum-status-strip .wrap{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:30px;
  color:#8f9aa8;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.museum-status-strip span:first-child{
  color:var(--museum-cyan);
}
.museum-status-strip i{
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:7px;
  border-radius:50%;
  background:var(--museum-cyan);
  box-shadow:0 0 12px var(--museum-cyan);
}

.hero{
  position:relative;
  min-height:720px;
  overflow:hidden;
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(102,217,255,.028) 1px,transparent 1px),
    linear-gradient(90deg,rgba(102,217,255,.028) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,transparent 0,#000 18%,#000 78%,transparent 100%);
}
.hero h1 span{
  background:linear-gradient(90deg,var(--museum-blue),var(--museum-violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.hero-museum-visual{
  position:relative;
  min-height:540px;
  display:grid;
  place-items:center;
  perspective:1100px;
}
.scan-ring{
  position:absolute;
  border:1px solid rgba(102,217,255,.26);
  border-radius:50%;
  transform:rotateX(68deg);
  animation:ringPulse 4.5s ease-in-out infinite;
}
.ring-a{width:250px;height:250px}
.ring-b{width:385px;height:385px;animation-delay:.6s}
.ring-c{width:510px;height:510px;animation-delay:1.2s}
.artifact-core{
  position:relative;
  z-index:4;
  width:230px;
  min-height:290px;
  padding:28px 24px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:
    linear-gradient(180deg,rgba(102,217,255,.11),rgba(141,124,255,.06)),
    rgba(12,17,23,.9);
  border:1px solid rgba(102,217,255,.32);
  box-shadow:
    inset 0 0 35px rgba(102,217,255,.06),
    0 0 55px rgba(102,217,255,.13);
  transform:rotateY(-8deg) rotateX(3deg);
}
.artifact-core:before,
.artifact-core:after{
  content:"";
  position:absolute;
  width:22px;
  height:22px;
  border-color:var(--museum-blue);
}
.artifact-core:before{
  left:-1px;top:-1px;border-left:2px solid;border-top:2px solid;
}
.artifact-core:after{
  right:-1px;bottom:-1px;border-right:2px solid;border-bottom:2px solid;
}
.artifact-code{
  color:var(--museum-cyan);
  font-size:10px;
  letter-spacing:.17em;
}
.artifact-title{
  font-size:38px;
  font-weight:900;
  line-height:.95;
  letter-spacing:-.05em;
}
.artifact-status{
  font-size:11px;
  color:#9fb6c7;
  padding-top:14px;
  border-top:1px solid rgba(102,217,255,.15);
}
.floating-record{
  position:absolute;
  min-width:150px;
  padding:14px 16px;
  background:rgba(13,18,24,.88);
  border:1px solid rgba(102,217,255,.19);
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  backdrop-filter:blur(12px);
  animation:floatRecord 5s ease-in-out infinite;
}
.floating-record span{
  display:block;
  color:var(--museum-cyan);
  font-size:9px;
  letter-spacing:.14em;
}
.floating-record b{display:block;margin:4px 0;font-size:15px}
.floating-record small{color:#7d8996;font-size:10px}
.record-1{top:8%;left:2%}
.record-2{top:18%;right:-1%;animation-delay:.8s}
.record-3{bottom:14%;right:4%;animation-delay:1.6s}
.record-4{bottom:7%;left:3%;animation-delay:2.4s}
.scanner-line{
  position:absolute;
  z-index:5;
  width:300px;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--museum-blue),transparent);
  box-shadow:0 0 18px var(--museum-blue);
  animation:scanMove 3.4s ease-in-out infinite;
}
.museum-floor{
  position:absolute;
  bottom:3%;
  width:420px;
  height:110px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(102,217,255,.16),transparent 65%);
  filter:blur(8px);
}

.panel,.case-card,.standard,.content-block,.source-box{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(102,217,255,.025),transparent 45%),
    var(--panel);
  border-color:rgba(102,217,255,.13);
}
.panel:before,.standard:before,.case-card:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--museum-blue),transparent);
  opacity:.35;
}

.museum-case{
  min-height:430px;
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%);
}
.museum-case:hover{
  border-color:rgba(102,217,255,.55);
  box-shadow:0 16px 40px rgba(0,0,0,.32),0 0 25px rgba(102,217,255,.06);
}
.case-id{
  font-size:10px;
  color:var(--museum-cyan);
  letter-spacing:.19em;
  margin-bottom:12px;
}
.case-type{
  color:#8c98a5;
}
.mini-viz{
  position:relative;
  background:
    linear-gradient(rgba(102,217,255,.025) 1px,transparent 1px);
  background-size:100% 24px;
}
.bar{
  background:linear-gradient(to top,var(--museum-violet),var(--museum-blue));
  box-shadow:0 0 14px rgba(102,217,255,.12);
}
.case-card .more{
  color:var(--museum-blue);
}

.museum-route-section{
  background:
    linear-gradient(180deg,rgba(102,217,255,.02),rgba(141,124,255,.025)),
    #0a0d11;
  border-top:1px solid rgba(102,217,255,.08);
  border-bottom:1px solid rgba(102,217,255,.08);
}
.route-track{
  display:grid;
  grid-template-columns:1fr 70px 1fr 70px 1fr 70px 1fr;
  align-items:center;
}
.route-stop{
  padding:28px;
  min-height:180px;
  background:rgba(14,19,25,.82);
  border:1px solid rgba(102,217,255,.16);
}
.route-stop span{
  display:block;
  color:var(--museum-cyan);
  font-size:12px;
  letter-spacing:.15em;
}
.route-stop b{
  display:block;
  margin:20px 0 8px;
  font-size:22px;
}
.route-stop p{
  margin:0;
  color:var(--muted);
}
.route-line{
  height:1px;
  background:linear-gradient(90deg,rgba(102,217,255,.12),var(--museum-blue),rgba(102,217,255,.12));
  position:relative;
}
.route-line:after{
  content:"";
  position:absolute;
  right:-1px;
  top:-3px;
  width:7px;
  height:7px;
  border-top:1px solid var(--museum-blue);
  border-right:1px solid var(--museum-blue);
  transform:rotate(45deg);
}

.section.alt{
  background:
    linear-gradient(180deg,rgba(102,217,255,.015),rgba(141,124,255,.015)),
    #0c0f13;
}
.standard strong{
  color:var(--museum-blue);
}
.notice{
  border-left-color:var(--museum-blue);
  background:rgba(102,217,255,.04);
}

footer{
  border-top-color:rgba(102,217,255,.12);
  background:#080a0d;
}

.museum-ad{
  position:relative;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:center;
}
.museum-ad-desktop{
  position:fixed;
  top:96px;
  right:14px;
  width:160px;
  min-height:600px;
}
.museum-ad-mobile{
  display:none;
  grid-column:1/-1;
  width:min(100%,340px);
  min-height:50px;
  margin:26px auto;
  padding:0 10px;
}
@media(min-width:1181px){
  body.museum-ads-enabled .museum-main,
  body.museum-ads-enabled .topbar,
  body.museum-ads-enabled footer{padding-right:188px}
  body.museum-ads-enabled .wrap{width:min(1180px,calc(100vw - 224px))}
  body.museum-ads-enabled .topbar .wrap{width:100%;padding-right:14px}
}
@media(max-width:1180px){
  .museum-ad-desktop{display:none}
  .museum-ad-mobile{display:flex}
}

@keyframes ringPulse{
  0%,100%{opacity:.28;transform:rotateX(68deg) scale(1)}
  50%{opacity:.65;transform:rotateX(68deg) scale(1.035)}
}
@keyframes floatRecord{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-10px)}
}
@keyframes scanMove{
  0%,100%{transform:translateY(-135px);opacity:.25}
  50%{transform:translateY(135px);opacity:1}
}

@media(max-width:900px){
  .museum-status-strip .wrap{overflow:auto;white-space:nowrap}
  .route-track{grid-template-columns:1fr}
  .route-line{
    width:1px;
    height:44px;
    justify-self:center;
    background:linear-gradient(to bottom,rgba(102,217,255,.12),var(--museum-blue),rgba(102,217,255,.12));
  }
  .route-line:after{
    right:-3px;
    top:auto;
    bottom:-1px;
    transform:rotate(135deg);
  }
}
@media(max-width:620px){
  .hero-museum-visual{transform:scale(.8);margin:-40px}
  .floating-record{min-width:125px;padding:10px}
  .artifact-core{width:210px}
}

.digital-case-page .case-hero{
  position:relative;
  overflow:hidden;
}
.digital-case-page .case-hero:after{
  content:"";
  position:absolute;
  right:4vw;
  top:50px;
  width:230px;
  height:230px;
  border:1px solid rgba(102,217,255,.13);
  border-radius:50%;
  box-shadow:0 0 0 40px rgba(102,217,255,.018),0 0 0 80px rgba(141,124,255,.012);
}
.digital-case-page .fact{
  background:linear-gradient(180deg,rgba(102,217,255,.035),rgba(255,255,255,.012));
  border-color:rgba(102,217,255,.15);
}
.digital-case-page .fact strong{color:var(--museum-blue)}
.digital-case-page .timeline-item:before{
  background:var(--museum-blue);
  box-shadow:0 0 12px rgba(102,217,255,.5);
}
.digital-case-page .timeline:before{
  background:linear-gradient(to bottom,var(--museum-blue),rgba(102,217,255,.08));
}
.digital-case-page .metric-bar{
  background:linear-gradient(to top,var(--museum-violet),var(--museum-blue));
}
.digital-case-page .decision:hover{
  border-color:var(--museum-blue);
  box-shadow:0 0 20px rgba(102,217,255,.06);
}
.digital-case-page .source-grade{
  background:rgba(88,240,208,.08);
  color:var(--museum-cyan);
}

.museum-filter{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 8px}.museum-filter button{border:1px solid rgba(102,217,255,.16);background:#10151b;color:#aeb8c3;padding:9px 15px;cursor:pointer}.museum-filter button.active,.museum-filter button:hover{border-color:var(--museum-blue);color:var(--museum-blue);background:rgba(102,217,255,.06)}
.museum-cards{grid-template-columns:repeat(3,1fr)}.case-id{display:flex;justify-content:space-between;align-items:center}.hero-badge,.depth-badge{font-size:9px;padding:3px 6px;border:1px solid}.hero-badge{color:var(--museum-cyan);border-color:rgba(88,240,208,.35)}.depth-badge{color:#8793a0;border-color:#303943}.archive-label{font-size:9px;letter-spacing:.2em;color:var(--museum-cyan);margin-bottom:8px}.lesson-box{margin-top:24px;padding:20px;border:1px solid rgba(102,217,255,.16);background:rgba(102,217,255,.035)}.lesson-box b{color:var(--museum-blue)}.lesson-box p{margin-bottom:0}.cause-button{width:100%;display:flex;align-items:center;gap:18px;color:#e9edf1;text-align:left;cursor:pointer}.cause-button b{color:var(--museum-cyan);font-size:11px}.cause-button.active{border-color:var(--museum-blue);box-shadow:0 0 22px rgba(102,217,255,.07)}
@media(max-width:980px){.museum-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.museum-cards{grid-template-columns:1fr}}

.archive-image{margin:28px 0 6px;max-width:760px;border:1px solid rgba(102,217,255,.18);background:#0d1218;padding:10px}.archive-image img{display:block;width:100%;max-height:430px;object-fit:contain;background:#07090c}.archive-image figcaption{padding:10px 4px 2px;color:#8f9ba8;font-size:11px}.archive-image a{color:var(--museum-blue)}
.verified-indicators{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.verified-indicator{padding:24px;border:1px solid rgba(102,217,255,.18);background:rgba(102,217,255,.035)}.verified-indicator span,.verified-indicator small{display:block;color:#8f9ba8}.verified-indicator strong{display:block;color:var(--museum-blue);font-size:30px;margin:8px 0}
.phase-track,.attempt-track{display:flex;align-items:stretch;gap:12px;min-height:180px}.phase-track>i,.attempt-track>i{align-self:center;color:var(--museum-blue);font-style:normal}.phase-node,.attempt{flex:1;padding:20px;border:1px solid rgba(102,217,255,.16);background:#11161c;display:flex;flex-direction:column}.phase-node b{color:var(--museum-cyan);font-size:11px}.phase-node span,.attempt b{font-weight:800;margin:10px 0}.phase-node small,.attempt small{color:#919ca8}.attempt span{display:inline-block;width:max-content;padding:3px 7px;margin-bottom:9px;font-size:11px}.attempt.failure span{color:#ff8c74;border:1px solid rgba(255,90,54,.35)}.attempt.success span{color:var(--museum-cyan);border:1px solid rgba(88,240,208,.35)}
@media(max-width:720px){.verified-indicators{grid-template-columns:1fr}.phase-track,.attempt-track{flex-direction:column}.phase-track>i,.attempt-track>i{transform:rotate(90deg)}}

/* official news video archive */
.media-intro{color:var(--muted);max-width:820px}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.video-card{border:1px solid rgba(102,217,255,.16);background:rgba(10,14,19,.72);overflow:hidden}.video-frame{position:relative;aspect-ratio:16/9;background:#030405}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-meta{padding:18px}.video-meta>span{font-size:9px;letter-spacing:.17em;color:var(--museum-cyan)}.video-meta h3{font-size:18px;line-height:1.35;margin:8px 0}.video-meta p{color:var(--muted);font-size:13px;margin:0 0 10px}.video-meta a{font-size:13px;color:var(--museum-blue)}
@media(max-width:720px){.video-grid{grid-template-columns:1fr}}
/* v8: local-file-safe official YouTube cards */
.video-frame{display:none!important}
.video-thumbnail-link{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#0b1016,#151b24);border-bottom:1px solid rgba(102,217,255,.14)}
.video-thumbnail{width:100%;height:100%;object-fit:cover;display:block;opacity:.78;transition:transform .25s ease,opacity .25s ease}
.video-thumbnail-link:hover .video-thumbnail{transform:scale(1.025);opacity:.94}
.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:62px;height:44px;border-radius:11px;background:#ff0033;color:white;font-size:21px;padding-left:3px;box-shadow:0 8px 28px rgba(0,0,0,.4)}
.video-open-label{position:absolute;right:12px;bottom:10px;padding:5px 8px;background:rgba(0,0,0,.72);color:white;font-size:11px;letter-spacing:.04em}
.intro-skip{z-index:10;pointer-events:auto;min-width:96px;min-height:44px;padding:10px 14px;border:1px solid rgba(255,255,255,.16);background:rgba(9,11,14,.48);border-radius:2px}
.intro-splash.is-leaving{pointer-events:none}


/* Rich visitor experience */
.visit-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:90;background:rgba(255,255,255,.04)}
.visit-progress div{height:100%;width:0;background:linear-gradient(90deg,var(--museum-cyan),var(--museum-blue),var(--museum-violet));box-shadow:0 0 12px var(--museum-blue)}
.section-description{color:var(--muted);margin-top:-8px}
.mission-block{background:linear-gradient(135deg,rgba(88,240,208,.06),rgba(141,124,255,.045)),var(--panel)}
.mission-header{display:flex;justify-content:space-between;gap:30px;align-items:center}
.passport-stamp{width:92px;height:92px;border:2px dashed #4b5663;border-radius:50%;display:grid;place-items:center;transform:rotate(-7deg);font-size:12px;color:#7d8995}
.passport-stamp.complete{border-color:var(--museum-cyan);color:var(--museum-cyan);box-shadow:0 0 25px rgba(88,240,208,.14)}
.mission-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:25px}
.mission-steps button{border:1px solid rgba(102,217,255,.15);background:#11171d;color:#e8edf0;text-align:left;padding:15px;cursor:pointer}
.mission-steps button:hover{border-color:var(--museum-blue);transform:translateY(-2px)}
.mission-steps b{display:block;color:var(--museum-cyan);font-size:10px}.mission-steps span{font-weight:700}
.evidence-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;perspective:1000px}
.evidence-flip-card{min-height:230px;border:0;background:transparent;color:var(--text);position:relative;cursor:pointer;transform-style:preserve-3d;transition:transform .55s}
.evidence-flip-card.is-open{transform:rotateY(180deg)}
.card-front,.card-back{position:absolute;inset:0;padding:23px;border:1px solid rgba(102,217,255,.19);backface-visibility:hidden;display:flex;flex-direction:column;text-align:left;background:linear-gradient(150deg,rgba(102,217,255,.06),rgba(141,124,255,.035)),#10151b}
.card-front{justify-content:space-between}.card-back{transform:rotateY(180deg);justify-content:flex-start}
.card-front small,.card-back small{color:var(--museum-cyan);letter-spacing:.15em}.card-front b{font-size:28px}.card-front em{font-style:normal;color:#9ba7b2}
.card-back b{margin:14px 0 5px}.card-back strong{font-size:25px;color:var(--museum-blue)}.card-back p{font-size:13px;color:var(--muted)}
.collection-status{text-align:right;margin-top:13px;color:var(--museum-cyan);font-weight:800}
.interpretation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.interpretation-card{padding:24px;border:1px solid rgba(102,217,255,.16);background:#11161c}.interpretation-card span{font-size:10px;color:var(--museum-cyan);letter-spacing:.15em}.interpretation-card h3{font-size:22px;margin:15px 0 8px}.interpretation-card p{color:var(--muted)}
.fact-answer-grid{display:grid;gap:10px}.fact-answer-grid button{border:1px solid var(--line);background:#151a20;color:#e6eaed;padding:17px;text-align:left;cursor:pointer}.fact-answer-grid button:hover{border-color:var(--museum-blue)}.fact-answer-grid button.correct{border-color:var(--museum-cyan);background:rgba(88,240,208,.07)}.fact-answer-grid button.wrong{border-color:#ff6a65;background:rgba(255,106,101,.06)}
.quiz-feedback{margin-top:14px;padding:18px;border-left:3px solid var(--museum-blue);background:rgba(102,217,255,.04)}
.verdict-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.verdict-options button{border:1px solid var(--line);background:#12171d;color:#e5e9ec;padding:17px;cursor:pointer}.verdict-options button.active,.verdict-options button:hover{border-color:var(--museum-blue);color:var(--museum-blue)}
#verdictReason{width:100%;min-height:100px;margin-top:13px;padding:15px;background:#0d1217;border:1px solid var(--line);color:white;resize:vertical}
.save-verdict{margin-top:10px;background:linear-gradient(90deg,var(--museum-blue),var(--museum-violet));border:0;padding:12px 18px;font-weight:800;cursor:pointer}
.saved-verdict{margin-top:14px;padding:18px;background:rgba(88,240,208,.045);border:1px solid rgba(88,240,208,.18)}.saved-verdict b,.saved-verdict strong{display:block}.saved-verdict strong{color:var(--museum-cyan);font-size:20px;margin:5px 0}
.passport-meter{height:5px;background:#222a32;overflow:hidden;margin:8px 0 10px}.passport-meter i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--museum-cyan),var(--museum-blue));transition:width .4s}.passport-box strong{font-size:25px;color:var(--museum-blue)}
.video-meta small{color:#8e99a5;line-height:1.5}
@media(max-width:850px){.mission-steps{grid-template-columns:repeat(2,1fr)}.evidence-card-grid{grid-template-columns:1fr}.evidence-flip-card{min-height:215px}.interpretation-grid{grid-template-columns:1fr}.verdict-options{grid-template-columns:1fr}}
@media(max-width:560px){.mission-header{align-items:flex-start}.passport-stamp{width:72px;height:72px;flex:0 0 72px}.mission-steps{grid-template-columns:1fr}}


/* Certificate */
.certificate-cta{background:linear-gradient(120deg,rgba(88,240,208,.06),rgba(141,124,255,.06)),#0b0f14;border-top:1px solid rgba(102,217,255,.12)}
.certificate-cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.certificate-cta p{max-width:720px;color:var(--muted)}
.certificate-intro{padding:90px 0 65px}.certificate-intro h1{font-size:clamp(42px,6vw,78px);line-height:1.05;letter-spacing:-.05em}.certificate-intro h1 span{color:var(--museum-blue)}.certificate-intro>p{font-size:18px;color:#c7cbd0}
.certificate-rule{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.certificate-rule div{padding:20px;border:1px solid rgba(102,217,255,.15);background:#10151b}.certificate-rule b{display:block;font-size:25px;color:var(--museum-cyan)}.certificate-rule span{color:var(--muted)}
.final-quiz-layout{display:grid;grid-template-columns:1fr 300px;gap:28px}.final-side{position:sticky;top:90px;height:max-content}.final-side li{color:#c4c9cf;margin:8px 0}
.final-questions{display:grid;gap:15px}.final-question{padding:25px;border:1px solid rgba(102,217,255,.14);background:#11161c}.final-question>span{color:var(--museum-cyan);font-size:10px;letter-spacing:.18em}.final-question h3{font-size:20px}.final-question div{display:grid;gap:8px}.final-question label{display:flex;align-items:flex-start;gap:10px;padding:13px;background:#0d1217;border:1px solid #28313a;cursor:pointer}.final-question label:hover{border-color:var(--museum-blue)}.final-question input{margin-top:5px}.final-question.answered-correct{border-color:var(--museum-cyan)}.final-question.answered-wrong{border-color:#ff6a65}.final-grade-btn{margin-top:18px}.final-score{margin-top:15px;padding:20px;border-left:4px solid var(--museum-blue);background:rgba(102,217,255,.045)}.final-score strong{font-size:25px;color:var(--museum-blue)}
.certificate-section{background:radial-gradient(circle at 50% 20%,rgba(102,217,255,.07),transparent 35%),#090c10}.certificate-gate,.name-entry{text-align:center;padding:40px;border:1px solid rgba(102,217,255,.15);background:#10151b}.name-entry label{display:block;font-size:20px;font-weight:800;margin-bottom:15px}.name-entry>div{display:flex;justify-content:center;gap:8px}.name-entry input{width:min(420px,70vw);padding:14px;background:#080c10;border:1px solid rgba(102,217,255,.25);color:white;font-size:17px}
.certificate-document{max-width:1000px;margin:35px auto;background:#f4f0df;color:#17212a;padding:23px;box-shadow:0 25px 70px rgba(0,0,0,.4)}.certificate-border{position:relative;min-height:680px;padding:75px 80px;border:5px double #253f55;text-align:center;background:linear-gradient(135deg,rgba(102,217,255,.08),transparent 30%,rgba(141,124,255,.07))}.certificate-border:before,.certificate-border:after{content:"";position:absolute;width:100px;height:100px;border-color:#456f84}.certificate-border:before{left:18px;top:18px;border-left:2px solid;border-top:2px solid}.certificate-border:after{right:18px;bottom:18px;border-right:2px solid;border-bottom:2px solid}.certificate-seal{position:absolute;right:55px;top:50px;width:90px;height:90px;border:3px double #c45139;border-radius:50%;display:grid;place-items:center;color:#c45139;font-size:42px;font-weight:900;transform:rotate(-8deg)}.certificate-en{letter-spacing:.3em;font-size:12px;color:#45606f}.certificate-document h2{font-family:serif;font-size:45px;margin:38px 0}.certificate-name{margin:30px 0}.certificate-name strong{font-family:serif;font-size:38px;border-bottom:1px solid #516572;padding:0 30px 8px}.certificate-name span{margin-left:12px}.certificate-document p{font-family:serif;max-width:730px;margin:35px auto;font-size:18px;line-height:2}.certificate-score{font-size:17px}.certificate-score strong{font-size:25px}.certificate-meta{display:flex;justify-content:center;gap:50px;margin-top:35px}.certificate-sign{margin-top:60px}.certificate-sign span,.certificate-sign strong{display:block}.certificate-sign strong{font-family:serif;font-size:25px}.certificate-disclaimer{margin-top:35px;color:#6c777d;font-size:11px}.certificate-actions{display:flex;justify-content:center;gap:12px;margin-top:25px}
@media(max-width:850px){.certificate-cta .wrap{flex-direction:column;align-items:flex-start}.certificate-rule{grid-template-columns:1fr}.final-quiz-layout{grid-template-columns:1fr}.final-side{position:static}.certificate-border{padding:70px 25px}.certificate-seal{width:65px;height:65px;font-size:30px;right:25px}.certificate-meta{flex-direction:column;gap:5px}.name-entry>div{flex-direction:column;align-items:center}}
@media print{body *{visibility:hidden!important}.certificate-document,.certificate-document *{visibility:visible!important}.certificate-document{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;box-shadow:none;padding:0}.certificate-border{min-height:95vh}.certificate-actions{display:none!important}@page{size:A4 landscape;margin:8mm}}


/* Hash certificate verification */
.certificate-share-panel{display:block;max-width:1000px;margin:25px auto 0}
.verification-summary{display:grid;gap:12px;margin-bottom:18px}.verification-summary>div{padding:15px;border:1px solid rgba(102,217,255,.16);background:#10151b}.verification-summary span{display:block;color:var(--museum-cyan);font-size:11px;letter-spacing:.12em;margin-bottom:6px}.verification-summary code{display:block;color:#d9e1e8;word-break:break-all;font-size:12px}.verification-summary a{display:block;color:var(--museum-blue);word-break:break-all}
.qr-verification-box{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center;padding:22px;border:1px solid rgba(102,217,255,.16);background:#10151b}.qr-verification-box #certificateQr{width:210px;min-height:210px;padding:10px;background:white;display:grid;place-items:center}.qr-verification-box img,.qr-verification-box canvas{max-width:190px}
.email-certificate-box{margin:18px 0;padding:22px;border:1px solid rgba(102,217,255,.16);background:#10151b}.email-certificate-box label{display:block;font-weight:800;margin-bottom:10px}.email-send-row{display:flex;gap:8px}.email-send-row input{flex:1;padding:13px;background:#080c10;border:1px solid rgba(102,217,255,.25);color:white}.email-certificate-box p{color:var(--muted);font-size:13px}.email-status{margin:10px 0;padding:12px;border-left:3px solid var(--museum-cyan);background:rgba(88,240,208,.05)}
.verify-main{min-height:calc(100vh - 150px);padding:95px 0}.verify-main h1{font-size:clamp(42px,6vw,76px);margin:10px 0}.verify-main>section>p{font-size:18px;color:var(--muted)}
.verify-status{display:flex;gap:20px;align-items:center;margin:35px 0;padding:28px;border:1px solid var(--line);background:#10151b}.verify-icon{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;font-size:32px;font-weight:900}.verify-status h2{margin:0}.verify-status p{margin:5px 0 0;color:var(--muted)}.verify-status.valid{border-color:rgba(88,240,208,.4)}.verify-status.valid .verify-icon{color:var(--museum-cyan);border:2px solid var(--museum-cyan)}.verify-status.invalid{border-color:rgba(255,106,101,.45)}.verify-status.invalid .verify-icon{color:#ff6a65;border:2px solid #ff6a65}
.verified-certificate{padding:30px;border:1px solid rgba(102,217,255,.18);background:linear-gradient(135deg,rgba(102,217,255,.045),rgba(141,124,255,.035)),#10151b}.verify-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.verify-grid>div,.verify-hash{padding:16px;background:#0b1015;border:1px solid #26313b}.verify-grid span,.verify-hash span{display:block;color:var(--museum-cyan);font-size:11px;letter-spacing:.12em}.verify-grid strong{font-size:21px}.verify-hash{margin-top:12px}.verify-hash code{display:block;margin-top:7px;word-break:break-all;color:#d8e2e9}.verified-certificate>p{margin-top:22px;color:#c9d0d5}
.verification-limit{margin-top:25px;padding:22px;border-left:4px solid var(--accent2);background:#15171c}.verification-limit p{color:var(--muted)}
@media(max-width:700px){.qr-verification-box{grid-template-columns:1fr}.email-send-row{flex-direction:column}.verify-grid{grid-template-columns:1fr}}


/* v13 splash transition hardening */
.intro-splash[hidden]{display:none!important}
.intro-splash.is-leaving{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.museum-main.is-ready,.topbar.is-ready,footer.is-ready{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
