:root{font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;color:#e4f7ff;background:#061a2c;--cyan:#6cddff;--muted:#9ab9c8;--line:rgba(140,224,255,.25)}*{box-sizing:border-box;margin:0;padding:0}html{background:#061a2c}body{min-width:320px;min-height:700vh;overflow-x:hidden;background:radial-gradient(circle at 50% 47%,rgba(26,128,182,.24),transparent 34%),linear-gradient(135deg,#061a2c,#0a3047 52%,#051321);color:#e4f7ff}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.gallery-skip{position:fixed;left:18px;top:-50px;z-index:20;background:#fff;color:#061a2c;padding:10px 14px}.gallery-skip:focus{top:14px}.gallery-nav,.gallery-footer{position:fixed;z-index:10;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(18px,3vw,46px);font-size:12px;letter-spacing:.08em}.gallery-nav{top:0}.gallery-footer{bottom:0;color:var(--muted);font-size:10px;letter-spacing:.16em}.gallery-brand{display:flex;align-items:center;gap:11px}.gallery-brand-mark{display:grid;place-items:center;width:35px;height:35px;border:2px solid #ef3d42;font-weight:900;font-size:18px;transform:skew(-8deg);color:#fff}.gallery-brand span:last-child{display:grid;line-height:1.15}.gallery-brand b{font-size:14px;letter-spacing:.13em}.gallery-brand small{margin-top:5px;color:var(--cyan);font-size:9px;letter-spacing:.18em}.gallery-nav-tools{display:flex;align-items:center;gap:22px;color:var(--muted)}.gallery-nav-tools a:hover{color:#fff}.gallery-language{width:40px;height:29px;border:1px solid var(--line);border-radius:999px;background:transparent;cursor:pointer;font-size:11px}.gallery-language:hover{border-color:var(--cyan);color:#fff}.gallery-container{position:fixed;inset:0;overflow:hidden;perspective:clamp(560px,145vw,1500px);touch-action:pan-y;cursor:grab;user-select:none;outline:none}.gallery-container.is-dragging{cursor:grabbing}.gallery-ring{position:absolute;left:50%;top:50%;width:1px;height:1px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(48deg);will-change:transform}.gallery-card{position:absolute;left:50%;top:50%;width:clamp(38px,4vw,54px);height:clamp(52px,5.3vw,72px);margin:0;transform:translate(-50%,-50%);transform-style:preserve-3d;background:#0b2a3e;border:0;cursor:pointer;will-change:transform}.gallery-card img{display:block;width:100%;height:100%;object-fit:cover;filter:contrast(1.04);-webkit-user-drag:none}.gallery-card:hover img,.gallery-card.is-selected img{outline:2px solid var(--cyan);outline-offset:2px}.gallery-preview{position:fixed;left:50%;top:50%;z-index:4;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:none}.gallery-preview-button{width:clamp(210px,27vw,390px);aspect-ratio:3/2;padding:0;border:0;overflow:hidden;background:#082238;box-shadow:0 25px 65px rgba(0,0,0,.42);pointer-events:auto;cursor:zoom-in}.gallery-preview-button img{display:block;width:100%;height:100%;object-fit:cover;-webkit-user-drag:none}.gallery-preview figcaption,.gallery-preview [data-preview-caption]{font-size:13px;color:#fff;letter-spacing:.1em;text-align:center;text-shadow:0 2px 12px #061a2c}.gallery-lightbox{border:0;padding:20px;background:rgba(4,17,29,.97);max-width:92vw;max-height:92vh}.gallery-lightbox::backdrop{background:rgba(1,8,15,.84);backdrop-filter:blur(8px)}.gallery-lightbox img{display:block;max-width:86vw;max-height:78vh;object-fit:contain}.gallery-lightbox p{margin-top:10px;color:var(--muted);font-size:12px;text-align:center}.gallery-lightbox>[data-lightbox-close]{position:absolute;right:7px;top:2px;border:0;background:transparent;font-size:28px;cursor:pointer}@media(max-width:768px){.gallery-nav{padding:18px}.gallery-nav-tools a{display:none}.gallery-footer{padding:18px}.gallery-footer span:last-child{display:none}.gallery-brand b{font-size:12px}.gallery-brand small{font-size:8px}.gallery-ring{transform:translate(-50%,-50%) rotateX(55deg)}.gallery-preview-button{width:min(58vw,250px)}.gallery-preview{gap:10px}.gallery-preview [data-preview-caption]{font-size:12px}.gallery-card{width:33px;height:44px}}
@media(prefers-reduced-motion:reduce){.gallery-ring,.gallery-card{transition:none!important}}
.gallery-preview{pointer-events:auto}
