:root{--bg-light: #e8d4a8;--bg-medium: #d4b896;--bg-tertiary: #c9a96e;--primary-brown: #8b5a2b;--dark-brown: #5c3a1e;--text-dark: #2c1810;--accent-orange: #c67c3b;--accent-orange-light: #d4935a;--accent-gold: #ffd89b;--text-light: #f4e4c1;--game-bg: #a7b682;--retro-green: #8b5a2b;--retro-bg-dark: #5c3a1e;--retro-bg-panel: #d4b896;--retro-bg-lighter: #e8d4a8;--retro-grid: rgba(139, 90, 43, .1);--retro-black: #2c1810;--retro-gray-dark: #5c3a1e;--retro-gray: #8b5a2b;--retro-gray-med: #c67c3b;--retro-gray-light: #d4b896;--retro-white: #f4e4c1;--retro-yellow: #ffd89b;--retro-red: #c67c3b;--font-ui: "Inter", sans-serif;--font-code: "Fira Code", monospace;--font-retro: "Press Start 2P", cursive;--ui-header-height: 56px;--ui-edge-gutter: 20px;--app-height: 100dvh;--app-width: 100vw}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;min-height:var(--app-height);height:var(--app-height)}body{background-color:var(--bg-light);color:var(--text-dark);font-family:var(--font-ui);overflow:hidden;width:100%;height:var(--app-height);-webkit-user-select:none;user-select:none}.pixel-border{border:4px solid var(--retro-white);box-shadow:-4px 0 0 0 var(--retro-black),4px 0 0 0 var(--retro-black),0 -4px 0 0 var(--retro-black),0 4px 0 0 var(--retro-black);background:var(--retro-bg-lighter)}.pixel-btn{background:var(--retro-gray);border:4px solid var(--retro-white);padding:8px;box-shadow:inset -4px -4px 0 0 var(--retro-bg-lighter),inset 4px 4px 0 0 var(--retro-gray-light);cursor:pointer;transition:all .1s;display:flex;align-items:center;justify-content:center;pointer-events:auto;color:var(--retro-white);font-family:var(--font-retro)}.pixel-btn:active{box-shadow:inset 4px 4px 0 0 var(--retro-bg-lighter),inset -4px -4px 0 0 var(--retro-gray-light);transform:translateY(2px)}.pixel-btn.active{border-color:var(--retro-green);color:var(--retro-green)}.pixel-btn:hover:not(:disabled){border-color:var(--retro-green);box-shadow:inset -4px -4px 0 0 var(--retro-bg-lighter),inset 4px 4px 0 0 var(--retro-gray-light),0 0 12px #00ff414d}.custom-scrollbar::-webkit-scrollbar,*::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track,*::-webkit-scrollbar-track{background:var(--retro-black)}.custom-scrollbar::-webkit-scrollbar-thumb,*::-webkit-scrollbar-thumb{background:var(--retro-gray-light);border:2px solid var(--retro-white)}.custom-scrollbar::-webkit-scrollbar-thumb:hover,*::-webkit-scrollbar-thumb:hover{background:var(--retro-gray-med)}.custom-scrollbar,*{scrollbar-width:thin;scrollbar-color:var(--retro-gray-light) var(--retro-black)}.text-retro-xs{font-size:6px}.text-retro-sm{font-size:7px}.text-retro-base{font-size:8px}.text-retro-md{font-size:9px}.text-retro-lg{font-size:10px}.blurred-variable-line,.blurred-variable-values{filter:blur(6px);-webkit-user-select:none;user-select:none;pointer-events:none;transition:filter .3s ease}.menu-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-light);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;-webkit-user-select:none;user-select:none;z-index:1000}.menu-home-link{position:absolute;top:20px;left:20px;z-index:25;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:3px solid var(--primary-brown);background:#e8d4a8f2;color:var(--text-dark);font-family:Fira Code,monospace;font-size:11px;font-weight:700;letter-spacing:.2px;text-decoration:none;box-shadow:inset 1px 1px #fff9,3px 3px #2c181073;transition:transform .1s ease,box-shadow .1s ease,background-color .1s ease}.menu-home-link:hover{transform:translate(1px,1px);background:#fff4dd;box-shadow:inset 1px 1px #ffffffbf,2px 2px #2c181073}.menu-home-link:active{transform:translate(2px,2px);box-shadow:inset 1px 1px #ffffffbf,1px 1px #2c181073}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#2c181099;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:30}.hidden{display:none!important}.cozy-grid-bg{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background-image:linear-gradient(rgba(139,90,43,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(139,90,43,.15) 1px,transparent 1px);background-size:40px 40px;animation:mapDrift 60s linear infinite;z-index:1}@keyframes mapDrift{0%{transform:rotate(5deg) translate(0)}50%{transform:rotate(5deg) translate(-50px,-50px)}to{transform:rotate(5deg) translate(0)}}.sunlight-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,transparent 0%,rgba(92,58,30,.25) 100%);pointer-events:none;z-index:2}.menu-container{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:40px;padding:20px;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.game-title{text-align:center;animation:floatTitle 6s ease-in-out infinite}.title-main{font-family:"Press Start 2P",cursive;font-size:48px;line-height:1.4;color:var(--text-dark);text-shadow:4px 4px 0 var(--bg-medium),8px 8px 0 rgba(92,58,30,.3);margin:12px 0;letter-spacing:-1px}.title-sub{font-family:Fira Code,monospace;font-size:14px;color:var(--accent-orange);letter-spacing:4px;font-weight:700;text-transform:uppercase;background:#ffffff80;padding:4px 8px;border-radius:4px;display:inline-block}.title-version{font-family:Fira Code,monospace;font-size:10px;color:var(--primary-brown);margin-top:8px;opacity:.7}@keyframes floatTitle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.menu-options{display:flex;flex-direction:column;gap:16px;width:360px;max-width:90vw}.menu-btn{position:relative;width:100%;padding:18px;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-family:"Press Start 2P",cursive;font-size:12px;text-transform:uppercase;cursor:pointer;background-color:var(--bg-medium);color:var(--text-dark);border:4px solid var(--primary-brown);box-shadow:inset 2px 2px #ffffff80,0 6px 0 var(--dark-brown),0 12px 10px #00000026;transition:all .1s}.menu-btn:hover{transform:translateY(-2px);background-color:#fff;box-shadow:inset 2px 2px #fffc,0 8px 0 var(--dark-brown),0 14px 14px #0003}.menu-btn:active{transform:translateY(6px);box-shadow:inset 2px 2px #0003,0 0 0 var(--dark-brown)}.menu-btn.btn-primary{background-color:var(--accent-orange);color:var(--text-light);border-color:var(--text-dark);font-size:14px}.menu-btn.btn-primary:hover{background-color:var(--accent-orange-light);color:var(--text-dark)}.menu-btn.btn-multiline{padding:12px}.btn-content-wrapper{display:flex;flex-direction:column;align-items:center}.btn-row{display:flex;align-items:center}.btn-sub-text{font-family:Fira Code,monospace;font-size:9px;color:#ffffffe6;background:#00000026;padding:2px 6px;border-radius:4px;margin-top:6px;font-weight:400;letter-spacing:0}.menu-btn:hover .btn-sub-text{color:var(--text-dark);background:#ffffff4d}.btn-bracket{display:inline-block;opacity:0;width:0;overflow:hidden;transition:all .2s ease;transform:translate(0)}.menu-btn:hover .btn-bracket{opacity:1;width:16px}.menu-btn .btn-bracket:first-child{margin-right:0}.menu-btn:hover .btn-bracket:first-child{margin-right:8px}.menu-btn .btn-bracket:last-child{margin-left:0}.menu-btn:hover .btn-bracket:last-child{margin-left:8px}.selection-container{position:relative;z-index:20;display:flex;flex-direction:column;align-items:center;gap:20px;width:800px;max-width:95vw;animation:slideInUp .3s cubic-bezier(.18,.89,.32,1.28)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.selection-header{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.selection-title{font-family:"Press Start 2P",cursive;font-size:16px;color:var(--text-dark);text-shadow:2px 2px 0 rgba(255,255,255,.5);margin:0}.back-btn{background:none;border:none;font-family:Fira Code,monospace;font-weight:700;color:var(--primary-brown);cursor:pointer;font-size:12px;transition:color .2s}.back-btn:hover{color:var(--accent-orange)}.selection-content{display:flex;gap:24px;width:100%;height:400px}.card-new-game,.card-load-game{flex:1;background-color:var(--bg-medium);border:4px solid var(--primary-brown);padding:24px;display:flex;flex-direction:column;box-shadow:inset 2px 2px #fff6,0 10px 20px #5c3a1e33}.card-new-game{align-items:center;justify-content:center;text-align:center;transition:transform .2s}.card-new-game:hover{background-color:#fff;transform:translateY(-2px)}.card-icon{font-size:48px;color:var(--accent-orange);margin-bottom:16px;text-shadow:2px 2px 0 var(--text-dark)}.card-new-game h3{font-family:"Press Start 2P",cursive;font-size:14px;color:var(--text-dark);margin-bottom:12px}.card-new-game p{font-family:Fira Code,monospace;font-size:11px;color:var(--primary-brown);line-height:1.5;margin-bottom:24px}.action-btn{background-color:var(--accent-orange);color:var(--text-light);border:3px solid var(--text-dark);padding:12px 24px;font-family:"Press Start 2P",cursive;font-size:10px;cursor:pointer;transition:all .1s;box-shadow:4px 4px 0 var(--text-dark)}.action-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--text-dark);background-color:var(--accent-orange-light)}.card-load-game h3{font-family:"Press Start 2P",cursive;font-size:12px;color:var(--primary-brown);margin-bottom:16px;text-align:center;border-bottom:2px dashed var(--primary-brown);padding-bottom:8px}.save-slots-list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--primary-brown) var(--bg-medium)}.save-slot{background-color:var(--bg-light);border:2px solid var(--primary-brown);padding:12px;display:flex;justify-content:space-between;align-items:center;transition:all .2s;min-height:60px}.slot-actions{display:flex;gap:6px;align-items:center}.save-slot.used{cursor:pointer;box-shadow:2px 2px #0000001a}.save-slot.used:hover{border-color:var(--accent-orange);background-color:#fff;transform:translate(2px)}.slot-name{font-family:"Press Start 2P",cursive;font-size:10px;color:var(--text-dark);display:block;margin-bottom:4px}.slot-meta{font-family:Fira Code,monospace;font-size:9px;color:var(--primary-brown)}.load-btn{background-color:var(--game-bg);color:var(--text-dark);border:2px solid var(--dark-brown);font-family:Fira Code,monospace;font-size:9px;font-weight:700;padding:4px 8px;cursor:pointer}.load-btn:hover{filter:brightness(1.1)}.delete-btn{background-color:#b44a2b;color:var(--text-light);border:2px solid var(--dark-brown);font-family:Fira Code,monospace;font-size:9px;font-weight:700;padding:4px 8px;cursor:pointer}.delete-btn:hover{filter:brightness(1.1)}.save-slot.empty{border-style:dashed;justify-content:center;opacity:.6}.slot-empty-text{font-family:Fira Code,monospace;font-size:10px;color:var(--primary-brown)}.save-slot.locked{background-color:#d4b89666;border:2px dashed var(--primary-brown);opacity:.6;cursor:not-allowed;box-shadow:none}.save-slot.locked:hover{transform:none;border-color:var(--primary-brown);background-color:#d4b89666}.locked-name{color:var(--primary-brown)!important;opacity:.7}.locked-meta{font-style:italic;opacity:.8}.locked-icon{font-size:18px;opacity:.5;filter:grayscale(50%)}.confirm-modal{background-color:var(--bg-medium);border:4px solid var(--primary-brown);padding:0;width:400px;max-width:90vw;box-shadow:inset 2px 2px #fff6,0 10px 30px #0006,0 0 0 8px #2c18104d;animation:modalPopIn .2s cubic-bezier(.18,.89,.32,1.28)}@keyframes modalPopIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-header{background-color:#b44a2b;padding:20px;text-align:center;border-bottom:4px solid var(--dark-brown)}.confirm-icon{font-size:36px;margin-bottom:8px;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.3))}.confirm-title{font-family:"Press Start 2P",cursive;font-size:14px;color:var(--text-light);text-shadow:2px 2px 0 rgba(0,0,0,.3);margin:0}.confirm-body{padding:24px;text-align:center}.confirm-text{font-family:Fira Code,monospace;font-size:12px;color:var(--text-dark);line-height:1.6;margin:0 0 12px}.slot-highlight{font-family:"Press Start 2P",cursive;font-size:10px;color:var(--accent-orange);background:#c67c3b33;padding:2px 6px;border-radius:2px}.confirm-warning{font-family:Fira Code,monospace;font-size:10px;color:#b44a2b;font-weight:700;margin:0}.confirm-actions{display:flex;gap:12px;padding:0 24px 24px;justify-content:center}.confirm-btn{flex:1;padding:14px 20px;font-family:"Press Start 2P",cursive;font-size:10px;cursor:pointer;border:3px solid var(--dark-brown);transition:all .1s;box-shadow:4px 4px 0 var(--dark-brown)}.confirm-btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--dark-brown)}.confirm-btn:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--dark-brown)}.confirm-btn.btn-cancel{background-color:var(--bg-light);color:var(--text-dark)}.confirm-btn.btn-cancel:hover{background-color:#fff}.confirm-btn.btn-danger{background-color:#b44a2b;color:var(--text-light)}.confirm-btn.btn-danger:hover{background-color:#c95a3b}.menu-footer{position:absolute;bottom:12px;font-family:Fira Code,monospace;font-size:10px;color:var(--primary-brown);opacity:.6}.settings-panel{width:500px;max-width:95vw;height:auto;max-height:85vh;background-color:var(--bg-light);border:4px solid var(--primary-brown);display:flex;flex-direction:column;box-shadow:inset 0 0 0 4px #ffffff4d,0 20px 60px #000c;animation:popIn .2s cubic-bezier(.18,.89,.32,1.28)}.settings-header{background-color:var(--bg-medium);border-bottom:4px solid var(--primary-brown);padding:16px;display:flex;justify-content:space-between;align-items:center}.settings-title{font-family:"Press Start 2P",cursive;font-size:16px;color:var(--text-dark);margin:0;text-shadow:2px 2px 0 rgba(255,255,255,.5)}.settings-header #close-game-settings{width:28px;height:28px;min-width:28px;min-height:28px;margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;font-family:"Press Start 2P",cursive;font-size:12px;line-height:1;color:var(--text-dark);background:var(--bg-light);border:3px solid var(--primary-brown);box-shadow:2px 2px 0 var(--dark-brown);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease,background-color .08s ease}.settings-header #close-game-settings:hover{background:#fff;transform:translate(1px,1px);box-shadow:1px 1px 0 var(--dark-brown)}.settings-header #close-game-settings:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--dark-brown)}.settings-content-scroll{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px;scrollbar-width:thin;scrollbar-color:var(--primary-brown) var(--bg-light)}.settings-content-scroll::-webkit-scrollbar{width:8px}.settings-content-scroll::-webkit-scrollbar-thumb{background:var(--primary-brown);border-radius:4px}.group-title{font-family:"Press Start 2P",cursive;font-size:10px;color:var(--accent-orange);margin-bottom:16px;border-bottom:2px dashed var(--primary-brown);padding-bottom:4px;display:inline-block}.setting-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.checkbox-row{align-items:center}.setting-label{font-family:Fira Code,monospace;font-size:12px;font-weight:700;color:var(--text-dark)}.settings-divider{height:2px;background-color:var(--primary-brown);opacity:.2;margin:8px 0}.pixel-checkbox-wrapper{position:relative;width:24px;height:24px;cursor:pointer}.pixel-checkbox-wrapper input{position:absolute;opacity:0;width:24px;height:24px;cursor:pointer;z-index:1}.pixel-checkmark{position:absolute;top:0;left:0;height:24px;width:24px;background-color:var(--bg-medium);border:3px solid var(--text-dark);transition:all .1s}.pixel-checkbox-wrapper:hover .pixel-checkmark{background-color:#fff}.pixel-checkbox-wrapper input:checked~.pixel-checkmark{background-color:var(--accent-orange)}.pixel-checkbox-wrapper input:checked~.pixel-checkmark:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:12px;border:solid var(--text-dark);border-width:0 3px 3px 0;transform:rotate(45deg)}.slider-container{width:180px;display:flex;align-items:center}.pixel-slider{-webkit-appearance:none;width:100%;height:12px;background:transparent;cursor:pointer}.pixel-slider::-webkit-slider-runnable-track{width:100%;height:8px;background:var(--primary-brown);border:2px solid var(--text-dark);border-radius:0;box-shadow:inset 1px 1px #0000004d}.pixel-slider::-webkit-slider-thumb{-webkit-appearance:none;height:18px;width:10px;background:var(--accent-orange);border:2px solid var(--text-dark);margin-top:-7px;border-radius:0;box-shadow:inset 1px 1px #ffffff80;transition:transform .1s}.pixel-slider:hover::-webkit-slider-thumb{background:var(--accent-orange-light);transform:scale(1.1)}.pixel-slider::-moz-range-track{width:100%;height:8px;background:var(--primary-brown);border:2px solid var(--text-dark)}.pixel-slider::-moz-range-thumb{height:18px;width:10px;background:var(--accent-orange);border:2px solid var(--text-dark);border-radius:0}.toggle-group{display:flex;gap:4px}.pixel-toggle{background:var(--bg-medium);border:2px solid var(--primary-brown);color:var(--text-dark);font-family:Fira Code,monospace;font-size:9px;padding:4px 8px;cursor:pointer}.pixel-toggle:hover{background:#fff}.pixel-toggle.active{background:var(--accent-orange);color:var(--text-light);border-color:var(--text-dark);box-shadow:inset 2px 2px #0003}.pixel-select-locked{background:var(--bg-medium);border:2px solid var(--primary-brown);color:var(--primary-brown);padding:6px 12px;font-family:Fira Code,monospace;font-size:10px;opacity:.7;cursor:pointer;display:flex;align-items:center;gap:8px}.settings-footer-actions{padding:16px;border-top:4px solid var(--primary-brown);background-color:var(--bg-medium);display:flex;justify-content:center}.settings-panel .menu-btn{position:relative;padding:12px 24px;display:flex;align-items:center;justify-content:center;font-family:"Press Start 2P",cursive;font-size:10px;text-transform:uppercase;cursor:pointer;background-color:var(--bg-medium);color:var(--text-dark);border:4px solid var(--primary-brown);box-shadow:inset 2px 2px #ffffff80,0 6px 0 var(--dark-brown),0 12px 10px #00000026;transition:all .1s}.settings-panel .menu-btn:hover{transform:translateY(-2px);background-color:#fff}.settings-panel .menu-btn.btn-primary{background-color:var(--accent-orange);color:var(--text-light);border-color:var(--text-dark)}.menu-btn.small{padding:12px 24px;font-size:10px;width:auto}.settings-preview{position:fixed;bottom:40px;left:50%;transform:translate(-50%);z-index:2600;pointer-events:auto}.dialogue-panel{position:absolute;top:auto;bottom:60px;left:50%;transform:translate(-50%);width:520px;max-width:calc(100vw - 64px);background-color:var(--bg-medium);border:4px solid var(--primary-brown);outline:4px solid var(--text-dark);outline-offset:0;padding:12px 14px;z-index:240;box-shadow:0 10px #0000004d,0 20px 40px #0009;animation:slideUpFade .3s cubic-bezier(.18,.89,.32,1.28);image-rendering:pixelated}.dialogue-overlay{position:fixed;top:var(--ui-header-height);left:0;right:0;bottom:0;background:#00000073;z-index:210;pointer-events:none}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,20px) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}.dialogue-content{display:flex;gap:12px;align-items:flex-start;position:relative}.avatar-container{flex-shrink:0}.avatar-placeholder{width:44px;height:44px;background-color:var(--bg-light);border:3px solid var(--primary-brown);display:flex;align-items:center;justify-content:center;color:var(--text-dark);font-family:"Press Start 2P",cursive;font-size:18px;box-shadow:inset 2px 2px #fff9,inset -2px -2px #0000001a}.text-container{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding-top:2px}.dialogue-speaker{display:inline-block;background-color:var(--text-dark);color:var(--accent-orange);font-family:"Press Start 2P",cursive;font-size:8px;text-transform:uppercase;letter-spacing:1px;padding:4px 8px;margin-bottom:6px;align-self:flex-start;box-shadow:2px 2px #0003;border:1px solid var(--primary-brown)}.dialogue-message{font-family:Fira Code,monospace;font-size:12px;line-height:1.35;color:var(--text-dark);margin-bottom:6px;padding-right:16px;font-weight:600}.dialogue-buttons{display:flex;justify-content:flex-end}.dialogue-button{background-color:var(--accent-orange);color:var(--text-light);border:2px solid var(--text-dark);font-family:"Press Start 2P",cursive;font-size:8px;text-transform:uppercase;padding:6px 12px;cursor:pointer;margin-top:0;display:flex;align-items:center;gap:8px;box-shadow:3px 3px 0 var(--dark-brown);transition:all .1s}.dialogue-button:hover{background-color:var(--accent-orange-light);color:var(--text-dark);transform:translateY(-2px);box-shadow:3px 5px 0 var(--dark-brown)}.dialogue-button:active{transform:translateY(2px);box-shadow:0 0 0 var(--dark-brown)}.btn-icon{font-size:7px;animation:bounceIcon 1s infinite}.btn-key-hint{font-size:6px;letter-spacing:.5px;opacity:.85;margin-left:6px;display:none}@keyframes bounceIcon{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.close-dialogue-btn{position:absolute;top:12px;right:12px;width:24px;height:24px;background:transparent;border:none;color:var(--primary-brown);font-family:"Press Start 2P",cursive;font-size:12px;cursor:pointer;transition:color .2s;display:flex;align-items:center;justify-content:center}.close-dialogue-btn:hover{color:var(--accent-orange);transform:scale(1.1)}#dialogue-box .close-dialogue-btn{display:none}@media(min-width:768px){.text-retro-xs{font-size:7px}.text-retro-sm{font-size:8px}.text-retro-base{font-size:9px}.text-retro-md{font-size:10px}.text-retro-lg{font-size:12px}}@media(max-width:767px){.pixel-border{border-width:2px;box-shadow:-2px 0 0 0 var(--retro-black),2px 0 0 0 var(--retro-black),0 -2px 0 0 var(--retro-black),0 2px 0 0 var(--retro-black)}.pixel-btn{border-width:2px;box-shadow:none}}@media(max-width:1023px){.pixel-btn{padding:6px 8px;font-size:8px}.execute-btn-inline,.reset-btn-inline{padding:6px 10px;font-size:8px}}@media(max-width:767px){.pixel-btn .btn-text{display:none}.pixel-btn{padding:8px;width:36px;height:36px}.pixel-btn .btn-emoji{font-size:14px;margin:0}#terminal-btn .btn-text{display:none}}@media(max-width:1023px){:root{--ui-header-height: 48px}.dialogue-panel{width:70%;max-width:420px;top:auto;bottom:40px}.dialogue-button .btn-key-hint{display:none}}@media(min-width:1024px){.dialogue-button .btn-label{display:none}.dialogue-button .btn-key-hint{display:inline}}@media(max-width:767px){.dialogue-panel{width:88%;max-width:360px;top:auto;bottom:32px;padding:8px 10px;border-width:3px}.avatar-container{display:none}.dialogue-message{font-size:10px;padding-right:0}.dialogue-speaker{font-size:7px;padding:3px 6px}.dialogue-button{padding:5px 10px;font-size:7px}}@media(max-width:1023px){.inventory-panel{bottom:20px;left:20px;padding:8px}.inventory-item-slot{width:52px;height:52px;border-width:3px}.inventory-item-icon{font-size:24px}.inventory-item-label{font-size:6px;max-width:52px}}@media(max-width:767px){.inventory-panel{bottom:15px;left:15px;padding:6px;width:auto}.inventory-grid{gap:6px}.inventory-item-slot{width:48px;height:48px}.inventory-item-icon{font-size:20px}.inventory-item-label{font-size:6px;margin-top:4px;display:none}}.mobile-touch-ui .virtual-joystick{display:block}.mobile-touch-ui .virtual-joystick.hidden{display:none}@media(max-width:640px)and (orientation:landscape){.virtual-joystick{bottom:15px;left:15px}.joystick-outer{width:100px;height:100px;border-width:3px}.joystick-inner{width:42px;height:42px;border-width:2px}}@media(max-height:400px)and (orientation:landscape){.virtual-joystick{bottom:10px;left:10px}.joystick-outer{width:80px;height:80px}.joystick-inner{width:36px;height:36px}}@media(max-width:1024px){.level-preview{height:200px}.feature-content h3{font-size:1.1rem}}@media(max-width:1200px){.desktop-nav{display:none}.burger-menu{display:flex}.mobile-menu{display:block}}@media(max-width:768px){.nav-container{padding:0 1rem}.logo h1{font-size:.8rem}.hero-section{padding:4rem 1rem 3rem;min-height:50vh}.pixel-border-box{padding:2rem 1.5rem}.title-line-1,.title-line-2,.title-line-3{font-size:1.8rem}.hero-subtitle{font-size:.8rem}.hero-btn-primary,.hero-btn-secondary{font-size:.6rem;padding:.8rem 1.5rem}.section-title{font-size:1.4rem}.features-section{padding:4rem 1rem}.feature{grid-template-columns:1fr;gap:2rem;margin-bottom:4rem}.feature:nth-child(2) .feature-image,.feature:nth-child(3) .feature-image,.feature:nth-child(4) .feature-image{order:1}.feature:nth-child(2) .feature-content,.feature:nth-child(3) .feature-content,.feature:nth-child(4) .feature-content{order:2}.feature-content h3{font-size:.9rem}.feature-content p{font-size:.6rem}.feature-image{min-height:200px;padding:2rem}.feature-img{max-height:180px}.characters-section{padding:4rem 1rem}.characters-grid{grid-template-columns:1fr;gap:2rem}.character-placeholder{width:150px;height:150px}.character-card h3{font-size:.7rem}.levels-section{padding:4rem 1rem}.level-slider{flex-direction:row;gap:1rem;align-items:stretch}.slider-arrow{width:45px;height:45px;font-size:1.2rem;align-self:center}.level-content{width:auto;padding:1.5rem}.level-preview{height:150px}.level-info h3{font-size:.8rem}.level-play-btn{padding:.8rem 1.5rem;font-size:.6rem}.reviews-container{grid-template-columns:1fr}.faq-section{padding:4rem 1rem}.faq-question{font-size:.6rem;padding:1.2rem}.faq-answer p{font-size:.55rem}.footer-content{grid-template-columns:1fr;gap:2rem}}@media(max-width:480px){.logo h1{font-size:.6rem}.burger-line{width:25px;height:2px}.title-line-1,.title-line-2,.title-line-3{font-size:1.4rem}.hero-subtitle{font-size:.7rem}.hero-buttons{flex-direction:column;gap:1rem}.hero-btn-primary,.hero-btn-secondary{font-size:.5rem;padding:.7rem 1.2rem;width:100%}.feature-content{padding:.5rem}.feature-content h3{font-size:.8rem}.feature-content p{font-size:.5rem}.level-slider{gap:.5rem}.slider-arrow{width:40px;height:40px;font-size:1rem}.level-content{padding:1rem}.level-preview{height:120px}.level-info h3{font-size:.7rem}.level-play-btn{padding:.7rem 1.2rem;font-size:.5rem}.faq-question{font-size:.5rem;padding:1rem}.faq-answer p{font-size:.5rem}}@media(max-width:1023px)and (orientation:landscape){.menu-home-link{top:10px;left:10px;padding:8px 10px;font-size:9px;border-width:2px}.menu-container{flex-direction:row;align-items:center;justify-content:space-between;gap:24px;padding:12px 24px;width:min(960px,96vw)}.game-title{text-align:left;animation:none}.title-main{font-size:26px;line-height:1.25;text-shadow:3px 3px 0 var(--bg-medium),6px 6px 0 rgba(92,58,30,.25);margin:8px 0}.title-sub{font-size:10px;letter-spacing:2px;padding:3px 6px}.title-version{font-size:8px}.menu-options{width:clamp(220px,38vw,300px);gap:10px}.menu-btn{padding:12px;font-size:9px;border-width:3px}.menu-btn.btn-primary{font-size:10px}.menu-footer{font-size:8px;bottom:6px}.selection-container{width:92vw;gap:12px}.selection-header{margin-bottom:6px}.selection-title{font-size:13px}.back-btn{font-size:10px}.selection-content{height:60vh;gap:12px}.card-new-game,.card-load-game{padding:14px;border-width:3px}.card-icon{font-size:32px;margin-bottom:10px}.card-new-game h3{font-size:10px;margin-bottom:8px}.card-new-game p{font-size:9px;margin-bottom:12px}.action-btn{font-size:8px;padding:8px 16px}.save-slot{padding:8px;min-height:46px}.slot-name,.slot-meta{font-size:8px}.load-btn,.delete-btn{font-size:8px;padding:4px 6px}}@media(max-width:640px)and (orientation:landscape){.menu-home-link{top:8px;left:8px;padding:6px 8px;font-size:8px}.menu-container{gap:16px;padding:10px 16px}.title-main{font-size:22px}.menu-options{width:clamp(200px,42vw,260px)}.menu-btn{padding:10px;font-size:8px}.menu-btn.btn-primary{font-size:9px}.selection-content{height:55vh}}@media(max-width:767px)and (orientation:portrait){.menu-home-link{top:10px;left:10px;padding:8px 10px;font-size:9px;border-width:2px}.selection-container{width:94vw;max-width:94vw;gap:10px}.selection-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:0}.selection-title{font-size:12px;line-height:1.4}.back-btn{font-size:10px}.selection-content{flex-direction:column;height:auto;max-height:calc(100dvh - 220px);gap:10px;overflow-y:auto;padding-right:2px}.card-new-game,.card-load-game{width:100%;padding:14px;border-width:3px}.card-icon{font-size:30px;margin-bottom:8px}.card-new-game h3{font-size:10px;margin-bottom:8px}.card-new-game p{font-size:9px;margin-bottom:14px}.save-slots-list{max-height:40dvh}.save-slot{padding:8px;min-height:48px}.slot-name,.slot-meta{font-size:8px}.load-btn,.delete-btn{font-size:8px;padding:4px 6px}}@media(max-width:767px){.modal-content{max-width:95%;border-width:2px}.hint-card{padding:10px}.hint-title{font-size:8px}}@media(max-width:1023px)and (orientation:landscape){.pause-menu-container{width:320px;max-width:calc(100vw - 20px);max-height:calc(var(--app-height) - 60px);padding:18px;gap:16px;overflow-y:auto}.pause-title{font-size:16px}.pause-subtitle{font-size:8px;letter-spacing:1px}.pause-options .menu-btn{padding:12px;font-size:10px;border-width:3px}}@media(max-width:1023px){.questlog-panel{width:220px}}@media(max-width:1023px)and (pointer:coarse){.questlog-panel .panel-header-compact{display:none}.questlog-content{padding:6px}.questlog-container{gap:6px}.quest-item{padding:6px 8px;border-width:2px;box-shadow:none}.quest-header{gap:6px;margin-bottom:4px;padding-bottom:4px;border-bottom-width:1px}.quest-status-icon{display:none}.quest-title{font-size:7px;line-height:1.2}.objective-item{font-size:7px;gap:6px;margin-bottom:4px}.objective-checkbox{width:10px;height:10px;border-width:2px}}@media(max-width:767px){.questlog-panel{width:180px;top:70px;left:10px}.quest-item{padding:8px}}@media(max-width:479px){.questlog-panel{top:auto;bottom:90px;left:10px;width:180px;max-height:40vh}.objective-item{align-items:center}.objective-checkbox{margin-top:0}.objective-text{line-height:1.2}}@media(max-width:1023px){.right-sidebar{width:90%;max-width:500px}}@media(max-width:1023px)and (orientation:landscape){.expand-btn-mobile{display:inline-flex;font-size:12px;padding:4px 6px}.right-sidebar{width:45%;max-width:380px;right:auto;left:10px;bottom:10px;padding:4px;max-height:calc(var(--app-height) - 60px)}.code-panel{min-height:280px;box-shadow:0 4px 10px #0000004d}.panel-title{font-size:8px}.right-sidebar.expanded{width:calc(100% - 20px)!important;max-width:none!important;height:calc(var(--app-height) - 70px)!important;max-height:none!important;left:10px!important;right:10px!important;bottom:10px!important;z-index:300!important}.right-sidebar.expanded .code-panel{min-height:100%;max-height:none}.right-sidebar.expanded .expand-btn-mobile:before{content:"✕"}.right-sidebar.expanded .expand-btn-mobile{background-color:var(--accent-orange)}}@media(max-width:767px)and (orientation:landscape){.right-sidebar{width:48%;max-width:340px}.code-panel{min-height:260px}}@media(max-width:640px)and (orientation:landscape){.right-sidebar{width:50%;max-width:300px}.code-panel{min-height:240px}.expand-btn-mobile{font-size:10px;padding:3px 5px}}@media(max-width:600px){.settings-panel{width:100%;height:100%;border:none}.slider-container{width:120px}}@media(min-width:1024px){.top-nav-container{position:relative}.top-nav-actions{position:absolute;left:50%;transform:translate(-50%)}}@media(max-width:1023px){.status-text{display:none}.nav-toggle{display:inline-flex!important}.top-nav-actions{display:none;position:absolute;top:100%;right:-16px;width:200px;flex-direction:column;background-color:var(--bg-medium);border:4px solid var(--primary-brown);border-top:none;padding:10px;box-shadow:-4px 8px 12px #00000080;z-index:560}.top-nav-actions.open{display:flex;animation:slideDown .2s ease-out;z-index:560}.top-nav-actions .pixel-btn{width:100%;justify-content:flex-start;margin-bottom:4px}.pixel-btn .btn-text{display:inline-block!important}}@media(max-width:767px){.top-nav-actions{right:8px;width:clamp(140px,48vw,180px);padding:6px;border-width:3px;box-shadow:-3px 6px 10px #00000059}.top-nav-actions .pixel-btn{margin:0;padding:6px 8px;font-size:7px;border-width:2px;gap:6px;box-shadow:1px 1px 0 var(--dark-brown)}.top-nav-actions .pixel-btn .btn-emoji{width:14px;font-size:10px;text-align:center}.top-nav-actions .pixel-btn .btn-text{letter-spacing:.5px}}@media(max-width:1023px)and (orientation:landscape){:root{--ui-header-height: 44px}.top-nav-container{padding:4px 12px;border-bottom-width:3px}.status-indicator{padding:3px 6px}.status-dot{width:8px;height:8px}.step-nav-btn{width:28px;height:28px;font-size:10px}.top-nav-right .pixel-btn{width:28px;height:28px;padding:0}}@media(max-width:1023px)and (orientation:landscape){.top-nav-actions{right:6px;width:clamp(130px,34vw,170px);padding:6px;border-width:3px;border-top:none;box-shadow:-3px 6px 10px #00000059}.top-nav-actions .pixel-btn{margin:0;padding:4px 6px;font-size:6px;line-height:1.1;border-width:2px;gap:6px;box-shadow:1px 1px 0 var(--dark-brown)}.top-nav-actions .pixel-btn+.pixel-btn{margin-top:4px}.top-nav-actions .pixel-btn .btn-emoji{width:12px;font-size:9px;text-align:center}.top-nav-actions .pixel-btn .btn-text{letter-spacing:.5px}}@media(max-width:479px){.top-nav-container{padding:6px 12px}.status-indicator{padding:4px}.status-dot{width:8px;height:8px}}@media(max-width:479px){.step-nav-btn{width:28px;height:28px;font-size:10px}.top-nav-right .pixel-btn{width:28px;height:28px;padding:0}}@media(max-width:1023px){.pixel-border{border-width:3px;box-shadow:-3px 0 0 0 var(--retro-black),3px 0 0 0 var(--retro-black),0 -3px 0 0 var(--retro-black),0 3px 0 0 var(--retro-black)}.pixel-btn{padding:6px;border-width:3px}.right-sidebar{width:420px;max-width:calc(100vw - 320px);max-height:60vh}.code-panel{min-height:320px;max-height:60vh}.output-console{font-size:10px}.cm-editor{font-size:12px}.code-editor-panel{width:90%;max-height:300px}.code-editor-console{height:60px}.questlog-panel{width:220px}.inventory-grid{grid-template-columns:repeat(4,1fr);gap:8px}.inventory-item-slot{width:48px;height:48px}}@media(max-width:1023px)and (orientation:landscape){.pixel-border{border-width:2px;box-shadow:-2px 0 0 0 var(--retro-black),2px 0 0 0 var(--retro-black),0 -2px 0 0 var(--retro-black),0 2px 0 0 var(--retro-black)}.pixel-btn{padding:4px;font-size:6px;border-width:2px}.right-sidebar{width:34%;max-width:260px;right:10px;left:auto;bottom:10px;max-height:70vh}.code-panel{min-height:260px;max-height:70vh}.code-panel-header{display:none}.section-label{font-size:12px}#reset-input,#execute-button{font-size:0;padding:6px 8px;min-width:36px;justify-content:center;gap:0}#reset-input:before{content:"↻";font-size:12px;line-height:1}#execute-button .btn-arrow{font-size:12px;line-height:1}.output-console{font-size:9px;max-height:48px}.cm-editor{font-size:10px}.cm-gutter.cm-lineNumbers{width:28px;min-width:28px;max-width:28px}.cm-lineNumbers .cm-gutterElement{font-size:10px;padding-right:4px}.code-editor-panel{width:95%;max-height:250px}.code-editor-header{padding:4px 6px}.code-editor-console{height:50px}.dialogue-panel{width:48%;max-width:360px;top:auto;bottom:28px;transform:translate(-50%);z-index:230;padding:5px 8px;max-height:none}.dialogue-message{font-size:7px;line-height:1.2;max-height:12vh;overflow-y:auto}.dialogue-choices{gap:4px;margin-top:6px}.dialogue-button{min-height:30px;min-width:70px;font-size:7px;padding:6px 10px;margin-top:4px;max-width:100%;box-sizing:border-box}.dialogue-buttons{width:100%;justify-content:flex-end;position:static}.dialogue-emoji-avatar{width:24px;height:24px;font-size:14px}.dialogue-name{font-size:7px}.close-dialogue-btn{width:20px;height:20px;font-size:12px}.questlog-panel{width:130px;font-size:6px;max-height:auto;overflow-y:visible}.quest-item{padding:5px}.quest-title{font-size:6px;margin-bottom:2px}.objective-text{font-size:5px;line-height:1.2}.inventory-panel{position:fixed;top:60px;left:auto;right:10px;width:auto;padding:6px;transform:none}.inventory-panel.hidden{pointer-events:none}.inventory-grid{grid-template-columns:repeat(4,1fr);gap:4px}.inventory-item-slot{width:40px;height:40px}.inventory-item-label{display:none}.hint-panel{max-height:50vh;width:65%;max-width:500px;top:60px;transform:translate(-50%);bottom:auto;padding:12px}.hint-content{font-size:8px;line-height:1.4}.hint-title{font-size:9px;margin-bottom:8px}}@media(max-width:640px)and (orientation:landscape){.dialogue-emoji-avatar{width:24px;height:24px;font-size:14px}.dialogue-panel{width:78%;max-width:360px;top:auto;bottom:28px;transform:translate(-50%);padding:6px 8px;max-height:none}.dialogue-message{font-size:8px;line-height:1.3;max-height:20vh}.dialogue-button{min-height:32px;min-width:70px;font-size:7px;padding:6px 10px}.dialogue-name{font-size:7px}.close-dialogue-btn{width:22px;height:22px;font-size:12px}.inventory-panel{inset:55px 10px auto auto;padding:5px}.inventory-grid{grid-template-columns:repeat(4,1fr);gap:3px}.inventory-item-slot{width:36px;height:36px}.inventory-item-icon{font-size:20px}.inventory-item-slot--empty .inventory-item-icon{font-size:16px}.questlog-panel{position:fixed;top:55px;left:0;width:120px;max-height:auto;overflow-y:visible}.quest-item{padding:4px}.quest-title{font-size:5px;margin-bottom:2px}.objective-text{font-size:5px;line-height:1.2}.right-sidebar{width:36%;max-width:240px;right:5px;left:auto;bottom:5px;max-height:70vh}.code-panel{min-height:240px;max-height:70vh}.output-console{font-size:8px;max-height:44px}.cm-editor{font-size:10px}.cm-gutter.cm-lineNumbers{width:24px;min-width:24px;max-width:24px}.cm-lineNumbers .cm-gutterElement{font-size:10px;padding-right:3px}}@media(max-height:500px)and (orientation:landscape){.dialogue-panel{top:auto;bottom:24px;transform:translate(-50%);padding:6px 8px;max-height:none}.dialogue-message{font-size:8px;line-height:1.3;max-height:22vh}.dialogue-button{min-height:30px;min-width:70px;font-size:7px;padding:6px 10px}.code-editor-panel{max-height:200px}.code-editor-console{height:40px}.right-sidebar{max-height:65vh}.code-panel{max-height:65vh;min-height:220px}.output-console{max-height:40px}.hint-panel{max-height:35vh}.inventory-panel{inset:55px 10px auto auto;padding:5px}.inventory-item-slot{width:38px;height:38px}}@media(min-width:768px)and (max-width:1024px)and (orientation:landscape){.right-sidebar{width:34%;max-width:320px;right:10px;left:auto;bottom:10px}.inventory-panel{inset:60px 10px auto auto}.inventory-grid{grid-template-columns:repeat(4,1fr)}.dialogue-panel{width:60%;max-width:420px;top:auto;bottom:28px;transform:translate(-50%);padding:8px 10px;max-height:none}.dialogue-message{font-size:9px;line-height:1.4;max-height:25vh;overflow-y:auto}.dialogue-button{min-height:36px;min-width:80px;font-size:8px;padding:8px 12px}.dialogue-emoji-avatar{width:28px;height:28px;font-size:16px}.questlog-panel{width:130px;max-height:auto;overflow-y:visible}}@media(pointer:coarse){.dialogue-button{min-height:44px;min-width:88px}.pixel-btn{min-height:44px;min-width:44px}.close-dialogue-btn{min-width:44px;min-height:44px;font-size:16px;display:flex;align-items:center;justify-content:center}.icon-btn-small,.inventory-item-slot{min-width:44px;min-height:44px}}@media(max-width:1023px)and (pointer:coarse){.dialogue-button{min-height:30px;min-width:70px;padding:5px 8px;font-size:7px}.top-nav-right .pixel-btn{min-width:28px;min-height:28px;width:28px;height:28px;padding:0}}:root.mobile-touch-ui{--mobile-edge-gutter: clamp(10px, 1.3vw, 16px);--ui-edge-gutter: var(--mobile-edge-gutter);--mobile-left-stack-x: var(--mobile-edge-gutter);--mobile-right-stack-x: var(--mobile-left-stack-x);--mobile-left-stack-top: calc(var(--ui-header-height, 44px) + clamp(14px, 1.8vh, 22px));--mobile-left-stack-gap: clamp(6px, .9vh, 12px);--mobile-left-stack-width: clamp(136px, 24vw, 182px);--mobile-questlog-max-h: clamp(90px, 21vh, 128px);--mobile-cheatsheet-max-h: clamp(100px, 24vh, 152px);--mobile-joystick-offset: var(--mobile-edge-gutter);--mobile-editor-width: clamp(190px, 38vw, 320px);--mobile-editor-height: clamp(180px, 46vh, 300px)}.mobile-touch-ui .top-nav-container{padding-left:var(--mobile-edge-gutter)!important;padding-right:var(--mobile-edge-gutter)!important}.mobile-touch-ui .virtual-joystick{left:var(--mobile-joystick-offset);bottom:var(--mobile-joystick-offset);z-index:260}.mobile-touch-ui .questlog-panel{top:var(--mobile-left-stack-top)!important;left:var(--mobile-left-stack-x)!important;width:var(--mobile-left-stack-width)!important;max-height:var(--mobile-questlog-max-h)!important;box-shadow:0 4px #5c3a1e59!important;z-index:250!important}.mobile-touch-ui .questlog-panel .panel-header-compact{display:none!important}.mobile-touch-ui .questlog-content{padding:clamp(4px,.7vh,8px)!important;overflow:hidden!important}.mobile-touch-ui .questlog-container{gap:0!important}.mobile-touch-ui .quest-item.quest-item--mobile-min{padding:clamp(4px,.7vh,8px)!important;border-width:2px!important;box-shadow:none!important}.mobile-touch-ui .quest-title.quest-title--mobile{font-size:clamp(6px,.75vw,8px)!important;margin:0 0 clamp(2px,.4vh,5px) 0!important;border:none!important;padding:0!important}.mobile-touch-ui .objective-text.objective-text--mobile{font-family:Fira Code,monospace!important;font-size:clamp(6px,.75vw,8px)!important;line-height:1.2!important;font-weight:600!important;color:var(--dark-brown)!important}.mobile-touch-ui .inventory-panel{top:calc(var(--mobile-left-stack-top) + var(--mobile-questlog-max-h) + var(--mobile-left-stack-gap))!important;left:var(--mobile-left-stack-x)!important;right:auto!important;bottom:auto!important;transform:none!important;width:var(--mobile-left-stack-width)!important;min-width:0!important;padding:clamp(4px,.7vh,8px)!important;z-index:245!important}.mobile-touch-ui .inventory-content{width:100%!important}.mobile-touch-ui .inventory-grid{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(3px,.6vw,6px)!important}.mobile-touch-ui .inventory-item-slot{width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:1 / 1!important}.mobile-touch-ui .inventory-item-icon{font-size:clamp(14px,2vw,22px)!important}.mobile-touch-ui .inventory-item-label{display:none!important}.mobile-touch-ui .cheatsheet-panel{top:var(--mobile-left-stack-top)!important;right:var(--mobile-right-stack-x)!important;left:auto!important;width:var(--mobile-left-stack-width)!important;max-height:var(--mobile-cheatsheet-max-h)!important;z-index:248!important}.mobile-touch-ui .cheatsheet-panel.cheatsheet-panel--empty{width:clamp(108px,19vw,146px)!important;max-height:clamp(58px,12vh,86px)!important}.mobile-touch-ui .cheatsheet-header{display:none!important}.mobile-touch-ui .cheatsheet-title{font-size:clamp(6px,.75vw,8px)!important;gap:clamp(3px,.5vw,5px)!important}.mobile-touch-ui .cheatsheet-counter{font-size:clamp(6px,.7vw,8px)!important;padding:clamp(1px,.25vh,2px) clamp(3px,.5vw,5px)!important}.mobile-touch-ui .cheatsheet-content{max-height:var(--mobile-cheatsheet-max-h)!important;padding:clamp(4px,.6vh,7px)!important;border-top:none!important}.mobile-touch-ui .cheatsheet-panel.cheatsheet-panel--empty .cheatsheet-content{max-height:100%!important;padding:clamp(4px,.55vh,6px)!important;display:flex!important;align-items:center!important;justify-content:center!important}.mobile-touch-ui .cheatsheet-command{padding:clamp(4px,.6vh,6px)!important}.mobile-touch-ui .cheatsheet-syntax{font-size:clamp(6px,.75vw,8px)!important;line-height:1.25!important}.mobile-touch-ui .cheatsheet-description{font-size:clamp(6px,.72vw,7px)!important;line-height:1.25!important}.mobile-touch-ui .cheatsheet-panel.cheatsheet-panel--empty .cheatsheet-empty{font-size:clamp(6px,.72vw,7px)!important;line-height:1.2!important;padding:0!important}.mobile-touch-ui .right-sidebar{left:auto!important;right:var(--mobile-right-stack-x)!important;bottom:clamp(8px,1.2vh,14px)!important;width:min(var(--mobile-editor-width),calc(100vw - var(--mobile-left-stack-width) - var(--mobile-left-stack-x) - var(--mobile-right-stack-x) - 16px))!important;max-width:calc(100vw - var(--mobile-left-stack-width) - var(--mobile-left-stack-x) - var(--mobile-right-stack-x) - 16px)!important;max-height:var(--mobile-editor-height)!important;padding:clamp(2px,.4vw,6px)!important;z-index:220!important}.mobile-touch-ui .right-sidebar.expanded{width:calc(100vw - var(--mobile-left-stack-x) - var(--mobile-left-stack-x))!important;max-width:none!important;max-height:calc(var(--app-height) - var(--mobile-left-stack-top) - var(--mobile-left-stack-gap))!important;height:calc(var(--app-height) - var(--mobile-left-stack-top) - var(--mobile-left-stack-gap))!important;left:var(--mobile-left-stack-x)!important;right:var(--mobile-left-stack-x)!important;bottom:var(--mobile-left-stack-gap)!important}.mobile-touch-ui .code-panel{min-height:clamp(170px,40vh,260px)!important;height:100%!important;padding:clamp(3px,.5vw,6px)!important}.mobile-touch-ui .code-section .section-header{padding:clamp(4px,.6vh,7px) clamp(6px,.8vw,10px)!important}.mobile-touch-ui .code-section .section-header .section-label{display:inline-block!important;white-space:nowrap!important;flex-shrink:0!important}.mobile-touch-ui .section-label{font-size:clamp(8px,1vw,11px)!important}.mobile-touch-ui .code-actions{gap:clamp(4px,.6vw,8px)!important;margin-left:auto!important}.mobile-touch-ui .execute-btn-inline,.mobile-touch-ui .reset-btn-inline{padding:clamp(4px,.5vh,7px) clamp(6px,.8vw,10px)!important;font-size:clamp(7px,.9vw,9px)!important}.mobile-touch-ui #reset-input{min-width:clamp(26px,3.8vw,34px)!important;width:clamp(26px,3.8vw,34px)!important;justify-content:center!important;padding:clamp(4px,.5vh,7px) 0!important;font-size:0!important;gap:0!important}.mobile-touch-ui #reset-input:before{content:"↻";font-size:clamp(10px,1.2vw,13px);line-height:1}.mobile-touch-ui #execute-button{min-width:clamp(30px,4.6vw,40px)!important;width:clamp(30px,4.6vw,40px)!important;justify-content:center!important;padding:clamp(4px,.5vh,7px) 0!important;font-size:0!important;gap:0!important}.mobile-touch-ui #execute-button .btn-arrow{font-size:clamp(10px,1.2vw,13px)!important;line-height:1!important;margin:0!important}.mobile-touch-ui .cm-editor{font-size:clamp(10px,1.15vw,12px)!important;line-height:1.45!important}.mobile-touch-ui .cm-gutter.cm-lineNumbers{width:clamp(24px,2.8vw,30px)!important;min-width:clamp(24px,2.8vw,30px)!important;max-width:clamp(24px,2.8vw,30px)!important}.mobile-touch-ui .cm-lineNumbers .cm-gutterElement{font-size:clamp(8px,.85vw,9px)!important;padding-right:clamp(3px,.4vw,4px)!important}.mobile-touch-ui .output-section{min-height:clamp(44px,10vh,70px)!important;max-height:clamp(54px,15vh,90px)!important}.mobile-touch-ui .output-console{font-size:clamp(8px,.95vw,10px)!important;padding:clamp(5px,.7vh,8px)!important}.mobile-touch-ui .dialogue-panel{left:47%!important;width:clamp(190px,30vw,248px)!important;max-width:clamp(190px,30vw,248px)!important;bottom:clamp(8px,1.2vh,14px)!important;padding:clamp(5px,.7vh,8px) clamp(6px,.9vw,10px)!important;border-width:2px!important;outline-width:2px!important;box-shadow:0 4px #0000003d,0 8px 14px #0006!important}.mobile-touch-ui .avatar-container{display:none!important}.mobile-touch-ui .dialogue-content{gap:clamp(4px,.6vw,8px)!important}.mobile-touch-ui .dialogue-speaker{font-size:clamp(6px,.75vw,7px)!important;padding:clamp(2px,.35vh,4px) clamp(5px,.7vw,7px)!important;margin-bottom:clamp(3px,.45vh,5px)!important}.mobile-touch-ui .dialogue-message{font-size:clamp(8px,1vw,9px)!important;line-height:1.2!important;margin-bottom:clamp(3px,.45vh,5px)!important;padding-right:0!important;max-height:clamp(46px,12vh,76px)!important;overflow-y:auto!important}.mobile-touch-ui .dialogue-button{min-height:clamp(22px,3.8vh,28px)!important;min-width:clamp(58px,8vw,72px)!important;font-size:clamp(6px,.75vw,7px)!important;padding:clamp(4px,.55vh,6px) clamp(7px,1vw,10px)!important;gap:clamp(4px,.6vw,6px)!important;box-shadow:2px 2px 0 var(--dark-brown)!important}.mobile-touch-ui .btn-key-hint{display:none!important}@media(max-height:500px){:root.mobile-touch-ui{--mobile-questlog-max-h: clamp(82px, 20vh, 102px);--mobile-cheatsheet-max-h: clamp(92px, 22vh, 124px);--mobile-editor-height: clamp(160px, 44vh, 240px)}.mobile-touch-ui .virtual-joystick{left:var(--mobile-joystick-offset);bottom:var(--mobile-joystick-offset)}}.portrait-warning{display:none}html.screen-too-small .portrait-warning,html.orientation-locked .portrait-warning{display:flex!important;position:fixed;inset:0;z-index:9999;background-color:var(--retro-black);justify-content:center;align-items:center;padding:20px}.portrait-warning-content{text-align:center;max-width:460px;background-color:var(--bg-medium);border:6px solid var(--primary-brown);padding:40px 30px;box-shadow:inset 3px 3px 0 var(--bg-light),inset -3px -3px 0 var(--dark-brown),0 8px #0009}.portrait-icon{font-size:80px;margin-bottom:20px;animation:bounce 1s infinite}.portrait-arrow{font-size:60px;color:var(--accent-orange);margin-bottom:20px;animation:rotate 2s infinite}.portrait-title{font-family:"Press Start 2P",cursive;font-size:18px;color:var(--text-dark);margin-bottom:20px;text-transform:uppercase;letter-spacing:2px}.portrait-message{font-family:"Press Start 2P",cursive;font-size:10px;color:var(--primary-brown);line-height:1.8;text-transform:uppercase}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes rotate{0%,to{transform:rotate(0)}25%{transform:rotate(-20deg)}75%{transform:rotate(20deg)}}html.screen-too-small #ui-layer>*:not(.portrait-warning),html.orientation-locked #ui-layer>*:not(.portrait-warning){display:none!important}html.screen-too-small #game-container,html.orientation-locked #game-container,html.screen-too-small #transition-layer,html.orientation-locked #transition-layer{display:none!important}
