:root{color:#51341f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-tap-highlight-color:transparent;background:#fff4d6;font-family:ui-rounded,SF Pro Rounded,Arial Rounded MT Bold,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}html,body{min-height:100vh;overscroll-behavior:none;min-height:100dvh}body{background:radial-gradient(circle at 12% 8%,#ffffffb3 0,#ffffffb3 8%,#0000 9%),radial-gradient(circle at 88% 20%,#ffd99173 0,#ffd99173 12%,#0000 13%),linear-gradient(160deg,#fff9e8 0%,#ffefc7 58%,#ffe4aa 100%);overflow:hidden}button{font:inherit}.app-shell{width:100%;height:100vh;height:100dvh;min-height:480px;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.start-screen{place-items:center;display:grid}.start-card{text-align:center;background:#ffffffbd;border:5px solid #fff;border-radius:max(28px,min(6vw,54px));justify-items:center;gap:max(12px,min(2.5vh,24px));width:min(94vw,680px);padding:max(24px,min(5vw,52px));display:grid;box-shadow:0 20px 60px #7d4c1f2e}.hero-illustration{justify-content:center;align-items:center;gap:14px;width:min(68vw,390px);display:flex}.hero-illustration>svg{filter:drop-shadow(0 9px 7px #6f2d1933);width:34%}.hero-plus{color:#e39a2c;font-size:max(34px,min(8vw,68px))}.mini-basket{width:44%}.start-card h1{color:#d83c43;letter-spacing:-.04em;margin:0;font-size:max(44px,min(10vw,84px));line-height:.95}.start-card p{margin:0;font-size:max(20px,min(4.5vw,32px));font-weight:750}.primary-button{color:#fff;cursor:pointer;touch-action:manipulation;background:linear-gradient(#61bc50,#3b963b);border:0;border-radius:999px;min-width:min(78vw,340px);min-height:76px;font-size:max(28px,min(6vw,42px));font-weight:900;box-shadow:0 9px #2d7731,0 16px 28px #2f752f38}.primary-button:active{transform:translateY(6px);box-shadow:0 3px #2d7731,0 8px 18px #2f752f2e}.game-screen{grid-template-rows:auto minmax(0,1fr);gap:max(8px,min(1.7vh,18px));display:grid;position:relative}.instruction-panel{background:#ffffffb8;border:4px solid #ffffffd9;border-radius:max(22px,min(4vw,38px));justify-content:center;align-items:center;gap:max(16px,min(4vw,42px));min-height:112px;padding:10px max(14px,min(3vw,30px));display:flex;box-shadow:0 10px 28px #764e221f}.instruction-panel p{text-align:center;max-width:480px;margin:0;font-size:max(18px,min(4vw,34px));font-weight:850;line-height:1.05}.target-row{align-items:center;gap:max(10px,min(2vw,20px));display:flex}.target-number{aspect-ratio:1;color:#fff;background:linear-gradient(160deg,#ff6b5f,#d93343);border:5px solid #fff;border-radius:31%;place-items:center;width:max(82px,min(14vw,128px));font-size:max(58px,min(11vw,104px));line-height:1;display:grid;box-shadow:0 8px #ac2734,0 14px 25px #96273438}.target-dots{grid-template-columns:repeat(3,20px);gap:8px;width:76px;display:grid}.target-dots span{aspect-ratio:1;background:#e9a134;border-radius:50%;width:20px;box-shadow:inset 0 -3px #8e571033}.play-area{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);align-items:center;gap:max(8px,min(3vw,34px));min-height:0;display:grid}.apple-tray{background:#ffffff61;border:4px dashed #d78d355c;border-radius:max(24px,min(4vw,42px));grid-template-rows:repeat(2,minmax(92px,1fr));grid-template-columns:repeat(3,minmax(84px,1fr));place-items:center;gap:max(4px,min(1.5vw,18px));height:100%;min-height:0;padding:max(8px,min(2vw,20px));display:grid}.apple-slot{place-items:center;width:100%;height:100%;display:grid}.draggable-apple{z-index:2;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none;will-change:transform;background:0 0;border:0;width:max(88px,min(15vw,142px));height:max(94px,min(16vw,150px));padding:0;transition:transform .22s cubic-bezier(.2,.8,.2,1),filter .16s;position:relative}.draggable-apple svg{pointer-events:none;filter:drop-shadow(0 10px 7px #65281c3b);width:100%;height:100%}.draggable-apple.is-dragging{z-index:100;cursor:grabbing;filter:brightness(1.05);transition:filter .12s}.draggable-apple:disabled{cursor:default}.basket-drop-zone{background:#fffae6ad;border:6px dashed #e6a444;border-radius:max(30px,min(5vw,50px));place-items:center;width:100%;min-width:250px;min-height:250px;padding:22px 8px 8px;display:grid;position:relative;box-shadow:inset 0 0 0 9px #fff6,0 15px 35px #73491921}.basket-drop-zone:before{content:"IDE";color:#c88125;letter-spacing:.12em;font-size:max(18px,min(3.5vw,30px));font-weight:950;position:absolute;top:12px}.basket-drop-zone.is-complete{border-style:solid;border-color:#66ad4d;animation:.65s both basket-success}.basket-graphic{width:min(100%,390px);position:relative}.basket-graphic svg{filter:drop-shadow(0 12px 7px #5e391533);width:100%;display:block}.basket-count{color:#ffffff85;justify-content:center;gap:5px;font-size:max(14px,min(3vw,24px));display:flex;position:absolute;bottom:19%;left:21%;right:21%}.basket-count .filled{color:#d9363e;text-shadow:0 2px #8e2830}.success-panel{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff4d6d1;place-content:center;justify-items:center;gap:24px;padding:24px;animation:.24s both fade-in;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.success-panel h2{z-index:2;color:#d83c43;text-align:center;text-shadow:0 5px #fff;margin:0;font-size:max(52px,min(13vw,110px));line-height:.95}.next-button{z-index:2}.celebration{pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.celebration span{animation:1.25s cubic-bezier(.15,.7,.2,1) both burst;animation-delay:var(--delay);font-size:max(22px,min(5vw,46px));position:absolute;top:54%;left:50%}@keyframes burst{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)scale(.2)}15%{opacity:1}to{transform:translate(-50%, -50%) rotate(var(--rotation)) translateY(calc(var(--distance) * -1)) scale(1.2);opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes basket-success{0%,to{transform:scale(1)}35%{transform:scale(1.05)rotate(-1deg)}70%{transform:scale(1.03)rotate(1deg)}}@media (orientation:portrait){.instruction-panel{flex-direction:column;gap:8px;min-height:150px}.play-area{grid-template-rows:minmax(0,1fr) minmax(190px,.72fr);grid-template-columns:1fr}.apple-tray{grid-template-columns:repeat(3,1fr)}.basket-drop-zone{min-height:190px}.basket-graphic{width:min(78vw,330px)}}@media (max-height:620px) and (orientation:landscape){.app-shell{padding-top:max(8px, env(safe-area-inset-top));padding-bottom:max(8px, env(safe-area-inset-bottom))}.game-screen{grid-template-rows:94px minmax(0,1fr)}.instruction-panel{min-height:94px}.instruction-panel p{font-size:max(18px,min(3.2vw,26px))}.target-number{width:72px;font-size:54px}.draggable-apple{width:max(76px,min(12vw,116px));height:max(82px,min(13vw,124px))}.basket-drop-zone{min-height:210px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
