@keyframes loadFadeUpIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes loadFadeUpOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}@keyframes loadSpin{to{transform:rotate(360deg)}}@keyframes loadPulseGlow{0%,to{opacity:.04;transform:translate(-50%,-50%)scale(1)}50%{opacity:.09;transform:translate(-50%,-50%)scale(1.06)}}@keyframes loadShimmerLine{0%{opacity:0;transform:scaleX(0)}50%{opacity:.5;transform:scaleX(1)}to{opacity:0;transform:scaleX(0)}}@keyframes loadDiamondRotate{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes loadProgressIndeterminate{0%{width:40%;left:-40%}50%{width:60%;left:20%}to{width:40%;left:100%}}.loading-root{z-index:100;background:var(--background);font-family:var(--font-body);flex-direction:column;justify-content:center;align-items:center;animation:.3s ease-out loadFadeUpIn;display:flex;position:fixed;inset:0}.loading-root--inline{min-height:100dvh;position:relative}.loading-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.loading-grain{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.03'/%3E%3C/svg%3E");background-size:200px;position:absolute;inset:0}.loading-radial{background:radial-gradient(circle,color-mix(in srgb,var(--gold)6%,transparent)0%,transparent 70%);width:500px;height:500px;animation:5s ease-in-out infinite loadPulseGlow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-diamond{border:1px solid color-mix(in srgb,var(--gold)4%,transparent);width:280px;height:280px;animation:90s linear infinite loadDiamondRotate;position:absolute;top:50%;left:50%}.loading-line-accent{background:var(--gold);opacity:.05;width:1px;height:30%;position:absolute}.loading-line-accent--left{top:0;left:16%}.loading-line-accent--right{bottom:0;right:16%}.loading-content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:28px;padding:0 32px;display:flex;position:relative}.loading-spinner-wrap{justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative}.loading-spinner-ring{border:2px solid color-mix(in srgb,var(--gold)15%,transparent);border-top-color:var(--gold);border-radius:50%;animation:1.2s linear infinite loadSpin;position:absolute;inset:0}.loading-spinner-ring--outer{border-width:1px;border-color:color-mix(in srgb,var(--gold)6%,transparent);border-top-color:color-mix(in srgb,var(--gold)25%,transparent);animation:3s linear infinite reverse loadSpin;inset:-8px}.loading-logo{filter:drop-shadow(0 0 16px #c9a96240)}.loading-messages{flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:60px;display:flex}.loading-headline{font-family:var(--font-heading);color:var(--text-primary);letter-spacing:.5px;max-width:280px;font-size:15px;font-weight:400;line-height:1.5;transition:opacity .3s,transform .3s}.loading-headline--fading{opacity:0;transform:translateY(-12px)}.loading-sub{color:var(--text-muted);letter-spacing:.3px;max-width:260px;font-size:12px;line-height:1.5;transition:opacity .3s,transform .3s}.loading-sub--fading{opacity:0;transform:translateY(-12px)}.loading-progress{background:color-mix(in srgb,var(--gold)12%,transparent);width:120px;height:1px;position:relative;overflow:hidden}.loading-progress-bar{background:var(--gold);height:100%;animation:2s ease-in-out infinite loadProgressIndeterminate;position:absolute;top:0}.loading-shimmer{background:linear-gradient(90deg,transparent,var(--gold),transparent);transform-origin:50%;width:60px;height:1px;animation:3s ease-in-out infinite loadShimmerLine}@keyframes loadCheckScale{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes loadSuccessRing{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.loading-success-icon{border:2px solid var(--gold);width:72px;height:72px;color:var(--gold);border-radius:50%;justify-content:center;align-items:center;animation:.5s ease-out loadSuccessRing;display:flex}.loading-success-icon svg{animation:.4s ease-out .2s both loadCheckScale}.loading-success-title{font-family:var(--font-heading);color:var(--text-primary);letter-spacing:1px;font-size:22px;font-weight:400}.loading-success-sub{color:var(--text-secondary);font-size:13px;line-height:1.6}
