:root{--paper:#f5f1e8;--ink:#293e37;--soft:#72796a;--line:#d7d9cb;--orange:#bd5737;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:6px}header,main,footer{max-width:1440px;margin:auto;padding-left:48px;padding-right:48px}header{display:flex;align-items:center;gap:60px;height:106px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:5px;font:29px var(--serif);letter-spacing:-1px}.brand>span:last-child{font-style:italic}.brand-mark{font:44px var(--serif);color:var(--orange);margin-right:10px;line-height:1}nav{display:flex;gap:32px;font-size:12px}nav a{padding:10px 0}nav a:hover,footer>a:last-child:hover{color:var(--orange)}nav span{font-size:8px;color:var(--soft);vertical-align:super;margin-left:4px}.header-note{margin-left:auto;font-size:9px;letter-spacing:1.6px;color:var(--soft)}.hero{padding:62px 0 60px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;line-height:1.5;letter-spacing:1.8px;font-weight:600;color:var(--soft)}.hero .eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--orange);margin-right:7px}h1{font:clamp(48px,5.4vw,78px)/1.03 var(--serif);letter-spacing:-3px;font-weight:normal;margin:23px 0}h1 em{color:var(--orange);font-weight:normal}.lede{color:var(--soft);line-height:1.8;font-size:14px;margin:24px 0}.button{display:inline-flex;align-items:center;gap:35px;background:var(--ink);color:var(--paper);font-size:11px;padding:14px 19px;border-radius:4px}.button:hover{background:#3f5845}.button span{font-size:19px;line-height:1}.hero-doodle{position:relative;max-width:330px;width:32%;margin-right:50px}.hero-doodle>svg{display:block;width:100%;transform:rotate(-4deg)}.round-stamp{position:absolute;right:-24px;bottom:-10px;width:108px;height:108px;border:1px dashed #a0a38a;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:6px;letter-spacing:1px;transform:rotate(12deg)}.round-stamp>span{font-size:34px;color:var(--orange);line-height:1.5}.section-heading{display:flex;justify-content:space-between;align-items:center;padding:28px 0 25px;border-top:1px solid var(--line)}h2{font:34px/1.2 var(--serif);font-weight:normal;letter-spacing:-.8px;margin:8px 0 0}.surprise{background:transparent;border:1px solid #c8cbbc;color:var(--ink);padding:11px 15px;border-radius:4px;font-size:11px}.surprise span{margin-left:15px}.surprise:hover{background:#e9eadc}.game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.game-card{border:1px solid #cdd2c1;border-radius:9px;overflow:hidden;background:#fcfaf3;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #253d3110}.game-art{position:relative;display:block;overflow:hidden;background:#c4d1ad;aspect-ratio:640/410}.game-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s}.game-card:hover img{transform:scale(1.035)}.number{position:absolute;left:18px;top:18px;font-size:7px;letter-spacing:1.7px;color:#2e493d;background:#f5f2ddbf;border:1px solid #f5f2dd66;border-radius:3px;padding:6px 8px}.lantern .number,.moonpond .number,.xorchard .number{background:#1c2d36ba;border-color:#c2c5ad30;color:#e8d6b3}.play-icon{position:absolute;bottom:16px;right:16px;width:34px;height:34px;display:grid;place-items:center;background:#f9f6e8ed;border-radius:50%;font-size:21px;color:#354d3f}.new-tag{position:absolute;right:16px;top:20px;font-size:7px;letter-spacing:1px;background:#e9b79c;color:#593e39;padding:5px 6px;transform:rotate(6deg)}.card-copy{padding:23px 23px 20px}.tags{display:flex;flex-wrap:wrap;gap:7px 10px;font-size:7px;letter-spacing:1px;color:#798269}.tags span+span:before{content:'·';margin-right:10px}h3{font:29px/1.2 var(--serif);letter-spacing:-.8px;margin:13px 0 12px;font-weight:normal}h3 a:hover{color:var(--orange)}.card-copy p{color:#77806e;font-size:12px;line-height:1.8;margin:0 0 23px;min-height:65px}.play-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dedfd3;padding-top:15px;font-size:11px}.play-link span{font-size:20px;color:var(--orange)}.coming-next{display:flex;align-items:center;gap:20px;border:1px dashed #c5cdb8;border-radius:7px;padding:25px;margin-top:25px;background:#eeefe365}.seedling{font-size:36px;color:#8c9b72}.coming-next strong{font:19px var(--serif);font-weight:normal}.coming-next p{color:var(--soft);font-size:11px;margin:5px 0 0}.pencil-note{font:italic 17px var(--serif);color:#8f977b;margin-left:auto;transform:rotate(-4deg)}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;padding:53px 0 58px;max-width:1150px}.about h2{font-size:39px;margin-top:15px}.about h2 em{font-weight:normal;color:#798862}.about>div:last-child{padding-top:12px}.about p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--soft);max-width:590px}.about strong{font-weight:normal;color:#425a43}.little-promises{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:23px;font-size:9px;color:#6c7c59}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:24px;padding-bottom:28px;border-top:1px solid var(--line);color:var(--soft);font-size:9px}.footer-brand{font-size:20px;color:var(--ink)}footer>a:last-child{color:var(--orange)}.skip{position:fixed;top:-70px;left:15px;padding:10px 20px;background:var(--ink);color:white;z-index:10}.skip:focus{top:12px}@media(max-width:1100px){header,main,footer{padding-left:28px;padding-right:28px}header{gap:35px}.header-note{font-size:7px}.hero-doodle{margin-right:25px}.card-copy{padding:20px 17px}h3{font-size:25px}.card-copy p{min-height:86px}.tags{font-size:6px;gap:6px}.pencil-note{font-size:15px}}@media(max-width:760px){header,main,footer{padding-left:20px;padding-right:20px}header{height:86px;justify-content:space-between;gap:15px}.brand{font-size:25px}.brand-mark{font-size:36px;margin-right:5px}nav{gap:17px;font-size:10px}.header-note{display:none}.hero{padding:36px 0 37px}.hero .eyebrow{font-size:7px;letter-spacing:1.1px;max-width:275px;line-height:1.8}h1{font-size:50px;letter-spacing:-2px;margin:21px 0}.lede{font-size:12px;max-width:340px}.lede br{display:none}.hero-doodle{display:none}.button{font-size:10px;padding:12px 15px;gap:22px}h2{font-size:30px}.section-heading{padding:24px 0 22px}.section-heading .eyebrow{font-size:8px}.surprise{font-size:9px;padding:9px}.surprise span{margin-left:6px}.game-grid{grid-template-columns:1fr;gap:24px}.game-art{aspect-ratio:640/360}.card-copy{padding:22px}.card-copy p{min-height:0;font-size:12px}.tags{font-size:7px}h3{font-size:31px}.coming-next{padding:20px 16px;gap:14px}.coming-next strong{font-size:17px}.coming-next p{font-size:10px}.pencil-note{display:none}.about{grid-template-columns:1fr;gap:10px;padding:36px 0}.about h2{font-size:37px}.about p:not(.eyebrow){font-size:12px}.little-promises{gap:12px;font-size:8px}footer{flex-wrap:wrap;gap:14px}.footer-brand{font-size:19px}footer>span{order:3;width:100%;font-size:8px}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.pocket-intro{display:flex;align-items:center;gap:19px;padding:20px 23px;margin:0 0 24px;background:#e9ebdd;border-radius:7px}.pocket-intro h3{font-size:24px;margin:0 0 7px}.pocket-intro p{margin:0;font-size:11px;color:var(--soft);max-width:570px}.pocket-mark{font-size:50px;line-height:1;color:#718368}.pocket-label{margin-left:auto;white-space:nowrap;font-size:8px;letter-spacing:1px;color:var(--soft)}.pocket-card .number{background:#172536bb;border-color:#e6d7ac44;color:#f1dfbb}.pocket-grid .corner-rush{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.pocket-grid .corner-rush .game-art{height:100%;min-height:290px}.pocket-grid .corner-rush .card-copy{display:flex;flex-direction:column;justify-content:center;padding:35px}.returning{margin-top:35px}.pocket-grid .corner-rush .card-copy p{min-height:0}@media(max-width:760px){.pocket-intro{padding:18px 16px;gap:12px;align-items:flex-start}.pocket-intro h3{font-size:24px;line-height:1.2}.pocket-label{display:none}.pocket-intro p{font-size:10px;line-height:1.8}.pocket-grid .corner-rush{display:block}.pocket-grid .corner-rush .game-art{height:auto;min-height:0}.pocket-grid .corner-rush .card-copy{padding:22px}}

[hidden]{display:none!important}.imported-heading{margin-top:35px}.game-finder{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px;padding:16px 0;border-bottom:1px solid var(--line)}.game-finder label{font-size:11px;font-weight:bold}.game-finder input{flex:1;min-width:180px;max-width:440px;border:1px solid #bfc7b3;border-radius:5px;background:#fcfaf3;color:var(--ink);padding:12px;font:14px Arial}.game-finder input:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.game-finder span{font-size:10px;color:var(--soft);margin-left:auto}#no-games{padding:25px;background:#e9ebdd;border-radius:7px}.imported-grid .number{background:#1c2d36ba;border-color:#c2c5ad30;color:#e8d6b3}@media(max-width:760px){.game-finder label{width:100%}.game-finder input{min-width:0;width:100%;flex-basis:100%}.game-finder span{margin-left:0}.imported-heading h2{max-width:300px}}

.gentle-welcome{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;background:#e8eddc;border:1px solid #ced6bd;border-radius:20px;padding:28px;margin:10px 0 40px}.gentle-welcome h2{font:32px/1.15 Georgia,serif;margin:6px 0 14px}.gentle-welcome p{font-size:15px;line-height:1.7;max-width:590px}.gentle-starts{display:grid;gap:9px;align-content:center}.gentle-starts a{font-size:15px;padding:13px 16px;border:1px solid #aabb9b;background:#fbfcf2;border-radius:10px;text-decoration:none;min-height:48px}.shelf-bar{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0 22px}.shelf-bar button,.save-game{font:14px/1.4 system-ui,sans-serif;min-height:44px;border:1px solid #adb8a0;background:transparent;color:inherit;padding:10px 16px;border-radius:24px;cursor:pointer}.shelf-bar button[aria-pressed=true]{background:#425f4d;color:#fff}.card-choices{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px}.save-game{margin-left:auto;font-size:13px;padding:8px 12px}.save-game[aria-pressed=true]{background:#e3ead7}.gentle-tag{font-size:10px;letter-spacing:1px;color:#45604c}.recent-games{padding:18px 20px;margin-bottom:24px;border:1px dashed #a8b596;border-radius:14px}.recent-games p{font-size:10px;letter-spacing:1.2px;margin:0 0 12px}.recent-games>div{display:flex;gap:10px;flex-wrap:wrap}.recent-games a{font-size:14px;padding:10px 12px;min-height:44px;border-radius:8px;background:#ecefdf;color:inherit;text-decoration:none}.shelf-bar button:focus-visible,.save-game:focus-visible,.gentle-starts a:focus-visible,.recent-games a:focus-visible{outline:3px solid #a97430;outline-offset:3px}@media(max-width:700px){.gentle-welcome{grid-template-columns:1fr;padding:22px;gap:10px}.gentle-welcome h2{font-size:29px}.shelf-bar button{flex:1 1 auto}.recent-games a{flex:1 1 120px}}

#card-room+.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){#card-room+.game-grid{grid-template-columns:1fr}}

.jam-grid{grid-template-columns:1fr!important}.jam-grid .game-card{display:grid;grid-template-columns:1.1fr 1fr;align-items:center}.jam-grid .game-art{height:100%}.jam-grid .game-art img{height:100%;object-fit:cover}.jam-grid .card-copy{padding:35px}.night-invitation{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:30px;border:1px solid #d7c5b3;border-radius:18px;background:#f1e4d6;margin:30px 0 45px}.night-invitation h2{font:30px Georgia;margin:10px 0}.night-invitation p{max-width:650px;line-height:1.6}.night-invitation>a{display:inline-block;flex-shrink:0;background:#765661;color:#fff7e7;padding:16px 23px;border-radius:12px;text-decoration:none}@media(max-width:760px){.jam-grid .game-card{display:block}.jam-grid .card-copy{padding:25px}.night-invitation{display:block;padding:23px}.night-invitation>a{margin-top:15px}}

.sudoku-welcome{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;border:1px solid #ced8c9;background:#eaf0e3;padding:35px;border-radius:18px;margin:25px 0 32px}.sudoku-welcome h2{font:39px Georgia,serif;margin:8px 0 16px}.sudoku-welcome p{line-height:1.65;max-width:540px}.wsrf-library{border-left:1px solid #bccdbb;padding-left:35px}.wsrf-library h3{font:28px Georgia,serif;margin:10px 0}.wsrf-library a{color:#315e5d;text-underline-offset:5px;font-weight:600}.returning-stories{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0 28px}.returning-stories>p{flex-basis:100%;font:10px system-ui;letter-spacing:.16em;color:#617263;margin-bottom:0}.returning-stories>a{display:grid;gap:8px;flex:1;min-width:250px;padding:20px 24px;background:#fffaf0;border:1px solid #cbd6c4;border-radius:14px;text-decoration:none;color:#294d48}.returning-stories strong{font:24px Georgia,serif}.returning-stories span{font:13px/1.5 system-ui;color:#526b60}@media(max-width:700px){.sudoku-welcome{grid-template-columns:1fr;padding:25px;gap:25px}.sudoku-welcome h2{font-size:32px}.wsrf-library{border-left:0;border-top:1px solid #bccdbb;padding:25px 0 0}}

.wsrf-starters{display:flex;gap:10px 18px;flex-wrap:wrap;margin-top:18px}.wsrf-starters a{font-size:12px;font-weight:500}

.shader-welcome{margin:32px 0 38px;padding:30px;border-radius:20px;background:#231c23;color:#f5e5d9;display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:center;overflow:hidden}.shader-welcome h2{font:38px Georgia,serif;margin:12px 0}.shader-welcome p{max-width:580px;line-height:1.7;font-size:14px;color:#d0beb5}.shader-welcome .eyebrow{color:#e3b499}.shader-welcome .button{background:#e6b59c;color:#241919;border-color:#e6b59c;font-size:13px}.shader-links{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;margin-top:22px}.shader-links a{color:#e6bfa8}.shader-preview{display:block}.shader-preview img{width:100%;height:auto;border-radius:12px;display:block}@media(max-width:700px){.shader-welcome{grid-template-columns:1fr;padding:22px;gap:22px}.shader-welcome h2{font-size:32px}.shader-preview{grid-row:1}.shader-welcome .button{font-size:12px}.shader-links{flex-direction:column;gap:14px}}

/* A clear front door to every shelf, including the linked collections. */
header{height:auto;min-height:106px;gap:30px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px}header nav{gap:8px 22px;flex-wrap:wrap;font-size:14px}header nav a{min-height:44px;display:inline-flex;align-items:center;gap:3px;padding:10px 2px}header nav a[aria-current]{color:var(--orange);box-shadow:inset 0 -2px var(--orange)}.header-note{font-size:8px}#games-title:focus{outline:none}#games>.section-heading:first-child{padding-top:24px}.linked-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:18px 0 30px}.linked-card{padding:22px;border:1px solid #c5ccbd;border-radius:12px;background:#fcfaf3;display:flex;flex-direction:column}.linked-card small{font:10px system-ui;letter-spacing:.07em;text-transform:uppercase;color:#66755e}.linked-card h4{font:24px/1.2 Georgia,serif;margin:12px 0}.linked-card h4 a{text-decoration:underline;text-decoration-color:#bdc8b3;text-underline-offset:5px}.linked-card p,.linked-note{font-size:14px;line-height:1.65;color:#536454}.linked-card .card-choices{margin-top:auto;padding-top:12px}#linked-title{margin-top:25px}#finder-save-note{padding:12px;border:1px solid var(--orange);border-radius:8px}@media(max-width:1000px){.header-note{display:none}.linked-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){header{gap:12px;align-items:flex-start;padding-top:16px;padding-bottom:12px}header nav{width:100%;gap:4px 18px;font-size:14px}.hero{padding-top:26px;padding-bottom:25px}.linked-grid{grid-template-columns:1fr}.game-finder span{font-size:12px}.shelf-bar{gap:8px}.shelf-bar button{padding:10px 12px}}

/* A quiet doorway to the indexed worlds. */
.world-welcome{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:center;margin:2rem 0;padding:2.5rem;background:#e3e8dc;border:1px solid #bfcbb9;border-radius:10px}
.world-welcome h2{font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.12;margin:.7rem 0 1rem}.world-welcome p:not(.eyebrow){max-width:40rem;line-height:1.7}.world-welcome .button{margin-top:.5rem}
.world-contours{position:relative;min-height:230px;overflow:hidden;background:#203d3c;border-radius:50% 46% 48% 43%;color:#ecc990}.world-contours i{position:absolute;inset:12%;border:1px solid #c9ba7e88;border-radius:47% 32% 55% 41%;transform:rotate(-18deg)}.world-contours i:nth-of-type(2){inset:20%;transform:rotate(6deg)}.world-contours i:nth-of-type(3){inset:29%;transform:rotate(26deg)}.world-contours i:nth-of-type(4){inset:37%;transform:rotate(44deg)}.world-contours i:nth-of-type(5){inset:44%}.world-contours span{position:absolute;inset:15% auto auto 19%;font:italic 26px Georgia,serif}.world-contours small{position:absolute;inset:auto 10% 12% auto;font:10px/1.6 monospace;letter-spacing:2px}
@media(max-width:650px){.world-welcome{grid-template-columns:1fr;padding:1.4rem}.world-contours{min-height:170px;max-width:360px;width:100%;justify-self:center}}

.proving-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.proving-note{margin:18px 0 38px;padding:18px 22px;border:1px solid #cfd3c2;border-radius:12px;background:#eef0e3;font-size:12px;line-height:1.7;color:#5f6a58}.proving-note a{color:#315e5d;font-weight:600;text-underline-offset:4px;text-decoration:underline}@media(max-width:760px){.proving-grid{grid-template-columns:1fr}.proving-note{padding:16px}}

.prime-creations-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.prime-creations-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.prime-creations-grid{grid-template-columns:1fr}}
