* {margin: 0;padding: 0;box-sizing: border-box;}body {font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;overflow-x: auto;overflow-y: auto;user-select: none;min-height: 100vh;position: relative;transition: background 0.5s ease;}body.ad-active #home{display: none!important;}body[data-theme] {background: radial-gradient(circle at center, var(--bg-accent), var(--bg-base) 100%);position: relative;min-height: 100dvh;}body[data-theme]::before {content: '';position: fixed;inset: 0;pointer-events: none;z-index: -2;}:root {--text-primary: #ffffff;--text-secondary: #cccccc;--text-accent: #90EE90;--interface-bg: rgba(0,0,0,0.3);--interface-border: rgba(255,255,255,0.2);}body[data-theme] {background: radial-gradient(circle at center, var(--bg-accent), var(--bg-base) 100%);position: relative;}body[data-theme="golf"] {--bg-base: #2B2B2B;--bg-accent: #228B22;--table: #006400;--vignette-alpha: 0.20;--overlay-lines-alpha: 0.01;--overlay-angle: 45deg;--overlay-step: 100px;}body[data-theme="vegas"] {--bg-base: #1C1C1C;--bg-accent: #5A1A1A;--table: #228B22;--vignette-alpha: 0.25;--overlay-lines-alpha: 0.008;--overlay-angle: 45deg;--overlay-step: 120px;}body[data-theme="ocean"] {--bg-base: #2F3E46;--bg-accent: #0B1D40;--table: #002147;--vignette-alpha: 0.18;--overlay-lines-alpha: 0.012;--overlay-angle: 30deg;--overlay-step: 90px;}body[data-theme="space"] {--bg-base: #0B0F14;--bg-accent: #202833;--table: #00152E;--vignette-alpha: 0.15;--overlay-lines-alpha: 0.006;--overlay-angle: 60deg;--overlay-step: 150px;}body[data-theme="forest"] {--bg-base: #1E261E;--bg-accent: #145214;--table: #3B5323;--vignette-alpha: 0.22;--overlay-lines-alpha: 0.009;--overlay-angle: 45deg;--overlay-step: 110px;}body[data-theme="light"] {--bg-base: #F5F5F5;--bg-accent: #E8F5E8;--table: #90EE90;--vignette-alpha: 0.10;--overlay-lines-alpha: 0.02;--overlay-angle: 45deg;--overlay-step: 80px;color: #2B2B2B;--text-primary: #2B2B2B;--text-secondary: #666666;}body[data-theme="sunset"] {--bg-base: #2C1810;--bg-accent: #8B4513;--table: #654321;--vignette-alpha: 0.20;--overlay-lines-alpha: 0.01;--overlay-angle: 135deg;--overlay-step: 95px;}body[data-theme="purple"] {--bg-base: #2D1B3D;--bg-accent: #4B0082;--table: #301934;--vignette-alpha: 0.18;--overlay-lines-alpha: 0.008;--overlay-angle: 45deg;--overlay-step: 105px;}body[data-theme="high_contrast"] {--bg-base: #000000;--bg-accent: #111111;--table: #222222;--vignette-alpha: 0.05;--overlay-lines-alpha: 0.0;--overlay-angle: 0deg;--overlay-step: 0px;--text-primary: #FFFFFF;--text-accent: #FFFF00;}#gameCanvas {background: var(--bg-accent);}#gameHeader {position: fixed;top: 0;left: 0;right: 0;height: 60px;display: flex;align-items: center;padding: 0 15px;backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);background: rgba(0, 0, 0, 0.35);box-shadow: 0 2px 10px rgba(0,0,0,0.5);border-bottom: 2px solid rgba(255,255,255,0.1);z-index: 1000;color: #fff;}#gameLogo {font-size: 18px;font-weight: bold;color: white;margin-right: 20px;text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);display: flex;align-items: center;gap: 8px;white-space: nowrap;}#gameLogo .icon {font-size: 24px;}#headerControls {display: flex;gap: 8px;align-items: center;flex: 1;overflow: hidden;}.mini-btn {padding: 6px 12px;background: rgba(255, 255, 255, 0.2);color: white;border: 1px solid rgba(255, 255, 255, 0.3);border-radius: 6px;font-size: 12px;font-weight: 600;cursor: pointer;transition: all 0.2s;backdrop-filter: blur(5px);white-space: nowrap;position: relative;min-width: 40px;text-align: center;}.mini-btn:hover {background: rgba(255, 255, 255, 0.3);transform: translateY(-1px);}.mini-btn:active {transform: translateY(0);}.mini-btn.active {background: linear-gradient(135deg, #FFD700, #FFA500);color: #2c5f2d;border-color: #FFD700;}#settingsBtn {background: rgba(255, 255, 255, 0.2);border: 1px solid rgba(255, 255, 255, 0.3);border-radius: 50%;width: 40px;height: 40px;cursor: pointer;color: white;font-size: 18px;display: flex;align-items: center;justify-content: center;transition: all 0.3s ease;margin-left: 10px;}#settingsBtn:hover {background: rgba(255, 255, 255, 0.3);transform: rotate(90deg);}#settingsBtn.active {background: linear-gradient(135deg, #FFD700, #FFA500);color: #2c5f2d;transform: rotate(180deg);}.settings-panel {position: fixed;top: 0;right: -380px;width: 380px;height: 100vh;background: linear-gradient(135deg, #2c5f2d, #3a7e3c);backdrop-filter: blur(15px);border-left: 2px solid rgba(255, 255, 255, 0.2);transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);z-index: 1500;overflow-y: auto;box-shadow: -10px 0 30px rgba(0, 0, 0, 0.3);}.settings-panel.open {right: 0;}.settings-panel-header {display: flex;justify-content: space-between;align-items: center;padding: 20px;border-bottom: 2px solid rgba(255, 255, 255, 0.2);background: rgba(0, 0, 0, 0.2);}.settings-panel-title {font-size: 20px;font-weight: bold;color: white;display: flex;align-items: center;gap: 10px;}.close-settings {background: rgba(255, 255, 255, 0.2);border: none;color: white;font-size: 20px;width: 35px;height: 35px;border-radius: 50%;cursor: pointer;transition: all 0.3s;}.close-settings:hover {background: rgba(255, 255, 255, 0.3);transform: rotate(90deg);}.settings-section {padding: 20px;border-bottom: 1px solid rgba(255, 255, 255, 0.1);}.settings-section:last-child {border-bottom: none;}.settings-section h3 {color: #FFD700;font-size: 16px;margin-bottom: 15px;display: flex;align-items: center;gap: 8px;}.settings-row {display: flex;justify-content: space-between;align-items: center;margin-bottom: 15px;color: white;}.settings-row:last-child {margin-bottom: 0;}.settings-label {font-size: 14px;color: rgba(255, 255, 255, 0.9);}.settings-control {display: flex;align-items: center;gap: 10px;}.game-controls-grid {display: grid;grid-template-columns: repeat(2, 1fr);gap: 10px;}.game-control-btn {padding: 12px 16px;background: rgba(255, 255, 255, 0.15);color: white;border: 1px solid rgba(255, 255, 255, 0.3);border-radius: 8px;font-size: 13px;font-weight: 600;cursor: pointer;transition: all 0.3s;display: flex;flex-direction: column;align-items: center;gap: 5px;text-align: center;min-height: 60px;justify-content: center;}.game-control-btn:hover {background: rgba(255, 255, 255, 0.25);transform: translateY(-2px);box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);}.game-control-btn:active {transform: translateY(0);}.game-control-btn .icon {font-size: 20px;margin-bottom: 2px;}.game-control-btn .label {font-size: 11px;opacity: 0.9;}.toggle-switch {position: relative;width: 50px;height: 24px;background: rgba(255, 255, 255, 0.2);border-radius: 12px;cursor: pointer;transition: background 0.3s;}.toggle-switch.active {background: linear-gradient(135deg, #4CAF50, #45a049);}.toggle-switch::after {content: '';position: absolute;width: 20px;height: 20px;border-radius: 50%;background: white;top: 2px;left: 2px;transition: transform 0.3s;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);}.toggle-switch.active::after {transform: translateX(26px);}.volume-slider {-webkit-appearance: none;appearance: none;height: 6px;background: rgba(255, 255, 255, 0.3);border-radius: 3px;outline: none;transition: opacity 0.2s;width: 100px;}.volume-slider:hover {opacity: 0.8;}.volume-slider::-webkit-slider-thumb {-webkit-appearance: none;appearance: none;width: 16px;height: 16px;background: #FFD700;border-radius: 50%;cursor: pointer;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);}.volume-slider::-moz-range-thumb {width: 16px;height: 16px;background: #FFD700;border-radius: 50%;cursor: pointer;border: none;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);}.music-select {background: rgba(255, 255, 255, 0.2);border: 1px solid rgba(255, 255, 255, 0.3);border-radius: 6px;color: white;padding: 6px 12px;font-size: 12px;width: 180px;appearance: none;background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3e%3cpath fill='white' d='M0 3 L5 8 L10 3'/%3e%3c/svg%3e");background-repeat: no-repeat;background-position: right 8px center;padding-right: 28px;}.music-select:focus {outline: none;border-color: #FFD700;background-color: rgba(255, 255, 255, 0.25);}.music-select option {background: #2c5f2d;color: white;}.theme-grid {display: flex;gap: 10px;margin-top: 10px;}.theme-btn {width: 60px;height: 60px;border-radius: 8px;border: 2px solid rgba(255, 255, 255, 0.3);cursor: pointer;transition: all 0.3s;position: relative;overflow: hidden;}.theme-btn:hover {transform: scale(1.05);box-shadow: 0 4px 15px rgba(0,0,0,0.3);transition: all 0.3s ease;}.theme-btn.active {border: 2px solid #90EE90;box-shadow: 0 0 15px rgba(144, 238, 144, 0.5);}.theme-btn.locked {filter: grayscale(1);opacity: 0.5;cursor: not-allowed;}.theme-btn.locked::after {content: '🔒';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);font-size: 16px;}.theme-btn[data-theme="golf"] {background: linear-gradient(135deg, #228B22, #006400);}.theme-btn[data-theme="vegas"] {background: linear-gradient(135deg, #5A1A1A, #228B22);}.theme-btn[data-theme="ocean"] {background: linear-gradient(135deg, #2F3E46, #002147);}.theme-btn[data-theme="space"] {background: linear-gradient(135deg, #0B0F14, #202833);}.theme-btn[data-theme="forest"] {background: linear-gradient(135deg, #145214, #3B5323);}.theme-btn[data-theme="light"] {background: linear-gradient(135deg, #E8F5E8, #90EE90);border: 1px solid #cccccc;}.theme-btn[data-theme="sunset"] {background: linear-gradient(135deg, #8B4513, #654321);}.theme-btn[data-theme="purple"] {background: linear-gradient(135deg, #4B0082, #301934);}.theme-btn[data-theme="high_contrast"] {background: linear-gradient(135deg, #000000, #222222);border: 2px solid #ffffff;}.theme-name {font-size: 10px;color: rgba(255, 255, 255, 0.8);text-align: center;margin-top: 5px;}.notification-dot {position: absolute;top: -2px;right: -2px;width: 8px;height: 8px;background: #FF0000;border-radius: 50%;animation: pulseNotification 1s infinite;}@keyframes pulseNotification {0%, 100% {transform: scale(1);opacity: 1;}50% {transform: scale(1.3);opacity: 0.7;}}.level-display {display: flex;align-items: center;gap: 10px;margin: 0 15px;}.level-badge {background: linear-gradient(135deg, #FFD700, #FFA500);color: #2c5f2d;padding: 6px 12px;border-radius: 20px;font-weight: bold;font-size: 12px;display: flex;align-items: center;gap: 5px;min-width: 80px;}.exp-bar {width: 120px;height: 8px;background: rgba(0, 0, 0, 0.3);border-radius: 10px;overflow: hidden;border: 1px solid rgba(255, 255, 255, 0.2);}.exp-fill {height: 100%;background: linear-gradient(90deg, #4CAF50, #8BC34A);border-radius: 10px;transition: width 0.5s ease;}.info-group {display: flex;gap: 8px;align-items: center;margin-left: auto;}.info-badge {background: rgba(0, 0, 0, 0.3);color: white;padding: 6px 12px;border-radius: 15px;font-size: 12px;font-weight: bold;backdrop-filter: blur(5px);border: 1px solid rgba(255, 255, 255, 0.2);min-width: 70px;text-align: center;}.pulse {animation: pulse 0.5s ease-in-out;}@keyframes pulse {0% {transform: scale(1);}50% {transform: scale(1.05);color: #FFD700;}100% {transform: scale(1);}}.settings-overlay {position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0, 0, 0, 0.5);opacity: 0;visibility: hidden;transition: all 0.3s ease;z-index: 1400;}.settings-overlay.open {opacity: 1;visibility: visible;}#gameContainer {padding-top: 70px;display: flex;justify-content: center;align-items: flex-start;min-height: 100vh;}#gameCanvas {display: block;cursor: pointer;border-radius: 10px;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);max-width: 100%;max-height: 100%;margin: 0 auto;touch-action: none;-webkit-touch-callout: none;-webkit-user-select: none;-webkit-tap-highlight-color: transparent;}.modal-overlay {display: none;position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0, 0, 0, 0.7);z-index: 2000;animation: fadeIn 0.3s;}.modal-overlay.show {display: flex;justify-content: center;align-items: center;}@keyframes fadeIn {from {opacity: 0;}to {opacity: 1;}}.modal {background: linear-gradient(135deg, var(--bg-base), var(--bg-accent));border-radius: 20px;padding: 30px;max-width: 600px;max-height: 90vh;overflow-y: auto;box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);border: 2px solid rgba(255, 255, 255, 0.2);animation: slideUp 0.4s;width: 90%;}@keyframes slideUp {from {transform: translateY(50px);opacity: 0;}to {transform: translateY(0);opacity: 1;}}.modal-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 25px;padding-bottom: 15px;border-bottom: 2px solid rgba(255, 255, 255, 0.2);}.modal-title {font-size: 24px;font-weight: bold;color: white;display: flex;align-items: center;gap: 10px;}.close-modal {background: rgba(255, 255, 255, 0.2);border: none;color: white;font-size: 24px;width: 40px;height: 40px;border-radius: 50%;cursor: pointer;transition: all 0.3s;}.close-modal:hover {background: rgba(255, 255, 255, 0.3);transform: rotate(90deg);}.modal-section {background: rgba(255, 255, 255, 0.1);border-radius: 10px;padding: 20px;margin-bottom: 20px;}.modal-section h3 {color: #FFD700;font-size: 18px;margin-bottom: 15px;display: flex;align-items: center;gap: 8px;}.difficulty-options {display: flex;flex-direction: column;gap: 15px;}.difficulty-btn {background: rgba(255, 255, 255, 0.1);border: 2px solid rgba(255, 255, 255, 0.2);border-radius: 15px;padding: 20px;display: flex;align-items: center;gap: 15px;cursor: pointer;transition: all 0.3s;color: white;text-align: left;}.difficulty-btn:hover {background: rgba(255, 255, 255, 0.2);transform: translateY(-2px);}.difficulty-btn.active {border-color: #FFD700;background: rgba(255, 215, 0, 0.2);box-shadow: 0 0 20px rgba(255, 215, 0, 0.3);}.difficulty-icon {font-size: 32px;min-width: 40px;}.difficulty-info h4 {margin: 0 0 5px 0;font-size: 18px;}.difficulty-info p {margin: 0;font-size: 14px;opacity: 0.8;}.challenge-item {background: rgba(255, 255, 255, 0.1);border-radius: 10px;padding: 15px;margin-bottom: 10px;display: flex;justify-content: space-between;align-items: center;transition: all 0.3s;}.challenge-item.completed {background: rgba(76, 175, 80, 0.2);border: 1px solid rgba(76, 175, 80, 0.5);}.challenge-info {flex: 1;}.challenge-title {color: white;font-weight: bold;font-size: 14px;margin-bottom: 5px;}.challenge-desc {color: rgba(255, 255, 255, 0.8);font-size: 12px;}.challenge-reward {background: linear-gradient(135deg, #FFD700, #FFA500);color: #2c5f2d;padding: 5px 10px;border-radius: 15px;font-weight: bold;font-size: 12px;}.challenge-progress {width: 100%;height: 4px;background: rgba(0, 0, 0, 0.3);border-radius: 5px;margin-top: 8px;overflow: hidden;}.challenge-progress-fill {height: 100%;background: linear-gradient(90deg, #4CAF50, #8BC34A);border-radius: 5px;transition: width 0.5s ease;}.stats-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 10px;}.stat-item {display: flex;justify-content: space-between;padding: 10px;background: rgba(0, 0, 0, 0.2);border-radius: 8px;color: white;font-size: 14px;}.stat-label {color: rgba(255, 255, 255, 0.8);}.stat-value {font-weight: bold;color: #90EE90;}#winMessage {position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);background: linear-gradient(135deg, var(--bg-base), var(--bg-accent));padding: 40px;border-radius: 20px;color: white;font-size: 24px;font-weight: bold;text-align: center;display: none;z-index: 1000;box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);animation: winPulse 0.6s ease-out;border: 3px solid rgba(255, 255, 255, 0.4);}@keyframes winPulse {0% {transform: translate(-50%, -50%) scale(0) rotate(-180deg);opacity: 0;}50% {transform: translate(-50%, -50%) scale(1.1) rotate(5deg);}100% {transform: translate(-50%, -50%) scale(1) rotate(0deg);opacity: 1;}}.win-show {display: block !important;}.win-stats {margin-top: 20px;font-size: 16px;opacity: 0.95;line-height: 1.6;}.hint-panel {position: fixed;bottom: 20px;left: 50%;transform: translateX(-50%);background: linear-gradient(135deg, rgba(34, 139, 34, 0.95), rgba(46, 125, 50, 0.95));color: white;padding: 16px 28px;border-radius: 20px;font-size: 14px;display: none;backdrop-filter: blur(10px);border: 1px solid rgba(255, 255, 255, 0.3);box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);z-index: 999;max-width: 80%;min-width: 300px;transition: opacity 0.4s ease-out;}.show-hint {display: block !important;animation: slideUpHint 0.4s cubic-bezier(0.4, 0, 0.2, 1);}@keyframes slideUpHint {from {opacity: 0;transform: translateX(-50%) translateY(20px);}to {opacity: 1;transform: translateX(-50%) translateY(0);}}.toast {position: fixed;top: 80px;right: -400px;background: linear-gradient(135deg, #FFD700, #FFA500);color: #2c5f2d;padding: 15px 20px;border-radius: 10px;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);transition: right 0.5s cubic-bezier(0.4, 0, 0.2, 1);z-index: 1001;display: flex;align-items: center;gap: 10px;font-weight: bold;max-width: 300px;}.toast.show {right: 20px;}.toast-icon {font-size: 24px;}.level-up-animation {position: fixed;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 3000;pointer-events: none;animation: levelUpBurst 2s ease-out forwards;}@keyframes levelUpBurst {0% {transform: translate(-50%, -50%) scale(0) rotate(0deg);opacity: 1;}50% {transform: translate(-50%, -50%) scale(1.2) rotate(180deg);opacity: 1;}100% {transform: translate(-50%, -50%) scale(1.5) rotate(360deg);opacity: 0;}}.level-up-text {font-size: 48px;font-weight: bold;color: #FFD700;text-shadow: 0 0 20px rgba(255, 215, 0, 0.8), 0 0 40px rgba(255, 215, 0, 0.6);text-align: center;}.confetti {position: fixed;width: 10px;height: 10px;animation: confetti-fall 3s linear infinite;z-index: 999;border-radius: 50%;}@keyframes confetti-fall {0% {transform: translateY(-100vh) rotate(0deg);opacity: 1;}100% {transform: translateY(100vh) rotate(720deg);opacity: 0;}}@media (min-width: 1025px) {.settings-section.menu {display: none }}@media (max-width: 1024px) {.mini-btn:not(.mobile-keep) {display: none !important;}.level-display {display: none !important;}#gameLogo .logo-text {display: none;}.info-badge {font-size: 11px;min-width: 50px;padding: 4px 8px;}#headerControls {gap: 4px;}.mobile-keep {display: flex !important;padding: 4px 8px;font-size: 14px;min-width: 35px;}.mobile-keep .btn-text {display: none;}}@media (max-width: 768px) {#gameHeader {height: 50px;padding: 0 10px;}#gameLogo {font-size: 14px;margin-right: 10px;}.info-badge {font-size: 10px;min-width: 45px;padding: 3px 6px;}.info-group {gap: 4px;}#gameContainer {padding-top: 60px;}.modal {width: 95%;padding: 20px;}.settings-panel {width: 100%;right: -100%;}.game-control-btn {padding: 10px 12px;min-height: 50px;}}@media (max-width: 480px) {#gameHeader {height: 45px;padding: 0 8px;}#gameLogo {font-size: 12px;margin-right: 8px;display: none !important;}.info-badge {font-size: 9px;min-width: 40px;padding: 2px 6px;}.settings-panel {width: 100vw;right: -100vw;}#settingsBtn {width: 35px;height: 35px;font-size: 16px;}}#pauseOverlay {position: fixed;inset: 0;background: rgba(0,0,0,0.6);display: none;align-items: center;justify-content: center;z-index: 3000;backdrop-filter: blur(2px);}.pause-text {font-size: 48px;font-weight: 800;color: #FFD700;text-shadow: 0 0 20px rgba(255,215,0,0.75);animation: pulsePause 1.2s infinite;}@keyframes pulsePause {0%, 100% {transform: scale(1);opacity: 1;}50% {transform: scale(1.08);opacity: 0.8;}}