body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{margin:0;padding:0;box-sizing:border-box}.canvas{height:80vh;width:100vw;position:relative;overflow:hidden;z-index:100}.player{background-color:gold;position:absolute;z-index:100}.obstacle{background-color:#b22222;position:absolute;z-index:100}.floor{background-color:#b45309;width:100%;height:20vh}.building{position:absolute;z-index:10;bottom:0}.infobar{padding:1.2rem 1.5rem;z-index:1000;margin-top:1.5rem;margin-left:1.5rem;border-radius:.3rem;background-color:#111827;width:fit-content}.infobar p{color:#fff;margin-right:6px;z-index:1000;font-size:large}.infobar .info{display:flex}.menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.menu-container{background:linear-gradient(135deg,#1e1e1ef2,#323232f2);border-radius:20px;padding:40px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;border:2px solid rgba(255,255,255,.1);animation:slideUp .4s ease-out}.menu-container::-webkit-scrollbar{width:8px}.menu-container::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.menu-container::-webkit-scrollbar-thumb{background:#fbbf2480;border-radius:4px}.menu-container::-webkit-scrollbar-thumb:hover{background:#fbbf24b3}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.menu-header{text-align:center;margin-bottom:20px}.menu-title{font-size:3rem;font-weight:900;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px;text-shadow:0 4px 20px rgba(251,191,36,.3);letter-spacing:2px}.menu-subtitle{color:#d1d5db;font-size:1.1rem;margin:0;opacity:.9}.high-score-display{background:linear-gradient(135deg,#fbbf2433,#f59e0b33);border:2px solid rgba(251,191,36,.3);border-radius:12px;padding:20px;margin-bottom:30px;display:flex;align-items:center;gap:15px}.trophy{font-size:2.5rem}.high-score-label{color:#d1d5db;font-size:.9rem;margin:0 0 5px;text-transform:uppercase;letter-spacing:1px}.high-score-value{color:#fbbf24;font-size:2rem;font-weight:700;margin:0}.menu-buttons{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.menu-button{padding:16px 32px;font-size:1.1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #0003}.menu-button-primary{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#1f2937}.menu-button-primary:hover{background:linear-gradient(135deg,#f59e0b,#d97706);transform:translateY(-2px);box-shadow:0 6px 20px #fbbf2466}.menu-button-primary:active{transform:translateY(0)}.menu-button-secondary{background:#ffffff1a;color:#f3f4f6;border:2px solid rgba(255,255,255,.2)}.menu-button-secondary:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px)}.menu-footer{text-align:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.menu-footer p{color:#9ca3af;font-size:.85rem;margin:0 0 8px}.github-link{color:#60a5fa;text-decoration:none;font-size:.9rem;transition:color .3s ease}.github-link:hover{color:#93c5fd;text-decoration:underline}.instructions-section{margin:20px 0;color:#e5e7eb}.instruction-group{margin-bottom:20px}.instruction-group h3{color:#fbbf24;font-size:1.2rem;margin:0 0 12px;font-weight:600}.instruction-group p{color:#d1d5db;line-height:1.5;margin:6px 0;font-size:.95rem}.control-item{display:flex;align-items:center;justify-content:space-between;padding:10px;margin:6px 0;background:#ffffff0d;border-radius:8px}.key-combo{display:flex;gap:6px}.key{background:linear-gradient(135deg,#374151,#1f2937);color:#fbbf24;padding:6px 12px;border-radius:6px;font-weight:600;font-size:.85rem;border:2px solid rgba(251,191,36,.3);box-shadow:0 2px 8px #0000004d;min-width:35px;text-align:center}.control-desc{color:#e5e7eb;font-weight:500;font-size:.9rem}@media (max-width: 600px){.menu-container{padding:25px 18px;max-height:92vh}.menu-title{font-size:2.2rem}.menu-subtitle{font-size:.95rem}.menu-button{padding:12px 20px;font-size:.95rem}.key{padding:5px 10px;font-size:.8rem;min-width:30px}.instruction-group h3{font-size:1.1rem;margin:0 0 10px}.instruction-group p{font-size:.9rem}.control-desc{font-size:.85rem}}.pause-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:999;animation:fadeIn .2s ease-in}.pause-container{background:linear-gradient(135deg,#1e1e1ef2,#323232f2);border-radius:20px;padding:40px 50px;text-align:center;box-shadow:0 20px 60px #00000080;border:2px solid rgba(255,255,255,.1);animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.pause-title{font-size:3rem;font-weight:900;background:linear-gradient(135deg,#60a5fa,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 10px;letter-spacing:2px}.pause-subtitle{color:#d1d5db;font-size:1rem;margin:0 0 30px;opacity:.8}.pause-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:25px}.pause-button{padding:14px 32px;font-size:1rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;min-width:220px}.pause-button-primary{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#fff}.pause-button-primary:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);transform:translateY(-2px);box-shadow:0 6px 20px #60a5fa66}.pause-button-secondary{background:#ffffff1a;color:#f3f4f6;border:2px solid rgba(255,255,255,.2)}.pause-button-secondary:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px)}.pause-hint{padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.pause-hint p{color:#9ca3af;font-size:.9rem;margin:0}.key-hint{background:linear-gradient(135deg,#374151,#1f2937);color:#60a5fa;padding:4px 12px;border-radius:6px;font-weight:600;border:2px solid rgba(96,165,250,.3);font-size:.85rem}@media (max-width: 600px){.pause-container{padding:30px 25px}.pause-title{font-size:2.5rem}.pause-button{min-width:180px}}.gameover-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:999;animation:fadeIn .3s ease-in}.gameover-container{background:linear-gradient(135deg,#1e1e1ef2,#323232f2);border-radius:20px;padding:40px 50px;text-align:center;box-shadow:0 20px 60px #00000080;border:2px solid rgba(255,255,255,.1);animation:slideDown .4s ease-out;min-width:350px}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}.gameover-title{font-size:3rem;font-weight:900;background:linear-gradient(135deg,#ef4444,#dc2626);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 20px;letter-spacing:2px}.new-highscore-banner{background:linear-gradient(135deg,#fbbf244d,#f59e0b4d);border:2px solid rgba(251,191,36,.5);border-radius:12px;padding:15px;margin-bottom:25px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 20px #fbbf244d}50%{transform:scale(1.02);box-shadow:0 0 30px #fbbf2480}}.trophy-large{font-size:3rem;display:block;margin-bottom:10px}.new-highscore-banner p{color:#fbbf24;font-size:1.3rem;font-weight:700;margin:0;text-transform:uppercase;letter-spacing:2px}.score-display{display:flex;gap:20px;justify-content:center;margin:30px 0}.score-item{background:#ffffff0d;border-radius:12px;padding:20px 30px;min-width:140px}.score-label{color:#9ca3af;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;margin:0 0 10px}.score-value{font-size:2.5rem;font-weight:700;margin:0}.current-score{color:#60a5fa}.high-score{color:#fbbf24}.gameover-buttons{display:flex;flex-direction:column;gap:12px;margin-top:30px}.gameover-button{padding:14px 32px;font-size:1rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.gameover-button-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.gameover-button-primary:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.gameover-button-secondary{background:#ffffff1a;color:#f3f4f6;border:2px solid rgba(255,255,255,.2)}.gameover-button-secondary:hover{background:#fff3;border-color:#ffffff4d;transform:translateY(-2px)}@media (max-width: 600px){.gameover-container{padding:30px 25px;min-width:unset;width:90%}.gameover-title{font-size:2.5rem}.score-display{flex-direction:column;gap:15px}.score-item{padding:15px 20px;min-width:unset}.score-value{font-size:2rem}}
