@charset "utf-8";
/* Farm: a red barn, a green field, a tractor chugging along and a rooster crowing. */
:root[data-theme="farm"] {
  --bg: #bfe3ff; --panel: #fffdf4; --ink: #33291a; --muted: #75684f; --line: #eadfc4;
  --accent: #c0392b; --accent-ink: #ffffff; --mover: #fff2dc; --die: #ffffff; --die-edge: #8b5a2b;
  --pip: #33291a; --held: #f4c430; --field: #ffffff; --good: #3a7d2c; --bad: #c0392b;
  --title: #c0392b; --title-font: "Chewy", "Comic Sans MS", cursive; --name-font: "Chewy", "Comic Sans MS", cursive;
  --radius: 14px; --mark: "🐾";
  --pattern: linear-gradient(#cfeaff, #e6f5ff 55%, #dff0c8);
}
[data-theme="farm"] h1 { font-size: 48px; font-weight: 400; text-shadow: 3px 3px 0 #fff; }
[data-theme="farm"] .tray-head .name, [data-theme="farm"] .tray-head .total { font-weight: 400; }
[data-theme="farm"] .tray-head .total { font-size: 27px; color: #c0392b; }
[data-theme="farm"] .card { border: 2px solid #8b5a2b; box-shadow: 0 4px 0 #b88a5a; }
/* Cow-patch dice. */
[data-theme="farm"] .die:not(.blank) {
  background: radial-gradient(ellipse 30% 22% at 78% 22%, #3b3b3b 98%, transparent), radial-gradient(ellipse 22% 30% at 18% 80%, #3b3b3b 98%, transparent), #ffffff;
}
[data-theme="farm"] .die:not(.blank) .pip { background: #c0392b; }
[data-theme="farm"] .die.held { box-shadow: 0 0 0 3px var(--held); }
/* The field along the bottom, and the barn. */
[data-theme="farm"] body::after {
  content: "🏡"; position: fixed; left: 0; right: 0; bottom: 0; height: 80px; z-index: 0; pointer-events: none; font-size: 56px; text-align: right; padding-right: 4%; line-height: 30px;
  background: repeating-linear-gradient(90deg, #7fbf4d 0 20px, #6aab3d 20px 40px) bottom / 100% 44px no-repeat;
}
[data-theme="farm"] .ambient .a1 { display: block; bottom: 30px; left: -70px; font-size: 40px; animation: tractor 28s linear infinite 2s; }
[data-theme="farm"] .ambient .a1::before { content: "🚜"; display: inline-block; transform: scaleX(-1); animation: chug .35s ease-in-out infinite; }
@keyframes tractor { 0% { transform: translateX(0); } 50%, 100% { transform: translateX(calc(100vw + 140px)); } }
@keyframes chug { 50% { transform: scaleX(-1) translateY(-2px); } }
[data-theme="farm"] .ambient .a2 { display: block; top: 20%; left: 3%; font-size: 30px; animation: crow 6s ease-in-out infinite; transform-origin: bottom center; }
[data-theme="farm"] .ambient .a2::before { content: "🐓"; }
@keyframes crow { 0%, 80%, 100% { transform: rotate(0); } 85% { transform: rotate(-20deg) scale(1.15); } 92% { transform: rotate(-20deg) scale(1.15); } }
[data-theme="farm"] .ambient .a3 { display: block; top: 8%; right: -80px; font-size: 44px; opacity: .9; animation: cloud-drift 50s linear infinite; }
[data-theme="farm"] .ambient .a3::before { content: "☁️"; }
@keyframes cloud-drift { to { transform: translateX(calc(-100vw - 160px)); } }
