/* Seasonal layer for Pilgrim's Bounty (US Thanksgiving). Generated by tools/seasonal.py; edit that, not this.
   Loaded on top of perpetua.css when the Worker injects it: the navy-and-gold brand stays, and this adds pumpkin,
   amber and cranberry accents, an autumn branch in the corner, a turkey beside the title, maple leaves on the
   panels and a harvest at the foot of the page. */
:root {
  --harvest: #d9822b;
  --harvest-pale: #f0b45a;
  --cranberry: #9e2b3a;
}

body {
  position: relative;
  padding-bottom: 130px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28'%3E%3Cpath d='M4 4l7 7M18 18l7 7' stroke='%23d4af37' stroke-opacity='.05' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E"),
    radial-gradient(ellipse 120% 45% at 50% 112%, rgba(217, 130, 43, .26), transparent 62%),
    radial-gradient(ellipse 70% 50% at 0% 0%, rgba(158, 43, 58, .22), transparent 70%),
    radial-gradient(ellipse 60% 45% at 100% 40%, rgba(217, 130, 43, .10), transparent 70%),
    radial-gradient(ellipse 80% 55% at 50% 18%, var(--royal-light), var(--navy) 70%, var(--midnight));
  background-color: var(--navy);
  background-attachment: fixed;
}
::selection { background: rgba(217, 130, 43, .45); color: #fff8e6; }

/* An autumn branch reaching in from the top-left corner */
body::before {
  content: ""; position: absolute; top: 0; left: 0; width: 220px; height: 170px; z-index: -1; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 200' opacity='.7'%3E%3Cpath d='M0 8 C40 14 70 30 104 46 C130 58 160 66 200 66' fill='none' stroke='%235a3418' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M62 26 C72 40 76 54 74 70 M140 58 C148 76 150 92 146 108' fill='none' stroke='%235a3418' stroke-width='3' stroke-linecap='round'/%3E%3Cg transform='translate(36 22) rotate(-20) scale(1.5) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23c2461f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(82 72) rotate(25) scale(1.3) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e9b13f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(110 38) rotate(-5) scale(1.4) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e07a2b' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(148 112) rotate(40) scale(1.2) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%239e2b3a' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(178 56) rotate(10) scale(1.25) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23c2461f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(214 72) rotate(-30) scale(1.0) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e9b13f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(70 128) rotate(60) scale(0.8) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e07a2b' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(120 160) rotate(-40) scale(0.7) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23c2461f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(30 92) rotate(15) scale(0.7) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%239e2b3a' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3C/svg%3E") no-repeat 0 0 / contain;
}
/* The harvest at the foot of the page: pumpkins, a wheat sheaf, a pumpkin pie */
body::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 14px; height: 96px; z-index: -1; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 96' %3E%3Cg transform='translate(48 56) scale(1.0)'%3E%3Cpath d='M-2 -30 C-3 -40 2 -46 9 -48 L11 -44 C6 -42 5 -37 6 -30 Z' fill='%234d5d2a'/%3E%3Cg stroke='%236e2c0c' stroke-width='1.2'%3E%3Cellipse cx='-20' cy='0' rx='20' ry='28' fill='%23a9551a'/%3E%3Cellipse cx='20' cy='0' rx='20' ry='28' fill='%23a9551a'/%3E%3Cellipse cx='0' cy='0' rx='22' ry='31' fill='%23d9822b'/%3E%3C/g%3E%3C/g%3E%3Cg transform='translate(92 66) scale(0.62)'%3E%3Cpath d='M-2 -30 C-3 -40 2 -46 9 -48 L11 -44 C6 -42 5 -37 6 -30 Z' fill='%234d5d2a'/%3E%3Cg stroke='%236e2c0c' stroke-width='1.2'%3E%3Cellipse cx='-20' cy='0' rx='20' ry='28' fill='%23c08a2a'/%3E%3Cellipse cx='20' cy='0' rx='20' ry='28' fill='%23c08a2a'/%3E%3Cellipse cx='0' cy='0' rx='22' ry='31' fill='%23e9b13f'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat left 24px bottom / 120px 96px,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 96' %3E%3Cg stroke='%23b07d2a' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M52 88 Q47.2 50 39.2 18' fill='none'/%3E%3Cpath d='M56 88 Q53.6 50 49.6 18' fill='none'/%3E%3Cpath d='M60 88 Q60.0 50 60.0 18' fill='none'/%3E%3Cpath d='M64 88 Q66.4 50 70.4 18' fill='none'/%3E%3Cpath d='M68 88 Q72.8 50 80.8 18' fill='none'/%3E%3C/g%3E%3Cellipse cx='39.2' cy='18' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-24 39.2 18)'/%3E%3Cellipse cx='39.2' cy='24' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-24 39.2 24)'/%3E%3Cellipse cx='39.2' cy='30' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-24 39.2 30)'/%3E%3Cellipse cx='49.6' cy='18' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-12 49.6 18)'/%3E%3Cellipse cx='49.6' cy='24' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-12 49.6 24)'/%3E%3Cellipse cx='49.6' cy='30' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(-12 49.6 30)'/%3E%3Cellipse cx='60.0' cy='18' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(0 60.0 18)'/%3E%3Cellipse cx='60.0' cy='24' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(0 60.0 24)'/%3E%3Cellipse cx='60.0' cy='30' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(0 60.0 30)'/%3E%3Cellipse cx='70.4' cy='18' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(12 70.4 18)'/%3E%3Cellipse cx='70.4' cy='24' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(12 70.4 24)'/%3E%3Cellipse cx='70.4' cy='30' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(12 70.4 30)'/%3E%3Cellipse cx='80.8' cy='18' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(24 80.8 18)'/%3E%3Cellipse cx='80.8' cy='24' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(24 80.8 24)'/%3E%3Cellipse cx='80.8' cy='30' rx='3' ry='5' fill='%23e9b13f' stroke='%23b07d2a' stroke-width='.8' transform='rotate(24 80.8 30)'/%3E%3Cpath d='M50 62 C56 58 64 58 70 62' stroke='%239e2b3a' stroke-width='4' fill='none'/%3E%3C/svg%3E") no-repeat left 150px bottom / 96px 80px,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 130 96' %3E%3Cg transform='translate(10 0)'%3E%3Cellipse cx='60' cy='70' rx='46' ry='14' fill='%237a4a20' stroke='%234a2410' stroke-width='1.2'/%3E%3Cellipse cx='60' cy='64' rx='42' ry='12' fill='%23d9822b' stroke='%23a9551a' stroke-width='1.2'/%3E%3Cpath d='M18 64 Q24 58 30 64 Q36 58 42 64 Q48 58 54 64 Q60 58 66 64 Q72 58 78 64 Q84 58 90 64 Q96 58 102 64' fill='none' stroke='%23e9c27a' stroke-width='3'/%3E%3Cellipse cx='60' cy='60' rx='10' ry='3' fill='%23f8efe0' opacity='.9'/%3E%3C/g%3E%3Cg transform='translate(108 62) scale(0.5)'%3E%3Cpath d='M-2 -30 C-3 -40 2 -46 9 -48 L11 -44 C6 -42 5 -37 6 -30 Z' fill='%234d5d2a'/%3E%3Cg stroke='%236e2c0c' stroke-width='1.2'%3E%3Cellipse cx='-20' cy='0' rx='20' ry='28' fill='%23b0581c'/%3E%3Cellipse cx='20' cy='0' rx='20' ry='28' fill='%23b0581c'/%3E%3Cellipse cx='0' cy='0' rx='22' ry='31' fill='%23e07a2b'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") no-repeat right 24px bottom / 130px 96px;
  filter: drop-shadow(0 0 16px rgba(217, 130, 43, .35));
}

