body.room-savanna {
    --space-bg: #5fab55;
    --space-ink: #17351e;
    --space-dim: #25422d;
    --card-bg: rgba(255, 252, 224, .9);
    --card-stroke: rgba(47, 102, 56, .24);
    --accent: #ffd76f;
    --me: #0f7a3d;
    background:
        radial-gradient(circle at 16% 20%, rgba(47, 116, 44, .32) 0 4px, transparent 5px),
        radial-gradient(circle at 82% 16%, rgba(42, 105, 39, .3) 0 5px, transparent 6px),
        radial-gradient(circle at 72% 78%, rgba(47, 116, 44, .28) 0 4px, transparent 5px),
        repeating-linear-gradient(36deg, rgba(30, 93, 32, .16) 0 2px, transparent 2px 18px),
        linear-gradient(135deg, #76bd55, #58a84f 52%, #79c25b);
}

body.room-savanna .space-header {
    background: linear-gradient(90deg, #256b3a, #6cae42 58%, #d9a642);
    border-bottom-color: rgba(28, 72, 31, .28);
}

body.room-savanna .header-title {
    color: #fff9d7;
    text-shadow: 0 2px 5px rgba(22, 58, 25, .55);
}

body.room-savanna .stars,
body.room-savanna .stars2,
body.room-savanna .stars3,
body.room-savanna .deco {
    display: none;
}

body.room-savanna .scene,
body.room-savanna .space-scene {
    background:
        radial-gradient(circle at 12% 18%, #2f7a38 0 14px, transparent 15px),
        radial-gradient(circle at 14% 20%, #245d2c 0 8px, transparent 9px),
        radial-gradient(circle at 86% 24%, #2f7a38 0 18px, transparent 19px),
        radial-gradient(circle at 83% 27%, #245d2c 0 9px, transparent 10px),
        radial-gradient(circle at 74% 82%, #2f7a38 0 15px, transparent 16px),
        radial-gradient(circle at 77% 80%, #245d2c 0 8px, transparent 9px),
        repeating-linear-gradient(104deg, rgba(31, 94, 34, .18) 0 2px, transparent 2px 22px),
        repeating-linear-gradient(18deg, rgba(255, 239, 148, .16) 0 1px, transparent 1px 28px),
        linear-gradient(135deg, #80c45a 0%, #62ad50 50%, #83c65c 100%);
}

body.room-savanna #galaxy {
    background:
        radial-gradient(circle at 10% 16%, rgba(39, 113, 45, .7) 0 12px, transparent 13px),
        radial-gradient(circle at 12% 18%, rgba(31, 83, 35, .85) 0 7px, transparent 8px),
        radial-gradient(circle at 82% 18%, rgba(39, 113, 45, .68) 0 15px, transparent 16px),
        radial-gradient(circle at 84% 21%, rgba(31, 83, 35, .85) 0 8px, transparent 9px),
        radial-gradient(circle at 26% 76%, rgba(39, 113, 45, .62) 0 10px, transparent 11px),
        radial-gradient(circle at 71% 73%, rgba(31, 83, 35, .55) 0 7px, transparent 8px),
        repeating-linear-gradient(86deg, rgba(32, 103, 31, .22) 0 2px, transparent 2px 18px),
        repeating-linear-gradient(153deg, rgba(235, 219, 120, .2) 0 1px, transparent 1px 24px),
        linear-gradient(135deg, rgba(107, 184, 75, .94), rgba(74, 155, 70, .96));
    border-color: rgba(45, 98, 40, .35);
    box-shadow: inset 0 -28px 80px rgba(36, 95, 35, .2), 0 18px 50px rgba(30, 72, 36, .22);
}

body.room-savanna .card {
    color: #17351e;
    border-color: rgba(47, 102, 56, .36);
    box-shadow: 0 18px 56px rgba(33, 82, 35, .22);
}

body.room-savanna .muted,
body.room-savanna .info-label {
    color: #25422d;
}

body.room-savanna .hint,
body.room-savanna .join-label,
body.room-savanna .info-value,
body.room-savanna .intro-note {
    color: #17351e;
}

body.room-savanna .quiz-main-label {
    color: #7a5200;
}

body.room-savanna .quiz-main-title {
    color: #a85f00;
    text-shadow: none;
}

body.room-savanna .join-url {
    padding: 4px 7px;
    color: #17351e;
    background: rgba(255, 255, 246, .86);
    border: 1px solid rgba(47, 102, 56, .34);
    border-radius: 8px;
}

body.room-savanna .copy-link {
    color: #7a5200;
}

body.room-savanna .copy-link .icon,
body.room-savanna .copy-link i {
    filter: none;
}

body.room-savanna .share-button {
    color: #1f2d0b;
    background: linear-gradient(135deg, #ffd76f, #fff0a7);
    border-color: rgba(122, 82, 0, .28);
    box-shadow: 0 6px 14px rgba(86, 112, 29, .16);
}

body.room-savanna .lobby-chat-button {
    color: #1f2d0b;
    background: linear-gradient(135deg, #ffd76f, #fff0a7);
    border-color: rgba(122, 82, 0, .28);
    box-shadow: 0 5px 12px rgba(86, 112, 29, .14);
}

body.room-savanna .space-input {
    color: #17351e;
    background: rgba(255, 255, 246, .92);
    border-color: rgba(47, 102, 56, .38);
}

body.room-savanna .space-input::placeholder {
    color: #617261;
    opacity: 1;
}

body.room-savanna .space-input:focus {
    border-color: rgba(47, 122, 56, .72);
    box-shadow: 0 0 0 3px rgba(47, 122, 56, .18);
}

body.room-savanna .theme-chip,
body.room-savanna .participant-chip {
    background: rgba(255, 247, 196, .82);
    border-color: rgba(74, 132, 47, .24);
    color: #17351e;
}

body.room-savanna .space-button,
body.room-savanna .qb-round-yellow-btn {
    background: linear-gradient(135deg, #ffd76f, #fff0a7);
    color: #24340e;
}

#blackBody.room-savanna {
    color: #17351e;
    background:
        radial-gradient(circle at 9% 12%, rgba(39, 113, 45, .8) 0 16px, transparent 17px),
        radial-gradient(circle at 11% 14%, rgba(27, 78, 32, .86) 0 8px, transparent 9px),
        radial-gradient(circle at 88% 18%, rgba(39, 113, 45, .78) 0 18px, transparent 19px),
        radial-gradient(circle at 86% 21%, rgba(27, 78, 32, .82) 0 9px, transparent 10px),
        radial-gradient(circle at 76% 88%, rgba(39, 113, 45, .68) 0 17px, transparent 18px),
        radial-gradient(circle at 73% 85%, rgba(27, 78, 32, .78) 0 8px, transparent 9px),
        repeating-linear-gradient(82deg, rgba(27, 95, 34, .18) 0 2px, transparent 2px 22px),
        repeating-linear-gradient(146deg, rgba(238, 223, 130, .18) 0 1px, transparent 1px 28px),
        linear-gradient(135deg, #83c95f 0%, #61b253 48%, #8aca64 100%);
}

#blackBody.room-savanna #topBar {
    background: linear-gradient(90deg, #2f7a38, #73b84a 58%, #d7aa40);
    color: #112815;
    border-bottom: 1px solid rgba(24, 72, 28, .26);
    box-shadow: 0 10px 24px rgba(32, 88, 34, .2);
}

#blackBody.room-savanna #topBar .title-wrapper,
#blackBody.room-savanna #topBar .player-name {
    color: #112815;
}

#blackBody.room-savanna #maincontents {
    position: relative;
    padding-top: 12px;
}

#blackBody.room-savanna #maincontents::before,
#blackBody.room-savanna #maincontents::after {
    content: "";
    position: fixed;
    z-index: -1;
    border-radius: 999px;
    pointer-events: none;
}

#blackBody.room-savanna #maincontents::before {
    width: 132px;
    height: 82px;
    left: 4vw;
    bottom: 6vh;
    background:
        radial-gradient(circle at 24% 48%, #2f7a38 0 18px, transparent 19px),
        radial-gradient(circle at 44% 28%, #3f8f40 0 20px, transparent 21px),
        radial-gradient(circle at 64% 48%, #276931 0 17px, transparent 18px);
}

#blackBody.room-savanna #maincontents::after {
    width: 156px;
    height: 94px;
    right: 5vw;
    top: 18vh;
    background:
        radial-gradient(circle at 26% 52%, #2f7a38 0 20px, transparent 21px),
        radial-gradient(circle at 48% 30%, #3f8f40 0 24px, transparent 25px),
        radial-gradient(circle at 70% 54%, #276931 0 19px, transparent 20px);
}

#blackBody.room-savanna #question {
    background: rgba(255, 252, 224, .9);
    border-color: #2f7a38;
    color: #17351e;
    box-shadow: 0 14px 36px rgba(31, 86, 34, .2);
}

#blackBody.room-savanna #q-headline {
    color: #17351e;
}

#blackBody.room-savanna #q-headline::before {
    background: #2f7a38;
    box-shadow: 0 0 0 2px rgba(47, 122, 56, .24);
}

#blackBody.room-savanna #countdown-panel {
    background: rgba(255, 252, 224, .78);
    border-color: rgba(47, 122, 56, .62);
    color: #17351e;
}

#blackBody.room-savanna #countdown-value {
    color: #2f7a38;
}

#blackBody.room-savanna .choice-button {
    background: rgba(255, 255, 246, .94);
    border-color: rgba(47, 122, 56, .32);
    color: #17351e;
    box-shadow: 0 8px 20px rgba(31, 86, 34, .14);
}

#blackBody.room-savanna .choice-button.selected {
    border-color: #d7aa40 !important;
    box-shadow: 0 0 0 3px rgba(215, 170, 64, .28);
}

#blackBody.room-savanna #info-area,
#blackBody.room-savanna #answer-count,
#blackBody.room-savanna #battleControls {
    color: #17351e;
}

#blackBody.room-savanna #message-area {
    color: #8b1f1f !important;
}

#blackBody.room-savanna #ranking th {
    background: #2f7a38;
    color: #fff;
}

#blackBody.room-savanna #ranking td {
    color: #17351e;
    background: rgba(255, 255, 246, .88);
    border-color: rgba(47, 122, 56, .28);
}

#blackBody.room-savanna .score-head {
    color: #fff9d7;
    text-shadow:
        0 2px 0 rgba(27, 78, 32, .42),
        0 0 14px rgba(255, 249, 215, .32);
}

