@import "https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Nunito:wght@600;700;800;900&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;font-family:Nunito,system-ui,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button:focus-visible{outline-offset:3px;outline:4px solid #f4bd3f}*{box-sizing:border-box}button{font:inherit}.intro-screen,.game-screen{min-height:100svh;font-family:Nunito,sans-serif}.intro-screen{background:#130b45 url(/fabrica-monstruos.png) 50% 36%/cover no-repeat;place-items:center;padding:32px 18px;display:grid;position:relative;overflow:hidden}.intro-overlay{-webkit-backdrop-filter:saturate(1.12);backdrop-filter:saturate(1.12);background:linear-gradient(#0e07392e,#0a052870 55%,#08041db8);position:absolute;inset:0}.intro-content{z-index:1;flex-direction:column;align-items:center;width:min(760px,100%);display:flex;position:relative}.factory-lamp{background:#117d9e;border:6px solid #17466f;border-radius:50% 50% 20% 20%;width:116px;height:35px;margin-bottom:-7px;position:relative;box-shadow:0 8px 35px #fff5a9}.factory-lamp span{background:#ff8fe6;border:5px solid #7c277e;border-radius:50%;width:34px;height:34px;margin:-23px auto 0;display:block;box-shadow:0 0 25px #ff5bd5}.intro-sign{text-align:center;color:#fff7dc;background:linear-gradient(#354669,#1d294b);border:7px solid #14284c;border-radius:30px;width:100%;padding:22px 32px 19px;box-shadow:inset 0 0 0 3px #60769c,0 12px #101731,0 22px 45px #080421}.intro-sign:before,.intro-sign:after{content:"●";color:#8191ad;text-shadow:0 2px #0c152b;position:absolute}.intro-sign:before{margin-left:-45%}.intro-sign:after{margin-top:-45px;margin-left:43%}.intro-kicker{letter-spacing:5px;color:#ffe9bd;font:900 16px Nunito}.intro-sign h1{text-shadow:0 5px #101633,0 8px #090c20;margin:3px 0;font:800 clamp(40px,8vw,78px)/.87 "Baloo 2"}.intro-sign h1 span{color:#fff8e6;font-size:.64em;display:block}.intro-sign h1 strong{letter-spacing:-2px;color:#f6c321;background:linear-gradient(90deg,#e745d8,#92d719,#ffc61c,#06c9cf,#ff7920,#c448d4,#99d919);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px #101633);-webkit-background-clip:text;background-clip:text;display:block}.intro-sign p{background:#512a9d;border:3px solid #ac6de1;border-radius:18px;max-width:570px;margin:15px auto 0;padding:8px 16px;font:800 clamp(14px,2.8vw,21px) "Baloo 2";box-shadow:0 5px #28125e}.intro-sign p b{color:#ffd331}.story-card{color:#3d2841;background:linear-gradient(135deg,#ffe8a6,#ffd987);border:7px solid #b87536;border-radius:27px;width:88%;margin-top:20px;padding:29px 35px 18px;position:relative;box-shadow:inset 0 0 0 3px #fff0be,0 10px #513062,0 15px 28px #080421}.story-label{color:#fff;background:#7139ac;border:4px solid #3b1c70;border-radius:14px;padding:6px 31px;font:900 18px "Baloo 2";position:absolute;top:-25px;left:50%;transform:translate(-50%);box-shadow:0 4px #2a1554}.story-card div{align-items:center;gap:18px;margin:12px 0;display:flex}.story-card div span{font-size:36px}.story-card p{margin:0;font:800 15px/1.25 Nunito}.story-card b{color:#7139ac}.start-button{color:#fff9df;text-shadow:0 4px #47770d;cursor:pointer;background:linear-gradient(#aeea16,#62b800);border:7px solid #315319;border-radius:25px;margin-top:22px;padding:13px 31px;font:900 clamp(25px,5vw,42px) "Baloo 2";transition:all .18s;box-shadow:inset 0 0 0 3px #d5ff4c,0 9px #213b20,0 15px 25px #090421}.start-button:hover{filter:brightness(1.1);transform:translateY(-4px)}.start-button span{color:#ffd32a;font-size:.65em}.game-screen{color:#fff;background:radial-gradient(circle at 50% 0,#34318b 0,#171247 43%,#0b092b 100%);position:relative;overflow:hidden}.game-screen:before{content:"";pointer-events:none;opacity:.22;background-image:radial-gradient(#7d66d7 1px,#0000 1px),linear-gradient(90deg,#0000 49%,#593f9d 50%,#0000 51%);background-size:35px 35px,160px 100%;position:fixed;inset:0}.factory-pipe{z-index:0;opacity:.8;background:linear-gradient(90deg,#173a69,#2693a2 48%,#16305d 52%,#0e1939);border:7px solid #14234a;width:48px;height:72vh;position:fixed;top:75px}.factory-pipe:after{content:"";background:#275b7a;border:6px solid #131d40;border-radius:10px;height:35px;position:absolute;top:20%;left:-14px;right:-14px}.pipe-left{left:2%}.pipe-right{right:2%}.game-screen header{z-index:2;background:#101334d9;border-bottom:5px solid #354579;justify-content:space-between;align-items:center;height:82px;padding:0 max(24px,50vw - 620px);display:flex;position:relative;box-shadow:0 7px #080a20}.brand{align-items:center;gap:13px;display:flex}.brand-mark{color:#fff;background:#a842d0;border:4px solid #da7cf2;border-radius:17px;place-items:center;width:51px;height:51px;font:800 30px "Baloo 2";display:grid;transform:rotate(-7deg);box-shadow:0 5px #4d1e72}.brand p,.panel-title p,.challenge-heading p{letter-spacing:2px;color:#ffb72f;margin:0;font:900 10px Nunito}.brand h1{color:#fff7dc;text-shadow:0 3px #07091d;margin:0;font:800 24px/1 "Baloo 2"}.header-actions{gap:8px;display:flex}.speaker,.home-button,.sound-button,.close-button{cursor:pointer;color:#fff;background:#312662;border:3px solid #7660bb;border-radius:50%;width:45px;height:45px;font-size:20px;box-shadow:0 4px #11102d}.hero-copy{z-index:1;justify-content:space-between;align-items:flex-end;max-width:1240px;margin:0 auto;padding:31px 20px 22px;display:flex;position:relative}.eyebrow,.aside-title span{letter-spacing:2px;color:#54e3e5;font:900 11px Nunito}.hero-copy h2{color:#fff7df;text-shadow:0 4px #09091f;margin:5px 0 0;font:800 35px/1.05 "Baloo 2"}.hero-copy em{color:#ffd326;font-style:normal}.progress-card{background:#25234f;border:3px solid #58669c;border-radius:18px;align-items:center;gap:14px;padding:11px 18px;display:flex;box-shadow:inset 0 0 0 2px #151735,0 6px #090a20}.progress-card>span{color:#ffd32a;font:800 30px "Baloo 2"}.progress-card small{color:#aaa4ca;font-size:16px}.progress-card b{font:800 11px Nunito}.progress-bar{background:#0e102b;border:1px solid #575079;border-radius:8px;width:130px;height:9px;margin-top:6px;overflow:hidden}.progress-bar i{background:linear-gradient(90deg,#74cc0b,#d0f02e);border-radius:8px;height:100%;transition:all .3s;display:block}.workspace{z-index:1;grid-template-columns:minmax(420px,1.25fr) minmax(350px,.75fr);gap:27px;max-width:1240px;margin:auto;padding:0 20px 28px;display:grid;position:relative}.workshop{background:linear-gradient(#31486c,#172746);border:7px solid #10172f;border-radius:28px;padding:14px;box-shadow:inset 0 0 0 3px #71809e,0 10px #080a20}.panel-title{text-align:center;justify-content:center;align-items:center;gap:14px;height:59px;display:flex}.panel-title span{color:#e99522;font-size:22px}.panel-title h2{color:#fff5d6;margin:-2px 0 0;font:800 23px "Baloo 2"}.monster-board{touch-action:none;background:radial-gradient(circle,#56319a,#221c5c 68%,#111039);border:5px solid #11152f;border-radius:20px;height:440px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #7860b3,inset 0 0 45px #0b0926}.board-grid{opacity:.3;background-image:radial-gradient(#b5a8df 1.5px,#0000 1.5px);background-size:24px 24px;position:absolute;inset:0}.empty-message{color:#ccc0ff;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.empty-message b{color:#fff7dd;font:800 23px "Baloo 2"}.empty-message span{font:700 13px Nunito}.empty-monster{background:#34266d;border:5px dashed #9d82e7;border-radius:45%;place-items:center;width:140px;height:125px;margin-bottom:14px;font:800 48px "Baloo 2";display:grid}.drag-tip{white-space:nowrap;color:#fff;background:#17143c;border:2px solid #7565af;border-radius:20px;padding:6px 13px;font:800 11px Nunito;position:absolute;bottom:13px;left:50%;transform:translate(-50%)}.draggable-piece{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;filter:drop-shadow(0 8px 3px #090820);z-index:2;position:absolute}.draggable-piece:active{cursor:grabbing}.head-shape{background:#78d46f;border:6px solid #397a4c;border-radius:48% 48% 42% 42%;width:160px;height:150px;position:relative}.ear{background:#78d46f;border:6px solid #397a4c;border-radius:60%;width:42px;height:62px;position:absolute;top:-28px}.ear.left{left:15px;transform:rotate(-25deg)}.ear.right{right:15px;transform:rotate(25deg)}.eyes-shape{gap:12px;width:110px;height:48px;display:flex}.eyes-shape span{color:#253149;background:#fff;border:5px solid #39435b;border-radius:50%;place-items:center;width:48px;height:48px;font-size:20px;display:grid}.nose-shape{color:#9f4c4d;text-align:center;background:#ff846b;border:5px solid #9f4c4d;border-radius:48%;width:38px;height:32px;font-size:11px}.reward-status .head-shape,.reward-piece .head-shape{transform-origin:0 0;transform:scale(.34)}.reward-status .eyes-shape,.reward-piece .eyes-shape{transform-origin:0 0;transform:scale(.46)}.reward-status .nose-shape,.reward-piece .nose-shape{transform-origin:0 0;transform:scale(.8)}.aside-title{padding:4px 4px 14px}.aside-title h2{color:#fff7dd;text-shadow:0 3px #09091f;margin:2px 0;font:800 25px "Baloo 2"}.challenge-list{flex-direction:column;gap:15px;display:flex}.challenge-card{border:5px solid #101630;border-left:11px solid var(--challenge);cursor:pointer;text-align:left;background:linear-gradient(135deg,#344b70,#202d51);border-radius:20px;align-items:center;width:100%;min-height:96px;padding:12px 14px 12px 19px;transition:all .18s;display:flex;position:relative;box-shadow:inset 0 0 0 2px #6a7794,0 7px #080a20}.challenge-card:hover{filter:brightness(1.18);transform:translateY(-3px)}.number{background:var(--challenge);color:#fff;border:4px solid #151834;border-radius:50%;place-items:center;width:34px;height:34px;font:900 13px Nunito;display:grid;position:absolute;top:-17px;left:-19px}.card-icon{filter:drop-shadow(0 3px #11142c);width:58px;font-size:37px}.card-copy{flex-direction:column;flex:1;display:flex}.card-copy b{color:#fff6d9;font:800 21px "Baloo 2"}.card-copy small{color:#bebbd3;font:800 11px Nunito}.reward-status{color:#fff;background:#19173d;border:2px dashed #9387b5;border-radius:14px;width:52px;height:52px;position:relative;overflow:hidden}.reward-status.done{background:#67bc13;border:3px solid #a5e83b;place-items:center;font-size:23px;display:grid}.play{color:#fff;background:var(--challenge);border-radius:50%;place-items:center;width:31px;height:31px;margin-left:10px;font-size:15px;display:grid}.helper{background:#4a2a77;border:3px solid #8a5bb5;border-radius:18px;align-items:center;gap:12px;margin-top:20px;padding:12px 15px;display:flex;box-shadow:0 5px #15112e}.helper span{font-size:24px}.helper p{color:#efe5ff;margin:0;font:700 11px/1.45 Nunito}.helper b{color:#ffd32c}.game-screen footer{text-align:center;color:#aea9c8;background:#101334;border-top:4px solid #354579;padding:18px;font:800 11px Nunito}.game-screen footer span{color:#f5b33f;margin:0 7px}.modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;background:#08051ed1;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.challenge-modal{color:#fff;border:7px solid #10162f;border-top-color:var(--challenge);background:linear-gradient(#34496e,#1a294b);border-radius:30px;width:min(720px,100%);min-height:500px;padding:28px;position:relative;box-shadow:inset 0 0 0 3px #70809d,0 12px #080a20}.close-button{color:#fff;z-index:2;font-size:30px;position:absolute;top:16px;right:16px}.challenge-heading{align-items:center;gap:12px;display:flex}.challenge-heading>span{font-size:38px}.challenge-heading h2{color:#fff4d2;margin:-3px 0 0;font:800 28px "Baloo 2"}.instruction-row{justify-content:center;align-items:center;gap:12px;margin:22px 0 14px;display:flex}.instruction-row h3{text-align:center;max-width:560px;margin:0;font:800 21px "Baloo 2"}.sound-button{flex:none;width:40px;height:40px;font-size:16px}.sequence{justify-content:center;gap:7px;margin:22px 0;display:flex}.sequence span{width:61px;height:64px}.sequence span,.logic-grid span{background:#fff5dc;border:4px solid #111831;border-radius:16px;place-items:center;font-size:32px;display:grid;box-shadow:inset 0 0 0 2px #d0ba91,0 4px #0c1026}.sequence .question,.logic-grid .question{color:var(--challenge);border-style:dashed;font:800 35px "Baloo 2"}.logic-grid{grid-template-columns:repeat(3,62px);gap:7px;width:max-content;margin:14px auto;display:grid}.logic-grid span{width:62px;height:62px}.sort-bubble{text-align:center;color:#fff;background:#21234b;border:2px solid #7772aa;border-radius:30px;margin:24px auto 18px;padding:10px;font:800 13px Nunito}.choices{flex-wrap:wrap;justify-content:center;gap:11px;display:flex}.choices button{cursor:pointer;background:#fff5dc;border:4px solid #111831;border-radius:18px;width:78px;height:72px;font-size:36px;transition:all .15s;box-shadow:inset 0 0 0 2px #d0ba91,0 5px #0b1027}.choices button:hover{border-color:var(--challenge);transform:translateY(-3px)}.try-again{text-align:center;color:#ffb24f;margin-top:20px;font:900 13px Nunito}.hint{text-align:center;background:#573b76;border:3px solid #aa76cf;border-radius:15px;max-width:520px;margin:20px auto 0;padding:12px 16px;font:700 13px Nunito}.win-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:440px;display:flex}.stars{color:#ffc342;letter-spacing:8px;font-size:28px}.win-panel h2{color:#fff4d2;margin:8px 0 0;font:800 34px "Baloo 2"}.win-panel p{font:700 14px Nunito}.reward-piece{place-items:center;width:140px;height:120px;margin:22px auto 0;display:grid}.reward-piece .head-shape{transform-origin:50%;transform:scale(.7)}.reward-piece .eyes-shape{transform-origin:50%;transform:scale(1)}.reward-piece .nose-shape{transform-origin:50%;transform:scale(1.6)}.win-panel strong{letter-spacing:2px;color:#ffd32a;font:900 12px Nunito}.primary-button{color:#fff;cursor:pointer;background:linear-gradient(#aeea16,#62b800);border:5px solid #315319;border-radius:16px;margin-top:22px;padding:10px 25px;font:800 17px "Baloo 2";box-shadow:inset 0 0 0 2px #d5ff4c,0 6px #132a14}@media (width<=850px){.story-card{width:96%}.game-screen header{height:74px}.brand h1{font-size:18px}.brand-mark{width:43px;height:43px}.hero-copy{padding-top:20px}.hero-copy h2{font-size:27px}.workspace{grid-template-columns:1fr}.monster-board{height:380px}.workshop{order:2}aside{order:1}.challenge-list{grid-template-columns:repeat(3,1fr);display:grid}.challenge-card{text-align:center;min-height:140px;padding:15px 6px;display:block}.card-icon{width:auto;display:block}.card-copy b{font-size:16px}.reward-status,.play,.helper,.factory-pipe{display:none}}@media (width<=560px){.intro-screen{background-position:50%;padding:22px 9px}.factory-lamp{display:none}.intro-sign{border-width:5px;padding:17px 9px 14px}.intro-sign h1{font-size:42px}.intro-sign p{font-size:13px}.story-card{border-width:5px;padding:24px 15px 10px}.story-card div{gap:10px;margin:9px 0}.story-card div span{font-size:27px}.story-card p{font-size:12px}.story-label{font-size:14px}.start-button{border-width:5px;margin-top:15px;font-size:28px}.brand p{display:none}.brand h1{font-size:16px}.hero-copy{align-items:flex-start}.hero-copy h2{font-size:22px}.progress-card{padding:7px 10px}.progress-card b,.progress-bar{display:none}.workspace{gap:16px;padding:0 10px 20px}.challenge-list{gap:7px}.challenge-card{border-width:4px;min-height:114px}.card-icon{font-size:28px}.card-copy small{font-size:9px}.monster-board{height:340px}.head-shape{width:130px;height:120px}.sequence{justify-content:flex-start;gap:3px;padding:3px;overflow-x:auto}.sequence span{width:39px;min-width:39px;height:50px;font-size:23px}.challenge-modal{border-width:5px;padding:18px 10px}.instruction-row{margin-top:18px}.instruction-row h3{font-size:16px}.choices{gap:8px}.choices button{width:60px;height:58px;font-size:28px}.logic-grid{grid-template-columns:repeat(3,54px)}.logic-grid span{width:54px;height:54px;font-size:27px}}