html { overflow-x: clip; }

/* A turkey strutting beside the title */
h1 { position: relative; text-shadow: 0 0 30px rgba(217, 130, 43, .3); }
h1::after {
  content: ""; position: absolute; left: calc(100% + .1em); top: -.75em; width: 2.2em; height: 1.6em; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 110' %3E%3Cpath d='M75 70 L137.8 50.8 A10 10 0 0 1 128.4 33.6 Z' fill='%239e2b3a' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L126.3 31.0 A10 10 0 0 1 110.9 18.0 Z' fill='%23c2461f' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L108.0 16.3 A10 10 0 0 1 88.7 9.4 Z' fill='%23e07a2b' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L85.3 8.8 A10 10 0 0 1 64.7 8.8 Z' fill='%23e9b13f' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L61.3 9.4 A10 10 0 0 1 42.0 16.3 Z' fill='%23e07a2b' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L39.1 18.0 A10 10 0 0 1 23.7 31.0 Z' fill='%23c2461f' stroke='%234a2410' stroke-width='1'/%3E%3Cpath d='M75 70 L21.6 33.6 A10 10 0 0 1 12.2 50.8 Z' fill='%239e2b3a' stroke='%234a2410' stroke-width='1'/%3E%3Cellipse cx='75' cy='76' rx='24' ry='22' fill='%236b3a1c' stroke='%233a1d0c' stroke-width='1.2'/%3E%3Cellipse cx='75' cy='80' rx='14' ry='13' fill='%238a4d24'/%3E%3Ccircle cx='75' cy='50' r='10' fill='%238a4d24' stroke='%233a1d0c' stroke-width='1.2'/%3E%3Ccircle cx='71' cy='48' r='1.8' fill='%231a0c06'/%3E%3Ccircle cx='79' cy='48' r='1.8' fill='%231a0c06'/%3E%3Cpath d='M72 53 L78 53 L75 58 Z' fill='%23e9b13f'/%3E%3Cpath d='M75 56 C71 60 72 66 75 66 C78 66 79 60 75 56' fill='%23c0303a'/%3E%3Cpath d='M66 96 L64 106 M70 97 L69 106 M80 97 L81 106 M84 96 L86 106' stroke='%23c98a2b' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Crest glows like a hearth */
.emblem { animation: hearth 6s ease-in-out infinite; }
@keyframes hearth {
  0%, 100% { filter: drop-shadow(0 0 12px rgba(217, 130, 43, .35)); }
  50% { filter: drop-shadow(0 0 20px rgba(240, 180, 90, .55)); }
}
.rule { color: var(--harvest); }
.rule::before { background: linear-gradient(90deg, transparent, var(--harvest)); opacity: .9; }
.rule::after { background: linear-gradient(90deg, var(--harvest), transparent); opacity: .9; }
.rule i { background: var(--cranberry); box-shadow: 0 0 10px rgba(217, 130, 43, .7); }
.tagline { color: var(--harvest-pale); }

/* Panels: a warm glow and a couple of maple leaves in the top-right */
.card {
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' opacity='.75'%3E%3Cg transform='translate(40 18) rotate(25) scale(1.2) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23c2461f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(22 10) rotate(-30) scale(0.8) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e9b13f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3C/svg%3E") no-repeat right 8px top 8px / 60px 60px,
    linear-gradient(180deg, rgba(158, 43, 58, .18), transparent 40%),
    linear-gradient(180deg, rgba(21, 42, 94, .55), rgba(12, 23, 48, .75));
  box-shadow: 0 0 40px rgba(217, 130, 43, .12);
}
.popup .card {
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' opacity='.75'%3E%3Cg transform='translate(40 18) rotate(25) scale(1.2) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23c2461f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3Cg transform='translate(22 10) rotate(-30) scale(0.8) translate(-12 -12)'%3E%3Cpath d='M12 0 L14 6 L19 4 L17 9 L23 10 L18 13 L20 17 L14 16 L13 22 L12 24 L11 22 L10 16 L4 17 L6 13 L1 10 L7 9 L5 4 L10 6 Z' fill='%23e9b13f' stroke='%236e2a12' stroke-width='.6' stroke-linejoin='round'/%3E%3Cpath d='M12 24 V8 M12 14 L6 11 M12 14 L18 11' stroke='%236e2a12' stroke-width='.7' fill='none' opacity='.7'/%3E%3C/g%3E%3C/svg%3E") no-repeat right 8px top 8px / 60px 60px,
    linear-gradient(180deg, #2a1f3e, var(--midnight));
}
.panel { border-color: rgba(217, 130, 43, .28); }

.cta:not(.alt):not(.discord-btn):hover { box-shadow: 0 0 0 4px var(--navy), 0 0 0 5px rgba(217, 130, 43, .7), 0 0 24px rgba(217, 130, 43, .4); }
.countdown b { color: var(--harvest-pale); text-shadow: 0 0 10px rgba(217, 130, 43, .5); }
.textlink:hover, footer a:hover { color: var(--harvest-pale); }

footer::after { content: " · Happy Pilgrim's Bounty"; color: var(--harvest); font-style: italic; }

@media (max-width: 560px) {
  body { background-attachment: scroll; padding-bottom: 104px; }
  body::before { width: 160px; height: 124px; }
  body::after { height: 70px;
    background-size: 84px 67px, 64px 54px, 92px 68px;
    background-position: left 12px bottom, left 98px bottom, right 12px bottom; }
  h1::after { left: auto; right: -.4em; top: -1.3em; width: 1.7em; height: 1.25em; }
  .card { background-size: 44px 44px, auto, auto; }
}
@media (prefers-reduced-motion: reduce) {
  .emblem { animation: none; filter: drop-shadow(0 0 14px rgba(217, 130, 43, .45)); }
}
