:root{--ink:#21183a;--panel:#fff8ea;--sun:#ffd23f;--green:#8bd346;--red:#e63946;--purple:#3d2c8d;--sky:#5bc0eb;--font:"Lilita One", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);-webkit-user-select:none;user-select:none;background:#7cc8f0;margin:0;overflow:hidden}#app canvas{display:block}#ui{pointer-events:none;color:var(--ink);position:fixed;inset:0}.hidden{display:none!important}.panel{background:var(--panel);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);border-radius:16px}.outlined{color:#fff;text-shadow:-2px -2px 0 var(--ink), 2px -2px 0 var(--ink), -2px 2px 0 var(--ink), 2px 2px 0 var(--ink), 0 4px 0 var(--ink)}.clock{background:var(--purple);color:#fff;min-width:210px;padding:8px 18px 10px;position:absolute;top:16px;left:16px}.clock-time{letter-spacing:1px;text-shadow:0 3px 0 var(--ink);font-size:40px;line-height:1}.clock-date{opacity:.9;margin-top:2px;font-size:16px}.clock-weather{font-size:26px;position:absolute;top:8px;right:12px}.goals{min-width:210px;max-width:280px;padding:10px 16px;position:absolute;top:118px;left:16px}.goals-title{color:var(--purple);margin-bottom:4px;font-size:18px}.goals ul{margin:0;padding:0;font-size:15px;list-style:none}.goals li{margin:3px 0}.goals li.done{color:#3a9a2e;opacity:.8;text-decoration:line-through}.money{background:var(--sun);align-items:center;gap:8px;padding:6px 18px 6px 10px;font-size:28px;display:flex;position:absolute;top:16px;right:16px}.coin{font-size:26px}.energy{flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;bottom:28px;right:24px}.energy-bar{border:3px solid var(--ink);width:30px;height:170px;box-shadow:0 4px 0 var(--ink);background:#3a2f55;border-radius:12px;align-items:flex-end;display:flex;overflow:hidden}.energy-fill{background:linear-gradient(#b8f070,#5cc45a);width:100%;transition:height .25s}.energy-fill.low{background:linear-gradient(#ff8a8a, var(--red));animation:.8s infinite blink}.energy-label{font-size:22px}.hotbar{gap:8px;display:flex;position:absolute;bottom:38px;left:50%;transform:translate(-50%)}.slot{background:var(--panel);border:3px solid var(--ink);width:78px;height:78px;box-shadow:0 5px 0 var(--ink);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;transition:transform .12s;display:flex;position:relative}.slot.active{background:var(--sun);transform:translateY(-10px)scale(1.08)}.slot.empty .slot-icon{filter:grayscale();opacity:.45}.slot-key{opacity:.6;font-size:13px;position:absolute;top:2px;left:7px}.slot-icon{font-size:30px;line-height:1}.slot-name{margin-top:3px;font-size:11px}.slot-count{border:2px solid var(--ink);background:#fff;border-radius:10px;padding:1px 7px;font-size:13px;position:absolute;bottom:-10px;right:-8px}.help{color:#fff;opacity:.85;text-shadow:0 1px 2px #000;white-space:nowrap;font-size:12px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.prompt{color:#fff;white-space:nowrap;background:#21183ad9;border-radius:12px;padding:6px 16px;font-size:20px;position:absolute;bottom:150px;left:50%;transform:translate(-50%)}.prompt.disabled{color:#ffb4b4}.key{background:var(--sun);color:var(--ink);border:2px solid var(--ink);box-shadow:0 2px 0 var(--ink);border-radius:7px;margin-right:4px;padding:0 8px;display:inline-block}.toasts{flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:90px;left:50%;transform:translate(-50%)}.toast{background:var(--panel);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);text-align:center;border-radius:14px;max-width:560px;padding:8px 18px;font-size:18px;animation:.25s ease-out pop-in}.toast.out{opacity:0;transition:all .4s;transform:translateY(-10px)}.floaters{position:absolute;inset:0}.floater{white-space:nowrap;text-shadow:-2px -2px 0 var(--ink), 2px -2px 0 var(--ink), -2px 2px 0 var(--ink), 2px 2px 0 var(--ink), 0 3px 0 var(--ink);font-size:24px;position:absolute;top:0;left:0}.dialog{pointer-events:auto;cursor:pointer;background:var(--panel);border:4px solid var(--ink);width:min(760px,90vw);box-shadow:0 7px 0 var(--ink);border-radius:20px;padding:26px 26px 20px;animation:.2s ease-out pop-in;position:absolute;bottom:150px;left:50%;transform:translate(-50%)}.dialog-name{color:#fff;background:var(--purple);border:3px solid var(--ink);border-radius:12px;padding:3px 16px;font-size:20px;position:absolute;top:-20px;left:24px}.dialog-text{min-height:60px;font-family:system-ui,sans-serif;font-size:22px;font-weight:700;line-height:1.35}.dialog-hint{text-align:right;opacity:.55;margin-top:6px;font-size:14px}.modal-back{pointer-events:auto;background:#21183a73;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal{text-align:center;width:min(520px,90vw);padding:22px 26px;animation:.22s ease-out pop-in}.modal h2{color:var(--purple);margin:0 0 8px;font-size:30px;font-weight:400}.modal p{margin:0 0 18px;font-family:system-ui,sans-serif;font-size:17px;font-weight:600;line-height:1.4}.modal-buttons{justify-content:center;gap:12px;display:flex}button{font-family:var(--font);cursor:pointer;color:var(--ink);border:3px solid var(--ink);box-shadow:0 5px 0 var(--ink);background:#fff;border-radius:14px;padding:8px 22px;font-size:20px}button.primary{background:var(--green)}button:hover{filter:brightness(1.07)}button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.inventory{pointer-events:auto;width:min(620px,92vw);padding:20px 24px;animation:.2s ease-out pop-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.inventory h2{color:var(--purple);margin:0;font-size:28px;font-weight:400}.inventory h3{margin:14px 0 6px;font-size:20px;font-weight:400}.inv-note{opacity:.7;margin:2px 0 10px;font-family:system-ui,sans-serif;font-size:14px}.inv-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;display:grid}.item{border:2px solid var(--ink);background:#fff;border-radius:10px;align-items:center;gap:8px;padding:6px 10px;font-size:16px;display:flex}.item b{margin-left:auto}.item.q-prata{background:#eef3ff}.item-icon{font-size:22px}.inv-hint{opacity:.6;margin-top:14px;font-size:13px}.fade{opacity:0;background:#120c24;transition:opacity .6s;position:absolute;inset:0}.fade.on{opacity:1}.daycard{text-align:center;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.daycard.show{animation:2.4s ease-out forwards daycard}.daycard-title{color:var(--sun);text-shadow:-4px -4px 0 var(--ink), 4px -4px 0 var(--ink), -4px 4px 0 var(--ink), 4px 4px 0 var(--ink), 0 8px 0 var(--ink);font-size:96px}.daycard-sub{color:#fff;text-shadow:0 3px 0 var(--ink);font-size:30px}@keyframes pop-in{0%{opacity:0;transform:scale(.7)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.dialog,.toast{transform-origin:50%}.dialog{animation-name:dialog-in}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}.inventory{animation-name:inv-in}@keyframes inv-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes daycard{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}25%{transform:translate(-50%,-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}@keyframes blink{50%{opacity:.55}}
