
/* Forbidden Library: archival rooms, preserved site features */
#archive.forbidden-library{padding:clamp(90px,11vw,140px) clamp(16px,4vw,44px);background:radial-gradient(ellipse at 50% 8%,rgba(128,69,80,.17),transparent 39%),radial-gradient(ellipse at 85% 60%,rgba(53,68,100,.15),transparent 53%),#090D16}
#archive .wrap{max-width:1220px}
#archive .arc-overline{font:600 11px var(--lat);letter-spacing:.18em;color:#C9A780}
#archive .sh{margin-bottom:42px}
#archive .sh p{max-width:690px}
#archive #seals,#archive #libSeals,#archive #libCases{scroll-margin-top:85px}
#archive .lib-nav{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin:0 0 clamp(52px,7vw,86px)}
#archive .lib-nav a{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid rgba(210,176,127,.31);color:#E6D4B5;background:rgba(21,28,38,.76);font-size:13px;font-weight:700}
#archive .lib-nav a span{color:#D5B47E;font-size:18px;font-family:var(--disp)}
#archive .lib-nav a:hover{background:rgba(211,177,128,.15);border-color:#D5B47E}
#archive .lib-section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:0 0 25px;padding:0 0 17px;border-bottom:1px solid rgba(220,184,134,.23)}
#archive .lib-section-head small{color:#C9AF8A;font:600 10px var(--lat);letter-spacing:.16em}
#archive .lib-section-head h3{color:#F3E7D5;margin:8px 0 0;font:700 clamp(25px,3.1vw,37px) var(--disp)}
#archive .lib-section-head p{font-size:13px;color:#B8BCC5;margin:0;max-width:260px;text-align:right;line-height:1.75}
#archive .sgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0}
#archive .lib-seal{--seal-color:#D2B27E;display:flex;flex-direction:column;align-items:flex-start;gap:12px;position:relative;min-width:0;min-height:248px;padding:19px 15px 17px;text-align:left;border:1px solid rgba(210,171,116,.22);background:linear-gradient(155deg,#263042,#111A29 63%,#0C131F);overflow:hidden;transition:border-color .2s,transform .2s,background .2s}
#archive .lib-seal:before{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(180deg,rgba(8,13,23,.45),rgba(8,13,23,.95)),var(--seal-image) center / cover no-repeat;opacity:.5;pointer-events:none}
#archive .lib-seal>*{position:relative;z-index:1}
#archive .lib-seal:hover{transform:translateY(-3px);border-color:var(--seal-color)}
#archive .lib-seal[aria-pressed=true]{border-color:var(--seal-color);box-shadow:0 0 0 1px var(--seal-color),0 10px 25px rgba(0,0,0,.28)}
#archive .lib-seal-number{font:600 10px var(--lat);letter-spacing:.12em;color:#BEB7AE}
#archive .lib-seal-symbol{display:grid;place-items:center;width:48px;height:48px;margin:auto 0 3px;border-radius:50%;border:1px solid var(--seal-color);color:var(--seal-color);background:rgba(7,12,22,.52);font-family:serif;font-size:25px}
#archive .lib-seal-title{font:700 clamp(17px,1.65vw,22px) var(--disp);color:#F0E4D4}
#archive .lib-seal-sub{font-size:11px;color:#C1B3A5;line-height:1.6}
#archive .lib-seal-detail{margin:14px 0 0;padding:clamp(21px,3.6vw,42px);background:radial-gradient(ellipse at 85% 12%,rgba(93,48,68,.2),transparent 60%),linear-gradient(140deg,#1C2634,#111924);border:1px solid rgba(220,183,129,.36);min-height:310px}
#archive .lib-detail-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid rgba(218,182,128,.24);color:#C7AC86;font:600 11px var(--lat);letter-spacing:.1em}
#archive .lib-detail-top span:last-child{color:#C3AAA8}
#archive .lib-detail-title{font:700 clamp(27px,3.8vw,43px) var(--disp);color:#F4E7D4;margin:25px 0 11px}
#archive .lib-detail-quote{font:500 clamp(17px,2.1vw,22px)/1.85 var(--read);color:#EEDDC8;border-left:2px solid var(--lib-region-color,#D5AE7B);padding:13px 0 13px 19px;margin:19px 0}
#archive .lib-detail-body{font-size:15px;line-height:1.9;color:#D0D2D2;margin:22px 0}
#archive .lib-document-damage{width:min(100%,480px);display:flex;gap:5px;align-items:center;opacity:.78;margin:20px 0 8px}
#archive .lib-document-damage span{height:11px;background:#090A0E;border:1px solid rgba(176,100,95,.17);display:block;flex:1}
#archive .lib-document-damage span:nth-child(2){flex:.7}
#archive .lib-document-damage span:nth-child(3){flex:.32}
#archive .lib-document-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:17px}
#archive .lib-document-actions button{border:1px solid rgba(210,174,119,.5);color:#ECD5AC;padding:11px 15px;font-size:13px;font-weight:700}
#archive .lib-document-actions button:hover{background:rgba(219,183,128,.13)}
#archive .lib-case-section{margin-top:clamp(85px,11vw,145px)}
#archive .arc-overview{margin:0 0 17px}
#archive .arc-layout{grid-template-columns:280px minmax(0,1fr)}
#archive .arc-tab{background:rgba(7,14,25,.75);border-left:2px solid rgba(224,188,129,.22)}
#archive .arc-tab[aria-pressed=true]{border-left-color:#E3BF86}
#archive .arc-paper{background:radial-gradient(ellipse at 85% 5%,rgba(101,57,65,.18),transparent 51%),linear-gradient(140deg,#192434,#0E1623)}
#archive .arc-paper h3{font-size:clamp(29px,3.3vw,45px);margin:16px 0 12px}
#archive .arc-clue{border-left:2px solid rgba(210,177,122,.37)}
#archive .arc-clue:has(.arc-hint-go){border-left-color:rgba(162,160,168,.19)}
#archive .arc-clue small{display:block;margin:7px 0 0}
#archive .arc-stamp{font:600 10px var(--lat);letter-spacing:.2em;color:#BFA47D;margin-top:20px}
#archive .arc-reward{position:relative;margin-top:26px;padding:24px;background:linear-gradient(125deg,rgba(91,60,55,.22),rgba(27,23,32,.48));border:1px solid rgba(216,177,125,.41)}
#archive .arc-reward.locked{opacity:1;border-style:dashed;background:rgba(12,18,28,.65)}
#archive .arc-reward h4{font:700 23px var(--disp);color:#EED5AD;margin:10px 0}
#archive .lib-document-code{display:block;font:600 10px var(--lat);letter-spacing:.15em;color:#C2A77C}
#archive .lib-redaction{display:inline-block;background:#08090E;padding:6px 8px;letter-spacing:.16em;color:#171015;user-select:none}
#archive .lib-case-dilemma{margin:18px 0;padding:15px 17px;border-left:2px solid #BD816F;background:rgba(24,16,24,.5)}
#archive .lib-case-dilemma b{font-size:13px;color:#E7B5A1}
#archive .lib-case-dilemma p{margin:7px 0 0;color:#F0DFD2;font-size:16px;line-height:1.85}
#archive .lib-missing{display:block;margin-top:17px;color:#CDB9A6;font-size:12px}
#archive .lib-caution{display:block;margin-top:10px;font-size:12px;color:#9EA8B6;line-height:1.75}

