/* TN Music V141-HOME-ONCE — only the first entry into / shows this loader */
html.tn141o-entry-active,html.tn141o-entry-active body{overflow:hidden!important}
html.tn141o-entry-active .global-spinner{display:none!important}
html.tn141o-entry-active::before{content:"";position:fixed;inset:0;z-index:2147483600;background:radial-gradient(circle at 50% 44%,#0f4eb8 0%,#082a69 28%,#03122f 68%,#020b1d 100%);display:block}
html.tn141o-entry-active.tn141o-mounted::before{display:none!important;content:none!important}
#tn-v141-home-loader{position:fixed;inset:0;z-index:2147483640;background:radial-gradient(circle at 50% 44%,#0f4eb8 0%,#082a69 28%,#03122f 68%,#020b1d 100%);font-family:Roboto,'Segoe UI',Arial,sans-serif;color:#fff;display:grid;place-items:center;overflow:hidden;opacity:1;transition:opacity .22s ease}
#tn-v141-home-loader.tn141o-leaving{opacity:0;pointer-events:none}
#tn-v141-home-loader *{box-sizing:border-box}
#tn-v141-home-loader .tn141o-shell{position:relative;z-index:2;width:min(94vw,1120px);min-height:min(100dvh,920px);padding:clamp(18px,3vh,40px) 20px clamp(26px,6vh,62px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}
#tn-v141-home-loader .tn141o-beam{position:absolute;top:0;left:0;width:min(26vw,330px);height:min(24vh,240px);background:linear-gradient(135deg,rgba(47,180,255,.92),rgba(47,180,255,0) 70%);clip-path:polygon(0 0,100% 0,0 100%);opacity:.85;filter:drop-shadow(0 0 12px rgba(0,210,255,.85))}
#tn-v141-home-loader .tn141o-brand{width:min(72vw,700px);max-height:175px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(101,197,255,.55));margin-top:clamp(8px,1.5vh,18px)}
#tn-v141-home-loader .tn141o-tagline{margin-top:8px;display:flex;align-items:center;gap:18px;justify-content:center;font-size:clamp(12px,1.45vw,22px);letter-spacing:.35em;color:#eff7ff;text-shadow:0 1px 10px rgba(0,0,0,.35);max-width:95%}
#tn-v141-home-loader .tn141o-tagline:before,#tn-v141-home-loader .tn141o-tagline:after{content:"";width:min(8vw,95px);height:1px;background:linear-gradient(90deg,transparent,#a7dbff,transparent)}
#tn-v141-home-loader .tn141o-vinyl-zone{position:relative;width:min(82vw,860px);height:clamp(220px,38vh,430px);display:flex;align-items:center;justify-content:center;margin-top:clamp(16px,4vh,28px)}
#tn-v141-home-loader .tn141o-vinyl{position:relative;z-index:2;width:min(82vw,540px);max-height:100%;object-fit:contain;filter:drop-shadow(0 0 20px rgba(0,205,255,.35))}
#tn-v141-home-loader .tn141o-eq{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(95vw,1080px);display:flex;justify-content:space-between;align-items:center;pointer-events:none;opacity:.92}
#tn-v141-home-loader .tn141o-eq span{display:block;height:104px;width:38%;mask-image:radial-gradient(ellipse at center,#000 8%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at center,#000 8%,transparent 72%);background:repeating-linear-gradient(90deg,transparent 0 8px,#00f0ff 9px 14px,transparent 15px 20px);animation:tn141o-bars 1.18s ease-in-out infinite alternate;filter:drop-shadow(0 0 10px rgba(25,235,255,.7))}
#tn-v141-home-loader .tn141o-eq span:last-child{background:repeating-linear-gradient(90deg,transparent 0 8px,#ff74ff 9px 14px,transparent 15px 20px);animation-delay:.25s;filter:drop-shadow(0 0 10px rgba(255,103,241,.7))}
#tn-v141-home-loader .tn141o-message{margin:clamp(10px,2vh,18px) 0 18px;font-size:clamp(18px,2vw,30px);font-weight:800;text-shadow:0 0 16px rgba(0,115,255,.32)}
#tn-v141-home-loader .tn141o-message:before{content:"▥";display:inline-block;margin-right:12px;color:#26efff;font-size:1.15em;vertical-align:-2px}
#tn-v141-home-loader .tn141o-progress{width:min(66vw,640px);height:44px;padding:4px;border-radius:24px;border:2px solid #3fb8ff;background:rgba(3,16,44,.88);box-shadow:0 0 16px rgba(34,138,255,.35), inset 0 0 12px rgba(0,37,87,.8);position:relative;overflow:hidden}
#tn-v141-home-loader .tn141o-fill{position:absolute;top:4px;left:4px;bottom:4px;width:0;border-radius:20px;background:linear-gradient(90deg,#0da7ff 0%,#20f7ff 42%,#ba50ff 74%,#ff8cff 100%);box-shadow:0 0 12px rgba(0,232,255,.6)}
#tn-v141-home-loader .tn141o-percent{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:20px;font-weight:800;text-shadow:0 0 7px rgba(0,0,0,.6)}
#tn-v141-home-loader .tn141o-greeting{margin-top:24px;padding:10px 22px;border-radius:26px;border:1px solid #00dcff;background:rgba(0,53,94,.55);box-shadow:0 0 14px rgba(3,199,255,.28);font-size:17px;font-weight:600;white-space:nowrap}
#tn-v141-home-loader .tn141o-greeting:before,#tn-v141-home-loader .tn141o-greeting:after{content:"♡";padding:0 10px;color:#23f1ff;font-size:1.2em}
#tn-v141-home-loader .tn141o-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:min(84vw,820px);margin-top:26px;font-size:14px}
#tn-v141-home-loader .tn141o-feature{padding:0 12px;border-right:1px solid rgba(102,164,237,.4)}
#tn-v141-home-loader .tn141o-feature:last-child{border-right:0}
#tn-v141-home-loader .tn141o-feature-icon{display:block;font-size:32px;margin-bottom:8px;color:#79e8ff;text-shadow:0 0 10px rgba(18,178,255,.75)}
#tn-v141-home-loader .tn141o-waves{position:absolute;inset:auto 0 0 0;height:min(22vh,190px);background:url('tn-v127-neon-waves-desktop.webp') bottom center/100% 100% no-repeat;pointer-events:none}
@keyframes tn141o-bars{from{transform:scaleY(.66);opacity:.5}to{transform:scaleY(1.14);opacity:.98}}
@media(max-width:700px){
 html.tn141o-entry-active::before{background:radial-gradient(circle at 50% 40%,#0f4eb8 0%,#082a69 28%,#03122f 68%,#020b1d 100%)}
 #tn-v141-home-loader .tn141o-shell{width:100%;min-height:100dvh;padding:max(18px,env(safe-area-inset-top)) 14px calc(max(18px,env(safe-area-inset-bottom)) + 28px)}
 #tn-v141-home-loader .tn141o-beam{width:160px;height:150px}
 #tn-v141-home-loader .tn141o-brand{width:min(90vw,430px);max-height:128px;margin-top:6px}
 #tn-v141-home-loader .tn141o-tagline{font-size:10px;letter-spacing:.18em;gap:8px;max-width:96vw}
 #tn-v141-home-loader .tn141o-tagline:before,#tn-v141-home-loader .tn141o-tagline:after{width:22px}
 #tn-v141-home-loader .tn141o-vinyl-zone{width:100%;height:clamp(220px,33dvh,340px);margin-top:clamp(14px,4vh,28px)}
 #tn-v141-home-loader .tn141o-vinyl{width:min(92vw,430px)}
 #tn-v141-home-loader .tn141o-eq{width:114vw}
 #tn-v141-home-loader .tn141o-eq span{height:74px}
 #tn-v141-home-loader .tn141o-message{font-size:clamp(17px,4.8vw,24px);line-height:1.25;margin:10px 0 16px;max-width:92vw}
 #tn-v141-home-loader .tn141o-progress{width:92vw;height:38px}
 #tn-v141-home-loader .tn141o-percent{font-size:16px;right:12px}
 #tn-v141-home-loader .tn141o-greeting{font-size:13px;padding:8px 10px;margin-top:20px;white-space:normal}
 #tn-v141-home-loader .tn141o-greeting:before,#tn-v141-home-loader .tn141o-greeting:after{padding:0 7px;font-size:1em}
 #tn-v141-home-loader .tn141o-features{width:100%;font-size:10px;line-height:1.4;margin-top:22px}
 #tn-v141-home-loader .tn141o-feature{padding:0 4px}
 #tn-v141-home-loader .tn141o-feature-icon{font-size:24px;margin-bottom:6px}
 #tn-v141-home-loader .tn141o-waves{height:18vh;background-image:url('tn-v127-neon-waves-mobile.webp')}
}
@media(max-height:690px){#tn-v141-home-loader .tn141o-brand{max-height:96px}#tn-v141-home-loader .tn141o-vinyl-zone{height:29vh;margin-top:10px}#tn-v141-home-loader .tn141o-features{margin-top:16px}#tn-v141-home-loader .tn141o-greeting{margin-top:12px}#tn-v141-home-loader .tn141o-message{margin:4px 0 10px}}
@media(prefers-reduced-motion:reduce){#tn-v141-home-loader,#tn-v141-home-loader *{animation:none!important;transition:none!important}}

/* Never reopen the Angular spinner immediately after the one-time splash.
   Other routes and later reloads retain the original V141 lifecycle. */
html.tn141o-entry-complete .global-spinner{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* V141 HOME-ONCE R2 — artwork at 70% (desktop + mobile); shell and text remain legible. */
#tn-v141-home-loader .tn141o-brand{
 width:min(50.4vw,490px)!important;max-height:122px!important;
}
#tn-v141-home-loader .tn141o-vinyl-zone{
 width:min(82vw,860px)!important;height:clamp(154px,26.6vh,301px)!important;
 margin-top:clamp(8px,2.8vh,20px)!important;
}
#tn-v141-home-loader .tn141o-vinyl{width:min(57.4vw,378px)!important;max-height:100%!important}
#tn-v141-home-loader .tn141o-eq span{height:73px!important}
@media(max-width:700px){
 #tn-v141-home-loader .tn141o-brand{width:min(63vw,301px)!important;max-height:90px!important}
 #tn-v141-home-loader .tn141o-vinyl-zone{
   width:100%!important;height:clamp(154px,23.1dvh,238px)!important;
   margin-top:clamp(8px,2.8vh,20px)!important;
 }
 #tn-v141-home-loader .tn141o-vinyl{width:min(64.4vw,301px)!important;max-height:100%!important}
 #tn-v141-home-loader .tn141o-eq span{height:52px!important}
}
@media(max-height:690px){#tn-v141-home-loader .tn141o-vinyl-zone{height:clamp(130px,20.3vh,220px)!important}}
