:root{--ink:#233d36;--green:#274c40;--cream:#f2efdf;--line:#b9bdab}body{background:#f2efdf;font-family:Arial,Helvetica,sans-serif}header{max-width:1200px;padding:25px 35px;border-bottom:2px solid #294b3e;gap:20px}.brand{font-family:Georgia,serif;font-weight:900;font-size:29px;letter-spacing:-1.4px}.brand span{font-style:italic;font-weight:400;color:var(--ink);margin:0;font-size:25px}header small{letter-spacing:1px;font:10px monospace}.issue{font:10px monospace;letter-spacing:1px}.hero{max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:44px;background:none;text-align:left;padding:45px 35px 32px;min-height:0;overflow:visible}.hero-copy{padding:12px 0}.eyebrow{font:10px/1.5 monospace;letter-spacing:1.3px}.hero h1{font:bold clamp(36px,4vw,57px)/1.03 Georgia,serif;letter-spacing:-2.4px;margin:24px 0}.hero h1 em{font-weight:400;color:#8f4433}.hero p{margin:25px 0;max-width:370px;font:14px/1.7 Arial;color:#49584b}.edition{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:30px;padding-top:12px;max-width:370px;font:10px monospace;letter-spacing:1px}.edition span{font-size:21px}.art{position:relative;transform:rotate(1deg);align-self:center;padding:9px 9px 0;background:#fffcf0;box-shadow:3px 5px 0 #d5d3c2;border:1px solid #b4b8a6}.art svg{width:100%;display:block}.caption{padding:9px 5px;font:10px monospace;color:#526459}.art-label{position:absolute;bottom:40px;right:-15px;background:#e0bd6b;color:#403d28;padding:9px 16px;font:italic 18px Georgia;transform:rotate(-6deg);border:1px solid #b4a063}.main{max-width:1200px;padding:0 35px 35px}.journey{max-width:none;margin:5px 0 28px;justify-content:flex-start;background:transparent;border-radius:0;box-shadow:none;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:13px 0;gap:48px}.step{font:12px monospace}.badge{border-radius:0;width:22px;height:22px;border-color:#7c8b72}.layout{grid-template-columns:minmax(0,1fr) 235px;gap:35px}.panel{background:none;border:0;border-radius:0}.tabs{padding:0;gap:0;border-bottom:1px solid #8e9c82}.tab{border-radius:0;margin-bottom:-1px;padding:13px 25px;border:1px solid transparent;font:12px monospace}.tab.active{background:#fffcf0;border-color:#8e9c82;border-bottom-color:#fffcf0}.content{background:#fffcf0;border:1px solid #8e9c82;border-top:0;padding:24px}.heading h2{font:bold 26px/1.2 Georgia;letter-spacing:-.8px}.pill{border-radius:0;background:none;border-left:1px solid #b9bdab;padding:0 0 0 14px;font:11px monospace}.desc{color:#67705e;font-size:12px}.puzzle-layout{grid-template-columns:minmax(0,1fr) 185px;gap:25px}.grid{gap:1px;background:#a1aa95;border:1px solid #a1aa95}.cell{border-radius:0}.block{background:#344d41}.letter{border:0;background:#fffcf0}.letter input{border-radius:0;font-family:Georgia;font-weight:400}.searchcell{background:#fffcf0;font:14px monospace}.selected{background:#e8c67e}.found{background:#bacbaa}.clues h3{color:#8f4433;letter-spacing:1px;font:11px monospace}.clue{font-size:12px}.word{font:12px/1.8 monospace}.primary{border-radius:0;background:#2f4f40;font:12px monospace;padding:13px 17px}.secondary{border-radius:0;border-color:#a8b09b;font:11px monospace}.aside{position:relative;background:#e6e7d4;border:1px solid #a7ad91;border-radius:0;padding:20px;margin-top:44px}.ticket-top{display:flex;justify-content:space-between;border-bottom:1px dashed #899779;padding-bottom:15px;margin-bottom:25px;font:11px monospace;letter-spacing:2px}.ticket-top span{font-size:23px}.aside h2{font:bold 33px/1.05 Georgia;letter-spacing:-1px;margin:12px 0 20px}.aside p{color:#4b5d46;font-size:12px}.progress,.progress div{border-radius:0}.note{background:transparent;border-top:1px dashed #899779;border-radius:0;padding:20px 0 0;font:10px/1.6 monospace}.note .small{display:block;font:12px/1.6 Arial;letter-spacing:0;margin-top:10px}.footer{border-top:1px solid #a6af98;padding-top:18px;font:9px/1.6 monospace;letter-spacing:.4px}.win{border-radius:0;border:8px solid #e3e5d0;outline:1px solid #a8b295;box-shadow:10px 10px 0 #183c3855}.code{border-radius:0;font-family:monospace;letter-spacing:2px}.modal{backdrop-filter:none;background:#153f34bb}.win h2{font-weight:bold;letter-spacing:-1.5px}.wrong{background:#efd5c8}@media(min-width:1500px){.hero{padding-top:55px;padding-bottom:40px}}@media(max-width:850px){header small{display:none}.hero{gap:25px;padding:25px}.hero h1{font-size:38px}.main{padding:0 25px 25px}.layout{grid-template-columns:1fr}.aside{display:block;margin-top:0}.aside h2 br{display:none}.aside .note,.aside hr{display:none}.art-label{right:-8px;font-size:15px}.puzzle-layout{grid-template-columns:minmax(0,1fr) 185px}.journey{gap:30px}}@media(max-width:560px){header{padding:17px 18px}.brand{font-size:24px}.brand span{font-size:21px}.issue{display:none}.hero{padding:25px 18px 15px;gap:20px;grid-template-columns:1fr}.hero-copy{padding:0}.hero h1{font-size:43px;margin:15px 0;letter-spacing:-1.8px}.hero p{font-size:13px;margin:15px 0}.edition{margin-top:18px}.art{width:100%;transform:rotate(.7deg)}.art svg{max-height:230px;object-fit:cover}.art-label{bottom:33px}.main{padding:0 15px 25px}.journey{gap:16px;justify-content:space-between;margin:15px 0 20px}.step{font-size:10px;gap:5px}.badge{width:18px;height:18px;font-size:10px}.content{padding:20px 12px}.heading h2{font-size:23px}.puzzle-layout{grid-template-columns:1fr;gap:20px}.clues{display:grid;grid-template-columns:1fr 1fr}.cell{font-size:15px}.num{font-size:7px;left:2px;top:-1px}.letter input{padding-top:6px}.tabs .tab{font-size:11px}.footer{font-size:8px}.win{padding:25px 18px}}
/* Air, water and warm sunset colors for the puzzle club. */
body{background:radial-gradient(ellipse at 3% 5%,#d4eee1 0,transparent 38%),radial-gradient(ellipse at 95% 25%,#f4d9d6 0,transparent 40%),linear-gradient(155deg,#edf6e5 0%,#f9f2dd 48%,#deecf5 100%);background-attachment:fixed;color:#25473e}header{border:0;padding-top:28px;padding-bottom:18px}.brand{color:#244c42}.brand span{color:#497c6c}.issue{background:#ffffff70;padding:10px 14px;border-radius:30px}.hero{gap:48px;padding-top:35px;padding-bottom:35px}.hero h1 em{color:#9a5a68}.hero h1{letter-spacing:-1.8px}.edition{border:0;padding:13px 17px;border-radius:25px;background:linear-gradient(100deg,#d5e7ceaa,#eedba999);color:#496750}.art{padding:0;border:0;border-radius:38px 70px 38px 70px;box-shadow:0 18px 45px #315f4920;transform:rotate(1.3deg);background:linear-gradient(125deg,#e0efde,#f7e7c9)}.art svg{border-radius:38px 70px 0 0}.caption{padding:14px 22px;color:#4b6a59}.art-label{border:0;background:linear-gradient(110deg,#ffe6a8,#f3bf92);border-radius:20px 5px 20px 5px;box-shadow:0 7px 16px #815f3617;bottom:49px;right:-12px}.journey{border:0;background:#ffffff65;border-radius:40px;padding:14px 23px;gap:45px;margin:5px 0 28px;box-shadow:0 6px 25px #3b665706}.step{color:#577060}.badge{border:0;background:#dce8d8;border-radius:50%;width:26px;height:26px}.done .badge{background:linear-gradient(135deg,#7da88b,#3b7667)}.panel{background:#fffefaac;border:0;border-radius:28px;overflow:hidden;box-shadow:0 14px 45px #4269530a}.tabs{border:0;padding:10px 12px 0;gap:6px;background:linear-gradient(105deg,#e2edda9c,#f8e8dca6)}.tab{border:0;border-radius:18px 18px 0 0;padding:15px 24px;margin:0}.tab.active{border:0;background:#fffdf4;color:#315e4e}.content{border:0;background:#fffdf4;padding:27px;border-radius:0 0 28px 28px}.heading h2{color:#2e5348}.pill{border:0;border-radius:30px;background:#edf1e4;padding:6px 12px;white-space:nowrap}.grid{border:0;gap:3px;background:transparent}.cell{border-radius:5px}.block{background:#dfe8da}.letter{border:0;background:#f0f1e5;box-shadow:inset 0 -1px 0 #56704816}.letter input{border-radius:5px}.letter:focus-within{outline:2px solid #71987b;background:#e2edd9}.searchcell{background:#edf1e5;border-radius:7px;color:#315447}.selected{background:#f3d3a8}.found{background:linear-gradient(135deg,#c4dfc1,#a8d4c4);color:#255340}.clues h3{color:#986674}.primary{border-radius:30px;background:linear-gradient(115deg,#40765f,#578f7d);box-shadow:0 5px 12px #47765c20;padding:13px 20px;transition:transform .15s,box-shadow .15s}.primary:hover{transform:translateY(-2px);box-shadow:0 8px 18px #47765c30}.secondary{border:0;border-radius:30px;background:#ebefdf;color:#45654f;padding:13px 17px}.aside{border:0;border-radius:28px;background:linear-gradient(145deg,#d9ebda 0%,#e7eacb 48%,#f5dfbc 100%);padding:25px;margin-top:0;box-shadow:0 12px 35px #58734b0b}.ticket-top{border:0;background:#ffffff4f;border-radius:30px;padding:10px 15px;margin-bottom:22px;align-items:center}.ticket-top span{line-height:1}.aside hr{border-top-color:#7f9e6726}.aside h2{color:#315d47}.note{border:0;background:#ffffff50;border-radius:18px;padding:16px;font-size:10px}.progress{border-radius:20px;background:#fff9;height:7px}.progress div{border-radius:20px;background:linear-gradient(90deg,#83b28c,#507e66)}.footer{border:0;color:#718573;padding-top:5px}.win{border:0;outline:0;border-radius:32px;background:radial-gradient(ellipse at top,#dcedd6,transparent 65%),linear-gradient(135deg,#fff9e9,#f5e7d7);box-shadow:0 25px 100px #183c3833}.code{border:0;border-radius:18px;background:#ffffff9c;color:#3f7155}.modal{background:#214f446e;backdrop-filter:blur(6px)}.wrong{background:#f4d7c9}.win h2{color:#315c47}@media(max-width:850px){.hero{gap:30px}.aside{margin-top:0}.note{display:block!important}.puzzle-layout{gap:20px}}@media(max-width:560px){header{padding:20px 18px 10px}.hero{padding:20px 18px;gap:22px}.hero h1{font-size:43px}.art{border-radius:28px 45px 28px 45px}.art svg{border-radius:28px 45px 0 0}.caption{padding:12px 17px;font-size:9px}.art-label{right:-5px;bottom:40px}.journey{padding:12px 10px;gap:6px;border-radius:25px;margin-top:12px}.step{font-size:9px;gap:5px}.badge{width:20px;height:20px}.tabs{padding:8px 8px 0}.tabs .tab{padding:13px 7px;border-radius:14px 14px 0 0}.content{padding:22px 13px}.panel{border-radius:23px}.heading{gap:8px}.heading h2{font-size:22px}.pill{font-size:10px;padding:5px 8px}.grid{gap:2px}.cell{border-radius:4px}.aside{border-radius:23px}.actions{gap:8px}.primary,.secondary{font-size:11px}.win{border-radius:25px}.edition{font-size:9px}.footer{padding:5px 4px}}
@media(prefers-reduced-motion:reduce){.primary{transition:none}.primary:hover{transform:none}}
/* Puzzle-first layout: no hero artwork or promotional panels. */
header{max-width:950px;display:block;padding:28px 25px 8px}.brand{font:600 28px/1.2 Georgia,serif;letter-spacing:-.5px}.intro{font:13px/1.6 Arial,sans-serif;color:#5e7466;margin:8px 0 0}.main{max-width:950px;padding:0 25px 25px}.journey{margin:12px 0 20px;padding:12px 18px;justify-content:space-between;gap:16px}.layout{display:block}.puzzle-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.content{padding:25px}.heading h2{font-size:25px}.footer{margin-top:20px}.cell{font-size:18px}.searchcell{font-size:17px}.clue{font-size:13px;line-height:1.6}.clues h3{margin-top:0}.word{font-size:13px}.actions{margin-top:20px}.status:empty{display:none}@media(max-width:560px){header{padding:20px 16px 4px}.brand{font-size:25px}.intro{font-size:12px}.main{padding:0 12px 20px}.journey{padding:11px 10px;gap:6px;margin:12px 0 16px}.content{padding:20px 12px}.puzzle-layout{grid-template-columns:1fr;gap:20px}.heading h2{font-size:21px}.cell{font-size:15px}.searchcell{font-size:15px}.clue{font-size:12px}.footer{line-height:1.8}}
/* Halloween event */
:root{--ink:#eee7ff;--green:#b5dcaf;--cream:#201b32;--line:#655575}body{background:radial-gradient(ellipse at 0 0,#542d62 0,transparent 48%),radial-gradient(ellipse at 100% 30%,#573846 0,transparent 42%),linear-gradient(145deg,#211b35,#181e30 70%,#29352f);background-attachment:fixed;color:#eee7ff}header{max-width:1150px;padding-top:25px}.event-tag{font:10px monospace;letter-spacing:2px;color:#ffbe83;margin-bottom:9px}.brand{color:#f4e9ff;font-size:31px}.brand span{color:#eac88d;font-size:30px;margin-left:8px}.intro{color:#c7bad5}.main{max-width:1150px}.event-progress{margin:15px 0 25px;padding:17px 21px;background:#ffffff08;border-radius:23px}.progress-heading{display:flex;justify-content:space-between;align-items:center;color:#e3d6f2;font:12px Arial;margin-bottom:11px}.progress-heading strong{font:700 15px monospace;color:#ffca95}.event-track{height:14px;background:linear-gradient(90deg,#6c3e7533,#cb785333,#77c69a33);border-radius:30px;overflow:hidden}.event-track>div{height:100%;width:0;background:linear-gradient(90deg,#a665f3 0%,#ef77b5 32%,#ffa94f 65%,#c7ed83 100%);border-radius:30px;box-shadow:0 0 17px #e489b44d;transition:width .35s ease}.progress-caption{margin-top:9px;font-size:11px;color:#b8abc9}.layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:24px;align-items:start}.panel{background:#29253b;box-shadow:0 15px 40px #0002}.tabs{background:linear-gradient(110deg,#403052,#554039);padding:10px 12px 0}.tab{color:#cfbddb}.tab.active{background:#302a43;color:#f8dbb6}.content{background:#302a43}.heading h2{color:#f4e9ff;font-size:24px}.pill{color:#ebc796;background:#ffffff0b}.desc{color:#c0b3cc}.puzzle-layout{grid-template-columns:minmax(0,1fr) 175px;gap:22px}.grid{gap:3px}.block{background:#211d31}.letter{background:#e9e4d7;box-shadow:none}.letter input{color:#3c314d}.letter:focus-within{background:#f9d79c;outline-color:#ffb96c}.num{color:#60546d}.clues h3{color:#eeb77e}.clue{color:#e2d7ec!important;font-size:12px}.word{color:#e2d7ec}.word.foundword{color:#a2ca9f}.searchcell{color:#e9def4;background:#443b56}.selected{background:#f1b267;color:#2f2341}.found{background:linear-gradient(130deg,#afcb8e,#8fc2af);color:#243f32}.primary{background:linear-gradient(110deg,#e79a60,#e8bd7d);color:#37243d;box-shadow:0 4px 15px #100c201a}.secondary{background:#483b58;color:#eee0fa}.status{color:#e6cda9}.aside{background:linear-gradient(145deg,#d4e5c8 0%,#eee3b8 55%,#f3caa1 100%);color:#2a453a}.aside h2{color:#31583f}.aside p{color:#456046}.ticket-top{color:#3c5742}.aside .eyebrow{color:#47634a}.aside .small{color:#607553}.aside .note{color:#425c40;background:#fff6}.aside hr{display:block;border-top-color:#55754520}.aside .progress{background:#fff9}.aside .progress div{background:linear-gradient(90deg,#9b6dd1,#e99564,#83ae77)}.footer{color:#a79ab7}.win{background:radial-gradient(ellipse at top,#54405f,transparent 65%),linear-gradient(145deg,#30263f,#282438);color:#e9dff2}.win h2{color:#ffdab2}.win .eyebrow{color:#dcc3ef}.win .small{color:#c4b4d1}.code{background:#ffffff0b;color:#e6d896}.modal{background:#100d24bb}.wrong{background:#efb8ac}.letter.wrong input{color:#532e33}@media(max-width:850px){.layout{grid-template-columns:1fr}.aside{max-width:none}.aside h2 br{display:none}.aside .note{display:block!important}.puzzle-layout{grid-template-columns:minmax(0,1fr) 200px}.aside hr{display:block}}@media(max-width:560px){.brand{font-size:27px}.event-progress{padding:14px 16px;margin:12px 0 18px}.event-track{height:12px}.puzzle-layout{grid-template-columns:1fr}.heading h2{font-size:21px}.layout{gap:20px}.aside{padding:23px}.aside h2{font-size:31px}.cell{font-size:15px}}@media(prefers-reduced-motion:reduce){.event-track>div{transition:none}}
/* Small, interruptible celebrations; motion stays on transform and opacity. */
#eventFill{width:100%!important;transform:scaleX(0);transform-origin:left center;transition:transform 550ms cubic-bezier(.22,1,.36,1)}
.word-spark{position:fixed;z-index:25;pointer-events:none;width:5px;height:5px;border-radius:50%;contain:strict}.letter.solved-cell{background:#bdd8a8}.letter.solved-cell input{color:#254a35}.letter.solved-cell .num{color:#416447}.clue.solved-clue{color:#bcdda9!important}.clue.solved-clue::after{content:' ✓';color:#c9ed9c;font-weight:700}.word.foundword{color:#bedca9}.word.foundword::after{content:' ✓';display:inline-block;margin-left:7px;text-decoration:none}.cell{position:relative}.letter,.searchcell{transition:background-color 180ms ease,color 180ms ease}.win{animation:reward-arrive 420ms cubic-bezier(.22,1,.36,1) both}@keyframes reward-arrive{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){#eventFill,.letter,.searchcell{transition:none}.win{animation:none}}
/* Community artwork supplied by the server owner. */
header.site-header{display:flex;align-items:center;gap:18px}.community-logo{display:block;width:76px;height:76px;flex:0 0 76px;object-fit:contain;background:#fff;border-radius:18px;image-rendering:pixelated}.header-copy{min-width:0}.header-copy .intro{margin-bottom:0}@media(max-width:560px){header.site-header{gap:12px;align-items:flex-start}.community-logo{width:58px;height:58px;flex-basis:58px;border-radius:14px}.header-copy .event-tag{font-size:8px;letter-spacing:1.3px;margin-bottom:7px}.header-copy .brand{font-size:24px}.header-copy .brand span{font-size:22px;margin-left:3px}.header-copy .intro{font-size:11px;line-height:1.5;margin-top:7px}}
header.site-header{justify-content:flex-start}
