/* Meme scrollbar: intentionally loud, because default gray was criminally boring. */
html{scrollbar-width:thin;scrollbar-color:#ff2bd6 #111318;scrollbar-gutter:stable}
::-webkit-scrollbar{width:15px;height:15px}
::-webkit-scrollbar-track{background:repeating-linear-gradient(45deg,#0e1014 0 8px,#171a20 8px 16px);border-left:1px solid rgba(255,255,255,.08)}
::-webkit-scrollbar-thumb{border:3px solid #101217;border-radius:999px;background:linear-gradient(180deg,#ff2bd6 0%,#7c35ff 24%,#00d9ff 48%,#39ff88 69%,#ffe44a 84%,#ff5a36 100%);box-shadow:0 0 16px rgba(255,43,214,.55)}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff23d,#ff2bd6,#00e5ff,#7bff63);box-shadow:0 0 24px rgba(0,229,255,.75)}

.page-a1 .joke-main{min-height:auto;padding:54px 0 24px}
.page-a1 .joke-box{
  width:fit-content;
  max-width:min(820px,100%);
  min-width:0;
  min-height:0;
  padding:clamp(24px,4vw,40px) clamp(24px,5vw,46px);
  background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.07),transparent 34%),linear-gradient(145deg,#24262b 0%,#17191d 45%,#0e1013 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 24px 70px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.04);
}
.page-a1 .joke-text{max-width:760px;text-shadow:none;white-space:pre-line}
.jokes-page{position:relative;z-index:1;width:min(1100px,calc(100% - 48px));margin:0 auto;padding-bottom:80px}
.joke-vote{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:-8px}
.joke-vote-button{appearance:none;min-width:112px;height:54px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(15,17,21,.88);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-size:22px;cursor:pointer;transition:.16s ease;box-shadow:0 12px 32px rgba(0,0,0,.32)}
.joke-vote-button strong{font-size:13px;font-variant-numeric:tabular-nums;color:rgba(255,255,255,.72)}
.joke-vote-button:hover:not(:disabled){transform:translateY(-2px) scale(1.03);border-color:rgba(255,255,255,.55);background:rgba(34,37,44,.96)}
.joke-like:hover:not(:disabled){box-shadow:0 10px 34px rgba(75,255,145,.15)}
.joke-dislike:hover:not(:disabled){box-shadow:0 10px 34px rgba(255,70,110,.16)}
.joke-vote-button:disabled{opacity:.52;cursor:wait}
.joke-vote-hint{
  width:fit-content;
  max-width:calc(100% - 24px);
  margin:-12px auto 0;
  padding:8px 13px;
  color:rgba(255,255,255,.68);
  font-size:13px;
  line-height:1.35;
  text-align:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:linear-gradient(145deg,rgba(31,34,40,.94),rgba(12,14,18,.94));
  box-shadow:0 10px 28px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.joke-rankings{margin:56px auto 0;max-width:1000px}
.joke-rankings-head{text-align:center;margin-bottom:22px}
.joke-rankings-head h2{margin:0 0 8px;font-size:clamp(30px,4vw,46px);letter-spacing:-.035em}
.joke-rankings-head p{
  width:fit-content;
  max-width:100%;
  margin:0 auto;
  padding:7px 12px;
  color:rgba(255,255,255,.62);
  font-size:14px;
  line-height:1.4;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(14,16,20,.84);
  box-shadow:0 8px 24px rgba(0,0,0,.28);
}
.joke-ranking-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.joke-ranking-panel{min-width:0;padding:22px;border-radius:22px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(145deg,rgba(35,38,44,.94),rgba(15,17,21,.96));box-shadow:0 20px 58px rgba(0,0,0,.34)}
.joke-ranking-panel h3{margin:0 0 15px;font-size:20px}
.ranking-best{box-shadow:inset 0 1px 0 rgba(90,255,145,.08),0 20px 58px rgba(0,0,0,.34)}
.ranking-worst{box-shadow:inset 0 1px 0 rgba(255,70,110,.08),0 20px 58px rgba(0,0,0,.34)}
.joke-ranking-list{display:grid;gap:10px}
.ranking-row{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;padding:12px;border-radius:15px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.07)}
.ranking-place{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);font-size:12px;font-weight:900}
.ranking-copy{min-width:0}.ranking-copy p{margin:0 0 6px;font-size:13px;line-height:1.42}.ranking-copy small{color:rgba(255,255,255,.48);font-size:11px}.ranking-empty{margin:0;color:rgba(255,255,255,.48);font-size:13px;line-height:1.45}.joke-stats-note{
  width:fit-content;
  max-width:100%;
  margin:14px auto 0;
  padding:6px 10px;
  text-align:center;
  color:rgba(255,255,255,.50);
  font-size:11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(12,14,18,.78);
}

.horoscope-main{position:relative;z-index:1;width:min(1120px,calc(100% - 48px));margin:0 auto;padding:54px 0 78px}
.horoscope-header{text-align:center;margin:0 auto 34px;max-width:760px}.horoscope-title{margin:0 0 12px;font-size:clamp(42px,6vw,76px);line-height:1;font-weight:950;letter-spacing:-.04em}.horoscope-subtitle{margin:0;color:rgba(255,255,255,.68);font-size:16px;line-height:1.55}
.zodiac-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:24px}.zodiac-button{appearance:none;border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:15px 10px;background:linear-gradient(145deg,rgba(42,44,49,.95),rgba(18,20,24,.96));color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:7px;font:inherit;transition:.18s ease}.zodiac-button:hover,.zodiac-button.active{transform:translateY(-2px);border-color:rgba(255,255,255,.52);background:linear-gradient(145deg,#34373e,#191b20)}.zodiac-symbol{font-size:27px;line-height:1}.zodiac-name{font-size:12px;font-weight:800}
.horoscope-card{max-width:860px;margin:0 auto;padding:34px 38px;border-radius:26px;border:1px solid rgba(255,255,255,.16);background:radial-gradient(circle at 85% 10%,rgba(167,52,255,.14),transparent 34%),linear-gradient(145deg,#25272c,#131519 58%,#0d0f12);box-shadow:0 26px 80px rgba(0,0,0,.48);min-height:220px}.horoscope-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.horoscope-sign{margin:0;font-size:clamp(26px,4vw,40px);font-weight:900}.horoscope-date{color:rgba(255,255,255,.55);font-size:13px;white-space:nowrap;padding-top:8px}.horoscope-text{margin:0;font-size:clamp(18px,2vw,23px);line-height:1.58;color:rgba(255,255,255,.92)}.horoscope-state{margin:0;color:rgba(255,255,255,.62);font-size:17px;line-height:1.5}.horoscope-source{margin:22px 0 0;font-size:12px;color:rgba(255,255,255,.42)}.horoscope-source a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:900px){.zodiac-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.horoscope-main,.jokes-page{width:min(100% - 30px,1120px)}.joke-ranking-grid{grid-template-columns:1fr}}
@media(max-width:560px){::-webkit-scrollbar{width:11px}.zodiac-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.zodiac-button{padding:13px 7px;border-radius:15px}.horoscope-card{padding:26px 22px;border-radius:20px}.horoscope-card-head{flex-direction:column;gap:4px}.horoscope-date{padding-top:0}.page-a1 .joke-box{padding:24px 20px}.joke-vote-button{min-width:96px;height:50px}.joke-ranking-panel{padding:18px}.jokes-page{padding-bottom:54px}.joke-vote-hint{border-radius:16px}}
