@charset "utf-8";
/* Pirates: deep sea, parchment maps, gold — a ship on the waves, fish below, a parrot above. */
:root[data-theme="pirates"] {
  --bg: #0f3b57; --panel: #f4e4bf; --ink: #3b2a14; --muted: #7b6646; --line: #dcc38e;
  --accent: #b3261e; --accent-ink: #fff7e0; --mover: #fbefcf; --die: #fffaf0; --die-edge: #7a4f22;
  --pip: #1d1d1d; --held: #e8b923; --field: #fff7e0; --good: #2e6b3a; --bad: #b3261e;
  --title: #f4e4bf; --title-font: "Pirata One", Georgia, serif; --name-font: "Pirata One", Georgia, serif;
  --page-ink: #f4e4bf; --page-muted: #a8cfe0; --radius: 8px; --mark: "🏴‍☠️";
  --pattern: linear-gradient(#1b5f86, #0f3b57 40%, #0a2a40);
}
[data-theme="pirates"] h1 { font-size: 48px; font-weight: 400; text-shadow: 2px 3px 0 #06202f; }
[data-theme="pirates"] .card { box-shadow: inset 0 0 24px rgba(120, 80, 30, .35), 0 4px 10px rgba(0, 0, 0, .35); border-color: #c9a96a; }
[data-theme="pirates"] .tray-head .name { font-size: 21px; }
[data-theme="pirates"] .tray-head .total { font-size: 28px; color: #b3261e; }
[data-theme="pirates"] .die.held { box-shadow: 0 0 0 3px var(--held), 0 0 14px rgba(232, 185, 35, .85); }
/* Waves along the bottom, two rows, rolling. */
[data-theme="pirates"] body::before, [data-theme="pirates"] body::after {
  content: ""; position: fixed; left: 0; right: 0; bottom: 0; pointer-events: none; z-index: 0;
}
[data-theme="pirates"] body::before { height: 46px; background: radial-gradient(circle at 30px -14px, transparent 34px, #2a7aa6 35px) 0 0 / 60px 46px repeat-x; animation: waves 9s linear infinite; opacity: .8; }
[data-theme="pirates"] body::after { height: 30px; background: radial-gradient(circle at 20px -10px, transparent 24px, #1b5f86 25px) 0 0 / 40px 30px repeat-x; animation: waves 6s linear infinite reverse; }
@keyframes waves { to { background-position-x: 120px; } }
[data-theme="pirates"] .ambient .a1 { display: block; bottom: 26px; left: -80px; font-size: 46px; animation: sail 40s linear infinite; }
[data-theme="pirates"] .ambient .a1::before { content: "⛵"; display: inline-block; animation: rock 2.4s ease-in-out infinite; }
@keyframes sail { to { transform: translateX(calc(100vw + 160px)); } }
@keyframes rock { 50% { transform: rotate(-6deg) translateY(3px); } }
[data-theme="pirates"] .ambient .a2 { display: block; bottom: 6px; right: -40px; font-size: 20px; animation: swim 18s linear infinite 6s; }
[data-theme="pirates"] .ambient .a2::before { content: "🐠"; display: inline-block; transform: scaleX(-1); }
@keyframes swim { 0% { transform: translateX(0); } 40%, 100% { transform: translateX(calc(-100vw - 80px)); } }
[data-theme="pirates"] .ambient .a3 { display: block; top: 10%; left: -60px; font-size: 30px; animation: parrot 28s linear infinite 9s; }
[data-theme="pirates"] .ambient .a3::before { content: "🦜"; display: inline-block; animation: flap .3s ease-in-out infinite alternate; }
@keyframes parrot { 0% { transform: translate(0, 0); } 15% { transform: translate(50vw, 20px); } 30%, 100% { transform: translate(calc(100vw + 120px), -10px); } }
@keyframes flap { to { transform: translateY(-3px) scaleY(.85); } }
