:root{color-scheme:light;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:#f0e6d3;color:#2d1b0e;overflow-x:hidden}.title-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#4a7c59,#2d5a3f,#1e3d2b);position:relative;overflow:hidden}.title-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.05) 0%,transparent 50%)}.title-logo{text-align:center;z-index:1;animation:titleBounce 2s ease-in-out infinite}@keyframes titleBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.title-emoji{font-size:5rem;display:block;margin-bottom:.5rem}.title-screen h1{font-size:3rem;color:#fff;text-shadow:3px 3px 0 rgba(0,0,0,.2);margin-bottom:.25rem;letter-spacing:-.02em}.title-subtitle{font-size:1.2rem;color:#fffc;margin-bottom:2.5rem}.title-stars{font-size:2rem;margin-bottom:2rem;animation:starPulse 1.5s ease-in-out infinite}@keyframes starPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.btn{padding:.85rem 2.5rem;border:none;border-radius:2rem;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.05em}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,#f5a623,#e8912d);color:#fff;box-shadow:0 4px 15px #f5a62366}.btn-secondary{background:#ffffff26;color:#fff;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-small{padding:.5rem 1.2rem;font-size:.85rem}.recipe-select{min-height:100vh;padding:2rem;background:linear-gradient(180deg,#f0e6d3,#e8d5b8)}.recipe-select h2{text-align:center;font-size:2rem;color:#2d5a3f;margin-bottom:.5rem}.recipe-select-subtitle{text-align:center;color:#7a6a55;margin-bottom:2rem}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;max-width:960px;margin:0 auto}.recipe-card{background:#fff;border-radius:1rem;padding:1.5rem;cursor:pointer;transition:all .25s;border:3px solid transparent;box-shadow:0 2px 10px #0000000f;position:relative;overflow:hidden}.recipe-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000001a;border-color:#4a7c59}.recipe-card-emoji{font-size:3rem;display:block;margin-bottom:.75rem}.recipe-card h3{font-size:1.2rem;color:#2d5a3f;margin-bottom:.25rem}.recipe-card-desc{color:#7a6a55;font-size:.9rem;margin-bottom:.75rem}.recipe-card-stars{display:flex;gap:.25rem}.recipe-card-stars .star{font-size:1.3rem}.recipe-card-stars .star.earned{color:#f5a623}.recipe-card-stars .star.empty{color:#ddd}.recipe-difficulty{position:absolute;top:1rem;right:1rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.2rem .6rem;border-radius:1rem}.diff-easy{background:#d4edda;color:#155724}.diff-medium{background:#fff3cd;color:#856404}.diff-hard{background:#f8d7da;color:#721c24}.back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:#4a7c59;font-size:1rem;font-weight:600;cursor:pointer;margin-bottom:1.5rem;padding:.5rem 0}.back-btn:hover{color:#2d5a3f}.game-screen{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:linear-gradient(180deg,#f5efe4,#e8dcc8)}.game-topbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#2d5a3f;color:#fff}.game-topbar-recipe{font-weight:700;font-size:1.1rem}.game-timer{display:flex;align-items:center;gap:.5rem;font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums}.game-timer.warning{color:#ff6b6b;animation:timerFlash .5s ease-in-out infinite}@keyframes timerFlash{0%,to{opacity:1}50%{opacity:.5}}.game-score{display:flex;align-items:center;gap:.5rem;font-weight:700}.game-area{display:grid;grid-template-columns:260px 1fr 260px;gap:1rem;padding:1rem;overflow:hidden}.ingredient-shelf{background:#fff;border-radius:1rem;padding:1rem;overflow-y:auto;box-shadow:0 2px 10px #0000000f}.ingredient-shelf h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:#7a6a55;margin-bottom:.75rem;text-align:center}.ingredient-item{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;border-radius:.75rem;cursor:pointer;transition:all .2s;margin-bottom:.4rem;border:2px solid transparent;-webkit-user-select:none;user-select:none}.ingredient-item:hover{background:#f0e6d3;border-color:#c4b49a}.ingredient-item.selected{background:#e8f5e9;border-color:#4a7c59}.ingredient-item.in-bowl{opacity:.4;pointer-events:none}.ingredient-item .ing-emoji{font-size:1.5rem;flex-shrink:0}.ingredient-item .ing-name{font-weight:600;font-size:.9rem}.ingredient-item .ing-prep{font-size:.7rem;color:#999;margin-left:auto}.workspace{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.cutting-board{width:100%;max-width:400px;aspect-ratio:4/3;background:linear-gradient(135deg,#d4a574,#c49464);border-radius:1rem;border:4px solid #b8845a;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 15px #00000026,inset 0 2px 4px #fff3}.cutting-board-empty{color:#ffffff80;font-size:1rem;text-align:center}.cutting-board .ingredient-on-board{font-size:4rem;animation:ingredientAppear .3s ease-out}@keyframes ingredientAppear{0%{transform:scale(0) rotate(-20deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.cutting-board .prep-label{margin-top:.5rem;font-weight:700;color:#fffc;font-size:.9rem}.action-buttons{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.action-btn{padding:.65rem 1.5rem;border:none;border-radius:.75rem;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.4rem}.action-btn:hover{transform:translateY(-2px)}.action-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.action-chop{background:#e74c3c;color:#fff}.action-slice{background:#3498db;color:#fff}.action-dice{background:#9b59b6;color:#fff}.action-tear{background:#2ecc71;color:#fff}.action-toss{background:#f39c12;color:#fff}.action-add{background:#1abc9c;color:#fff}.action-done{background:#2d5a3f;color:#fff}.salad-bowl-area{background:#fff;border-radius:1rem;padding:1rem;box-shadow:0 2px 10px #0000000f;display:flex;flex-direction:column}.salad-bowl-area h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:#7a6a55;margin-bottom:.75rem;text-align:center}.salad-bowl{flex:1;min-height:200px;background:linear-gradient(180deg,#f5f5f0,#ebe5d8);border-radius:1rem;border:3px solid #d4c5a9;padding:1rem;display:flex;flex-direction:column;gap:.3rem;overflow-y:auto;position:relative}.bowl-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#bbb;font-style:italic}.bowl-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .6rem;background:#4caf5014;border-radius:.5rem;animation:dropIn .3s ease-out;font-size:.9rem}@keyframes dropIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.bowl-item .bowl-emoji{font-size:1.2rem}.bowl-item .bowl-prep{font-size:.7rem;color:#888;margin-left:auto}.recipe-checklist{margin-top:1rem;border-top:2px dashed #e0d5c5;padding-top:.75rem}.recipe-checklist h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:#7a6a55;margin-bottom:.5rem}.checklist-item{display:flex;align-items:center;gap:.4rem;padding:.2rem 0;font-size:.85rem;color:#666}.checklist-item.done{color:#4a7c59;text-decoration:line-through}.checklist-item .check-emoji{font-size:1rem}.deco-phase{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem}.deco-bowl{width:280px;height:220px;background:linear-gradient(180deg,#f5f5f0,#ebe5d8);border-radius:50% 50% 45% 45%;border:4px solid #d4c5a9;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;padding:2rem;position:relative;box-shadow:0 4px 15px #0000001a}.deco-items{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.deco-item{font-size:2.5rem;cursor:pointer;transition:all .2s;padding:.5rem;border-radius:.75rem;border:3px solid transparent}.deco-item:hover{transform:scale(1.15);background:#4caf501a}.deco-item.selected{border-color:#4a7c59;background:#4caf5026}.deco-placed{font-size:2rem;animation:decoPlace .4s ease-out;cursor:pointer}@keyframes decoPlace{0%{transform:scale(0) rotate(-30deg)}to{transform:scale(1) rotate(0)}}.result-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;background:linear-gradient(135deg,#2d5a3f,#1e3d2b)}.result-salad{width:250px;height:200px;background:linear-gradient(180deg,#f5f5f0,#ebe5d8);border-radius:50% 50% 45% 45%;border:4px solid #d4c5a9;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;padding:2rem;box-shadow:0 8px 30px #0000004d;animation:resultAppear .6s ease-out}@keyframes resultAppear{0%{transform:scale(.5) rotate(-10deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.result-stars{font-size:3rem;display:flex;gap:.5rem}.result-stars .star{animation:starReveal .5s ease-out backwards}.result-stars .star:nth-child(1){animation-delay:.3s}.result-stars .star:nth-child(2){animation-delay:.6s}.result-stars .star:nth-child(3){animation-delay:.9s}@keyframes starReveal{0%{transform:scale(0) rotate(-180deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.result-title{font-size:2rem;color:#fff;text-align:center}.result-stats{display:flex;gap:2rem;color:#fffc;font-size:1rem}.result-stat{text-align:center}.result-stat .stat-val{font-size:1.8rem;font-weight:700;color:#f5a623}.result-buttons{display:flex;gap:1rem}.progress-bar{width:100%;height:8px;background:#fff3;border-radius:4px;overflow:hidden;margin-top:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4a7c59,#2ecc71);border-radius:4px;transition:width .3s ease}.chop-animation{animation:chopAnim .4s ease-in-out}@keyframes chopAnim{0%{transform:translateY(0)}25%{transform:translateY(-15px)}50%{transform:translateY(5px)}to{transform:translateY(0)}}.slice-animation{animation:sliceAnim .4s ease-in-out}@keyframes sliceAnim{0%{transform:translate(0)}25%{transform:translate(-20px)}75%{transform:translate(20px)}to{transform:translate(0)}}.shake{animation:shakeAnim .5s ease-in-out}@keyframes shakeAnim{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@media(max-width:900px){.game-area{grid-template-columns:1fr;grid-template-rows:auto auto auto}.ingredient-shelf{max-height:180px}.ingredient-shelf .ingredient-items{display:flex;flex-wrap:wrap;gap:.3rem}.salad-bowl-area{min-height:150px}}@media(max-width:600px){.title-screen h1{font-size:2rem}.title-emoji{font-size:3.5rem}.recipe-grid{grid-template-columns:1fr}.game-topbar{flex-wrap:wrap;gap:.5rem}}