#blackBody.room-savanna .rank-badge,
#blackBody.room-savanna .rank-badge.-glass {
    background: linear-gradient(180deg, #fff0a7, #d7aa40);
    color: #1b351f;
    border-color: rgba(255, 247, 196, .9);
    box-shadow: 0 8px 20px rgba(79, 117, 30, .24);
    text-shadow: none;
}

#blackBody.room-savanna .card {
    background: rgba(255, 252, 224, .92) !important;
    border: none !important;
    color: #17351e !important;
    box-shadow: 0 14px 36px rgba(31, 86, 34, .2);
}

#blackBody.room-savanna h2 {
    color: #17351e;
}

#blackBody.room-savanna table th {
    background: #2f7a38 !important;
    color: #fff !important;
    border-color: rgba(31, 83, 35, .45) !important;
}

#blackBody.room-savanna table td {
    color: #17351e !important;
    border-color: rgba(47, 122, 56, .28) !important;
}

#blackBody.room-savanna tr.uid,
#blackBody.room-savanna .mobile-result-card.uid {
    background: rgba(255, 240, 167, .8) !important;
}

#blackBody.room-savanna .history-row td,
#blackBody.room-savanna .rate-row,
#blackBody.room-savanna .mobile-result-card,
#blackBody.room-savanna .mobile-history-card,
#blackBody.room-savanna .mobile-stat {
    background: rgba(255, 255, 246, .86) !important;
    border-color: rgba(47, 122, 56, .26) !important;
    color: #17351e !important;
}

