.cc-art{position:absolute;inset:0;pointer-events:none;border-radius:inherit;contain:layout style;display:block;--cc-duration:8s;--cc-ease:ease-in-out;--cc-direction:alternate}
.cc-layers,.cc-layer{position:absolute;inset:0;border-radius:inherit;display:block;pointer-events:none}.cc-layers{overflow:clip;container-type:size}.cc-layer img{width:100%;height:100%;object-fit:cover}.cc-host{position:relative;isolation:isolate}.cc-host>.cc-art{z-index:-1}.cc-host>.cc-art:after{content:'';position:absolute;inset:0;background:#11151ebb;border-radius:inherit}.cc-avatar-layer{position:absolute;inset:-14%;pointer-events:none;z-index:3;display:block}.cc-frame .cc-layers{mask-image:radial-gradient(transparent 53%,#000 56%,#000 68%,transparent 71%);border-radius:50%}.cc-frame-edge{position:absolute;inset:11%;border:1px solid var(--cc-a);border-radius:inherit;box-shadow:0 0 var(--cc-glow) color-mix(in srgb,var(--cc-b),transparent 40%)}.cc-frame{border-radius:50%}.cc-shape-rounded{border-radius:24%}.cc-shape-square{border-radius:8%}.cc-shape-hexagon .cc-frame-edge{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.cc-shape-octagon .cc-frame-edge{clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%)}.cc-shape-shield .cc-frame-edge{border-radius:25% 25% 50% 50%}.cc-shape-future .cc-frame-edge{border-radius:4% 35%}.cc-badge{inset:65% -8% -8% 65%;border:2px solid var(--cc-a);border-radius:30%;box-shadow:0 0 var(--cc-glow) var(--cc-b)}
.cc-kind-lighting{background:radial-gradient(ellipse at 80% 10%,var(--cc-a),transparent 65%);opacity:.3}.cc-kind-effect{background:radial-gradient(ellipse at 50% 80%,var(--cc-b),transparent 68%);opacity:calc(.16 + var(--cc-intensity)*.35)}.cc-effect-sweep,.cc-effect-shimmer,.cc-effect-glass{background:linear-gradient(110deg,transparent 30%,#fff8 49%,transparent 60%)}.cc-effect-neon,.cc-effect-rim{box-shadow:inset 0 0 0 2px var(--cc-a),inset 0 0 12px var(--cc-b)}.cc-effect-holographic,.cc-effect-chromatic{background:conic-gradient(var(--cc-a),var(--cc-b),var(--cc-c),var(--cc-a))}.cc-effect-aurora,.cc-effect-energy-waves{background:repeating-linear-gradient(115deg,transparent 0 14%,var(--cc-a) 22%,transparent 30%)}.cc-effect-flame,.cc-effect-embers{background:radial-gradient(ellipse at 50% 140%,var(--cc-c),var(--cc-a) 35%,transparent 65%)}.cc-effect-ice,.cc-effect-electricity{background:repeating-conic-gradient(from 30deg,transparent 0 14deg,var(--cc-a) 15deg 17deg,transparent 18deg 45deg)}.cc-effect-plasma,.cc-effect-liquid,.cc-effect-distortion{background:repeating-radial-gradient(ellipse at 10% 20%,transparent 0 13%,var(--cc-b) 18%,transparent 24%)}.cc-effect-scanlines,.cc-effect-glitch,.cc-effect-digital-rain{background:repeating-linear-gradient(0deg,transparent 0 6px,var(--cc-a) 7px 8px)}.cc-effect-cosmic,.cc-effect-nebula,.cc-effect-smoke,.cc-effect-fog{background:radial-gradient(ellipse at 15% 80%,var(--cc-a),transparent 50%),radial-gradient(ellipse at 85% 30%,var(--cc-b),transparent 50%)}.cc-effect-stars,.cc-effect-snow,.cc-effect-petals,.cc-effect-sparks,.cc-effect-bubbles{background:radial-gradient(circle,var(--cc-a) 1px,transparent 3px) 0 0/23px 29px}.cc-effect-ripple,.cc-effect-pulse{background:radial-gradient(circle,transparent 35%,var(--cc-b) 37%,transparent 40% 60%,var(--cc-a) 62%,transparent 65%)}
.cc-particle{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);background:var(--cc-particle-color,var(--cc-a));border-radius:50%;animation:cc-particle var(--cc-duration) var(--cc-ease,ease-in-out) infinite var(--cc-direction,alternate);opacity:.8}.cc-particle-stars{clip-path:polygon(50% 0,61% 35%,100% 50%,61% 65%,50% 100%,39% 65%,0 50%,39% 35%);border-radius:0}.cc-particle-rain,.cc-particle-sparks{height:calc(var(--size)*2.5);width:2px}.cc-particle-petals{border-radius:80% 10% 80% 10%;background:var(--cc-particle-color,var(--cc-c))}.cc-particle-bubbles{background:transparent;border:1px solid var(--cc-a)}.cc-particle-geometry,.cc-particle-digital{border-radius:1px;transform:rotate(45deg)}.cc-particle-energy{box-shadow:0 0 5px var(--cc-b)}
.cc-motion-float,.cc-motion-drift,.cc-motion-parallax,.cc-motion-wave{animation:cc-drift var(--cc-duration) var(--cc-ease) infinite var(--cc-direction)}.cc-motion-pulse,.cc-motion-breathe{animation:cc-breathe var(--cc-duration) var(--cc-ease) infinite var(--cc-direction)}.cc-motion-shimmer,.cc-motion-sweep,.cc-motion-flow{animation:cc-flow var(--cc-duration) var(--cc-ease) infinite var(--cc-direction)}.cc-motion-orbit,.cc-motion-rotation{animation:cc-rotate var(--cc-duration) linear infinite var(--cc-direction)}.cc-motion-zoom,.cc-motion-ripple,.cc-motion-morph{animation:cc-zoom var(--cc-duration) var(--cc-ease) infinite var(--cc-direction)}
.cc-name{background-image:var(--cc-name-gradient);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent!important;text-shadow:0 0 var(--cc-name-glow) color-mix(in srgb,var(--cc-name-color),transparent 60%);-webkit-text-stroke:calc(var(--cc-outline)*.15) var(--cc-name-color)}.cc-name-animated{animation:cc-name var(--cc-duration,8s) var(--cc-ease,linear) infinite var(--cc-direction,normal)}.cc-interaction-profile-open,.cc-interaction-server-enter{animation:cc-arrive .4s ease-out both}:hover>.cc-art.cc-interaction-hover>.cc-layers>.cc-scene,:focus-visible>.cc-art.cc-interaction-selection>.cc-layers>.cc-scene{transform:scale(1.06);transition:transform .2s}.cc-interaction-cursor>.cc-layers>.cc-scene{transform:translate(var(--cc-pointer-x,0),var(--cc-pointer-y,0));transition:transform .15s}
.cc-preview{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:210px;padding:30px 24px;border-radius:20px;background:#11151e;color:#fff;overflow-wrap:anywhere}.cc-preview>.cc-art{z-index:-1}.cc-preview>.cc-art:after{content:'';position:absolute;inset:0;border-radius:inherit;background:#11151e88}.cc-preview-avatar{width:76px;height:76px;position:relative;flex:none;margin:12px}.cc-preview-avatar>img{width:100%;height:100%;object-fit:cover;border-radius:50%}.cc-preview-avatar>.cc-art{inset:-16%}.cc-preview-name{font-size:20px;line-height:1.6;max-width:100%}.cc-preview small{color:#c8cbdc;text-align:center;line-height:1.5}.cc-context-chat,.cc-context-server{flex-direction:row;flex-wrap:wrap;min-height:130px}.cc-context-thumbnail{min-height:160px;padding:16px;gap:8px}.cc-context-thumbnail .cc-preview-avatar{width:44px;height:44px}.cc-context-light{background:#eef1f7;color:#171b28}.cc-context-light small{color:#44485a}.cc-context-light .cc-name{background-image:none;color:#202539!important;text-shadow:0 0 var(--cc-name-glow) var(--cc-name-color)}
@keyframes cc-drift{0%,100%{transform:translate(calc(-2% * var(--cc-amplitude,.5)),calc(-2% * var(--cc-amplitude,.5))) scale(1.04)}50%{transform:translate(calc(2% * var(--cc-amplitude,.5)),calc(2% * var(--cc-amplitude,.5))) scale(1.04)}}@keyframes cc-breathe{0%,100%{opacity:calc(1 - var(--cc-amplitude,.5)*.5);transform:scale(1)}50%{opacity:1;transform:scale(calc(1 + var(--cc-amplitude,.5)*.05))}}@keyframes cc-flow{0%,100%{transform:translateX(calc(-4% * var(--cc-amplitude,.5))) scale(1.06)}50%{transform:translateX(calc(4% * var(--cc-amplitude,.5))) scale(1.06)}}@keyframes cc-rotate{to{transform:rotate(360deg)}}@keyframes cc-zoom{0%,100%{transform:scale(1)}50%{transform:scale(calc(1 + var(--cc-amplitude,.5)*.18))}}@keyframes cc-name{0%,100%{background-position:0% 0}50%{background-position:var(--cc-name-travel,220%) 0}}@keyframes cc-particle{0%,100%{transform:translate(0,0) rotate(0);opacity:var(--cc-particle-opacity,.8)}50%{transform:translate(calc(var(--cc-travel-x,0px) * var(--spread)),calc(var(--cc-travel-y,-20px) * var(--spread))) rotate(25deg);opacity:.3}}@keyframes cc-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cc-art *,.cc-art,.cc-name{animation:none!important;transition:none!important}}

.guild-shop-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.guild-shop-body>.guild-shop-grid{overflow:visible;margin-bottom:18px}.guild-shop-body .guild-creator-shop{min-width:0}.guild-creator-shop>header{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:8px 5px}.guild-creator-shop>header h3{margin:0;flex:1}.guild-creator-shop>header input{max-width:340px;flex:1;min-width:min(100%,180px)}.guild-creator-shop>.guild-shop-grid{overflow:visible}.guild-shop-dialog:has(.guild-shop-body){height:fit-content;max-height:calc(100dvh - 48px);grid-template-rows:auto auto minmax(0,1fr)}.guild-shop-body>[hidden]{display:none!important}

.cc-art.cc-surface{overflow:clip}.guild-member-pages{display:flex;gap:6px;align-items:center;justify-content:space-between;padding:8px 0}.guild-member-pages[hidden]{display:none}.guild-member-pages button{padding:7px 10px;font-size:11px}
.cc-motion-layer{position:absolute;inset:0;border-radius:inherit;pointer-events:none}.cc-context-friends,.cc-context-sidebar{flex-direction:row;flex-wrap:wrap;min-height:130px}.cc-context-sidebar .cc-preview-avatar{width:48px;height:48px}.cc-material-metal .cc-kind-base,.cc-material-gold .cc-kind-base{background-image:linear-gradient(110deg,var(--cc-a),#485062 30%,#fff 47%,var(--cc-b) 53%,#3b4155)!important}.cc-material-crystal .cc-kind-base,.cc-material-ice .cc-kind-base{background-image:conic-gradient(from 30deg at 30% 70%,var(--cc-a),#fff,var(--cc-b),#546c87,var(--cc-a))!important}.cc-material-fire .cc-kind-base{background-image:radial-gradient(ellipse at 50% 120%,var(--cc-c),var(--cc-a) 40%,#3b1928 80%)!important}.cc-material-energy .cc-kind-base,.cc-material-cyber .cc-kind-base{background-image:repeating-linear-gradient(120deg,#121b2c 0 20%,var(--cc-a) 23%,#192133 26% 45%,var(--cc-b) 48%)!important}.cc-material-galaxy .cc-kind-base,.cc-material-void .cc-kind-base{background-image:radial-gradient(ellipse at 10% 80%,var(--cc-a),transparent 65%),radial-gradient(ellipse at 80% 10%,var(--cc-b),#0b1020 75%)!important}.cc-material-nature .cc-kind-base{background-image:repeating-radial-gradient(ellipse at 20% 90%,var(--cc-a),var(--cc-b) 18%,#223c36 25%)!important}.cc-material-royal .cc-kind-base{background-image:conic-gradient(from 45deg,var(--cc-a),#17192b,var(--cc-b),#25243c,var(--cc-a))!important}.cc-material-holographic .cc-kind-base{background-image:conic-gradient(var(--cc-a),#fff,var(--cc-b),var(--cc-c),var(--cc-a))!important}

.shop-detached-preview{width:min(420px,calc(100vw - 32px))}.shop-detached-preview .speaker-tile{min-height:240px}.shop-detached-preview h2{font-size:18px}.shop-detached-preview>button{margin-top:16px;width:100%}

/* The small ring has room for its shadow; the avatar remains untouched. */
.cc-art.cc-frame{filter:drop-shadow(0 0 calc(var(--cc-glow,0px)*.35) var(--cc-a));overflow:visible}

/* The mask stays still; motion happens inside an overscanned painting plane.
   Only rotation needs a diagonal-sized square. Container units avoid per-frame JS. */
.cc-scene{position:absolute;inset:-12%;pointer-events:none}
.cc-layers.cc-rotating>.cc-scene{inset:auto;left:50%;top:50%;width:calc(hypot(100cqw,100cqh)*1.24);height:calc(hypot(100cqw,100cqh)*1.24);translate:-50% -50%}
.cc-layer.cc-angled{inset:auto;left:50%;top:50%;width:calc(hypot(100cqw,100cqh)*1.5);height:calc(hypot(100cqw,100cqh)*1.5);translate:-50% -50%}
.cc-kind-particles{mask-image:linear-gradient(transparent,#000 8% 92%,transparent);}
.cc-host>.cc-art:after,.cc-preview>.cc-art:after{z-index:1}
.cc-name{overflow:visible;box-shadow:none!important;filter:none!important;background-color:transparent!important}

/* Authored transparent art has its own silhouette; do not apply the procedural ring mask. */
.cc-illustration>.cc-layers{mask-image:none;overflow:visible;border-radius:0}.cc-illustration .cc-scene{inset:0}.cc-illustration.cc-frame .cc-layer img,.cc-illustration.cc-badge .cc-layer img{object-fit:contain}
