*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#f5f3e9;color:#233f35;font:15px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #bd6537}button{cursor:pointer}button:disabled{cursor:default}.top,main,footer{max-width:1240px;margin:auto}.top{height:96px;display:flex;align-items:center;gap:55px;padding:0 36px;border-bottom:1px solid #d9dfd0}.brand{font-weight:800;font-size:22px;letter-spacing:-.8px;white-space:nowrap}.brand-icon{font-size:35px;vertical-align:-3px;color:#32664f;margin-right:5px}.top nav{display:flex;gap:28px;font-size:13px}.top nav a:hover,footer a:hover{text-decoration:underline}.edition{margin-left:auto;font-size:10px;letter-spacing:1.8px;color:#78907b}main{padding:0 36px}.hero{display:grid;grid-template-columns:1fr 1.03fr;gap:55px;align-items:center;padding:65px 0 70px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:bold;color:#6c8771;margin:0 0 18px}h1{font-size:clamp(58px,7.3vw,96px);line-height:.96;letter-spacing:-5px;margin:0 0 25px}h1 em{font-family:Georgia,serif;font-weight:normal;color:#477054;letter-spacing:-4px}.lede{font-size:17px;color:#70806e;line-height:1.75;margin:0 0 27px}.primary{display:inline-flex;align-items:center;gap:34px;background:#285d48;color:#fff;padding:14px 21px;font-size:13px;border-radius:7px;font-weight:bold}.primary span{font-size:20px}.primary:hover{background:#204a39}.quiet{font-size:11px;color:#84907a;margin:17px 0 0}.featured{display:block;border-radius:20px;background:#244355;overflow:hidden;box-shadow:0 12px 30px #25452d15;transform:rotate(2deg)}.featured img{display:block;width:100%;height:310px;object-fit:cover}.featured-info{background:#e8d9b6;padding:22px 26px;display:flex;align-items:center;justify-content:space-between}.featured-info .eyebrow{font-size:9px;margin:0 0 5px;color:#7b7e55}.featured-info h2{font-size:26px;letter-spacing:-.8px;margin:0}.round-arrow{background:#285d48;color:#fff;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:22px}.library{border-top:1px solid #d9dfd0;padding-top:36px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-top .eyebrow{margin:0 0 10px}.section-top h2{font-size:27px;letter-spacing:-.7px;line-height:1.2;margin:0}.section-top>span{font-size:12px;color:#8b967e;white-space:nowrap}.tools{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:28px 0}.filters{display:flex;gap:5px;flex-wrap:wrap}.filters button{border:1px solid transparent;background:none;padding:9px 14px;border-radius:24px;font-size:12px;color:#74816f;min-height:42px}.filters button[aria-pressed=true]{background:#285d48;color:white}.filters button:hover{border-color:#91a18a}.search{background:#fff;border:1px solid #e1e5d8;border-radius:8px;padding:9px 13px;display:flex;align-items:center;gap:10px;width:230px}.search span{font-size:22px;line-height:1}.search input{width:100%;min-width:0;border:0;outline:none;background:none;font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{background:#fff;border:1px solid #dfe5d5;border-radius:12px;overflow:hidden;transition:transform .2s}.card:hover{transform:translateY(-4px)}.cover{display:block;position:relative}.cover img{display:block;width:100%;aspect-ratio:1.6;object-fit:cover}.pill{position:absolute;left:13px;top:13px;background:#fffdf1e8;padding:3px 9px;border-radius:20px;font-size:9px;color:#3d604c}.card-body{padding:20px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.card h3{font-size:22px;letter-spacing:-.7px;margin:0}.favorite{border:1px solid #dce4d3;border-radius:50%;background:none;width:37px;height:37px;color:#819176;font-size:19px}.favorite[aria-pressed=true]{color:#b65b3d;background:#fae4d9;border-color:#ebbc9d}.description{font-size:12px;line-height:1.8;color:#839078;margin:12px 0 18px;min-height:65px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.card-bottom a{font-size:12px;color:#2f654c;font-weight:bold}.card-bottom small{font-size:10px;color:#97a08c}.closing{border-top:1px solid #d9dfd0;margin-top:48px;padding:34px 0;display:flex;gap:22px;align-items:center}.asterisk{font-size:47px;color:#ce915b}.closing h2{font-size:20px;letter-spacing:-.5px;margin:0}.closing p{font-size:12px;color:#8b967e;margin:5px 0}.closing>a{margin-left:auto;font-size:12px;color:#477054;white-space:nowrap}footer{display:flex;align-items:center;gap:28px;border-top:1px solid #d9dfd0;padding:30px 36px 40px;color:#8c9881;font-size:11px}footer .brand{font-size:17px;color:#42624c}footer nav{margin-left:auto;display:flex;gap:23px}#empty{padding:45px;background:#e9eee1;border-radius:10px;color:#74816f;text-align:center}.page{max-width:800px;padding-top:48px;padding-bottom:60px}.page h1{font-size:48px;letter-spacing:-2px;line-height:1.15}.page h2{font-size:22px;margin-top:28px}.page p,.page li{color:#687e69}.page a{text-decoration:underline}.player{background:#0f2424;color:#eef1e6;min-height:100dvh}.playbar{max-width:none;height:64px;padding:0 24px;display:flex;align-items:center;gap:25px;border-bottom:1px solid #344b43}.playbar .brand{font-size:18px}.playbar h1{font:600 15px Arial;letter-spacing:0;margin:0}.playbar a{font-size:12px}.playbar button{background:#294d3d;color:#e7eddd;border:1px solid #4b6e57;border-radius:6px;font-size:12px;padding:8px 12px;min-height:40px}.play-actions{display:flex;gap:12px;margin-left:auto;align-items:center}.game-area{padding:0;height:calc(100dvh - 136px);min-height:360px;max-width:1600px;margin:auto;background:#0a1920;position:relative}iframe{display:block;border:0;width:100%;height:100%;background:#0a1920}.game-area:fullscreen{height:100vh;max-width:none}.game-area:fullscreen iframe{height:100%}.instructions{max-width:1150px;margin:0 auto;padding:12px 22px;font-size:12px;color:#a2b9a5}.instructions summary{cursor:pointer;color:#d1ddce}.instructions p{margin:8px 0;max-width:850px}.instructions a{text-decoration:underline}.loading{position:absolute;inset:0;display:grid;place-content:center;color:#d8e2ce;background:#102426;font:15px Arial}.loading[hidden]{display:none}.notice{color:#f1c98b}.player footer{display:none}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{gap:30px}.featured img{height:280px}.edition{font-size:8px}.tools{align-items:start}.search{min-width:170px}.closing{flex-wrap:wrap}.closing>a{margin-left:69px}.top{gap:35px}.featured-info{padding:18px}}
@media(max-width:640px){.top{height:74px;padding:0 20px;gap:20px}.brand{font-size:20px}.brand-icon{font-size:27px}.top nav{margin-left:auto;gap:17px;font-size:12px}.edition{display:none}main{padding:0 20px}.hero{grid-template-columns:1fr;padding:38px 0 40px;gap:35px}.hero-copy .eyebrow{font-size:9px}h1{font-size:76px}.lede{font-size:15px}.featured{transform:none}.featured img{height:235px}.featured-info{padding:16px 20px}.featured-info h2{font-size:23px}.section-top h2{font-size:24px}.section-top{align-items:center}.tools{flex-direction:column;gap:14px;margin:21px 0}.search{width:100%}.filters{gap:2px}.filters button{padding:8px 11px;font-size:11px}.grid{gap:14px}.card-body{padding:14px}.card h3{font-size:18px}.favorite{width:30px;height:30px;font-size:17px;flex-shrink:0}.description{font-size:11px;min-height:100px;margin:10px 0 14px}.card-bottom{align-items:start;flex-direction:column;gap:6px}.card-bottom a{font-size:12px}.pill{font-size:8px;left:9px;top:9px}.closing{gap:14px;margin-top:35px;padding:25px 0}.closing h2{font-size:18px}.closing .asterisk{font-size:34px}.closing div{flex:1}.closing>a{margin-left:48px;font-size:11px;white-space:normal}footer{padding:25px 20px;gap:16px;flex-wrap:wrap}footer>span{display:none}footer nav{gap:16px;font-size:10px}.playbar{padding:8px 12px;gap:12px;height:auto;min-height:64px;flex-wrap:wrap}.playbar .brand{font-size:15px}.playbar h1{font-size:13px}.play-actions{gap:10px}.play-actions a,.play-actions button{font-size:11px}.game-area{padding:0;height:calc(100dvh - 160px);min-height:350px}.instructions{padding:10px 14px;font-size:11px}.page{padding-top:35px}.page h1{font-size:38px}}@media(max-width:350px){.grid{grid-template-columns:1fr}.description{min-height:0}.card-bottom{flex-direction:row}.top nav{gap:10px}h1{font-size:66px}.brand{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}.featured{transform:none}}

