:root{--color-bg-primary: #008000;--color-bg-gradient-top: rgba(0, 140, 0, .3);--color-bg-gradient-bottom: rgba(0, 100, 0, .3);--color-nav-start: #006400;--color-nav-end: #004d00;--color-nav-border: #003300;--color-btn-primary-start: #2e7d32;--color-btn-primary-end: #1b5e20;--color-btn-primary-hover-start: #388e3c;--color-btn-primary-hover-end: #2e7d32;--color-btn-secondary-start: #1b5e20;--color-btn-secondary-end: #0d3d10;--color-stats-bg-start: #004d00;--color-stats-bg-end: #003300;--color-stats-highlight: #ffeb3b;--color-stats-border: rgba(255, 235, 59, .5);--color-tableau-pattern: #008000;--color-text-primary: #1b5e20;--color-text-heading: #006400;--color-text-heading-secondary: #2e7d32;--color-text-light: #ffffff;--color-text-muted: rgba(255, 255, 255, .7);--color-text-on-light: #1b5e20;--color-overlay-text: #ffffff;--color-overlay-text-muted: rgba(255, 255, 255, .7);--color-border-accent: #4caf50;--color-highlight: #ffd700;--color-success: #4caf50;--color-success-light: #90EE90;--color-success-lighter: #98FB98;--color-error: #f44336;--color-warning: #ff9800;--color-card-red: #d32f2f;--color-card-black: #212121;--color-card-bg: #ffffff;--color-card-border: rgba(0, 0, 0, .2);--color-overlay-dark: rgba(0, 0, 0, .6);--color-overlay-light: rgba(255, 255, 255, .1);--color-levelup-bg-start: #2e7d32;--color-levelup-bg-end: #1b5e20;--color-levelup-text: #ffffff;--color-levelup-text-muted: #c8e6c9;--color-levelup-title: #ffd700;--color-levelup-glow: rgba(46, 125, 50, .4);--color-achievement-bg-start: #004d00;--color-achievement-bg-end: #003300;--color-achievement-text: #ffffff;--color-achievement-text-muted: #a5d6a7;--color-badge-bronze: #cd7f32;--color-badge-bronze-dark: #8b5a2b;--color-badge-silver: #c0c0c0;--color-badge-silver-dark: #808080;--color-badge-gold: #ffd700;--color-badge-gold-dark: #b8860b;--color-badge-platinum: #e5e4e2;--color-badge-platinum-dark: #9ca3af;--color-badge-diamond: #b9f2ff;--color-badge-diamond-dark: #60a5fa;--color-badge-legendary: #ff6b6b;--color-badge-legendary-dark: #ee5a6f;--color-streak-start: #f6ad55;--color-streak-end: #ed8936;--modal-stat-value: var(--color-success, #4ade80);--modal-stat-border: rgba(76, 175, 80, .5);--modal-highlight-bg: rgba(255, 215, 0, .15);--modal-highlight-border: rgba(255, 215, 0, .4);--modal-streak-bg: rgba(255, 107, 0, .2);--modal-streak-border: rgba(255, 107, 0, .4);--modal-streak-text: #ffb347;--modal-progress-gradient: linear-gradient(90deg, var(--color-success, #4ade80) 0%, #22c55e 100%);--modal-undo-gradient: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);--modal-undo-shadow: rgba(245, 158, 11, .3);--modal-undo-shadow-hover: rgba(245, 158, 11, .4);--modal-loss-gradient: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);--modal-levelup-gradient: linear-gradient(135deg, var(--color-highlight, #ffd700) 0%, var(--color-warning, #ff8c00) 100%);--modal-levelup-shadow: rgba(255, 215, 0, .4);--color-success-dark: #22c55e}[data-theme=green]{--color-bg-primary: #008000;--color-bg-gradient-top: rgba(0, 140, 0, .3);--color-bg-gradient-bottom: rgba(0, 100, 0, .3);--color-nav-start: #006400;--color-nav-end: #004d00;--color-nav-border: #003300;--color-achievement-bg-start: #004d00;--color-achievement-bg-end: #003300;--color-achievement-text: #ffffff;--color-achievement-text-muted: #a5d6a7;--color-levelup-bg-start: #2e7d32;--color-levelup-bg-end: #1b5e20;--color-levelup-text: #ffffff;--color-levelup-text-muted: #c8e6c9;--color-levelup-title: #ffd700;--color-levelup-glow: rgba(46, 125, 50, .4);--color-btn-primary-start: #2e7d32;--color-btn-primary-end: #1b5e20;--color-btn-primary-hover-start: #388e3c;--color-btn-primary-hover-end: #2e7d32;--color-btn-secondary-start: #1b5e20;--color-btn-secondary-end: #0d3d10;--color-stats-bg-start: #004d00;--color-stats-bg-end: #003300;--color-stats-highlight: #ffeb3b;--color-stats-border: rgba(255, 235, 59, .5);--color-tableau-pattern: #008000;--color-text-primary: #1b5e20;--color-text-heading: #006400;--color-text-heading-secondary: #2e7d32;--color-text-on-light: #1b5e20;--color-border-accent: #4caf50;--color-highlight: #ffd700;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=dark-green]{--color-bg-primary: #0d3d10;--color-bg-gradient-top: rgba(13, 61, 16, .3);--color-bg-gradient-bottom: rgba(6, 30, 8, .3);--color-nav-start: #0a3a0d;--color-nav-end: #072808;--color-nav-border: #041205;--color-achievement-bg-start: #0a3a0d;--color-achievement-bg-end: #041205;--color-achievement-text: #e8f5e9;--color-achievement-text-muted: #a5d6a7;--color-levelup-bg-start: #1b5e20;--color-levelup-bg-end: #0d3d10;--color-levelup-text: #ffffff;--color-levelup-text-muted: #c8e6c9;--color-levelup-title: #ffd700;--color-levelup-glow: rgba(27, 94, 32, .4);--color-btn-primary-start: #1b5e20;--color-btn-primary-end: #0d3d10;--color-btn-primary-hover-start: #2e7d32;--color-btn-primary-hover-end: #1b5e20;--color-btn-secondary-start: #0d3d10;--color-btn-secondary-end: #061e08;--color-stats-bg-start: #061e08;--color-stats-bg-end: #041205;--color-stats-highlight: #81c784;--color-stats-border: rgba(129, 199, 132, .5);--color-tableau-pattern: #0d3d10;--color-text-primary: #e8f5e9;--color-text-heading: #81c784;--color-text-heading-secondary: #a5d6a7;--color-text-on-light: #0d3d10;--color-border-accent: #4caf50;--color-highlight: #ffd700;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=blue]{--color-bg-primary: #1a4a7c;--color-bg-gradient-top: rgba(26, 74, 124, .3);--color-bg-gradient-bottom: rgba(15, 45, 80, .3);--color-nav-start: #0f2d50;--color-nav-end: #0a1f38;--color-nav-border: #061525;--color-achievement-bg-start: #0f2d50;--color-achievement-bg-end: #061525;--color-achievement-text: #e0f2fe;--color-achievement-text-muted: #93c5fd;--color-levelup-bg-start: #2563eb;--color-levelup-bg-end: #1d4ed8;--color-levelup-text: #ffffff;--color-levelup-text-muted: #bfdbfe;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(37, 99, 235, .4);--color-btn-primary-start: #2563eb;--color-btn-primary-end: #1d4ed8;--color-btn-primary-hover-start: #3b82f6;--color-btn-primary-hover-end: #2563eb;--color-btn-secondary-start: #1e40af;--color-btn-secondary-end: #1e3a8a;--color-stats-bg-start: #0f2d50;--color-stats-bg-end: #0a1f38;--color-stats-highlight: #60a5fa;--color-stats-border: rgba(96, 165, 250, .5);--color-tableau-pattern: #1a4a7c;--color-text-primary: #e0f2fe;--color-text-heading: #60a5fa;--color-text-heading-secondary: #93c5fd;--color-text-on-light: #0f2d50;--color-border-accent: #3b82f6;--color-highlight: #fbbf24;--modal-stat-value: #60a5fa;--modal-stat-border: rgba(96, 165, 250, .5);--modal-progress-gradient: linear-gradient(90deg, #60a5fa 0%, #3b82f6 100%);--color-success: #60a5fa;--color-success-dark: #3b82f6;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=red]{--color-bg-primary: #7f1d1d;--color-bg-gradient-top: rgba(127, 29, 29, .3);--color-bg-gradient-bottom: rgba(69, 10, 10, .3);--color-nav-start: #450a0a;--color-nav-end: #2a0505;--color-nav-border: #1a0303;--color-achievement-bg-start: #450a0a;--color-achievement-bg-end: #1a0303;--color-achievement-text: #fef2f2;--color-achievement-text-muted: #fecaca;--color-levelup-bg-start: #dc2626;--color-levelup-bg-end: #991b1b;--color-levelup-text: #ffffff;--color-levelup-text-muted: #fecaca;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(220, 38, 38, .4);--color-btn-primary-start: #b91c1c;--color-btn-primary-end: #991b1b;--color-btn-primary-hover-start: #dc2626;--color-btn-primary-hover-end: #b91c1c;--color-btn-secondary-start: #991b1b;--color-btn-secondary-end: #7f1d1d;--color-stats-bg-start: #450a0a;--color-stats-bg-end: #2a0505;--color-stats-highlight: #fca5a5;--color-stats-border: rgba(252, 165, 165, .5);--color-tableau-pattern: #7f1d1d;--color-text-primary: #fef2f2;--color-text-heading: #fca5a5;--color-text-heading-secondary: #fecaca;--color-text-on-light: #450a0a;--color-border-accent: #ef4444;--color-highlight: #fbbf24;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=purple]{--color-bg-primary: #581c87;--color-bg-gradient-top: rgba(88, 28, 135, .3);--color-bg-gradient-bottom: rgba(59, 7, 100, .3);--color-nav-start: #3b0764;--color-nav-end: #2e0550;--color-nav-border: #1e0333;--color-achievement-bg-start: #3b0764;--color-achievement-bg-end: #1e0333;--color-achievement-text: #faf5ff;--color-achievement-text-muted: #ddd6fe;--color-levelup-bg-start: #8b5cf6;--color-levelup-bg-end: #6d28d9;--color-levelup-text: #ffffff;--color-levelup-text-muted: #ddd6fe;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(139, 92, 246, .4);--color-btn-primary-start: #7c3aed;--color-btn-primary-end: #6d28d9;--color-btn-primary-hover-start: #8b5cf6;--color-btn-primary-hover-end: #7c3aed;--color-btn-secondary-start: #6d28d9;--color-btn-secondary-end: #5b21b6;--color-stats-bg-start: #3b0764;--color-stats-bg-end: #2e0550;--color-stats-highlight: #c4b5fd;--color-stats-border: rgba(196, 181, 253, .5);--color-tableau-pattern: #581c87;--color-text-primary: #faf5ff;--color-text-heading: #c4b5fd;--color-text-heading-secondary: #ddd6fe;--color-text-on-light: #3b0764;--color-border-accent: #8b5cf6;--color-highlight: #fbbf24;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=dark]{--color-bg-primary: #1f2937;--color-bg-gradient-top: rgba(31, 41, 55, .3);--color-bg-gradient-bottom: rgba(17, 24, 39, .3);--color-nav-start: #111827;--color-nav-end: #0a0f18;--color-nav-border: #030712;--color-achievement-bg-start: #111827;--color-achievement-bg-end: #030712;--color-achievement-text: #f9fafb;--color-achievement-text-muted: #d1d5db;--color-levelup-bg-start: #6b7280;--color-levelup-bg-end: #4b5563;--color-levelup-text: #ffffff;--color-levelup-text-muted: #d1d5db;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(107, 114, 128, .4);--color-btn-primary-start: #4b5563;--color-btn-primary-end: #374151;--color-btn-primary-hover-start: #6b7280;--color-btn-primary-hover-end: #4b5563;--color-btn-secondary-start: #374151;--color-btn-secondary-end: #1f2937;--color-stats-bg-start: #111827;--color-stats-bg-end: #0a0f18;--color-stats-highlight: #9ca3af;--color-stats-border: rgba(156, 163, 175, .5);--color-tableau-pattern: #1f2937;--color-text-primary: #f9fafb;--color-text-heading: #e5e7eb;--color-text-heading-secondary: #d1d5db;--color-text-on-light: #111827;--color-border-accent: #6b7280;--color-highlight: #fbbf24;--color-success: #4ade80;--color-error: #f87171;--color-warning: #fbbf24;--sudoku-cell-bg: #374151;--sudoku-cell-border: #6b7280;--sudoku-cell-selected: rgba(255, 255, 255, .15);--sudoku-cell-highlighted: rgba(255, 255, 255, .05);--sudoku-cell-same-number: rgba(255, 255, 255, .1);--sudoku-given-color: #f9fafb;--sudoku-user-color: #60a5fa;--sudoku-pencil-color: #9ca3af;--sudoku-error-bg: rgba(248, 113, 113, .2);--sudoku-container-bg: rgba(31, 41, 55, .98);--sudoku-grid-border: #6b7280;--sudoku-box-border: #9ca3af;--sudoku-success: #34d399;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=navy]{--color-bg-primary: #0d1b2a;--color-bg-gradient-top: rgba(13, 27, 42, .3);--color-bg-gradient-bottom: rgba(27, 38, 59, .3);--color-nav-start: #1b263b;--color-nav-end: #0d1b2a;--color-nav-border: #415a77;--color-achievement-bg-start: #1b263b;--color-achievement-bg-end: #0d1b2a;--color-achievement-text: #e0e1dd;--color-achievement-text-muted: #a8b4c4;--color-levelup-bg-start: #415a77;--color-levelup-bg-end: #1b263b;--color-levelup-text: #ffffff;--color-levelup-text-muted: #a8b4c4;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(65, 90, 119, .4);--color-btn-primary-start: #415a77;--color-btn-primary-end: #1b263b;--color-btn-primary-hover-start: #778da9;--color-btn-primary-hover-end: #415a77;--color-btn-secondary-start: #1b263b;--color-btn-secondary-end: #0d1b2a;--color-stats-bg-start: #1b263b;--color-stats-bg-end: #0d1b2a;--color-stats-highlight: #778da9;--color-stats-border: rgba(119, 141, 169, .5);--color-tableau-pattern: #0d1b2a;--color-text-primary: #e0e1dd;--color-text-heading: #778da9;--color-text-heading-secondary: #a8b4c4;--color-text-on-light: #0d1b2a;--color-border-accent: #415a77;--color-highlight: #fbbf24;--color-success: #4ade80;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=walnut]{--color-bg-primary: #3d2914;--color-bg-gradient-top: rgba(61, 41, 20, .3);--color-bg-gradient-bottom: rgba(92, 61, 46, .3);--color-nav-start: #5c3d2e;--color-nav-end: #3d2914;--color-nav-border: #8b6914;--color-achievement-bg-start: #5c3d2e;--color-achievement-bg-end: #3d2914;--color-achievement-text: #f5e6d3;--color-achievement-text-muted: #e8c9a0;--color-levelup-bg-start: #8b6914;--color-levelup-bg-end: #5c3d2e;--color-levelup-text: #ffffff;--color-levelup-text-muted: #e8c9a0;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(139, 105, 20, .4);--color-btn-primary-start: #8b6914;--color-btn-primary-end: #6b4f10;--color-btn-primary-hover-start: #a67c00;--color-btn-primary-hover-end: #8b6914;--color-btn-secondary-start: #5c3d2e;--color-btn-secondary-end: #3d2914;--color-stats-bg-start: #5c3d2e;--color-stats-bg-end: #3d2914;--color-stats-highlight: #d4a574;--color-stats-border: rgba(212, 165, 116, .5);--color-tableau-pattern: #3d2914;--color-text-primary: #f5e6d3;--color-text-heading: #d4a574;--color-text-heading-secondary: #e8c9a0;--color-text-on-light: #3d2914;--color-border-accent: #8b6914;--color-highlight: #fbbf24;--color-success: #a3be8c;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=teal]{--color-bg-primary: #134e4a;--color-bg-gradient-top: rgba(19, 78, 74, .3);--color-bg-gradient-bottom: rgba(17, 94, 89, .3);--color-nav-start: #115e59;--color-nav-end: #0d4744;--color-nav-border: #2dd4bf;--color-achievement-bg-start: #115e59;--color-achievement-bg-end: #0d4744;--color-achievement-text: #f0fdfa;--color-achievement-text-muted: #99f6e4;--color-levelup-bg-start: #14b8a6;--color-levelup-bg-end: #0d9488;--color-levelup-text: #ffffff;--color-levelup-text-muted: #99f6e4;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(20, 184, 166, .4);--color-btn-primary-start: #14b8a6;--color-btn-primary-end: #0d9488;--color-btn-primary-hover-start: #2dd4bf;--color-btn-primary-hover-end: #14b8a6;--color-btn-secondary-start: #0d9488;--color-btn-secondary-end: #0f766e;--color-stats-bg-start: #115e59;--color-stats-bg-end: #0d4744;--color-stats-highlight: #5eead4;--color-stats-border: rgba(94, 234, 212, .5);--color-tableau-pattern: #134e4a;--color-text-primary: #f0fdfa;--color-text-heading: #5eead4;--color-text-heading-secondary: #99f6e4;--color-text-on-light: #134e4a;--color-border-accent: #2dd4bf;--color-highlight: #fbbf24;--color-success: #5eead4;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=midnight]{--color-bg-primary: #18181b;--color-bg-gradient-top: rgba(24, 24, 27, .3);--color-bg-gradient-bottom: rgba(39, 39, 42, .3);--color-nav-start: #27272a;--color-nav-end: #18181b;--color-nav-border: #52525b;--color-achievement-bg-start: #27272a;--color-achievement-bg-end: #18181b;--color-achievement-text: #fafafa;--color-achievement-text-muted: #d4d4d8;--color-levelup-bg-start: #52525b;--color-levelup-bg-end: #3f3f46;--color-levelup-text: #ffffff;--color-levelup-text-muted: #d4d4d8;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(82, 82, 91, .4);--color-btn-primary-start: #52525b;--color-btn-primary-end: #3f3f46;--color-btn-primary-hover-start: #71717a;--color-btn-primary-hover-end: #52525b;--color-btn-secondary-start: #3f3f46;--color-btn-secondary-end: #27272a;--color-stats-bg-start: #27272a;--color-stats-bg-end: #18181b;--color-stats-highlight: #a1a1aa;--color-stats-border: rgba(161, 161, 170, .5);--color-tableau-pattern: #18181b;--color-text-primary: #fafafa;--color-text-heading: #e4e4e7;--color-text-heading-secondary: #d4d4d8;--color-text-on-light: #18181b;--color-border-accent: #71717a;--color-highlight: #fbbf24;--color-success: #4ade80;--color-error: #f87171;--color-warning: #fbbf24;--sudoku-cell-bg: #27272a;--sudoku-cell-border: #52525b;--sudoku-cell-selected: rgba(255, 255, 255, .15);--sudoku-cell-highlighted: rgba(255, 255, 255, .05);--sudoku-cell-same-number: rgba(255, 255, 255, .1);--sudoku-given-color: #fafafa;--sudoku-user-color: #60a5fa;--sudoku-pencil-color: #a1a1aa;--sudoku-error-bg: rgba(248, 113, 113, .2);--sudoku-container-bg: rgba(39, 39, 42, .98);--sudoku-grid-border: #52525b;--sudoku-box-border: #a1a1aa;--sudoku-success: #34d399;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--border-accent: var(--color-border-accent)}[data-theme=dark-blue]{--color-bg-primary: #0d1b2a;--color-bg-gradient-top: rgba(13, 27, 42, .95);--color-bg-gradient-bottom: rgba(27, 38, 59, .95);--color-nav-start: #1b263b;--color-nav-end: #0d1b2a;--color-nav-border: #415a77;--color-achievement-bg-start: #1b263b;--color-achievement-bg-end: #0d1b2a;--color-achievement-text: #e0e1dd;--color-achievement-text-muted: #a8b4c4;--color-levelup-bg-start: #415a77;--color-levelup-bg-end: #1b263b;--color-levelup-text: #ffffff;--color-levelup-text-muted: #a8b4c4;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(65, 90, 119, .4);--color-btn-primary-start: #415a77;--color-btn-primary-end: #1b263b;--color-btn-primary-hover-start: #778da9;--color-btn-primary-hover-end: #415a77;--color-btn-secondary-start: #1b263b;--color-btn-secondary-end: #0d1b2a;--color-stats-bg-start: #1b263b;--color-stats-bg-end: #0d1b2a;--color-stats-highlight: #778da9;--color-stats-border: rgba(119, 141, 169, .5);--color-tableau-pattern: #0d1b2a;--color-text-primary: #e0e1dd;--color-text-heading: #778da9;--color-text-heading-secondary: #a8b4c4;--color-text-on-light: #0d1b2a;--color-text-light: #ffffff;--color-text-muted: rgba(224, 225, 221, .7);--color-overlay-text: #e0e1dd;--color-overlay-text-muted: rgba(224, 225, 221, .7);--color-border-accent: #415a77;--color-highlight: #fbbf24;--color-success: #4ade80;--color-error: #f87171;--color-warning: #fbbf24;--sudoku-cell-bg: #1b263b;--sudoku-cell-border: #4a6a8a;--sudoku-cell-selected: rgba(255, 255, 255, .15);--sudoku-cell-highlighted: rgba(255, 255, 255, .05);--sudoku-cell-same-number: rgba(255, 255, 255, .1);--sudoku-given-color: #e0e1dd;--sudoku-user-color: #60a5fa;--sudoku-pencil-color: #a8b4c4;--sudoku-error-bg: rgba(248, 113, 113, .2);--sudoku-container-bg: rgba(27, 38, 59, .98);--sudoku-grid-border: #5a7a9a;--sudoku-box-border: #8fa8c8;--sudoku-success: #34d399;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--overlay-text: var(--color-overlay-text);--overlay-text-muted: var(--color-overlay-text-muted);--border-accent: var(--color-border-accent)}[data-theme=light]{--color-bg-primary: #faf8ef;--color-bg-gradient-top: rgba(238, 228, 218, .2);--color-bg-gradient-bottom: rgba(237, 224, 200, .2);--color-nav-start: #8f7a66;--color-nav-end: #766558;--color-nav-border: #665544;--color-achievement-bg-start: #8f7a66;--color-achievement-bg-end: #766558;--color-achievement-text: #ffffff;--color-achievement-text-muted: #f5e6d3;--color-levelup-bg-start: #8f7a66;--color-levelup-bg-end: #766558;--color-levelup-text: #ffffff;--color-levelup-text-muted: #f5e6d3;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(143, 122, 102, .4);--color-btn-primary-start: #8f7a66;--color-btn-primary-end: #766558;--color-btn-primary-hover-start: #a89080;--color-btn-primary-hover-end: #8f7a66;--color-btn-secondary-start: #766558;--color-btn-secondary-end: #5a4a3a;--color-stats-bg-start: #8f7a66;--color-stats-bg-end: #766558;--color-stats-highlight: #8f7a66;--color-stats-border: rgba(143, 122, 102, .3);--color-tableau-pattern: #eee4da;--color-text-primary: #776e65;--color-text-heading: #8f7a66;--color-text-heading-secondary: #776e65;--color-text-on-light: #5a4a3a;--color-text-light: #ffffff;--color-text-muted: rgba(119, 110, 101, .7);--color-overlay-text: #5a4a3a;--color-overlay-text-muted: rgba(90, 74, 58, .7);--color-border-accent: #bbada0;--color-highlight: #f59e0b;--color-success: #22c55e;--color-error: #ef4444;--color-warning: #f59e0b;--sudoku-cell-bg: #ffffff;--sudoku-cell-border: #d4c8bc;--sudoku-cell-selected: #ffe4b5;--sudoku-cell-highlighted: rgba(143, 122, 102, .15);--sudoku-cell-same-number: rgba(143, 122, 102, .25);--sudoku-given-color: #5a4a3a;--sudoku-user-color: #2563eb;--sudoku-pencil-color: #8f7a66;--sudoku-error-bg: rgba(239, 68, 68, .2);--sudoku-container-bg: rgba(250, 248, 239, .98);--sudoku-grid-border: #bbada0;--sudoku-box-border: #8f7a66;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--overlay-text: var(--color-overlay-text);--overlay-text-muted: var(--color-overlay-text-muted);--border-accent: var(--color-border-accent)}[data-theme=light-blue]{--color-bg-primary: #ffffff;--color-bg-gradient-top: rgba(239, 246, 255, .5);--color-bg-gradient-bottom: rgba(219, 234, 254, .3);--color-nav-start: #2563eb;--color-nav-end: #1d4ed8;--color-nav-border: #1e40af;--color-achievement-bg-start: #2563eb;--color-achievement-bg-end: #1d4ed8;--color-achievement-text: #ffffff;--color-achievement-text-muted: #dbeafe;--color-levelup-bg-start: #3b82f6;--color-levelup-bg-end: #2563eb;--color-levelup-text: #ffffff;--color-levelup-text-muted: #dbeafe;--color-levelup-title: #fbbf24;--color-levelup-glow: rgba(37, 99, 235, .4);--color-btn-primary-start: #2563eb;--color-btn-primary-end: #1d4ed8;--color-btn-primary-hover-start: #3b82f6;--color-btn-primary-hover-end: #2563eb;--color-btn-secondary-start: #3b82f6;--color-btn-secondary-end: #2563eb;--color-stats-bg-start: #ffffff;--color-stats-bg-end: #f8fafc;--color-stats-highlight: #2563eb;--color-stats-border: rgba(37, 99, 235, .2);--color-tableau-pattern: #eff6ff;--color-text-primary: #1e293b;--color-text-heading: #1d4ed8;--color-text-heading-secondary: #475569;--color-text-on-light: #1e293b;--color-text-light: #ffffff;--color-text-muted: rgba(30, 41, 59, .6);--color-overlay-text: #1e293b;--color-overlay-text-muted: rgba(30, 41, 59, .6);--color-border-accent: #60a5fa;--color-highlight: #f59e0b;--color-error: #dc2626;--color-warning: #f59e0b;--sudoku-cell-bg: #ffffff;--sudoku-cell-border: #e2e8f0;--sudoku-cell-selected: rgba(59, 130, 246, .15);--sudoku-cell-highlighted: rgba(59, 130, 246, .05);--sudoku-cell-same-number: rgba(59, 130, 246, .1);--sudoku-given-color: #0f172a;--sudoku-user-color: #1d4ed8;--sudoku-pencil-color: #64748b;--sudoku-error-bg: rgba(220, 38, 38, .1);--sudoku-container-bg: #ffffff;--sudoku-grid-border: #cbd5e1;--sudoku-box-border: #94a3b8;--sudoku-success: #059669;--sudoku-btn-highlight-bg: #f0f7ff;--modal-stat-value: #2563eb;--modal-stat-border: rgba(59, 130, 246, .4);--modal-progress-gradient: linear-gradient(90deg, #3b82f6 0%, #2563eb 100%);--color-success: #059669;--color-success-dark: #047857;--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--overlay-text: var(--color-overlay-text);--overlay-text-muted: var(--color-overlay-text-muted);--border-accent: var(--color-border-accent)}:root{--bg-primary: var(--color-bg-primary);--bg-gradient-top: var(--color-bg-gradient-top);--bg-gradient-bottom: var(--color-bg-gradient-bottom);--nav-gradient-start: var(--color-nav-start);--nav-gradient-end: var(--color-nav-end);--nav-border: var(--color-nav-border);--btn-primary-start: var(--color-btn-primary-start);--btn-primary-end: var(--color-btn-primary-end);--btn-primary-hover-start: var(--color-btn-primary-hover-start);--btn-primary-hover-end: var(--color-btn-primary-hover-end);--btn-secondary-start: var(--color-btn-secondary-start);--btn-secondary-end: var(--color-btn-secondary-end);--stats-bg-start: var(--color-stats-bg-start);--stats-bg-end: var(--color-stats-bg-end);--stats-highlight: var(--color-stats-highlight);--stats-border: var(--color-stats-border);--tableau-pattern: var(--color-tableau-pattern);--text-primary: var(--color-text-primary);--heading-color: var(--color-text-heading);--heading-secondary: var(--color-text-heading-secondary);--text-on-light: var(--color-text-on-light);--overlay-text: var(--color-overlay-text);--overlay-text-muted: var(--color-overlay-text-muted);--border-accent: var(--color-border-accent);--color-success-light: #90EE90;--color-success-lighter: #98FB98}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--card-gap: var(--space-2);--card-overlap-y: 25px;--card-overlap-y-face-down: 8px;--card-stack-offset: 2px;--pile-gap: var(--space-3);--pile-padding: var(--space-2);--layout-padding: var(--space-4);--layout-padding-mobile: var(--space-2);--section-gap: var(--space-6);--nav-padding-x: var(--space-3);--nav-padding-y: var(--space-1);--nav-item-gap: var(--space-2);--btn-padding-x: var(--space-4);--btn-padding-y: var(--space-2);--btn-padding-x-sm: var(--space-3);--btn-padding-y-sm: var(--space-1);--modal-padding: var(--space-6);--modal-padding-mobile: var(--space-4);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--card-radius: var(--radius-lg);--btn-radius: var(--radius-md);--modal-radius: var(--radius-xl);--input-radius: var(--radius-md)}:root{--font-primary: "Inter", "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-heading: "Poppins", "Inter", "Segoe UI", sans-serif;--font-mono: "Consolas", "Monaco", "Courier New", monospace;--font-size-scale: 1;--text-xs: calc(.75rem * var(--font-size-scale));--text-sm: calc(.85rem * var(--font-size-scale));--text-base: calc(1rem * var(--font-size-scale));--text-lg: calc(1.1rem * var(--font-size-scale));--text-xl: calc(1.25rem * var(--font-size-scale));--text-2xl: calc(1.5rem * var(--font-size-scale));--text-3xl: calc(2rem * var(--font-size-scale));--text-4xl: calc(2.5rem * var(--font-size-scale));--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-none: 1;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--logo-size: var(--text-lg);--logo-weight: var(--font-bold);--nav-size: var(--text-sm);--nav-weight: var(--font-semibold);--btn-size: var(--text-sm);--btn-weight: var(--font-bold);--stats-size: var(--text-sm);--stats-label-size: var(--text-xs);--card-rank-size: 1.2em;--card-suit-size: 1em;--h1-size: var(--text-3xl);--h2-size: var(--text-2xl);--h3-size: var(--text-xl);--h4-size: var(--text-lg)}:root{--animation-speed: .3s;--speed-instant: 0ms;--speed-fast: calc(var(--animation-speed) * .5);--speed-normal: var(--animation-speed);--speed-slow: calc(var(--animation-speed) * 1.5);--ease-default: ease;--ease-in: ease-in;--ease-out: ease-out;--ease-in-out: ease-in-out;--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--transition-bg: background var(--speed-normal) var(--ease-default), border-color var(--speed-normal) var(--ease-default);--transition-btn: all .2s var(--ease-default);--transition-card: transform var(--speed-normal) var(--ease-smooth), box-shadow var(--speed-fast) var(--ease-default);--transition-modal: opacity var(--speed-normal) var(--ease-default), transform var(--speed-normal) var(--ease-smooth);--transition-menu: left var(--speed-normal) var(--ease-default)}@keyframes cardFlip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}@keyframes hintGlow{0%,to{box-shadow:0 0 5px var(--color-highlight)}50%{box-shadow:0 0 20px var(--color-highlight),0 0 30px var(--color-highlight)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}:root{--chrome-nav-height: 45px;--chrome-nav-height-fullscreen: 35px;--chrome-padding: 1rem;--chrome-sidebar-width: 0px;--chrome-overlay-height: 56px;--game-area-width: calc(100vw - var(--chrome-sidebar-width) - var(--chrome-padding) * 2);--game-area-height: calc(100vh - var(--chrome-nav-height) - var(--chrome-overlay-height) - var(--chrome-padding) * 2);--card-aspect-ratio: 1.397;--card-min-width: 32px;--card-max-width: 120px;--card-border-radius-ratio: .06;--game-columns: 7;--game-gap: .5rem;--game-gap-px: 8px;--total-gaps: calc(var(--game-gap-px) * (var(--game-columns) - 1));--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / var(--game-columns)), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio));--card-overlap-ratio: .2;--card-overlap: calc(var(--card-height) * var(--card-overlap-ratio));--top-chrome-margin: 1rem;--game-top-chrome-height: calc(var(--card-height) + var(--top-chrome-margin));--tableau-area-height: calc(var(--game-area-height) - var(--game-top-chrome-height));--game-content-width: calc( (var(--card-width) * var(--game-columns)) + (var(--game-gap-px) * (var(--game-columns) - 1)) + (var(--chrome-padding) * 2) )}.game-zone[data-game]{--game-content-width: calc( (var(--card-width) * var(--game-columns)) + (var(--game-gap-px) * (var(--game-columns) - 1)) + (var(--chrome-padding) * 2) )}.game-zone[data-game=pyramid],.game-zone[data-game=tripeaks]{--game-content-width: calc(100% - 2rem) }[data-game=klondike],[data-game=yukon],[data-game=russian],[data-game=scorpion],[data-game=spiderette],[data-game=golf],[data-game=easthaven],[data-game=westcliff],[data-game=somerset],[data-game=agnes],[data-game=alaska]{--game-columns: 7}[data-game=freecell],[data-game=bakersgame],[data-game=eightoff],[data-game=seahaventowers],[data-game=penguin],[data-game=canfield]{--game-columns: 8;--total-gaps: calc(var(--game-gap-px) * 7);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 8), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-game=doubleklondike]{--game-columns: 11;--total-gaps: calc(var(--game-gap-px) * 10);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 11), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-game=pyramid]{--game-columns: 7;--pyramid-rows: 7;--pyramid-overlap-ratio: .35;--pyramid-vertical-units: 4.5;--card-height-from-height: calc(var(--game-area-height) / var(--pyramid-vertical-units));--card-width-from-height: calc(var(--card-height-from-height) / var(--card-aspect-ratio));--side-panel-width-estimate: calc(var(--card-width-from-height) + var(--game-gap-px) * 2);--pyramid-area-width: calc(var(--game-area-width) - var(--side-panel-width-estimate) * 2);--total-gaps: calc(var(--game-gap-px) * 6);--card-width-from-width: calc((var(--pyramid-area-width) - var(--total-gaps)) / 7);--card-width: clamp( var(--card-min-width), min(var(--card-width-from-width), var(--card-width-from-height)), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio));--side-panel-width: calc(var(--card-width) + var(--game-gap-px) * 2)}@media(max-width:600px){[data-game=pyramid]{--pyramid-area-width: calc(var(--game-area-width) - var(--game-gap-px) * 2);--pyramid-vertical-units: 5;--side-panel-width: 0px}}[data-game=tripeaks]{--tripeaks-bottom-row-cards: 10;--tripeaks-rows: 4;--tripeaks-h-spacing-ratio: .08;--tripeaks-v-spacing-ratio: .25;--tripeaks-peaks-width-units: calc( var(--tripeaks-bottom-row-cards) + (var(--tripeaks-bottom-row-cards) - 1) * var(--tripeaks-h-spacing-ratio) );--tripeaks-side-panel-units: 1.2;--tripeaks-horizontal-units: calc( var(--tripeaks-peaks-width-units) + var(--tripeaks-side-panel-units) );--tripeaks-vertical-units: calc( 1 + (var(--tripeaks-rows) - 1) * var(--tripeaks-v-spacing-ratio) + 2.75 );--card-width-from-height: calc(var(--game-area-height) / var(--tripeaks-vertical-units) / var(--card-aspect-ratio));--card-width-from-width: calc(var(--game-area-width) / var(--tripeaks-horizontal-units));--card-width: clamp( var(--card-min-width), min(var(--card-width-from-width), var(--card-width-from-height)), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio));--side-panel-width: calc(var(--card-width) + var(--game-gap-px) * 2)}@media(max-width:600px){[data-game=tripeaks]{--tripeaks-side-panel-units: 0;--tripeaks-horizontal-units: var(--tripeaks-peaks-width-units);--tripeaks-vertical-units: calc( 1 + (var(--tripeaks-rows) - 1) * var(--tripeaks-v-spacing-ratio) + 3.75 );--side-panel-width: 0px}}[data-game=spider],[data-game=fortythieves],[data-game=wasp]{--game-columns: 10;--total-gaps: calc(var(--game-gap-px) * 9);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 10), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-game=bakersdozen],[data-game=gaps]{--game-columns: 13;--total-gaps: calc(var(--game-gap-px) * 12);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 13), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-game=demon],[data-game=acesup]{--game-columns: 4;--total-gaps: calc(var(--game-gap-px) * 3);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 4), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-game=accordion]{--game-columns: 13;--total-gaps: calc(var(--game-gap-px) * 12);--card-width: clamp( var(--card-min-width), calc((var(--game-area-width) - var(--total-gaps)) / 13), var(--card-max-width) );--card-height: calc(var(--card-width) * var(--card-aspect-ratio));--card-border-radius: calc(var(--card-width) * var(--card-border-radius-ratio))}[data-layout=pyramid]{--pyramid-rows: 7;--pyramid-overlap-vertical: .3;--pyramid-offset-horizontal: .5}[data-layout=circular]{--card-width: clamp( var(--card-min-width), min(calc(var(--game-area-width) / 8), calc(var(--game-area-height) / 8)), var(--card-max-width) )}[data-layout=grid]{--grid-size: 9;--cell-size: clamp( 30px, calc(min(var(--game-area-width), var(--game-area-height)) / var(--grid-size)), 60px )}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}ul,ol{list-style:none}button{font:inherit;cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit}table{border-collapse:collapse;border-spacing:0}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}html{font-size:calc(16px * var(--font-size-scale, 1));-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-light);background:var(--bg-primary);background-image:radial-gradient(ellipse at top,var(--bg-gradient-top) 0%,transparent 50%),radial-gradient(ellipse at bottom,var(--bg-gradient-bottom) 0%,transparent 50%);min-height:100vh;overflow-x:hidden;transition:var(--transition-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--color-highlight);outline-offset:2px}:focus:not(:focus-visible){outline:none}::-moz-selection{background:var(--color-highlight);color:var(--color-card-black)}::selection{background:var(--color-highlight);color:var(--color-card-black)}.no-select{-webkit-user-select:none;-moz-user-select:none;user-select:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.invisible{visibility:hidden}.hidden{display:none!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading, var(--font-primary));font-weight:var(--font-bold);line-height:var(--leading-tight)}:root{--game-tableau-columns: 7;--game-foundation-count: 4;--game-has-stock: 1;--game-has-waste: 1;--game-has-cells: 0;--game-card-overlap-face-down: 8px;--pile-min-width: var(--card-width, 70px);--pile-max-width: var(--card-max-width, 100px)}[data-game] .card,[data-game] .card-pile,[data-game] .foundation,[data-game] .stock-pile,[data-game] .waste-pile,[data-game] .freecell-pile,[data-game] .tableau-pile{width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius)}[data-game] .pile-count{position:absolute;bottom:5px;right:5px;background:#000000b3;color:#fff;padding:2px 6px;border-radius:3px;font-size:.8rem;font-weight:700;pointer-events:none}[data-game] .foundation-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#ffffff4d;font-size:1.5rem;font-weight:700;pointer-events:none}[data-game] .tableau-pile,[data-game] .card-pile.tableau-pile{height:auto;min-height:var(--card-height)}[data-game] .tableau-piles,[data-game] .top-piles{gap:var(--game-gap, .5rem)}[data-game=klondike]{--game-tableau-columns: 7;--game-foundation-count: 4}[data-game=spider]{--game-tableau-columns: 10;--game-foundation-count: 8;--game-has-waste: 0}[data-game=freecell],[data-game=bakersgame]{--game-tableau-columns: 8;--game-foundation-count: 4;--game-has-cells: 4;--game-has-stock: 0;--game-has-waste: 0}[data-game=yukon],[data-game=russian]{--game-tableau-columns: 7;--game-has-stock: 0;--game-has-waste: 0}[data-game=golf]{--game-tableau-columns: 7;--game-foundation-count: 1;--game-has-waste: 0}[data-game=tripeaks]{--game-tableau-columns: 10;--game-foundation-count: 1;--game-has-waste: 0}[data-game=pyramid]{--game-tableau-columns: 7;--game-foundation-count: 1}[data-game=fortythieves]{--game-tableau-columns: 10;--game-foundation-count: 8}[data-game=bakersdozen]{--game-tableau-columns: 13;--game-has-stock: 0;--game-has-waste: 0}[data-game=canfield]{--game-tableau-columns: 4}[data-game=scorpion]{--game-tableau-columns: 7;--game-has-waste: 0}[data-game=gaps]{--game-tableau-columns: 13;--game-has-stock: 0;--game-has-waste: 0;--game-foundation-count: 0;--game-card-overlap: 0}[data-game=accordion]{--game-tableau-columns: 13;--game-has-stock: 0;--game-has-waste: 0;--game-foundation-count: 0}[data-game=spider] .spider-game-container{display:flex;flex-direction:column;width:100%;gap:var(--game-gap, .5rem)}[data-game=spider] .spider-top-row{display:flex;justify-content:flex-start;gap:var(--game-gap, .5rem);align-items:flex-start;width:100%;margin-bottom:var(--game-gap, .5rem)}[data-game=spider] .spider-stock{position:relative;flex-shrink:0;min-width:var(--card-width);width:calc(var(--card-width) * 1.25);height:var(--card-height)}[data-game=spider] .spider-stock .stock-card{position:absolute;top:0;width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius);box-shadow:0 2px 4px #0003}[data-game=spider] .spider-stock .stock-card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;border-radius:var(--card-border-radius)}[data-game=spider] .spider-foundations{display:flex;gap:calc(var(--game-gap) / 2);flex-shrink:0}[data-game=spider] .spider-foundation{width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius);position:relative;flex-shrink:0}[data-game=spider] .spider-tableau{display:flex;gap:var(--game-gap);width:100%}[data-game=spider] .spider-tableau .tableau-pile{min-height:var(--card-height);position:relative}@media(max-width:767px){[data-game=spider] .spider-top-row{gap:calc(var(--game-gap) / 2)}[data-game=spider] .spider-stock{flex-shrink:1;min-width:var(--card-width)}[data-game=spider] .spider-foundations{gap:calc(var(--game-gap) / 3)}[data-game=spider] .spider-tableau{gap:var(--game-gap, .5rem);justify-content:flex-start;padding:0 .2rem}}.top-piles{display:flex;gap:1rem;margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=klondike] .top-piles,[data-game=australianpatience] .top-piles{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=klondike] .top-piles .stock-pile,[data-game=australianpatience] .top-piles .stock-pile{grid-column:1}[data-game=klondike] .top-piles .waste-pile,[data-game=australianpatience] .top-piles .waste-pile{grid-column:2}[data-game=klondike] .top-piles #foundation-0,[data-game=australianpatience] .top-piles #foundation-0{grid-column:4}[data-game=klondike] .top-piles #foundation-1,[data-game=australianpatience] .top-piles #foundation-1{grid-column:5}[data-game=klondike] .top-piles #foundation-2,[data-game=australianpatience] .top-piles #foundation-2{grid-column:6}[data-game=klondike] .top-piles #foundation-3,[data-game=australianpatience] .top-piles #foundation-3{grid-column:7}[data-game=yukon] .top-piles,[data-game=russian] .top-piles{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=yukon] .top-piles #foundation-0,[data-game=russian] .top-piles #foundation-0{grid-column:4}[data-game=yukon] .top-piles #foundation-1,[data-game=russian] .top-piles #foundation-1{grid-column:5}[data-game=yukon] .top-piles #foundation-2,[data-game=russian] .top-piles #foundation-2{grid-column:6}[data-game=yukon] .top-piles #foundation-3,[data-game=russian] .top-piles #foundation-3{grid-column:7}[data-game=easthaven] .top-piles{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=easthaven] .top-piles .stock-pile{grid-column:1}[data-game=easthaven] .top-piles #foundation-0{grid-column:4}[data-game=easthaven] .top-piles #foundation-1{grid-column:5}[data-game=easthaven] .top-piles #foundation-2{grid-column:6}[data-game=easthaven] .top-piles #foundation-3{grid-column:7}[data-game=canfield] .top-piles{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=canfield] .top-piles .reserve-pile{grid-column:1}[data-game=canfield] .top-piles .stock-pile{grid-column:2}[data-game=canfield] .top-piles .waste-pile{grid-column:3 / 5;width:100%}[data-game=canfield] .top-piles #foundation-0{grid-column:5}[data-game=canfield] .top-piles #foundation-1{grid-column:6}[data-game=canfield] .top-piles #foundation-2{grid-column:7}[data-game=canfield] .top-piles #foundation-3{grid-column:8}[data-game=canfield] .reserve-pile{width:var(--card-width, 100px);height:var(--card-height, 135px);border:2px dashed rgba(150,100,200,.5);border-radius:var(--card-border-radius, 8px);position:relative;background:#64329626}[data-game=canfield] .reserve-pile.empty{background-color:#6432961a}[data-game=freecell] .top-piles{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=freecell] .top-piles #freecell-0{grid-column:1}[data-game=freecell] .top-piles #freecell-1{grid-column:2}[data-game=freecell] .top-piles #freecell-2{grid-column:3}[data-game=freecell] .top-piles #freecell-3{grid-column:4}[data-game=freecell] .top-piles #foundation-0{grid-column:5}[data-game=freecell] .top-piles #foundation-1{grid-column:6}[data-game=freecell] .top-piles #foundation-2{grid-column:7}[data-game=freecell] .top-piles #foundation-3{grid-column:8}[data-game=doubleklondike] .top-piles{display:grid;grid-template-columns:repeat(11,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem);align-items:flex-start}[data-game=doubleklondike] .top-piles .stock-pile{grid-column:1;width:var(--card-width);height:var(--card-height)}[data-game=doubleklondike] .top-piles .waste-pile{grid-column:2 / 4;width:100%;height:var(--card-height);position:relative}[data-game=doubleklondike] .top-piles .foundation{width:calc(var(--card-width) * .75);height:calc(var(--card-height) * .75)}[data-game=doubleklondike] .top-piles #foundation-0{grid-column:4}[data-game=doubleklondike] .top-piles #foundation-1{grid-column:5}[data-game=doubleklondike] .top-piles #foundation-2{grid-column:6}[data-game=doubleklondike] .top-piles #foundation-3{grid-column:7}[data-game=doubleklondike] .top-piles #foundation-4{grid-column:8}[data-game=doubleklondike] .top-piles #foundation-5{grid-column:9}[data-game=doubleklondike] .top-piles #foundation-6{grid-column:10}[data-game=doubleklondike] .top-piles #foundation-7{grid-column:11}[data-game=doubleklondike] .top-piles .foundation .card{width:100%!important;height:100%!important;left:0!important;top:0!important}[data-game=doubleklondike] .top-piles .foundation .card img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}[data-game=doubleklondike] .top-piles .foundation.empty:before{width:calc(var(--card-width) * .75);height:calc(var(--card-height) * .75)}[data-game=fortythieves] .top-piles{display:grid;grid-template-columns:repeat(10,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=fortythieves] .top-piles .stock-pile{grid-column:1}[data-game=fortythieves] .top-piles .waste-pile{grid-column:2}[data-game=fortythieves] .top-piles #foundation-0{grid-column:3}[data-game=fortythieves] .top-piles #foundation-1{grid-column:4}[data-game=fortythieves] .top-piles #foundation-2{grid-column:5}[data-game=fortythieves] .top-piles #foundation-3{grid-column:6}[data-game=fortythieves] .top-piles #foundation-4{grid-column:7}[data-game=fortythieves] .top-piles #foundation-5{grid-column:8}[data-game=fortythieves] .top-piles #foundation-6{grid-column:9}[data-game=fortythieves] .top-piles #foundation-7{grid-column:10}[data-game=spider] .spider-top-row{display:grid;grid-template-columns:repeat(10,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem);align-items:end}[data-game=spider] .spider-top-row .spider-stock{grid-column:1 / 3}[data-game=spider] .spider-top-row .spider-foundations{grid-column:3 / 11;display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px)}[data-game=spiderette] .spiderette-top-row{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem);align-items:end}[data-game=spiderette] .spiderette-top-row .spiderette-stock{grid-column:1;position:relative;width:var(--card-width);height:var(--card-height)}[data-game=spiderette] .spiderette-stock .stock-card{position:absolute;top:0;left:0;width:var(--card-width);height:var(--card-height);box-shadow:0 2px 4px #0003}[data-game=spiderette] .spiderette-stock .stock-card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill}[data-game=spiderette] .spiderette-stock .stock-counter{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:12px;color:#666;white-space:nowrap}[data-game=spiderette] .spiderette-top-row .spiderette-foundations{grid-column:4 / 8;display:grid;grid-template-columns:repeat(4,var(--card-width));gap:var(--game-gap, 8px)}.tableau-piles{display:flex;gap:var(--game-gap, .5rem);flex:1;overflow:visible;justify-content:flex-start}.stock-pile,.waste-pile,.foundation{width:var(--card-width, 100px);height:var(--card-height, 135px);border-radius:var(--card-border-radius, 8px);position:relative}.freecell-pile{width:var(--card-width, 100px);height:var(--card-height, 135px);border:2px dashed rgba(255,255,255,.3);border-radius:var(--card-border-radius, 8px);position:relative}.freecell-pile.empty{background-color:#0000001a}.freecell-pile.empty:before{display:none}.freecell-pile:hover{border-color:#ffffff80;background-color:#ffffff0d}.golf-game-container{padding:1rem;overflow:visible;height:100%;max-height:var(--game-area-height, 100%);display:flex;flex-direction:column;gap:.5rem}.tripeaks-game-container{display:grid;grid-template-columns:var(--side-panel-width, auto) 1fr;grid-template-rows:1fr;gap:var(--game-gap, .5rem);padding:var(--game-gap, .5rem);height:100%;max-height:var(--game-area-height, 100%);overflow:visible;align-items:center}.tripeaks-left-panel{display:flex;flex-direction:column;gap:var(--game-gap, .5rem);align-items:center;justify-content:center;height:100%}.tripeaks-center{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:0;overflow:visible}.tripeaks-game-container .stock-pile,.tripeaks-game-container .waste-pile{width:var(--card-width, 80px);height:var(--card-height, 112px);border-radius:var(--card-border-radius, 6px);position:relative;flex-shrink:0}@media(max-width:600px){.tripeaks-game-container{display:flex;flex-direction:column;gap:var(--game-gap, .5rem)}.tripeaks-top-bar{display:flex;justify-content:center;align-items:center;gap:var(--game-gap, .5rem);flex-shrink:0;width:100%}.tripeaks-left-panel{display:none}.tripeaks-center{flex:1;min-height:0}}.pyramid-game-container{display:grid;grid-template-columns:var(--side-panel-width, auto) 1fr var(--side-panel-width, auto);grid-template-rows:1fr;gap:var(--game-gap, .5rem);padding:var(--game-gap, .5rem);height:100%;max-height:var(--game-area-height, 100%);overflow:visible;align-items:center}.pyramid-left-panel{display:flex;flex-direction:column;gap:var(--game-gap, .5rem);align-items:center;justify-content:center;height:100%}.pyramid-right-panel{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;padding-bottom:var(--game-gap, .5rem)}.pyramid-center{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:0;overflow:visible}.pyramid-game-container .stock-pile,.pyramid-game-container .waste-pile,.pyramid-game-container .foundation{width:var(--card-width, 80px);height:var(--card-height, 112px);border-radius:var(--card-border-radius, 6px);position:relative;flex-shrink:0}@media(max-width:600px){.pyramid-game-container{display:flex;flex-direction:column;gap:var(--game-gap, .5rem)}.pyramid-top-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--game-gap, .5rem);flex-shrink:0;width:100%}.pyramid-top-bar-left{display:flex;gap:var(--game-gap, .5rem)}.pyramid-left-panel,.pyramid-right-panel{display:none}.pyramid-center{flex:1;min-height:0}}.golf-top-area{display:flex;align-items:center;gap:2rem;padding:1rem;margin-bottom:1rem}.golf-stock-deck{position:relative;cursor:pointer;flex-shrink:0}.stock-visual-spread{position:relative;height:var(--card-height, 135px);display:flex;align-items:center}.game-area-golf .top-piles{position:relative;height:var(--card-height, 135px)}.game-area-golf .stock-pile{width:auto;flex-shrink:0;height:var(--card-height, 135px);position:relative}.game-area-golf .waste-pile{width:var(--card-width, 100px);height:var(--card-height, 135px)}.stock-card-spread{box-shadow:2px 2px 5px #0000004d;transition:transform .2s ease}@media(hover:hover)and (pointer:fine){.stock-card-spread:hover{transform:translateY(-5px)}}.pyramid-container,.tripeaks-peaks,.tripeaks-tableau{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:0}.pyramid-row{display:flex;justify-content:center;gap:.3rem;margin-bottom:.2rem}.card.selected{border:3px solid gold;box-shadow:0 0 15px #ffd700cc;transform:translateY(-5px);transition:all .2s ease}@media(max-width:768px){.pyramid-game-container,.tripeaks-game-container,.golf-game-container{padding:.5rem;gap:.25rem}.golf-top-area{gap:.5rem;padding:.5rem;margin-bottom:.5rem;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.golf-stock-deck{flex-shrink:0}.stock-visual-spread{min-width:0}.game-area-golf .waste-pile{flex-shrink:0;width:var(--card-width)!important;height:var(--card-height)!important}.pyramid-row{gap:.15rem;margin-bottom:.15rem}.pyramid-container,.tripeaks-peaks,.tripeaks-tableau{gap:.15rem}.pyramid-game-container .card,.tripeaks-game-container .card{width:var(--card-width);height:var(--card-height)}}.stock-pile{border:2px dashed rgba(255,255,255,.3);cursor:pointer}.waste-pile{border:2px dashed rgba(255,255,255,.3)}.tableau-pile{position:relative;min-height:200px}.card-pile.empty:before{content:"";position:absolute;top:0;left:0;width:var(--card-width, 100px);height:var(--card-height, 135px);border:2px dashed rgba(255,255,255,.3);border-radius:var(--card-border-radius, 6px);background:#ffffff0d}.foundation.empty:before{content:"";position:absolute;top:0;left:0;width:var(--card-width, 100px);height:var(--card-height, 135px);border:none;border-radius:var(--card-border-radius, 8px);background-image:url(/assets/Placeholder@1x-DWNesayk.webp);background-size:cover;background-position:center;background-repeat:no-repeat;filter:grayscale(100%) brightness(.6) opacity(.4);box-shadow:0 2px 4px #0000004d,inset 0 0 20px #0003;transition:all .3s ease}@media(min-resolution:144dpi){.foundation.empty:before{background-image:url(/assets/Placeholder@1.5x-BXklLBKi.webp)}}@media(min-resolution:240dpi){.foundation.empty:before{background-image:url(/assets/Placeholder@2x-CzlVC_hy.webp)}}.foundation.empty:hover:before{filter:grayscale(100%) brightness(.7) opacity(.5);box-shadow:0 3px 6px #0006,inset 0 0 20px #0000004d}.spider-foundation{width:var(--card-width, 70px);height:var(--card-height, 95px);border-radius:var(--card-border-radius, 8px);position:relative;flex-shrink:0}.spider-foundation .card{width:100%;height:100%}.spider-foundation.empty:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:var(--card-border-radius, 8px);background-image:url(/assets/Placeholder@1x-DWNesayk.webp);background-size:cover;background-position:center;background-repeat:no-repeat;filter:grayscale(100%) brightness(.6) opacity(.4);box-shadow:0 2px 4px #0000004d,inset 0 0 20px #0003;transition:all .3s ease}@media(min-resolution:144dpi){.spider-foundation.empty:before{background-image:url(/assets/Placeholder@1.5x-BXklLBKi.webp)}}.mobile-stats-toggle{display:none!important;visibility:hidden;position:fixed;bottom:1rem;right:1rem;width:60px;height:60px;border-radius:50%;background:linear-gradient(to bottom,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%);color:#fff;border:3px solid rgba(255,255,255,.3);font-size:1.8rem;cursor:pointer;z-index:1000;box-shadow:0 4px 12px #0006;transition:all .2s ease}.mobile-stats-toggle:hover{background:linear-gradient(to bottom,var(--btn-primary-hover-start) 0%,var(--btn-primary-hover-end) 100%);transform:scale(1.05)}.mobile-stats-toggle:active{transform:scale(.95)}.stats-close-btn{display:none;position:absolute;top:.5rem;right:.5rem;width:30px;height:30px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:1.2rem;cursor:pointer;z-index:10;transition:all .2s ease}.stats-close-btn:hover{background:#ffffff4d}.game-controls-mobile{display:none;gap:.5rem;margin-bottom:1rem}.control-btn-mobile{flex:1;padding:.7rem 1rem;background:linear-gradient(to bottom,#f0f0f0,#d0d0d0);color:#000;border:2px outset #d0d0d0;border-radius:3px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .1s ease}.control-btn-mobile:hover{background:linear-gradient(to bottom,#f8f8f8,#e0e0e0)}.control-btn-mobile:active{border:2px inset #d0d0d0;background:linear-gradient(to bottom,silver,#e0e0e0)}.control-btn-mobile.primary{background:linear-gradient(to bottom,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%);color:#fff;border:2px solid rgba(255,255,255,.3)}.control-btn-mobile.primary:hover{background:linear-gradient(to bottom,var(--btn-primary-hover-start) 0%,var(--btn-primary-hover-end) 100%)}.game-area-fortythieves .stock-pile.empty:before,.game-area-fortythieves .waste-pile.empty:before{display:none}.game-area-pyramid .waste-pile.empty:before,.game-area-pyramid .stock-pile.empty:before{display:none}.game-2048{max-width:500px;width:100%;margin:0 auto;padding:15px;font-family:Arial,sans-serif;background:#fffffff2;border-radius:12px;box-shadow:0 4px 20px #00000026;transform-origin:center;max-height:95vh;overflow:auto;position:relative}.game-2048-header{display:flex;justify-content:center;align-items:center;margin-bottom:20px}.game-2048-header h2{font-size:1.5rem;font-weight:700;color:#776e65;margin:0 0 10px}.game-2048-layout{display:flex;gap:15px;align-items:flex-start;margin-bottom:10px}.game-2048-scores{display:flex;flex-direction:column;gap:10px;flex-shrink:0}.score-box{background:#bbada0;padding:8px 15px;border-radius:3px;text-align:center;min-width:70px}.score-label{color:#eee4da;font-size:.7rem;font-weight:700;text-transform:uppercase}.score-value{color:#fff;font-size:1.2rem;font-weight:700;margin-top:3px}.rescue-row-info{background:#ffeaa7;border:2px solid #fdcb6e;border-radius:8px;padding:12px 16px;margin-bottom:20px;display:flex;align-items:center;gap:12px;animation:pulse 2s ease-in-out infinite}.rescue-row-info.rescue-available{background:#55efc4;border-color:#00b894;animation:pulse-green 1s ease-in-out infinite}.rescue-icon{font-size:1.5rem}.rescue-text{font-size:.95rem;font-weight:600;color:#2d3436}.rescue-btn{background:#00b894;color:#fff;border:none;padding:8px 20px;border-radius:6px;font-weight:700;cursor:pointer;font-size:1rem;transition:all .3s ease}.rescue-btn:hover{background:#00a383;transform:scale(1.05)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.game-2048-container{position:relative;background:#9a8c7e;border-radius:8px;padding:8px;width:100%;max-width:380px;flex-shrink:0;box-shadow:0 4px 12px #00000026}.grid-2048{display:grid;gap:10px;background:#9a8c7e;border-radius:8px;position:relative;aspect-ratio:1;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-2048.grid-4{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr)}.grid-2048.grid-6{grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr)}.grid-cell{background:#eee4da80;border-radius:8px;aspect-ratio:1}.tile{position:absolute;display:flex;justify-content:center;align-items:center;font-weight:700;border-radius:8px;color:#776e65;transition:all .1s cubic-bezier(.25,.46,.45,.94);will-change:transform;overflow:hidden;word-break:keep-all;white-space:nowrap;padding:2px;box-sizing:border-box}.grid-4 .tile{width:calc((100% - 30px)/4);height:calc((100% - 30px)/4);font-size:2.5rem}.grid-6 .tile{width:calc((100% - 50px) / 6);height:calc((100% - 50px) / 6);font-size:1.6rem}.tile-new{animation:appear .2s ease}.tile-merged{animation:merge .2s ease}.tile-bounce-left{animation:bounceLeft .3s ease-out}.tile-bounce-right{animation:bounceRight .3s ease-out}.tile-bounce-up{animation:bounceUp .3s ease-out}.tile-bounce-down{animation:bounceDown .3s ease-out}@keyframes appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes merge{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes bounceLeft{0%{transform:translate(0)}40%{transform:translate(-8px)}to{transform:translate(0)}}@keyframes bounceRight{0%{transform:translate(0)}40%{transform:translate(8px)}to{transform:translate(0)}}@keyframes bounceUp{0%{transform:translateY(0)}40%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes bounceDown{0%{transform:translateY(0)}40%{transform:translateY(8px)}to{transform:translateY(0)}}.tile-2{background:#eee4da;color:#776e65;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 2px 4px #0000001a}.tile-4{background:#ede0c8;color:#776e65;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 2px 4px #0000001a}.tile-8{background:#ff8c42;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 6px #00000026}.tile-16{background:#ff6b1a;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2);box-shadow:0 2px 6px #00000026}.tile-32{background:#ff6b35;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.25);box-shadow:0 2px 6px #0003}.tile-64{background:#ff5722;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.25);box-shadow:0 2px 6px #0003}.tile-128{background:gold;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);box-shadow:0 2px 8px #0003}.tile-256{background:#fc0;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3);box-shadow:0 2px 8px #0003}.tile-512{background:#ffb300;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.35);box-shadow:0 2px 8px #00000040}.tile-1024{background:#f70;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.35);box-shadow:0 2px 8px #00000040}.tile-2048{background:#f50;color:#fff;font-weight:700;box-shadow:0 0 40px #f50c,0 4px 8px #0000004d;text-shadow:0 2px 6px rgba(0,0,0,.4)}.tile-4096{background:#8b0000;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5);box-shadow:0 2px 8px #0000004d}.tile-8192{background:#5a0000;color:#fff;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.5);box-shadow:0 2px 8px #0000004d}.grid-4 .tile-128,.grid-4 .tile-256,.grid-4 .tile-512{font-size:2rem}.grid-4 .tile-1024,.grid-4 .tile-2048{font-size:1.8rem}.grid-4 .tile-4096,.grid-4 .tile-8192{font-size:1.5rem}.grid-6 .tile-128,.grid-6 .tile-256,.grid-6 .tile-512{font-size:1.3rem}.grid-6 .tile-1024,.grid-6 .tile-2048,.grid-6 .tile-3072{font-size:1.1rem}.grid-6 .tile-4096,.grid-6 .tile-8192{font-size:1rem}.tile-3072{background:#c00;color:#fff;font-weight:700;box-shadow:0 0 40px #c00c,0 4px 8px #00000059;text-shadow:0 2px 6px rgba(0,0,0,.4)}.mode-change-modal{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:400px;text-align:center;box-shadow:0 10px 40px #0000004d}.modal-content h3{font-size:1.5rem;color:#776e65;margin:0 0 15px}.modal-content p{font-size:1rem;color:#776e65;margin:0 0 25px;line-height:1.5}.modal-buttons{display:flex;gap:15px;justify-content:center}.modal-btn{padding:12px 25px;border:none;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease}.cancel-btn{background:#d3cdc4;color:#776e65}.cancel-btn:hover{background:#c3bdb4}.confirm-btn{background:#8f7a66;color:#fff}.confirm-btn:hover{background:#9f8a76}.celebration-overlay{position:fixed;inset:0;pointer-events:none;z-index:1000;overflow:hidden}.celebration-message{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);text-align:center;animation:celebrationBounce .6s ease-out}.celebration-title{font-size:3rem;font-weight:700;color:#edc22e;text-shadow:3px 3px 6px rgba(0,0,0,.3);margin-bottom:10px}.celebration-subtitle{font-size:1.5rem;font-weight:700;color:#776e65;text-shadow:2px 2px 4px rgba(255,255,255,.8)}@keyframes celebrationBounce{0%{transform:translate(-50%,-50%) scale(0);opacity:0}50%{transform:translate(-50%,-50%) scale(1.2)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.confetti{position:absolute;top:-10px;width:10px;height:10px;border-radius:50%;animation:confettiFall linear forwards}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.game-overlay{position:absolute;inset:0;background:#eee4dae6;border-radius:10px;display:flex;justify-content:center;align-items:center;z-index:100}.overlay-content{text-align:center;padding:30px}.overlay-content h2{font-size:2.5rem;color:#776e65;margin-bottom:20px}.overlay-content p{font-size:1.2rem;color:#776e65;margin-bottom:30px}.overlay-content button{background:#8f7a66;color:#fff;border:none;padding:12px 30px;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;margin:0 10px;transition:all .3s ease}.overlay-content button:hover{background:#9f8a76;transform:translateY(-2px)}.continue-btn{background:#6c9f3d!important}.continue-btn:hover{background:#7caf4d!important}.game-2048-modes{display:flex;gap:10px;margin-top:10px;margin-bottom:20px;justify-content:center}.mode-tile{background:#eee4da;border:none;border-radius:3px;text-align:center;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;color:#776e65;font-weight:700;width:58px;height:58px;flex-shrink:0;position:relative}.mode-tile:hover{transform:scale(1.05)}.mode-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:#000000e6;color:#fff;padding:8px 12px;border-radius:6px;font-size:.75rem;font-weight:400;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:100}.mode-tile:hover .mode-tooltip,.mode-tile.show-tooltip .mode-tooltip{opacity:1}@media(max-width:1024px){.mode-tile.show-tooltip .mode-tooltip{opacity:1;pointer-events:auto}}.mode-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#000000e6}.mode-tile.active{background:#8f7a66;color:#f9f6f2;box-shadow:0 0 15px #8f7a6666}.mode-icon{font-size:1.5rem;line-height:1}.mode-name{font-size:.5rem;font-weight:700;margin:0}.mode-description{display:none}.game-2048-instructions{background:#f9f6f299;padding:12px;border-radius:8px;color:#776e65;font-size:.8rem;line-height:1.5}.game-2048-instructions p{margin:0 0 8px}.game-2048-instructions p:last-child{margin-bottom:0}.game-2048-instructions strong{color:#8f7a66}.arrow-keys-inline{display:inline-flex;gap:2px;align-items:center;margin-left:2px}.arrow-key-mini{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#8f7a66;color:#fff;border-radius:3px;font-size:.7rem;font-weight:700;box-shadow:0 1px #766558}@media(max-width:1024px){.game-2048{max-width:100%;min-height:100vh;border-radius:0;padding:10px;display:flex;flex-direction:column;justify-content:center}.game-2048-container{max-width:min(90vw,400px);margin:0 auto}.game-2048-layout{flex-direction:column;align-items:center;gap:10px}.game-2048-scores{flex-direction:row;gap:15px}.game-2048-instructions{display:none}body:has(.game-2048) #game-content{display:none}body:has(.game-2048) .site-footer{display:none}body:has(.game-2048) .game-info-overlay{display:none}body:has(.game-2048) #game-area{overflow:hidden!important;height:100vh;padding:0;touch-action:none}body:has(.game-2048) .game-container{overflow:hidden!important;height:100vh;touch-action:none}body:has(.game-2048){overflow:hidden!important;height:100vh;touch-action:none;position:fixed;width:100%}}@media(max-width:1024px)and (min-width:769px){.game-2048-container{max-width:min(70vw,380px)}.grid-4 .tile{font-size:2.7rem}.grid-4 .tile-128,.grid-4 .tile-256,.grid-4 .tile-512{font-size:2.25rem}.grid-4 .tile-1024,.grid-4 .tile-2048{font-size:1.95rem}.grid-4 .tile-4096,.grid-4 .tile-8192{font-size:1.5rem}.grid-6 .tile{font-size:1.8rem}.grid-6 .tile-128,.grid-6 .tile-256,.grid-6 .tile-512{font-size:1.5rem}.grid-6 .tile-1024,.grid-6 .tile-2048,.grid-6 .tile-3072{font-size:1.28rem}.grid-6 .tile-4096,.grid-6 .tile-8192{font-size:1.13rem}.mode-tile{width:50px;height:50px}.game-2048-header h2{font-size:1.3rem}}@media(max-width:768px)and (min-width:481px){.game-2048-container{max-width:min(75vw,350px)}.grid-4 .tile{font-size:2.55rem}.grid-4 .tile-128,.grid-4 .tile-256,.grid-4 .tile-512{font-size:2.1rem}.grid-4 .tile-1024,.grid-4 .tile-2048{font-size:1.8rem}.grid-4 .tile-4096,.grid-4 .tile-8192{font-size:1.35rem}.grid-6 .tile{font-size:1.65rem}.grid-6 .tile-128,.grid-6 .tile-256,.grid-6 .tile-512{font-size:1.43rem}.grid-6 .tile-1024,.grid-6 .tile-2048,.grid-6 .tile-3072{font-size:1.28rem}.grid-6 .tile-4096,.grid-6 .tile-8192{font-size:1.13rem}}@media(max-width:768px){.game-2048{max-width:100%;padding:10px;margin-bottom:20px}.game-2048-header h2{font-size:1.5rem}.game-2048-layout{flex-direction:column;gap:15px}.game-2048-scores{flex-direction:row;justify-content:center;width:100%}.score-box{padding:8px 15px;min-width:70px}.score-label{font-size:.7rem}.score-value{font-size:1.2rem}.overlay-content h2{font-size:2rem}.overlay-content p{font-size:1rem}.overlay-content button{padding:10px 20px;font-size:.9rem;margin:5px}.game-2048-instructions{font-size:.85rem}.mode-tile{width:50px;height:50px}.mode-icon{font-size:1.3rem}.mode-name{font-size:.45rem}}@media(max-width:480px){.game-2048-header{flex-direction:column;gap:15px;align-items:flex-start}.game-2048-header h2{font-size:1.8rem}.grid-4 .tile{font-size:2.4rem}.grid-4 .tile-128,.grid-4 .tile-256,.grid-4 .tile-512{font-size:1.95rem}.grid-4 .tile-1024,.grid-4 .tile-2048{font-size:1.65rem}.grid-4 .tile-4096,.grid-4 .tile-8192{font-size:1.3rem}.grid-6 .tile{font-size:1.5rem}.grid-6 .tile-128,.grid-6 .tile-256,.grid-6 .tile-512{font-size:1.28rem}.grid-6 .tile-1024,.grid-6 .tile-2048,.grid-6 .tile-3072{font-size:1.13rem}.grid-6 .tile-4096,.grid-6 .tile-8192{font-size:1.05rem}}.mahjong-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}.mahjong-board{position:relative;width:1300px;height:900px;margin:0 auto}.mahjong-tile{position:absolute;width:66px;height:88px;cursor:pointer;transition:opacity .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mahjong-tile img{width:100%;height:100%;display:block;pointer-events:none}.mahjong-tile:hover img{filter:brightness(1.15)}.mahjong-tile.selected{transform:translateY(-6px) scale(1.05);z-index:10001!important}.mahjong-tile.selected img{filter:drop-shadow(0 0 8px rgba(255,215,0,.8)) drop-shadow(2px 2px 4px rgba(0,0,0,.3))}.mahjong-tile.hint{animation:hint-pulse .6s ease-in-out infinite}@keyframes hint-pulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.05)}}.mahjong-tile.hint img{filter:drop-shadow(0 0 12px rgba(255,255,0,.9)) drop-shadow(2px 2px 4px rgba(0,0,0,.3))}.mahjong-tile.blocked{cursor:not-allowed}.mahjong-tile.blocked img{filter:brightness(.5) saturate(.3) drop-shadow(2px 2px 4px rgba(0,0,0,.3))}.mahjong-tile.matched{opacity:0;transform:scale(.8);pointer-events:none}@media(max-width:768px){.mahjong-board{width:480px;height:400px;transform:scale(.8);transform-origin:center}.mahjong-tile{width:40px;height:54px}}@media(max-width:600px){.mahjong-board{width:400px;height:350px;transform:scale(.65)}.mahjong-tile{width:36px;height:48px}}@media(max-width:480px){.mahjong-container{padding:10px}.mahjong-board{width:350px;height:300px;transform:scale(.55)}.mahjong-tile{width:32px;height:44px}}.mahjong-layout-selector{display:flex;justify-content:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}.mahjong-layout-btn{padding:8px 16px;background:var(--button-bg);color:var(--button-text);border:2px solid var(--button-border);border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease}.mahjong-layout-btn:hover{background:var(--button-hover-bg);transform:translateY(-2px)}.mahjong-layout-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.mahjong-theme-selector{display:flex;justify-content:center;gap:8px;margin:10px 0;flex-wrap:wrap}.mahjong-theme-btn{width:40px;height:40px;border:3px solid transparent;border-radius:4px;cursor:pointer;transition:all .2s ease;background-size:cover;background-position:center}.mahjong-theme-btn.active{border-color:var(--primary-color);transform:scale(1.1);box-shadow:0 0 10px rgba(var(--primary-color-rgb),.5)}.mahjong-theme-btn:hover{transform:scale(1.05)}.top-menu{background:linear-gradient(to bottom,var(--nav-gradient-start) 0%,var(--nav-gradient-end) 100%);border-bottom:3px solid var(--nav-border);padding:.15rem .6rem;box-shadow:0 2px 6px #0006;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000;transition:background .3s ease,border-color .3s ease}.logo{font-size:1.1rem;font-weight:700;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);display:flex;align-items:center;gap:.4rem;flex:1;min-width:0}#game-name-display{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0}#logo-link{min-width:0;flex-shrink:1;overflow:hidden}.menu-items{list-style:none;display:flex;gap:.3rem}.hamburger-menu{display:none;flex-direction:column;justify-content:space-between;width:30px;height:22px;background:transparent;border:none;cursor:pointer;padding:0;margin-right:1rem;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;position:relative;z-index:1001}.hamburger-menu span{display:block;width:100%;height:3px;background:#fff;border-radius:2px;transition:all .3s ease;pointer-events:none}.hamburger-menu.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger-menu.active span:nth-child(2){opacity:0}.hamburger-menu.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.quick-nav-links{display:flex;align-items:center;gap:.75rem;margin-left:auto;margin-right:1rem;flex:1;justify-content:flex-end;flex-wrap:nowrap}.quick-nav-separator{color:#ffffff4d;font-size:1.2rem;font-weight:300}.quick-nav-link{color:#ffffffd9!important;text-decoration:none!important;font-size:.8rem;font-weight:600;padding:.2rem 0;transition:color .2s ease;border-bottom:1px solid transparent;white-space:nowrap}.quick-nav-link:visited{color:#ffffffd9!important}.quick-nav-link:hover{color:#fff!important;border-bottom-color:#ffffff80}.quick-nav-link.all-games-link{color:#ffffffe6!important;font-weight:500}.quick-nav-link.all-games-link:visited{color:#ffffffe6!important}.quick-nav-link.all-games-link:hover{color:#fff!important;border-bottom-color:#ffffff80}.quick-nav-link.random-game-link{color:#ffffffe6!important;font-weight:600;display:inline-flex;align-items:center;gap:.35rem}.quick-nav-link.random-game-link:visited{color:#ffffffe6!important}.quick-nav-link.random-game-link:hover{color:#fff!important;border-bottom-color:#ffffff80}.quick-nav-link.random-game-link i{font-size:.85rem}@media(min-width:1025px){.logo{flex:1;display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;min-width:0}}.settings-btn{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--color-text-light, white);border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:.5rem .75rem;margin-left:.5rem;margin-right:.5rem;cursor:pointer;transition:background .2s,border-color .2s,transform .1s;font-size:1rem}.settings-btn:hover{background:#ffffff1a;border-color:#ffffff80;transform:scale(1.05)}.settings-btn:active{transform:scale(.95)}.settings-btn i{font-size:1.1rem}@media(max-width:1024px){.quick-nav-links{display:none}}.global-menu{position:fixed;top:0;left:-100%;width:280px;height:100vh;background:linear-gradient(to bottom,var(--nav-gradient-start) 0%,var(--nav-gradient-end) 100%);box-shadow:2px 0 10px #00000080;z-index:10000;transition:left .3s ease,background .3s ease;overflow-y:auto;padding:20px}.global-menu.active{left:0}.global-menu-overlay{position:fixed;inset:0;background:#0009;z-index:9999;display:none}.global-menu-overlay.active{display:block}.global-menu h3{color:#fff;font-size:1.5rem;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid rgba(255,255,255,.3);text-shadow:2px 2px 4px rgba(0,0,0,.5)}.global-menu-item{padding:12px 0;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.1);transition:all .2s ease;-webkit-tap-highlight-color:rgba(144,238,144,.3);touch-action:manipulation}.global-menu-item:hover,.global-menu-item:active{color:var(--color-success-light, #90EE90);padding-left:10px;background:#ffffff1a}.global-menu-subitem{padding:10px 0 10px 20px;color:#fffc;font-size:.95rem;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation}.global-menu-subitem:hover,.global-menu-subitem:active{color:#fff;padding-left:30px;background:#ffffff0d}.global-menu-separator{height:1px;background:#fff3;margin:1rem 0}.random-game-menu-item{font-weight:600;color:#fffffff2}.random-game-menu-item i{margin-right:.5rem;font-size:1.1rem}.random-game-menu-item:hover{color:#fff}.all-games-link{display:block;text-decoration:none;color:var(--color-success-light, #90EE90);font-weight:700;white-space:nowrap}.all-games-link:hover{color:var(--color-success-lighter, #7FFF7F);padding-left:10px;background:#ffffff1a}@media(max-width:1024px){.hamburger-menu{display:flex}.game-selector{display:none}.new-game-buttons{display:none!important}.logo{flex:1;justify-content:center}}.menu-btn{padding:.4rem 1rem;border:2px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;border-radius:4px;transition:all .2s ease;position:relative}.menu-btn:hover{background:#fff3;border-color:#ffffff80}.menu-btn.active{background:#ffffff40;border-color:#fff9;box-shadow:inset 0 2px 4px #0000004d}.mobile-menu-header{display:flex;gap:.5rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1);align-items:center}.mobile-menu-header #mobile-language-switcher-container{flex:1;padding:0}.mobile-menu-header .settings-btn{flex-shrink:0}#game-area:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at center,rgba(255,255,255,.05) 0%,transparent 50%),radial-gradient(ellipse at center,transparent 35%,rgba(0,0,0,.2) 100%);pointer-events:none;z-index:0}.game-container{max-width:100%;height:calc(100vh - var(--chrome-nav-height, 45px));margin:0;padding:0;display:flex;flex-direction:row;overflow:hidden}.game-zone{flex:1;min-width:0;display:flex;flex-direction:column;position:relative;overflow:hidden}#game-area{flex:1;background:linear-gradient(45deg,var(--tableau-pattern) 25%,transparent 25%),linear-gradient(-45deg,var(--tableau-pattern) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tableau-pattern) 75%),linear-gradient(-45deg,transparent 75%,var(--tableau-pattern) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;background-color:var(--bg-primary);border-right:3px ridge #808080;padding:1rem;overflow:hidden;box-shadow:inset 0 0 30px #0000004d;display:flex;flex-direction:column;transition:background .3s ease;position:relative}.stats-sidebar[style*="display: none"]~#game-area,.game-container:has(.stats-sidebar[style*="display: none"]) #game-area{width:100%;border-right:none}body[data-theme=light] #game-area,body[data-theme=light] .stats-sidebar{background:var(--bg-primary);background-image:none}#game-area:has(.game-2048){align-items:center;justify-content:center;overflow:hidden}.game-info-overlay{position:absolute;bottom:1rem;left:0;width:var(--game-content-width);display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;z-index:1500;pointer-events:auto;background:transparent}.info-item{background:transparent;border:none;border-radius:4px;padding:.4rem .7rem;display:flex;align-items:center;gap:.3rem;font-size:.95rem;color:var(--overlay-text)}.time-item{padding:.5rem .8rem;font-weight:600;font-size:1.1rem}.info-sublabel{font-size:.7rem;color:var(--overlay-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.hint-btn{padding:.4rem .5rem;background:transparent;border-radius:6px;transition:all .2s ease;color:var(--overlay-text)}.hint-btn:hover:not(:disabled){background:#ffffff1a;color:gold}.hint-btn i{font-size:1.3rem;transition:color .2s ease}.info-item.undo-btn-overlay{background:gold;color:#000;padding:.4rem .7rem;border-radius:6px;font-weight:600;font-size:.85rem;box-shadow:0 2px 4px #0000004d}.info-item.undo-btn-overlay:hover:not(:disabled){background:#ffed4e;box-shadow:0 3px 6px #0006}.info-item.undo-btn-overlay .btn-icon{display:none}.info-item.undo-btn-overlay:disabled{opacity:.4;cursor:not-allowed}.points-label{color:var(--overlay-text)}.settings-btn-overlay svg,.bookmark-btn svg{fill:var(--overlay-text);transition:fill .2s ease}.info-item.fullscreen-btn{padding:.4rem .5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.info-item.fullscreen-btn i{display:inline-block;font-size:1.3rem;color:var(--overlay-text);transition:color .2s ease}.info-item.fullscreen-btn:hover i{color:gold}.info-label{color:var(--overlay-text-muted);font-size:.85rem;font-weight:500}.info-value{color:var(--overlay-text);font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;text-shadow:2px 2px 4px rgba(0,0,0,.8);min-width:3ch}.new-game-buttons{display:flex;gap:.5rem;margin:0;flex-shrink:0}.game-select-dropdown{padding:.5rem 1rem;background:linear-gradient(to bottom,var(--btn-secondary-start) 0%,var(--btn-secondary-end) 100%);color:var(--overlay-text);border:2px solid rgba(255,255,255,.3);border-radius:6px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s ease}.game-dropdown .dropdown-trigger{padding:.3rem .65rem;background:#ffffff26;color:var(--overlay-text);border:1px solid rgba(255,255,255,.15);border-radius:6px;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .15s ease;white-space:nowrap;display:flex;align-items:center;gap:.4rem}.game-dropdown .dropdown-trigger:hover{background:#ffffff38;border-color:#ffffff40}.game-dropdown .dropdown-trigger i{font-size:.7rem;transition:transform .2s ease}.game-dropdown .dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);border:2px solid rgba(255,255,255,.3);border-radius:6px;box-shadow:0 8px 16px #0006;z-index:1000;min-width:200px;display:none}.game-dropdown .dropdown-menu.show{display:block}.game-dropdown .dropdown-option{width:100%;background:transparent;color:var(--overlay-text);border:none;padding:.6rem .8rem;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:500;transition:background .2s ease}.game-dropdown .dropdown-option:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.game-dropdown .dropdown-option:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.game-dropdown .dropdown-option:hover{background:#ffffff1a}.game-dropdown .dropdown-option.active{background:#ffffff26;font-weight:600}.game-dropdown .dropdown-option i.fa-check{color:#4caf50;font-size:.75rem;width:14px}.segmented-control .new-game-btn{padding:.3rem .65rem;font-size:.75rem;border:none;background:transparent;color:var(--overlay-text-muted);border-radius:4px;transition:all .15s ease}.segmented-control .new-game-btn:hover{background:#ffffff14;color:var(--overlay-text)}.segmented-control .new-game-btn.active{background:#fff3;color:var(--overlay-text);font-weight:600}.new-game-btn{padding:.3rem .65rem;background:#ffffff26;color:var(--overlay-text);border:1px solid rgba(255,255,255,.15);border-radius:6px;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}#top-scores-container{margin-bottom:1.5rem}.scores-table{width:100%;border-collapse:collapse;background:#00000040;border:1px solid rgba(255,255,255,.15);border-radius:6px;overflow:hidden}.scores-table thead{background:#0006}.scores-table th{color:#fffc;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;padding:.6rem .4rem;text-align:center;font-weight:600;border-bottom:2px solid var(--stats-border)}.scores-table tbody tr{transition:background .2s ease}.scores-table tbody tr:hover{background:#00000059}.scores-table td{color:#fff;font-size:.85rem;padding:.7rem .4rem;text-align:center;font-weight:500;text-shadow:1px 1px 2px rgba(0,0,0,.5);border-bottom:1px solid rgba(255,255,255,.05)}.scores-table tbody tr:last-child td{border-bottom:none}.scores-table td.rank-cell{color:var(--stats-highlight);font-weight:700;width:2rem}.scores-table td.best{color:var(--stats-highlight);font-weight:700;font-size:.95rem}.games-summary{background:#0000004d;border:2px solid var(--stats-border);border-radius:8px;padding:1rem;margin-top:1.5rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.summary-item:last-child{border-bottom:none}.summary-label{color:#fff;font-size:.85rem;font-weight:500}.summary-value{color:var(--stats-highlight);font-size:1.1rem;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.7)}.stats-btn-overlay{display:flex;align-items:center;justify-content:center;background:transparent;color:var(--overlay-text);border:none;border-radius:6px;padding:.5rem .6rem;cursor:pointer;transition:all .2s ease;position:relative}.stats-btn-overlay:hover{background:#ffffff1a}.stats-btn-overlay:active{transform:scale(.95)}.stats-btn-overlay svg{display:block;fill:var(--overlay-text);transition:fill .2s ease}.stats-btn-overlay:hover svg{fill:gold}.stats-popup-mobile{display:none;position:absolute;bottom:100%;right:0;margin-bottom:.5rem;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);border-radius:12px;padding:1rem;box-shadow:0 8px 24px #0006;min-width:280px;max-width:90vw;z-index:10000;animation:slideUpFade .2s ease;transition:background .3s ease}.stats-popup-mobile.visible{display:block}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-popup-header{color:var(--stats-highlight);font-size:.9rem;font-weight:700;margin-bottom:.75rem;text-align:center;border-bottom:1px solid var(--stats-border);padding-bottom:.5rem}.stats-popup-scores{margin-bottom:.75rem}.stats-popup-scores table{width:100%;font-size:.75rem;color:#fff}.stats-popup-scores th{color:#ffffffb3;font-weight:500;padding:.25rem;text-align:center;font-size:.7rem}.stats-popup-scores td{padding:.4rem .25rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.05)}.stats-popup-scores td.best,.stats-popup-scores .rank-cell{color:var(--stats-highlight);font-weight:700}.stats-popup-summary{display:flex;justify-content:space-around;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1)}.stats-popup-summary-item{text-align:center}.stats-popup-summary-label{color:#ffffffb3;font-size:.7rem;display:block;margin-bottom:.25rem}.stats-popup-summary-value{color:var(--stats-highlight);font-size:1rem;font-weight:700}@media(max-width:1024px)and (min-width:768px){.stats-sidebar{position:fixed;top:0;right:-100%;width:320px;height:100vh;z-index:2000;transition:right .3s ease;display:flex!important;flex-direction:column}.stats-sidebar.visible{right:0}.mobile-stats-toggle,.stats-close-btn{display:block}.game-area{width:100%!important}.card{width:70px;height:98px;border-radius:4px}.stock-pile,.waste-pile,.foundation{width:70px;height:98px}.top-piles{gap:.4rem;margin-bottom:.8rem;padding:0 .5rem}.tableau-piles{gap:var(--game-gap, .5rem);padding:0 .5rem 4rem}[data-game=klondike] .top-piles,[data-game=australianpatience] .top-piles,[data-game=yukon] .top-piles,[data-game=russian] .top-piles{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);padding:0 .5rem}[data-game=freecell] .top-piles{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);padding:0 .5rem}[data-game=fortythieves] .top-piles,[data-game=spider] .spider-top-row{display:grid;grid-template-columns:repeat(10,var(--card-width));gap:var(--game-gap, 8px);padding:0 .5rem}}@media(max-width:767px){.top-menu{padding:.5rem;flex-wrap:nowrap;gap:.5rem}.logo{flex:1;min-width:0;display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.logo img{height:32px!important;flex-shrink:0}.game-selector{margin-right:0;flex:1;min-width:120px}.game-select-dropdown{padding:.4rem .6rem;font-size:.85rem;width:100%}.new-game-buttons{gap:.3rem;width:100%;flex-wrap:wrap;order:10}.new-game-btn{padding:.3rem .65rem;font-size:.75rem;flex:1;min-width:70px;white-space:nowrap}.restart-btn{flex-grow:.5;min-width:60px}#game-name-display{display:block;font-size:.9rem;font-weight:600;color:var(--color-text-light, white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;max-width:150px}.hamburger-menu{display:flex}.menu-items{position:fixed;top:var(--chrome-nav-height, 45px);left:-100%;width:250px;height:calc(100vh - var(--chrome-nav-height, 45px));flex-direction:column;background:linear-gradient(to bottom,#006400,#004d00);padding:1rem;gap:.5rem;transition:left .3s ease;box-shadow:4px 0 12px #00000080;z-index:999}.menu-items.active{left:0}.menu-items li{width:100%}.menu-btn{width:100%;padding:.8rem 1rem;font-size:.95rem;text-align:left}.game-container{height:calc(100vh - var(--chrome-nav-height, 45px))}#game-area{border-right:none;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-stats-toggle,.stats-close-btn{display:block}.game-controls-mobile{display:none}.stats-sidebar{position:fixed;top:-5rem;right:-100%;width:80%;max-width:320px;height:calc(100vh + 5rem);z-index:2000;transition:right .3s ease;display:flex!important;flex-direction:column;padding-top:7rem}.stats-sidebar.visible{right:0}.card{width:52px;height:73px;border-radius:3px}.card-rank{font-size:12px}.card-suit-small{font-size:10px}.card-suit-large{font-size:28px}.top-piles{gap:.4rem;margin-bottom:.8rem;padding:0 .3rem}.tableau-piles{gap:var(--game-gap, .5rem);padding:0 .2rem;justify-content:flex-start}.tableau-pile{min-width:0}.game-area-freecell .top-piles .card,.game-area-freecell .freecell-pile,.game-area-freecell .foundation{width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius)}.game-area-freecell .top-piles{gap:.2rem}.game-area-freecell .card-pile.empty:before,.game-area-freecell .foundation.empty:before{width:var(--card-width);height:var(--card-height)}.game-area-freecell .tableau-piles{gap:var(--game-gap, .5rem);padding:0 .2rem}.game-area-freecell .tableau-pile .card{width:var(--card-width);height:var(--card-height)}.game-area-golf .tableau-piles{gap:var(--game-gap, .5rem);padding:0 .3rem}.game-area-golf .tableau-pile .card{width:var(--card-width);height:var(--card-height)}[data-game=klondike] .top-piles,[data-game=australianpatience] .top-piles,[data-game=yukon] .top-piles,[data-game=russian] .top-piles{display:grid;grid-template-columns:repeat(7,var(--card-width));gap:var(--game-gap, 8px);padding:0 .3rem}[data-game=freecell] .top-piles{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);padding:0 .3rem}[data-game=fortythieves] .top-piles,[data-game=spider] .spider-top-row{display:grid;grid-template-columns:repeat(10,var(--card-width));gap:var(--game-gap, 8px);padding:0 .3rem}.tableau-pile .card{width:var(--card-width);height:var(--card-height)}.stock-pile,.waste-pile,.foundation,.freecell-pile{width:var(--card-width);height:var(--card-height);flex-shrink:0}.foundation.empty:before{width:var(--card-width);height:var(--card-height)}.stock-pile,.waste-pile,.freecell-pile{border-width:1px}.card-pile.empty:before{width:52px;height:73px;border-width:1px}.game-area-tripeaks .stock-pile,.game-area-tripeaks .waste-pile{width:45px;height:63px}.game-area-tripeaks .card-pile.empty:before{width:45px;height:63px}.game-info-overlay{bottom:8vh;left:.5rem;right:.5rem;width:auto;gap:.3rem;flex-wrap:nowrap;justify-content:flex-start}.center-items{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;flex:1;justify-content:center}.center-items::-webkit-scrollbar{display:none}.info-item{padding:.3rem .4rem;font-size:.75rem;gap:.2rem}.time-item{font-size:.9rem;padding:.3rem .5rem}.vertical-item{padding:.2rem .4rem;flex-direction:row}.vertical-item .info-value{font-size:.85rem}.vertical-item .info-sublabel,.points-item{display:none}.hint-btn .btn-icon{font-size:1.1rem}.info-item.undo-btn-overlay{background:transparent;padding:.4rem .5rem;box-shadow:none}.info-item.undo-btn-overlay .btn-label{display:none}.info-item.undo-btn-overlay .btn-icon{display:block;font-size:1.3rem;color:gold}.info-item.undo-btn-overlay:hover:not(:disabled){background:#ffffff1a}.points-item{padding:.3rem .5rem;font-size:.75rem}.settings-btn-overlay,.stats-btn-overlay,.bookmark-btn,.bug-report-btn{padding:.5rem;min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center}.settings-btn-overlay svg,.stats-btn-overlay svg,.bookmark-btn svg,.bug-report-btn svg{width:20px;height:20px}.info-icon{display:block;font-size:1rem}.info-label{display:none}.info-value{font-size:.85rem;min-width:2ch}.btn-label{display:none}.btn-icon,.sound-icon{font-size:1.1rem}.bookmark-btn,.bug-report-btn{display:none!important}}@media(max-width:480px){#stock-display,.points-item,.stats-btn-overlay,.fullscreen-btn{display:none!important}.game-info-overlay{gap:.2rem;left:.3rem;right:.3rem}.center-items{gap:.2rem}.info-item{padding:.25rem .35rem}.hint-btn,.info-item.undo-btn-overlay{padding:.35rem;min-width:40px;min-height:40px}}@keyframes victoryPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.victory-message{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:3rem 4rem;border-radius:16px;box-shadow:0 10px 40px #0000004d;text-align:center;z-index:2000;animation:victoryPulse .5s ease-in-out}.victory-message h2{color:#2e7d32;font-size:2.5rem;margin-bottom:1rem}.victory-message .time{font-size:2rem;font-weight:700;color:#333;margin-bottom:.5rem}.victory-message .record{color:#27ae60;font-size:1.2rem;font-weight:700}@media(max-width:915px)and (orientation:landscape){body.is-mobile-device .game-container{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}body.is-mobile-device .top-menu{padding:.3rem .5rem;padding-left:max(.5rem,env(safe-area-inset-left));padding-right:max(.5rem,env(safe-area-inset-right))}body.is-mobile-device .game-info-overlay{left:max(.5rem,env(safe-area-inset-left));right:max(.5rem,env(safe-area-inset-right))}body.is-mobile-device .logo img{height:28px!important}body.is-mobile-device .game-select-dropdown{padding:.3rem .5rem;font-size:.8rem}body.is-mobile-device .new-game-btn{padding:.3rem .65rem;font-size:.7rem}body.is-mobile-device .game-container{height:100vh;min-height:100vh;display:flex;flex-direction:column}body.is-mobile-device #game-area{padding:.5rem;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}body.is-mobile-device .tableau-piles{flex:1;min-height:0;display:flex;gap:var(--game-gap, .5rem)}body.is-mobile-device .tableau-pile{min-height:0;display:flex;flex-direction:column}body.is-mobile-device .game-info-overlay{bottom:1rem;left:max(.5rem,env(safe-area-inset-left));right:max(.5rem,env(safe-area-inset-right));gap:.25rem;position:fixed;z-index:1500}body.is-mobile-device .info-item{padding:.25rem .4rem;font-size:.7rem}body.is-mobile-device .info-icon{font-size:.9rem}body.is-mobile-device .info-value{font-size:.75rem}body.is-mobile-device .mobile-stats-toggle{bottom:.5rem;right:.5rem;width:50px;height:50px;font-size:1rem}body.is-mobile-device .card,body.is-mobile-device .card.face-down,body.is-mobile-device .card-pile.empty{width:65px;height:91px}body.is-mobile-device #stats-sidebar{width:200px;padding:.75rem}body.is-mobile-device .stat-item{padding:.5rem}body.is-mobile-device .stat-label{font-size:.8rem}body.is-mobile-device .stat-value{font-size:1.1rem}body.is-mobile-device .win-modal-content{padding:1rem;max-width:90vw}body.is-mobile-device .win-modal-content h2{font-size:1.5rem}body.is-mobile-device .tableau-piles{gap:var(--game-gap, .5rem)}body.is-mobile-device .golf-top-area{gap:.5rem;padding:.25rem;margin-bottom:.25rem}body.is-mobile-device .stock-visual-spread{max-width:180px}body.is-mobile-device .foundations-container,body.is-mobile-device .stock-container,body.is-mobile-device .top-area{gap:.2rem;margin-bottom:.2rem}body.is-mobile-device .foundation,body.is-mobile-device .stock-pile,body.is-mobile-device .waste-pile,body.is-mobile-device .card-pile{margin:.1rem}body.is-mobile-device .game-area-klondike .top-area{margin-bottom:.3rem;gap:.3rem}body.is-mobile-device .game-area-spider .spider-top-row{gap:.2rem;margin-bottom:.3rem}body.is-mobile-device .game-area-freecell .freecell-top{gap:.25rem;margin-bottom:.3rem;padding:.2rem}body.is-mobile-device .game-area-freecell .freecells-container,body.is-mobile-device .game-area-freecell .foundations-container{gap:.2rem}body.is-mobile-device .game-info-overlay{transition:bottom .3s ease-in-out;position:absolute}body.is-mobile-device .game-info-overlay.collapsed{bottom:-80px!important}body.is-mobile-device .landscape-overlay-toggle{position:absolute;top:-32px;left:50%;transform:translate(-50%);background:#000000d9;border:2px solid rgba(255,255,255,.3);border-radius:12px 12px 0 0;padding:6px 20px;color:#fff;font-size:1rem;cursor:pointer;z-index:10;transition:all .2s ease;box-shadow:0 -2px 8px #0000004d;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}body.is-mobile-device .landscape-overlay-toggle:hover{background:#000000f2;border-color:#ffffff80;transform:translate(-50%) scale(1.05)}body.is-mobile-device .landscape-overlay-toggle:active{transform:translate(-50%) scale(.98)}body.is-mobile-device .game-info-overlay.collapsed .landscape-overlay-toggle{display:block}body.is-mobile-device .top-menu{transition:top .3s ease-in-out;position:fixed;top:0}body.is-mobile-device .top-menu.collapsed{top:-60px!important}body.is-mobile-device .landscape-menu-toggle{position:absolute;bottom:-32px;left:50%;transform:translate(-50%);background:#000000d9;border:2px solid rgba(255,255,255,.3);border-radius:0 0 12px 12px;padding:6px 20px;color:#fff;font-size:1rem;cursor:pointer;z-index:10;transition:all .2s ease;box-shadow:0 2px 8px #0000004d;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}body.is-mobile-device .landscape-menu-toggle:hover{background:#000000f2;border-color:#ffffff80;transform:translate(-50%) scale(1.05)}body.is-mobile-device .landscape-menu-toggle:active{transform:translate(-50%) scale(.98)}body.is-mobile-device .top-menu.collapsed .landscape-menu-toggle{display:block}}[data-game] .card,[data-game] .stock-pile,[data-game] .waste-pile,[data-game] .foundation,[data-game] .freecell-pile,[data-game] .tableau-pile,[data-game] .card-pile{width:var(--card-width)!important;height:var(--card-height)!important;border-radius:var(--card-border-radius)!important}[data-game] .tableau-pile,[data-game] .card-pile.tableau-pile{height:auto!important;min-height:var(--card-height)!important}[data-game] .card-pile.empty:before,[data-game] .foundation.empty:before{width:var(--card-width)!important;height:var(--card-height)!important}[data-game] .tableau-pile .card,[data-game=spider] .card,.game-area-spider[data-game] .card{width:var(--card-width)!important;height:var(--card-height)!important;max-width:none!important;aspect-ratio:auto!important}[data-game=spider] .card-pile.empty:before,.game-area-spider[data-game] .card-pile.empty:before{width:var(--card-width)!important;height:var(--card-height)!important}[data-game] .spider-foundation,[data-game=spider] .spider-foundation{width:var(--card-width)!important;height:var(--card-height)!important}[data-game] .spider-foundation .card,[data-game=spider] .spider-foundation .card{width:100%!important;height:100%!important}[data-game] .spider-foundation.empty:before,[data-game=spider] .spider-foundation.empty:before{width:var(--card-width)!important;height:var(--card-height)!important}.card{width:var(--card-width, 100px);height:var(--card-height, 140px);border-radius:var(--card-border-radius, 6px);position:absolute;cursor:move;cursor:grab;transition:transform .15s ease,box-shadow .15s ease;box-shadow:2px 2px 6px #00000080;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:Arial,sans-serif}.card:active{cursor:grabbing}@media(hover:hover)and (pointer:fine){.card:hover{box-shadow:4px 8px 12px #0009}}.card.face-down{background:transparent;border:none;box-shadow:2px 2px 6px #00000080;display:block;padding:0;overflow:hidden}.card.face-down img{display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill;pointer-events:none}.card.face-up{background:transparent;border:none;box-shadow:2px 2px 6px #00000080;display:block;padding:0;overflow:hidden}.card.face-up img{display:block;width:100%;height:100%;-o-object-fit:fill;object-fit:fill;pointer-events:none}body[data-card-style=poker-plain] .card,body[data-card-style=poker-single] .card,body[data-card-style=ornamental] .card{border-radius:11px}@media(min-width:1025px){body[data-card-style=poker-plain] .card,body[data-card-style=poker-single] .card,body[data-card-style=ornamental] .card{border-radius:16px}}.card.red{color:#dc2626}.card.black{color:#1a1a1a}.card-corner{display:flex;flex-direction:column;align-items:center;line-height:1}.card-rank{font-size:20px;font-weight:700;margin-bottom:2px;line-height:1}.card-suit-small{font-size:18px;line-height:1}.card-center{flex:1;display:flex;align-items:center;justify-content:center;position:relative}.card-suit-large{font-size:56px;line-height:1}.card-value{font-size:18px;font-weight:700;line-height:1}.card-suit{font-size:48px;line-height:1}.card-shake{animation:shake .3s ease-in-out}.card-style-selector{margin-left:auto}.card-style-btn{padding:.5rem 1rem;background:linear-gradient(to bottom,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%);color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:6px;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.card-style-btn:hover{background:linear-gradient(to bottom,var(--btn-primary-hover-start) 0%,var(--btn-primary-hover-end) 100%);transform:translateY(-1px);box-shadow:0 4px 8px #0000004d}.card-style-btn:active{transform:translateY(0)}.card-icon{font-size:1.2rem}.card-label{font-size:.9rem}@media(max-width:768px){.card-style-selector{display:none}}.new-game-menu{position:absolute;top:100%;left:0;right:0;background:linear-gradient(to bottom,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%);border:2px solid rgba(255,255,255,.3);border-radius:6px;margin-top:.3rem;display:none;flex-direction:column;box-shadow:0 4px 12px #0006;z-index:1000;min-width:150px}.new-game-menu.active{display:flex}.new-game-option{padding:.6rem 1rem;background:transparent;color:#fff;border:none;text-align:left;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.new-game-option:hover{background:#fff3}.new-game-option:first-child{border-radius:4px 4px 0 0}.new-game-option:last-child{border-radius:0 0 4px 4px}.new-game-option:not(:last-child){border-bottom:1px solid rgba(255,255,255,.2)}.game-info-overlay{position:absolute;bottom:1rem;left:1rem;right:1rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.75rem;z-index:1500;pointer-events:auto;background:transparent}.center-items{display:flex;flex-direction:row;gap:.75rem;align-items:center;justify-content:center;flex:1}.info-item{background:transparent;border:none;border-radius:4px;padding:.4rem .7rem;display:flex;align-items:center;gap:.3rem;font-size:.95rem;color:#fff}.vertical-item{flex-direction:column;align-items:center;gap:.2rem;padding:.3rem .6rem}.vertical-item .info-value{font-size:1rem;font-weight:600}.info-sublabel{font-size:.7rem;color:#ffffffd9;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.points-item{padding:.4rem .7rem;font-weight:500;font-size:.9rem}.points-label{color:#fff}#overlay-score{font-weight:700;font-variant-numeric:tabular-nums}.settings-btn-overlay,.bookmark-btn{padding:.4rem .5rem;cursor:pointer}.settings-btn-overlay svg,.bookmark-btn svg{fill:#fff;transition:fill .2s ease}.settings-btn-overlay:hover svg,.bookmark-btn:hover svg{fill:gold}.info-icon{display:none;font-size:1rem}.info-label{color:#ffffffb3;font-size:.85rem;font-weight:500}.info-value{color:#fff;font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;text-shadow:2px 2px 4px rgba(0,0,0,.8);min-width:3ch}.info-btn{cursor:pointer;transition:all .2s ease}.info-btn:active{transform:translateY(1px)}.btn-icon{font-size:1.2rem}.btn-label{color:#000;font-size:.85rem;font-weight:600}.sound-icon{font-size:1.2rem}.new-game-buttons{display:flex;gap:.4rem;margin:0;flex-shrink:0;align-items:center}.segmented-control{display:inline-flex;background:#00000040;border-radius:6px;padding:3px;gap:3px}.segmented-control .new-game-btn{padding:.3rem .65rem;font-size:.75rem;border:none;background:transparent;color:#ffffffa6;border-radius:4px;transition:all .15s ease}.segmented-control .new-game-btn:hover{background:#ffffff14;color:#ffffffd9}.segmented-control .new-game-btn.active{background:#fff3;color:#fff;font-weight:600}.game-selector{margin-right:1rem}.game-select-dropdown{padding:.4rem .8rem;background:linear-gradient(to bottom,var(--btn-secondary-start) 0%,var(--btn-secondary-end) 100%);color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:8px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s ease}.game-select-dropdown:hover{background:linear-gradient(to bottom,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%)}.game-dropdown{position:relative;display:inline-flex}.game-dropdown .dropdown-option i.fa-check{color:var(--color-success, #4caf50);font-size:.75rem;width:14px}.game-dropdown .dropdown-option i.fa-fire{color:#ff6b35;font-size:.8rem}.game-dropdown .dropdown-separator{height:1px;background:#fff3;margin:.25rem 0}.new-game-btn{padding:.3rem .65rem;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:6px;font-weight:600;font-size:.75rem;cursor:pointer;transition:all .15s ease;white-space:nowrap}.new-game-btn:hover{background:#ffffff38;border-color:#ffffff40}.new-game-btn:active{background:#ffffff1f}.restart-btn:disabled{opacity:.35;cursor:not-allowed;background:#ffffff14}.restart-btn:disabled:hover{background:#ffffff14;border-color:#ffffff26}.fullscreen-btn{cursor:pointer;transition:all .2s ease}.fullscreen-btn i{font-size:1rem;color:#fff;transition:color .2s ease}.fullscreen-btn:hover i{color:gold}body.is-fullscreen{overflow:hidden;--chrome-nav-height: var(--chrome-nav-height-fullscreen, 35px)}body.is-fullscreen .game-info-overlay{bottom:1.5rem}body.is-fullscreen .top-menu{padding-top:.3rem;padding-bottom:.3rem}@media(orientation:landscape)and (max-width:915px){body.is-fullscreen.is-mobile-device .top-menu{padding:.2rem .5rem}body.is-fullscreen.is-mobile-device .game-info-overlay{bottom:1rem}}@supports not ((-webkit-full-screen: true) or (fullscreen: true)){.fullscreen-btn{display:none}}.game-selection-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#1a4d2e,#0d2818);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:opacity .3s ease;animation:overlayFadeIn .4s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.game-selection-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.game-selection-container{max-width:900px;max-height:90vh;width:85%;background:#fff;border-radius:16px;padding:.75rem 1.25rem;box-shadow:0 10px 50px #00000080;animation:containerSlideUp .5s cubic-bezier(.34,1.56,.64,1);overflow:hidden;display:flex;flex-direction:column}@keyframes containerSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.overlay-header{text-align:center;margin-bottom:.5rem;flex-shrink:0}.overlay-branding{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.25rem}.header-logo{height:45px;width:auto;max-height:45px;display:block}.overlay-title{font-size:1.3rem;font-weight:700;color:#2c3e50;margin:0;line-height:1}.overlay-tagline{font-size:.85rem;font-weight:600;color:#555;margin:0 0 .25rem;line-height:1.2}.overlay-social-proof{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem}.social-proof-text{font-size:.9rem;color:var(--text-primary);opacity:.9;text-align:center}.games-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.game-card{background:transparent;border-radius:12px;padding:.25rem;cursor:pointer;transition:all .3s ease;text-align:center;border:none;position:relative;display:flex;flex-direction:column;align-items:center;gap:.3rem}.game-card:hover{transform:scale(1.05)}.game-card:hover .game-card-icon{transform:scale(1.05);box-shadow:0 8px 20px #00000026}.game-card-icon{width:70%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.game-card-icon img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.game-badge{position:absolute;top:.2rem;right:.2rem;padding:.2rem .4rem;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border-radius:6px;z-index:2;box-shadow:0 2px 6px #0003}.game-badge.popular{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}.game-badge.trending{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff}.game-card-name{font-size:.9rem;font-weight:700;color:#000;margin:0;text-align:center;line-height:1.3;width:100%;letter-spacing:.01em}@media(max-width:1024px)and (min-width:769px){.game-selection-container{width:95%;padding:1rem 1.25rem 1.5rem}.overlay-header{margin-bottom:1rem}.overlay-logo{height:38px}.site-name-main{font-size:1.5rem}.site-name-domain,.overlay-title{font-size:1.2rem}.overlay-subtitle{font-size:.75rem}.social-proof-text{font-size:.7rem}.category-title{font-size:1.15rem}.category-icon{font-size:1.35rem}.game-category{margin-bottom:1.75rem}.games-grid{grid-template-columns:repeat(4,1fr);gap:.6rem}.games-grid.puzzle-grid{grid-template-columns:repeat(2,1fr)}.game-card{padding:.25rem;gap:.25rem}.game-card-icon{width:60%}.game-card-name{font-size:.8rem}.game-badge{font-size:.5rem;padding:.15rem .35rem;top:.2rem;right:.2rem}}@media(max-width:768px){.game-selection-container{width:100%;height:100%;max-width:none;max-height:none;border-radius:0;padding:1rem .75rem;overflow-y:auto}.overlay-header{margin-bottom:.75rem}.overlay-branding{flex-direction:column;gap:.3rem;margin-bottom:.5rem}.overlay-logo{height:32px}.overlay-site-name{align-items:center}.site-name-main{font-size:1.2rem}.site-name-domain,.overlay-title{font-size:1rem}.overlay-subtitle{font-size:.7rem}.overlay-social-proof{padding:.4rem .75rem;gap:.4rem;margin-top:.4rem}.social-proof-stars{font-size:.9rem}.social-proof-text{font-size:.7rem}.game-category{margin-bottom:1.5rem}.category-title{font-size:1.1rem;margin-bottom:.75rem}.category-icon{font-size:1.25rem}.games-grid{grid-template-columns:repeat(3,1fr);gap:.5rem}.games-grid.puzzle-grid{grid-template-columns:repeat(2,1fr)}.game-card{padding:.2rem;gap:.2rem}.game-card:hover{transform:scale(1.05)}.game-card-icon{width:55%}.game-card-name{font-size:.7rem;line-height:1.2}.game-badge{font-size:.45rem;padding:.15rem .3rem;top:.15rem;right:.15rem}}@media(min-width:1025px){.game-selection-container{max-width:1000px;padding:1rem 1.5rem 1.5rem}.overlay-header{margin-bottom:1rem}.overlay-title{font-size:1.6rem}.overlay-subtitle{font-size:.85rem}.games-grid{grid-template-columns:repeat(5,1fr);gap:.5rem}.game-card{padding:.2rem;gap:.25rem}.game-card-icon{width:55%}.game-card-name{font-size:.75rem}.game-badge{font-size:.5rem;padding:.15rem .35rem;top:.15rem;right:.15rem}}.win-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-overlay-dark, rgba(0, 0, 0, .6));display:flex;justify-content:center;align-items:center;z-index:20000;padding:1rem;opacity:0;transition:opacity .3s ease}.win-modal.show{opacity:1}.win-modal-content{background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);padding:0;border-radius:16px;box-shadow:0 25px 50px var(--color-shadow-heavy, rgba(0, 0, 0, .5));max-width:420px;width:100%;text-align:center;animation:victorySlideDown .4s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}@keyframes victorySlideDown{0%{transform:scale(.9) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-close-btn{position:absolute;top:.75rem;right:.75rem;background:var(--color-overlay-light-dark, rgba(0, 0, 0, .3));border:none;color:var(--color-text-light, #ffffff);width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.modal-close-btn:hover{background:var(--color-overlay-dark, rgba(0, 0, 0, .5));transform:rotate(90deg)}.modal-header{padding:1.25rem 1.25rem 1rem;background:var(--color-overlay-subtle, rgba(0, 0, 0, .2))}.win-modal-content h2{color:var(--color-highlight, #ffd700);font-family:var(--font-heading, "Poppins", sans-serif);font-size:1.75rem;margin:0 0 .25rem;font-weight:700;text-shadow:2px 2px 8px var(--color-shadow-heavy, rgba(0, 0, 0, .5));letter-spacing:-.5px}.win-modal-content h2 .victory-trophy{display:inline-block;animation:trophy-pop .6s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 0 8px var(--color-highlight, rgba(255, 215, 0, .8)))}.win-modal-content h2 .loss-icon{color:var(--color-error, #ff6b6b);filter:none}@keyframes trophy-pop{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0);opacity:1}}.win-subtitle{color:var(--color-text-light, #ffffff);font-size:.95rem;margin:0;font-weight:500}.win-subtitle i{margin-right:.25rem}.win-subtitle .streak-fire{color:var(--color-highlight, #ffd700);text-shadow:0 0 8px var(--color-highlight-glow, rgba(255, 215, 0, .5))}.modal-body{padding:1.25rem}.win-stats-row{display:flex;justify-content:center;gap:.5rem;padding:0;background:transparent;margin-bottom:1rem}.stat-item{text-align:center;min-width:70px;flex:1;padding:.75rem .5rem;background:var(--color-overlay-light-dark, rgba(0, 0, 0, .25));border:2px solid var(--modal-stat-border, rgba(76, 175, 80, .5));border-radius:12px;position:relative}.stat-value{font-size:1.5rem;font-weight:700;color:var(--modal-stat-value, var(--color-success, #4ade80));line-height:1.2;white-space:nowrap}.stat-label{font-size:.65rem;color:var(--color-text-muted, rgba(255, 255, 255, .7));text-transform:uppercase;letter-spacing:.5px;margin-top:.35rem}.stat-item.highlight{border-color:var(--modal-highlight-border, rgba(255, 215, 0, .6));background:var(--modal-highlight-bg, rgba(255, 215, 0, .1))}.stat-item.highlight .stat-value{color:var(--color-highlight, #ffd700)}.stat-item.xp-stat{border-color:var(--modal-stat-border, rgba(74, 222, 128, .6))}.stat-item.xp-stat .stat-value{color:var(--modal-stat-value, var(--color-success, #4ade80));font-style:italic}.stat-item.xp-stat.with-progress{padding-bottom:.5rem}.xp-progress-container{position:relative;width:100%;height:6px;background:var(--color-overlay-light-dark, rgba(0, 0, 0, .3));border-radius:3px;margin-top:.35rem;overflow:hidden}.xp-progress-bar{position:absolute;left:0;top:0;height:100%;width:var(--progress, 0%);background:var(--modal-progress-gradient, linear-gradient(90deg, var(--color-success, #4ade80) 0%, var(--color-success-dark, #22c55e) 100%));border-radius:3px;transition:width .8s ease-out;animation:xp-fill .8s ease-out .5s both}@keyframes xp-fill{0%{width:0%}to{width:var(--progress, 0%)}}.xp-level{position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:.5rem;font-weight:700;color:var(--color-text-light, #ffffff);text-shadow:0 1px 2px var(--color-shadow-heavy, rgba(0, 0, 0, .5))}.stat-record{position:absolute;top:-6px;right:-6px;font-size:.75rem;color:var(--color-text-dark, #1a1a1a);background:var(--color-highlight, #ffd700);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px var(--color-shadow, rgba(0, 0, 0, .3))}.streak-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-overlay-light, rgba(255, 255, 255, .12));border:1px solid var(--color-border-light, rgba(255, 255, 255, .2));border-radius:20px;color:var(--color-text-light, #ffffff);font-size:.85rem;font-weight:600;margin-bottom:.75rem}.streak-indicator i{color:var(--color-highlight, #ffd700);animation:fire-pulse 1s ease-in-out infinite}@keyframes fire-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.streak-indicator.best-streak{background:var(--color-highlight-bg, rgba(255, 215, 0, .15));border-color:var(--color-highlight-border, rgba(255, 215, 0, .3));color:var(--color-highlight, #ffd700)}.streak-indicator.best-streak i{color:var(--color-highlight, #ffd700)}.streak-badge{background:var(--color-highlight, #ffd700);color:var(--color-text-dark, #1a1a1a);padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:700;text-transform:uppercase}.streak-hint{opacity:.7;font-size:.75rem}.achievement-banner{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--modal-highlight-bg, rgba(255, 215, 0, .15));border:1px solid var(--modal-highlight-border, rgba(255, 215, 0, .3));border-radius:10px;margin-bottom:1rem;font-size:.85rem}.achievement-banner i{color:var(--color-highlight, #ffd700);font-size:1rem}.achievement-text{flex:1;color:var(--color-text-light, #ffffff);font-weight:500;text-align:left}.achievement-xp{color:var(--modal-stat-value, var(--color-success, #4ade80));font-weight:700;font-size:.8rem}.next-achievement-teaser{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--color-overlay-light, rgba(255, 255, 255, .08));border:1px solid var(--color-border-light, rgba(255, 255, 255, .15));border-radius:10px;margin-bottom:1rem}.next-achievement-teaser>i{color:var(--color-text-muted, rgba(255, 255, 255, .5));font-size:1.5rem;width:1.75rem;text-align:center;margin-top:.1rem}.teaser-content{flex:1;min-width:0}.teaser-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.teaser-name{color:var(--color-text-light, #ffffff);font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teaser-progress-text{color:var(--color-highlight, #ffd700);font-size:.75rem;font-weight:600;flex-shrink:0;margin-left:.5rem}.teaser-description{color:var(--color-text-muted, rgba(255, 255, 255, .6));font-size:.75rem;margin-bottom:.4rem}.teaser-progress{height:6px;background:var(--color-overlay-light, rgba(255, 255, 255, .15));border-radius:3px;overflow:hidden}.teaser-progress-bar{height:100%;width:var(--progress, 0%);background:linear-gradient(90deg,var(--color-highlight, #ffd700),var(--color-warning, #ff8c00));border-radius:3px;transition:width .3s ease}.game-over-encouragement{background:var(--color-overlay-light, rgba(255, 255, 255, .1));border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem}.game-over-encouragement p{color:var(--color-text-light, #ffffff);font-size:.85rem;margin:0;display:flex;align-items:center;gap:.5rem}.game-over-encouragement i{color:var(--color-highlight, #ffd700)}.participation-xp{margin-top:.5rem!important;color:var(--modal-stat-value, var(--color-success, #4ade80))!important;font-weight:600}.participation-xp i{color:var(--modal-stat-value, var(--color-success, #4ade80))!important}.action-buttons{display:flex;gap:.75rem;margin-bottom:.75rem}.action-btn{flex:1;padding:.75rem 1rem;border:none;border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.4rem}.action-btn i{font-size:.85rem}.btn-primary{background:linear-gradient(135deg,var(--btn-primary-start, #2e7d32) 0%,var(--btn-primary-end, #66bb6a) 100%);color:var(--color-text-light, #ffffff);box-shadow:0 4px 12px var(--color-shadow, rgba(0, 0, 0, .3))}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--color-shadow-heavy, rgba(0, 0, 0, .4))}.btn-secondary{background:var(--color-overlay-light, rgba(255, 255, 255, .15));color:var(--color-text-light, #ffffff);border:1px solid var(--color-border-light, rgba(255, 255, 255, .3))}.btn-secondary:hover{background:var(--color-overlay-light-hover, rgba(255, 255, 255, .25));transform:translateY(-2px)}.btn-undo{background:var(--modal-undo-gradient, linear-gradient(135deg, var(--color-warning, #f59e0b) 0%, var(--color-warning-light, #fbbf24) 100%));color:var(--color-text-dark, #1a1a1a);font-weight:700;box-shadow:0 4px 12px var(--modal-undo-shadow, rgba(245, 158, 11, .3))}.btn-undo:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--modal-undo-shadow-hover, rgba(245, 158, 11, .4))}.action-buttons.three-buttons{flex-wrap:wrap}.action-buttons.three-buttons .btn-undo{flex:1 1 100%;margin-bottom:.5rem}.action-buttons.three-buttons .btn-secondary,.action-buttons.three-buttons .btn-primary{flex:1 1 calc(50% - .375rem)}.share-row{display:flex;align-items:center;justify-content:center;gap:.75rem}.share-label{color:var(--color-text-muted, rgba(255, 255, 255, .6));font-size:.75rem}.share-icon{width:36px;height:36px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--color-text-light, #ffffff)}.share-icon:hover{transform:translateY(-2px)}.share-icon.facebook{background:#1877f2}.share-icon.twitter{background:#000}.share-icon.whatsapp{background:#25d366}.share-icon.copy{background:var(--color-overlay-light, rgba(255, 255, 255, .2));border:1px solid var(--color-border-light, rgba(255, 255, 255, .3))}.share-icon.copied{background:var(--color-success, #4ade80);border-color:var(--color-success, #4ade80)}.loss-modal{background:var(--modal-loss-gradient, linear-gradient(135deg, #4a5568 0%, #2d3748 100%))}.loss-modal h2{color:var(--color-error, #fc8181)}.level-up-toast{position:fixed;top:12px;left:50%;transform:translate(-50%) translateY(-80px);z-index:30000;opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);max-width:calc(100vw - 2rem)}.level-up-toast.show{transform:translate(-50%) translateY(0);opacity:1}.level-up-toast-content{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--modal-levelup-gradient, linear-gradient(135deg, var(--color-highlight, #ffd700) 0%, var(--color-warning, #ff8c00) 100%));border-radius:24px;box-shadow:0 4px 16px var(--modal-levelup-shadow, rgba(255, 215, 0, .3));color:var(--color-text-dark, #1a1a1a);white-space:nowrap}.level-up-toast-content>i{font-size:1rem;animation:arrow-bounce 1s infinite}@keyframes arrow-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.level-up-toast-text{display:flex;align-items:center;gap:.35rem}.level-up-toast-text strong{font-size:.8rem;font-weight:700}.level-up-toast-text span{font-size:.75rem;opacity:.85}@media(max-width:768px){.win-modal{padding:3rem .75rem .75rem;align-items:flex-start}.win-modal-content{max-width:100%}.win-modal-content h2{font-size:1.5rem}.modal-header{padding:1rem 1rem .75rem}.modal-body{padding:1rem}.win-stats-row{gap:.4rem}.stat-item{min-width:60px;padding:.625rem .4rem}.stat-value{font-size:1.3rem}.stat-label{font-size:.6rem}.xp-progress-container{height:5px}.xp-level{font-size:.45rem}.level-up-toast{top:10px}.level-up-toast-content{padding:.4rem .875rem;gap:.4rem}.level-up-toast-content>i{font-size:.9rem}.level-up-toast-text strong{font-size:.75rem}.level-up-toast-text span{font-size:.7rem}}@media(max-width:480px){.win-modal{padding:2rem .5rem .5rem}.win-modal-content h2{font-size:1.25rem}.win-subtitle{font-size:.75rem}.modal-header{padding:.75rem .75rem .5rem}.modal-body{padding:.75rem}.win-stats-row{gap:.3rem}.stat-item{min-width:50px;padding:.4rem .3rem}.stat-value{font-size:1rem}.stat-label{font-size:.5rem;margin-top:.2rem}.xp-progress-container{height:4px;margin-top:.25rem}.xp-level{font-size:.4rem}.streak-indicator{font-size:.75rem;padding:.35rem .6rem}.achievement-banner{font-size:.75rem;padding:.4rem .6rem;margin-bottom:.75rem}.next-achievement-teaser{padding:.5rem .6rem;gap:.4rem;margin-bottom:.75rem}.next-achievement-teaser>i{font-size:1.1rem;width:1.25rem}.teaser-name{font-size:.75rem}.teaser-progress-text,.teaser-description{font-size:.65rem}.teaser-progress{height:4px}.action-buttons{flex-direction:column;gap:.4rem}.action-btn{padding:.875rem 1rem}.share-row{gap:.5rem}.share-icon{width:32px;height:32px}.share-icon svg{width:14px;height:14px}.level-up-toast{top:8px}.level-up-toast-content{padding:.35rem .75rem;gap:.35rem;border-radius:20px}.level-up-toast-content>i{font-size:.8rem}.level-up-toast-text strong{font-size:.7rem}.level-up-toast-text span{font-size:.65rem}}@media(max-width:360px){.win-stats-row{gap:.25rem}.stat-item{min-width:48px;padding:.4rem .25rem;border-width:1px}.stat-value{font-size:1rem}.stat-label{font-size:.5rem}.xp-progress-container{height:3px}.xp-level{display:none}.next-achievement-teaser{padding:.5rem .6rem}.next-achievement-teaser>i{font-size:1.1rem;width:1.25rem}.teaser-name{font-size:.75rem}.teaser-description{font-size:.65rem}.streak-indicator{font-size:.75rem;padding:.35rem .6rem}}.win-stats,.win-xp-section,.win-achievements-section,.win-levelup-section,.social-share,.preferences-toggle{display:none}.preferences-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:3000;justify-content:center;align-items:center;padding:1rem}.preferences-modal.active{display:flex}.preferences-content{background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);border-radius:16px;max-width:550px;width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;transition:background .3s ease;box-shadow:0 25px 50px #00000080;animation:slideIn .3s ease;position:relative}@keyframes slideIn{0%{transform:scale(.9) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.preferences-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:2px solid rgba(255,255,255,.2);background:#0003;flex-shrink:0}.preferences-header h3{color:#fff;font-size:1.3rem;margin:0;font-weight:700}.preferences-tabs{display:flex;gap:0;background:#0000004d;border-bottom:2px solid rgba(255,255,255,.2);flex-shrink:0}.preferences-tab{flex:1;padding:.75rem 1rem;background:transparent;border:none;color:#fff9;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent}.preferences-tab:hover{background:#ffffff1a;color:#fffc}.preferences-tab.active{color:#fff;background:#ffffff26;border-bottom-color:var(--color-success, #4caf50)}.preferences-body{flex:1;overflow-y:hidden;min-height:0;display:flex;flex-direction:column}.preferences-tab-content{display:none;flex:1;overflow-y:auto;min-height:0}.preferences-tab-content.active{display:block}.preferences-close{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.preferences-close:hover{background:#ffffff4d;transform:rotate(90deg)}.preferences-section{padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.preferences-section:last-child{border-bottom:none}.preferences-section h4{color:#fff;font-size:1rem;margin:0 0 .75rem;font-weight:600}.game-default-group{margin-bottom:1.5rem}.preference-label{display:block;font-weight:600;margin-bottom:.5rem;color:#fffffff2;font-size:.95rem}.preference-description{font-size:.9rem;color:#ffffffb3;margin-bottom:1rem;line-height:1.4}.radio-group-horizontal{flex-direction:row;flex-wrap:wrap;gap:.75rem}.radio-label{display:flex;align-items:center;cursor:pointer;padding:.5rem .75rem;border-radius:6px;transition:background-color .2s ease;color:#ffffffe6;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.radio-label:hover{background-color:#ffffff1a;border-color:#fff3}.radio-label input[type=radio]{margin-right:.5rem;cursor:pointer;accent-color:#90EE90}.radio-label input[type=radio]:checked+span{font-weight:600}.radio-group-horizontal .radio-label{flex:1;min-width:80px;justify-content:center;text-align:center}@media(max-width:768px){.radio-group-horizontal{flex-direction:column}.radio-group-horizontal .radio-label{justify-content:flex-start;text-align:left}}.theme-selector,.theme-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.theme-option{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.5rem;border:2px solid rgba(255,255,255,.3);border-radius:8px;cursor:pointer;transition:all .2s;background:#ffffff1a}.theme-option:hover{background:#ffffff26;border-color:#ffffff80;transform:translateY(-2px)}.theme-option.selected{background:#ffffff40;border-color:gold;box-shadow:0 0 12px #ffd7004d}.theme-preview{width:100%;height:40px;border-radius:4px;border:2px solid rgba(255,255,255,.3)}.theme-label{color:#fff;font-size:.75rem;font-weight:600;text-align:center}.font-size-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.font-size-option{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem;background:#ffffff14;border:2px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease}.font-size-option:hover{background:#ffffff26;border-color:#ffffff80;transform:translateY(-2px)}.font-size-option.selected{background:#ffffff40;border-color:gold;box-shadow:0 0 12px #ffd7004d}.font-size-label{color:#fff;font-size:.85rem;font-weight:600}.font-size-preview{color:#fffc;font-weight:700;min-width:2em;text-align:center}.sound-toggle-container{display:flex;align-items:center;gap:1rem}.toggle-switch{position:relative;display:inline-block;width:51px;height:31px}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ffffff4d;border-radius:31px;transition:.3s}.toggle-slider:before{position:absolute;content:"";height:27px;width:27px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background-color:#34c759}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-label{color:#fff;font-size:.95rem;font-weight:500;min-width:30px}.preferences-footer{padding:1rem 1.5rem;border-top:2px solid rgba(255,255,255,.2);background:#0003;flex-shrink:0;text-align:center}.preferences-done-btn{background:#fffffff2;color:var(--text-on-light);border:none;padding:.75rem 2.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #0003}.preferences-done-btn:hover{background:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.preferences-done-btn:active{transform:translateY(0)}.card-style-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.card-style-option{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:8px;padding:.5rem;cursor:pointer;transition:all .2s;text-align:center}.card-style-option:hover{background:#ffffff26;border-color:#ffffff80;transform:translateY(-2px)}.card-style-option.selected{background:#ffffff40;border-color:gold;box-shadow:0 0 12px #ffd7004d}.card-style-label{color:#fff;font-size:.75rem;font-weight:600;margin-bottom:.4rem;display:block}.card-preview{display:flex;justify-content:center;gap:.4rem}.preview-card{width:28px;height:38px;border-radius:3px;box-shadow:0 2px 6px #0000004d;overflow:hidden}.preview-card img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.card-back-options{display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem}.card-back-option{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:8px;padding:.5rem;cursor:pointer;transition:all .2s;text-align:center}.card-back-option:hover{background:#ffffff26;border-color:#ffffff80;transform:translateY(-2px)}.card-back-option.selected{background:#ffffff40;border-color:gold;box-shadow:0 0 12px #ffd7004d}.card-back-preview{width:100%;height:60px;margin:0 auto;border-radius:3px;box-shadow:0 2px 6px #0000004d;overflow:hidden;display:flex;align-items:center;justify-content:center}.card-back-preview img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.card-back-label{color:#fff;font-size:.75rem;font-weight:500;margin-top:.3rem;display:block}@media(max-width:768px){.preferences-modal{padding:0}.preferences-content{max-width:100%;max-height:100vh;height:100vh;border-radius:0;transform:scale(.7);transform-origin:center center}.preferences-header{padding:.75rem 1rem}.preferences-header h3{font-size:1.1rem}.preferences-section{padding:1rem}.preferences-section h4{font-size:.9rem;margin-bottom:.6rem}.card-style-options{grid-template-columns:repeat(2,1fr);gap:.6rem}.card-style-option{padding:.6rem .4rem}.card-style-label{font-size:.8rem;margin-bottom:.4rem}.preview-card{width:28px;height:39px}.card-back-options{grid-template-columns:repeat(3,1fr);gap:.6rem}.card-back-option{padding:.4rem}.card-back-preview{width:40px;height:56px}.card-back-label{font-size:.7rem}.preferences-close{width:32px;height:32px;font-size:1.2rem}.preferences-footer{padding:.75rem 1rem}.preferences-done-btn{width:100%;padding:.75rem}}.preferences-popup-mobile{display:none;position:absolute;bottom:100%;right:0;margin-bottom:.5rem;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);border-radius:12px;box-shadow:0 8px 24px #0006;min-width:320px;max-width:90vw;max-height:70vh;z-index:10000;animation:slideUpFade .2s ease;transition:background .3s ease;overflow:hidden;flex-direction:column}.preferences-popup-mobile.visible{display:flex}.preferences-popup-header{color:#fff;font-size:1.1rem;font-weight:700;margin:0;padding:1rem;border-bottom:2px solid rgba(255,255,255,.2);background:#0003;flex-shrink:0}.preferences-popup-tabs{display:flex;gap:0;background:#0000004d;border-bottom:2px solid rgba(255,255,255,.2);flex-shrink:0}.preferences-popup-tab{flex:1;padding:.75rem;background:transparent;border:none;color:#fff9;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent}.preferences-popup-tab.active{color:#fff;background:#ffffff26;border-bottom-color:var(--color-success, #4caf50)}.preferences-popup-body{flex:1;overflow-y:auto;min-height:0}.preferences-popup-section{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.preferences-popup-section:last-child{border-bottom:none}.preferences-popup-section h4{color:#fff;font-size:.9rem;margin:0 0 .75rem;font-weight:600}.preferences-popup-tab-content{display:none}.preferences-popup-tab-content.active{display:block}.mobile-radio-group{display:flex;flex-direction:column;gap:.75rem}.mobile-radio-label{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#ffffff14;border:2px solid rgba(255,255,255,.15);border-radius:8px;cursor:pointer;transition:all .2s ease;color:#ffffffe6;font-size:.95rem;font-weight:500}.mobile-radio-label:hover{background:#ffffff1f;border-color:#ffffff40}.mobile-radio-label input[type=radio]{width:22px;height:22px;margin:0;cursor:pointer;accent-color:var(--color-success, #4caf50);flex-shrink:0}.mobile-radio-label input[type=radio]:checked{accent-color:var(--color-success, #66bb6a)}.mobile-radio-label:has(input:checked){background:color-mix(in srgb,var(--color-success, #4caf50) 20%,transparent);border-color:color-mix(in srgb,var(--color-success, #4caf50) 50%,transparent);color:#fff}.mobile-radio-label span{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.profile-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#d4af37,#f59e0b);border:2px solid rgba(212,175,55,.4);color:#fff;cursor:pointer;transition:all .3s ease;margin-right:12px;font-size:18px;box-shadow:0 2px 8px #d4af3766}.profile-btn:hover{background:linear-gradient(135deg,gold,#d4af37);transform:scale(1.1);box-shadow:0 4px 16px #ffd70099}.profile-btn:active{transform:scale(.95)}.profile-dashboard-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:25000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;pointer-events:none}.profile-dashboard-modal.show{opacity:1;pointer-events:all}.profile-dashboard-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;backdrop-filter:blur(8px)}.profile-dashboard-content{position:relative;background:linear-gradient(to bottom,var(--nav-gradient-start, #1b5e20),var(--nav-gradient-end, #2e7d32));border:3px solid var(--nav-border, #8f7a66);border-radius:20px;max-width:900px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 80px #000c,inset 0 0 40px #0003;transform:scale(.9);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.profile-dashboard-modal.show .profile-dashboard-content{transform:scale(1)}.profile-dashboard-content::-webkit-scrollbar{width:10px}.profile-dashboard-content::-webkit-scrollbar-track{background:#0003;border-radius:10px}.profile-dashboard-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.profile-dashboard-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.profile-close-btn{position:absolute;top:calc(20px + env(safe-area-inset-top,0px));right:calc(20px + env(safe-area-inset-right,0px));width:40px;height:40px;border-radius:50%;background:#0000004d;border:none;color:#fff;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.profile-close-btn:hover{background:#00000080;transform:rotate(90deg)}.profile-header{padding:32px 32px 24px;border-bottom:2px solid rgba(255,255,255,.1)}.profile-header h2{color:#fff;font-size:32px;font-weight:700;margin:0;display:flex;align-items:center;gap:12px}.profile-header h2 i{color:gold}.profile-body{padding:24px 32px 32px}.profile-section{margin-bottom:32px;padding:24px;background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.profile-section:last-child{margin-bottom:0}.profile-footer-section{background:#0003;border-top:2px solid rgba(255,255,255,.1);border-radius:0 0 16px 16px;margin-bottom:0;padding:20px 24px}.profile-section h3{color:#fff;font-size:20px;font-weight:600;margin:0 0 20px;display:flex;align-items:center;gap:10px}.profile-subsection{margin-top:24px;padding:20px;background:#0003;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.profile-subsection h4{color:#fff;font-size:17px;font-weight:600;margin:0 0 16px;display:flex;align-items:center;gap:8px}.profile-section h3 i{color:gold;font-size:22px}.collapsible-header{cursor:pointer;justify-content:space-between;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .2s ease}.collapsible-header:hover{opacity:.8}.collapse-toggle{font-size:18px;transition:transform .3s ease}.collapsible-content{max-height:2000px;opacity:1;overflow:hidden;transition:max-height .4s ease,opacity .3s ease,margin-top .3s ease}.profile-section.collapsed .collapsible-content,.profile-subsection.collapsed .collapsible-content,.challenge-card.collapsed .collapsible-content{max-height:0;opacity:0;margin-top:0}.profile-section.expanded .collapsible-content,.profile-subsection.expanded .collapsible-content,.challenge-card.expanded .collapsible-content{margin-top:0}.level-display{display:flex;gap:24px;align-items:center}.level-badge-large{flex-shrink:0;width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#d4af37,#f59e0b);display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid rgba(212,175,55,.6);box-shadow:0 8px 32px #d4af3780,0 0 60px #ffd7004d}.level-number{font-size:48px;font-weight:800;color:#fff;line-height:1}.level-title{font-size:14px;font-weight:600;color:gold;text-transform:uppercase;letter-spacing:1px;margin-top:4px}.level-info{flex:1}.xp-multiplier{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 16px;background:#4caf5033;border-radius:8px;color:var(--color-success, #48bb78);font-weight:600}.xp-multiplier i{font-size:18px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.stat-card{padding:20px;background:#00000040;border-radius:12px;text-align:center;transition:all .2s ease;border:1px solid rgba(255,255,255,.15)}.stat-card:hover{background:#00000059;transform:translateY(-2px);box-shadow:0 4px 16px #0000004d;border-color:#66bb6a66}.stat-icon{font-size:32px;color:var(--color-success, #66bb6a);margin-bottom:12px}.stat-value{font-size:28px;font-weight:800;color:#fff;margin-bottom:4px}.stat-label{font-size:14px;color:#a0aec0;font-weight:500}.stats-disclaimer{margin-top:0;margin-bottom:16px;padding:12px 16px;background:#ffc1071a;border-left:3px solid #ffc107;border-radius:6px;display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#ffd54f;line-height:1.5}.stats-disclaimer i{font-size:16px;margin-top:2px;flex-shrink:0}.stats-disclaimer span{flex:1}.reset-stats-btn{margin-top:0;width:100%;padding:12px 20px;background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.reset-stats-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-2px);box-shadow:0 4px 16px #ef444466}.reset-stats-btn:active{transform:translateY(0)}.reset-stats-btn i{font-size:16px}.challenge-card{padding:20px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);margin-bottom:16px}.challenge-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.challenge-header.collapsible-header{cursor:pointer;position:relative;margin-bottom:0}.challenge-header.collapsible-header .collapse-toggle{margin-left:auto;align-self:center;flex-shrink:0}.challenge-card.expanded .challenge-header{margin-bottom:16px}.challenge-icon{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#f6ad55,#ed8936);display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;flex-shrink:0}.challenge-info{flex:1}.challenge-title{font-size:18px;font-weight:700;color:#fff;margin-bottom:4px}.challenge-desc{font-size:14px;color:#cbd5e0}.challenge-progress-bar{width:100%;height:12px;background:#0000004d;border-radius:6px;overflow:hidden;margin-bottom:8px}.challenge-progress-fill{height:100%;background:linear-gradient(90deg,#f6ad55,#ed8936);border-radius:6px;transition:width .6s ease}.challenge-progress-text{text-align:center;color:#cbd5e0;font-size:14px;font-weight:600}.challenge-completed{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;padding:10px;background:#4caf5033;border-radius:8px;color:var(--color-success, #48bb78);font-weight:700}.challenge-completed i{font-size:20px}.streak-display{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f6ad551a;border-radius:12px;border:1px solid rgba(246,173,85,.3);margin-top:16px}.streak-info{display:flex;align-items:center;gap:10px;color:#f6ad55;font-size:18px;font-weight:700}.streak-info i{font-size:24px;animation:flame-flicker 1.5s infinite}.streak-best{color:#cbd5e0;font-size:14px}.solitaire-streak-display{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#f6ad551a;border-radius:12px;border:1px solid rgba(246,173,85,.3);margin-bottom:16px}.solitaire-streak-info{display:flex;align-items:center;gap:10px;color:#f6ad55;font-size:18px;font-weight:700}.solitaire-streak-info i{font-size:24px;animation:flame-flicker 1.5s infinite}.solitaire-streak-best{color:#cbd5e0;font-size:14px}.badges-filter{display:flex;gap:8px;margin-bottom:20px}.badge-filter-btn{padding:10px 20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#cbd5e0;font-weight:600;cursor:pointer;transition:all .2s ease}.badge-filter-btn:hover{background:#ffffff14}.badge-filter-btn.active{background:linear-gradient(to bottom,var(--btn-primary-start, #1b5e20),var(--btn-primary-end, #2e7d32));border-color:#d4af3780;color:#fff;box-shadow:0 4px 12px #d4af374d}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:16px}.badge-item{position:relative;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:3px solid;background:linear-gradient(135deg,#4a5568,#2d3748);cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent;-moz-user-select:none;user-select:none;-webkit-user-select:none}.badge-item:hover{transform:scale(1.15);z-index:100;box-shadow:0 0 0 4px #ffd7004d,0 0 20px #ffd70080,0 0 40px #ffd7004d;filter:brightness(1.3)}.badge-item.locked:hover{opacity:.9;filter:brightness(1.5)}.badge-item.locked[data-tier=bronze]{border-color:#6b6b6b;background:linear-gradient(135deg,#6b6b6b,#4a4a4a);opacity:.6}.badge-item.locked[data-tier=silver]{border-color:#8b8b8b;background:linear-gradient(135deg,#8b8b8b,#5f5f5f);opacity:.6}.badge-item.locked[data-tier=gold]{border-color:#9a9a9a;background:linear-gradient(135deg,#9a9a9a,#707070);opacity:.6}.badge-item.locked[data-tier=platinum]{border-color:#a8a8a8;background:linear-gradient(135deg,#a8a8a8,#7a7a7a);opacity:.6}.badge-item.locked[data-tier=diamond]{border-color:#7f7f7f;background:linear-gradient(135deg,#7f7f7f,#5a5a5a);opacity:.6}.badge-item.locked[data-tier=legendary]{border-color:#8c8c8c;background:linear-gradient(135deg,#8c8c8c,#656565);opacity:.6}.badge-item.locked[data-tier=bronze]:hover{border-color:#cd7f32;background:linear-gradient(135deg,#cd7f32,#8b5a2b)}.badge-item.locked[data-tier=silver]:hover{border-color:silver;background:linear-gradient(135deg,silver,gray)}.badge-item.locked[data-tier=gold]:hover{border-color:gold;background:linear-gradient(135deg,gold,#b8860b)}.badge-item.locked[data-tier=platinum]:hover{border-color:#e5e4e2;background:linear-gradient(135deg,#e5e4e2,#9ca3af)}.badge-item.locked[data-tier=diamond]:hover{border-color:#b9f2ff;background:linear-gradient(135deg,#b9f2ff,#60a5fa)}.badge-item.locked[data-tier=legendary]:hover{border-color:#ff6b6b;background:linear-gradient(135deg,#ff6b6b,#ee5a6f)}.badge-item.locked:hover .badge-icon{filter:grayscale(0%);opacity:1}.badge-item.locked .badge-icon{opacity:.6;filter:grayscale(100%)}.badge-item.unlocked{opacity:1}.badge-item[data-tier=bronze]{border-color:#cd7f32;background:linear-gradient(135deg,#cd7f32,#8b5a2b)}.badge-item[data-tier=silver]{border-color:silver;background:linear-gradient(135deg,silver,gray)}.badge-item[data-tier=gold]{border-color:gold;background:linear-gradient(135deg,gold,#b8860b)}.badge-item[data-tier=platinum]{border-color:#e5e4e2;background:linear-gradient(135deg,#e5e4e2,#9ca3af)}.badge-item[data-tier=diamond]{border-color:#b9f2ff;background:linear-gradient(135deg,#b9f2ff,#60a5fa)}.badge-item[data-tier=legendary]{border-color:#ff6b6b;background:linear-gradient(135deg,#ff6b6b,#ee5a6f)}.badge-icon{font-size:36px;color:#fff}.badge-item[data-tier=platinum] .badge-icon,.badge-item.locked[data-tier=platinum]:hover .badge-icon{color:#2d3748;text-shadow:0 2px 4px rgba(0,0,0,.2)}.badge-icon .unicode-icon{font-size:36px;line-height:1;display:inline-block}.badge-unlocked-indicator{position:absolute;bottom:-4px;right:-4px;width:24px;height:24px;border-radius:50%;background:var(--color-success, #48bb78);border:2px solid #1a202c;display:flex;align-items:center;justify-content:center;font-size:12px;color:#fff}.badge-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:12px;padding:0;background:linear-gradient(135deg,var(--nav-gradient-end, #0a3d0c) 0%,var(--nav-gradient-start, #1b5e20) 100%);border:3px solid transparent;background-clip:padding-box;border-radius:12px;width:280px;max-width:calc(100vw - 40px);box-shadow:0 12px 48px #000000e6,0 0 0 3px #d4af37cc,0 0 30px #d4af3780,inset 0 0 40px #0000004d;z-index:1000;display:none;pointer-events:none;animation:tooltip-appear .2s ease-out}@keyframes tooltip-appear{0%{opacity:0;transform:translate(-50%) translateY(-5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.badge-item.grid-left-edge .badge-tooltip{left:10px;transform:translate(0)}@keyframes tooltip-appear-left{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.badge-item.grid-left-edge .badge-tooltip{animation:tooltip-appear-left .2s ease-out}.badge-item.grid-left-edge .badge-tooltip:after{left:40px;transform:translate(0)}.badge-item.grid-right-edge .badge-tooltip{left:auto;right:10px;transform:translate(0)}@keyframes tooltip-appear-right{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.badge-item.grid-right-edge .badge-tooltip{animation:tooltip-appear-right .2s ease-out}.badge-item.grid-right-edge .badge-tooltip:after{left:auto;right:40px;transform:translate(0)}.badge-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--nav-gradient-start, #1b5e20);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.badge-tooltip-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,#d4af37,#f59e0b);border-bottom:2px solid rgb(212,175,55);border-radius:9px 9px 0 0}.badge-tooltip-header strong{color:#1a1a1a;font-size:17px;font-weight:700;text-shadow:none}.badge-tier{padding:4px 10px;background:linear-gradient(135deg,#d4af37,#f59e0b);border-radius:6px;font-size:10px;text-transform:uppercase;color:#1a1a1a;font-weight:700;letter-spacing:.5px;box-shadow:0 2px 8px #d4af3766}.badge-tooltip-desc{color:#e8f4e8;font-size:15px;margin-bottom:12px;line-height:1.5;padding:12px 16px 0}.badge-tooltip-xp{display:flex;align-items:center;gap:8px;padding:0 16px 12px;color:gold;font-weight:700;font-size:16px}.badge-tooltip-xp i{color:#f59e0b;font-size:18px}.badge-tooltip-progress{margin-top:0;padding:12px 16px;border-top:2px solid rgb(212,175,55);background:#000;color:#cbd5e0;font-size:13px;border-radius:0 0 9px 9px;font-weight:600}.no-badges{grid-column:1 / -1;text-align:center;padding:40px;color:#718096;font-size:16px}@media(max-width:768px){.profile-dashboard-content{width:100%;max-height:100vh;border-radius:0}.profile-header{padding:24px 20px 20px}.profile-header h2{font-size:24px}.profile-body{padding:20px}.profile-section{padding:16px;margin-bottom:20px}.level-display{flex-direction:column;text-align:center}.level-badge-large{width:100px;height:100px}.level-number{font-size:40px}.stats-grid{grid-template-columns:repeat(2,1fr)}.badges-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:12px}.badge-item{width:70px;height:70px}.badge-item:active{transform:scale(1.05);transition:transform .1s ease}.badge-item:hover{transform:none;box-shadow:none;filter:none}.badge-icon{font-size:30px}.badge-tooltip{position:fixed;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:75vw;max-width:260px;max-height:70vh;overflow-y:auto;margin:0;z-index:25002;box-shadow:0 20px 60px #000000f2,0 0 0 2px #d4af37cc,0 0 30px #d4af3766}.badge-tooltip-header{padding:8px 10px}.badge-tooltip-header strong{font-size:14px}.badge-tier{font-size:8px;padding:2px 6px}.badge-tooltip-desc{font-size:12px;padding:8px 10px 0;margin-bottom:8px;line-height:1.3}.badge-tooltip-xp{padding:0 10px 8px;font-size:12px}.badge-tooltip-progress{padding:6px 10px;font-size:11px}.badge-tooltip:after{display:none}.badge-item:nth-child(4n+1) .badge-tooltip,.badge-item:nth-child(4n) .badge-tooltip,.badge-item:nth-child(3n+1) .badge-tooltip,.badge-item:nth-child(3n) .badge-tooltip{position:fixed;left:50%!important;right:auto!important;top:50%!important;transform:translate(-50%,-50%)!important}}@media(max-width:480px){.profile-btn{width:36px;height:36px;font-size:16px}.stats-grid{grid-template-columns:1fr}.badges-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}.badge-item{width:60px;height:60px}.badge-icon{font-size:24px}}.stats-sidebar{width:22%;min-width:280px;background:linear-gradient(45deg,var(--tableau-pattern) 25%,transparent 25%),linear-gradient(-45deg,var(--tableau-pattern) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--tableau-pattern) 75%),linear-gradient(-45deg,transparent 75%,var(--tableau-pattern) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;background-color:var(--bg-primary);border-left:3px ridge #555;padding:1.5rem;box-shadow:inset 0 0 30px #0006;overflow-y:auto;display:flex;transition:background .3s ease;flex-direction:column;transition:transform .3s ease,opacity .3s ease}.stats-sidebar h3{color:var(--stats-highlight);font-size:1.1rem;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.7);text-align:center;padding-bottom:.6rem;border-bottom:2px solid var(--stats-border);font-weight:700}.stats-table{background:#0003;border:2px solid rgba(255,255,255,.2);border-radius:8px;overflow:hidden}.stats-table-row{display:grid;grid-template-columns:repeat(4,1fr)}.stats-table-row.header{background:#0000004d;border-bottom:2px solid rgba(255,255,255,.2)}.stats-table-cell{padding:.5rem .4rem;text-align:center;color:#fff;font-size:.75rem;font-weight:500}.stats-table-row.header .stats-table-cell{font-size:.7rem;text-transform:uppercase;letter-spacing:.3px;color:#e0e0e0;font-weight:600}.stats-table-row:not(.header) .stats-table-cell{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;text-shadow:1px 1px 2px rgba(0,0,0,.5);padding:.7rem .4rem}.stats-table-cell.highlight{color:var(--stats-highlight)}.breadcrumb{padding:.75rem 0;margin-bottom:1.5rem}.breadcrumb ol,.content-page .breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;list-style:none;padding:0;margin:0;gap:.5rem}.breadcrumb li,.content-page .breadcrumb li{display:flex;align-items:center;font-size:.95rem;color:#666;margin-bottom:0}.breadcrumb li:not(:last-child):after{content:"›";margin-left:.5rem;color:#999;font-weight:700}.breadcrumb a{color:var(--nav-gradient-start, #2e7d32);text-decoration:none;transition:color .2s ease}.breadcrumb a:hover{color:var(--nav-gradient-end, #1b5e20);text-decoration:underline}.breadcrumb li[aria-current=page]{color:#333;font-weight:500}.content-page .breadcrumb{border-bottom:1px solid #e0e0e0;padding-bottom:1rem}@media(max-width:768px){.breadcrumb ol{font-size:.85rem}}.site-footer{background:linear-gradient(to bottom,var(--stats-bg-start) 0%,var(--stats-bg-end) 100%);border-top:3px solid var(--nav-border);padding:2rem 1rem 1rem;color:#ffffffe6;text-align:center;box-shadow:0 -4px 12px #0000004d;transition:background .3s ease,border-color .3s ease}.footer-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto 1.5rem;text-align:left}.footer-section{display:flex;flex-direction:column;gap:.5rem}.footer-section:has(h4:contains("Learn & Strategy")){display:grid;grid-template-columns:1fr;grid-template-rows:auto}.footer-section:has(h4:contains("Learn & Strategy")) h4{grid-column:1 / -1}.footer-section h4{color:#fff;font-size:1rem;font-weight:600;margin:0 0 .5rem;padding-bottom:.5rem;border-bottom:2px solid rgba(255,255,255,.2)}.footer-links a{color:#fffc;text-decoration:none;font-size:.9rem;transition:color .2s ease;white-space:nowrap;padding:.25rem 0}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-links a.footer-hub-link{color:gold;font-weight:600;margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.15)}.footer-links a.footer-hub-link:hover{color:#ffeb3b}@media(max-width:768px){.footer-links{grid-template-columns:1fr;gap:1.5rem;text-align:center}.footer-section{align-items:center}}.footer-copyright{color:#fff9;font-size:.85rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2)}.related-content{margin-top:3rem;padding-top:2rem;border-top:2px solid #e0e0e0}.related-content h3{font-size:1.3rem;margin-bottom:1rem;color:var(--nav-gradient-end, #1b5e20);display:flex;align-items:center;gap:.5rem}.related-guides{margin-bottom:2rem}.related-guides ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.75rem}.related-guides li{margin:0}.related-guides a{display:inline-block;padding:.5rem 1rem;background:rgba(var(--nav-gradient-start-rgb, 46, 125, 50),.1);color:var(--nav-gradient-start, #2e7d32);text-decoration:none;font-weight:500;border-radius:6px;transition:all .2s ease;border:1px solid rgba(var(--nav-gradient-start-rgb, 46, 125, 50),.2)}.related-guides a:hover{background:rgba(var(--nav-gradient-start-rgb, 46, 125, 50),.2);color:var(--nav-gradient-end, #1b5e20);transform:translateY(-1px)}.related-games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-top:1rem}.related-game-card{display:flex;flex-direction:column;padding:1rem 1.25rem;background:var(--bg-secondary, #f5f5f5);border-radius:8px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;border:2px solid transparent}.related-game-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #0000001a;border-color:var(--nav-gradient-end, #1b5e20);background:rgba(var(--nav-gradient-start-rgb, 46, 125, 50),.1)}.related-game-card .game-name{font-weight:600;color:var(--nav-gradient-end, #1b5e20);font-size:1.1rem}.related-game-card .game-reason{font-size:.85rem;color:#666;margin-top:.25rem}@media(max-width:768px){.related-games-grid{grid-template-columns:1fr}.related-guides ul{flex-direction:column}.related-guides a{display:block;text-align:center}}.sound-control{display:flex;justify-content:center;padding:1rem 0;margin-top:1rem}.sound-toggle-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:1.5rem}.sound-toggle-btn:hover{background:#fff3;border-color:#ffffff80;transform:scale(1.05)}.sound-toggle-btn:active{transform:scale(.95)}.sound-toggle-btn.muted{background:#d32f2f33;border-color:#d32f2f80}.sound-toggle-btn.muted:hover{background:#d32f2f4d;border-color:#d32f2fb3}#sound-toggle-overlay.muted{background:#d32f2fbf;border-color:#d32f2f80}#sound-toggle-overlay.muted:hover{background:#d32f2fd9}@keyframes hintPulse{0%,to{box-shadow:0 0 #ffeb3bb3;border-color:#ffeb3b80}50%{box-shadow:0 0 20px 10px #ffeb3b00;border-color:#ffeb3b}}.hint-highlight{animation:hintPulse 1.5s ease-in-out 3;border:3px solid rgba(255,235,59,1)!important;position:relative;z-index:1000}@keyframes hintDestinationPulse{0%,to{box-shadow:0 0 #ffeb3b80;background:#ffeb3b1a}50%{box-shadow:0 0 20px 8px var(--stats-border);background:#ffeb3b40}}.hint-destination-card{animation:hintDestinationPulse 1.5s ease-in-out infinite;border:3px solid rgba(255,235,59,.7)!important;position:relative;z-index:999}#language-switcher-container{margin-left:auto}.language-switcher{position:relative;display:inline-block}.language-btn{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--color-text-light, white);border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:.5rem .75rem;cursor:pointer;transition:background .2s,border-color .2s,transform .1s;font-size:1rem}.language-btn:hover{background:#ffffff1a;border-color:#ffffff80;transform:scale(1.05)}.language-btn:active{transform:scale(.95)}.language-btn .fa-globe{font-size:1.1rem}.language-option .lang-name{font-size:inherit}.language-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:linear-gradient(to bottom,var(--nav-gradient-start),var(--nav-gradient-end));border:1px solid rgba(255,255,255,.2);border-radius:8px;box-shadow:0 4px 12px #0000004d;min-width:160px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;z-index:2000;overflow:hidden}.language-dropdown.active{opacity:1;visibility:visible;transform:translateY(0)}.language-option{width:100%;padding:.5rem .75rem;background:transparent;border:none;color:#ffffffe6;text-align:left;cursor:pointer;transition:all .15s ease;font-size:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.language-option:last-child{border-bottom:none}.language-option:hover{background:#ffffff1a;color:#fff}.language-option.active{background:#ffffff26;color:#fff;font-weight:600}#mobile-language-switcher-container .language-switcher{display:block}#mobile-language-switcher-container .language-btn{width:auto;justify-content:center}#mobile-language-switcher-container .language-dropdown{position:static;opacity:1;visibility:visible;transform:none;margin-top:.5rem;display:none}#mobile-language-switcher-container .language-dropdown.active{display:block}@media(max-width:1024px){#language-switcher-container{display:none}}@media(min-width:1025px){#mobile-language-switcher-container{display:none}}#game-loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;pointer-events:none;transition:opacity .3s ease}#game-loading-overlay.visible{opacity:1;pointer-events:all}.loading-spinner{text-align:center;color:#fff}.spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.2);border-top-color:var(--color-success, #4caf50);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 20px}.loading-text{font-size:1.2rem;font-weight:500;color:#fff;letter-spacing:.5px}@keyframes spin{to{transform:rotate(360deg)}}.install-btn{display:none;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--color-nav-start, var(--nav-gradient-start, #2e7d32)) 0%,var(--color-nav-end, var(--nav-gradient-end, #1b5e20)) 100%);color:var(--color-text-light, white);border:1px solid var(--color-nav-border, transparent);padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;margin-left:auto}.install-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--color-shadow-hover, rgba(102, 126, 234, .4));background:linear-gradient(135deg,var(--color-btn-primary-start, var(--color-nav-start, #2e7d32)) 0%,var(--color-btn-primary-end, var(--color-nav-end, #1b5e20)) 100%)}.install-btn:active{transform:translateY(0)}.install-btn i{font-size:1rem}.update-banner{position:fixed;top:0;left:0;right:0;background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;padding:1rem;z-index:10000;box-shadow:0 2px 10px #0000004d;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.update-content{display:flex;align-items:center;justify-content:center;gap:1rem;max-width:1200px;margin:0 auto;flex-wrap:wrap}.update-text{font-weight:600;font-size:.95rem}.update-content button{background:#fff;color:#11998e;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;pointer-events:auto;transition:transform .2s;font-size:.9rem}.update-content button:hover{transform:scale(1.05)}.update-content .dismiss-btn{background:transparent;color:#fff;border:1px solid white}body.pwa-installed{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@supports (-webkit-touch-callout: none){body.pwa-installed{padding-top:max(env(safe-area-inset-top),20px)}}.offline-indicator{position:fixed;bottom:1rem;right:1rem;background:#ff6b6b;color:#fff;padding:.75rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;box-shadow:0 4px 12px #ff6b6b66;z-index:9999;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.offline-indicator.online{background:#51cf66;animation:none}.sw-loading{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:#fff;padding:2rem;border-radius:12px;z-index:10001;text-align:center}.sw-spinner{border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}@media(max-width:768px){.install-btn{padding:.4rem .6rem;gap:0}.install-btn .install-text{display:none}.install-btn i{font-size:1.1rem}.offline-indicator{bottom:.5rem;right:.5rem;font-size:.8rem;padding:.6rem 1rem}.update-content{font-size:.85rem;padding:.5rem}.update-content button{font-size:.8rem;padding:.4rem .8rem}}@media(display-mode:standalone){.browser-only{display:none!important}header{padding-top:max(1rem,env(safe-area-inset-top))}}.error-404{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:2rem;text-align:center;position:relative;overflow:hidden}.error-404-cards{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:0}.error-404-cards .floating-card{position:absolute;width:60px;height:84px;opacity:.2;animation:floatCard 8s ease-in-out infinite;border-radius:6px;box-shadow:0 2px 8px #0003}.error-404-cards .floating-card:nth-child(1){top:10%;left:5%;animation-delay:0s}.error-404-cards .floating-card:nth-child(2){top:20%;right:10%;animation-delay:-2s}.error-404-cards .floating-card:nth-child(3){bottom:30%;left:15%;animation-delay:-4s}.error-404-cards .floating-card:nth-child(4){bottom:20%;right:20%;animation-delay:-6s}.error-404-cards .floating-card:nth-child(5){top:40%;left:80%;animation-delay:-1s}.error-404-cards .floating-card:nth-child(6){top:60%;left:3%;animation-delay:-3s}@keyframes floatCard{0%,to{transform:translateY(0) rotate(-5deg)}25%{transform:translateY(-15px) rotate(5deg)}50%{transform:translateY(-5px) rotate(-3deg)}75%{transform:translateY(-20px) rotate(8deg)}}.error-404-content{position:relative;z-index:1;max-width:500px}.error-404-number{font-size:6rem;font-weight:800;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.3);margin-bottom:1rem;line-height:1;display:flex;align-items:center;justify-content:center;gap:.5rem}.error-404-number .suit{font-size:2.5rem;animation:suitBounce 2s ease-in-out infinite}.error-404-number .suit.hearts,.error-404-number .suit.diamonds{color:#e74c3c}.error-404-number .suit.clubs,.error-404-number .suit.spades{color:#ecf0f1}.error-404-number .suit:nth-child(1){animation-delay:0s}.error-404-number .suit:nth-child(3){animation-delay:.2s}.error-404-number .suit:nth-child(5){animation-delay:.4s}.error-404-number .suit:nth-child(7){animation-delay:.6s}@keyframes suitBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.error-404-tagline{font-size:1.5rem;color:#ffffffe6;margin-bottom:1rem;font-style:italic}.error-404-message{font-size:1.1rem;color:#ffffffbf;margin-bottom:2rem;line-height:1.6}.error-404-card-stack{display:flex;justify-content:center;margin-bottom:2rem;position:relative;height:120px}.error-404-card-stack .card-img{width:70px;height:98px;border-radius:8px;box-shadow:0 4px 15px #0000004d;position:absolute;transition:transform .3s ease}.error-404-card-stack .card-img:nth-child(1){transform:rotate(-25deg) translate(-50px);z-index:1}.error-404-card-stack .card-img:nth-child(2){transform:rotate(-8deg) translate(-18px);z-index:2}.error-404-card-stack .card-img:nth-child(3){transform:rotate(8deg) translate(18px);z-index:3}.error-404-card-stack .card-img:nth-child(4){transform:rotate(25deg) translate(50px);z-index:4}.error-404-card-stack:hover .card-img:nth-child(1){transform:rotate(-30deg) translate(-65px) translateY(-10px)}.error-404-card-stack:hover .card-img:nth-child(2){transform:rotate(-12deg) translate(-25px) translateY(-5px)}.error-404-card-stack:hover .card-img:nth-child(3){transform:rotate(12deg) translate(25px) translateY(-5px)}.error-404-card-stack:hover .card-img:nth-child(4){transform:rotate(30deg) translate(65px) translateY(-10px)}.error-404-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.error-404-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.75rem;border-radius:12px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer;border:none}.error-404-btn-primary{background:linear-gradient(135deg,#27ae60,#1e8449);color:#fff;box-shadow:0 4px 15px #27ae6066}.error-404-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6080;background:linear-gradient(135deg,#2ecc71,#27ae60)}.error-404-btn-secondary{background:#ffffff26;color:#fff;border:2px solid rgba(255,255,255,.3)}.error-404-btn-secondary:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-2px)}@media(max-width:600px){.error-404-number{font-size:4rem;gap:.25rem}.error-404-number .suit{font-size:1.75rem}.error-404-tagline{font-size:1.25rem}.error-404-message{font-size:1rem}.error-404-card-stack{height:100px}.error-404-card-stack .card-img{width:55px;height:77px}.error-404-actions{flex-direction:column;align-items:center}.error-404-btn{width:100%;max-width:250px;justify-content:center}.error-404-cards .floating-card{width:45px;height:63px}}.achievement-unlock-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .3s ease}.achievement-unlock-modal.show{opacity:1;pointer-events:all}.achievement-unlock-modal.hide{opacity:0;pointer-events:none}.achievement-unlock-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;backdrop-filter:blur(4px)}.achievement-unlock-content{position:relative;background:linear-gradient(135deg,var(--color-achievement-bg-start, #2d3748) 0%,var(--color-achievement-bg-end, #1a202c) 100%);border-radius:16px;padding:32px;max-width:500px;width:90%;box-shadow:0 20px 60px #0006;transform:scale(.8);transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.achievement-unlock-modal.show .achievement-unlock-content{transform:scale(1)}.achievement-unlock-modal.hide .achievement-unlock-content{transform:scale(.8)}.achievement-badge{display:flex;align-items:center;justify-content:center;margin:0 auto 24px;width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--color-achievement-bg-start, #4a5568) 0%,var(--color-achievement-bg-end, #2d3748) 100%);border:4px solid;box-shadow:0 8px 24px #0000004d;position:relative;overflow:hidden}.achievement-badge:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);animation:shine 3s infinite}@keyframes shine{0%{transform:rotate(0) translate(-50%,-50%)}to{transform:rotate(360deg) translate(-50%,-50%)}}.achievement-badge i{font-size:48px;color:var(--color-achievement-text, #fff);position:relative;z-index:1}.achievement-badge[data-tier=bronze]{border-color:var(--color-badge-bronze, #cd7f32);background:linear-gradient(135deg,var(--color-badge-bronze, #cd7f32) 0%,var(--color-badge-bronze-dark, #8b5a2b) 100%)}.achievement-badge[data-tier=silver]{border-color:var(--color-badge-silver, #c0c0c0);background:linear-gradient(135deg,var(--color-badge-silver, #c0c0c0) 0%,var(--color-badge-silver-dark, #808080) 100%)}.achievement-badge[data-tier=gold]{border-color:var(--color-badge-gold, #ffd700);background:linear-gradient(135deg,var(--color-badge-gold, #ffd700) 0%,var(--color-badge-gold-dark, #b8860b) 100%);box-shadow:0 8px 32px #ffd70066}.achievement-badge[data-tier=platinum]{border-color:var(--color-badge-platinum, #e5e4e2);background:linear-gradient(135deg,var(--color-badge-platinum, #e5e4e2) 0%,var(--color-badge-platinum-dark, #9ca3af) 100%);box-shadow:0 8px 32px #e5e4e266}.achievement-badge[data-tier=diamond]{border-color:var(--color-badge-diamond, #b9f2ff);background:linear-gradient(135deg,var(--color-badge-diamond, #b9f2ff) 0%,var(--color-badge-diamond-dark, #60a5fa) 100%);box-shadow:0 8px 32px #b9f2ff80}.achievement-badge[data-tier=legendary]{border-color:var(--color-badge-legendary, #ff6b6b);background:linear-gradient(135deg,var(--color-badge-legendary, #ff6b6b) 0%,var(--color-badge-legendary-dark, #ee5a6f) 100%);box-shadow:0 8px 32px #ff6b6b80;animation:legendary-pulse 2s infinite}@keyframes legendary-pulse{0%,to{transform:scale(1);box-shadow:0 8px 32px #ff6b6b80}50%{transform:scale(1.05);box-shadow:0 8px 40px #ff6b6bb3}}.achievement-unlock-header{text-align:center;margin-bottom:16px}.achievement-unlock-header h2{font-size:24px;font-weight:700;color:var(--color-achievement-text, #f7fafc);margin:0 0 8px}.achievement-unlock-label{display:inline-block;font-size:18px;font-weight:600;color:var(--color-achievement-text, #f7fafc);text-transform:uppercase;letter-spacing:1px}.achievement-unlock-modal .achievement-name{color:var(--color-achievement-text, #f7fafc);font-size:1.5rem;font-weight:700;margin:16px 0 8px;text-align:center}.achievement-unlock-modal .achievement-description{color:var(--color-achievement-text-muted, #cbd5e0);font-size:1rem;line-height:1.5;text-align:center;margin-bottom:16px}.achievement-dismiss-hint{text-align:center;margin-top:16px;color:var(--color-achievement-text-muted, #cbd5e0);opacity:.7}.achievement-unlock-header .achievement-category{display:inline-block;padding:4px 12px;background:#ffffff1a;border-radius:12px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-achievement-text-muted, #cbd5e0)}.achievement-unlock-description{text-align:center;color:var(--color-achievement-text-muted, #cbd5e0);font-size:16px;line-height:1.5;margin-bottom:20px}.achievement-unlock-xp{text-align:center;font-size:20px;font-weight:700;color:var(--color-success, #48bb78);margin-bottom:16px}.achievement-unlock-xp i{margin-right:8px;color:var(--color-success, #68d391)}.achievement-unlock-close{width:100%;padding:12px 24px;background:linear-gradient(135deg,var(--btn-primary-start, #48bb78) 0%,var(--btn-primary-end, #38a169) 100%);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.achievement-unlock-close:hover{background:linear-gradient(135deg,var(--btn-primary-end, #38a169) 0%,var(--nav-gradient-end, #2f855a) 100%);transform:translateY(-2px);box-shadow:0 4px 12px #48bb784d}.achievement-unlock-close:active{transform:translateY(0)}.level-up-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0;transition:opacity .3s ease}.level-up-modal.show{opacity:1;pointer-events:all}.level-up-modal.hide{opacity:0;pointer-events:none}.level-up-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(6px)}.level-up-content{position:relative;background:linear-gradient(135deg,var(--color-levelup-bg-start, #667eea) 0%,var(--color-levelup-bg-end, #764ba2) 100%);border-radius:16px;padding:24px;max-width:380px;width:90%;box-shadow:0 16px 48px var(--color-levelup-glow, rgba(102, 126, 234, .4));transform:scale(.8);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.level-up-modal.show .level-up-content{transform:scale(1)}.level-up-modal.hide .level-up-content{transform:scale(.8)}.level-up-header{text-align:center;margin-bottom:16px}.level-up-header h2{font-size:1.5rem;font-weight:800;color:var(--color-levelup-text, #fff);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.2);animation:level-up-bounce .6s cubic-bezier(.34,1.56,.64,1)}@keyframes level-up-bounce{0%{transform:scale(.3) rotate(-10deg);opacity:0}50%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}.level-up-progression{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px}.level-up-old,.level-up-new{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);backdrop-filter:blur(10px)}.level-up-new{background:#fff3;border-color:#ffffff80;box-shadow:0 4px 16px #fff3;animation:level-glow 1.5s infinite}@keyframes level-glow{0%,to{box-shadow:0 4px 16px #fff3}50%{box-shadow:0 4px 24px #fff6}}.level-number{font-size:1.75rem;font-weight:800;color:var(--color-levelup-text, #fff)}.level-up-arrow{font-size:1.5rem;color:var(--color-levelup-text, #fff);font-weight:700}.level-up-title-display{text-align:center;margin-bottom:16px;padding:10px 16px;background:#ffffff1a;border-radius:10px;backdrop-filter:blur(10px)}.level-up-title-display h3{font-size:1.25rem;font-weight:700;color:var(--color-levelup-title, #ffd700);margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}.level-up-rewards{margin-bottom:16px;padding:12px;background:#ffffff14;border-radius:10px;backdrop-filter:blur(10px)}.level-up-rewards h4{font-size:.75rem;font-weight:600;color:var(--color-levelup-text, #fff);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.rewards-list{list-style:none;padding:0;margin:0}.rewards-list li{display:flex;align-items:center;padding:8px 10px;margin-bottom:4px;background:#ffffff0d;border-radius:6px;color:var(--color-levelup-text, #fff);font-size:.85rem;transition:all .2s ease}.rewards-list li:hover{background:#ffffff1a}.rewards-list li:last-child{margin-bottom:0}.rewards-list li i{margin-right:8px;color:var(--color-levelup-title, #ffd700);font-size:.9rem}.reward-amount{margin-left:auto;font-weight:700;color:var(--color-success, #48bb78);font-size:.85rem}.level-up-next{text-align:center;padding:10px;background:#0003;border-radius:8px;margin-bottom:16px}.level-up-next p{margin:0 0 4px;color:var(--color-levelup-text-muted, #cbd5e0);font-size:.8rem}.level-up-next p:last-child{margin:0}.level-up-next strong{color:var(--color-levelup-text, #fff);font-weight:700}.xp-overflow{color:var(--color-success, #48bb78)!important;font-weight:600}.level-up-close{width:100%;padding:12px 24px;background:linear-gradient(135deg,var(--btn-primary-start, #48bb78) 0%,var(--btn-primary-end, #38a169) 100%);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #48bb784d}.level-up-close:hover{background:linear-gradient(135deg,var(--btn-primary-end, #38a169) 0%,var(--nav-gradient-end, #2f855a) 100%);transform:translateY(-2px);box-shadow:0 6px 24px #48bb7866}.level-up-close:active{transform:translateY(0)}.level-up-close i{margin-right:8px}.confetti-piece{position:fixed;width:10px;height:10px;top:-10px;z-index:10001;animation:confetti-fall 3s linear forwards;pointer-events:none}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.xp-progress-bar{width:100%;height:12px;background:#0003;border-radius:6px;overflow:hidden;position:relative;margin:8px 0}.xp-progress-fill{height:100%;background:linear-gradient(90deg,var(--btn-primary-start, #48bb78) 0%,var(--btn-primary-end, #38a169) 100%);border-radius:6px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.xp-progress-fill:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:progress-shine 2s infinite}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.xp-progress-text{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--color-text-muted, #718096);margin-top:4px}.xp-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,var(--btn-primary-start, #48bb78) 0%,var(--btn-primary-end, #38a169) 100%);color:#fff;border-radius:16px;font-size:14px;font-weight:700;box-shadow:0 2px 8px #48bb784d;animation:xp-gain .4s cubic-bezier(.34,1.56,.64,1)}@keyframes xp-gain{0%{transform:scale(.5) translateY(-20px);opacity:0}50%{transform:scale(1.1) translateY(-5px)}to{transform:scale(1) translateY(0);opacity:1}}.xp-badge i{font-size:16px}.level-badge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;background:linear-gradient(135deg,var(--color-levelup-bg-start, #667eea) 0%,var(--color-levelup-bg-end, #764ba2) 100%);color:var(--color-levelup-text, white);border-radius:20px;font-size:16px;font-weight:800;box-shadow:0 4px 12px var(--color-levelup-glow, rgba(102, 126, 234, .3));border:2px solid rgba(255,255,255,.2)}.level-badge-small{min-width:32px;height:32px;padding:0 10px;font-size:14px;border-radius:16px}.achievement-badge-small{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;border:2px solid;background:linear-gradient(135deg,var(--color-achievement-bg-start, #4a5568) 0%,var(--color-achievement-bg-end, #2d3748) 100%);box-shadow:0 2px 8px #0003;transition:all .2s ease}.achievement-badge-small:hover{transform:scale(1.1);box-shadow:0 4px 16px #0000004d}.achievement-badge-small i{font-size:24px;color:var(--color-achievement-text, #fff)}.achievement-badge-small[data-tier=bronze]{border-color:var(--color-badge-bronze, #cd7f32);background:linear-gradient(135deg,var(--color-badge-bronze, #cd7f32) 0%,var(--color-badge-bronze-dark, #8b5a2b) 100%)}.achievement-badge-small[data-tier=silver]{border-color:var(--color-badge-silver, #c0c0c0);background:linear-gradient(135deg,var(--color-badge-silver, #c0c0c0) 0%,var(--color-badge-silver-dark, #808080) 100%)}.achievement-badge-small[data-tier=gold]{border-color:var(--color-badge-gold, #ffd700);background:linear-gradient(135deg,var(--color-badge-gold, #ffd700) 0%,var(--color-badge-gold-dark, #b8860b) 100%)}.achievement-badge-small[data-tier=platinum]{border-color:var(--color-badge-platinum, #e5e4e2);background:linear-gradient(135deg,var(--color-badge-platinum, #e5e4e2) 0%,var(--color-badge-platinum-dark, #9ca3af) 100%)}.achievement-badge-small[data-tier=diamond]{border-color:var(--color-badge-diamond, #b9f2ff);background:linear-gradient(135deg,var(--color-badge-diamond, #b9f2ff) 0%,var(--color-badge-diamond-dark, #60a5fa) 100%)}.achievement-badge-small[data-tier=legendary]{border-color:var(--color-badge-legendary, #ff6b6b);background:linear-gradient(135deg,var(--color-badge-legendary, #ff6b6b) 0%,var(--color-badge-legendary-dark, #ee5a6f) 100%)}.streak-indicator{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,var(--color-streak-start, #f6ad55) 0%,var(--color-streak-end, #ed8936) 100%);color:#fff;border-radius:20px;font-size:16px;font-weight:700;box-shadow:0 4px 12px #f6ad554d}.streak-indicator i{font-size:20px;animation:flame-flicker 1.5s infinite}@keyframes flame-flicker{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}@media(max-width:768px){.achievement-unlock-content{padding:24px;max-width:90%}.achievement-badge{width:80px;height:80px}.achievement-badge i{font-size:36px}.achievement-unlock-header h2{font-size:20px}.achievement-unlock-description{font-size:14px}.level-up-content{padding:20px;max-width:340px}.level-up-header h2{font-size:1.35rem}.level-up-old,.level-up-new{width:56px;height:56px}.level-number{font-size:1.5rem}.level-up-title-display h3{font-size:1.1rem}.rewards-list li{font-size:.8rem;padding:6px 8px}.level-up-progression{gap:12px}}@media(max-width:480px){.achievement-unlock-content{padding:20px}.achievement-badge{width:64px;height:64px;margin-bottom:16px}.achievement-badge i{font-size:28px}.achievement-unlock-header h2{font-size:18px}.level-up-content{padding:16px;max-width:300px}.level-up-header h2{font-size:1.2rem}.level-up-old,.level-up-new{width:48px;height:48px}.level-number,.level-up-arrow{font-size:1.25rem}.level-up-title-display{padding:8px 12px;margin-bottom:12px}.level-up-title-display h3{font-size:1rem}.level-up-rewards{padding:10px;margin-bottom:12px}.level-up-next{padding:8px;margin-bottom:12px}.level-up-close{padding:10px 20px;font-size:.9rem}.level-up-progression{gap:10px;margin-bottom:12px}}.achievement-unlock-modal:focus-within,.level-up-modal:focus-within{outline:none}.achievement-unlock-close:focus,.level-up-close:focus{outline:2px solid var(--color-success, #48bb78);outline-offset:2px}@media(prefers-reduced-motion:reduce){.achievement-unlock-content,.level-up-content,.confetti-piece,.xp-badge{animation:none;transition:none}.achievement-badge:before,.xp-progress-fill:after{animation:none}.streak-indicator i{animation:none}}.daily-challenge-info{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;background:transparent;border-radius:8px;color:#fff;font-weight:700;min-width:auto}.daily-challenge-badge-btn{display:flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,var(--nav-gradient-start, #2e7d32),var(--nav-gradient-end, #1b5e20));border:none;border-radius:6px;padding:.4rem .6rem;color:var(--color-text-light, white);cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s ease;box-shadow:0 2px 4px #0003}.daily-challenge-badge-btn:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0000004d}.daily-challenge-badge-btn:active{transform:translateY(0)}.daily-challenge-badge-btn .fa-trophy{font-size:.85rem;color:gold}.daily-challenge-badge-btn .badge-text{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}@media(max-width:768px){.daily-challenge-badge-btn{background:transparent;padding:0;gap:0;box-shadow:none}.daily-challenge-badge-btn:hover{transform:scale(1.1);box-shadow:none}.daily-challenge-badge-btn .fa-trophy,.daily-challenge-badge-btn .badge-text{display:none}.daily-challenge-badge-btn:before{content:"";font-family:"Font Awesome 6 Free";font-weight:400;font-size:24px;color:gold}}.daily-calendar-btn{position:relative;background:transparent;border:none;padding:0;color:gold;cursor:pointer;font-size:24px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.daily-calendar-btn:hover{color:#ffed4e;transform:scale(1.1)}.daily-calendar-btn:active{transform:scale(.95)}.daily-streak-badge{position:absolute;top:-6px;right:-6px;background:linear-gradient(135deg,#ff6b6b,#ff8e53);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid var(--bg-primary, #1a202c);box-shadow:0 2px 4px #0000004d}.daily-badge{font-size:13px;white-space:nowrap}.daily-streak{font-size:12px;opacity:.95}.daily-challenge-calendar{background:transparent;border-radius:12px;padding:0;max-width:450px;margin:0 auto}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.calendar-month{font-size:20px;font-weight:600;color:#fff}.calendar-nav{display:flex;gap:8px}.calendar-nav-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 14px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.calendar-nav-btn:hover{background:#ffffff26;border-color:#ffffff4d}.calendar-draw-switcher{display:flex;gap:10px;margin-bottom:20px;position:relative;z-index:2}.draw-switch-btn{flex:1;padding:12px;background:#ffffff14;border:2px solid rgba(255,255,255,.15);border-radius:10px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;font-weight:600;font-size:15px;pointer-events:auto;position:relative;z-index:1}.draw-switch-btn:hover{background:#ffffff1f;border-color:var(--border-accent, rgba(46, 125, 50, .5));color:#ffffffe6}.draw-switch-btn.active{background:linear-gradient(135deg,var(--btn-primary-start, #2e7d32),var(--btn-primary-end, #66bb6a));border-color:var(--color-success, #66bb6a);color:#fff;box-shadow:0 4px 12px #2e7d3266}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:10px;text-align:center;font-size:12px;color:#fff9;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:20px}.calendar-day{aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;position:relative;background:#ffffff14;cursor:pointer;font-size:15px;font-weight:500;transition:all .2s ease;border:2px solid transparent;color:#fffc}.calendar-day:hover:not(.empty):not(.future){transform:scale(1.08);background:#ffffff26;border-color:#fff3;color:#fff}.calendar-day.empty{background:transparent;cursor:default}.calendar-day.future{opacity:.25;cursor:default;color:#fff6}.calendar-day.available{border:2px dashed rgba(255,215,0,.4);background:#ffd70014;color:#ffd700e6}.calendar-day.today{border:2px solid var(--color-success, #66bb6a)!important;font-weight:700;box-shadow:0 0 0 2px #66bb6a4d;color:#fff!important}.calendar-day.available:hover{border-color:#ffd70099;background:#ffd70026;color:gold}.calendar-day.available:after{content:"○";position:absolute;bottom:2px;right:4px;font-size:10px;opacity:.6}.calendar-day.completed{background:linear-gradient(135deg,var(--nav-gradient-end, #006400),var(--nav-gradient-start, #2e7d32));color:#fff;font-weight:700}.calendar-day.attempted{background:linear-gradient(135deg,#8b3a3a,#d32f2f);color:#fff;font-weight:700;position:relative}.calendar-day-number{position:absolute;top:4px;right:6px;font-size:11px;font-weight:600;opacity:.95;color:#fff}.calendar-day-icon{font-size:20px;opacity:1;color:#fff}.calendar-day.streak{background:linear-gradient(135deg,var(--nav-gradient-end, #1b5e20),var(--nav-gradient-start, #388e3c));color:#fff}.calendar-day-streak-icon{position:absolute;top:4px;left:6px;font-size:11px;opacity:.95;animation:flame-pulse 1.5s ease-in-out infinite}@keyframes flame-pulse{0%,to{opacity:.95;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.calendar-stats{display:flex;flex-direction:column;gap:14px;padding:18px;background:#00000040;border:1px solid rgba(255,255,255,.15);border-radius:12px;margin-bottom:20px}.calendar-stat-row{display:flex;justify-content:space-between;align-items:center;font-size:15px}.calendar-stat-label{color:#a0aec0;font-weight:500}.calendar-stat-value{font-weight:700;color:#fff;font-size:17px}.calendar-stat-value i{color:var(--color-success, #66bb6a);margin-right:6px}.calendar-play-btn{width:100%;padding:14px;background:linear-gradient(135deg,var(--btn-primary-start, #2e7d32),var(--btn-primary-end, #66bb6a));color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #2e7d324d}.calendar-play-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #2e7d3280}.calendar-play-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:768px){.daily-challenge-calendar{padding:16px;max-width:100%}.calendar-grid{gap:4px}.calendar-day{font-size:12px}}@media print{@page{size:Letter portrait;margin:.75in .5in}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body{margin:0;padding:0;background:#fff;color:#000}}.print-page{width:100%;page-break-after:always;page-break-inside:avoid;background:#fff;color:#000;font-family:Arial,sans-serif;position:relative;padding:.5rem;max-height:100vh;display:flex;flex-direction:column}.print-page:last-child{page-break-after:auto}.print-header{text-align:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid #333;flex-shrink:0}.print-header .custom-title{font-size:24px;margin:0 0 .5rem;font-weight:700}.print-header .header-meta{display:flex;justify-content:center;gap:2rem;font-size:14px;margin-bottom:.5rem}.print-header .difficulty{font-weight:700;text-transform:uppercase}.print-header .branding{font-size:12px;color:#555}.print-footer{margin-top:auto;padding-top:.5rem;border-top:1px solid #999;font-size:10px;color:#666;flex-shrink:0}.print-footer .instructions{margin-bottom:.5rem;font-size:12px}.print-footer .page-number{text-align:center;font-weight:700}.print-footer .print-branding{text-align:center;margin-top:1rem;font-size:10px}.print-footer .print-branding strong{color:#2563eb}.print-footer .premium-note{font-style:italic;color:#888;margin-top:.25rem}.print-footer a{color:#2563eb;text-decoration:none}.puzzles-container{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;align-items:center;flex:1;padding:.5rem 0}.print-page.layout-1 .puzzles-container{justify-content:center;align-items:center}.print-page.layout-2 .puzzles-container{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.25rem}.puzzle-item{page-break-inside:avoid;display:flex;flex-direction:column;align-items:center}.sudoku-grid{border-collapse:collapse;border:3px solid #000;background:#fff;margin:.25rem auto}.sudoku-grid td{text-align:center;vertical-align:middle;font-weight:400;border:1px solid #999;background:#fff;color:#000;font-family:Arial,sans-serif}.sudoku-grid td.given{font-weight:700;background:#f5f5f5}.sudoku-grid td.border-bottom-thick{border-bottom:3px solid #000}.sudoku-grid td.border-right-thick{border-right:3px solid #000}.grid-medium .sudoku-grid{width:320px;height:320px}.grid-medium .sudoku-grid td{width:35px;height:35px;font-size:18px;line-height:35px}.grid-large .sudoku-grid{width:540px;height:540px}.grid-large .sudoku-grid td{width:60px;height:60px;font-size:28px;line-height:60px}.solution-grid .sudoku-grid{border-color:#666}.solution-grid .sudoku-grid td{font-weight:400;background:#fff}.solution-grid .sudoku-grid td.given{background:#eee}.inline-solution{margin-top:2rem;padding-top:1rem;border-top:1px dashed #999}.inline-solution .solution-label{font-weight:700;margin-bottom:.5rem;text-align:center;font-size:14px}.tournament-section{width:100%;max-width:540px;margin-top:1.5rem;padding:1rem;border:2px solid #333;background:#f9f9f9}.tournament-field,.tournament-timer,.tournament-scoring{margin-bottom:.75rem}.tournament-field label,.tournament-timer label,.tournament-scoring label{font-size:13px;font-weight:700;display:block;margin-bottom:.25rem}.tournament-timer{display:flex;gap:1.5rem}.tournament-scoring{display:flex;gap:1.5rem;margin-bottom:0}.educational-section{width:100%;max-width:540px;margin-top:1.5rem}.hints-box{padding:1rem;background:#f0f7ff;border:1px solid #2563eb;border-radius:4px;margin-bottom:1rem}.hints-box h4{margin:0 0 .5rem;font-size:14px;color:#1d4ed8}.hints-box ul{margin:0;padding-left:1.5rem;font-size:12px;line-height:1.6}.hints-box li{margin-bottom:.25rem}.strategies-reminder{font-size:12px;padding:.75rem;background:#fffbeb;border:1px solid #f59e0b;border-radius:4px}.puzzle-metadata{text-align:center;margin-bottom:.5rem;font-size:12px}.puzzle-metadata .puzzle-number{font-weight:700}.puzzle-metadata .difficulty-indicator{color:#666;font-style:italic;margin-left:.5rem}@media print{.no-print{display:none!important}.puzzle-item{page-break-inside:avoid}.sudoku-grid td.given{background:#e5e5e5!important}.hints-box{background:#f0f0f0!important;border-color:#333!important}.strategies-reminder{background:#f5f5f5!important;border-color:#666!important}.tournament-section{background:#f5f5f5!important}*{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.print-page{page-break-after:always}.print-page:last-child{page-break-after:auto}.print-page{padding:0}}@media screen and (max-width:768px){.grid-large .sudoku-grid,.grid-medium .sudoku-grid,.grid-small .sudoku-grid{width:100%;height:auto}.sudoku-grid td{width:auto!important;height:auto!important;aspect-ratio:1}}.print-sudoku-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--color-nav-start) 0%,var(--color-nav-end) 100%);z-index:3000;opacity:0;transition:opacity .3s ease}.print-sudoku-modal.active{display:block;opacity:1}.print-modal-content{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.print-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:2px solid rgba(255,255,255,.2);background:#0003;flex-shrink:0}.print-modal-header h2{color:#fff;font-size:1.25rem;margin:0;font-weight:700;display:flex;align-items:center;gap:.5rem}.print-modal-header h2 i{font-size:1.5rem}.modal-close-btn{background:transparent;border:none;color:#fff;font-size:1.75rem;cursor:pointer;width:36px;height:36px;border-radius:50%;transition:background .2s;line-height:1}.modal-close-btn:hover{background:#ffffff26}.print-modal-body{display:grid;grid-template-columns:320px 1fr;gap:0;flex:1;overflow:hidden}.print-options-panel{background:#00000026;padding:1rem;overflow-y:auto;border-right:2px solid rgba(255,255,255,.1)}.print-preview-panel{background:#f5f5f5;padding:1rem;overflow-y:auto;display:flex;flex-direction:column}.presets-section{margin-bottom:.75rem}.presets-section h3{color:#fff;font-size:.875rem;margin:0 0 .5rem;font-weight:600}.presets-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:.5rem}.preset-card{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:6px;padding:.5rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;color:#fff}.preset-card:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px)}.preset-card i{font-size:1.25rem;color:var(--color-highlight)}.preset-label{font-weight:600;font-size:.75rem}.preset-desc{font-size:.65rem;color:#ffffffb3;line-height:1.2}.presets-divider{text-align:center;margin:.5rem 0;position:relative}.presets-divider:before,.presets-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#ffffff4d}.presets-divider:before{left:0}.presets-divider:after{right:0}.presets-divider span{position:relative;display:inline-block;color:#fff9;font-size:.75rem;text-transform:uppercase;padding:.25rem 1rem;background:var(--color-nav-end);border-radius:12px;z-index:1}.options-form{display:flex;flex-direction:column;gap:.75rem}.option-group{background:#ffffff0d;padding:.75rem;border-radius:6px}.option-group h4{color:#fff;font-size:.875rem;margin:0 0 .5rem;font-weight:600}.option-group label{color:#ffffffe6;font-size:.875rem;display:block;margin-bottom:.4rem}.option-group select,.option-group input[type=number],.option-group input[type=text]{width:100%;padding:.4rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;font-size:.875rem}.option-group select:focus,.option-group input:focus{outline:none;border-color:#fff6;background:#ffffff26}.checkbox-option,.radio-option{display:flex;align-items:center;gap:.5rem;color:#ffffffe6;cursor:pointer;margin-bottom:.5rem}.checkbox-option input[type=checkbox],.radio-option input[type=radio]{cursor:pointer}.radio-group{display:flex;flex-direction:column;gap:.5rem}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #ddd}.preview-header h3{color:#1e3a8a;font-size:1.1rem;margin:0}.preview-page-count{color:#666;font-size:.9rem;font-weight:600}.preview-container{flex:1;background:#fff;border:2px solid #ddd;border-radius:8px;padding:2rem;overflow-y:auto;box-shadow:inset 0 2px 8px #0000000d}.preview-container .print-page{transform:scale(.6);transform-origin:top left;margin-bottom:2rem;box-shadow:0 4px 12px #0000001a;width:166.67%;max-height:none!important;min-height:auto!important;padding:.5rem!important;display:block!important}.preview-container .puzzles-container{min-height:auto!important;flex:0 0 auto!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:flex-start!important;gap:.5rem!important;padding:.25rem!important}.preview-container .print-page.layout-2 .puzzles-container{display:grid!important;grid-template-columns:1fr 1fr!important}.preview-container .sudoku-grid{display:table!important;width:320px!important;height:320px!important;border-collapse:collapse!important;margin:.25rem auto!important;background:#fff!important;border:3px solid #000!important}.preview-container .sudoku-grid tr{display:table-row!important}.preview-container .sudoku-grid td{display:table-cell!important;width:35px!important;height:35px!important;font-size:18px!important;line-height:35px!important;border:1px solid #999!important;background:#fff!important;text-align:center!important;vertical-align:middle!important}.preview-container .puzzle-item{display:flex!important;flex-direction:column!important;align-items:center!important;width:auto!important;height:auto!important;flex:0 0 auto!important}.print-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-top:2px solid rgba(255,255,255,.2);background:#0003;flex-shrink:0}.footer-hint{display:flex;align-items:center;gap:.5rem;color:#fffc;font-size:.85rem;font-style:italic}.footer-hint i{color:var(--color-highlight);font-size:1rem}.footer-actions{display:flex;gap:.75rem}.btn-secondary,.btn-primary{padding:.6rem 1.25rem;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.4rem}.btn-secondary{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3)}.btn-secondary:hover{background:#fff3}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#000!important;border:2px solid #34d399}.btn-primary:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.btn-primary i{color:#000!important}@media(max-width:1024px){.print-modal-body{grid-template-columns:1fr}.print-preview-panel{display:none}.print-options-panel{border-right:none}}@media(max-width:640px){.presets-grid{grid-template-columns:1fr}.footer-hint{display:none}.print-modal-footer{justify-content:flex-end}.print-modal-content{max-width:100%;max-height:100vh;border-radius:0}.print-modal-header,.print-modal-footer,.print-options-panel{padding:1rem}}html{scroll-behavior:smooth}.content-page-body{font-family:var(--font-body, "Segoe UI", Tahoma, Geneva, Verdana, sans-serif);background:linear-gradient(135deg,#1e4620,#2d5a2e,#1e4620);min-height:100vh;padding:0;margin:0;line-height:1.6;color:#333}.content-page h2[id],.content-page h3[id],.content-page h4[id]{scroll-margin-top:2rem}.content-page{max-width:900px;margin:2rem 1rem;padding:3rem;background:#fffffffa;border-radius:16px;box-shadow:0 10px 40px #0000004d;backdrop-filter:blur(10px)}@media(min-width:940px){.content-page{margin:2rem auto}}.content-page-wide{max-width:1200px}.content-page-narrow{max-width:700px}.content-page h1{font-size:2.25rem;font-weight:700;color:#006400;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:4px solid #006400;line-height:1.2;text-align:center}.content-page h2{font-size:2rem;font-weight:700;color:#2e7d32;margin-top:3rem;margin-bottom:1.5rem;padding:.75rem 0 .75rem 1rem;border-left:5px solid #2e7d32;border-bottom:2px solid #e0e0e0;line-height:1.3;background:linear-gradient(to right,rgba(46,125,50,.05) 0%,transparent 100%)}.content-page h3{font-size:1.5rem;font-weight:600;color:#388e3c;margin-top:2rem;margin-bottom:1rem;line-height:1.4}.content-page h4{font-size:1.25rem;font-weight:600;color:#43a047;margin-top:1.5rem;margin-bottom:.75rem;line-height:1.4}.content-page h5,.content-page h6{font-size:1.125rem;font-weight:600;color:#4caf50;margin-top:1.25rem;margin-bottom:.5rem}.content-page p{font-size:1.125rem;line-height:1.8;margin-bottom:1.25rem;color:#333}.content-page .lead{font-size:1.25rem;line-height:1.7;color:#555;margin-bottom:2rem}.content-page ul,.content-page ol{font-size:1.125rem;line-height:1.8;margin-bottom:1.5rem;padding-left:2rem}.content-page li{margin-bottom:.75rem;color:#333}.content-page li:last-child{margin-bottom:0}.content-page ul ul,.content-page ol ol,.content-page ul ol,.content-page ol ul{margin-top:.5rem;margin-bottom:.5rem}.content-page li i.fas,.content-page li i.far{margin-right:.5rem;width:1.25rem;display:inline-block}.content-page a{color:#1976d2;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.content-page a:hover{color:#1565c0;border-bottom:1px solid #1565c0}.content-page a:focus{outline:2px solid #1976d2;outline-offset:2px}.content-page .info-box{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:5px solid #1976d2;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .success-box{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-left:5px solid #4caf50;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .warning-box{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-left:5px solid #ff9800;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .tip-box{background:linear-gradient(135deg,#e0f2f1,#b2dfdb);border-left:5px solid #009688;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .strategy-box{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-left:5px solid #9c27b0;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .highlight-box{background:#f5f5f5;border-left:5px solid #666;padding:1.5rem;margin:1.5rem 0;border-radius:8px}.content-page .info-box h3,.content-page .success-box h3,.content-page .warning-box h3,.content-page .tip-box h3,.content-page .strategy-box h3,.content-page .highlight-box h3{margin-top:0;font-size:1.25rem}.content-page table{width:100%;border-collapse:collapse;margin:2rem 0;background:#fff;box-shadow:0 2px 8px #0000001a;border-radius:8px;overflow:hidden}.content-page thead{background:linear-gradient(135deg,#2e7d32,#388e3c)}.content-page th{padding:1.25rem;text-align:left;color:#fff;font-weight:600;font-size:1.125rem;border-bottom:3px solid #1b5e20}.content-page td{padding:1rem 1.25rem;border-bottom:1px solid #e0e0e0;font-size:1rem;color:#333}.content-page tr:hover{background:#f5f5f5}.content-page tr:last-child td{border-bottom:none}.content-page .table-wrapper{overflow-x:auto;margin:2rem 0}.content-page .cta-button{display:inline-block;padding:1rem 2rem;background:linear-gradient(135deg,#2e7d32,#388e3c);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:1.125rem;transition:all .3s ease;border:none;cursor:pointer;box-shadow:0 4px 12px #2e7d324d}.content-page .cta-button:hover{background:linear-gradient(135deg,#388e3c,#43a047);transform:translateY(-2px);box-shadow:0 6px 16px #2e7d3266;border-bottom:none}.content-page .cta-button:active{transform:translateY(0)}.content-page .secondary-button{background:linear-gradient(135deg,#1976d2,#1e88e5);box-shadow:0 4px 12px #1976d24d}.content-page .secondary-button:hover{background:linear-gradient(135deg,#1e88e5,#2196f3);box-shadow:0 6px 16px #1976d266}.content-page img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #00000026;margin:1.5rem 0}.content-page .img-center{display:block;margin:2rem auto}.content-page figure{margin:2rem 0}.content-page figcaption{text-align:center;font-size:.95rem;color:#666;margin-top:.75rem;font-style:italic}.content-page svg{max-width:100%;height:auto;margin:2rem 0}.content-page code{background:#f5f5f5;padding:.2rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.95rem;color:#d32f2f}.content-page pre{background:#2d2d2d;color:#f8f8f2;padding:1.5rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;font-family:Courier New,monospace;font-size:.95rem;line-height:1.6}.content-page pre code{background:none;padding:0;color:inherit}.content-page .breadcrumbs{font-size:.95rem;margin-bottom:2rem;color:#666}.content-page .breadcrumbs a{color:#1976d2}.content-page .breadcrumbs span{margin:0 .5rem}.content-page .toc{background:#f5f5f5;padding:1.5rem;border-radius:8px;margin:2rem 0}.content-page .toc h3{margin-top:0;font-size:1.25rem;color:#2e7d32}.content-page .toc ul{list-style:none;padding-left:1rem}.content-page .toc li{margin-bottom:.5rem}.content-page .toc a{color:#1976d2;text-decoration:none}.content-page .toc a:hover{text-decoration:underline}.content-page footer{margin-top:3rem;padding-top:2rem;border-top:2px solid #e0e0e0;color:#666;font-size:.95rem}.content-page .last-updated{color:#999;font-size:.9rem;font-style:italic}.content-page .tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.content-page .tag{background:#e0e0e0;padding:.3rem .75rem;border-radius:20px;font-size:.9rem;color:#333}@media(max-width:768px){.content-page{padding:2rem;margin:1rem auto}.content-page h1{font-size:1.875rem}.content-page h2{font-size:1.5rem}.content-page h3{font-size:1.25rem}.content-page p,.content-page li{font-size:1rem}.content-page .cta-button{display:block;text-align:center}}@media(max-width:480px){.content-page{padding:1.5rem;margin:.5rem;border-radius:12px}.content-page h1{font-size:1.625rem}.content-page h2{font-size:1.375rem}.content-page h3{font-size:1.125rem}.content-page p,.content-page li{font-size:.95rem}.content-page table{font-size:.85rem}.content-page th,.content-page td{padding:.75rem .5rem}}@media print{.content-page-body{background:#fff;padding:0}.content-page{box-shadow:none;max-width:100%;padding:0}.content-page a{color:#000;text-decoration:underline}.content-page .cta-button{display:none}}.content-page *:focus{outline:2px solid #1976d2;outline-offset:2px}.content-page .skip-link{position:absolute;top:-40px;left:0;background:#000;color:#fff;padding:8px;text-decoration:none;z-index:100}.content-page .skip-link:focus{top:0}@media(prefers-contrast:high){.content-page{border:2px solid #000}.content-page a{text-decoration:underline}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.content-page *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.content-page .alphabetical-nav{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;padding:1.5rem;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-radius:12px;margin:2rem 0;box-shadow:0 2px 8px #0000001a}.content-page .alphabetical-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:.5rem;background:#fff;color:#2e7d32;font-weight:600;font-size:1.1rem;text-decoration:none;border:2px solid #2e7d32;border-radius:8px;transition:all .2s ease}.content-page .alphabetical-nav a:hover{background:#2e7d32;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #2e7d324d}.content-page .alphabetical-nav a:active{transform:translateY(0)}.content-page h2[id]{font-size:2.5rem;font-weight:700;color:#2e7d32;margin-top:3rem;margin-bottom:2rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-left:6px solid #2e7d32;border-radius:8px;text-align:left}.content-page .term-entry{background:#f9f9f9;border-left:4px solid #4caf50;padding:1.5rem;margin:1.5rem 0;border-radius:8px;transition:all .2s ease}.content-page .term-entry:hover{background:#f0f0f0;border-left-color:#2e7d32;box-shadow:0 2px 8px #0000001a}.content-page .term-name{font-size:1.5rem;font-weight:700;color:#1b5e20;margin-bottom:.5rem}.content-page .term-category{display:inline-block;padding:.25rem .75rem;background:#4caf50;color:#fff;font-size:.85rem;font-weight:600;border-radius:20px;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.content-page .term-definition{font-size:1.05rem;line-height:1.7;color:#333;margin:1rem 0}.content-page .term-example{font-style:italic;color:#555;background:#fff;padding:.75rem 1rem;border-left:3px solid #81c784;margin:.75rem 0;border-radius:4px}.content-page .term-example:before{content:"💡 ";margin-right:.5rem}.content-page .game-specific{background:linear-gradient(135deg,#fff3e0,#ffe0b2);padding:.75rem 1rem;border-left:3px solid #ff9800;margin:.75rem 0;border-radius:4px;font-size:.95rem}.content-page .game-specific strong{color:#e65100}.content-page .related-terms{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #ddd;font-size:.95rem;color:#666}.content-page .related-terms a{color:#1976d2;font-weight:600}.content-page .related-terms a:hover{color:#1565c0;text-decoration:underline}.content-page .intro{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:1.5rem;border-radius:12px;border-left:5px solid #1976d2;margin:2rem 0;font-size:1.1rem}.content-page .intro p{margin-bottom:0}.content-page img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:1.5rem 0}.content-page .guide-image,.content-page .tutorial-image{display:block;margin:2rem auto;border:1px solid #e0e0e0}.content-page .hero-image,.content-page .featured-image{width:100%;max-width:100%;height:auto;-o-object-fit:contain;object-fit:contain;margin:2rem 0;border-radius:12px;box-shadow:0 4px 16px #00000026;color-interpolation-filters:sRGB;image-rendering:auto}.content-page .infographic-image{display:block;margin:2rem auto;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 4px 12px #0000001a}.content-page .image-caption{display:block;text-align:center;font-size:.9rem;color:#666;font-style:italic;margin-top:-.5rem;margin-bottom:1.5rem}@media(max-width:768px){.content-page img{margin:1rem 0}.content-page .guide-image,.content-page .tutorial-image,.content-page .infographic-image{margin:1.5rem auto}}.cta-button{display:inline-block;padding:1rem 2.5rem;background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;text-decoration:none;font-weight:700;font-size:1.15rem;border-radius:8px;margin:1.5rem 0;transition:all .3s ease;box-shadow:0 4px 12px #0003}.cta-button:hover{background:linear-gradient(135deg,#1b5e20,#2e7d32);box-shadow:0 6px 16px #0000004d;transform:translateY(-2px)}.game-card{display:inline-block;margin:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#f1f8e9,#dcedc8);border:2px solid #2e7d32;border-radius:6px;text-decoration:none;color:#1b5e20;font-weight:600;transition:all .2s ease}.game-card:hover{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.faq-section{margin-top:3rem}.faq-item{margin-bottom:2rem}.faq-question{color:#2e7d32;font-size:1.2rem;font-weight:600;margin-bottom:.5rem}.faq-answer{color:#333;line-height:1.8;margin-left:1rem}.back-link{display:inline-block;margin-top:2rem;color:#006400;text-decoration:none;font-weight:700;padding:.75rem 1.5rem;border:2px solid #006400;border-radius:6px;transition:all .2s ease}.back-link:hover{background:#006400;color:#fff}.game-card:focus,.cta-button:focus,.back-link:focus{outline:3px solid #ffd700;outline-offset:2px}.game-card:focus{background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff}@media(max-width:768px){.cta-button{padding:1.25rem 2.5rem;font-size:1.2rem;width:100%;max-width:400px;display:block;margin-left:auto;margin-right:auto}}.content-page-header{width:100%;background:linear-gradient(135deg,#006400,#004d00);box-shadow:0 2px 8px #00000026;position:relative;border-bottom:1px solid rgba(255,255,255,.1)}.header-container{max-width:1200px;margin:0 auto;padding:.6rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.header-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;transition:opacity .2s}.header-brand:hover{opacity:.9}.header-logo{width:36px;height:36px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.header-title{font-size:.95rem;font-weight:600;color:#fff!important;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.2)}.content-page-header .header-title{display:inline}.content-page-header .breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#fffc}.content-page-header .breadcrumb a{color:#ffffffe6;text-decoration:none;transition:color .2s ease}.content-page-header .breadcrumb a:hover,.content-page-header .breadcrumb span{color:#fff}@media(max-width:768px){.header-container{flex-direction:column;align-items:flex-start;gap:.5rem}.content-page-header .breadcrumb{font-size:.8rem}}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:50px;height:50px;background:linear-gradient(135deg,#2e7d32,#1b5e20);color:#fff;border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;opacity:0;visibility:hidden;transition:all .3s ease;box-shadow:0 4px 12px #0000004d;z-index:999}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:linear-gradient(135deg,#1b5e20,#2e7d32);transform:translateY(-3px);box-shadow:0 6px 16px #0006}.back-to-top:focus{outline:3px solid #ffd700;outline-offset:2px}@media(max-width:768px){.back-to-top{bottom:1rem;right:1rem;width:45px;height:45px}}.card-stack .card{--card-index: 0;top:calc(var(--card-index) * var(--game-card-overlap, 25px))}.is-dragging{opacity:.8;z-index:1000;cursor:grabbing}.is-valid-target{box-shadow:0 0 10px var(--color-success)}.is-invalid-target{animation:shake .3s ease}.is-highlighted{animation:hintGlow 1s ease-in-out infinite}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.m-auto{margin:auto}.text-center{text-align:center}.text-sm{font-size:var(--text-sm)}.text-lg{font-size:var(--text-lg)}.font-bold{font-weight:var(--font-bold)}.sudoku-site-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:linear-gradient(135deg,var(--color-nav-start) 0%,var(--color-nav-end) 100%);border-bottom:1px solid var(--color-nav-border);position:sticky;top:0;z-index:100}.site-brand{display:flex;align-items:center;gap:.5rem}.site-logo{font-size:1.5rem;color:var(--color-highlight)}.site-logo-img{width:56px;height:56px;border-radius:10px;-o-object-fit:contain;object-fit:contain}.site-name{font-size:1.1rem;font-weight:700;color:var(--color-text-light, #ffffff);font-family:Poppins,sans-serif}.site-nav{display:flex;align-items:center;gap:.5rem}.site-nav .nav-link{display:flex;align-items:center;gap:.3rem;padding:.4rem .7rem;color:var(--color-text-light, #ffffff);text-decoration:none;font-size:.85rem;font-weight:500;border-radius:6px;transition:all .2s ease;background:var(--color-btn-secondary-start);border:1px solid transparent}.site-nav .nav-link:hover{background:var(--color-btn-primary-start);border-color:var(--color-border-accent);transform:translateY(-1px)}.site-nav .nav-link i{font-size:.9rem}.site-nav .nav-link.solitaire-link .solitaire-logo{width:20px;height:20px;-o-object-fit:contain;object-fit:contain;border-radius:3px}.site-nav .nav-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-btn-secondary-start);border:1px solid transparent;border-radius:6px;color:var(--color-text-light, #ffffff);cursor:pointer;transition:all .2s ease}.site-nav .nav-btn:hover{background:var(--color-btn-primary-start);border-color:var(--color-border-accent);transform:translateY(-1px)}.nav-dropdown{position:relative}.nav-dropdown .dropdown-toggle{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:linear-gradient(135deg,var(--color-btn-primary-start) 0%,var(--color-btn-primary-end) 100%);border:1px solid var(--color-border-accent);border-radius:6px;color:var(--color-text-light, #ffffff);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:auto;height:auto}.nav-dropdown .dropdown-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}#language-dropdown .dropdown-toggle{width:36px;height:36px;padding:0;background:var(--color-btn-secondary-start);border:1px solid transparent}#language-dropdown .dropdown-toggle:hover{background:var(--color-btn-primary-start);border-color:var(--color-border-accent);box-shadow:none}.nav-dropdown .dropdown-arrow{font-size:.65rem;transition:transform .2s ease}.nav-dropdown.open .dropdown-arrow{transform:rotate(180deg)}.nav-dropdown .dropdown-menu{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);min-width:150px;background:var(--color-modal-bg, #1a1f2e);border:1px solid var(--color-border-accent);border-radius:8px;box-shadow:0 8px 24px #0006;opacity:0;visibility:hidden;transform:translate(-50%) translateY(-10px);transition:all .2s ease;z-index:200;overflow:hidden}.nav-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.nav-dropdown .dropdown-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.7rem 1rem;background:transparent;border:none;color:var(--color-text-light, #ffffff);font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s ease;text-align:left}.nav-dropdown .dropdown-item:hover{background:var(--color-btn-primary-start)}.nav-dropdown .dropdown-item i{width:18px;text-align:center;opacity:.8}.nav-dropdown .dropdown-item[data-difficulty=beginner] i{color:#4ade80}.nav-dropdown .dropdown-item[data-difficulty=easy] i{color:#60a5fa}.nav-dropdown .dropdown-item[data-difficulty=hard] i{color:#f97316}.nav-dropdown .dropdown-item[data-difficulty=xtreme] i{color:#ef4444}.nav-dropdown .language-option{display:flex;align-items:center;gap:10px}.nav-dropdown .language-option .lang-flag{font-size:1.2em;min-width:24px}.nav-dropdown .language-option.active{background:#2563eb26;border-left:3px solid #2563eb;padding-left:9px}.sudoku-settings-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000}.sudoku-settings-content{background:var(--sudoku-container-bg, rgba(27, 38, 59, .98));border-radius:12px;padding:1.5rem;max-width:400px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 24px #00000080;border:1px solid var(--color-border-accent, #415a77)}.sudoku-settings-content h2{color:var(--color-text-primary, #e0e1dd);margin:0 0 1.5rem;font-size:1.3rem;display:flex;align-items:center;gap:.5rem}.settings-group{margin-bottom:1.5rem}.settings-group label{display:block;color:var(--color-text-heading, #778da9);font-size:.85rem;font-weight:600;margin-bottom:.5rem}.theme-options{display:flex;gap:.5rem;flex-wrap:wrap}.theme-btn{flex:1;min-width:80px;padding:.6rem .8rem;background:var(--color-bg-primary, #0d1b2a);border:2px solid var(--color-border-accent, #415a77);border-radius:8px;color:var(--color-text-primary, #e0e1dd);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.theme-btn:hover{border-color:var(--color-stats-highlight, #778da9);transform:translateY(-2px)}.theme-btn.active{background:var(--color-btn-primary-start, #415a77);border-color:var(--color-highlight, #fbbf24)}.difficulty-selector{display:flex;gap:.5rem;flex-wrap:wrap}.difficulty-btn{flex:1;min-width:80px;padding:.6rem .8rem;background:var(--color-bg-primary, #0d1b2a);border:2px solid var(--color-border-accent, #415a77);border-radius:8px;color:var(--color-text-primary, #e0e1dd);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.3rem}.difficulty-btn:hover{border-color:var(--color-stats-highlight, #778da9);transform:translateY(-2px)}.difficulty-btn.active{background:var(--color-btn-primary-start, #415a77);border-color:var(--color-highlight, #fbbf24)}.toggle-setting{display:flex;align-items:center;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid rgba(65,90,119,.3)}.toggle-setting:last-child{border-bottom:none}.toggle-setting span{color:var(--color-text-primary, #e0e1dd);font-size:.9rem}.toggle-switch{position:relative;width:48px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--color-bg-primary, #0d1b2a);border:2px solid var(--color-border-accent, #415a77);border-radius:26px;transition:all .3s ease}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background:var(--color-text-primary, #e0e1dd);border-radius:50%;transition:all .3s ease}.toggle-switch input:checked+.toggle-slider{background:var(--color-success, #4ade80);border-color:var(--color-success, #4ade80)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.settings-close-btn{width:100%;padding:.8rem;background:var(--color-btn-primary-start, #415a77);color:var(--color-text-light, #ffffff);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1rem}.settings-close-btn:hover{background:var(--color-btn-primary-hover-start, #778da9)}.stats-group label{display:flex;align-items:center;gap:.5rem}.stats-group label i{color:var(--color-highlight, #60a5fa)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.5rem}.stat-item{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;background:var(--color-bg-tertiary, rgba(255, 255, 255, .05));border-radius:8px;border:1px solid var(--color-border-accent, rgba(255, 255, 255, .1))}.stat-value{font-size:1.25rem;font-weight:700;color:var(--color-highlight, #60a5fa);line-height:1.2}.stat-label{font-size:.7rem;color:var(--color-text-muted, #94a3b8);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem;text-align:center}@media(max-width:480px){.sudoku-site-header{padding:.5rem .75rem}.site-name{font-size:1rem}.site-logo{font-size:1.3rem}.site-nav .nav-link span{display:none}.site-nav .nav-link{padding:.4rem;width:36px;height:36px;justify-content:center}.site-nav .nav-link i{font-size:1rem}.nav-dropdown .dropdown-toggle span{display:none}.nav-dropdown .dropdown-toggle{padding:.4rem .6rem;gap:.3rem}.nav-dropdown .dropdown-menu{left:0;transform:translate(0);min-width:140px}.nav-dropdown.open .dropdown-menu{transform:translate(0) translateY(0)}.daily-challenge-btn span{display:none}.daily-challenge-btn{padding:.4rem .6rem;gap:.3rem}.print-puzzles-btn span{display:none}.print-puzzles-btn{padding:.4rem .6rem;gap:.3rem}.stats-grid{grid-template-columns:repeat(2,1fr)}}body:has(.sudoku-container){--sudoku-primary: var(--color-btn-primary-start, #415a77);--sudoku-primary-dark: var(--color-btn-primary-end, #1b263b);--sudoku-primary-light: var(--color-stats-highlight, #778da9);--sudoku-primary-lighter: var(--color-text-heading-secondary, #a8b4c4);--sudoku-primary-lightest: var(--color-stats-border, rgba(119, 141, 169, .5));--sudoku-accent: var(--color-highlight, #fbbf24);--sudoku-accent-secondary: var(--color-warning, #fbbf24);--sudoku-error: var(--color-error, #f87171);--sudoku-success: var(--sudoku-success, var(--color-success, #10b981));--sudoku-cell-selected-bg: var(--sudoku-cell-selected, rgba(61, 90, 128, .6));--sudoku-cell-highlighted-bg: var(--sudoku-cell-highlighted, rgba(100, 140, 180, .15));--sudoku-cell-same-bg: var(--sudoku-cell-same-number, rgba(140, 170, 200, .25));--sudoku-given-text: var(--sudoku-given-color, #e0e1dd);--sudoku-user-text: var(--sudoku-user-color, #60a5fa);--sudoku-pencil-text: var(--sudoku-pencil-color, #778da9);--sudoku-container-background: var(--sudoku-container-bg, rgba(27, 38, 59, .95));--sudoku-grid-border-color: var(--sudoku-grid-border, #5a7a9a);--sudoku-box-border-color: var(--sudoku-box-border, #8fa8c8);--sudoku-btn-bg: var(--color-bg-primary, #0d1b2a);--sudoku-btn-border: var(--color-border-accent, #415a77);--sudoku-btn-text: var(--color-text-primary, #e0e1dd);--sudoku-btn-hover-bg: var(--color-btn-primary-start, #415a77)}#game-area:has(.sudoku-container){overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:.5rem}[data-theme=light-blue] #game-area:has(.sudoku-container){background:#fff;background-image:none}[data-theme=light-blue] .validate-btn{background:#dcfce7;color:#059669;border-color:#86efac}[data-theme=light-blue] .validate-btn:hover:not(:disabled){background:#bbf7d0;border-color:#059669}.sudoku-game-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;background:var(--sudoku-container-background);border-bottom:1px solid var(--sudoku-cell-border);flex-shrink:0;flex-wrap:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-mode-info{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.game-mode-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.game-mode-badge.daily{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.game-mode-badge .mode-label{line-height:1}.challenge-date{font-size:.75rem;color:var(--sudoku-given-text);font-weight:500;padding:.2rem .4rem;background:var(--sudoku-cell-highlighted-bg, rgba(255,255,255,.1));border-radius:4px;line-height:1.2;white-space:nowrap}.difficulty-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;line-height:1}.difficulty-badge .difficulty-label{line-height:1}.difficulty-badge.difficulty-beginner{background:#22c55e33;color:#4ade80}.difficulty-badge.difficulty-easy{background:#3b82f633;color:#60a5fa}.difficulty-badge.difficulty-hard{background:#f9731633;color:#fb923c}.difficulty-badge.difficulty-xtreme{background:#ef444433;color:#f87171}.game-stats-group{display:flex;flex-direction:row;align-items:center;gap:.5rem}.game-stats-group .stat-item{display:flex;flex-direction:row;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;color:var(--sudoku-given-text);background:none;border:none;padding:0}.stat-item .stat-icon{font-size:.65rem;opacity:.7}.stat-item.mistakes .stat-icon{color:#f87171}.stat-item.hints .stat-icon{color:#fbbf24}.stat-item .stat-value{min-width:1ch;text-align:center}.timer-group{display:flex;align-items:center;gap:.4rem;margin-left:auto}.timer-btn{background:var(--sudoku-primary, #2563eb);border:none;border-radius:4px;padding:.35rem;width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.timer-btn:hover{background:var(--sudoku-primary-light, #3b82f6);transform:scale(1.05)}.timer-btn:focus{outline:2px solid var(--sudoku-primary-light, #3b82f6);outline-offset:2px}.timer-btn .timer-icon{font-size:.7rem;color:#fff;line-height:1}.timer-display{font-size:1rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--sudoku-given-text);padding:.25rem .5rem;background:var(--sudoku-cell-highlighted-bg, rgba(255,255,255,.1));border-radius:4px;min-width:3.5rem;text-align:center;letter-spacing:.02em}.sudoku-header-print-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .7rem;background:linear-gradient(135deg,var(--sudoku-primary, #2563eb) 0%,var(--sudoku-primary-light, #3b82f6) 100%);border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.sudoku-header-print-btn:hover{background:linear-gradient(135deg,var(--sudoku-primary-light, #3b82f6) 0%,var(--sudoku-primary, #2563eb) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.sudoku-header-print-btn:active{transform:translateY(0)}.sudoku-header-print-btn:focus{outline:2px solid var(--sudoku-primary-light, #3b82f6);outline-offset:2px}.sudoku-header-print-btn i{font-size:.9rem;line-height:1}[data-theme=light-blue] .game-mode-badge.daily{background:linear-gradient(135deg,#f59e0b,#d97706)}[data-theme=light-blue] .difficulty-badge.difficulty-beginner{background:#22c55e26;color:#16a34a}[data-theme=light-blue] .difficulty-badge.difficulty-easy{background:#3b82f626;color:#2563eb}[data-theme=light-blue] .difficulty-badge.difficulty-hard{background:#f9731626;color:#ea580c}[data-theme=light-blue] .difficulty-badge.difficulty-xtreme{background:#ef444426;color:#dc2626}[data-theme=light-blue] .stat-item.mistakes .stat-icon{color:#dc2626}[data-theme=light-blue] .stat-item.hints .stat-icon{color:#d97706}[data-theme=light-blue] .daily-challenge-modal{background:#f8fafc;border:1px solid #cbd5e1}[data-theme=light-blue] .daily-modal-header h2{color:#1e293b}[data-theme=light-blue] .difficulty-tabs{background:#e2e8f0;border-bottom:1px solid #cbd5e1}[data-theme=light-blue] .diff-tab{color:#475569}[data-theme=light-blue] .diff-tab:hover{color:#1e293b;background:#0000000d}[data-theme=light-blue] .diff-tab.active{color:#1e293b;background:#2563eb1a;border-bottom-color:#2563eb}[data-theme=light-blue] .diff-tab.active.difficulty-beginner{border-bottom-color:#22c55e}[data-theme=light-blue] .diff-tab.active.difficulty-easy{border-bottom-color:#3b82f6}[data-theme=light-blue] .diff-tab.active.difficulty-hard{border-bottom-color:#f97316}[data-theme=light-blue] .diff-tab.active.difficulty-xtreme{border-bottom-color:#ef4444}[data-theme=light-blue] .calendar-nav-btn{color:#475569;background:#e2e8f0}[data-theme=light-blue] .calendar-nav-btn:hover{color:#1e293b;background:#cbd5e1}[data-theme=light-blue] .calendar-month-year{color:#1e293b}[data-theme=light-blue] .calendar-weekday{color:#64748b}[data-theme=light-blue] .calendar-day{color:#334155;background:#f1f5f9}[data-theme=light-blue] .calendar-day:hover:not(.empty):not(.future){background:#e2e8f0}[data-theme=light-blue] .calendar-day.today{border-color:#2563eb}[data-theme=light-blue] .calendar-day.completed{background:#22c55e26;color:#166534}[data-theme=light-blue] .calendar-day.future{color:#94a3b8;background:#f8fafc}.sudoku-container{width:100%;max-width:600px;max-height:100%;margin:0 auto;padding:15px;font-family:Arial,sans-serif;display:flex;flex-direction:column;gap:.5rem;background:var(--sudoku-container-background);border-radius:12px;box-shadow:0 4px 20px #0000004d}.sudoku-stats{display:flex;gap:.5rem;font-size:.75rem;color:var(--sudoku-given-text);font-weight:500}.mistakes-icon,.hints-icon{display:none}.mistakes-text,.hints-text{display:inline}.sudoku-grid-wrapper{flex:1;display:flex;align-items:center;justify-content:center;min-height:0}.sudoku-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:0;background:var(--sudoku-grid-border, #5a7a9a);border:3px solid var(--sudoku-box-border, #8fa8c8);border-radius:4px;padding:0;width:min(80vw,55vh,500px);height:min(80vw,55vh,500px);aspect-ratio:1;flex-shrink:1}.sudoku-cell{background:var(--sudoku-cell-bg, #1b263b);border:1px solid var(--sudoku-cell-border, #4a6a8a);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;font-size:clamp(1.2rem,4vw,2rem);transition:all .15s ease;aspect-ratio:1;min-height:0;box-sizing:border-box;overflow:hidden}.sudoku-cell:nth-child(3n){border-right:2px solid var(--sudoku-box-border, #8fa8c8)}.sudoku-cell:nth-child(n+19):nth-child(-n+27),.sudoku-cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid var(--sudoku-box-border, #8fa8c8)}.sudoku-cell.given .cell-value{color:var(--sudoku-given-text);font-weight:700;font-family:Arial,sans-serif}.sudoku-cell:not(.given) .cell-value{color:var(--sudoku-user-text);font-weight:600;font-family:Arial,sans-serif}.sudoku-cell.selected{background:var(--sudoku-cell-selected-bg);border:2px solid var(--sudoku-primary-light);box-shadow:inset 0 0 0 2px var(--sudoku-primary)}.sudoku-cell.highlighted{background:var(--sudoku-cell-highlighted-bg);box-shadow:inset 0 0 3px #78a0c833}.sudoku-cell.same-number{background:var(--sudoku-cell-same-bg);box-shadow:inset 0 0 5px #8cb4dc40}.sudoku-cell.error{background:var(--sudoku-error-bg, rgba(248, 113, 113, .3));animation:errorPulse .5s ease}@keyframes errorPulse{0%,to{background:var(--sudoku-error-bg, rgba(248, 113, 113, .3))}50%{background:var(--sudoku-error, #f87171)}}.pencil-notes{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);width:100%;height:100%;padding:0;gap:0}.pencil-note{font-size:clamp(.5rem,1.5vw,.7rem);color:transparent;display:flex;align-items:center;justify-content:center}.pencil-note.visible{color:var(--sudoku-pencil-text);font-weight:500}.sudoku-controls{display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.sudoku-actions{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.sudoku-btn{padding:.4rem .8rem;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border:2px solid var(--sudoku-btn-border);border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.3rem;white-space:nowrap}.sudoku-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light);transform:translateY(-2px);box-shadow:0 4px 8px #415a774d}.sudoku-btn:active:not(:disabled){transform:translateY(0)}.sudoku-btn:disabled{opacity:.4;cursor:not-allowed}.sudoku-btn.active{background:var(--sudoku-primary);color:var(--color-text-light, #ffffff)}.validate-btn{background:var(--sudoku-btn-highlight-bg, var(--sudoku-cell-highlighted-bg));color:var(--sudoku-success);border-color:var(--sudoku-btn-border)}.validate-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-success)}.print-btn{background:var(--sudoku-btn-highlight-bg, var(--sudoku-cell-highlighted-bg));color:var(--sudoku-btn-text);border-color:var(--sudoku-btn-border)}.print-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.sudoku-number-pad{display:flex;justify-content:center;align-items:center;gap:.4rem;max-width:100%;margin:0 auto 1rem;padding:0 .5rem}.number-btn{width:36px;height:36px;flex-shrink:0;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border:2px solid var(--sudoku-btn-border);border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.number-btn:hover{background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light);transform:scale(1.1)}.number-btn:active{transform:scale(.95)}.clear-btn{width:auto;padding:0 .8rem;font-size:.85rem;background:var(--sudoku-error-bg, rgba(248, 113, 113, .3));color:var(--sudoku-error);border-color:var(--sudoku-error)}.clear-btn:hover{background:var(--sudoku-error);color:var(--color-text-light, #ffffff);border-color:var(--sudoku-error)}.sudoku-master-overlay{position:fixed;bottom:1rem;right:1rem;width:360px;max-width:calc(100vw - 2rem);max-height:calc(100vh - 120px);z-index:9999;animation:slideInRight .4s ease;pointer-events:none}@keyframes slideInRight{0%{transform:translate(420px);opacity:0}to{transform:translate(0);opacity:1}}.master-teaching-panel{background:linear-gradient(135deg,var(--sudoku-primary) 0%,var(--sudoku-primary-dark) 100%);border-radius:16px;padding:1rem;box-shadow:0 10px 40px #415a7766,0 0 0 2px var(--sudoku-primary-light);pointer-events:auto;overflow-y:auto;max-height:calc(100vh - 120px)}.master-character{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;padding-bottom:.8rem;border-bottom:2px solid var(--sudoku-primary-light)}.master-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--sudoku-primary-light) 0%,var(--sudoku-primary) 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 4px 15px #415a7780;flex-shrink:0;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.master-intro{flex:1;min-width:0}.master-name{font-size:1.1rem;font-weight:700;color:var(--color-text-light, #ffffff);margin:0 0 .2rem}.master-title{font-size:.75rem;color:var(--color-text-muted, rgba(255, 255, 255, .8));margin:0}.master-message{background:var(--sudoku-container-background);border-radius:10px;padding:1rem;margin-bottom:1rem;color:var(--sudoku-given-text);line-height:1.5}.master-message h3{margin:0 0 .6rem;color:var(--sudoku-primary-light);font-size:1rem}.master-message p{margin:0 0 .6rem;font-size:.85rem}.master-message p:last-child{margin-bottom:0}.master-message .highlight{background:var(--sudoku-cell-highlighted-bg);padding:.15rem .4rem;border-radius:3px;font-weight:600;color:var(--sudoku-user-text)}.reason-list{background:var(--sudoku-cell-highlighted-bg);border-left:3px solid var(--sudoku-primary-light);padding:.6rem .8rem;margin:.6rem 0;border-radius:4px;font-size:.8rem}.reason-list li{margin:.3rem 0;color:var(--sudoku-given-text);font-weight:500}.master-options{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;margin-bottom:.8rem}.master-option-btn{min-width:50px;height:50px;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border:3px solid var(--sudoku-primary-light);border-radius:10px;font-size:1.5rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 3px 8px #415a774d}.master-option-btn:hover{background:var(--sudoku-primary);color:var(--color-text-light, #ffffff);transform:translateY(-3px);box-shadow:0 5px 15px #778da966}.master-option-btn:active{transform:translateY(-1px)}.master-close-btn{width:100%;padding:.8rem;background:var(--sudoku-cell-highlighted-bg);color:var(--color-text-light, #ffffff);border:2px solid var(--sudoku-primary-light);border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.master-close-btn:hover{background:var(--sudoku-primary-light);color:var(--color-bg-primary, #0d1b2a)}.sudoku-coaching{background:var(--sudoku-cell-highlighted-bg);border:2px solid var(--sudoku-success);border-radius:8px;padding:.5rem;box-shadow:0 2px 8px #0003;flex-shrink:0;max-height:80px;overflow-y:auto}.coaching-message{margin:0;color:var(--sudoku-success);font-weight:500;text-align:center;font-size:.8rem}.coaching-success{color:var(--sudoku-success);font-weight:600;margin:0;font-size:.9rem}.coaching-error{color:var(--sudoku-error);font-weight:600;margin:0;font-size:.85rem}.coaching-hint{color:var(--sudoku-accent);font-style:italic;margin:.3rem 0 0;font-size:.75rem}@media(max-width:768px)and (min-width:481px){.sudoku-game-header{padding:.5rem .6rem;gap:.6rem}.game-mode-info{gap:.4rem}.game-mode-badge{font-size:.65rem;padding:.2rem .4rem}.difficulty-badge,.challenge-date{font-size:.7rem}.stat-item{font-size:.75rem}.timer-display{font-size:.9rem;min-width:3rem}.sudoku-container{padding:1rem;max-width:600px}.sudoku-grid{width:min(70vw,500px);height:min(70vw,500px)}.sudoku-cell{font-size:clamp(1.2rem,4vw,1.8rem)}.sudoku-actions{gap:.5rem;flex-wrap:nowrap;justify-content:center}.sudoku-btn{padding:.6rem;font-size:0;min-width:48px;width:48px;height:48px;justify-content:center}.sudoku-btn span{font-size:1.4rem;margin:0}.number-btn{font-size:1.4rem;min-height:50px}}@media(max-width:768px){.sudoku-game-header{padding:.4rem .5rem;gap:.4rem;flex-wrap:nowrap}.game-mode-info{gap:.3rem;flex-shrink:1;min-width:0;overflow:hidden}.game-mode-badge{font-size:.6rem;padding:.15rem .35rem}.game-mode-badge .mode-label{display:none}.difficulty-badge{font-size:.65rem;padding:.2rem .4rem}.difficulty-badge .difficulty-label{display:none}.challenge-date{font-size:.65rem;padding:.15rem .3rem}.game-stats-group{gap:.5rem}.stat-item{font-size:.65rem;gap:.15rem}.stat-item .stat-icon{font-size:.55rem}.timer-group{gap:.3rem}.timer-btn{width:26px;height:26px;padding:.25rem}.timer-btn .timer-icon{font-size:.6rem}.timer-display{font-size:.85rem;padding:.2rem .4rem;min-width:3rem}.sudoku-header-print-btn{padding:.35rem;min-width:32px;justify-content:center}.sudoku-header-print-btn .btn-text{display:none}.sudoku-header-print-btn i{font-size:.85rem}.mistakes-icon,.hints-icon{display:none}.mistakes-counter,.hints-counter{display:flex;align-items:center;gap:.2rem}.timer-btn{padding:.25rem;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center}.timer-btn .timer-icon{font-size:.65rem;line-height:1}.sudoku-timer{font-size:.65rem;padding:.25rem .35rem;min-width:42px;text-align:center}.sudoku-container{padding:.3rem .3rem 1rem;max-height:100%;overflow-y:visible}.sudoku-header{flex-direction:column;gap:.4rem;padding:.5rem;margin-bottom:.5rem}.sudoku-info,.sudoku-stats{width:100%;justify-content:center;flex-wrap:wrap}.difficulty-label{font-size:.95rem}.daily-badge{font-size:.7rem;padding:.2rem .5rem}.mistakes-counter,.hints-counter{font-size:.85rem}.sudoku-grid-wrapper{margin-bottom:.5rem;flex-shrink:1}.sudoku-grid{width:min(85vw,340px);height:min(85vw,340px);border-width:2px;gap:0}.sudoku-cell{font-size:clamp(.9rem,3.5vw,1.3rem);min-height:unset;aspect-ratio:1}.sudoku-cell .cell-value{font-size:inherit}.sudoku-controls{gap:.5rem;margin-bottom:.5rem}.sudoku-actions{gap:.4rem;flex-wrap:nowrap;justify-content:center}.sudoku-btn{padding:.6rem;min-width:44px;width:44px;height:44px;justify-content:center;flex:0 0 auto}.sudoku-btn .btn-icon{font-size:1.3rem;margin:0}.sudoku-btn .btn-text,.number-btn .btn-text,.clear-btn .btn-text{display:none}.number-btn .btn-icon,.clear-btn .btn-icon{display:inline}.sudoku-number-pad{gap:.3rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.number-btn{width:32px;height:32px;font-size:.9rem;flex-shrink:0}.clear-btn{padding:0;font-size:1.1rem;width:32px;font-weight:400}.pencil-note{font-size:clamp(.35rem,1vw,.5rem)}.sudoku-coaching{padding:.5rem;margin-top:.5rem}.coaching-message{font-size:.85rem}.beginner-options{gap:.4rem}.beginner-option-btn{min-width:44px;min-height:44px;font-size:1.2rem}.sudoku-master-overlay{bottom:0;right:0;left:0;width:100%;max-width:100%;border-radius:0;animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.master-teaching-panel{padding:1rem;border-radius:16px 16px 0 0;max-height:60vh}.master-character{gap:.6rem;margin-bottom:.8rem;padding-bottom:.6rem}.master-avatar{width:45px;height:45px;font-size:1.8rem}.master-name{font-size:1rem}.master-title{font-size:.7rem}.master-message{padding:.8rem}.master-message h3{font-size:.95rem;margin-bottom:.5rem}.master-message p{font-size:.8rem;margin-bottom:.5rem}.master-option-btn{min-width:45px;height:45px;font-size:1.3rem}.reason-list{padding:.5rem .7rem;font-size:.75rem}.master-close-btn{padding:.7rem;font-size:.9rem}}@media(max-width:375px){.sudoku-container{padding:.2rem}.sudoku-grid{width:min(98vw,340px);height:min(98vw,340px)}.sudoku-cell{font-size:clamp(.8rem,3.2vw,1.1rem)}.sudoku-btn{font-size:0;padding:.5rem;width:40px;height:40px;min-width:40px}.sudoku-btn span{font-size:1.1rem}.number-btn{font-size:1rem;min-height:40px}.pencil-note{font-size:.32rem}}@media(max-height:500px)and (orientation:landscape){.sudoku-container{padding:.3rem}.sudoku-header{flex-direction:row;padding:.3rem .5rem;margin-bottom:.3rem}.sudoku-grid{width:min(50vh,350px);height:min(50vh,350px)}.sudoku-controls{margin-bottom:.3rem}.sudoku-btn{padding:.3rem .5rem;font-size:.7rem}.number-btn{min-height:35px;font-size:.9rem}}@media(min-width:769px)and (max-width:1024px){.sudoku-container{max-width:90vw;padding:1rem}.sudoku-grid{width:min(70vw,60vh,450px);height:min(70vw,60vh,450px)}.sudoku-controls{gap:.6rem}.sudoku-actions{gap:.5rem}}.daily-challenge-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000}.daily-challenge-content{background:var(--sudoku-container-background);border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:0 8px 24px #00000080;border:1px solid var(--sudoku-cell-border)}.daily-challenge-content h2{color:var(--sudoku-primary-light);margin:0 0 .5rem;font-size:1.8rem;text-align:center}.daily-challenge-content p{color:var(--sudoku-given-text);margin:0 0 1.5rem;text-align:center}.daily-difficulty-buttons{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.daily-diff-btn{background:var(--sudoku-btn-bg);border:2px solid var(--sudoku-btn-border);border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.5rem;text-align:left}.daily-diff-btn:not(:disabled):hover{background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light);transform:translateY(-2px);box-shadow:0 4px 8px #415a774d}.daily-diff-btn.completed{background:var(--sudoku-cell-highlighted-bg);border-color:var(--sudoku-success);cursor:not-allowed}.diff-label{font-size:1.2rem;font-weight:600;color:var(--sudoku-given-text)}.completed-badge{font-size:.9rem;color:var(--sudoku-success);font-weight:500}.streak-badge{font-size:.85rem;color:var(--sudoku-accent);font-weight:500}.close-modal-btn{width:100%;padding:.8rem;background:var(--sudoku-primary);color:var(--color-text-light, #ffffff);border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.close-modal-btn:hover{background:var(--sudoku-primary-light)}@media(max-width:768px){.daily-challenge-content{padding:1.5rem;width:92%;max-width:450px}.daily-difficulty-buttons{gap:.8rem}.daily-diff-btn{padding:.9rem;min-height:60px}}@media(max-width:480px){.daily-challenge-content{padding:1.2rem;width:95%;border-radius:8px}.daily-challenge-content h2{font-size:1.4rem;margin-bottom:.4rem}.daily-challenge-content p{font-size:.9rem;margin-bottom:1rem}.daily-difficulty-buttons{gap:.6rem;margin-bottom:1rem}.daily-diff-btn{padding:.8rem;min-height:55px}.diff-label{font-size:1.05rem}.completed-badge,.streak-badge{font-size:.8rem}.close-modal-btn{padding:.7rem;font-size:.95rem}}@media(max-width:375px){.daily-challenge-content{padding:1rem}.daily-challenge-content h2{font-size:1.3rem}.diff-label{font-size:1rem}}.sudoku-win-modal{align-items:flex-start!important;padding-top:2vh!important}.sudoku-win-modal .win-modal-content,.sudoku-validation-modal .win-modal-content{background:var(--sudoku-container-background)!important;max-height:96vh!important;overflow-y:auto!important;margin:0!important;border:1px solid var(--sudoku-cell-border)}.sudoku-win-modal .modal-header.sudoku-modal-header,.sudoku-validation-modal .modal-header.sudoku-modal-header{background:linear-gradient(135deg,var(--sudoku-primary) 0%,var(--sudoku-primary-dark) 100%);color:var(--color-text-light, #ffffff);padding:1.25rem 1.5rem!important}.sudoku-win-modal .modal-header h2{font-size:1.75rem!important;margin-bottom:.25rem!important}.sudoku-win-modal .win-subtitle{color:var(--sudoku-primary-lighter)!important;text-shadow:none;font-size:.95rem!important}.sudoku-win-modal .win-modal-content h2,.sudoku-validation-modal .win-modal-content h2{color:var(--color-text-light, #ffffff)!important}.sudoku-win-modal .modal-body{color:var(--sudoku-given-text)!important;padding:1.25rem 1.5rem!important}.sudoku-win-modal .win-stats{background:var(--sudoku-cell-highlighted-bg)!important;backdrop-filter:none!important;padding:1rem!important;margin-bottom:1.25rem!important;border-radius:8px}.sudoku-win-modal .win-stats p{color:var(--sudoku-given-text)!important;border-bottom-color:var(--sudoku-cell-border)!important;margin:.5rem 0!important;padding:.5rem 0!important;font-size:.9rem!important}.sudoku-win-modal .win-stats p strong{color:var(--sudoku-primary-light)!important}.sudoku-win-modal .win-stats p span:last-child{color:var(--sudoku-user-text)!important;font-weight:700!important;font-size:1rem!important}.sudoku-win-modal .win-stats p.highlight{background:linear-gradient(135deg,var(--sudoku-cell-highlighted-bg) 0%,var(--sudoku-cell-same-bg) 100%);border-left:4px solid var(--sudoku-primary-light);padding-left:1rem}.sudoku-win-modal .win-stats p.highlight span:last-child{color:var(--sudoku-accent)!important}.sudoku-win-modal .share-title{color:var(--sudoku-primary-light)!important;font-weight:600!important;font-size:1rem!important;margin-bottom:.75rem!important}.sudoku-win-modal .share-btn.whatsapp{background:var(--sudoku-success);color:var(--color-text-on-light, #0d1b2a)}.sudoku-win-modal .share-btn.copy{background:var(--sudoku-primary);color:var(--color-text-light, #ffffff);border:1px solid var(--sudoku-primary-light)}.sudoku-win-modal .share-btn.copy:hover{background:var(--sudoku-primary-light)}.sudoku-validation-modal .modal-header.validation-success{background:linear-gradient(135deg,var(--sudoku-success) 0%,var(--sudoku-success) 100%)!important}.sudoku-validation-modal .modal-header.validation-error{background:linear-gradient(135deg,var(--sudoku-error) 0%,var(--sudoku-error) 100%)!important}.sudoku-validation-modal .validation-icon{font-size:3rem;margin-bottom:.5rem;font-weight:700}.sudoku-validation-modal .validation-message{font-size:1rem;color:var(--sudoku-given-text);margin:1.5rem 0;line-height:1.6;text-align:center}.sudoku-validation-modal .action-btn.btn-primary{background:linear-gradient(135deg,var(--sudoku-primary) 0%,var(--sudoku-primary-dark) 100%);border-color:var(--sudoku-primary);min-width:120px}.sudoku-validation-modal .action-btn.btn-primary:hover{background:linear-gradient(135deg,var(--sudoku-primary-dark) 0%,var(--sudoku-primary) 100%);transform:translateY(-2px);box-shadow:0 4px 12px #415a774d}.sudoku-win-modal .win-stats.sudoku-win-stats p.highlight{background:linear-gradient(135deg,var(--sudoku-cell-highlighted-bg) 0%,var(--sudoku-cell-same-bg) 100%);border-left:4px solid var(--sudoku-primary-light)}.sudoku-badges{background:var(--sudoku-cell-highlighted-bg);border-radius:8px;padding:.75rem;margin:.75rem 0;border:2px solid var(--sudoku-cell-border)}.badges-title{font-size:.9rem;font-weight:600;color:var(--sudoku-primary-light);margin:0 0 .5rem;text-align:center}.badges-list{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.sudoku-badges .badge-item{background:var(--sudoku-btn-bg);padding:.4rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;color:var(--sudoku-given-text);border:1px solid var(--sudoku-cell-border);box-shadow:0 2px 4px #0003}.sudoku-win-modal .action-btn.btn-primary{background:linear-gradient(135deg,var(--sudoku-primary) 0%,var(--sudoku-primary-dark) 100%)!important;border-color:var(--sudoku-primary)!important;color:var(--color-text-light, #ffffff)!important}.sudoku-win-modal .action-btn.btn-primary:hover{background:linear-gradient(135deg,var(--sudoku-primary-light) 0%,var(--sudoku-primary) 100%)!important;transform:translateY(-2px);box-shadow:0 4px 12px #415a774d}@media(max-width:768px){.sudoku-win-modal .modal-header h2{font-size:1.5rem!important}.sudoku-win-modal .win-subtitle{font-size:.85rem!important}.sudoku-win-modal .modal-body{padding:1rem!important}.sudoku-win-modal .win-stats{padding:.75rem!important}.sudoku-win-modal .win-stats p{font-size:.85rem!important;margin:.4rem 0!important;padding:.4rem 0!important}.sudoku-win-modal .win-stats p span:last-child{font-size:.95rem!important}}@media(max-width:480px){.sudoku-win-modal .modal-header.sudoku-modal-header{padding:1rem!important}.sudoku-win-modal .modal-header h2{font-size:1.3rem!important}.sudoku-win-modal .win-subtitle{font-size:.8rem!important}.sudoku-win-modal .modal-body{padding:.75rem!important}.sudoku-win-modal .win-stats{padding:.6rem!important;margin-bottom:1rem!important}.sudoku-win-modal .win-stats p{font-size:.8rem!important;margin:.3rem 0!important;padding:.3rem 0!important}.sudoku-win-modal .win-stats p span:last-child{font-size:.9rem!important}.sudoku-win-modal .share-title{font-size:.9rem!important;margin-bottom:.5rem!important}.sudoku-badges{padding:.6rem;margin:.6rem 0}.badges-title{font-size:.85rem}.sudoku-badges .badge-item{font-size:.75rem;padding:.3rem .6rem}}@media(hover:none)and (pointer:coarse){.sudoku-cell{cursor:pointer;-webkit-tap-highlight-color:rgba(79,195,247,.3)}.sudoku-btn,.number-btn,.beginner-option-btn,.daily-diff-btn{-webkit-tap-highlight-color:rgba(79,195,247,.3);touch-action:manipulation}.sudoku-btn:hover,.number-btn:hover,.beginner-option-btn:hover,.daily-diff-btn:not(:disabled):hover{transform:none}.sudoku-btn:active,.number-btn:active,.beginner-option-btn:active{transform:scale(.95);opacity:.8}}.sudoku-how-to-play{display:block;max-width:900px;margin:2rem auto;padding:1.5rem 2rem;background:var(--sudoku-container-bg, var(--color-stats-bg-start, rgba(27, 38, 59, .98)));border-radius:16px;border:1px solid var(--sudoku-grid-border, var(--color-border-accent, #5a7a9a));color:var(--color-text-primary, #e0e1dd);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.7}.content-page.sudoku-how-to-play h2,.sudoku-how-to-play h2{font-size:1.6rem!important;font-weight:700!important;color:#60a5fa!important;margin:0 0 1.2rem!important;font-family:Poppins,sans-serif!important;border-bottom:2px solid var(--sudoku-box-border, var(--color-border-accent, #8fa8c8))!important;padding-bottom:.5rem!important}.content-page.sudoku-how-to-play h3,.sudoku-how-to-play h3{font-size:1.3rem!important;font-weight:600!important;color:var(--color-text-primary, #e0e1dd)!important;margin:1.8rem 0 .8rem!important;font-family:Poppins,sans-serif!important}.sudoku-how-to-play h4{font-size:1.1rem!important;font-weight:600!important;color:#60a5fa!important;margin:1.2rem 0 .5rem!important}.sudoku-how-to-play p{margin:.8rem 0;color:var(--color-text-primary, #e0e1dd);opacity:.9}.sudoku-how-to-play strong{color:var(--color-text-primary, #e0e1dd);font-weight:600;opacity:1}.sudoku-how-to-play ul{margin:.6rem 0;padding-left:1.5rem}.sudoku-how-to-play li{margin:.4rem 0;color:var(--color-text-primary, #e0e1dd);opacity:.9}.sudoku-how-to-play li strong{color:var(--color-text-primary, #e0e1dd);opacity:1}.sudoku-how-to-play i.fas,.sudoku-how-to-play i.far{margin-right:.3rem}@media(max-width:768px){.sudoku-how-to-play{margin:1rem;padding:1rem 1.2rem;border-radius:12px}.sudoku-how-to-play h2{font-size:1.3rem}.sudoku-how-to-play h3{font-size:1.15rem}.sudoku-how-to-play h4{font-size:1rem}.sudoku-how-to-play p,.sudoku-how-to-play li{font-size:.95rem}}@media(max-width:480px){.sudoku-how-to-play{margin:.5rem;padding:.8rem 1rem}.sudoku-how-to-play h2{font-size:1.2rem}.sudoku-how-to-play h3{font-size:1.05rem}}.daily-challenge-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:linear-gradient(135deg,var(--color-btn-primary-start) 0%,var(--color-btn-primary-end) 100%);border:1px solid var(--color-border-accent);border-radius:6px;color:var(--color-text-light, #ffffff);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.daily-challenge-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.daily-challenge-btn i{font-size:.9rem}#print-puzzles-btn,.site-nav .nav-btn.print-puzzles-btn,.site-nav #print-puzzles-btn,.print-puzzles-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:linear-gradient(135deg,var(--color-btn-primary-start) 0%,var(--color-btn-primary-end) 100%);border:1px solid var(--color-border-accent);border-radius:6px;color:var(--color-text-light, #ffffff);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:auto;height:auto}#print-puzzles-btn:hover,.site-nav .nav-btn.print-puzzles-btn:hover,.site-nav #print-puzzles-btn:hover,.print-puzzles-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.site-nav .nav-btn.print-puzzles-btn i,.print-puzzles-btn i{font-size:.9rem}.daily-challenge-calendar-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.daily-calendar-content{background:var(--sudoku-container-background, rgba(27, 38, 59, .98));border-radius:12px;max-width:400px;width:100%;box-shadow:0 8px 32px #00000080;border:1px solid var(--color-border-accent, #415a77);overflow:hidden}.modal-header-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--sudoku-primary, #415a77) 0%,var(--sudoku-primary-dark, #1b263b) 100%);border-bottom:1px solid var(--color-border-accent, #415a77)}.modal-header-bar h2{margin:0;font-size:1.2rem;font-weight:600;color:var(--color-text-light, #ffffff);display:flex;align-items:center;gap:.5rem}.modal-header-bar h2 i{color:var(--color-highlight, #fbbf24)}.modal-close-x{background:transparent;border:none;color:var(--color-text-light, #ffffff);font-size:1.2rem;cursor:pointer;padding:.25rem;opacity:.7;transition:opacity .2s ease}.modal-close-x:hover{opacity:1}.modal-body-content{padding:1.25rem}.difficulty-tabs{display:flex;gap:0;background:var(--sudoku-btn-bg, #0d1b2a);border-bottom:1px solid var(--color-border-accent, #415a77)}.diff-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.75rem .5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--sudoku-pencil-text, #778da9);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.diff-tab:hover{background:var(--sudoku-cell-highlighted-bg, rgba(61, 90, 128, .2));color:var(--sudoku-given-text, #e0e1dd)}.diff-tab.active{color:var(--color-text-light, #ffffff);border-bottom-color:var(--color-highlight, #fbbf24);background:var(--sudoku-cell-highlighted-bg, rgba(61, 90, 128, .3))}.diff-tab[data-difficulty=easy] i{color:#60a5fa}.diff-tab[data-difficulty=hard] i{color:#f97316}.diff-tab[data-difficulty=xtreme] i{color:#ef4444}.diff-tab.active[data-difficulty=easy]{border-bottom-color:#60a5fa}.diff-tab.active[data-difficulty=hard]{border-bottom-color:#f97316}.diff-tab.active[data-difficulty=xtreme]{border-bottom-color:#ef4444}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.calendar-title{font-size:1.1rem;font-weight:600;color:var(--sudoku-given-text, #e0e1dd)}.calendar-nav-btn{background:var(--sudoku-btn-bg, #0d1b2a);border:1px solid var(--sudoku-btn-border, #415a77);border-radius:6px;padding:.5rem .75rem;color:var(--sudoku-btn-text, #e0e1dd);cursor:pointer;transition:all .2s ease}.calendar-nav-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg, #415a77);border-color:var(--sudoku-primary-light, #778da9)}.calendar-nav-btn:disabled,.calendar-nav-btn.disabled{opacity:.3;cursor:not-allowed}.calendar-grid{margin-bottom:1rem}.calendar-day-names{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem}.day-name{text-align:center;font-size:.75rem;font-weight:600;color:var(--sudoku-pencil-text, #778da9);padding:.25rem;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--sudoku-cell-bg, #1b263b);border:1px solid var(--sudoku-cell-border, #4a6a8a);border-radius:6px;cursor:pointer;transition:all .15s ease;position:relative;min-height:40px}.calendar-day:hover:not(.empty):not(.unavailable){background:var(--sudoku-cell-highlighted-bg, rgba(61, 90, 128, .3));border-color:var(--sudoku-primary-light, #778da9);transform:scale(1.05)}.calendar-day.empty{background:transparent;border:none;cursor:default}.calendar-day.unavailable{opacity:.3;cursor:not-allowed}.calendar-day.completed{background:linear-gradient(135deg,#4ade8033,#34d39933);border-color:var(--sudoku-success, #4ade80)}.calendar-day.today{border:2px solid var(--color-highlight, #fbbf24);background:var(--sudoku-cell-selected-bg, rgba(61, 90, 128, .4))}.calendar-day.selected{background:var(--sudoku-primary, #415a77);border-color:var(--sudoku-primary-light, #778da9)}.day-number{font-size:.9rem;font-weight:500;color:var(--sudoku-given-text, #e0e1dd)}.calendar-day.unavailable .day-number{color:var(--sudoku-pencil-text, #778da9)}.completion-indicator{position:absolute;bottom:2px;right:2px;font-size:.55rem;color:var(--sudoku-success, #4ade80)}.difficulty-selection{text-align:center}.difficulty-selection h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--sudoku-primary-light, #778da9);display:flex;align-items:center;justify-content:center;gap:.5rem}.difficulty-selection h3 i{color:var(--color-highlight, #fbbf24)}.difficulty-selection p{margin:0 0 1rem;font-size:.9rem;color:var(--sudoku-pencil-text, #778da9)}.difficulty-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.diff-option-btn{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--sudoku-btn-bg, #0d1b2a);border:2px solid var(--sudoku-btn-border, #415a77);border-radius:10px;cursor:pointer;transition:all .2s ease}.diff-option-btn:hover:not(.completed){background:var(--sudoku-btn-hover-bg, #415a77);border-color:var(--sudoku-primary-light, #778da9);transform:translate(4px)}.diff-option-btn.completed{background:linear-gradient(135deg,#4ade8026,#34d39926);border-color:var(--sudoku-success, #4ade80)}.diff-info{display:flex;align-items:center;gap:.75rem}.diff-info i{font-size:1.2rem;width:24px;text-align:center}.diff-option-btn[data-difficulty=easy] .diff-info i{color:#60a5fa}.diff-option-btn[data-difficulty=hard] .diff-info i{color:#f97316}.diff-option-btn[data-difficulty=xtreme] .diff-info i{color:#ef4444}.diff-info span{font-size:1rem;font-weight:600;color:var(--sudoku-given-text, #e0e1dd)}.completed-check{font-size:1.1rem;color:var(--sudoku-success, #4ade80)}.back-to-calendar-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:var(--sudoku-cell-highlighted-bg, rgba(61, 90, 128, .3));border:1px solid var(--sudoku-btn-border, #415a77);border-radius:8px;color:var(--sudoku-given-text, #e0e1dd);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.back-to-calendar-btn:hover{background:var(--sudoku-btn-hover-bg, #415a77);border-color:var(--sudoku-primary-light, #778da9)}@media(max-width:480px){.daily-challenge-calendar-modal{padding:.5rem}.daily-calendar-content{max-width:100%;border-radius:10px}.modal-header-bar{padding:.85rem 1rem}.modal-header-bar h2{font-size:1.05rem}.difficulty-tabs{gap:0}.diff-tab{padding:.6rem .3rem;font-size:.75rem;gap:.25rem}.diff-tab i{font-size:.9rem}.modal-body-content{padding:1rem}.calendar-day{min-height:36px;border-radius:4px}.day-number{font-size:.8rem}.completion-indicator{font-size:.5rem}.diff-option-btn{padding:.85rem 1rem}.diff-info i{font-size:1rem}.diff-info span{font-size:.9rem}}.sudoku-site-footer{width:100%;margin-top:4rem;padding:2rem 1.5rem 1.5rem;background:var(--sudoku-bg-secondary, #1e293b);border-top:1px solid var(--sudoku-cell-border, #415a77)}.footer-content{max-width:1000px;margin:0 auto}.footer-section{margin-bottom:2rem}.footer-section-title{color:var(--sudoku-primary-light, #60a5fa);font-size:1rem;font-weight:600;margin:0 0 1rem;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem}.footer-section-title i{font-size:1rem}.footer-links{display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}.footer-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--sudoku-primary-light, #60a5fa);text-decoration:none;font-weight:500;font-size:.9rem;transition:all .2s ease}.footer-link:hover{color:var(--sudoku-primary-hover, #3b82f6);transform:translateY(-2px)}.footer-link i{font-size:.9rem}.footer-copyright{margin:0;padding-top:1.5rem;color:var(--sudoku-text-muted, #94a3b8);font-size:.85rem;text-align:center;border-top:1px solid rgba(255,255,255,.05)}@media(max-width:768px){.footer-content{display:flex;flex-direction:column}.footer-section{margin-bottom:1.5rem}.footer-links{gap:1.5rem}.footer-link{font-size:.85rem}}@media(max-width:480px){.sudoku-site-footer{margin-top:2rem;padding:1.5rem 1rem 1rem}.footer-section-title{font-size:.9rem}.footer-links{gap:1rem}.footer-link{font-size:.85rem;flex-direction:column;gap:.25rem}.footer-link span{font-size:.75rem}.footer-link i{font-size:1rem}.footer-copyright{font-size:.8rem}}
