:root{--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-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-light: #ffffff;--color-text-muted: rgba(255, 255, 255, .7);--color-text-on-light: #0d3d10;--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: #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-achievement-bg-start: #0a3a0d;--color-achievement-bg-end: #041205;--color-achievement-text: #e8f5e9;--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;--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;--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=dragon]{--color-bg-primary: #1c0c0c;--color-bg-gradient-top: rgba(28, 12, 12, .95);--color-bg-gradient-bottom: rgba(40, 10, 10, .95);--color-nav-start: #3a0e0e;--color-nav-end: #1c0606;--color-nav-border: #b34700;--color-achievement-bg-start: #3a0e0e;--color-achievement-bg-end: #1c0606;--color-achievement-text: #fde8d0;--color-achievement-text-muted: #f0a860;--color-levelup-bg-start: #8b2020;--color-levelup-bg-end: #5c1212;--color-levelup-text: #ffffff;--color-levelup-text-muted: #f0a860;--color-levelup-title: #ffd700;--color-levelup-glow: rgba(139, 32, 32, .4);--color-btn-primary-start: #8b2020;--color-btn-primary-end: #5c1212;--color-btn-primary-hover-start: #a63030;--color-btn-primary-hover-end: #8b2020;--color-btn-secondary-start: #5c1212;--color-btn-secondary-end: #3a0e0e;--color-stats-bg-start: #2a0808;--color-stats-bg-end: #1c0606;--color-stats-highlight: #e8853a;--color-stats-border: rgba(232, 133, 58, .5);--color-tableau-pattern: #1c0c0c;--color-text-primary: #fde8d0;--color-text-heading: #e8853a;--color-text-heading-secondary: #f0a860;--color-text-on-light: #3a0e0e;--color-text-light: #ffffff;--color-text-muted: rgba(253, 232, 208, .7);--color-overlay-text: #fde8d0;--color-overlay-text-muted: rgba(253, 232, 208, .7);--color-border-accent: #b34700;--color-highlight: #ffd700;--color-success: #e8853a;--color-success-light: #f0a860;--color-success-lighter: #f5c080;--color-error: #ff5555;--color-warning: #ffd700;--color-card-red: #ff4444;--color-card-black: #fde8d0;--color-card-bg: #2a1010;--color-card-border: rgba(179, 71, 0, .4);--modal-stat-value: #e8853a;--modal-stat-border: rgba(232, 133, 58, .5);--modal-highlight-bg: rgba(255, 215, 0, .15);--modal-highlight-border: rgba(255, 215, 0, .4);--modal-streak-bg: rgba(232, 133, 58, .2);--modal-streak-border: rgba(232, 133, 58, .4);--modal-streak-text: #f0a860;--modal-progress-gradient: linear-gradient(90deg, #e8853a 0%, #cc4400 100%);--color-success-dark: #cc4400;--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=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;--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;--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;--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}}@keyframes scoreBumpUp{0%{transform:scale(1);color:inherit}30%{transform:scale(1.25);color:#4ade80}to{transform:scale(1);color:inherit}}@keyframes scoreBumpDown{0%{transform:scale(1);color:inherit}30%{transform:scale(1.25);color:#ff6b6b}to{transform:scale(1);color:inherit}}@keyframes moveBump{0%{transform:scale(1)}30%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes foundationPulse{0%{transform:scale(1);box-shadow:none}50%{transform:scale(1.05);box-shadow:0 0 12px #ffd70066}to{transform:scale(1);box-shadow:none}}@keyframes foundationComplete{0%{transform:scale(1);box-shadow:none}30%{transform:scale(1.08);box-shadow:0 0 25px #ffd700cc}to{transform:scale(1);box-shadow:none}}@keyframes cardSettle{0%{transform:translateY(0)}50%{transform:translateY(3px)}to{transform:translateY(0)}}@keyframes peakBurst{0%{width:0;height:0;opacity:1}to{width:160px;height:160px;opacity:0}}@keyframes streakFloat{0%{transform:translate(-50%) translateY(0);opacity:1}to{transform:translate(-50%) translateY(-60px);opacity:0}}.drop-target-valid>.card:last-child,.drop-target-valid.empty{box-shadow:0 0 12px 4px #64c8ff80;border-radius:var(--card-border-radius, 6px);transition:box-shadow .12s ease-out}: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);--game-area-height: calc(100dvh - 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-zone[data-game=mahjong]{--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=beleagueredcastle],[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=eightoff]{--game-top-chrome-height: calc(var(--card-height) * 2 + var(--game-gap-px) + var(--top-chrome-margin));--tableau-area-height: calc(var(--game-area-height) - var(--game-top-chrome-height))}[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]{--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=wasp]{--game-tableau-columns: 7;--game-foundation-count: 4;--game-has-cells: 4;--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}}[data-game] .tableau-pile.pile-expanded{z-index:100}[data-game] .tableau-pile.pile-collapsing>.card{transition:top .15s ease}.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=eightoff] .eightoff-reserves{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:calc(var(--game-gap, 8px) * .5)}[data-game=eightoff] .eightoff-foundations{display:grid;grid-template-columns:repeat(8,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=eightoff] .eightoff-foundations #foundation-0{grid-column:5}[data-game=eightoff] .eightoff-foundations #foundation-1{grid-column:6}[data-game=eightoff] .eightoff-foundations #foundation-2{grid-column:7}[data-game=eightoff] .eightoff-foundations #foundation-3{grid-column:8}[data-game=eightoff] .reserve-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;background:#ffffff0d}[data-game=eightoff] .reserve-pile.empty{background-color:#0000001a}[data-game=eightoff] .reserve-pile.empty:before{display:none}[data-game=freecell] .top-piles,[data-game=bakersgame] .top-piles{display:grid;grid-template-columns:repeat(4,var(--card-width)) var(--freecell-foundation-gap, calc(var(--card-width) * .5)) repeat(4,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=freecell] .top-piles #freecell-0,[data-game=bakersgame] .top-piles #freecell-0{grid-column:1}[data-game=freecell] .top-piles #freecell-1,[data-game=bakersgame] .top-piles #freecell-1{grid-column:2}[data-game=freecell] .top-piles #freecell-2,[data-game=bakersgame] .top-piles #freecell-2{grid-column:3}[data-game=freecell] .top-piles #freecell-3,[data-game=bakersgame] .top-piles #freecell-3{grid-column:4}[data-game=freecell] .top-piles #foundation-0,[data-game=bakersgame] .top-piles #foundation-0{grid-column:6}[data-game=freecell] .top-piles #foundation-1,[data-game=bakersgame] .top-piles #foundation-1{grid-column:7}[data-game=freecell] .top-piles #foundation-2,[data-game=bakersgame] .top-piles #foundation-2{grid-column:8}[data-game=freecell] .top-piles #foundation-3,[data-game=bakersgame] .top-piles #foundation-3{grid-column:9}[data-game=beleagueredcastle] .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=beleagueredcastle] .top-piles #foundation-0{grid-column:5}[data-game=beleagueredcastle] .top-piles #foundation-1{grid-column:6}[data-game=beleagueredcastle] .top-piles #foundation-2{grid-column:7}[data-game=beleagueredcastle] .top-piles #foundation-3{grid-column:8}[data-game=beleagueredcastle] .top-piles .foundation-pile{position:relative;width:var(--card-width);height:var(--card-height)}[data-game=beleagueredcastle] .top-piles .foundation-pile.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:192dpi){[data-game=beleagueredcastle] .top-piles .foundation-pile.empty:before{background-image:url(/assets/Placeholder@2x-CzlVC_hy.webp)}}[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}[data-game=bakersdozen] .bakersdozen-foundations{display:grid;grid-template-columns:repeat(13,var(--card-width));gap:var(--game-gap, 8px);margin-bottom:var(--top-chrome-margin, 1rem)}[data-game=bakersdozen] .bakersdozen-foundations #foundation-0{grid-column:10}[data-game=bakersdozen] .bakersdozen-foundations #foundation-1{grid-column:11}[data-game=bakersdozen] .bakersdozen-foundations #foundation-2{grid-column:12}[data-game=bakersdozen] .bakersdozen-foundations #foundation-3{grid-column:13}[data-game=bakersdozen] .bakersdozen-tableau{display:grid;grid-template-columns:repeat(13,var(--card-width));gap:var(--game-gap, 8px)}[data-game=scorpion] .scorpion-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=scorpion] .scorpion-reserve{grid-column:1;position:relative;width:var(--card-width);height:var(--card-height)}[data-game=scorpion] .scorpion-reserve .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=scorpion] .scorpion-reserve .stock-card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;border-radius:var(--card-border-radius)}[data-game=scorpion] .scorpion-foundation{width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius);position:relative}[data-game=scorpion] .scorpion-foundation:nth-child(2){grid-column:3}[data-game=scorpion] .scorpion-foundation:nth-child(3){grid-column:4}[data-game=scorpion] .scorpion-foundation:nth-child(4){grid-column:5}[data-game=scorpion] .scorpion-foundation:nth-child(5){grid-column:6}[data-game=scorpion] .scorpion-foundation .card{position:absolute;top:0;left:0;width:var(--card-width);height:var(--card-height)}[data-game=scorpion] .scorpion-foundation .card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;border-radius:var(--card-border-radius)}[data-game=scorpion] .scorpion-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){[data-game=scorpion] .scorpion-foundation.empty:before{background-image:url(/assets/Placeholder@1.5x-BXklLBKi.webp)}}[data-game=wasp] .wasp-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=wasp] .wasp-reserve{grid-column:1;position:relative;width:var(--card-width);height:var(--card-height)}[data-game=wasp] .wasp-reserve .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=wasp] .wasp-reserve .stock-card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;border-radius:var(--card-border-radius)}[data-game=wasp] .wasp-foundation{width:var(--card-width);height:var(--card-height);border-radius:var(--card-border-radius);position:relative}[data-game=wasp] .wasp-foundation:nth-child(2){grid-column:3}[data-game=wasp] .wasp-foundation:nth-child(3){grid-column:4}[data-game=wasp] .wasp-foundation:nth-child(4){grid-column:5}[data-game=wasp] .wasp-foundation:nth-child(5){grid-column:6}[data-game=wasp] .wasp-foundation .card{position:absolute;top:0;left:0;width:var(--card-width);height:var(--card-height)}[data-game=wasp] .wasp-foundation .card img{width:100%;height:100%;-o-object-fit:fill;object-fit:fill;border-radius:var(--card-border-radius)}[data-game=wasp] .wasp-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){[data-game=wasp] .wasp-foundation.empty:before{background-image:url(/assets/Placeholder@1.5x-BXklLBKi.webp)}}.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;align-items:center;position:sticky;top:0;z-index:1000;transition:background .3s ease,border-color .3s ease;gap:.5rem}.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:0 1 auto;min-width:0}#logo-link{display:flex;align-items:center;text-decoration:none;cursor:pointer;min-width:0;flex-shrink:1;overflow:hidden}#logo-link img{width:50px;height:50px;-o-object-fit:contain;object-fit:contain;flex-shrink:0}#game-name-display{color:#fff;font-weight:700;font-size:1.1rem;margin-left:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0}.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:.5rem;-webkit-tap-highlight-color:rgba(255,255,255,.2);touch-action:manipulation;position:relative;z-index:1001;flex-shrink:0}.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:1.25rem;flex:1 1 0%;min-width:0;justify-content:flex-end;flex-wrap:nowrap;overflow:hidden;margin-right:.5rem}.quick-nav-separator{color:#ffffff4d;font-size:1.2rem;font-weight:300}.quick-nav-link{color:#ffffffd9!important;text-decoration:none!important;font-size:.75rem;font-weight:600;padding:.2rem 0;transition:color .2s ease;border-bottom:1px solid transparent;white-space:nowrap;flex-shrink:0}.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}.nav-btn{flex-shrink: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;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}.logo{flex:1 1 auto}}@media(min-width:1025px)and (max-width:1200px){.quick-nav-links{gap:.75rem}}.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-subitem.winnable-subitem{color:#4caf50e6;font-size:.9rem}.global-menu-subitem.winnable-subitem:before{content:"";font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.4rem;font-size:.8rem}.global-menu-subitem.winnable-subitem:hover,.global-menu-subitem.winnable-subitem:active{color:#4caf50}.more-layouts-link{display:block;text-decoration:none;color:var(--color-success-light, #90EE90);font-style:italic}.more-layouts-link:hover{color:var(--color-success-lighter, #7FFF7F)}.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}}@media(max-width:767px){.new-game-buttons{display:none!important}}.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));height:calc(100dvh - 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);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}.time-value-row{display:flex;align-items:center;gap:.3rem}.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,.btn-sublabel{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;text-align:center}.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-menu.mahjong-layout-dropdown{max-height:400px;overflow-y:auto}.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)}@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,[data-game=bakersgame] .top-piles{display:grid;grid-template-columns:repeat(4,var(--card-width)) var(--freecell-foundation-gap, calc(var(--card-width) * .5)) repeat(4,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 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:nowrap}.logo img{height:32px!important;width:32px!important;flex-shrink:0}#game-name-display{font-size:.9rem;font-weight:600;max-width:clamp(60px,30vw,150px)}.hamburger-menu{display:flex}.settings-btn,.daily-deals-nav-btn{display:none!important}.menu-items{position:fixed;top:var(--chrome-nav-height, 45px);left:-100%;width:250px;height:calc(100vh - var(--chrome-nav-height, 45px));height:calc(100dvh - 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));height:calc(100dvh - 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,[data-game=bakersgame] .top-piles{display:grid;grid-template-columns:repeat(4,var(--card-width)) var(--freecell-foundation-gap, calc(var(--card-width) * .5)) repeat(4,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:max(.5rem,env(safe-area-inset-bottom,0px));left:.5rem;right:.5rem;width:auto;gap:0;flex-wrap:nowrap;justify-content:center;align-items:stretch;background:#0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:14px;border:1px solid rgba(255,255,255,.12);padding:.3rem .4rem;box-shadow:0 4px 16px #0000004d}.center-items{gap:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;flex:1;justify-content:space-evenly;align-items:stretch}.center-items::-webkit-scrollbar{display:none}.info-item{display:grid!important;grid-template-rows:1.3rem auto;justify-items:center;align-items:center;padding:.4rem .5rem;font-size:.85rem;gap:.2rem;flex-shrink:0}.btn-sublabel,#solver-display .info-sublabel,#shuffle-display .info-sublabel,.vertical-item:has(#current-moves) .info-sublabel{display:block!important;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;line-height:1;opacity:.85;color:var(--overlay-text);white-space:nowrap}.more-menu-btn{display:grid!important;order:13}.hint-btn i,.more-menu-btn i,.info-item.undo-btn-overlay .btn-icon,#solver-display .solver-status i{font-size:1.15rem;line-height:1}.time-item{font-weight:600;padding:.4rem .5rem;gap:.2rem}.time-item .info-value{font-size:.95rem}.time-item .pause-timer-btn{display:none}.vertical-item{flex-direction:column;align-items:center;gap:.2rem}.vertical-item .info-sublabel{display:none}.vertical-item .info-value{font-size:.95rem;font-weight:700;line-height:1}#stock-display{display:none!important}.vertical-item:has(#current-moves){display:none!important}#shuffle-display{display:none!important}#shuffle-display.active{display:grid!important}#solver-display{display:none!important}#solver-display.active{display:grid!important}.points-item{order:99}.points-label{font-size:0}#overlay-score{font-size:.95rem;font-weight:700;line-height:1}.hint-btn{order:10}.info-item.undo-btn-overlay{order:11}#solver-display{order:12}#solver-display{padding:.4rem .5rem}.solver-status{margin-left:0}.hint-btn{border-radius:8px}.hint-btn i{color:var(--overlay-text)}.hint-btn:active:not(:disabled){background:#ffd70026}.hint-btn:disabled{opacity:.35}.info-item.fullscreen-btn{display:none!important}.info-item.undo-btn-overlay{background:transparent;border:none;border-radius:8px;box-shadow:none}.info-item.undo-btn-overlay .btn-label{display:none}.info-item.undo-btn-overlay .btn-icon{display:block;color:gold}.info-item.undo-btn-overlay:active:not(:disabled){background:#ffd70026}.info-item.undo-btn-overlay:hover:not(:disabled){background:#ffd7001a}.more-menu-btn{background:transparent;border:none;border-radius:8px;box-shadow:none;cursor:pointer}.more-menu-btn i{color:var(--overlay-text)}.more-menu-btn:active{background:#ffffff1a}.info-item.undo-btn-overlay:disabled{opacity:.35}.bookmark-btn,.bug-report-btn{display:none!important}.settings-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,.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:1rem;font-weight:600;min-width:2ch;text-shadow:1px 1px 3px rgba(0,0,0,.6)}.btn-label{display:none}.btn-icon,.sound-icon{font-size:1.1rem}.pause-timer-btn{min-width:28px;min-height:28px;padding:4px;font-size:.7rem}[data-theme=light] .game-info-overlay,[data-theme=light-blue] .game-info-overlay{background:#ffffffa6;border-color:#00000014;box-shadow:0 4px 16px #0000001a}[data-theme=light] .info-item.undo-btn-overlay,[data-theme=light-blue] .info-item.undo-btn-overlay{background:transparent;border:none}[data-theme=light] .info-item.undo-btn-overlay .btn-icon,[data-theme=light-blue] .info-item.undo-btn-overlay .btn-icon{color:#d97706}[data-theme=light] .info-value,[data-theme=light-blue] .info-value{text-shadow:none}#game-content,.site-footer{display:none!important}}@media(max-width:480px){.top-menu{padding:.35rem .4rem;gap:.3rem}.logo img{height:28px!important;width:28px!important}#game-name-display{font-size:.8rem;margin-left:.35rem}.hamburger-menu{margin-right:.4rem}.daily-deals-nav-btn{padding:6px 8px;font-size:1rem}.settings-btn{padding:.35rem .5rem}.settings-btn i{font-size:1rem}.game-info-overlay{left:.3rem;right:.3rem;padding:.25rem .35rem;border-radius:12px}.info-item{padding:.25rem .35rem}.time-item{font-size:.9rem;padding:.25rem .4rem}.vertical-item .info-value,.info-value{font-size:.9rem}.info-item{grid-template-rows:1.15rem auto;padding:.3rem .4rem;gap:.15rem}.btn-sublabel,#solver-display .info-sublabel,#shuffle-display .info-sublabel,.vertical-item:has(#current-moves) .info-sublabel{font-size:.55rem}.hint-btn i,.info-item.undo-btn-overlay .btn-icon,#solver-display .solver-status i{font-size:1.05rem}.time-item .info-value,.vertical-item .info-value,#overlay-score{font-size:.85rem}.pause-timer-btn{min-width:24px;min-height:24px}}@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){#game-content,.site-footer{display:none!important}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;height:100dvh;min-height:100vh;min-height:100dvh;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:max(.5rem,env(safe-area-inset-bottom,0px));left:max(.5rem,env(safe-area-inset-left));right:max(.5rem,env(safe-area-inset-right));gap:0;position:fixed;z-index:1500;background:#0000008c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:14px;border:1px solid rgba(255,255,255,.12);padding:.25rem .5rem;box-shadow:0 4px 16px #0000004d}body.is-mobile-device .info-item{padding:.2rem .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 .center-items{justify-content:space-evenly}body.is-mobile-device .points-item{margin-left:0}body.is-mobile-device .time-item{border-right:1px solid rgba(255,255,255,.12);margin-right:.1rem}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:-30px;left:50%;transform:translate(-50%);background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-bottom:none;border-radius:10px 10px 0 0;padding:5px 18px;color:#fffc;font-size:.9rem;cursor:pointer;z-index:10;transition:all .2s ease;box-shadow:0 -2px 8px #0003;-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:#000000bf;border-color:#ffffff40;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}.pause-timer-btn{background:none;border:none;color:#ffffffb3;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s ease,background .2s ease;line-height:1;font-size:.75rem}.pause-timer-btn:hover{color:#fff;background:#ffffff26}.pause-timer-btn:active{transform:scale(.9)}.time-item.timer-paused #timer{opacity:.5;animation:timerBlink 1.2s ease-in-out infinite}@keyframes timerBlink{0%,to{opacity:.5}50%{opacity:1}}.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:max(1.5rem,env(safe-area-inset-bottom,0px))}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:max(1rem,env(safe-area-inset-bottom,0px))}}@supports not ((-webkit-full-screen: true) or (fullscreen: true)){.fullscreen-btn{display:none}}.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)}.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}.solver-status{display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.85rem;padding:.2rem .5rem;border-radius:4px;background:#0003;transition:all .3s ease}.solver-status.hidden{opacity:0;pointer-events:none}.solver-status i{font-size:.9rem}.solver-status.calculating{color:gold}.solver-status.solvable{color:#4caf50}.solver-status.unsolvable{color:#f44336;cursor:pointer}.solver-status.unsolvable:hover{color:#ff6659;transform:scale(1.15)}.solver-status.unsolvable:active{transform:scale(.95)}.solver-status.unknown{color:#9e9e9e;cursor:pointer}.solver-status.unknown:hover{color:#e0e0e0;transform:scale(1.15)}.solver-status.unknown:active{transform:scale(.95)}.solver-status.idle{color:#b0bec5;cursor:pointer;transition:all .2s ease}.solver-status.idle:hover{color:#e0e0e0;transform:scale(1.15)}.solver-status.idle:active{transform:scale(.95)}@media(max-width:767px){.solver-status{justify-content:center;margin-left:0;padding:0;background:transparent}.solver-status i{font-size:1.2rem}}@media(max-width:480px){.solver-status{margin-left:0;padding:0}.solver-status i{font-size:1.1rem}}.solver-status.calculating i{animation:solver-spin 1.5s linear infinite}@keyframes solver-spin{to{transform:rotate(360deg)}}.dropdown-option.winnable-deal{color:#4caf50;border-top:1px solid rgba(255,255,255,.1);margin-top:.2rem;padding-top:.6rem}.dropdown-option.winnable-deal:hover{background:#4caf501a}.dropdown-option.winnable-deal i{color:#4caf50}.solver-recovery-panel{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .2s ease;pointer-events:none}.solver-recovery-panel.show{opacity:1;pointer-events:auto}.solver-recovery-content{background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:1.5rem;max-width:360px;width:90%;box-shadow:0 8px 32px #0006}.solver-recovery-header{display:flex;align-items:center;gap:.6rem;color:var(--color-warning, #ff9800);font-size:.95rem;margin-bottom:1.2rem;line-height:1.4}.solver-recovery-header i{font-size:1.2rem;flex-shrink:0}.solver-recovery-actions{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.8rem}.solver-recovery-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:none;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .15s ease;color:var(--color-text-light, #ffffff)}.solver-recovery-btn.btn-primary{background:linear-gradient(135deg,var(--btn-primary-start) 0%,var(--btn-primary-end) 100%)}.solver-recovery-btn.btn-primary:hover{background:linear-gradient(135deg,var(--btn-primary-hover-start, var(--btn-primary-start)) 0%,var(--btn-primary-hover-end, var(--btn-primary-end)) 100%)}.solver-recovery-btn.btn-secondary{background:var(--color-overlay-light, rgba(255, 255, 255, .12))}.solver-recovery-btn.btn-secondary:hover{background:var(--color-overlay-light-hover, rgba(255, 255, 255, .2))}.solver-recovery-btn i{width:1rem;text-align:center}.solver-recovery-dismiss{display:block;width:100%;background:none;border:none;color:var(--color-text-muted, rgba(255, 255, 255, .5));font-size:.85rem;cursor:pointer;padding:.4rem;text-align:center;transition:color .15s ease}.solver-recovery-dismiss:hover{color:var(--color-text-primary, rgba(255, 255, 255, .8))}@media(max-width:480px){.solver-recovery-content{padding:1.2rem;max-width:320px}.solver-recovery-btn{padding:.7rem .8rem;font-size:.85rem}}.solver-rewind-feedback{position:fixed;top:4.5rem;left:50%;transform:translate(-50%) translateY(-10px);background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);color:var(--color-text-primary, #e8f5e9);padding:.5rem 1rem;border-radius:8px;font-size:.85rem;display:flex;align-items:center;gap:.4rem;box-shadow:0 4px 16px #0000004d;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:9999;pointer-events:none}.solver-rewind-feedback.show{opacity:1;transform:translate(-50%) translateY(0)}.challenge-banner{position:fixed;top:4.5rem;left:50%;transform:translate(-50%) translateY(-10px);background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);color:var(--color-text-primary, #ffffff);padding:.45rem 1rem;border-radius:8px;font-size:.85rem;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 16px #0000004d;border:1px solid rgba(255,255,255,.1);opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:9998}.challenge-banner.show{opacity:1;transform:translate(-50%) translateY(0)}.challenge-banner{cursor:pointer}.challenge-banner>i{color:var(--color-warning, #ff9800);font-size:.9rem}.challenge-banner-dismiss{background:none;border:none;color:#ffffff80;cursor:pointer;padding:0 0 0 .25rem;font-size:.75rem;line-height:1;transition:color .2s}.challenge-banner-dismiss:hover{color:#ffffffe6}@media(max-width:480px){.challenge-banner{font-size:.8rem;padding:.35rem .75rem;max-width:90%}}.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-info{display:none!important}}.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}}.daily-deals-overlay{position:fixed;inset:0;background:var(--color-overlay-dark, rgba(0, 0, 0, .6));z-index:998;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.daily-deals-overlay.open{opacity:1;visibility:visible}.daily-deals-dropdown{position:fixed;top:60px;right:16px;width:360px;max-width:calc(100vw - 32px);max-height:calc(100vh - 80px);background:var(--color-nav-start, #006400);border-radius:12px;box-shadow:0 8px 32px #0006;z-index:999;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease;overflow:hidden;display:flex;flex-direction:column}.daily-deals-dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.daily-deals-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--nav-border, rgba(255, 255, 255, .1));background:linear-gradient(135deg,var(--color-btn-primary-start, #2e7d32) 0%,var(--color-btn-primary-end, #1b5e20) 100%)}.daily-deals-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text-light, #ffffff);display:flex;align-items:center;gap:8px}.daily-deals-header h3 i{color:var(--color-highlight, #ffd700)}.daily-deals-close{background:none;border:none;color:var(--color-text-muted, rgba(255, 255, 255, .7));font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .2s ease,background .2s ease}.daily-deals-close:hover{color:var(--color-text-light, #ffffff);background:var(--color-overlay-light, rgba(255, 255, 255, .1))}.daily-deals-content{padding:16px;overflow-y:auto;flex:1;background:var(--color-stats-bg-start, #004d00)}.daily-deals-tabs{display:flex;gap:4px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.daily-deals-tabs::-webkit-scrollbar{display:none}.daily-deals-tab{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 8px;background:var(--color-overlay-light, rgba(255, 255, 255, .05));border:1px solid var(--nav-border, rgba(255, 255, 255, .1));border-radius:8px;color:var(--color-text-muted, rgba(255, 255, 255, .7));cursor:pointer;transition:all .2s ease;flex:1;min-width:48px;position:relative}.daily-deals-tab i{font-size:1.1rem}.daily-deals-tab span{font-size:.7rem;white-space:nowrap}.daily-deals-tab:hover{background:#ffffff26;color:var(--color-text-light, #ffffff)}.daily-deals-tab.active{background:linear-gradient(135deg,var(--color-btn-primary-start, #2e7d32) 0%,var(--color-btn-primary-end, #1b5e20) 100%);border-color:var(--color-success, #4caf50);color:var(--color-text-light, #ffffff)}.completion-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--color-text-muted, rgba(255, 255, 255, .2))}.completion-dot.completed{background:var(--color-success, #4caf50);box-shadow:0 0 6px #4caf5080}.completion-dot.attempted{background:var(--color-warning, #ff9800);box-shadow:0 0 6px #ff980080}.daily-deals-calendar-section{background:var(--color-overlay-light, rgba(255, 255, 255, .03));border-radius:8px;padding:12px;margin-bottom:16px}.daily-deals-calendar-section .calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.daily-deals-calendar-section .calendar-nav-btn{background:none;border:none;color:var(--color-text-muted, rgba(255, 255, 255, .7));font-size:.9rem;cursor:pointer;padding:6px 10px;border-radius:4px;transition:color .2s ease,background .2s ease}.daily-deals-calendar-section .calendar-nav-btn:hover{color:var(--color-text-light, #ffffff);background:var(--color-overlay-light, rgba(255, 255, 255, .1))}.daily-deals-calendar-section .calendar-month-label{font-size:.95rem;font-weight:600;color:var(--color-text-light, #ffffff)}#daily-deals-calendar-grid{display:block}.daily-deals-calendar-section .calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.daily-deals-calendar-section .calendar-day-header{text-align:center;font-size:.7rem;color:var(--color-text-muted, rgba(255, 255, 255, .5));padding:4px 0;font-weight:600}.daily-deals-calendar-section .calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.daily-deals-calendar-section .calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:6px;background:var(--color-overlay-light, rgba(255, 255, 255, .03));cursor:pointer;transition:all .15s ease;position:relative;padding:2px}.daily-deals-calendar-section .calendar-day:hover:not(.empty):not(.disabled){background:#ffffff26}.daily-deals-calendar-section .calendar-day.empty{background:transparent;cursor:default}.daily-deals-calendar-section .calendar-day.disabled{opacity:.3;cursor:not-allowed}.daily-deals-calendar-section .calendar-day .day-number{font-size:.6rem;color:var(--color-text-light, rgba(255, 255, 255, .6));font-weight:600;position:absolute;top:3px;left:5px;z-index:1}.daily-deals-calendar-section .calendar-day.today{border:2px solid var(--color-highlight, #ffd700)}.daily-deals-calendar-section .calendar-day.today .day-number{color:var(--color-highlight, #ffd700);font-weight:700}.daily-deals-calendar-section .calendar-day.completed{background:linear-gradient(135deg,var(--color-btn-primary-start, #2e7d32) 0%,var(--color-btn-primary-end, #1b5e20) 100%)}.daily-deals-calendar-section .calendar-day.completed .day-number{color:var(--color-text-light, #ffffff)}.daily-deals-calendar-section .calendar-day .status-icon{position:relative;font-size:.95rem;margin-top:2px}.daily-deals-calendar-section .calendar-day.completed .status-icon{color:var(--color-highlight, #ffd700)}.daily-deals-calendar-section .calendar-day.attempted{background:linear-gradient(135deg,#4a3c10,#3a2d08)}.daily-deals-calendar-section .calendar-day.attempted .day-number{color:#e0e0e0}.daily-deals-calendar-section .calendar-day.attempted .status-icon{color:var(--color-warning, #f59e0b)}.daily-deals-calendar-section .calendar-day.playable{cursor:pointer;transition:all .15s ease}.daily-deals-calendar-section .calendar-day.playable:not(.attempted):not(.completed){background:#4caf5026;border:1px solid rgba(76,175,80,.3)}.daily-deals-calendar-section .calendar-day .play-icon{position:relative;font-size:.95rem;color:#4caf50;opacity:.8;transition:all .15s ease;margin-top:2px}.daily-deals-calendar-section .calendar-day.playable:hover{background:#4caf5059;border-color:#4caf5099;transform:scale(1.1);z-index:2}.daily-deals-calendar-section .calendar-day.playable:hover .play-icon{color:#66bb6a;opacity:1}.daily-deals-calendar-section .calendar-day.playable:hover .day-number{color:#fff}.daily-deals-calendar-section .calendar-day.today.playable:hover{border-color:#4caf50}.daily-deals-calendar-section .calendar-day.playable:focus{outline:2px solid #4caf50;outline-offset:1px}.daily-deals-calendar-section .calendar-day.attempted.playable:hover{background:linear-gradient(135deg,#5a4c20,#4a3d18)}.daily-deals-calendar-section .calendar-day.attempted.playable:hover .status-icon{color:#ffc107}.daily-deals-calendar-section .calendar-legend{display:flex;justify-content:center;gap:16px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.daily-deals-calendar-section .calendar-legend .legend-item{font-size:.85rem;color:#ffffffb3;display:flex;align-items:center;gap:6px}.daily-deals-calendar-section .calendar-legend .legend-item .fa-play{color:#ffffff80;font-size:.75rem}.daily-deals-calendar-section .calendar-legend .legend-item .fa-redo{color:#f59e0b;font-size:.75rem}.daily-deals-calendar-section .calendar-legend .legend-item .fa-trophy{color:gold;font-size:.75rem}.daily-deals-streak{display:flex;gap:16px;justify-content:center;margin-bottom:16px}.streak-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;background:var(--color-overlay-light, rgba(255, 255, 255, .05));border-radius:8px;flex:1}.streak-item i{font-size:1.2rem;color:var(--color-warning, #ff9800)}.streak-item i.fa-trophy{color:var(--color-highlight, #ffd700)}.streak-value{font-size:1.5rem;font-weight:700;color:var(--color-text-light, #ffffff)}.streak-label{font-size:.7rem;color:var(--color-text-muted, rgba(255, 255, 255, .6));text-transform:uppercase;letter-spacing:.5px}.daily-deals-play-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,var(--color-btn-primary-hover-start, #388e3c) 0%,var(--color-btn-primary-start, #2e7d32) 100%);border:none;border-radius:8px;color:var(--color-text-light, #ffffff);font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s ease,box-shadow .15s ease}.daily-deals-play-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4a852266}.daily-deals-play-btn:active{transform:translateY(0)}.daily-deals-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--nav-border, rgba(255, 255, 255, .1));display:flex;align-items:center;justify-content:center;gap:8px;color:var(--color-text-muted, rgba(255, 255, 255, .6));font-size:.85rem}.daily-deals-footer i,.daily-deals-footer.all-complete{color:var(--color-success, #4caf50)}.daily-deals-footer.all-complete i{color:var(--color-highlight, #ffd700)}.daily-deals-nav-btn{position:relative;background:none;border:none;color:var(--color-text-muted, rgba(255, 255, 255, .8));font-size:1.1rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:color .2s ease,background .2s ease;display:flex;align-items:center;justify-content:center}.daily-deals-nav-btn:hover{color:var(--color-text-light, #ffffff);background:var(--color-overlay-light, rgba(255, 255, 255, .1))}.daily-deals-nav-btn .notification-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;background:var(--color-error, #f44336);border-radius:50%;box-shadow:0 0 6px #f4433680}.daily-deals-nav-btn.has-incomplete .notification-dot{display:block}.daily-deals-nav-btn:not(.has-incomplete) .notification-dot{display:none}@media(max-width:767px){.daily-deals-overlay{z-index:9998}.daily-deals-dropdown{inset:auto 0 0;width:100%;max-width:100%;max-height:85vh;border-radius:16px 16px 0 0;z-index:9999;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1),opacity .2s ease,visibility .2s ease;box-shadow:0 -4px 24px #0006;padding-bottom:env(safe-area-inset-bottom,0px)}.daily-deals-dropdown.open{transform:translateY(0)}}@media(max-width:480px){.daily-deals-tab{padding:6px 8px;min-width:48px}.daily-deals-tab span{display:none}.daily-deals-tab i{font-size:1.2rem}.daily-deals-calendar-section .calendar-day .day-number{font-size:.55rem}.daily-deals-calendar-section .calendar-day .status-icon,.daily-deals-calendar-section .calendar-day .play-icon{font-size:.85rem}.streak-item{padding:10px 16px}.streak-value{font-size:1.3rem}}.daily-deals-difficulty-section{display:flex;flex-wrap:wrap;gap:6px;padding:12px 16px;background:#0000001a;border-bottom:1px solid rgba(255,255,255,.1);justify-content:center;max-height:200px;overflow-y:auto}.difficulty-btn{padding:6px 10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#ffffffb3;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.difficulty-btn:hover{background:#ffffff26;color:#ffffffe6;border-color:#ffffff4d}.difficulty-btn.active{background:#ffffff40;color:#fff;border-color:#fff6;box-shadow:0 2px 6px #0003}@media(min-width:768px)and (max-width:1024px){.daily-deals-dropdown{width:340px;right:12px}}#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;max-height:min(70vh,400px);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;z-index:2000;overflow-x:hidden;overflow-y:auto}.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;max-height:min(50vh,320px);overflow-y:auto;display:none}#mobile-language-switcher-container .language-dropdown.active{display:block}@media(max-width:767px){#language-switcher-container{display:none}}@media(min-width:768px){#mobile-language-switcher-container{display:none}}.language-dropdown::-webkit-scrollbar{width:6px}.language-dropdown::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.language-dropdown::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.language-dropdown::-webkit-scrollbar-thumb:hover{background:#fff6}.more-menu-btn{display:none}.more-menu-overlay{position:fixed;inset:0;background:var(--color-overlay-dark, rgba(0, 0, 0, .6));z-index:9998;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.more-menu-overlay.active{opacity:1;visibility:visible}.more-menu-sheet{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px 16px 0 0;border-top:1px solid var(--color-overlay-light, rgba(255, 255, 255, .12));box-shadow:0 -4px 24px #0006;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);padding-bottom:env(safe-area-inset-bottom,0px)}.more-menu-sheet.active{transform:translateY(0)}.more-menu-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem .5rem;border-bottom:1px solid var(--color-overlay-light, rgba(255, 255, 255, .08))}.more-menu-title{font-size:1rem;font-weight:600;color:var(--color-text-light, #ffffff)}.more-menu-close{background:none;border:none;color:var(--overlay-text-muted, rgba(255, 255, 255, .6));font-size:1.5rem;line-height:1;padding:.25rem;cursor:pointer}.more-menu-items{padding:.5rem 0 1rem}.more-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;background:none;border:none;color:var(--overlay-text, #ffffff);font-size:1rem;cursor:pointer;transition:background .15s ease;text-align:left}.more-menu-item:active{background:var(--color-overlay-light, rgba(255, 255, 255, .08))}.more-menu-item i{width:1.5rem;text-align:center;font-size:1.1rem;color:var(--overlay-text-muted, rgba(255, 255, 255, .7))}.how-to-play-overlay{position:fixed;inset:0;background:var(--color-overlay-dark, rgba(0, 0, 0, .6));z-index:10000;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.how-to-play-overlay.active{opacity:1;visibility:visible}.how-to-play-sheet{position:fixed;inset:0;z-index:10001;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column}.how-to-play-sheet.active{transform:translateY(0)}.how-to-play-header{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-overlay-light, rgba(255, 255, 255, .1));flex-shrink:0;gap:.75rem;padding-top:max(.75rem,env(safe-area-inset-top,0px))}.how-to-play-back{background:none;border:none;color:var(--overlay-text, rgba(255, 255, 255, .8));font-size:1.1rem;padding:.5rem;cursor:pointer;border-radius:8px;transition:background .15s}.how-to-play-back:active{background:var(--color-overlay-light, rgba(255, 255, 255, .1))}.how-to-play-title{flex:1;font-size:1.1rem;font-weight:600;color:var(--color-text-light, #ffffff)}.how-to-play-close{background:none;border:none;color:var(--overlay-text-muted, rgba(255, 255, 255, .6));font-size:1.5rem;line-height:1;padding:.25rem .5rem;cursor:pointer}.how-to-play-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.25rem 1rem 2rem;color:var(--overlay-text, rgba(255, 255, 255, .85));line-height:1.7;font-size:.95rem}.how-to-play-content h2{font-size:1.3rem;font-weight:700;margin:0 0 .75rem;color:var(--color-text-light, #ffffff)}.how-to-play-content h3{font-size:1.15rem;font-weight:600;margin:1.5rem 0 .5rem;color:var(--color-text-light, #ffffff)}.how-to-play-content h4{font-size:1rem;font-weight:600;margin:1.25rem 0 .4rem;color:var(--color-text-light, #ffffff)}.how-to-play-content p{margin:0 0 .75rem}.how-to-play-content ul{margin:0 0 1rem;padding-left:1.25rem}.how-to-play-content li{margin-bottom:.4rem}.how-to-play-content strong{color:var(--color-text-light, #ffffff)}.how-to-play-content figure{margin:1rem 0!important;text-align:center}.how-to-play-content img{max-width:100%;height:auto;border-radius:8px}.how-to-play-content figcaption{font-size:.8rem!important;color:var(--overlay-text-muted, rgba(255, 255, 255, .5))!important;margin-top:.5rem!important}.language-picker-overlay{position:fixed;inset:0;background:var(--color-overlay-dark, rgba(0, 0, 0, .6));z-index:10000;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.language-picker-overlay.active{opacity:1;visibility:visible}.language-picker-sheet{position:fixed;left:0;right:0;bottom:0;z-index:10001;max-height:70vh;background:linear-gradient(135deg,var(--btn-secondary-start) 0%,var(--btn-primary-start) 100%);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px 16px 0 0;border-top:1px solid var(--color-overlay-light, rgba(255, 255, 255, .12));box-shadow:0 -4px 24px #0006;transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px)}.language-picker-sheet.active{transform:translateY(0)}.language-picker-header{display:flex;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-overlay-light, rgba(255, 255, 255, .1));flex-shrink:0;gap:.75rem}.language-picker-back{background:none;border:none;color:var(--overlay-text, rgba(255, 255, 255, .8));font-size:1.1rem;padding:.5rem;cursor:pointer;border-radius:8px;transition:background .15s}.language-picker-back:active{background:var(--color-overlay-light, rgba(255, 255, 255, .1))}.language-picker-title{flex:1;font-size:1.1rem;font-weight:600;color:var(--color-text-light, #ffffff)}.language-picker-close{background:none;border:none;color:var(--overlay-text-muted, rgba(255, 255, 255, .6));font-size:1.5rem;line-height:1;padding:.25rem .5rem;cursor:pointer}.language-picker-list{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem 0 1rem}.language-picker-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.875rem 1.25rem;background:none;border:none;color:var(--overlay-text, #ffffff);font-size:1rem;cursor:pointer;transition:background .15s ease;text-align:left}.language-picker-option:active{background:var(--color-overlay-light, rgba(255, 255, 255, .08))}.language-picker-option.active{color:var(--color-highlight, #ffd700)}.language-picker-option .lang-check{width:1.5rem;text-align:center;font-size:.9rem;opacity:0}.language-picker-option.active .lang-check{opacity:1;color:var(--color-highlight, #ffd700)}.game-area{contain:layout style paint}.stats-sidebar{contain:layout style}.game-selection-overlay{contain:layout style paint}.preferences-modal{contain:layout style}.top-scores,.game-grid,.games-grid{contain:layout}.sudoku-grid{contain:strict}.tableau-pile,.card,.tile-2048,.game-tile,.sudoku-cell{contain:layout style}.card-shadow,.tile-shadow{contain:strict}.card.moving,.card.dragging,.is-dragging .card{will-change:transform;transform:translateZ(0);backface-visibility:hidden}.tile-2048.merging,.tile-2048.new-tile{will-change:transform,opacity;transform:translateZ(0)}.card-transition{transition:transform .3s cubic-bezier(.4,0,.2,1)}.smooth-transition{transition:transform .2s ease-out,opacity .2s ease-out}body{text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{text-rendering:optimizeLegibility}.modal-backdrop{will-change:opacity}.modal-content{will-change:transform,opacity;contain:layout style}input[type=text],input[type=number],select{contain:layout style}.scores-table,.stats-table{contain:layout}@media(max-width:768px){.game-area,.stats-sidebar,.game-selection-overlay{contain:layout style}}.loading,.skeleton{will-change:opacity;contain:strict}#confetti{will-change:transform;contain:strict}.above-fold{contain:layout}.below-fold{content-visibility:auto;contain-intrinsic-size:auto 500px}.game-logo,.overlay-logo{aspect-ratio:1/1;contain:size}svg{contain:size layout style}::-moz-selection{background-color:#0080004d;color:inherit}::selection{background-color:#0080004d;color:inherit}button:disabled,input:disabled{contain:style}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.animate-fade{animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.animate-slide{animation:slideIn .3s cubic-bezier(.4,0,.2,1)}.animate-scale{animation:scaleIn .2s cubic-bezier(.4,0,.2,1)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{*{will-change:auto!important;contain:none!important;transform:none!important}}.perf-monitor{position:fixed;bottom:10px;right:10px;background:#000c;color:#0f0;padding:10px;font-family:monospace;font-size:12px;z-index:999999;pointer-events:none;display:none}.perf-monitor.active{display:block}.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)}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:300px;gap:1.5rem;animation:fadeIn .3s ease}.loading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:72px;height:72px}.loading-cell{background:var(--sudoku-cell-border);border-radius:2px;animation:loadingPulse 1.2s ease-in-out infinite}.loading-cell:nth-child(1){animation-delay:0s}.loading-cell:nth-child(2){animation-delay:.1s}.loading-cell:nth-child(3){animation-delay:.2s}.loading-cell:nth-child(4){animation-delay:.3s}.loading-cell:nth-child(5){animation-delay:.4s}.loading-cell:nth-child(6){animation-delay:.5s}.loading-cell:nth-child(7){animation-delay:.6s}.loading-cell:nth-child(8){animation-delay:.7s}.loading-cell:nth-child(9){animation-delay:.8s}@keyframes loadingPulse{0%,to{opacity:.3}50%{opacity:1}}.loading-indicator .loading-text{font-size:.9rem;font-weight:500;color:var(--sudoku-pencil-text);letter-spacing:.02em}body:has(.sudoku-container){--sudoku-primary: #2563eb;--sudoku-primary-dark: #1d4ed8;--sudoku-primary-light: #3b82f6;--sudoku-primary-lighter: #93c5fd;--sudoku-primary-lightest: rgba(59, 130, 246, .3);--sudoku-accent: #f59e0b;--sudoku-accent-secondary: #fbbf24;--sudoku-error: #dc2626;--sudoku-success: #16a34a;--sudoku-cell-selected-bg: #bbdefb;--sudoku-cell-highlighted-bg: #f0f4f8;--sudoku-cell-same-bg: #d6e8fb;--sudoku-given-text: #1a1a2e;--sudoku-user-text: #1565c0;--sudoku-pencil-text: #78909c;--sudoku-cell-bg: #ffffff;--sudoku-cell-border: #d4dae3;--sudoku-container-background: #ffffff;--sudoku-grid-border-color: #b0bec5;--sudoku-box-border-color: #37474f;--sudoku-bg-secondary: #f1f5f9;--sudoku-btn-bg: #f1f5f9;--sudoku-btn-border: #cbd5e1;--sudoku-btn-text: #1e293b;--sudoku-btn-hover-bg: #e2e8f0}#game-area:has(.sudoku-container){overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:.5rem;box-shadow:none}#game-area:has(.sudoku-container){background:#f8fafc;background-image:none}#game-area:has(.sudoku-container):before{display:none}.sudoku-game-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .25rem;background:transparent;border:none;flex-shrink:0;flex-wrap:nowrap;width:var(--grid-size);margin:0 auto;box-sizing:border-box}.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}.stat-item.daily-info .stat-icon{color:#f59e0b;opacity:1}.stat-item.daily-info .stat-value{font-variant-numeric:tabular-nums;white-space:nowrap}.difficulty-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .4rem;border-radius:4px;font-size:.85rem;font-weight:600;line-height:1}.difficulty-badge i{font-size:inherit;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:.75rem}.sudoku-game-header .game-stats-group .stat-item{display:inline-flex;flex-direction:row;align-items:start;gap:.3rem;font-size:1rem;font-weight:500;color:var(--sudoku-given-text);background:none;border:none;border-radius:0;padding:0;line-height:1}.stat-item .stat-icon,.game-stats-group .stat-item .stat-value{display:flex;align-items:center;justify-content:center;height:1em;line-height:1}.stat-item .stat-icon{font-size:.75em;opacity:.7}.game-stats-group .stat-item .stat-value{min-width:1ch;color:var(--sudoku-given-text);font-size:inherit;font-weight:600}.timer-group{display:flex;align-items:center;gap:.35rem;margin-left:auto}.timer-btn{background:none;border:none;padding:0;width:auto;height:auto;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease;color:var(--sudoku-given-text);opacity:.7}.timer-btn:hover{opacity:1}.timer-btn:focus{outline:2px solid var(--sudoku-primary-light);outline-offset:2px}.timer-btn .timer-icon{font-size:.85rem;color:inherit;line-height:1}.timer-display{font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--sudoku-given-text);padding:0;min-width:3rem;text-align:center;letter-spacing:.02em;line-height:1}.sudoku-header-print-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .7rem;background:var(--sudoku-primary);border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease;white-space:nowrap;flex-shrink:0}.sudoku-header-print-btn:hover{background:var(--sudoku-primary-light)}.sudoku-header-print-btn:active{opacity:.85}.sudoku-header-print-btn:focus{outline:2px solid var(--sudoku-primary-light);outline-offset:2px}.sudoku-header-print-btn i{font-size:.9rem;line-height:1}.difficulty-badge.difficulty-beginner{background:#22c55e1f;color:#16a34a}.difficulty-badge.difficulty-easy{background:#3b82f61f;color:#2563eb}.difficulty-badge.difficulty-hard{background:#f973161f;color:#ea580c}.difficulty-badge.difficulty-xtreme{background:#ef44441f;color:#dc2626}.sudoku-container{--grid-size: min(80vw, 55vh, 500px);width:100%;max-width:600px;max-height:100%;margin:0 auto;padding:12px;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column;gap:0;background:var(--sudoku-container-background);border-radius:8px}.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-color);border:2px solid var(--sudoku-box-border-color);border-radius:2px;padding:0;width:var(--grid-size);height:var(--grid-size);aspect-ratio:1;flex-shrink:1}.sudoku-cell{background:#fff;border:1px solid #d4dae3;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;font-size:clamp(1.2rem,4vw,2rem);transition:background .1s 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-color)}.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-color)}.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-color:var(--sudoku-primary);z-index:1}.sudoku-cell.highlighted{background:var(--sudoku-cell-highlighted-bg)}.sudoku-cell.same-number,.sudoku-cell.highlighted.same-number{background:var(--sudoku-cell-same-bg)}.sudoku-cell.error{background:#fde8e8}.sudoku-cell.error .cell-value{color:var(--sudoku-error);font-weight:700}.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:.6rem;flex-shrink:0;width:var(--grid-size);margin:.5rem auto 0}.sudoku-actions{display:flex;gap:.3rem;flex-wrap:nowrap;justify-content:center}.sudoku-btn{padding:.35rem .6rem;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border:1px solid var(--sudoku-btn-border);border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease;display:flex;align-items:center;gap:.25rem;white-space:nowrap;order:0}.sudoku-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.sudoku-btn:active:not(:disabled){opacity:.85}.sudoku-btn:disabled{opacity:.4;cursor:not-allowed}.sudoku-btn.active{background:var(--sudoku-primary);color:var(--sudoku-btn-text)}.validate-btn{background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border-color:var(--sudoku-btn-border)}.validate-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.print-btn{background: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:.25rem auto 1rem;padding:0 .5rem}.number-btn{width:40px;height:40px;flex-shrink:0;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border:1px solid var(--sudoku-btn-border);border-radius:6px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .1s ease;display:flex;align-items:center;justify-content:center}.number-btn:hover{background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.number-btn:active{opacity:.85}.clear-btn{width:auto;padding:0 .8rem;font-size:.85rem;background:var(--sudoku-btn-bg);color:var(--sudoku-btn-text);border-color:var(--sudoku-btn-border)}.clear-btn:hover{background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.sudoku-print-link{text-align:center;padding:.25rem 0;width:var(--grid-size);margin:0 auto}.sudoku-print-link a{color:var(--sudoku-pencil-text);font-size:.75rem;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem;opacity:.7;transition:opacity .15s}.sudoku-print-link a:hover{opacity:1;color:var(--sudoku-primary)}.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%{opacity:0}to{opacity:1}}.master-teaching-panel{background:var(--sudoku-primary);border-radius:12px;padding:1rem;box-shadow:0 4px 16px #0003;border:1px solid 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:var(--sudoku-primary-light);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.master-intro{flex:1;min-width:0}.master-name{font-size:1.1rem;font-weight:700;color:var(--sudoku-btn-text);margin:0 0 .2rem}.master-title{font-size:.75rem;color:var(--sudoku-pencil-text);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:2px solid var(--sudoku-primary-light);border-radius:8px;font-size:1.5rem;font-weight:700;cursor:pointer;transition:background .15s ease}.master-option-btn:hover{background:var(--sudoku-primary);color:var(--sudoku-btn-text)}.master-option-btn:active{opacity:.85}.master-close-btn{width:100%;padding:.8rem;background:var(--sudoku-cell-highlighted-bg);color:var(--sudoku-btn-text);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(--sudoku-btn-bg)}.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:.4rem .15rem;gap:.4rem}.difficulty-badge{font-size:.7rem}.stat-item{font-size:.95rem}.stat-item .stat-icon{font-size:.7rem}.timer-display{font-size:.95rem;min-width:2.75rem}.sudoku-container{--grid-size: min(70vw, 500px);padding:1rem;max-width:600px}.sudoku-grid{width:var(--grid-size);height:var(--grid-size)}.sudoku-cell{font-size:clamp(1.2rem,4vw,1.8rem)}.sudoku-actions{gap:.3rem;flex-wrap:nowrap;justify-content:center}.sudoku-btn{padding:.35rem .5rem;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:.35rem .1rem;gap:.25rem;flex-wrap:nowrap}.difficulty-badge{font-size:.65rem;padding:.2rem .4rem}.difficulty-badge .difficulty-label,.stat-item.daily-info{display:none}.game-stats-group{gap:.6rem}.stat-item{font-size:.9rem;gap:.3rem;line-height:1}.stat-item .stat-icon{font-size:.65rem}.timer-btn .timer-icon{font-size:.75rem}.timer-display{font-size:.9rem;padding:0;min-width:3rem;line-height:1}.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}.sudoku-timer{font-size:.65rem;padding:.25rem .35rem;min-width:42px;text-align:center}.sudoku-container{--grid-size: min(85vw, 340px);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:var(--grid-size);height:var(--grid-size);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:.6rem;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.2rem;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{--grid-size: min(98vw, 340px);padding:.2rem}.sudoku-grid{width:var(--grid-size);height:var(--grid-size)}.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{--grid-size: min(50vh, 350px);padding:.3rem}.sudoku-header{flex-direction:row;padding:.3rem .5rem;margin-bottom:.3rem}.sudoku-grid{width:var(--grid-size);height:var(--grid-size)}.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{--grid-size: min(70vw, 60vh, 450px);max-width:90vw;padding:1rem}.sudoku-grid{width:var(--grid-size);height:var(--grid-size)}.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)}.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(--sudoku-btn-text);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-validation-modal .validation-content{padding:2rem 1.75rem 1.5rem!important;text-align:center;max-width:340px;background:var(--sudoku-container-background)}.sudoku-validation-modal .validation-badge{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.sudoku-validation-modal .validation-badge i{font-size:3rem}.sudoku-validation-modal .validation-success .validation-badge i{color:var(--sudoku-success)}.sudoku-validation-modal .validation-error .validation-badge i{color:var(--sudoku-error)}.sudoku-validation-modal .validation-title{color:var(--sudoku-given-text)!important;font-size:1.2rem!important;font-weight:700!important;margin:0 0 .5rem!important;text-shadow:none!important;letter-spacing:0!important}.sudoku-validation-modal .validation-message{font-size:.9rem;color:var(--sudoku-pencil-text);margin:0 0 .5rem;line-height:1.5;text-align:center}.sudoku-validation-modal .validation-detail{font-size:.8rem;color:var(--sudoku-pencil-text);opacity:.7;margin:0 0 1.25rem}.sudoku-validation-modal .validation-dismiss-btn{display:inline-block;padding:.6rem 2rem;border-radius:6px;font-size:.85rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s ease;margin-top:.5rem}.sudoku-validation-modal .validation-success .validation-dismiss-btn{background:var(--sudoku-success);color:#fff}.sudoku-validation-modal .validation-error .validation-dismiss-btn{background:var(--sudoku-primary);color:#fff}.sudoku-validation-modal .validation-dismiss-btn:hover{opacity:.9}@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,.mahjong-how-to-play{display:block;max-width:900px;margin:2rem auto;padding:1.5rem 2rem;background:var(--sudoku-container-background);border-radius:8px;border:1px solid var(--sudoku-grid-border-color);color:var(--sudoku-given-text);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,.mahjong-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-color)!important;padding-bottom:.5rem!important}.content-page.sudoku-how-to-play h3,.sudoku-how-to-play h3,.mahjong-how-to-play h3{font-size:1.3rem!important;font-weight:600!important;color:var(--sudoku-given-text)!important;margin:1.8rem 0 .8rem!important;font-family:Poppins,sans-serif!important}.sudoku-how-to-play h4,.mahjong-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,.mahjong-how-to-play p{margin:.8rem 0;color:var(--sudoku-given-text);opacity:.9}.sudoku-how-to-play strong,.mahjong-how-to-play strong{color:var(--sudoku-given-text);font-weight:600;opacity:1}.sudoku-how-to-play ul,.mahjong-how-to-play ul{margin:.6rem 0;padding-left:1.5rem}.sudoku-how-to-play li,.mahjong-how-to-play li{margin:.4rem 0;color:var(--sudoku-given-text);opacity:.9}.sudoku-how-to-play li strong,.mahjong-how-to-play li strong{color:var(--sudoku-given-text);opacity:1}.sudoku-how-to-play i.fas,.sudoku-how-to-play i.far,.mahjong-how-to-play i.fas,.mahjong-how-to-play i.far{margin-right:.3rem}@media(max-width:768px){.sudoku-how-to-play,.mahjong-how-to-play{margin:1rem;padding:1rem 1.2rem;border-radius:12px}.sudoku-how-to-play h2,.mahjong-how-to-play h2{font-size:1.3rem}.sudoku-how-to-play h3,.mahjong-how-to-play h3{font-size:1.15rem}.sudoku-how-to-play h4,.mahjong-how-to-play h4{font-size:1rem}.sudoku-how-to-play p,.sudoku-how-to-play li,.mahjong-how-to-play p,.mahjong-how-to-play li{font-size:.95rem}}@media(max-width:480px){.sudoku-how-to-play,.mahjong-how-to-play{margin:.5rem;padding:.8rem 1rem}.sudoku-how-to-play h2,.mahjong-how-to-play h2{font-size:1.2rem}.sudoku-how-to-play h3,.mahjong-how-to-play h3{font-size:1.05rem}}.daily-challenge-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:var(--sudoku-primary);border:1px solid var(--sudoku-primary-dark);border-radius:6px;color:var(--sudoku-btn-text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease}.daily-challenge-btn:hover{background:var(--sudoku-primary-light)}.daily-challenge-btn i{font-size:.9rem}.print-puzzles-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;background:var(--sudoku-primary);border:1px solid var(--sudoku-primary-dark);border-radius:6px;color:var(--sudoku-btn-text);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease}.print-puzzles-btn:hover{background:var(--sudoku-primary-light)}.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);border-radius:10px;max-width:400px;width:100%;box-shadow:0 4px 16px #00000040;border:1px solid var(--sudoku-btn-border);overflow:hidden}.modal-header-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--sudoku-primary);border-bottom:1px solid var(--sudoku-btn-border)}.modal-header-bar h2{margin:0;font-size:1.2rem;font-weight:600;color:var(--sudoku-btn-text);display:flex;align-items:center;gap:.5rem}.modal-header-bar h2 i{color:var(--sudoku-accent)}.modal-close-x{background:transparent;border:none;color:var(--sudoku-btn-text);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);border-bottom:1px solid var(--sudoku-btn-border)}.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);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.diff-tab:hover{background:var(--sudoku-cell-highlighted-bg);color:var(--sudoku-given-text)}.diff-tab.active{color:var(--sudoku-btn-text);border-bottom-color:var(--sudoku-accent);background:var(--sudoku-cell-highlighted-bg)}.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)}.calendar-nav-btn{background:var(--sudoku-btn-bg);border:1px solid var(--sudoku-btn-border);border-radius:6px;padding:.5rem .75rem;color:var(--sudoku-btn-text);cursor:pointer;transition:all .2s ease}.calendar-nav-btn:hover:not(:disabled){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.calendar-nav-btn:disabled,.calendar-nav-btn.disabled{opacity:.3;cursor:not-allowed}.daily-calendar-content .calendar-grid{display:block;grid-template-columns:none;gap:0;margin-bottom:1rem}.daily-calendar-content .calendar-day-names{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem}.daily-calendar-content .day-name{text-align:center;font-size:.75rem;font-weight:600;color:var(--sudoku-pencil-text);padding:.25rem;text-transform:uppercase}.daily-calendar-content .calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.daily-calendar-content .calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid #d4dae3;border-radius:6px;cursor:pointer;transition:all .15s ease;position:relative;min-height:40px}.daily-calendar-content .calendar-day:hover:not(.empty):not(.unavailable){background:var(--sudoku-cell-highlighted-bg);border-color:var(--sudoku-primary-light)}.daily-calendar-content .calendar-day.empty{background:transparent;border:none;cursor:default}.daily-calendar-content .calendar-day.unavailable{opacity:.3;cursor:not-allowed}.daily-calendar-content .calendar-day.completed{background:#4ade8026;border-color:var(--sudoku-success)}.daily-calendar-content .calendar-day.today{border:2px solid var(--sudoku-accent);background:var(--sudoku-cell-selected-bg)}.daily-calendar-content .calendar-day.selected{background:var(--sudoku-primary);border-color:var(--sudoku-primary-light)}.daily-calendar-content .day-number{font-size:.9rem;font-weight:500;color:var(--sudoku-given-text)}.daily-calendar-content .calendar-day.unavailable .day-number{color:var(--sudoku-pencil-text)}.daily-calendar-content .completion-indicator{position:absolute;bottom:2px;right:2px;font-size:.55rem;color:var(--sudoku-success)}.difficulty-selection{text-align:center}.difficulty-selection h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--sudoku-primary-light);display:flex;align-items:center;justify-content:center;gap:.5rem}.difficulty-selection h3 i{color:var(--sudoku-accent)}.difficulty-selection p{margin:0 0 1rem;font-size:.9rem;color:var(--sudoku-pencil-text)}.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);border:2px solid var(--sudoku-btn-border);border-radius:10px;cursor:pointer;transition:all .2s ease}.diff-option-btn:hover:not(.completed){background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}.diff-option-btn.completed{background:#4ade801f;border-color:var(--sudoku-success)}.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)}.completed-check{font-size:1.1rem;color:var(--sudoku-success)}.back-to-calendar-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:var(--sudoku-cell-highlighted-bg);border:1px solid var(--sudoku-btn-border);border-radius:8px;color:var(--sudoku-given-text);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.back-to-calendar-btn:hover{background:var(--sudoku-btn-hover-bg);border-color:var(--sudoku-primary-light)}@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,.mahjong-site-footer{width:100%;margin-top:4rem;padding:2rem 1.5rem 1.5rem;background:var(--sudoku-bg-secondary);border-top:1px solid var(--sudoku-cell-border)}.footer-content{max-width:1000px;margin:0 auto}.footer-section{margin-bottom:2rem}.footer-section-title{color:var(--sudoku-primary-light);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);text-decoration:none;font-weight:500;font-size:.9rem;transition:all .2s ease}.footer-link:hover{color:var(--sudoku-primary-hover);text-decoration:underline}.footer-link i{font-size:.9rem}.footer-copyright{margin:0;padding-top:1.5rem;color:var(--sudoku-pencil-text);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,.mahjong-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}}
