:root{--accent:#327969}
/* Native WebKit select chrome can ignore the shared minimum height. */
#level{
  -webkit-appearance:none;
  appearance:none;
  height:48px;
  min-height:48px;
  max-width:100%;
  padding:10px 44px 10px 16px;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
  background-position:calc(100% - 20px) center,calc(100% - 14px) center;
  background-size:6px 6px;
  background-repeat:no-repeat;
}
*{box-sizing:border-box} :root{font-family:ui-rounded,"Trebuchet MS",Arial,sans-serif;color:#203447;background:#f6f8f5;font-size:18px;font-synthesis:none} body{margin:0} button,select{font:inherit;color:inherit} button,select,.home-link{min-height:48px} button{border:2px solid #c9d5db;border-radius:12px;background:#fff;padding:10px 16px;font-weight:700;cursor:pointer} button:hover:not(:disabled){background:#edf4fb;border-color:var(--accent)} button:disabled{cursor:default;color:#617077;background:#edf1f2;border-color:#d5dee2} button[aria-pressed="true"]{background:#e2f0f9;border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)} button.primary{color:white;background:var(--accent);border-color:var(--accent)} button.primary:hover:not(:disabled){filter:brightness(.93);background:var(--accent)} :focus-visible{outline:3px solid #102c73;outline-offset:3px} [hidden]{display:none!important} .game-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:64px;padding:8px 24px;background:#fff;border-bottom:1px solid #dbe3e5}.home-link{display:inline-flex;align-items:center;color:#264964;text-decoration:none;font-size:.88rem;font-weight:700;flex:none}.cp-profile-slot{margin-left:auto}.game-title{font-size:.88rem;font-weight:700;color:var(--accent)}main{max-width:1000px;margin:auto;padding:28px 24px 32px}.eyebrow,.progress{font-size:.82rem;color:#526778;margin:0 0 8px} h1{font-size:clamp(2rem,5vw,3rem);line-height:1.08;margin:0 0 16px;letter-spacing:-.035em}h2{font-size:1.45rem;line-height:1.25;margin:0 0 12px}p{line-height:1.45}.welcome{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;min-height:480px}.intro{font-size:1.25rem;max-width:30ch}.setup{background:#fff;border:1px solid #d4e0e0;border-radius:24px;padding:24px;box-shadow:0 7px 0 #e7efeb}.setup fieldset{border:0;padding:0;margin:0 0 22px}.setup legend{font-weight:700;margin-bottom:10px}.options{display:flex;gap:8px;flex-wrap:wrap}.setup label{display:block;font-weight:700;margin:10px 0 6px}select{width:100%;max-width:100%;border:2px solid #c9d5db;border-radius:10px;background:white;padding:8px}.setup .primary{width:100%;margin-top:12px}.small{font-size:.82rem;color:#526778}.art{max-width:360px;margin:20px 0}.art svg{width:100%;height:auto;display:block}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}.toolbar button{font-size:.88rem}.round-head{display:flex;gap:16px;justify-content:space-between;align-items:start}.round-head p{margin:0 0 6px}#prompt:focus{outline:3px solid #102c73;outline-offset:5px;border-radius:4px}.play-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.8fr);gap:24px;margin-top:18px}.board,.side{background:#fff;border:1px solid #d4e0e0;border-radius:20px;padding:22px;min-width:0}.side{display:flex;flex-direction:column;gap:12px}.side p{margin:0}.feedback{min-height:2.8em;font-size:.95rem;line-height:1.4}.feedback.good{color:#215f4f;font-weight:700}.feedback.try{color:#734d16}.actions{display:flex;flex-wrap:wrap;gap:8px}.actions button{flex:1}.help-box{margin-top:16px;padding:20px;background:#eaf3ff;border:2px solid #b9ceeb;border-radius:18px}.help-box h2{font-size:1.15rem}.help-box p{margin:8px 0}.example{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.example span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;background:white;border:2px solid #bdd0dc;border-radius:10px;font-weight:700;font-size:1.3rem}.ending{max-width:680px;margin:40px auto;padding:32px;background:white;border:2px solid #c9e3d6;border-radius:24px;text-align:center}.ending p{max-width:42ch;margin:16px auto}.ending .art{margin:20px auto}.recovery{max-width:640px;margin:50px auto;padding:25px;border:2px solid #c9d5db;background:white;border-radius:20px}.static-guide{max-width:1000px;margin:0 auto;padding:18px 24px 30px;border-top:1px solid #dbe3e5;font-size:.85rem;color:#526778}.static-guide h2{font-size:1rem}.static-guide p{margin:8px 0}.model{min-height:48px;padding:10px 14px;border-radius:12px;background:#eff6f2;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.12em}.model.hidden-word{letter-spacing:.02em;font-size:.9rem;color:#526778}.controls-label{font-size:.82rem;font-weight:700;color:#526778;margin:12px 0 8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:650px){main{padding:22px 14px}.game-bar{padding:8px 14px}.game-title{display:none}.welcome{grid-template-columns:1fr;gap:12px;min-height:0}.welcome .intro{margin-bottom:8px}.art{max-width:230px;margin:14px auto}.setup{padding:18px}.play-grid{grid-template-columns:1fr;gap:12px;margin-top:12px}.board,.side{padding:16px}.toolbar{margin-top:12px}.round-head{gap:8px}.static-guide{padding:16px 14px}.ending{margin:20px auto;padding:22px}.side{gap:10px}.feedback{min-height:0}}@media(max-width:360px){:root{font-size:16px}.game-bar{padding:6px 10px}.board,.side{padding:12px}.toolbar button{padding:9px 12px}.setup{padding:16px}}@media(max-height:440px) and (min-width:651px){:root{font-size:16px}.game-bar{min-height:48px;padding:0 16px}main{padding:10px 16px 18px}.welcome{min-height:0;gap:24px;align-items:start}.welcome .art{display:none}.welcome h1{font-size:2rem;margin-bottom:8px}.intro{font-size:1rem;margin:6px 0}.setup{padding:14px}.setup label{margin:4px 0}.setup fieldset{margin-bottom:8px}.setup .primary{margin-top:6px}.play-grid{gap:14px;margin-top:8px;grid-template-columns:minmax(0,1.45fr) minmax(245px,1fr)}.board,.side{padding:10px 14px;border-radius:14px}.side{gap:8px}.round-head h2{font-size:1.2rem;margin-bottom:0}.round-head .progress{margin:0}.toolbar{margin-top:8px;gap:6px}.toolbar button{min-height:48px;padding:8px 12px}.feedback{font-size:.86rem;min-height:0}.model{min-height:36px;padding:5px 10px}.controls-label{margin:6px 0}.ending{margin:10px auto;padding:20px}.ending .art{display:none}.ending p{margin:10px auto}.static-guide{margin-top:8px}}
.scene{height:235px;position:relative;background:linear-gradient(#edf7fc 0 74%,#e5f0d9 74%);border-radius:16px;border:1px solid #d7e6e7;overflow:hidden}.tree{position:absolute;left:50%;top:58px;width:75px;height:128px;transform:translateX(-50%)}.leaves{position:absolute;width:75px;height:76px;border-radius:45%;background:#78ac7d;z-index:2}.leaves:after{content:"";position:absolute;background:#8cbe8a;width:40px;height:40px;top:-7px;left:18px;border-radius:50%}.trunk{position:absolute;top:47px;left:31px;width:14px;height:78px;background:#ad7e53;border-radius:6px}.tree-label{position:absolute;top:157px;left:50%;transform:translateX(-50%);font-size:.76rem;background:#fff9;padding:1px 7px;border-radius:5px}.scene-animal{position:absolute;width:58px;min-height:47px;display:flex;align-items:center;flex-direction:column;font-size:.78rem;font-weight:700;transform:translateX(-50%);z-index:3;gap:2px}.scene-animal.above{left:50%;top:4px}.scene-animal.below{left:50%;top:185px}.scene-animal.left{left:15%;top:96px}.scene-animal.right{left:85%;top:96px}.scene-animal.shared-place.bird{margin-left:-20px}.scene-animal.shared-place.fox{margin-left:20px}.bird-drawing{width:32px;height:21px;background:#5793bd;border-radius:60% 70% 40% 55%;display:block;position:relative}.bird-drawing:before{content:"";position:absolute;background:#1f3d51;width:4px;height:4px;right:5px;top:5px;border-radius:50%}.bird-drawing:after{content:"";position:absolute;right:-7px;top:7px;border-left:9px solid #d99e36;border-top:4px solid transparent;border-bottom:4px solid transparent}.fox-drawing{width:32px;height:27px;background:#d99051;clip-path:polygon(0 0,30% 15%,70% 15%,100% 0,88% 76%,50% 100%,12% 76%);display:block;position:relative}.fox-drawing:before,.fox-drawing:after{content:"";position:absolute;background:#283c3f;width:4px;height:4px;top:12px;border-radius:50%}.fox-drawing:before{left:9px}.fox-drawing:after{right:9px}.basket-art{position:absolute;right:7px;bottom:8px;width:75px;min-height:45px;background:#ddba87;border:3px solid #ac8150;border-radius:6px 6px 15px 15px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:3px}.basket-label{font-size:.69rem;font-weight:700}.apple{display:inline-block;width:12px;height:12px;border-radius:45%;background:#c96752;position:relative}.apple:before{content:"";width:2px;height:4px;background:#49745a;position:absolute;top:-3px;left:5px}#apple-dots{display:flex;justify-content:center;gap:3px;flex-wrap:wrap;min-height:12px}.scene-text{font-size:.76rem;line-height:1.3;color:#526778;margin:8px 0 12px}.object-buttons,.places{display:flex;gap:8px;flex-wrap:wrap}.object-buttons button{flex:1}.places{display:grid;grid-template-columns:1fr 1fr}.places button{font-size:.88rem;padding:8px}.places button[aria-disabled="true"]{background:#f1f4f4;color:#5f737b;cursor:default}.counter{display:flex;align-items:center;gap:12px}.counter button{font-size:1.5rem;min-width:52px;padding:6px 14px}.counter output{text-align:center;flex:1;font-weight:700}.hint-text{padding:12px;border-radius:10px;background:#e8f4ec;line-height:1.5}.scene-animal span:last-child{background:#ffffffb8;border-radius:5px;padding:0 3px}@media(min-width:800px) and (min-height:441px){.play-grid{grid-template-columns:minmax(0,1.55fr) minmax(240px,.85fr)}}@media(max-height:440px) and (min-width:651px){.play-grid{grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr)}#board{display:grid;grid-template-columns:1fr 1.3fr;gap:6px 12px;align-items:start}.scene{grid-column:1;grid-row:1/7;height:224px}.scene-text{grid-column:1;grid-row:7;font-size:.7rem;margin:0}#animal-label{grid-column:2;grid-row:1;margin:0}#objects{grid-column:2;grid-row:2}#place-label{grid-column:2;grid-row:3;margin:0}#places{grid-column:2;grid-row:4}#apple-controls{grid-column:2;grid-row:5/7}.places{gap:6px}.places button{padding:6px 8px;font-size:.8rem}.object-buttons button{padding:6px 8px;font-size:.9rem}.scene-animal.left{left:20%}.scene-animal.right{left:80%}.tree{width:60px}.leaves{width:60px;height:67px}.leaves:after{left:10px}.trunk{left:24px}.basket-art{width:52px;right:4px}.scene-animal.below{top:177px}.tree-label{top:150px}.counter{gap:6px}.counter button{min-width:48px}.counter output{font-size:.85rem}.hint-text{padding:8px;font-size:.88rem}}
/* Keep the scene and its primary action together on a portrait phone. */
@media (max-width:650px) and (min-height:441px){
  main{padding-top:10px}.round-head h2{font-size:1.2rem;margin-bottom:6px}
  #board{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:6px 10px;padding:12px}
  #scene{grid-column:1/-1;height:168px}
  #scene-text{grid-column:1/-1;margin:0;font-size:.72rem}
  #animal-label{grid-column:1;grid-row:3;margin:0;font-size:.72rem}
  #place-label{grid-column:2;grid-row:3;margin:0;font-size:.72rem}
  #objects{grid-column:1;grid-row:4;flex-direction:column;gap:6px}
  #objects button{padding:8px}
  #places{grid-column:2;grid-row:4;gap:6px}
  #places button{font-size:.8rem;padding:6px}
  #apple-controls{grid-column:1/-1}
  #apple-controls .controls-label{margin:2px 0 4px}
  .tree{top:44px;width:56px;height:80px}.leaves{width:56px;height:50px}.leaves:after{width:32px;height:32px;left:12px;top:-5px}
  .trunk{top:30px;left:23px;width:11px;height:48px}.tree-label{top:102px;font-size:.7rem}
  .scene-animal{font-size:.7rem;gap:0;min-height:36px}.scene-animal.above{top:2px}.scene-animal.below{top:128px}.scene-animal.left,.scene-animal.right{top:65px}
  .bird-drawing{width:27px;height:19px}.fox-drawing{width:27px;height:23px}
  .basket-art{min-height:39px;width:66px;bottom:4px}.side{padding:10px;gap:8px}.side > .actions:first-of-type{order:-1}.play-grid{margin-top:8px;gap:8px}.feedback{font-size:.88rem}
}
