.crown-glory-row{background:transparent!important}.crown-glory-row>td{padding:8px 0!important;border:0!important}
.glory-banner{position:relative;isolation:isolate;display:flex;align-items:center;gap:24px;min-height:164px;padding:18px 28px;overflow:hidden;border:2px solid #f2d18b;border-radius:14px;background:radial-gradient(ellipse at 24% 65%,#9d6b2738,transparent 45%),linear-gradient(110deg,#151715ee,#091423d9,#57412238);box-shadow:inset 0 0 0 4px #b38a4433,inset 0 0 24px #efb94c30,0 0 20px #ffc55850;animation:glory-breathe 3.5s ease-in-out infinite}
.glory-banner:before,.glory-banner:after{content:'✦';position:absolute;color:#ffdc88;font-size:32px;text-shadow:0 0 14px #ffbd4d;top:calc(50% - 20px);left:0}.glory-banner:after{left:auto;right:0}
.glory-rank{display:grid;place-items:center;flex:none;width:72px;height:72px;border:3px double #e3b563;border-radius:50%;color:#fff3cd;font:32px Georgia,serif;background:radial-gradient(circle,#7d541f80,#101319);box-shadow:0 0 20px #ffc54d55}
.glory-crown{width:180px;height:135px;flex:none;background:url('/assets/crown-glory-art.png') -230px -134px / 1207px auto no-repeat;filter:drop-shadow(0 0 14px #e8b74f66);animation:glory-crown 3.2s ease-in-out infinite;mask-image:radial-gradient(ellipse,black 52%,transparent 74%)}
.glory-copy{flex:1;min-width:0}.crown-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:10px;font:400 clamp(18px,1.65vw,30px) Georgia,serif;letter-spacing:.13em;color:#ffe3a0;text-shadow:0 0 10px #e1b95b80}.crown-heading small{font:500 11px Arial;letter-spacing:.16em;padding:8px 10px;border:1px solid #b68a4e88;border-radius:3px;background:#08101988;color:#edd29b}
.glory-name{display:flex;align-items:center;flex-wrap:wrap;gap:20px;font:clamp(26px,3vw,48px) Georgia,serif;color:#fff1cc;text-shadow:0 0 12px #e6bd7370}.glory-name .lb-member-badge{font:12px Arial;letter-spacing:.12em}.glory-total{flex:none;color:#ffe3a0;font:48px Georgia,serif;text-shadow:0 0 14px #e1b95b60}.glory-total small{font:14px Arial}
.glory-effects{position:absolute;inset:0;pointer-events:none;z-index:2}.glory-sweep{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#fff1ba08 43%,#fff4be88 49%,#ffffffb0 50%,#ffe49a30 54%,transparent 65%);transform:translateX(-120%);animation:glory-shine 5s ease-in-out infinite;mix-blend-mode:screen}.glory-runner{position:absolute;width:9%;height:3px;background:linear-gradient(90deg,transparent,#ffd77f,#fff9db,transparent);box-shadow:0 0 14px 4px #ffbd4d;animation:glory-orbit 6s linear infinite}
.glory-particle{position:absolute;left:var(--x);top:80%;width:3px;height:3px;border-radius:50%;background:#fff0b5;box-shadow:0 0 6px 2px #ffc756;animation:glory-float var(--d) linear infinite;animation-delay:var(--delay)}.glory-spark{position:absolute;width:24px;height:24px;background:radial-gradient(ellipse,#fff 0%,#ffdc8a 12%,transparent 65%);animation:glory-twinkle 2.8s ease-in-out infinite}.glory-spark:before,.glory-spark:after{content:'';position:absolute;background:linear-gradient(transparent,#fff2c9,transparent);inset:0 47%}.glory-spark:after{transform:rotate(90deg)}.s1{left:15%;top:0}.s2{left:67%;bottom:0;animation-delay:-1s}.s3{right:3%;top:0;animation-delay:-2s}
@keyframes glory-shine{0%,12%{transform:translateX(-120%)}65%,100%{transform:translateX(120%)}}@keyframes glory-breathe{50%{box-shadow:0 0 40px #ffc55888,inset 0 0 30px #ffc55833}}@keyframes glory-crown{50%{filter:drop-shadow(0 0 24px #ffc347aa);transform:translateY(-4px)}}@keyframes glory-float{0%{opacity:0;transform:translate(0,20px)}20%{opacity:.8}80%{opacity:.5}100%{opacity:0;transform:translate(25px,-130px)}}@keyframes glory-twinkle{0%,100%{opacity:.15;transform:scale(.5)}50%{opacity:1;transform:scale(1.3)}}@keyframes glory-orbit{0%{left:0;top:0}43%{left:91%;top:0}50%{left:91%;top:100%}93%{left:0;top:100%}100%{left:0;top:0}}
@media(max-width:700px){.glory-banner{gap:12px;padding:18px 14px;min-height:150px}.glory-rank{width:44px;height:44px;font-size:22px}.glory-crown{width:100px;height:110px;background-size:905px auto;background-position:-184px -97px}.crown-heading{font-size:17px;letter-spacing:.08em}.glory-name{font-size:28px;gap:8px}.glory-total{font-size:30px}.glory-total small{display:block;font-size:11px}}

/* Compact banner: approximately 90px high on desktop. */
.glory-banner{min-height:90px;padding:9px 20px;gap:18px;border-radius:10px}
.glory-rank{width:48px;height:48px;font-size:24px}
.glory-crown{width:110px;height:72px;background-size:754px auto;background-position:-143px -84px}
.crown-heading{font-size:clamp(15px,1.35vw,22px);gap:10px;margin-bottom:5px;letter-spacing:.11em}
.crown-heading small{font-size:9px;padding:5px 7px}
.glory-name{font-size:clamp(23px,2.35vw,34px);gap:14px}
.glory-total{font-size:36px}.glory-total small{font-size:12px}
@media(max-width:700px){.glory-banner{min-height:100px;padding:10px 12px;gap:9px}.glory-rank{width:36px;height:36px;font-size:19px}.glory-crown{width:72px;height:64px;background-size:543px auto;background-position:-103px -58px}.crown-heading{font-size:14px;gap:5px;letter-spacing:.06em}.glory-name{font-size:24px;gap:6px}.glory-total{font-size:26px}.glory-total small{font-size:10px}}
/* Explicit moving Crown effect requested by owner. */
.glory-banner{animation:glory-breathe 2.6s ease-in-out infinite!important}
.glory-crown{animation:glory-crown-live 2.8s ease-in-out infinite!important}
.glory-runner{animation:glory-orbit 3.5s linear infinite!important}
.glory-sweep{animation:glory-shine-live 3s linear infinite!important}
.glory-particle{animation:glory-float-live var(--d,4s) linear infinite!important;animation-delay:var(--delay,0s)!important}
.glory-spark{animation:glory-twinkle 1.8s ease-in-out infinite!important}
.glory-banner,.glory-crown,.glory-effects *{animation-play-state:running!important}
@keyframes glory-crown-live{0%,100%{transform:translateY(2px);filter:drop-shadow(0 0 8px #e8b74f66)}50%{transform:translateY(-5px);filter:drop-shadow(0 0 22px #ffc347cc)}}
@keyframes glory-shine-live{from{transform:translateX(-110%)}to{transform:translateX(110%)}}
@keyframes glory-float-live{0%{opacity:0;transform:translate(0,15px)}15%{opacity:1}75%{opacity:.8}100%{opacity:0;transform:translate(32px,-100px)}}
