html{color-scheme:light only}.viewer-loading-overlay{position:fixed;inset:0;width:100%;height:100%;height:100vh;height:100dvh;background-color:rgb(0,0,64);z-index:999999;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity 0.5s ease-out,visibility 0.5s ease-out}.viewer-loading-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.viewer-loading-content{text-align:center;color:#fff}.viewer-loading-spinner{width:5rem;height:5rem;margin:0 auto 1.875rem;position:relative}.loader-svg,.loader-svg-inner{width:100%;height:100%}.loader-rotate{animation:lro 6s linear infinite;transform-origin:center center}.loader-inner-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3rem;height:3rem}.loader-rotate-inner{animation:lri 3s linear infinite;transform-origin:center center}.viewer-loading-text{font-size:1.125rem;font-weight:500;background:linear-gradient(to right,#b47e37,#d4a574,#efd477);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;letter-spacing:0.031rem;margin-top:0.625rem}@keyframes lro{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes lri{0%{transform:rotate(0deg)}100%{transform:rotate(-360deg)}}@supports (padding:max(0px)){.viewer-loading-overlay{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}}.viewer-loading-overlay--failure{background-color:rgb(0,0,64)}.viewer-loading-overlay--failure .viewer-loading-content{max-width:min(92vw,26rem);padding:0 1rem;animation:viewer-load-failure-in 0.55s cubic-bezier(0.22,1,0.36,1) both}@keyframes viewer-load-failure-in{from{opacity:0;transform:translateY(12px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}.viewer-loading-failure{display:flex;flex-direction:column;align-items:center;gap:0.75rem}.viewer-loading-failure-icon-wrap{position:relative;width:5.5rem;height:5.5rem;margin-bottom:0.25rem}.viewer-loading-failure-pulse{position:absolute;inset:0;margin:auto;width:3.25rem;height:3.25rem;border-radius:50%;border:2px solid rgba(239,212,119,0.35);animation:viewer-failure-pulse 2.2s ease-out infinite}@keyframes viewer-failure-pulse{0%{transform:scale(0.85);opacity:0.9}70%{transform:scale(1.45);opacity:0}100%{transform:scale(1.45);opacity:0}}.viewer-loading-failure-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#efd477}.viewer-loading-failure-icon svg{display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,0.35))}.viewer-loading-failure-title{margin:0;font-size:clamp(1.125rem,4vw,1.375rem);font-weight:600;color:#fff;line-height:1.3;text-align:center;letter-spacing:0.02em}.viewer-loading-failure-message{margin:0;font-size:clamp(0.875rem,3.2vw,1rem);font-weight:400;color:rgba(255,255,255,0.82);line-height:1.5;text-align:center}.viewer-loading-failure-retry{margin-top:0.5rem;padding:0.55rem 1.35rem;border:none;border-radius:9999px;font-size:0.9375rem;font-weight:600;font-family:inherit;cursor:pointer;color:rgb(0,0,64);background:linear-gradient(135deg,#b47e37,#efd477);box-shadow:0 4px 14px rgba(0,0,0,0.25);transition:transform 0.15s ease,box-shadow 0.15s ease,filter 0.15s ease}.viewer-loading-failure-retry:hover{filter:brightness(1.06);box-shadow:0 6px 18px rgba(0,0,0,0.3)}.viewer-loading-failure-retry:active{transform:scale(0.97)}