/* DVZ Shoutbox */
#shoutbox {
 margin-bottom: 10px; border: solid 2px rgba(0,0,0,0.1);
}

#shoutbox .head {
    background: #3f988973;
    padding: 8px;
}

#shoutbox.front .head {
	cursor: pointer;
    border-radius: 5px 5px 0px 0px;
}

#shoutbox .head .right {
	color: black;
	float: right;
	margin: 0 -8px 0 0;
	
	font-size: 13px;
}


#shoutbox .head .right a {
 padding: 8px;
}

#shoutbox.collapsed .head {
 opacity: 0.6;
}

#shoutbox.collapsed .body {
 display: none;
}

#shoutbox .panel {
	border-top: solid 2px rgba(0,0,0,0.1);
}

#shoutbox input.text {
	background: #000000d1;
	width: 100%;
	color: white;
	margin: 0;
	padding: 15px 8px;
	box-sizing: border-box;
	border: none;
	box-shadow: inset 0 2px 4px rgba(0,0,0,0.08);
	font-family: Arial, sans-serif;
	font-size: 12px;
}

#shoutbox .minposts, #shoutbox .blocked {
 padding: 6px; font-size: 11px;
}

#shoutbox .panel.minposts {
 background: #FFFED8; color: #727250;
}

#shoutbox .panel.blocked {
 background: #FCEFEF; color: #543A3A;
}

#shoutbox .panel p {
 margin: 0;
}

#shoutbox .window {
	background: rgba(15, 15, 15, 0.95);;
	border-top: solid 2px rgba(0,0,0,0.1);
	overflow-y: scroll;
}

#shoutbox .data {
 display: table; width: 100%; border-top: solid 2px rgba(0,0,0,0.1); font-family: Arial, sans-serif; font-size: 12px;
}

#shoutbox.front .data {
 border-top: none;
}

#shoutbox .entry {
 display: table-row !important; width: 100%; transition: background-color 0.2s;
}

#shoutbox .entry:nth-child(even) {
 background-color: rgba(0,0,0,0.01);
}

#shoutbox .entry.new {
 background-color: rgba(255,255,100,0.1);
}

#shoutbox .entry:target {
 background-color: rgba(50,200,255,0.1);
}

#shoutbox .entry > div {
 border-bottom: dashed 1px rgba(0,0,0,0.05);
}

#shoutbox .entry:last-child > div {
 border-bottom: none;
}

#shoutbox .entry > div {
 display: table-cell; padding: 6px;
}

#shoutbox .avatar {
 height: 22px;
}

#shoutbox .avatar img {
 margin: 0 auto; vertical-align: middle; max-height: 20px; max-width: 20px; border: solid 1px rgba(255,255,255,0.1); box-shadow: 0 0 2px rgba(0,0,0,0.1); cursor: pointer;
}

#shoutbox .user {
 border-right: solid 1px rgba(0,0,0,0.05); text-align: center; white-space: nowrap;
}

#shoutbox .text {
	width: 100%;
	color: white;
	word-break: break-all;
	word-wrap: break-word;
}

#shoutbox .info {
 font-size: 11px; color: #AAA; white-space: nowrap; text-align: right;
}

#shoutbox .entry.unread .info:before {
 display: inline-block; margin-right: 10px; height: 4px; width: 4px; content: ''; background: rgba(255,100,0,0.8); border-radius: 10px; vertical-align: middle;
}

#shoutbox .info a {
 color: inherit;
}

#shoutbox .mod {
 padding: 6px 8px; font-size: 9px; font-weight: bold; color: #AAA; text-decoration: none;
}

#shoutbox .mod:nth-of-type(2) {
 margin-right: 5px; border-left: solid 1px rgba(0,0,0,0.1);
}

#shoutbox  .ip {
 margin-right: 10px; color: #CECECE;
}

.auto-expand {
    display: inline-block;
    max-width: 120px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 0.9em;
    color: #9aa0a6;
    transition: max-width 1s ease;
}

