@font-face{font-family:Studio;src:local('Georgia')}*{box-sizing:border-box}html{background:#101819;color:#f2eee3;font-family:Arial,sans-serif}body{margin:0;background:radial-gradient(ellipse at 85% 0%,#31424070,transparent 60%),#101819}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:#233032;border:1px solid #64706b66;border-radius:12px;padding:12px 18px;min-height:44px;touch-action:manipulation}button:hover{filter:brightness(1.18)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{opacity:.4;cursor:default}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}[hidden]{display:none!important}#menu{max-width:1200px;padding:24px clamp(18px,4vw,60px) 40px;margin:auto;min-height:100dvh}nav{display:flex;gap:18px;justify-content:space-between;font-size:13px;padding:8px 0 24px;border-bottom:1px solid #ffffff18}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:48px 0 24px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--accent);font-weight:bold}h1{font-family:Studio,Georgia,serif;font-weight:normal;line-height:1.04;font-size:clamp(38px,5vw,66px);margin:20px 0}p{color:#bbc8c4;line-height:1.6}.hero img{width:100%;height:auto;border-radius:20px;border:1px solid #ffffff22;box-shadow:0 25px 80px #0007}.primary{background:var(--accent);color:#16211f;font-weight:bold;border:0;padding:16px 26px;font-size:17px}.share-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;align-items:center;font-size:13px}.share-tools button{padding:9px 14px;font-size:13px}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;border-top:1px solid #ffffff20;margin-top:28px;padding-top:22px}.how b{font-size:12px;color:var(--accent)}.how p{font-size:14px}.settings{display:flex;flex-wrap:wrap;align-items:center;gap:20px;background:#ffffff06;border:1px solid #ffffff15;border-radius:15px;padding:18px;margin-top:28px;font-size:13px}.settings label{display:flex;align-items:center;gap:10px}select{color:#f4f0e7;background:#203031;padding:10px;border-radius:8px;border:1px solid #5c6b62}input[type=range]{width:110px;accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent)}footer{font-size:11px;letter-spacing:2px;color:#849793;margin-top:28px}.activity-bar{font-size:12px}.playing{overflow:hidden}#playfield{position:fixed;inset:0;height:100dvh;padding:env(safe-area-inset-top) max(10px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(10px,env(safe-area-inset-left));background:radial-gradient(ellipse at 50% 20%,#2b3d39,#101819 80%);display:flex;flex-direction:column;z-index:10}.hud{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:6px 12px;border-bottom:1px solid #ffffff18}.hud strong{font-size:24px;color:var(--accent)}.hud small{font-size:12px;color:#cbd4cd}.hud button{padding:9px 14px}.live-players{position:absolute;right:22px;bottom:6px;font-size:9px;color:#aebdb4;pointer-events:none}#surface{flex:1;min-height:0;overflow:auto;width:100%;max-width:900px;margin:0 auto;padding:12px 8px 24px;display:flex;flex-direction:column;align-items:center;gap:10px}#status{min-height:24px;color:var(--accent);font-size:14px;text-align:center;margin:0;line-height:1.4}#prompt{font-family:Georgia,serif;font-size:clamp(20px,3.8vh,32px);text-align:center;margin:4px;line-height:1.3}#sub{font-size:13px;text-align:center;color:#bac7be;margin:0;line-height:1.4}.tilegrid{display:grid;gap:5px;width:min(100%,440px)}.tile{padding:0;min-height:0;aspect-ratio:1;border-radius:9px;font-size:clamp(19px,3.6vh,29px);font-weight:bold;background:linear-gradient(140deg,#f6e7c7,#cdb185);box-shadow:0 3px 0 #947b56,0 5px 10px #0003;color:#28332c;border:1px solid #f0dab7;position:relative}.tile.selected{background:var(--accent);box-shadow:0 0 0 3px #fff9;transform:translateY(-2px)}.tile.found{background:#416657;color:#e3f8ed;opacity:.6;box-shadow:none}.tile small{font-size:9px;position:absolute;bottom:3px;right:4px}#rack{display:flex;justify-content:center;gap:5px;max-width:440px;width:100%}#rack .tile{width:calc((100% - 30px)/7);max-width:58px;flex:none}#board{width:min(100%,58dvh,600px);gap:2px;grid-template-columns:repeat(11,1fr)}#board .tile{font-size:clamp(10px,2.3vh,21px);border-radius:3px;box-shadow:0 1px 0 #79664d}#board .empty{background:#243e38;border:1px solid #62756b55;color:#789c8c;font-size:8px;box-shadow:none}#board .pending{background:var(--accent);outline:2px solid white;z-index:1}.actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.actions button{padding:10px 16px;font-size:14px}.entry{font-size:clamp(24px,4vh,38px);min-height:45px;letter-spacing:5px;color:#f3dec0;max-width:100%;overflow-wrap:anywhere;text-align:center}.keyboard{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:min(100%,550px)}.keyboard .key{padding:6px 0;width:8.7%;min-height:42px;border-radius:6px;background:#344844;font-weight:bold}.guesses{display:flex;flex-direction:column;gap:4px}.guess{display:flex;gap:4px}.guess span{display:grid;place-items:center;width:35px;height:35px;border:1px solid #78857c;border-radius:5px;font-size:21px}.guess .exact{background:#367253}.guess .present{background:#a28536}.guess .absent{background:#35413e}.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;font-size:13px}.chip{background:#ffffff0b;border:1px solid #ffffff22;border-radius:20px;padding:7px 12px}.chip.done{text-decoration:line-through;color:var(--accent)}.groups{grid-template-columns:repeat(4,1fr)!important;width:min(100%,640px);gap:8px}.groups .tile{aspect-ratio:1.35;font-size:clamp(10px,2.6vw,18px);overflow-wrap:anywhere;padding:5px}.spell-options{display:flex;flex-direction:column;width:min(100%,440px);gap:16px}.spell-options button{font-size:clamp(18px,3vw,28px);padding:20px;background:#e6d9bd;color:#24352b;letter-spacing:1px}.scores{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.scores .active{border-color:var(--accent);color:var(--accent)}dialog{background:#172825;color:#f3efdf;border:1px solid #74887c;border-radius:20px;width:min(92vw,470px);padding:28px;text-align:center;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#081511dd;backdrop-filter:blur(8px)}dialog h2{font:32px Georgia,serif;margin-top:6px}dialog button{margin:5px}dialog p{white-space:pre-line}.level{color:var(--accent);letter-spacing:3px;font-size:12px}#boardHelp{font-size:10px}.best{font-size:12px;color:#9eb2a5;margin-top:18px}#boardModes{margin-top:15px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.timer-low{color:#ffad93!important}@media(max-width:650px){.hero{grid-template-columns:1fr;gap:22px;padding-top:24px}.hero img{max-height:220px;object-fit:cover}.how{grid-template-columns:1fr;gap:5px}.how article{display:flex;gap:14px;align-items:baseline}.how p{margin:5px 0}.settings{gap:15px;padding:14px}nav{font-size:12px}h1{margin:12px 0}.hero p{margin:10px 0}.primary{width:100%}#surface{padding-top:8px;gap:8px}#board{width:min(100%,52dvh)}.tilegrid{width:min(100%,43dvh)}.tilegrid.groups{width:100%}.groups .tile{aspect-ratio:1.3;font-size:11px}.hud{min-height:54px;padding:5px}#prompt{font-size:24px}#sub{font-size:12px}.keyboard .key{min-height:40px}.entry{font-size:28px;min-height:36px}}@media(max-height:520px) and (orientation:landscape){#surface{display:block;text-align:center;padding-top:5px;overflow:auto}.tilegrid,#rack,.keyboard{margin:10px auto}#board{width:min(70vh,360px)}.hud{min-height:42px}.hud strong{font-size:19px}#prompt{font-size:21px}.hero{padding-top:20px}#surface>.actions{margin:10px}#status{min-height:16px}}

.actions .primary{width:auto}

.puzzle-board{display:grid;gap:4px;width:min(100%,57dvh,580px);margin:auto;touch-action:manipulation}.puzzle-board button{aspect-ratio:1;padding:0;min-height:0;border-radius:5px;font-size:clamp(13px,3.3dvh,30px);font-weight:600;position:relative}.puzzle-board .cell{background:linear-gradient(135deg,#ede0c7,#b6a083);color:#21332c;border:1px solid #f4e6cc;box-shadow:0 2px 0 #74634d}.puzzle-board .dark{background:#263330;color:#c5cfc8;box-shadow:inset 0 2px 6px #0005;border-color:#52635a55}.puzzle-board .selected{outline:3px solid var(--accent);outline-offset:-3px;background:#4a6660;color:white}.puzzle-board .fixed{background:#314943;color:#e8e4d5}.puzzle-board .lit{background:var(--accent);box-shadow:0 0 18px #e0ba6470;color:#243127}.puzzle-board .wall{background:#101819;border:0;box-shadow:inset 1px 2px 3px #0007}.puzzle-board .goal{box-shadow:inset 0 0 0 3px #d8b56e}.puzzle-board .trail{background:#40514b}.puzzle-board .void{visibility:hidden}.puzzle-board .clue{display:flex;align-items:center;justify-content:center;font-size:clamp(10px,1.8dvh,16px);color:var(--accent);text-align:center}.puzzle-board .clue.col{white-space:pre-line;line-height:1.15}.puzzle-board svg{width:100%;height:100%;display:block}.vials{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;width:min(100%,520px);margin:auto}.vial{width:54px;height:174px;padding:8px 6px!important;display:flex;flex-direction:column-reverse;gap:4px;border:2px solid #bdccc080;border-top:0;border-radius:3px 3px 22px 22px;background:linear-gradient(90deg,#ffffff1a,transparent,#ffffff15)}.vial.selected{outline:3px solid var(--accent);transform:translateY(-7px)}.bead{height:31px;border-radius:50%;box-shadow:inset -5px -6px 8px #0005,inset 3px 3px 5px #ffffff70;flex-shrink:0;display:grid;place-items:center;color:#172323;font-size:14px;font-weight:bold}.puzzle-board.maze{gap:1px}.puzzle-board.maze button{font-size:clamp(10px,2dvh,19px);border-radius:2px}.puzzle-board.sudoku{gap:2px}.digits{display:flex;gap:7px;justify-content:center}.digits button{padding:8px 16px}#surface{justify-content:space-between}#surface>.actions{flex-shrink:0}.puzzle-board.nonogram{width:min(100%,54dvh,560px)}@media(max-height:520px){.puzzle-board{width:min(65dvh,400px)}.vials{margin:15px auto}.vial{height:138px}.bead{height:23px}} 

/* Responsive additions to the established Nerdania game shell. */
nav{flex-wrap:wrap}nav a{min-height:44px;display:flex;align-items:center}.hero>*{min-width:0}.hero img{object-fit:contain}.hud{flex:0 0 auto;gap:6px;padding:4px 6px;min-height:50px}.hud button{padding:8px 12px}.hud small{white-space:nowrap}.live-players{display:none}#surface{width:100%;max-width:none;padding:0;overflow:hidden;min-height:0;position:relative;display:block}#board{width:100%;height:100%;display:block;touch-action:none}#learning{height:100%;width:100%;max-width:980px;margin:auto;display:flex;flex-direction:column;align-items:center;padding:12px;gap:10px;overflow:auto}.kid-prompt{display:flex;align-items:center;gap:14px}.kid-prompt h2{font-size:clamp(20px,3.5dvh,34px);text-align:center;margin:4px}.speak{font-size:25px;min-width:48px}.kid-visual{font-size:clamp(30px,6dvh,65px);max-width:95%;text-align:center;line-height:1.2;min-height:0;overflow-wrap:anywhere}.kid-visual.swatch{width:90px;height:70px;border-radius:20px;border:5px solid #fff8;flex-shrink:0}.kid-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:650px;flex:1;min-height:160px;max-height:55dvh}.kid-choice{padding:8px;min-height:60px;font-size:clamp(28px,7dvh,72px);font-weight:bold;border:2px solid #ffffff55;background:linear-gradient(140deg,#fff7e6,var(--tile));color:#223548;box-shadow:inset 0 2px 0 #fff9,0 4px 0 #0003;border-radius:22px;display:flex;align-items:center;justify-content:center;position:relative}.kid-choice:disabled{opacity:.35}.kid-choice.lit{filter:brightness(1.8);transform:scale(.96);outline:5px solid white}.kid-choices.memory{grid-template-columns:repeat(3,minmax(0,1fr))}.kid-choices.sequence{grid-template-columns:repeat(3,minmax(0,1fr))}.kid-feedback{margin:0;text-align:center;min-height:24px}.fruit{display:block;width:70%;max-width:90px;aspect-ratio:1;border-radius:44%;box-shadow:inset -12px -10px 20px #0003,inset 8px 6px 10px #fff6}.balloon{display:block;max-width:120px;max-height:150px;min-height:24px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff8d7,#e59ba7 45%,#9e617c);position:relative}.balloon:after{content:'';position:absolute;top:100%;left:50%;height:10px;border-left:2px solid #815767}dialog{width:min(92vw,480px);max-height:90dvh;overflow:auto}dialog button{margin:8px}body[data-family=children] #playfield{background:radial-gradient(ellipse at top,#3b5661,#17293a)}@media(max-width:700px){.hero{grid-template-columns:1fr;gap:20px;padding:24px 0}.how{grid-template-columns:1fr;gap:8px}.how article{display:flex;align-items:baseline;gap:12px}#menu{padding:14px 16px 28px}.hero img{max-height:30dvh}.hero h1{font-size:38px}.hero p{margin:10px 0}.settings{gap:12px}.share-tools{gap:8px}.hud strong{font-size:20px}.hud small{font-size:11px}.kid-feedback{font-size:13px}}@media(max-height:500px) and (orientation:landscape){#learning{display:grid;grid-template-columns:1fr 2fr;grid-template-rows:auto 1fr auto;gap:5px;padding:5px}.kid-prompt{grid-column:1;grid-row:1}.kid-prompt h2{font-size:18px}.kid-visual{grid-column:1;grid-row:2;font-size:32px}.kid-choices{grid-column:2;grid-row:1/4;height:100%;max-height:none;min-height:0;gap:6px}.kid-choice{min-height:44px;font-size:30px;padding:3px}.kid-feedback{grid-column:1;grid-row:3}.hud{min-height:44px}.hud button{min-height:38px;padding:5px 10px}.fruit{max-width:50px}.kid-visual.swatch{margin:auto}.hero img{max-height:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.kid-choice.lit{transform:none}}

/* Nerdania responsive release: preserve scrolling menus and safe play bounds. */
html{max-width:100%;overflow-x:clip}body{max-width:100%;margin-left:0;margin-right:0}img{max-width:100%}nav{flex-wrap:wrap}nav a{overflow-wrap:anywhere}main>*{min-width:0}.hero>*{min-width:0}.hero img{object-fit:contain!important}.share-tools{flex-wrap:wrap}.settings{max-width:100%;flex-wrap:wrap}.settings>*{max-width:100%}dialog{max-height:90dvh;overflow:auto}.playing{height:100dvh;overflow:hidden}.playing #playfield{height:100dvh;max-width:100vw}.playing .hud{flex-shrink:0}.playing #surface{min-height:0}.live-players{max-width:90%;white-space:normal}@media(max-width:420px){.hud{gap:5px!important}.hud button{padding:8px 10px}.hud small{font-size:10px}.hero h1{overflow-wrap:anywhere}.share-tools a,.share-tools button{min-height:42px}#menu{padding-left:12px;padding-right:12px}#surface{max-width:100%}.settings{gap:12px}}

.live-players{display:block!important;top:auto!important;bottom:2px!important;right:12px!important;font-size:9px!important;opacity:.7;pointer-events:none}#learning{padding-bottom:18px}
