/* Creator bonus */
.bonus-menu .tt-promo { grid-template-columns:40px minmax(0,1fr) auto; border-color:#35c8ce; box-shadow:inset 0 0 22px #35c8ce12; }
.bonus-menu .tt-promo > .bonus-telegram { grid-column:1; grid-row:1; }
.bonus-menu .tt-promo > .bonus-title { grid-column:2; grid-row:1; }
.bonus-menu .tt-promo > .bonus-hero-reward { grid-column:3; grid-row:1; }
.bonus-menu .tt-promo .tt-icon { background:#080c11; border-radius:12px; }
.bonus-menu .tt-promo .tt-icon img { display:block; width:28px; height:32px; object-fit:contain; }
.bonus-menu .tt-promo .bonus-title { font-size:20px; }
.bonus-menu .tt-promo .bonus-hero-reward { padding:7px 9px; border:1px solid #5cdcd14d; border-radius:999px; color:#b9fff1; background:linear-gradient(135deg,#123d42,#172f3a); box-shadow:inset 0 1px #ffffff0a; text-shadow:none; }
.tt-page { display:grid; gap:14px; padding:4px 16px 24px; }
.tt-intro { padding:8px 4px 0; }
.tt-eyebrow { color:#38d4d2; font-size:10px; font-weight:800; letter-spacing:1.3px; }
.tt-intro h2 { margin:10px 0 8px; font-size:25px; line-height:1.2; }
.tt-intro p,.tt-note { color:var(--muted); font-size:12px; line-height:1.6; }
.tt-panel { min-width:0; padding:16px; border:1px solid var(--field-border); border-radius:20px; background:var(--panel-bottom); }
.tt-panel h3 { margin:0 0 15px; font-size:17px; line-height:1.3; }
.tt-table-wrap { min-width:0; }
.tt-rates { width:100%; border-collapse:collapse; table-layout:fixed; }
.tt-rates caption { text-align:left; color:var(--muted); font-size:10px; margin-bottom:10px; }
.tt-rates th { color:var(--muted); font-size:9px; font-weight:800; text-align:center; padding:8px 0; }
.tt-rates th:first-child { width:30%; text-align:left; }
.tt-rates td { padding:12px 2px; border-top:1px solid var(--field-border); text-align:center; color:#4fc3ff; font-size:clamp(11px,3.1vw,16px); font-weight:900; }
.tt-rates .tt-rate-name td { padding:12px 0 0; border-top:1px solid var(--field-border); text-align:left; color:var(--text); font-size:11px; line-height:1.6; }
.tt-rates .tt-rate-name small { color:var(--muted); font-size:10px; }
.tt-rates .tt-rate-values td { border:0; }
.tt-note { margin:10px 0 0; }
.tt-steps { list-style:none; padding:0; margin:0; counter-reset:step; display:grid; gap:14px; }
.tt-steps li { position:relative; min-height:29px; padding-left:40px; font-size:12px; line-height:1.55; counter-increment:step; }
.tt-steps li::before { content:counter(step); position:absolute; left:0; top:0; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:#47e4df; color:#0a2532; font-weight:900; }
.tt-rules { margin:0; padding-left:18px; display:grid; gap:10px; font-size:12px; line-height:1.6; }
.tt-rules li::marker { color:#38d4d2; }
.tt-form { display:grid; gap:14px; margin-top:18px; }
.tt-form label { display:grid; gap:7px; min-width:0; font-size:11px; line-height:1.5; color:var(--muted); }
.tt-form input,.tt-form select { display:block; min-width:0; width:100%; max-width:100%; box-sizing:border-box; padding:11px 10px; border:1px solid var(--field-border); border-radius:11px; background:var(--field-bg,var(--panel-bottom)); color:var(--text); font:500 12px/1.4 var(--font-app); }
.tt-form-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:10px; }
.tt-submit { display:block; width:100%; box-sizing:border-box; text-align:center; padding:14px 10px; border:0; border-radius:14px; background:linear-gradient(110deg,#30b8ee,#1b9fce); color:#fff; font:800 12px/1.5 var(--font-app); text-decoration:none; cursor:pointer; }
.tt-submit:disabled, .tt-submit[aria-disabled="true"] { opacity:.5; cursor:default; }
.tt-submit[hidden] { display:none; }
.tt-message { color:var(--muted); font-size:11px; line-height:1.6; }
.tt-history { display:grid; gap:12px; font-size:11px; line-height:1.6; }
.tt-history article { border-top:1px solid var(--field-border); padding-top:12px; overflow-wrap:anywhere; }
.tt-history a { color:#41c8ed; }
.tt-history p { margin:3px 0; color:var(--muted); }
@media(max-width:340px) { .tt-panel { padding:12px; } .tt-form-row { grid-template-columns:minmax(0,1fr); } .tt-page { padding-inline:10px; } }

/* TikTok в меню бонусов: золотая светящаяся сетка и золотой ободок */
.bonus-menu .bonus-hero.tt-promo {
  position:relative; overflow:hidden; isolation:isolate;
  border:1px solid #f2c14e !important;
  background:
    linear-gradient(90deg,#ffcf5c1f 1px,transparent 1px) 0 0 / 16px 16px,
    linear-gradient(#ffcf5c1f 1px,transparent 1px) 0 0 / 16px 16px,
    radial-gradient(120% 140% at 85% 0%,#5a4314 0%,#2a2210 38%,#12100b 75%) !important;
  box-shadow:0 0 0 1px #ffd76a26, 0 0 18px #f2b9333d, inset 0 0 24px #ffcf5c1a !important;
}
/* свечение сетки: яркие золотые линии в пятне света, которое медленно проходит по карточке */
.bonus-menu .bonus-hero.tt-promo::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(90deg,#ffd76a 1px,transparent 1px) 0 0 / 16px 16px,
    linear-gradient(#ffd76a 1px,transparent 1px) 0 0 / 16px 16px;
  opacity:.55; filter:drop-shadow(0 0 3px #ffc84a);
  -webkit-mask:radial-gradient(55% 120% at var(--tt-glow-x,80%) 30%,#000 0%,#0008 40%,transparent 75%);
          mask:radial-gradient(55% 120% at var(--tt-glow-x,80%) 30%,#000 0%,#0008 40%,transparent 75%);
  animation:tt-grid-glow 6s ease-in-out infinite alternate;
}
@property --tt-glow-x { syntax:'<percentage>'; inherits:false; initial-value:80%; }
@keyframes tt-grid-glow { from { --tt-glow-x:15%; } to { --tt-glow-x:90%; } }
@media (prefers-reduced-motion: reduce) { .bonus-menu .bonus-hero.tt-promo::before { animation:none; } }
.bonus-menu .tt-promo .tt-icon { box-shadow:0 0 0 1px #f2c14e80, 0 0 12px #f2b93355; }
.bonus-menu .tt-promo .bonus-hero-reward { border-color:#f2c14e80 !important; color:#ffe6a3 !important;
  background:linear-gradient(135deg,#4a3810,#2b220e) !important; }

/* Карточка «Баннеры и примеры роликов»: в стиле TikTok — тёмная, с бирюзово-розовым «глитч»-контуром и кнопкой-пилюлей */
.tt-channel { position:relative; display:flex; align-items:center; gap:12px; padding:12px; border-radius:18px; text-decoration:none; color:inherit;
  background:#0d0f14; border:1px solid transparent;
  background-image:linear-gradient(#0d0f14,#0d0f14), linear-gradient(100deg,#25f4ee,#7a5cff 50%,#fe2c55);
  background-origin:border-box; background-clip:padding-box,border-box;
  box-shadow:-3px 0 14px -6px #25f4ee99, 3px 0 14px -6px #fe2c5599; }
.tt-channel[hidden] { display:none; }
.tt-channel:active { transform:scale(.985); }
.tt-channel-ico { flex:none; display:grid; place-items:center; width:44px; height:44px; border-radius:12px; background:#000;
  box-shadow:inset 0 0 0 1px #ffffff1a; }
.tt-channel-text { flex:1; min-width:0; }
.tt-channel-text b { display:block; font-size:14px; line-height:1.25; font-weight:800; }
.tt-channel-text small { display:block; margin-top:2px; color:var(--muted); font-size:11.5px; line-height:1.3; }
.tt-channel-go { flex:none; padding:8px 12px; border-radius:999px; font-size:0; line-height:1; color:#fff;
  background:linear-gradient(100deg,#25f4ee,#fe2c55); box-shadow:0 3px 10px #fe2c5540; }
.tt-channel-go::before { content:'Открыть'; font:800 12px/1 var(--font-app); color:#0d0f14; }