.player.focus-mode{overflow:hidden;height:100dvh}.player.focus-mode .playbar,.player.focus-mode .instructions{display:none}.player.focus-mode .game-area{position:fixed;inset:44px 0 0;height:calc(100dvh - 44px);min-height:0;z-index:500;margin:0;max-width:none;width:100%}#focus-exit{position:fixed;top:6px;right:12px;z-index:600;border:1px solid #53725d;border-radius:6px;padding:6px 14px;background:#294d3d;color:#e6eddf;font:12px Arial;cursor:pointer;min-height:32px}#focus-exit[hidden]{display:none}

/* Use the actual header height, including wrapped mobile controls. */
.player{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.playbar{flex:none;height:auto;min-height:64px}.player .game-area{flex:1;min-height:0;height:auto;width:100%;max-width:none;margin:0}.playbar h1{min-width:0}.play-actions{flex-wrap:wrap}.loading{text-align:center;gap:16px;padding:24px;z-index:5}.loading p{margin:0;max-width:430px;line-height:1.6}.loading a{text-decoration:underline;font-size:13px}.loading button,dialog button{padding:12px 18px;border-radius:7px;background:#285d48;color:white;border:1px solid #64846d;min-height:44px;font:600 14px Arial}dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #65806e;border-radius:16px;background:#f5f3e9;color:#233f35;padding:28px;font:15px/1.7 Arial}dialog::backdrop{background:#061819c9}dialog h2{font-size:24px;line-height:1.3;margin-top:0}.help-note{font-size:12px;color:#647568}#help-dialog{z-index:700}.favorite{min-width:44px;min-height:44px}.search:focus-within{outline:3px solid #bd6537;outline-offset:3px}
@media(max-width:640px){.playbar{gap:7px 12px;padding:8px 12px}.play-actions{width:100%;margin:0;justify-content:space-between;gap:6px}.play-actions button,.play-actions a{font-size:11px}.playbar button{padding:7px 10px;min-height:36px}.playbar h1{margin-left:auto}.play-actions a{padding:8px 0}.player.focus-mode .game-area{height:calc(100dvh - 44px)}}
@media(max-height:430px) and (min-width:641px){.playbar{min-height:48px;padding:4px 12px;gap:14px}.playbar button{min-height:36px}}

.description{color:#61715b}.card-bottom small{color:#65755e}.section-top>span,.quiet,.closing p{color:#68765f}footer{color:#65755e}.filters button{color:#62735d;min-height:44px}.filters button[aria-pressed=true]{color:white}.card .favorite{flex-shrink:0}.search input{font-size:14px}.hero .lede{color:#61715e}
