:root{--ink:#21443b;--ink-soft:#5a7363;--forest:#194e40;--leaf:#458861;--cream:#fff9e9;--paper:#fffdf4;--line:#c8d9b3;--red:#c94848;--gold:#e9b75c;--blue:#5597ae;--shadow:0 14px 28px #15382b2a;--radius:23px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;width:100%}body{font:16px/1.35 'Trebuchet MS',Verdana,sans-serif;color:var(--ink);background:#a4cba1;overflow:hidden}button{font:inherit;cursor:pointer}button:focus-visible{outline:4px solid #ebaf4c;outline-offset:3px}button:disabled{opacity:.44;cursor:default}[hidden]{display:none!important}.forest{position:fixed;inset:0;overflow:hidden;z-index:-1;background:linear-gradient(#a5d7d1 0%,#d3e9b7 47%,#a4c989 100%)}.sun{position:absolute;right:13%;top:8%;width:140px;height:140px;border-radius:50%;background:#fff0b1;box-shadow:0 0 0 35px #fff0b128,0 0 80px #fff4c6}.hill{position:absolute;left:-8%;width:116%;border-radius:50% 50% 0 0}.hill-back{height:38%;bottom:-15%;background:#92bc83;transform:rotate(-4deg)}.hill-front{height:34%;bottom:-22%;background:#6da675;transform:rotate(5deg)}.sprigs{position:absolute;inset:0;opacity:.24;background-image:radial-gradient(#fff9ca 2px,transparent 3px),radial-gradient(#e8aeb1 2px,transparent 3px);background-size:120px 95px,170px 110px;background-position:20px 50px,80px 30px}.app{height:100dvh;max-height:100dvh;display:flex;flex-direction:column;padding:11px clamp(12px,2vw,30px) 15px;gap:10px}.topbar{flex:none;min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:2px solid #ffffff66;padding:0 5px 10px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;color:#fff4bd;background:#d35b52;border:3px solid #fff5d8;box-shadow:0 3px 0 #963e3c;font-size:26px}.brand-small,.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:900;color:#316b52}.brand h1{font:700 clamp(23px,2.7vw,34px)/.95 Georgia,serif;letter-spacing:-.04em;margin:2px 0 0;color:#214b3e;text-shadow:0 1px #fff9}.brand h1 em{font-weight:400;font-style:italic;color:#a84345}.top-actions{display:flex;align-items:center;gap:7px}.chapter{background:#fff8e1;border:2px solid #f4e7bb;border-radius:20px;padding:8px 13px;white-space:nowrap;font-size:12px;font-weight:800;color:#547756;box-shadow:0 3px 0 #8eab81}.round-control{height:38px;min-width:38px;border-radius:50%;border:2px solid #fff6d8;background:#fef8dc;color:#3e6952;box-shadow:0 3px 0 #799a78;font-weight:900;font-size:18px}.round-control:hover{transform:translateY(-1px)}.game-shell{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(265px,27vw,325px);gap:12px;max-width:1430px;width:100%;margin:auto}.game-area,.side-panel{min-height:0;border:3px solid #f8efcc;border-radius:var(--radius);box-shadow:0 6px 0 #3b735b55,var(--shadow)}.game-area{position:relative;display:flex;flex-direction:column;align-items:center;overflow:hidden;padding:12px 16px 8px;background:radial-gradient(circle at 50% 15%,#eef6d3 0%,#d7e9b6 58%,#bdd99c 100%)}.game-area:before,.game-area:after{position:absolute;content:'✿';color:#ffffff88;font-size:40px}.game-area:before{left:7%;bottom:10%}.game-area:after{right:6%;top:24%;font-size:25px}.scene-top,.scene-bottom{width:100%;max-width:840px;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:2}.scene-top{flex:none;min-height:48px}.scene-top h2{margin:1px 0;font:700 clamp(20px,2vw,27px)/1.05 Georgia,serif;color:#265543}.goal-badge{background:#fff9e9;border:2px solid #e9d9a6;border-radius:15px;padding:7px 10px;font-size:12px;font-weight:800;max-width:48%;box-shadow:0 3px 0 #d2c28f}.goal-badge span{color:#b94849}.board-wrap{flex:1;min-height:0;width:100%;display:grid;place-items:center;position:relative}.board{--board-size:min(calc(100dvh - 205px),calc(100vw - 310px),670px);position:relative;width:var(--board-size);height:var(--board-size);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));padding:6px;border:8px solid #8d5d3c;border-radius:20px;background:#91bd76;box-shadow:0 5px 0 #5e3c2e,0 12px 20px #29442b38,inset 0 0 0 3px #d3ad67;touch-action:none;user-select:none}.board:before{position:absolute;content:'';inset:0;border-radius:10px;pointer-events:none;box-shadow:inset 0 0 30px #3a6a3a77;z-index:4}.cell{position:relative;min-width:0;min-height:0;border:1px solid #4b8e5b4d;background:linear-gradient(145deg,#a7cf8b,#93bf78);display:grid;place-items:center;padding:0;color:inherit;overflow:visible;touch-action:none}.cell:nth-child(odd){background:linear-gradient(145deg,#a9ce8b,#98c17b)}.cell:hover:not(.blocked){background:#c4d992}.cell.selected{box-shadow:inset 0 0 0 4px #f8db7a;z-index:3}.cell.guide-target{animation:glow 1.25s ease-in-out infinite;z-index:3}.cell.hint-target{box-shadow:inset 0 0 0 4px #f4d163;z-index:3}.cell.danger{box-shadow:inset 0 0 0 3px #c4564d}.cell:after{content:'';position:absolute;inset:4px;border:1px dashed #e1f0bf4d;pointer-events:none}.cell svg{position:relative;width:100%;height:100%;overflow:visible;z-index:1}.cell.occupied:after{display:none}.board-decoration{position:absolute;width:70px;height:140px;opacity:.34;pointer-events:none}.board-decoration-left{left:2%;bottom:7%;border-left:7px solid #448758;border-radius:50%;transform:rotate(-22deg)}.board-decoration-right{right:2%;top:7%;border-right:7px solid #448758;border-radius:50%;transform:rotate(22deg)}.scene-bottom{min-height:25px;flex:none;color:#426d50;font-size:12px;font-weight:800}.text-button{border:0;background:transparent;color:#376c53;text-decoration:underline;font-size:11px;font-weight:800;white-space:nowrap}.side-panel{display:flex;flex-direction:column;gap:8px;padding:10px;background:#fff9e8;overflow:hidden}.coach{flex:none;background:#fce2a7;border:2px solid #e6b96d;border-radius:17px;padding:8px 10px;box-shadow:0 3px 0 #d49b59}.coach-top{display:flex;align-items:center;gap:6px}.coach-symbol{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#ca5b51;color:white}.coach-top strong{flex:1;font:700 16px Georgia,serif}.coach-top button{border:0;background:transparent;color:#8a653e;font-size:20px;line-height:1}.coach p{margin:5px 0;font-size:12px;line-height:1.3;color:#6c5636;font-weight:700}.coach-skip{border:0;background:transparent;padding:0;text-decoration:underline;color:#8b6544;font-size:10px}.satchel{flex:1;min-height:0;overflow:auto;background:#fffdf3;border:2px solid #d5d4ab;border-radius:17px;padding:10px;box-shadow:inset 0 3px 9px #f5ebca}.satchel-head{display:flex;align-items:center;justify-content:space-between;gap:7px}.satchel h3{margin:1px 0 0;font:700 19px Georgia,serif}.piece-counter{white-space:nowrap;background:#e0edd4;color:#447452;border-radius:20px;padding:4px 7px;font-size:10px;font-weight:900}.satchel-tip{margin:7px 0 8px;color:#68806a;font-size:11px;line-height:1.25}.inventory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.piece-card{position:relative;min-width:0;height:80px;border:2px solid #d6c09b;border-radius:13px;background:#f4e8c5;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3px;color:#3d664b;touch-action:none;box-shadow:0 3px 0 #b29b73}.piece-card:hover{transform:translateY(-2px)}.piece-card.selected{border-color:#c65352;box-shadow:0 0 0 3px #f6d58a,0 3px 0 #b29b73}.piece-card.used{opacity:.5}.piece-card svg{width:50px;height:50px;flex:none}.piece-card small{font-size:9px;font-weight:900}.piece-card .flower-mark{position:absolute;right:3px;top:1px;font-size:15px;color:#bf5170;text-shadow:0 1px #fff}.actions{flex:none}.try-button{width:100%;min-height:47px;border:2px solid #fff3bf;border-radius:15px;background:linear-gradient(#d36358,#b94748);color:#fffdf4;font-weight:900;font-size:16px;box-shadow:0 4px 0 #873b3c;text-shadow:0 1px #6e3432}.try-button:hover{filter:brightness(1.07)}.try-button span{font-size:12px;margin-right:5px}.action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:8px}.action-grid button{min-height:34px;border:2px solid #d6dfbb;border-radius:11px;background:#edf4dc;color:#3c704f;font-size:11px;font-weight:900;white-space:nowrap}.action-grid button:hover:not(:disabled){background:#dbe9c9}.side-footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#829273;font-weight:900}.side-footer button{border:0;background:transparent;color:#617b54;font-size:11px;font-weight:900;text-decoration:underline}.modal-backdrop{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:15px;background:#193d30b8;backdrop-filter:blur(4px)}.modal{position:relative;width:min(520px,100%);max-height:min(90dvh,740px);overflow:auto;border:4px solid #f9efcf;border-radius:26px;background:#fff9e9;padding:25px;box-shadow:0 8px 0 #855f40,0 20px 45px #10291e66}.modal h2{font:700 clamp(23px,3vw,31px)/1.1 Georgia,serif;margin:5px 0 17px}.modal-close{position:absolute;right:13px;top:9px;border:0;background:transparent;color:#5d7655;font-size:26px}.level-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:15px}.level-tabs button{border:2px solid #cbd9b5;border-radius:12px;background:#eaf1d9;padding:8px;font-size:12px;font-weight:900;color:#547252}.level-tabs button.active{background:#d46558;color:#fff;border-color:#bd4c48}.level-tabs small{display:block;font-size:10px;opacity:.8}.level-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}.level-grid button{position:relative;aspect-ratio:1;border:2px solid #cbd9b5;border-radius:12px;background:#f2efdc;color:#537257;font-weight:900}.level-grid button.done{background:#a7d08e;border-color:#71ae79}.level-grid button.current{border-color:#c4514e;box-shadow:0 0 0 2px #e9b85c}.level-grid button .dot{position:absolute;bottom:1px;right:2px;font-size:8px;color:#a0443c}.win-modal{text-align:center}.win-art{height:95px;font:700 82px/1 Georgia,serif;color:#b54e48;text-shadow:0 4px #f0cf92}.win-art span{font-size:32px;color:#d9a44d}.win-modal p{color:#647b63}.win-stars{font-size:30px;letter-spacing:9px;color:#e6b64d;margin:13px 0 19px}.win-actions,.help-actions{display:flex;gap:9px;justify-content:center}.win-actions button,.help-actions button,.story-modal .primary{border:2px solid #cbd9b5;border-radius:12px;background:#edf4df;padding:10px 14px;color:#466d52;font-weight:900}.win-actions .primary,.help-actions .primary,.story-modal .primary{background:#c9554f;color:#fff;border-color:#ab4943}.help-list p{display:flex;gap:12px;color:#58705e;font-size:14px;line-height:1.4}.help-list span{flex:none;width:28px;text-align:center;color:#be594e;font-size:22px}.story-modal p{font:18px/1.6 Georgia,serif;color:#5b715c}.drag-ghost{position:fixed;z-index:100;pointer-events:none;width:69px;height:69px;border-radius:15px;background:#fff7dc;border:3px solid #d5aa6d;box-shadow:0 8px 20px #193d3066;display:grid;place-items:center;transform:translate(-50%,-50%);opacity:.9}.drag-ghost svg{width:58px;height:58px}.walking .cell.visited{background:#f5d7a4}.board.good{animation:board-celebrate .7s ease}.board.focus .cell{cursor:pointer}@keyframes glow{50%{box-shadow:inset 0 0 0 4px #ffe591,0 0 0 5px #ffda6b99}}@keyframes board-celebrate{50%{filter:brightness(1.2);transform:scale(1.015)}}
@media(max-height:690px) and (min-width:801px){.app{padding-top:6px;padding-bottom:7px;gap:5px}.topbar{min-height:47px;padding-bottom:5px}.brand-icon{width:35px;height:35px;font-size:20px}.brand h1{font-size:23px}.chapter{padding:5px 9px}.round-control{height:32px;min-width:32px;font-size:15px}.game-area{padding:7px 10px 5px}.scene-top{min-height:39px}.scene-top h2{font-size:20px}.goal-badge{padding:4px 6px;font-size:10px}.board{--board-size:min(calc(100dvh - 150px),calc(100vw - 360px),670px)}.side-panel{gap:5px;padding:7px}.coach{padding:5px 7px}.coach p{font-size:11px;margin:3px 0}.satchel{padding:6px}.satchel h3{font-size:16px}.satchel-tip{margin:3px 0;font-size:10px}.piece-card{height:62px}.piece-card svg{width:39px;height:39px}.try-button{min-height:39px;font-size:14px}.action-grid{margin-top:5px;gap:4px}.action-grid button{min-height:29px;font-size:10px}.side-footer{font-size:9px}}
@media(max-width:760px){body{overflow:auto}.app{min-height:100dvh;height:auto;max-height:none;padding:8px;gap:7px}.topbar{min-height:48px;padding-bottom:5px}.brand h1{font-size:24px}.brand-small{font-size:8px}.brand-icon{width:36px;height:36px;font-size:21px}.chapter{display:none}.round-control{height:34px;min-width:34px;font-size:15px}.game-shell{display:flex;flex-direction:column;gap:7px}.game-area{min-height:0;padding:8px}.scene-top{min-height:42px}.scene-top h2{font-size:21px}.goal-badge{font-size:10px;padding:5px}.board-wrap{min-height:0;flex:none}.board{--board-size:min(calc(100vw - 36px),58dvh,620px)}.scene-bottom{font-size:10px}.side-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.75fr);grid-template-rows:auto auto;gap:6px;padding:7px}.coach{grid-column:1/-1}.satchel{grid-column:1;grid-row:2}.actions{grid-column:2;grid-row:2;align-self:center}.side-footer{display:none}.satchel-tip{display:none}.satchel h3{font-size:15px}.piece-card{height:64px}.piece-card svg{width:38px;height:38px}.try-button{min-height:43px;font-size:13px}.action-grid button{font-size:10px;min-height:33px}.inventory{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.brand h1{font-size:19px}.brand h1 em{display:block;font-size:15px}.brand-icon{width:33px;height:33px}.top-actions{gap:4px}.round-control{height:31px;min-width:31px}.scene-top h2{font-size:18px}.scene-top .eyebrow{font-size:8px}.goal-badge{font-size:9px;max-width:45%}.board{--board-size:min(calc(100vw - 32px),52dvh,500px);border-width:5px;padding:3px}.side-panel{display:flex}.satchel{overflow:visible}.inventory{grid-template-columns:repeat(5,1fr)}.piece-card{height:57px}.piece-card svg{width:35px;height:35px}.piece-card small{font-size:7px}.actions{width:100%}.action-grid{grid-template-columns:repeat(4,1fr)}.action-grid button{white-space:normal;font-size:9px;padding:3px}.coach{width:100%}.level-grid{grid-template-columns:repeat(6,1fr)}.modal{padding:18px}}
body.focus-play .topbar{display:none}body.focus-play .app{padding:4px}body.focus-play .game-shell{grid-template-columns:minmax(0,1fr) clamp(210px,24vw,290px)}body.focus-play .game-area{padding:5px}body.focus-play .board{--board-size:min(calc(100dvh - 100px),calc(100vw - 360px),760px)}@media(max-width:760px){body.focus-play .game-shell{display:flex}body.focus-play .board{--board-size:min(calc(100vw - 25px),69dvh,730px)}}
.cell .sprite{position:relative;z-index:2;display:block;width:94%;height:94%;object-fit:contain;pointer-events:none;user-select:none;filter:drop-shadow(0 4px 2px #35582d55)}.cell .sprite-caperucita{width:88%;height:94%}.cell .sprite-lobo{width:93%;height:95%}.cell .sprite-arbol{width:94%;height:94%}.house-sprite{position:relative;z-index:2;width:100%;height:100%;display:grid;place-items:center;pointer-events:none}.house-sprite .sprite-casa{width:106%;height:96%;max-width:none}.door-port{position:absolute;z-index:3;display:block;width:clamp(12px,1.5vw,21px);height:clamp(12px,1.5vw,21px);border:2px solid #fff7dc;border-radius:50%;box-shadow:0 2px 4px #29442b99,0 0 0 2px #3e655b}.door-port:after{content:'';position:absolute;left:30%;top:27%;width:40%;height:45%;border-radius:50% 50% 2px 2px;background:#fff9e9}.red-door{background:#ca504e}.blue-door{background:#558ca9}.side-0{top:-8%;left:50%;transform:translateX(-50%)}.side-1{right:-8%;top:50%;transform:translateY(-50%)}.side-2{bottom:-8%;left:50%;transform:translateX(-50%)}.side-3{left:-8%;top:50%;transform:translateY(-50%)}
.forest{background:#a4cba1 url('assets/bosque.png') center/cover no-repeat}.forest .sun,.forest .hill,.forest .sprigs{display:none}.game-area{background:linear-gradient(135deg,#eef6d3ed,#d7e9b6e8 58%,#bdd99ce8)}.side-panel{background:#fff9e8f5}
.topbar{background:linear-gradient(90deg,#fff9e9ed,#fff9e9d1);border:2px solid #fff7df;border-radius:18px;box-shadow:0 3px 0 #557a5b4d;padding:4px 9px 7px}.house-sprite .sprite-casa{width:116%;height:105%}
@media (min-width:761px){.app{height:min(100dvh,max(500px,55vw));max-height:min(100dvh,max(500px,55vw))}.board{--board-size:min(calc(100dvh - 205px),calc(100vw - 350px),calc(max(500px,55vw) - 205px),670px)}body.focus-play .app{height:100dvh;max-height:100dvh}}
@media (min-width:761px){.satchel{flex:none;max-height:min(320px,55%)}.side-footer{margin-top:auto}}
.domino-preview{display:flex;width:100%;height:52px;border:3px solid #779966;border-radius:9px;background:#a6ce89;overflow:hidden;box-shadow:0 2px 0 #5b7957}.piece-card .domino-preview svg{width:50%;height:100%;flex:1;min-width:0}.piece-card{height:87px}.cell.domino-cell{background:#a4cb85;border-color:#719e66}.cell.domino-cell:after{display:none}.cell.domino-cell svg{width:100%;height:100%}.cell .sprite-caperucita,.cell .sprite-lobo{width:68%;height:78%;max-width:68%;max-height:78%;align-self:center;justify-self:center;object-fit:contain}.cell .sprite-arbol{width:74%;height:82%;max-width:74%;max-height:82%;align-self:center;justify-self:center;object-fit:contain}.house-sprite .sprite-casa{width:98%;height:90%}.drag-ghost{width:126px;height:76px}.drag-ghost .domino-preview{width:112px;height:62px}.drag-ghost .domino-preview svg{width:50%;height:100%}
@media(max-height:690px) and (min-width:761px){.piece-card{height:70px}.domino-preview{height:40px}.satchel{max-height:min(260px,52%)}}
.board{background-image:radial-gradient(circle at 14% 23%,#e1eeb83b 0 2px,transparent 3px),radial-gradient(circle at 75% 68%,#487e4b33 0 3px,transparent 4px),linear-gradient(145deg,#a8cc86,#83b46f);background-size:34px 31px,47px 44px,100% 100%}.cell,.cell:nth-child(odd){background-image:radial-gradient(circle at 23% 68%,#eff4c03d 0 2px,transparent 3px),radial-gradient(circle at 79% 31%,#4f885143 0 2px,transparent 3px),linear-gradient(145deg,#a7ce89,#92bd75);background-size:27px 29px,39px 36px,100% 100%}.domino-layer{position:absolute;inset:0;z-index:3;pointer-events:none}.domino-tile{position:absolute;transform-origin:25% 50%;filter:drop-shadow(0 4px 3px #345b3980)}.domino-art{display:block;width:100%;height:100%;overflow:visible}.piece-card .domino-art{width:100%;height:52px}.drag-ghost .domino-art{width:112px;height:58px}.cell.domino-cell{background:transparent;box-shadow:none}.cell.domino-cell.selected{box-shadow:inset 0 0 0 4px #f8db7a}.cell.domino-cell.guide-target{box-shadow:inset 0 0 0 4px #ffe591,0 0 0 5px #ffda6b99}
.board{background-image:radial-gradient(ellipse at 20% 30%,#d9e8ad7a,transparent 58%),radial-gradient(ellipse at 80% 72%,#598b5666,transparent 60%),linear-gradient(145deg,#a8cc86,#83b46f);background-size:100% 100%}.cell,.cell:nth-child(odd){background-image:radial-gradient(ellipse at 24% 25%,#daeab65c,transparent 48%),radial-gradient(ellipse at 78% 78%,#58894f30,transparent 52%),linear-gradient(145deg,#a7ce89,#92bd75);background-size:100% 100%}
@media (min-width:761px) and (max-width:850px){.app{height:min(100dvh,650px);max-height:min(100dvh,650px)}.game-area{padding:8px}.side-panel{padding:7px;gap:6px}.board{--board-size:min(calc(100dvh - 190px),calc(100vw - 335px),445px)}}
@media (min-width:851px) and (max-width:1100px){.app{height:min(100dvh,660px);max-height:min(100dvh,660px)}.board{--board-size:min(calc(100dvh - 205px),calc(100vw - 350px),455px)}}
.round-control.off{opacity:.58;filter:saturate(.5)}.cell .ground-detail{position:relative;z-index:1;width:38%;height:38%;align-self:end;justify-self:end;margin:0 8% 6% 0;opacity:.7;pointer-events:none}.walker{position:absolute;z-index:9;pointer-events:none;transform:translate(-50%,-72%);will-change:left,top}.walker .sprite{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 3px #36563d8a);animation:walker-bob .24s ease-in-out infinite alternate;transform:scaleX(var(--facing,1))}.walker-wolf{z-index:8}.arrival-spark{position:absolute;z-index:10;width:18px;height:18px;pointer-events:none;transform:translate(-50%,-50%);animation:arrival .7s ease-out forwards}.arrival-spark:before{content:'✦';position:absolute;color:#fff1a4;font-size:32px;text-shadow:0 0 10px #f1b958,0 0 20px #fff}.intro-modal p{font:18px/1.45 Georgia,serif;color:#57705b;margin:0 0 22px}.intro-modal .win-actions{justify-content:flex-start;flex-wrap:wrap}@keyframes walker-bob{from{transform:translateY(0) scaleX(var(--facing,1))}to{transform:translateY(-4px) scaleX(var(--facing,1))}}@keyframes arrival{from{opacity:1;scale:.6}to{opacity:0;scale:2.8}}@media (prefers-reduced-motion:reduce){.walker .sprite{animation:none}.arrival-spark{animation:none}}
.guide-spotlight{position:fixed;z-index:38;pointer-events:none;border:4px solid #ffe484;border-radius:15px;box-shadow:0 0 0 200vmax #142f25a8,0 0 0 7px #fff5baaa,0 0 28px #fff1a0;transition:left .18s,top .18s,width .18s,height .18s}.coach.guided{position:fixed;z-index:40;width:min(300px,calc(100vw - 24px));max-height:min(210px,calc(100dvh - 24px));overflow:auto;padding:12px 14px;border:3px solid #fff4c5;background:#fff1c5;box-shadow:0 6px 0 #ac7148,0 14px 30px #163c2b70}.coach.guided .coach-top strong{font-size:18px}.coach.guided p{font-size:14px;line-height:1.35;margin:8px 0 11px}.coach-step{display:block;margin:6px 0 0;font-size:10px;font-weight:900;letter-spacing:.12em;color:#896b46}.coach-next{display:inline-block;border:2px solid #fff1bd;border-radius:10px;background:#be504b;color:#fffaf0;font-size:13px;font-weight:900;padding:7px 12px;margin-right:10px;box-shadow:0 3px 0 #8e3d3b}.coach-next[hidden]{display:none!important}.coach.guided .coach-skip{display:inline-block;margin-top:4px;font-size:11px}.piece-card .piece-preview{width:70px;height:48px;max-width:100%;display:grid;place-items:center;overflow:visible;flex:none}.piece-card .piece-preview .domino-art{width:68px;height:34px;max-width:none;flex:none;transform:rotate(var(--piece-turn));transition:transform .18s}.drag-ghost{width:132px;height:132px;background:transparent;border:0;box-shadow:none;opacity:.95}.drag-ghost-piece{width:112px;height:56px;filter:drop-shadow(0 7px 8px #183a2c88)}.drag-ghost .drag-ghost-piece .domino-art{display:block;width:112px;height:56px}.goal-badge strong{color:#375e42;font-size:11px}@media(max-width:560px){.piece-card .piece-preview{width:46px;height:33px}.piece-card .piece-preview .domino-art{width:44px;height:22px}.coach.guided p{font-size:12px}.coach.guided .coach-top strong{font-size:16px}}
.side-footer{justify-content:flex-start}.side-footer button{display:inline-flex;align-items:center;justify-content:center;border:2px solid #cbdcb5;border-radius:9px;background:#edf5dd;padding:6px 10px;text-decoration:none;font-size:11px}.story-modal{background:linear-gradient(#fff9e9,#f9f0d6)}.story-modal p{font:18px/1.45 Georgia,serif;color:#46634d}.story-art{height:125px;display:flex;align-items:flex-end;justify-content:center;gap:20px;margin:4px 0 16px;border-radius:17px;background:linear-gradient(#cbe7cb,#98c784);overflow:hidden}.story-art img{width:76px;height:112px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 5px 3px #355a3766)}.story-art .story-trail{align-self:center;color:#f8efba;font-size:23px;font-weight:900;white-space:nowrap;text-shadow:0 2px #658b5b}@media(max-width:800px){.side-footer{display:flex;justify-content:flex-start}}
.piece-card .piece-preview.vertical .domino-art{transform:rotate(var(--piece-turn)) scale(.66)}.piece-card small{position:relative;z-index:1;flex:none;line-height:1.1}@media(max-width:560px){.piece-card .piece-preview.vertical .domino-art{transform:rotate(var(--piece-turn)) scale(.7)}}
.level-reset{display:flex;justify-content:center;margin-top:18px;padding-top:13px;border-top:1px solid #d8d9b9}.level-reset button{border:1px solid #c99f8d;border-radius:10px;background:#fff4e8;color:#9b514b;padding:7px 12px;font-size:12px;font-weight:900}.level-reset button:hover{background:#f9e5d3}.reset-modal p{font:17px/1.4 Georgia,serif;color:#4e6b55;margin:0 0 20px}.reset-modal .win-actions{justify-content:flex-start;flex-wrap:wrap}
.chapter{cursor:pointer}.chapter:hover{background:#fff1ca}.level-reset{gap:10px;flex-wrap:wrap}.level-reset #modeFromLevelsBtn{background:#eaf3dd;color:#416f50;border-color:#b6cda6}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-grid button{min-height:124px;text-align:left;border:2px solid #cdd8b6;border-radius:17px;background:#eef4df;color:#2f614a;padding:15px;box-shadow:0 4px 0 #adc39e}.mode-grid button.selected{border-color:#bf574e;background:#fff0cf;box-shadow:0 0 0 3px #f4ce92,0 4px 0 #b99a72}.mode-grid strong{display:block;font:700 20px Georgia,serif;margin-bottom:9px}.mode-grid span{display:block;font-size:13px;line-height:1.35}.story-art{height:155px;gap:26px;background:linear-gradient(#d9ecc555,#9fcf8a55),url('assets/bosque.png') center 61%/cover}.story-art img{width:90px;height:140px}.story-art .story-trail{width:85px;align-self:center;border-bottom:5px dotted #ffe5a3;transform:rotate(-9deg);filter:drop-shadow(0 2px 1px #63825a)}@media(max-width:560px){.mode-grid{grid-template-columns:1fr}.mode-grid button{min-height:90px}.story-art{height:125px;gap:12px}.story-art img{height:112px;width:73px}.story-art .story-trail{width:52px}}


