/* 通信简史 · Three.js 时空长廊界面 */
#archive3d[hidden],#galleryStatus[hidden],#galleryInfo[hidden]{display:none!important}
#archive3d{position:fixed;z-index:4;inset:76px 0 0;background:#040917;overflow:hidden}
#threeMount,.archive3d-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}
.archive3d-canvas{cursor:grab}.archive3d-canvas:active{cursor:grabbing}
.archive3d-canvas:focus-visible{outline:3px solid #c0efff;outline-offset:-4px}
.gallery-hud{position:absolute;z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.gallery-hud>*{pointer-events:auto}
.gallery-top{left:clamp(16px,4vw,48px);right:clamp(16px,4vw,48px);top:20px;padding:13px 16px;border:1px solid #81d8ff28;border-radius:13px;background:#071226cc;backdrop-filter:blur(14px)}
.gallery-top strong{display:block;font-size:16px;margin-top:4px}.gallery-top small{font-size:12px;color:#9eb3cc;font-weight:400;margin-left:6px}
.gallery-status{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);width:min(490px,calc(100% - 36px));padding:27px;border:1px solid #73dcff69;border-radius:16px;background:#071429f2;box-shadow:0 20px 70px #000a;text-align:center}
.gallery-status b{font-size:21px;color:#f0f8ff}.gallery-status p{color:#aebfd4;line-height:1.75;margin:13px 0}
.gallery-info{position:absolute;z-index:2;right:clamp(16px,4vw,48px);bottom:64px;width:min(365px,calc(100% - 32px));padding:20px;border-radius:15px;border:1px solid #7bdcff55;background:#08162bef;box-shadow:0 18px 52px #0008;backdrop-filter:blur(15px)}
.gallery-info h2{font-size:25px;margin:7px 30px 8px 0}.gallery-info p{line-height:1.8;color:#b7c9dc;margin:0 0 14px}.gallery-info .close{position:absolute;right:12px;top:12px}.sixg-note{display:block;color:#f4d58d;line-height:1.7;margin:0 0 12px}
.gallery-info .era-entry-lock{margin:10px 0 12px;padding:10px 12px;border-left:2px solid #f5cf83;background:#f5cf830d;color:#e8d6ad;font-size:13px;line-height:1.7}.gallery-info .btn:disabled{cursor:not-allowed;opacity:.66;transform:none}
.exhibit-hint{position:absolute;z-index:2;left:50%;top:74px;transform:translateX(-50%);max-width:calc(100% - 28px);padding:10px 15px;border:1px solid #84dfff42;border-radius:11px;background:#071226df;color:#dbeeff;font-size:12px;text-align:center;pointer-events:none;backdrop-filter:blur(12px)}.exhibit-hint[hidden]{display:none!important}
.gallery-hint{position:absolute;z-index:2;bottom:15px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 28px);display:flex;gap:15px;padding:9px 14px;border:1px solid #7bdcff2b;border-radius:30px;background:#071226d9;color:#a8bdd3;font-size:11px;text-align:center;backdrop-filter:blur(10px)}
body.gallery-open{overflow:hidden}body.gallery-open>footer{display:none}
@media(max-width:650px){#archive3d{inset:112px 0 0}.gallery-top{top:10px;padding:10px 12px}.gallery-top strong{font-size:14px}.gallery-top .btn{padding:9px 11px;font-size:12px}.gallery-info{bottom:61px;padding:16px}.gallery-hint{bottom:10px;display:block;font-size:10px;line-height:1.6;border-radius:12px;width:auto}.gallery-hint span{display:block}.gallery-hint span+span{color:#728ca8}}
@media(prefers-reduced-motion:reduce){.gallery-info,.gallery-status{scroll-behavior:auto}}

.review-timeline{position:absolute;z-index:3;top:91px;left:50%;transform:translateX(-50%);width:min(100% - 32px,980px);display:flex;gap:8px;overflow-x:auto;padding:6px 2px 10px;scrollbar-width:thin;pointer-events:auto}.review-era{flex:1 0 128px;max-width:160px;display:flex;flex-direction:column;gap:3px;text-align:left;padding:9px 11px;border:1px solid #75c9ed35;border-radius:10px;background:#071226dc;color:#e9f5ff;cursor:pointer;backdrop-filter:blur(10px)}.review-era:hover,.review-era:focus-visible{border-color:#63e8ff;outline:2px solid #63e8ff44;outline-offset:1px}.review-era b{color:#72ddf5;font-size:1rem}.review-era span,.review-era small,.review-era em{font-size:10px;color:#9eb3cc;font-style:normal}.review-era.done{border-color:#f5cf8370}.review-era.done b{color:#f5cf83}.review-era.active{border-color:#63e8ff76}.review-guide[hidden],.review-timeline[hidden]{display:none!important}.gallery-hint{bottom:12px}.gallery-info{bottom:60px}
@media(max-width:650px){.review-timeline{top:75px;width:calc(100% - 20px);left:10px;transform:none;gap:6px}.review-era{flex-basis:118px;padding:8px}.review-era small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-era em{display:none}.review-guide{bottom:118px}.gallery-info{bottom:62px}}

#archive3d .exhibit-hint{top:166px}
@media(max-width:650px){#archive3d .exhibit-hint{top:139px}}

@media(max-width:650px){.gallery-hint{left:10px;right:10px;width:auto;max-width:none;transform:none;padding:8px 10px}.gallery-info,.review-guide{max-width:none}.gallery-status{padding:20px 16px}}
