:root{--text:#6b6375;--text-h:#08060d;--bg:#f4f9eb;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#f4f9eb;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0;overflow:hidden}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100vw;height:100vh;margin:0 auto;display:flex;overflow:hidden}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.auth-container{background-color:#fff;border-radius:12px;max-width:400px;margin:60px auto;padding:30px;box-shadow:0 4px 15px #0000000d}.auth-title{text-align:center;color:#333;margin-bottom:24px;font-size:24px}.auth-input-group{margin-bottom:16px}.auth-label{color:#555;margin-bottom:8px;font-size:14px;font-weight:700;display:block}.auth-input{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;width:100%;padding:12px;font-size:16px;transition:border-color .2s}.auth-input:focus{border-color:#4caf50;outline:none}.auth-button{color:#fff;cursor:pointer;background-color:#4caf50;border:none;border-radius:8px;width:100%;margin-top:10px;padding:14px;font-size:16px;font-weight:700;transition:background-color .2s}.auth-button:hover{background-color:#388e3c}.auth-button:disabled{cursor:not-allowed;background-color:#a5d6a7}.auth-link-text{text-align:center;color:#666;margin-top:24px;font-size:14px}.auth-link{color:#4caf50;font-weight:700;text-decoration:none}.auth-link:hover{text-decoration:underline}.field-container{text-align:center;width:100%;padding:10px;font-family:sans-serif;position:relative}.field-title{color:#2e7d32;letter-spacing:1.5px;text-shadow:0 2px 4px #2e7d3226;justify-content:center;align-items:center;gap:8px;margin:0 0 16px;font-size:24px;font-weight:800;display:flex}.field-title:before{content:"🌱";filter:drop-shadow(0 2px 2px #0000001a);font-size:20px}.field-title:after{content:"🌱";filter:drop-shadow(0 2px 2px #0000001a);font-size:20px;transform:scaleX(-1)}.system-toast{color:#fff;z-index:100;cursor:pointer;white-space:pre-wrap;background-color:#4caf50f2;border-radius:12px;width:max-content;max-width:90%;padding:12px 24px;font-size:14px;font-weight:700;transition:opacity .3s;position:absolute;top:40px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0003}.field-board{aspect-ratio:9/8;background-image:url(/VegeTASK_%E7%95%91.png);background-position:50%;background-repeat:no-repeat;background-size:contain;height:60vh;margin:0 auto;position:relative}.crop-slot{flex-direction:column;justify-content:flex-end;align-items:center;width:8.888%;height:10%;display:flex;position:absolute;transform:translate(-50%,-80%)}.crop-wrapper{flex:1;width:100%;position:relative}.popup-tooltip{white-space:nowrap;z-index:20;border-radius:12px;padding:6px 12px;font-size:12px;font-weight:700;animation:.2s ease-out forwards popUpFadeIn;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 4px 8px #0003}.popup-tooltip:after{content:"";border-style:solid;border-width:6px;margin-left:-6px;position:absolute;top:100%;left:50%}.hover-task-name{color:#fff;pointer-events:none;background-color:#ff9800;border:2px solid #fff}.hover-task-name:after{border-color:#ff9800 #0000 #0000}.growth-message{color:#ff9800;cursor:pointer;z-index:25;background-color:#fff;border:2px solid #ff9800}.growth-message:after{border-color:#ff9800 #0000 #0000}.crop-image{transform-origin:bottom;width:auto;height:auto;image-rendering:pixelated;transition:opacity 1s;position:absolute;left:50%}.crop-label{color:#fff;zoom:.8;white-space:nowrap;z-index:2;border-radius:3px;margin-top:2px;padding:1px 3px;font-size:8px;position:relative;box-shadow:0 1px 2px #0000004d}@keyframes popUpFadeIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,-6px)}}@keyframes bounceHarvest{0%,to{transform:translateX(-50%) scale(var(--target-scale)) translateY(0);filter:drop-shadow(0 0 4px #ffd70099)}50%{transform:translateX(-50%) scale(var(--target-scale)) translateY(-8px);filter:drop-shadow(0 0 12px gold)}}.home-container{box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;width:100%;display:flex}.home-layout{align-items:center;gap:32px;width:100%;display:flex}.home-field-section{flex:6;justify-content:center;align-items:center;display:flex}.todo-section{box-sizing:border-box;background:#fff;border:1px solid #eaeaea;border-radius:24px;flex:4;height:60vh;padding:0;overflow-y:auto;box-shadow:0 8px 24px #0000000a}.todo-section::-webkit-scrollbar{width:5px}.todo-section::-webkit-scrollbar-track{background:0 0;margin-top:65px;margin-bottom:12px}.todo-section::-webkit-scrollbar-thumb{background:#00000026;border-radius:999px}.todo-section::-webkit-scrollbar-thumb:hover{background:#00000040}.todo-header{z-index:100;text-align:center;background:#fff;border-bottom:2px solid #a0f56fb9;margin:0;padding:14px 0;position:sticky;top:0}.todo-header h2{color:#1f3b5b;margin:0;font-size:22px;font-weight:700}.todo-empty{color:#888;text-align:center;margin-top:40px}.todo-list{margin:0;padding:16px 24px 24px;list-style:none}.todo-item{border-bottom:1px solid #f5f5f5;border-radius:8px;align-items:flex-start;padding:16px 12px;transition:background-color .2s,transform .1s;display:flex}.todo-item:hover{background-color:#fcfcfc}.todo-item:last-child{border-bottom:none}.todo-item.completed-row{opacity:.5;pointer-events:none;background-color:#fafafa}.todo-checkbox{appearance:none;cursor:pointer;background:#fff;border:2px solid #dcdcdc;border-radius:6px;width:22px;height:22px;position:relative}.todo-checkbox:checked{background:0 0;border:none}.todo-checkbox:checked:after{content:"✅";justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.todo-checkbox:disabled{cursor:not-allowed;opacity:.4;background-color:#f5f5f5}.todo-details{text-align:left;flex-direction:column;flex:1;align-items:flex-start;display:flex}.todo-badge{color:#2e7d32;background-color:#e8f5e9;border-radius:6px;margin-bottom:8px;padding:4px 8px;font-size:11px;font-weight:700}.todo-title{color:#333;margin-bottom:4px;font-size:16px;font-weight:700;line-height:1.4;display:block}.todo-title.completed{color:#b0bec5;text-decoration:line-through}.todo-content{color:#78909c;font-size:13px}.todo-content.completed{color:#b0bec5}.todo-warning{color:#e53935;background-color:#ffebee;border-radius:4px;margin-top:6px;padding:2px 6px;font-size:11px;font-weight:700}.harvest-overlay{z-index:100000;cursor:pointer;background-color:#000000bf;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.3s ease-out forwards fadeInOverlay;display:flex;position:fixed;top:0;left:0}.harvest-image{object-fit:contain;filter:drop-shadow(0 0 30px #ffd700cc);width:320px;height:auto;animation:.6s cubic-bezier(.175,.885,.32,1.275) forwards popOutImage}.harvest-title{color:#fff;text-shadow:0 4px 12px #000c;margin-top:30px;font-size:36px;font-weight:800;animation:.5s ease-out .3s both slideUpText}.harvest-subtitle{color:#e0e0e0;margin-top:12px;font-size:18px;font-weight:700;animation:.5s ease-out .5s both slideUpText}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes popOutImage{0%{opacity:0;transform:scale(0)translateY(100px)}60%{opacity:1;transform:scale(1.1)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes slideUpText{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.basket-container{box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;display:flex}.basket-title-wrapper{justify-content:center;align-items:center;margin-bottom:2vh;display:flex;position:relative}.basket-title{color:#2e7d32;letter-spacing:1.5px;text-shadow:0 2px 4px #2e7d3226;justify-content:center;align-items:center;gap:8px;margin:0;font-size:24px;font-weight:800;display:flex}.basket-title:before{content:"🧺";filter:drop-shadow(0 2px 2px #0000001a);font-size:20px}.basket-title:after{content:"🧺";filter:drop-shadow(0 2px 2px #0000001a);font-size:20px;transform:scaleX(-1)}.basket-card{background-color:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;max-height:90vh;padding:3vh 2vw;display:flex;box-shadow:0 4px 12px #0000000d}.basket-area{aspect-ratio:4/3;justify-content:center;height:55vh;display:flex;position:relative;overflow:hidden}.basket-stage{width:100%;height:88.9%;position:absolute;top:27.8%;left:0}.basket-layer-back{object-fit:contain;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.basket-layer-front{object-fit:contain;z-index:10000;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.basket-veg-container{z-index:20;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.basket-veg-item{width:auto;max-width:none;height:auto;max-height:none;image-rendering:pixelated;touch-action:none;transform-origin:bottom;position:absolute}.basket-summary{text-align:center;margin-top:3vh}.basket-summary-title{color:#4caf50;margin:0 0 1vh}.basket-summary-text{color:#555;font-size:18px;font-weight:700}.basket-summary-count{color:#ff9800;font-size:24px}