@media(max-width:1100px){#archive .sgrid{grid-template-columns:repeat(3,minmax(0,1fr))}#archive .lib-seal{min-height:210px}}
@media(max-width:740px){
 #archive .sgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 #archive .lib-seal{min-height:175px;padding:15px}
 #archive .lib-seal-symbol{width:38px;height:38px;font-size:21px}
 #archive .lib-nav{gap:7px}
 #archive .lib-nav a{flex:1;justify-content:center;text-align:center;font-size:11px;padding:10px 8px;gap:4px}
 #archive .lib-section-head{display:block}
 #archive .lib-section-head p{max-width:none;text-align:left;margin:8px 0 0}
 #archive .arc-layout{grid-template-columns:1fr}
 #archive .arc-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 #archive .arc-tab{padding:10px 8px}
 #archive .arc-tab b{font-size:15px}
 #archive .lib-detail-title{margin-top:18px}
}
@media(max-width:450px){
 #archive .lib-nav{flex-wrap:nowrap}
 #archive .lib-nav a{font-size:10px;letter-spacing:-.02em}
 #archive .sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #archive .lib-seal{min-height:169px}
 #archive .lib-seal-title{font-size:17px}
 #archive .arc-tabs{grid-template-columns:1fr}
 #archive .arc-tab{display:flex;gap:8px;align-items:center}
 #archive .arc-tab em{display:none}
 #archive .lib-seal-detail{padding:20px 16px}
}
@media(prefers-reduced-motion:reduce){#archive .lib-seal{transition:none}#archive .lib-seal:hover{transform:none}}

/* Restricted manuscript: tap the redaction to recover a small readable fragment. */
#archive .lib-recovery{display:grid;justify-items:start;gap:12px;width:min(100%,660px);margin:23px 0;padding:19px 21px;text-align:left;border:1px solid rgba(220,185,130,.43);border-left:3px solid var(--lib-region-color,#D4B383);background:#151B26;cursor:pointer;color:#EAD5B4}
#archive .lib-recovery:hover{background:#202632;border-color:#EAD1A7}
#archive .lib-recovery:focus-visible{outline:2px solid #F5D9AC;outline-offset:3px}
#archive .lib-recovery .lib-document-damage{display:grid;gap:8px;width:100%;margin:0}
#archive .lib-recovery .lib-document-damage span{height:12px;min-width:0;width:93%;background:#06080E;border:0}
#archive .lib-recovery .lib-document-damage span:nth-child(2){width:81%}
#archive .lib-recovery .lib-document-damage span:nth-child(3){width:57%}
#archive .lib-recovery>b{font:750 15px/1.5 var(--read);color:#ECD6B7}
#archive .lib-recovery b i{font-style:normal;margin-left:10px}
#archive .lib-recovery>small{font:400 12px/1.8 var(--read);color:#C7CAD0}
#archive .lib-fragment{padding:24px 25px;margin:23px 0;background:#17212D;border:1px solid rgba(224,188,135,.41);border-left:3px solid var(--lib-region-color,#D4B383)}
#archive .lib-fragment>small{font:650 10px var(--lat);letter-spacing:.14em;color:#DBC39D}
#archive .lib-fragment h4{color:#F1E2D1;font:700 20px var(--disp);margin:13px 0}
#archive .lib-fragment>p{font:400 16px/1.95 var(--read);color:#EEEAE4;word-break:keep-all;margin:0 0 18px}
#archive .lib-fragment-remainder{display:grid;justify-items:start;gap:9px;border-top:1px solid rgba(227,191,145,.2);padding-top:17px}
#archive .lib-fragment-remainder span{color:#D7B6A5;font-size:12px}
#archive .lib-fragment-remainder b{font:700 17px monospace;letter-spacing:.13em;background:#080B12;padding:8px 10px;color:#AF8791;user-select:none}
#archive .lib-fragment-remainder small{color:#C8C1BA;font-size:12px;line-height:1.7}
#archive .lib-seal.lib-visited:after{content:"◈ 일부 판독";position:absolute;right:7px;top:15px;color:#E7C597;font:750 10px var(--read);letter-spacing:.02em;background:rgba(9,15,25,.75);padding:3px 5px;z-index:2}
#archive .lib-document-footer{margin-top:17px}
@media(max-width:740px){#archive .lib-fragment{padding:18px 17px}#archive .lib-fragment>p{font-size:15px}#archive .lib-recovery{padding:17px 16px}}