#blackBody.room-savanna .desktop-table tbody td,
#blackBody.room-savanna .history-table tbody td {
    background: rgba(255, 255, 246, .86) !important;
    color: #17351e !important;
}

#blackBody.room-savanna .desktop-table tbody tr.uid td {
    background: rgba(255, 240, 167, .9) !important;
}

#blackBody.room-savanna .history-table tbody tr.history-row td {
    background: rgba(255, 255, 246, .86) !important;
}

#blackBody.room-savanna .card h2,
#blackBody.room-savanna .card td,
#blackBody.room-savanna .card .big,
#blackBody.room-savanna .card .rate-q,
#blackBody.room-savanna .card .rate-idx {
    color: #17351e !important;
}

#blackBody.room-savanna .mobile-rank-title,
#blackBody.room-savanna .mobile-stat-value,
#blackBody.room-savanna .mobile-history-head,
#blackBody.room-savanna .mobile-history-question,
#blackBody.room-savanna .mobile-history-value,
#blackBody.room-savanna .participant-name,
#blackBody.room-savanna .participant-pill,
#blackBody.room-savanna .rate-ans {
    color: #17351e !important;
}

#blackBody.room-savanna .mobile-stat-label,
#blackBody.room-savanna .mobile-history-label,
#blackBody.room-savanna .participant-meta,
#blackBody.room-savanna .rate-note,
#blackBody.room-savanna .matrix-time {
    color: #31553b !important;
}

#blackBody.room-savanna .participant-pill {
    background: rgba(255, 247, 196, .82);
    border-color: rgba(74, 132, 47, .24);
}

#blackBody.room-savanna .participant-pill strong {
    color: #7a5200;
}

#blackBody.room-savanna .pill {
    background: #2f7a38;
    color: #fff;
    border-color: rgba(31, 83, 35, .45);
}

#blackBody.room-savanna .ok {
    color: #087b36;
}

#blackBody.room-savanna .ng {
    color: #a83232;
}

#blackBody.room-savanna .muted {
    color: #6d7d68;
}

#blackBody.room-savanna .mobile-history-card.ok {
    background: linear-gradient(180deg, rgba(216, 244, 188, .92), rgba(255, 255, 246, .92));
    border-color: rgba(47, 122, 56, .38);
}

#blackBody.room-savanna .mobile-history-card.ng {
    background: linear-gradient(180deg, rgba(255, 221, 205, .92), rgba(255, 255, 246, .92));
    border-color: rgba(168, 50, 50, .26);
}
