:root{--game-font: "The Girl Next Door", cursive;--gui-font-size: 28px;--gui-font-size-mobile: 28px;--gui-border-radius: 0;--deckle-edge: url(#deckle-filter);--deckle-edge-strong: url(#deckle-strong);--deckle-edge-bubbles: none;--bg-gradient-start: #1a0f0a;--bg-gradient-mid: #2d1810;--bg-gradient-end: #3d2317;--body-bg: #2d1810;--btn-bg: #4a2c1e;--text-color: #fff8f0;--text-shadow: 0 1px 3px rgba(0, 0, 0, .6);--header-bg: rgba(255, 248, 240, .15);--canvas-border: rgba(255, 248, 240, .25);--modal-bg: #4a2c1e;--modal-text: #f5d4a1;--overlay-bg: rgba(26, 15, 10, .85);--help-overlay-bg: rgba(26, 15, 10, .4);--warning-bg-from: rgba(211, 84, 0, .3);--warning-bg-to: rgba(211, 84, 0, .5);--btn-shadow: 0 4px 12px rgba(26, 15, 10, .3);--btn-hover-shadow: 0 6px 16px rgba(26, 15, 10, .4);--accent-color: #f5a623;--button-bg: #b84c14;--button-hover-bg: #9a3f10;--icon-color: #e8a54a;--label-color: #f5c87a}@media(prefers-color-scheme:light){:root{--bg-gradient-start: #e8a754;--bg-gradient-mid: #f5c77e;--bg-gradient-end: #fff4e6;--body-bg: #fff4e6;--btn-bg: #ffffff;--text-color: #2a1810;--text-shadow: 0 1px 2px rgba(255, 255, 255, .4);--header-bg: rgba(61, 35, 23, .2);--canvas-border: rgba(61, 35, 23, .25);--modal-bg: #ffffff;--modal-text: #5a3520;--overlay-bg: rgba(255, 244, 230, .85);--help-overlay-bg: rgba(255, 244, 230, .4);--warning-bg-from: rgba(211, 84, 0, .4);--warning-bg-to: rgba(211, 84, 0, .6);--btn-shadow: 0 4px 12px rgba(61, 35, 23, .2);--btn-hover-shadow: 0 8px 20px rgba(61, 35, 23, .3);--accent-color: #d4740c;--button-bg: #b84c14;--button-hover-bg: #9a3f10;--icon-color: #b84c14;--label-color: #8b4513}}*{margin:0;padding:0;box-sizing:border-box}.deckle-edge{position:relative}.deckle-edge:after{content:"";position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;background:inherit;border-radius:inherit;filter:var(--deckle-edge);z-index:-1;pointer-events:none}.deckle-mask{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cdefs%3E%3Cfilter id='rough'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.04' numOctaves='4' seed='1' result='noise'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='noise' scale='4' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3C/defs%3E%3Crect width='100' height='100' filter='url(%23rough)' fill='white'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cdefs%3E%3Cfilter id='rough'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.04' numOctaves='4' seed='1' result='noise'/%3E%3CfeDisplacementMap in='SourceGraphic' in2='noise' scale='4' xChannelSelector='R' yChannelSelector='G'/%3E%3C/filter%3E%3C/defs%3E%3Crect width='100' height='100' filter='url(%23rough)' fill='white'/%3E%3C/svg%3E");-webkit-mask-size:100% 100%;mask-size:100% 100%}.game-header span,.ctrl-label,.game-over-modal h2,.game-over-modal p,.game-over-modal button,.level-toast,.paused-overlay,.help-modal h2,.help-modal h3,.help-modal p,.help-modal ul,.help-got-it{opacity:.88;mix-blend-mode:multiply}@media(prefers-color-scheme:dark){.game-header span,.ctrl-label,.game-over-modal h2,.game-over-modal p,.game-over-modal button,.level-toast,.paused-overlay,.help-modal h2,.help-modal h3,.help-modal p,.help-modal ul,.help-got-it{mix-blend-mode:normal;opacity:.92}}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--body-bg);display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding-top:20px;position:relative}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;mix-blend-mode:hard-light;z-index:0}.game-container{display:flex;flex-direction:column;align-items:center;width:100%;position:relative;z-index:1}.game-wrapper{display:flex;flex-direction:column;align-items:center;gap:20px;position:relative}.game-header{display:flex;justify-content:space-between;align-items:center;width:600px;padding:0;color:var(--text-color);font-size:16px;font-weight:500}.game-header span{background:var(--btn-bg);border:2px solid var(--canvas-border);padding:8px 16px;border-radius:var(--gui-border-radius);min-width:100px;text-align:center;box-shadow:var(--btn-shadow);position:relative;overflow:visible;font-family:var(--game-font);font-size:var(--gui-font-size);font-weight:600;letter-spacing:.5px;color:var(--label-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4);filter:var(--deckle-edge)}.game-header span:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;border-radius:var(--gui-border-radius);mix-blend-mode:hard-light}.game-header span:empty{visibility:hidden}.game-header span.warning{background:var(--warning-bg-from);color:#e67300;animation:pulse .5s ease-in-out infinite alternate}.game-header span.level-up{background:linear-gradient(180deg,var(--button-bg) 0%,var(--button-hover-bg) 100%);color:#fff;animation:level-flash .3s ease-out}@keyframes level-flash{0%{transform:scale(1.15)}to{transform:scale(1)}}.canvas-frame{position:relative;display:inline-block}.canvas-frame:before{content:"";position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;background:var(--btn-bg);border:2px solid var(--canvas-border);border-radius:var(--gui-border-radius);box-shadow:var(--btn-shadow);filter:var(--deckle-edge);z-index:-1}.game-canvas{display:block;border-radius:var(--gui-border-radius);filter:var(--deckle-edge-bubbles)}.control-bar{display:flex;justify-content:space-between;gap:10px;width:600px;padding:0;background:transparent}.ctrl-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 16px;background:var(--btn-bg);border:2px solid var(--canvas-border);border-radius:var(--gui-border-radius);color:var(--text-color);cursor:pointer;transition:transform .1s,box-shadow .2s;position:relative;box-shadow:var(--btn-shadow);overflow:visible;filter:var(--deckle-edge)}.ctrl-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;border-radius:var(--gui-border-radius);mix-blend-mode:hard-light}.ctrl-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--btn-hover-shadow)}.ctrl-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 6px #00000026}.ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.ctrl-icon{width:24px;height:24px;color:var(--icon-color)}.ctrl-label{font-family:var(--game-font);font-size:var(--gui-font-size);font-weight:600;letter-spacing:.5px;color:var(--label-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4)}@media(prefers-color-scheme:light){.game-header span,.ctrl-label,.game-over-modal h2,.game-over-modal p,.help-modal h2,.help-modal h3,.help-modal p,.help-modal ul{text-shadow:0 1px 0 rgba(255,255,255,.8),0 -1px 1px rgba(0,0,0,.15)}.game-over-modal button,.help-got-it,.level-toast{text-shadow:0 1px 0 rgba(255,255,255,.3),0 -1px 1px rgba(0,0,0,.2)}}.game-over-overlay{position:absolute;top:50px;left:0;width:600px;height:800px;background:var(--overlay-bg);display:flex;justify-content:center;align-items:center;animation:fadeIn .3s ease-out;border-radius:var(--gui-border-radius);filter:var(--deckle-edge)}.game-over-modal{background:var(--modal-bg);padding:48px 64px;border-radius:var(--gui-border-radius);text-align:center;color:var(--modal-text);text-shadow:var(--text-shadow);animation:slideUp .3s ease-out;box-shadow:0 8px 32px #00000080;position:relative;overflow:visible;filter:var(--deckle-edge-strong)}.game-over-modal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;border-radius:var(--gui-border-radius);mix-blend-mode:hard-light;z-index:0}.game-over-modal>*{position:relative;z-index:1}.game-over-modal h2{font-family:var(--game-font);font-size:48px;font-weight:600;margin-bottom:16px;text-shadow:0 -1px 0 rgba(255,255,255,.15),0 2px 3px rgba(0,0,0,.4)}.game-over-modal p{font-family:var(--game-font);font-size:34px;font-weight:500;margin-bottom:28px;color:var(--accent-color);text-shadow:0 -1px 0 rgba(255,255,255,.1),0 1px 2px rgba(0,0,0,.3)}.game-over-modal button{font-family:var(--game-font);padding:14px 40px;font-size:26px;background:var(--button-bg);color:#fff;border:none;border-radius:var(--gui-border-radius);cursor:pointer;transition:transform .1s,background .2s;font-weight:600;position:relative;z-index:1;text-shadow:0 -1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.5)}.game-over-modal button:hover{background:var(--button-hover-bg);transform:scale(1.05)}.game-over-modal button:active{transform:scale(.98)}.level-toast{position:absolute;top:120px;left:50%;transform:translate(-50%);background:linear-gradient(180deg,var(--button-bg) 0%,var(--button-hover-bg) 100%);color:#fff;padding:16px 32px;border-radius:var(--gui-border-radius);font-family:var(--game-font);font-size:32px;font-weight:600;text-shadow:0 -1px 0 rgba(255,255,255,.2),0 2px 4px rgba(0,0,0,.4);box-shadow:0 4px 20px #b84c1480;animation:toast-pop 1.5s ease-out forwards;z-index:100;pointer-events:none;filter:var(--deckle-edge)}.paused-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--body-bg);border:2px solid var(--canvas-border);color:var(--label-color);padding:12px 32px;border-radius:var(--gui-border-radius);font-family:var(--game-font);font-size:var(--gui-font-size);font-weight:600;letter-spacing:.5px;text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4);box-shadow:var(--btn-shadow);z-index:100;pointer-events:none;overflow:visible;filter:var(--deckle-edge)}.paused-overlay:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;border-radius:var(--gui-border-radius);mix-blend-mode:hard-light}@media(prefers-color-scheme:light){.paused-overlay,.game-header span,.ctrl-btn,.help-modal{border-color:#ffffff80}}@keyframes toast-pop{0%{opacity:0;transform:translate(-50%) scale(.8)}15%{opacity:1;transform:translate(-50%) scale(1.1)}30%{transform:translate(-50%) scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-20px)}}.help-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--help-overlay-bg);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-out}.help-modal{background:var(--btn-bg);padding:24px 32px;border:2px solid var(--canvas-border);border-radius:var(--gui-border-radius);width:600px;max-width:95vw;max-height:970px;overflow:hidden;color:var(--label-color);position:relative;animation:slideUp .3s ease-out;box-shadow:var(--btn-shadow);filter:var(--deckle-edge)}.help-modal:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.02' numOctaves='5' seed='3' stitchTiles='stitch' result='grain'/%3E%3CfeDiffuseLighting in='grain' lighting-color='white' surfaceScale='4' diffuseConstant='1'%3E%3CfeDistantLight azimuth='135' elevation='55'/%3E%3C/feDiffuseLighting%3E%3CfeColorMatrix type='matrix' values='0.5 0 0 0 -0.25 0 0.5 0 0 -0.25 0 0 0.5 0 -0.25 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)'/%3E%3C/svg%3E");opacity:.6;pointer-events:none;border-radius:var(--gui-border-radius);mix-blend-mode:hard-light}.help-modal>*{position:relative;z-index:1}.help-modal h2{font-family:var(--game-font);font-size:32px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-align:center;color:var(--label-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4)}.help-modal h3{font-family:var(--game-font);font-size:24px;font-weight:600;letter-spacing:.5px;margin:12px 0 6px;color:var(--accent-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4)}.help-modal p{font-family:var(--game-font);font-size:20px;font-weight:600;letter-spacing:.5px;line-height:1.3;margin-bottom:6px;color:var(--label-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4)}.help-modal ul{font-family:var(--game-font);font-size:20px;font-weight:600;letter-spacing:.5px;line-height:1.3;margin-left:20px;color:var(--label-color);text-shadow:0 -1px 0 rgba(255,255,255,.15),0 1px 2px rgba(0,0,0,.4)}.help-close{position:absolute;top:12px;right:16px;background:none;border:none;color:var(--label-color);opacity:.6;font-size:28px;cursor:pointer;transition:opacity .2s;z-index:2}.help-close:hover{opacity:1}.help-got-it{display:block;width:100%;margin-top:16px;padding:10px 24px;font-family:var(--game-font);font-size:20px;background:var(--button-bg);color:#fff;border:none;border-radius:var(--gui-border-radius);cursor:pointer;transition:transform .1s,background .2s;font-weight:600;position:relative;z-index:1;text-shadow:0 -1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.5)}.help-got-it:hover{background:var(--button-hover-bg);transform:scale(1.02)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{background:var(--warning-bg-from)}to{background:var(--warning-bg-to)}}@media(max-width:640px){body{padding-top:10px}.ctrl-btn{padding:8px 10px}.ctrl-label{font-size:var(--gui-font-size-mobile)}.ctrl-icon{width:22px;height:22px}.game-header span{font-size:var(--gui-font-size-mobile);padding:6px 12px;min-width:80px}.paused-overlay{background:var(--btn-bg);font-size:var(--gui-font-size-mobile);padding:10px 24px}.help-modal{max-width:90vw;max-height:85vh;padding:20px 24px;margin:16px}.help-modal h2{font-size:22px;margin-bottom:12px}.help-modal h3{font-size:18px;margin:10px 0 4px}.help-modal p,.help-modal ul{font-size:16px;line-height:1.25}.help-modal ul{margin-left:16px}.help-got-it{font-size:16px;padding:10px 20px;margin-top:12px}}
