
/* =========================================================
   ASYNC ARCHIVE EXPANSION v2
========================================================= */
.archive-enhanced-intro{
  margin:0 0 22px;
  padding:18px 20px;
  border:1px solid rgba(168,255,150,.18);
  background:linear-gradient(135deg,rgba(168,255,150,.045),rgba(0,0,0,.16));
  font-family:var(--mono);
}
.archive-enhanced-intro strong{display:block;color:var(--archive-green);font-size:11px;letter-spacing:.12em;margin-bottom:7px}
.archive-enhanced-intro p{margin:0;color:#879486;font-size:10px;line-height:1.7;max-width:850px}
.archive-system-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(168,255,150,.12);margin-bottom:18px}
.archive-system-cell{background:#070a07;padding:12px 14px;font-family:var(--mono);font-size:8px;color:#687267}
.archive-system-cell b{display:block;color:#a8ff96;font-size:9px;margin-top:5px}
.archive-system-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a8ff96;margin-right:5px;box-shadow:0 0 8px rgba(168,255,150,.55)}
.archive-photo-card{padding:0!important;overflow:hidden;text-align:left}
.archive-photo-card .photo-thumb{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#101410;filter:saturate(.78) contrast(1.05);transition:transform .5s var(--ease),filter .5s}
.archive-photo-card:hover .photo-thumb{transform:scale(1.025);filter:saturate(1) contrast(1.08)}
.archive-photo-card .photo-card-body{padding:16px 18px 19px}
.archive-photo-card .photo-card-id{font:8px var(--mono);letter-spacing:.12em;color:#687267;margin-bottom:8px}
.archive-photo-card h3{margin:0 0 8px}
.archive-photo-card p{margin:0}
.archive-photo-badge{position:absolute;top:12px;left:12px;padding:6px 8px;background:#050805d9;border:1px solid rgba(168,255,150,.22);font:7px var(--mono);color:#a8ff96;letter-spacing:.08em}
.archive-photo-wrap{position:relative}
.archive-record-rich{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);min-height:100%;background:#060806;color:#dce4d8}
.archive-record-media{background:#030403;display:flex;align-items:center;justify-content:center;min-height:420px;border-right:1px solid rgba(168,255,150,.12)}
.archive-record-media img{display:block;width:100%;height:100%;max-height:78vh;object-fit:contain}
.archive-record-media video{width:100%;max-height:78vh;background:#000}
.archive-record-media audio{width:calc(100% - 50px);margin:25px}
.archive-record-content{padding:42px;overflow:auto}
.archive-record-kicker{font:8px var(--mono);color:#7d897b;letter-spacing:.16em;margin-bottom:12px}
.archive-record-content h2{font-size:clamp(28px,4vw,56px);line-height:.95;letter-spacing:-.05em;margin:0 0 18px}
.archive-record-content>p{font-size:13px;line-height:1.75;color:#aeb8aa;max-width:700px}
.archive-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(168,255,150,.12);margin:25px 0}
.archive-meta{background:#0a0d0a;padding:13px}
.archive-meta small{display:block;font:7px var(--mono);color:#667064;letter-spacing:.1em;margin-bottom:6px}
.archive-meta strong{font:9px var(--mono);color:#dbe5d7;word-break:break-word}
.archive-record-actions{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}
.archive-action{border:1px solid rgba(168,255,150,.24);padding:11px 14px;color:#b9c6b5;background:#0a0d0a;font:8px var(--mono);letter-spacing:.08em;cursor:pointer}
.archive-action:hover{background:#a8ff96;color:#081008}
.archive-related{margin-top:28px;border-top:1px solid rgba(168,255,150,.12);padding-top:20px}
.archive-related>span{font:7px var(--mono);letter-spacing:.14em;color:#667064}
.archive-related-grid{display:grid;gap:6px;margin-top:10px}
.archive-related button{border:0;border-left:2px solid #31402e;background:#0b0e0b;color:#aeb9aa;text-align:left;padding:10px 12px;font:8px var(--mono);cursor:pointer}
.archive-related button:hover{border-color:#a8ff96;color:#a8ff96}
.archive-access{display:inline-block;padding:5px 7px;border:1px solid rgba(168,255,150,.18);font:7px var(--mono);color:#8c9a88;margin-left:8px}
.recovered-node{
  margin-top:18px!important;
  border:1px solid rgba(168,255,150,.12)!important;
  color:#566054!important;
  font:7px var(--mono)!important;
  letter-spacing:.08em;
  text-align:left;
  padding:10px 12px!important;
  background:transparent!important;
  cursor:pointer;
}
.recovered-node:hover{color:#a8ff96!important;border-color:rgba(168,255,150,.3)!important}
.photo-template-box{border:1px dashed rgba(168,255,150,.2);padding:15px;margin-top:20px;background:#080b08;font:8px var(--mono);line-height:1.8;color:#82907f}
.photo-template-box b{color:#a8ff96}
.public-enhanced{padding:90px 5vw;background:#e8e8e1;color:#10120f}
.public-enhanced__head{max-width:1000px;margin-bottom:45px}
.public-enhanced__eyebrow{font:9px var(--mono);letter-spacing:.16em;color:#6d746b;margin-bottom:12px}
.public-enhanced h2{font-size:clamp(42px,7vw,94px);line-height:.9;letter-spacing:-.07em;margin:0 0 20px}
.public-enhanced__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#c5c7bf}
.public-news,.public-facility{background:#f2f1eb;padding:28px;min-height:270px}
.public-news small,.public-facility small{font:8px var(--mono);color:#747b71;letter-spacing:.12em}
.public-news h3,.public-facility h3{font-size:25px;letter-spacing:-.04em;margin:30px 0 12px}
.public-news p,.public-facility p{font-size:12px;line-height:1.7;color:#555a53}
.public-facility img{width:100%;height:150px;object-fit:cover;margin:-28px -28px 24px;width:calc(100% + 56px)}
.public-status-line{font:8px var(--mono);letter-spacing:.1em;color:#697267;margin-top:25px}
@media(max-width:900px){
 .archive-system-strip{grid-template-columns:1fr 1fr}
 .archive-record-rich{grid-template-columns:1fr}
 .archive-record-media{border-right:0;border-bottom:1px solid rgba(168,255,150,.12);min-height:260px}
 .archive-record-content{padding:25px}
 .public-enhanced__grid{grid-template-columns:1fr}
}
@media(max-width:600px){
 .archive-system-strip{grid-template-columns:1fr}
 .archive-record-content h2{font-size:34px}
 .archive-meta-grid{grid-template-columns:1fr}
 .archive-record-actions .archive-action{flex:1}
 .public-enhanced{padding:65px 6vw}
}
@media print{
 body>*:not(#asyncPrintFrame){display:none!important}
}
