.tmn-tipjar-wrap {
    background: linear-gradient(135deg, #1a003c 0%, #2b0c4e 30%, #1d0022 100%);
    border-radius: 18px;
    padding: 28px 18px;
    margin: 18px auto;
    /* Allow wider containers on mobile */
    max-width: 96vw;
    width: 100%;
    box-shadow: 0 0 48px 0 #9D00E444;
    position: relative;
    color: #FFD700;
    /* Animated border using pseudo-element for rainbow gradient effect */
    border: none;
    display: block;
    float: none !important;
    clear: both !important;
    left: 0 !important;
    right: 0 !important;
    text-align: center !important;
}

.tmn-tipjar-wrap::before {
    content: '';
    position: absolute;
    z-index: 2;
    top: -6px; left: -6px; right: -6px; bottom: -6px;
    border-radius: 24px;
    padding: 0;
    background: linear-gradient(270deg, #FFD700, #9D00E4, #24ffdb, #FFD700 90%);
    background-size: 600% 600%;
    box-shadow: 0 0 60px 12px #FFD70055, 0 0 34px 10px #9D00E499;
    pointer-events: none;
    animation: tipjar-container-rainbow 5s linear infinite, tipjar-border-glow 2s alternate infinite;
}

@keyframes tipjar-container-rainbow {
    0% { background-position:0% 50%; }
    50% { background-position:100% 50%; }
    100% { background-position:0% 50%; }
}
@keyframes tipjar-border-glow {
    0%   { box-shadow: 0 0 48px 6px #FFD70055, 0 0 32px 10px #24ffdb66; }
    100% { box-shadow: 0 0 60px 16px #f44efc77, 0 0 44px 12px #9D00E4aa; }
}

/* To keep content above the pseudo-element border */
.tmn-tipjar-wrap > * {
    position: relative;
    z-index: 3;
}

/* Rainbow/animated text header, never cut off */
.tmn-tj-title {
    text-align: center;
    font-size: 1.8em;
    margin-bottom: 0.4em;
    font-family: 'Orbitron', 'Segoe UI', monospace;
    letter-spacing: 0.03em;
    background: linear-gradient(90deg, #FFD700, #24ffdb, #f44efc, #9D00E4, #FFD700 70%);
    background-size: 200% 100%;
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: rainbow-text 4s linear infinite, glow-pulse 1.5s alternate infinite;
    text-shadow: 0 0 12px #fff7, 0 0 18px #FFD70066;
    white-space: normal !important;
    overflow: visible !important;
    word-break: break-word;
    padding: 0 0.3em;
}

@keyframes rainbow-text {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}
@keyframes glow-pulse {
    0%   { text-shadow: 0 0 12px #fff7, 0 0 18px #FFD70066; }
    100% { text-shadow: 0 0 22px #f44efcaa, 0 0 30px #24ffdb77; }
}

/* Make description black & bold */
.tmn-tj-desc {
    text-align: center;
    color: #000 !important;
    font-size: 1.06em;
    font-weight: bold;
    margin-bottom: 16px;
}

.tmn-tj-qr {
    text-align: center;
    margin: 18px 0 10px 0;
}
.tmn-tj-qr-img {
    border-radius: 13px;
    border: 3px solid #FFD700;
    box-shadow: 0 0 28px 4px #9D00E499;
    transition: box-shadow 0.5s;
}
.tmn-tj-qr-img:hover {
    box-shadow: 0 0 52px 14px #FFD70099, 0 0 22px 7px #9D00E4CC;
}

.tmn-tj-laddr {
    text-align: center;
    color: #FFD700;
    font-size: 1.14em;
    margin-top: 10px;
}

/* Lightning Address label: bold, bright green */
.tmn-tj-addr-label {
    color: #49ED49 !important;
    font-weight: bold !important;
}

.tmn-tj-copy-btn {
    display: inline-block;
    margin-left: 12px;
    background: linear-gradient(90deg, #FFD700 30%, #9D00E4 100%);
    border: none;
    border-radius: 7px;
    color: #fff;
    font-weight: bold;
    padding: 6px 18px;
    cursor: pointer;
    font-size: 1em;
    box-shadow: 0 0 12px 2px #FFD70088;
    transition: background 0.2s, box-shadow 0.3s, transform 0.13s;
}
.tmn-tj-copy-btn:hover {
    background: linear-gradient(90deg, #9D00E4 30%, #FFD700 100%);
    box-shadow: 0 0 24px 6px #FFD700cc, 0 0 24px 6px #9D00E4bb;
    transform: scale(1.05);
}

.tmn-tj-tip-btn {
    display: block;
    margin: 28px auto 0;
    font-size: 1.16em;
    padding: 12px 42px;
    border-radius: 10px;
    font-family: 'Orbitron', 'Segoe UI', monospace;
    font-weight: bold;
    box-shadow: 0 0 24px 7px #FFD70044;
    cursor: pointer;
    border: none;
    background: linear-gradient(90deg, #FFD700 40%, #9D00E4 100%);
    color: #222;
    text-shadow: 0 2px 10px #fff5;
    animation: tipjar-btn-flash 2s linear infinite;
    transition: background 0.18s, box-shadow 0.23s, transform 0.13s;
}
.tmn-tj-tip-btn.gold { background: linear-gradient(90deg, #FFD700 40%, #FFF94E 100%); color:#9D00E4;}
.tmn-tj-tip-btn.violet { background: linear-gradient(90deg, #9D00E4 40%, #FFD700 100%); color:#fff;}
.tmn-tj-tip-btn.rainbow { background: linear-gradient(270deg, #FFD700, #9D00E4, #24ffdb, #FFD700); background-size: 800% 800%; animation: tipjar-btn-rainbow 4s linear infinite;}
.tmn-tj-tip-btn:hover {
    background: linear-gradient(90deg, #24ffdb 30%, #f44efc 100%);
    box-shadow: 0 0 48px 10px #9D00E499;
    color: #FFD700;
    transform: scale(1.07);
}
@keyframes tipjar-btn-flash {
    0%,100%{box-shadow:0 0 22px 6px #FFD70088;}
    50%{box-shadow:0 0 32px 16px #9D00E4BB;}
}
@keyframes tipjar-btn-rainbow {
    0% {background-position:0% 50%;}
    50% {background-position:100% 50%;}
    100% {background-position:0% 50%;}
}

/* Responsive fix for Tip Jar title */
@media (max-width: 600px) {
  .tmn-tj-title {
    font-size: 1.1em !important;
    padding: 0 2vw;
  }
  .tmn-tipjar-wrap {
    max-width: 99vw;
    padding: 18px 6px;
  }
}
@media (max-width: 900px) {
  .tmn-tj-title {
    font-size: 1.3em;
    padding: 0 4vw;
  }
  .tmn-tipjar-wrap {
    max-width: 99vw;
    padding: 24px 12px;
  }
}

/* Fix for inner container (the one with yellow border) */
.tmn-tipjar-inner, .tmn-tipjar-content, .tmn-tipjar-box {
  box-sizing: border-box;
  max-width: 100%;
  width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* If your yellow border uses .tmn-tipjar-inner or a similar class, adjust as above */

@media (max-width: 600px) {
  .tmn-tipjar-wrap,
  .tmn-tipjar-inner,
  .tmn-tipjar-content,
  .tmn-tipjar-box {
    max-width: 100vw !important;
    width: 100vw !important;
    box-sizing: border-box;
    padding: 2vw !important;
  }
  .tmn-tj-title {
    font-size: 1em !important;
    word-break: break-word !important;
  }
}

/* 1. Description text — black & bold */
.tmn-tipjar-wrap .tmn-tj-desc {
  color: #000 !important;
  font-weight: bold !important;
}

/* 2. “Lightning Address:” label — bright green & bold */
.tmn-tipjar-wrap .tmn-tj-laddr .tmn-tj-addr-label {
  color: #49ED49 !important;
  font-weight: bold !important;
}