.auto-expand:hover {
    max-width: 100%;
    /*max-width: 600px;
    white-space: normal;
    overflow-wrap: break-word;*/
}

.trow2 {
    background: rgba(15, 15, 15, 0.95);
    color: #f1f1f1;
    border-top: 1px solid #2e2e2e;
    border-bottom: 1px solid #000;
    padding: 5px;
    text-shadow: 0px 1px 1px #000;
}


#content {
    /*background: #233f3c66;*/
	background: linear-gradient(180deg, #008f9540, #00000000);
    -moz-border-radius: 20px 20px 0px 0px;
    -webkit-border-radius: 20px 20px 0px 0px;
    border-radius: 20px 20px 0px 0px;
    border: 0px;
	box-shadow: #00000000 0px 1px 5px;
}

.avatarep_participants {
	border:0px !important;
	background: #27bd879e !important;
}

.shopbutton {
	float:right !important;
	display:flex; 
	align-items:center; gap:6px;
    color:#fff;
    font-weight:bold;
    border-radius:6px;
    box-shadow:0 2px 6px rgba(0,0,0,0.3);
    text-decoration:none;	
}

.shopbutton:hover {
	filter: brightness(1.3);
	box-shadow: 0 0px 10px rgb(43 145 136 / 98%)
}
.storebutton {
	background:linear-gradient(90deg, #00bfff75, #1e90ff75);
    transition: all 0.2s ease !important;
    border-radius:20px 0px 0px 20px;
	text-align:center;
	width:25px;
}
.rcshopbtn {
	background:linear-gradient(90deg, #ffcc0075, #ffaa0075);
    transition: all 0.2s ease !important;
    border-radius:0px;
	text-align:center;
	width:25px;
}

.csdlbutton {
	background:linear-gradient(90deg, #1cff0075, #00ffb875);
    transition: all 0.2s ease !important;
    border-radius:0px 20px 20px 0px;
	text-align:center;
	width:25px;
}
.storebutton:hover {
	background:linear-gradient(90deg, #00bfffd1, #1e90ffd1) !important;
    border-radius:20px 0px 0px 20px !important;
	width: 30px !important;
}
.rcshopbtn:hover {
	background:linear-gradient(90deg, #ffcc00d1, #ffaa00d1) !important;
    border-radius:0px !important;
	width: 30px !important;
}

.csdlbutton:hover {
	background:linear-gradient(90deg, #1cff00d1, #00ffb8d1) !important;
    border-radius:0px 20px 20px 0px !important;
	width: 30px !important;
}

.bmenu {
	background: linear-gradient(90deg, #008f9540, #00000000);
	border-radius: 20px 0px 0px 20px;
}

.bmenu ul li a:hover {
	box-shadow: 0 0px 10px rgb(43 145 136 / 98%);
    background: #0080809c;
    border-radius: 50px;
}

/*.post.classic .post_author {
	width:10% !important;	
}*/

.usermenu {
	border-radius: 50px 0px 0px 50px;
    background: linear-gradient(90deg, #00ffe71f, #1e90ff00);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0px;	
}

.usermenu li {
    display: flex;
    align-items: center;
    justify-content: center;	
}

.avatarusermenu {
	max-width: 60px;
    border-radius: 100px;
    margin-right: 15px;
}


.usermenu li a:link:hover
{
	text-shadow: rgb(0 255 205) 0px 0px 8px;	
}

.thead {
	border-radius: 10px 10px 0px 0px;	
}

.avatarep_img
{
	border:0px !important;
}
.avatarep_bg
{
	border:0px !important;
}

.avatarep_img_contributor {
	border:0px !important;	
}

#logo {
	text-align:center;
	background: radial-gradient(ellipse 65% 60% at center, #00ffe76b 0%, transparent 56%);
}

.scan {
    font-family: Consolas, monospace;
    color: #00ff88;
    position: relative;
}

.scan::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        transparent,
        rgba(255,255,255,.4),
        transparent
    );
    transform: translateX(-100%);
    animation: scan 3s linear infinite;
}

@keyframes scan {
    to { transform: translateX(100%); }
}

.glitch {
    position: relative;
    color: #fff;
    font-family: Consolas, monospace;
    font-weight: bold;
}

.glitch::before,
.glitch::after {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
}

.glitch::before {
    color: #00ffff;
    animation: glitch1 2s infinite;
}

.glitch::after {
    color: #ff00ff;
    animation: glitch2 2s infinite;
}

@keyframes glitch1 {
    0%,100% { transform: translate(0); }
    20% { transform: translate(-1px, 1px); }
    40% { transform: translate(1px, -1px); }
}

@keyframes glitch2 {
    0%,100% { transform: translate(0); }
    20% { transform: translate(1px, -1px); }
    40% { transform: translate(-1px, 1px); }
}

.hacktext {
    font-family: Consolas, monospace;
    color: #00ff88;
    text-shadow: 0 0 5px #00ff88;
    letter-spacing: 2px;
}

.owner {
    font-family: Consolas, monospace;
    font-weight: bold;
    color: #ff2a2a;
    text-shadow:
        0 0 5px rgba(255,0,0,0.9),
        0 0 15px rgba(255,60,0,0.8),
        0 0 30px rgba(255,120,0,0.6);
    animation: firePulse 1.5s infinite;
}

@keyframes firePulse {
    0%, 100% {
        text-shadow:
            0 0 5px rgba(255,0,0,0.9),
            0 0 15px rgba(255,60,0,0.8),
            0 0 30px rgba(255,120,0,0.6);
    }
    50% {
        text-shadow:
            0 0 10px rgba(255,0,0,1),
            0 0 25px rgba(255,120,0,1),
            0 0 45px rgba(255,200,0,0.8);
    }
}

.postbit_buttons > a:link, .postbit_buttons > a:hover, .postbit_buttons > a:visited, .postbit_buttons > a:active {
	background: #3f98899e !important;	
}
.postbit_buttons > a:hover {
	background: #3f9889 !important;	
}

.avatarep_participants_list {
	background: linear-gradient(90deg, #00ffe717, #1e90ff00);
    border-radius: 50px 0px 0px 50px;
    padding: 6px;
}

/* wrapper only controls hover area */
.usermenuwrapper {
    display: inline-block;
}

/* menu layout */
.usermenu {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* ONLY avatar visible initially */
.usermenu li:not(.avatar-item) {
    display: none;
}

/* show everything on hover */
.usermenuwrapper:hover .usermenu li {
    display: flex;
    align-items: center;
}

/* avatar styling */
.avatar-item {
    display: flex !important;
    padding: 0;
}

.avatarusermenu {
    width: 50px;
    height: 50px;
    display: block;
    object-fit: cover;
}

.tdlogo {
	width:70%; 
	min-width:600px;	
}

.avatarep_img, .avatarep_bg {
	float:right !important;	
}

.progress {
	max-width: 150px;	
	color: #417272;
}

.stats_button {
    color: #ffffff !important;
    background: #3f9889a3;
    border-radius: 5px;
    padding: 4px;
    font-weight: bold;
}

.stats_button:hover {
    background: #26cdb1;
}


.artist{
    font-weight:bold;
    background:linear-gradient(
        90deg,
        #ff3c3c,
        #ffcf33,
        #3cff8b,
        #33c8ff,
        #b833ff,
        #ff3c3c
    );
    background-size:400%;
    -webkit-background-clip:text;
    -webkit-text-fill-color:white;
    transition:.3s;
    animation:gradientMove 5s linear infinite;
}

.artist:hover{
    -webkit-text-fill-color:transparent;
    animation:gradientMove 3s linear infinite;
}

@keyframes gradientMove{
    from{background-position:0%;}
    to{background-position:400%;}
}

/* ===========================
   CONTENT CREATOR
   =========================== */

.content-creator{
    position:relative;
    display:inline-block;
    font-weight:900;
    letter-spacing:1.5px;
    text-transform:uppercase;
    text-decoration:none;
    cursor:pointer;

    background:linear-gradient(
        180deg,
        #ffffff 0%,
        #ffeaea 30%,
        #ff4a4a 70%,
        #b60000 100%
    );

    background-size:100%;
    -webkit-background-clip:text;
    -webkit-text-fill-color:#d96464c9;

    transition:
        transform .35s ease,
        filter .35s ease;

    overflow:visible;
}

/* Shine */

.content-creator::before{
    content:"";
    position:absolute;

    top:0;
    left:10%;

    width:70%;
    height:100%;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.15),
        transparent
    );

    transform:skewX(-20deg);

    pointer-events:none;
}

.content-creator:hover::before{
    animation:creatorShine 1.3s ease;
}

/* Glow */

.content-creator:hover{

    transform:
        translateY(-2px)
        scale(1.04);

    filter:
        drop-shadow(0 0 5px rgba(255,40,40,.6))
        drop-shadow(0 0 14px rgba(255,40,40,.35));

}

/* -----------------------------
   Floating Buttons
------------------------------ */

.content-creator .play{

    position:absolute;

    width:14px;
    height:10px;

    background:#ff0000;

    border-radius:4px;

    opacity:0;

    pointer-events:none;

    box-shadow:
        0 0 6px rgba(255,0,0,.45);

}

.content-creator .play:after{

    content:"";

    position:absolute;

    left:5px;
    top:2px;

    border-left:4px solid #fff;
    border-top:3px solid transparent;
    border-bottom:3px solid transparent;

}

/* Positions */

.content-creator .p1{

    left:50%;
    top:-18px;

}

.content-creator .p2{

    right:-20px;
    top:50%;

}

.content-creator .p3{

    left:50%;
    bottom:-18px;

}

.content-creator .p4{

    left:-20px;
    top:50%;

}

/* Hover */

.content-creator:hover .p1{

    animation:orbitTop 2s infinite ease-in-out;
}

.content-creator:hover .p2{

    animation:orbitRight 2s infinite ease-in-out;
}

.content-creator:hover .p3{

    animation:orbitBottom 2s infinite ease-in-out;
}

.content-creator:hover .p4{

    animation:orbitLeft 2s infinite ease-in-out;
}

/* -----------------------------
   Animations
------------------------------ */

@keyframes creatorShine{

    from{
        left:-150%;
    }

    to{
        left:180%;
    }

}

@keyframes orbitTop{

    0%{
        opacity:0;
        transform:translate(0,0) scale(.5) rotate(0deg);
    }

    20%{
        opacity:1;
    }

    50%{
        transform:translate(10px,-6px) scale(1.15) rotate(15deg);
    }

    100%{
        opacity:0;
        transform:translate(18px,0) scale(.6) rotate(40deg);
    }

}

@keyframes orbitRight{

    0%{
        opacity:0;
        transform:translate(0,0) scale(.5);
    }

    20%{
        opacity:1;
    }

    50%{
        transform:translate(6px,8px) scale(1.15) rotate(-15deg);
    }

    100%{
        opacity:0;
        transform:translate(0,18px) scale(.6) rotate(-40deg);
    }

}

@keyframes orbitBottom{

    0%{
        opacity:0;
        transform:translate(0,0) scale(.5);
    }

    20%{
        opacity:1;
    }

    50%{
        transform:translate(-10px,6px) scale(1.15) rotate(15deg);
    }

    100%{
        opacity:0;
        transform:translate(-18px,0) scale(.6) rotate(40deg);
    }

}

@keyframes orbitLeft{

    0%{
        opacity:0;
        transform:translate(0,0) scale(.5);
    }

    20%{
        opacity:1;
    }

    50%{
        transform:translate(-6px,-8px) scale(1.15) rotate(-15deg);
    }

    100%{
        opacity:0;
        transform:translate(0,-18px) scale(.6) rotate(-40deg);
    }

}


/* ===========================
   ARTIST
   =========================== */

.artist{
    position:relative;
    display:inline-block;
    font-weight:900;
    letter-spacing:1.5px;
    text-transform:uppercase;
    text-decoration:none;
    cursor:pointer;

    background:linear-gradient(
        90deg,
        #ff4d4d,
        #ff9f43,
        #ffe66d,
        #4cd964,
        #45b7ff,
        #8e5cff,
        #ff4da6,
        #ff4d4d
    );

    background-size:400%;

    -webkit-background-clip:text;
    -webkit-text-fill-color:#9955c58f;

    animation:artistGradient 6s linear infinite;

    transition:
        transform .35s,
        filter .35s;
}

.artist:hover{

    transform:
        translateY(-2px)
        scale(1.05);

    filter:
        drop-shadow(0 0 6px rgba(255,255,255,.35))
        drop-shadow(0 0 14px rgba(255,120,255,.45));

}


/* Paint Drops */

.artist .paint{

    position:absolute;

    width:8px;
    height:8px;

    border-radius:50%;

    opacity:0;

    pointer-events:none;

}

.artist .paint:nth-child(1){

    background:#ff4d4d;
    left:50%;
    top:-16px;

}

.artist .paint:nth-child(2){

    background:#45b7ff;
    right:-16px;
    top:50%;

}

.artist .paint:nth-child(3){

    background:#4cd964;
    left:50%;
    bottom:-16px;

}

.artist .paint:nth-child(4){

    background:#ff4da6;
    left:-16px;
    top:50%;

}

.artist:hover .paint:nth-child(1){
    animation:paint1 2s infinite ease-in-out;
}

.artist:hover .paint:nth-child(2){
    animation:paint2 2s infinite ease-in-out;
}

.artist:hover .paint:nth-child(3){
    animation:paint3 2s infinite ease-in-out;
}

.artist:hover .paint:nth-child(4){
    animation:paint4 2s infinite ease-in-out;
}

/* Sparkles */

.artist::after{

    content:"✦";

    position:absolute;

    right:-10px;
    top:-8px;

    color:white !important;

    font-size:12px;

    opacity:0;

}

.artist:hover::after{

    animation:sparkle 1.4s infinite;

}

/* Animations */

@keyframes artistGradient{

    from{background-position:0%;}

    to{background-position:400%;}

}

@keyframes artistShine{

    from{left:-150%;}

    to{left:180%;}

}

@keyframes sparkle{

0%,100%{
opacity:0;
transform:scale(.5) rotate(0deg);
}

50%{
opacity:1;
transform:scale(1.4) rotate(180deg);
}

}

@keyframes paint1{
0%{opacity:0;transform:translate(0,0) scale(.5);}
20%{opacity:1;}
50%{transform:translate(8px,-6px) scale(1.3);}
100%{opacity:0;transform:translate(16px,0) scale(.6);}
}

@keyframes paint2{
0%{opacity:0;transform:translate(0,0) scale(.5);}
20%{opacity:1;}
50%{transform:translate(6px,8px) scale(1.3);}
100%{opacity:0;transform:translate(0,16px) scale(.6);}
}

@keyframes paint3{
0%{opacity:0;transform:translate(0,0) scale(.5);}
20%{opacity:1;}
50%{transform:translate(-8px,6px) scale(1.3);}
100%{opacity:0;transform:translate(-16px,0) scale(.6);}
}

@keyframes paint4{
0%{opacity:0;transform:translate(0,0) scale(.5);}
20%{opacity:1;}
50%{transform:translate(-6px,-8px) scale(1.3);}
100%{opacity:0;transform:translate(0,-16px) scale(.6);}
}