:root{--color-white:rgba(255, 255, 255, 1);--color-black:rgba(0, 0, 0, 1);--color-cream-50:rgba(252, 252, 249, 1);--color-cream-100:rgba(255, 255, 253, 1);--color-gray-200:rgba(245, 245, 245, 1);--color-gray-300:rgba(167, 169, 169, 1);--color-gray-400:rgba(119, 124, 124, 1);--color-slate-500:rgba(98, 108, 113, 1);--color-brown-600:rgba(94, 82, 64, 1);--color-charcoal-700:rgba(31, 33, 33, 1);--color-charcoal-800:rgba(38, 40, 40, 1);--color-slate-900:rgba(19, 52, 59, 1);--color-teal-300:rgba(150, 215, 190, 1);--color-teal-400:rgba(115, 195, 165, 1);--color-teal-500:rgba(85, 175, 145, 1);--color-teal-600:rgba(66, 150, 125, 1);--color-teal-700:rgba(52, 125, 105, 1);--color-teal-800:rgba(40, 100, 85, 1);--color-red-400:rgba(235, 100, 105, 1);--color-red-500:rgba(210, 75, 70, 1);--color-orange-400:rgba(230, 135, 100, 1);--color-orange-500:rgba(200, 95, 65, 1);--color-brown-600-rgb:94,82,64;--color-teal-300-rgb:80,220,205;--color-teal-400-rgb:50,195,180;--color-teal-500-rgb:24,168,150;--color-teal-600-rgb:19,148,132;--color-slate-900-rgb:19,52,59;--color-slate-500-rgb:98,108,113;--color-red-400-rgb:255,120,125;--color-red-500-rgb:250,95,85;--color-orange-400-rgb:245,150,120;--color-orange-500-rgb:210,100,70;--color-bg-1:rgba(59, 130, 246, 0.08);--color-bg-2:rgba(245, 158, 11, 0.08);--color-bg-3:rgba(34, 197, 94, 0.08);--color-bg-4:rgba(239, 68, 68, 0.08);--color-bg-5:rgba(147, 51, 234, 0.08);--color-bg-6:rgba(249, 115, 22, 0.08);--color-bg-7:rgba(236, 72, 153, 0.08);--color-bg-8:rgba(6, 182, 212, 0.08);--color-background:var(--color-cream-50);--color-surface:var(--color-cream-100);--color-text:var(--color-slate-900);--color-text-secondary:var(--color-slate-500);--color-primary:var(--color-teal-500);--color-primary-hover:var(--color-teal-600);--color-primary-active:var(--color-teal-700);--color-secondary:rgba(var(--color-brown-600-rgb), 0.12);--color-secondary-hover:rgba(var(--color-brown-600-rgb), 0.2);--color-secondary-active:rgba(var(--color-brown-600-rgb), 0.25);--color-border:rgba(var(--color-brown-600-rgb), 0.2);--color-btn-primary-text:var(--color-cream-50);--color-card-border:rgba(var(--color-brown-600-rgb), 0.2);--color-card-border-inner:rgba(var(--color-brown-600-rgb), 0.2);--color-error:var(--color-red-500);--color-success:var(--color-teal-500);--color-warning:var(--color-orange-500);--color-info:var(--color-slate-500);--color-focus-ring:rgba(var(--color-teal-500-rgb), 0.4);--color-select-caret:rgba(var(--color-slate-900-rgb), 0.8);--focus-ring:0 0 0 3px var(--color-focus-ring);--focus-outline:2px solid var(--color-primary);--status-bg-opacity:0.15;--status-border-opacity:0.25;--select-caret-light:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23134252' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");--color-success-rgb:33,128,141;--color-error-rgb:192,21,47;--color-warning-rgb:168,75,47;--color-info-rgb:98,108,113;--font-family-base:"Inter","Segoe UI",Roboto,-apple-system,BlinkMacSystemFont,sans-serif;--font-family-mono:"Fira Code",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-md:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:30px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--letter-spacing-tight:-0.01em;--space-0:0;--space-1:1px;--space-2:2px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--radius-sm:6px;--radius-base:8px;--radius-md:10px;--radius-lg:12px;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(0, 0, 0, 0.02);--shadow-sm:0 1px 3px rgba(0, 0, 0, 0.04),0 1px 2px rgba(0, 0, 0, 0.02);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.04),0 2px 4px -1px rgba(0, 0, 0, 0.02);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.04),0 4px 6px -2px rgba(0, 0, 0, 0.02);--shadow-inset-sm:inset 0 1px 0 rgba(255, 255, 255, 0.15),inset 0 -1px 0 rgba(0, 0, 0, 0.03);--duration-fast:150ms;--duration-normal:250ms;--ease-standard:cubic-bezier(0.16, 1, 0.3, 1);--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px}html{font-size:var(--font-size-base);font-family:var(--font-family-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;box-sizing:border-box}*,::after,::before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md)}p{margin:0 0 var(--space-16) 0}a{color:var(--color-primary);text-decoration:none;transition:color var(--duration-fast) var(--ease-standard)}a:hover{color:var(--color-primary-hover)}code,pre{font-family:var(--font-family-mono);font-size:calc(var(--font-size-base) * .95);background-color:var(--color-secondary);border-radius:var(--radius-sm)}code{padding:var(--space-1) var(--space-4)}pre{padding:var(--space-16);margin:var(--space-16) 0;overflow:auto;border:1px solid var(--color-border)}pre code{background:0 0;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-16);border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:500;line-height:1.5;cursor:pointer;transition:all var(--duration-normal) var(--ease-standard);border:none;text-decoration:none;position:relative;box-shadow:var(--shadow-md)}.btn:focus-visible{outline:0;box-shadow:var(--focus-ring)}.btn--primary{background:var(--color-primary);color:var(--color-btn-primary-text)}.btn--primary:hover{background:var(--color-primary-hover)}.btn--primary:active{background:var(--color-primary-active)}.btn--secondary{background:var(--color-primary);color:var(--color-btn-primary-text)}.btn--secondary:hover{background:var(--color-primary-hover)}.btn--secondary:active{background:var(--color-primary-active)}.btn--outline{background:var(--color-primary);color:var(--color-btn-primary-text);border:1px solid var(--color-primary)}.btn--outline:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn--outline:active{background:var(--color-primary-active);border-color:var(--color-primary-active)}.btn--sm{padding:var(--space-4) var(--space-12);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn--lg{padding:var(--space-10) var(--space-20);font-size:var(--font-size-lg);border-radius:var(--radius-md)}.btn--full-width{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.form-control{display:block;width:100%;padding:var(--space-8) var(--space-12);font-size:var(--font-size-md);line-height:1.5;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-base);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}textarea.form-control{font-family:var(--font-family-base);font-size:var(--font-size-base)}select.form-control{padding:var(--space-8) var(--space-12);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--select-caret-light);background-repeat:no-repeat;background-position:right var(--space-12) center;background-size:16px;padding-right:var(--space-32)}.form-control:focus{border-color:var(--color-primary);outline:var(--focus-outline)}.form-label{display:block;margin-bottom:var(--space-8);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.form-group{margin-bottom:var(--space-16)}.card{background-color:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-card-border);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--duration-normal) var(--ease-standard)}.card:hover{box-shadow:var(--shadow-md)}.card__body{padding:var(--space-16)}.card__footer,.card__header{padding:var(--space-16);border-bottom:1px solid var(--color-card-border-inner)}.status{display:inline-flex;align-items:center;padding:var(--space-6) var(--space-12);border-radius:var(--radius-full);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.status--success{background-color:rgba(var(--color-success-rgb,33,128,141),var(--status-bg-opacity));color:var(--color-success);border:1px solid rgba(var(--color-success-rgb,33,128,141),var(--status-border-opacity))}.status--error{background-color:rgba(var(--color-error-rgb,192,21,47),var(--status-bg-opacity));color:var(--color-error);border:1px solid rgba(var(--color-error-rgb,192,21,47),var(--status-border-opacity))}.status--warning{background-color:rgba(var(--color-warning-rgb,168,75,47),var(--status-bg-opacity));color:var(--color-warning);border:1px solid rgba(var(--color-warning-rgb,168,75,47),var(--status-border-opacity))}.status--info{background-color:rgba(var(--color-info-rgb,98,108,113),var(--status-bg-opacity));color:var(--color-info);border:1px solid rgba(var(--color-info-rgb,98,108,113),var(--status-border-opacity))}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:var(--space-16);padding-left:var(--space-16)}@media (min-width:640px){.container{max-width:var(--container-sm)}}@media (min-width:768px){.container{max-width:var(--container-md)}}@media (min-width:1024px){.container{max-width:var(--container-lg)}}@media (min-width:1280px){.container{max-width:var(--container-xl)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:var(--space-4)}.gap-8{gap:var(--space-8)}.gap-16{gap:var(--space-16)}.m-0{margin:0}.mt-8{margin-top:var(--space-8)}.mb-8{margin-bottom:var(--space-8)}.mx-8{margin-left:var(--space-8);margin-right:var(--space-8)}.my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.p-0{padding:0}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-16{padding-top:var(--space-16);padding-bottom:var(--space-16)}.px-16{padding-left:var(--space-16);padding-right:var(--space-16)}.block{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:var(--focus-outline);outline-offset:2px}@font-face{font-family:FKGroteskNeue;src:url('https://r2cdn.perplexity.ai/fonts/FKGroteskNeue.woff2') format('woff2')}body{margin:0;padding:0;font-family:var(--font-family-base);background:var(--color-background);color:var(--color-text);overflow-x:hidden;transition:all var(--duration-normal) var(--ease-standard)}.main-menu{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-background),var(--color-cream-100));padding:var(--space-20)}.menu-content{max-width:1200px;width:100%;text-align:center}.app-title{font-size:4rem;font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-primary),var(--color-teal-300));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--space-4);text-shadow:0 2px 4px rgba(0,0,0,.1)}.app-subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);margin-bottom:var(--space-24)}.subtitle-credit a{color:var(--color-red-500);text-decoration:none;transition:color .2s}.subtitle-credit a:hover{color:var(--color-success);text-decoration:underline}.game-mode-selection h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-24);color:var(--color-text)}.mode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-20);margin-bottom:var(--space-32)}.mode-card{background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-24);cursor:pointer;transition:all var(--duration-normal) var(--ease-standard);box-shadow:var(--shadow-sm)}.mode-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.mode-card.selected{border-color:var(--color-primary);background:var(--color-bg-1)}.mode-icon{font-size:3rem;margin-bottom:var(--space-16)}.mode-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-8);color:var(--color-text)}.mode-card p{color:var(--color-text-secondary);line-height:1.6}.menu-actions{display:flex;gap:var(--space-16);justify-content:center;flex-wrap:wrap}.theme-selection{min-height:100vh;padding:var(--space-24);background:var(--color-background)}.theme-content{max-width:1400px;margin:0 auto}.theme-content h2{text-align:center;font-size:var(--font-size-3xl);margin-bottom:var(--space-24)}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-16);margin-bottom:var(--space-24)}.theme-card{background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-16);cursor:pointer;transition:all var(--duration-normal) var(--ease-standard);box-shadow:var(--shadow-sm)}.theme-card p{margin-bottom:0}.theme-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.theme-card.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-teal-500-rgb),.3)}.theme-preview{height:120px;border-radius:var(--radius-base);margin-bottom:var(--space-16);position:relative;overflow:hidden}.back-menu-btn{position:absolute;top:25px;right:20px;background-color:var(--color-primary);color:var(--color-btn-primary-text);border:none;border-radius:6px;padding:10px 16px;font-size:16px;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:background-color .3s;z-index:1000}.back-menu-btn:hover{background-color:var(--color-primary-hover)}.classic-preview{background:linear-gradient(135deg,#9a8b7e,#cabdaa)}.aurora-preview{background:linear-gradient(45deg,#1a237e,#7c4dff,#00e676,#4fc3f7);background-size:400% 400%;animation:3s ease-in-out infinite aurora-shimmer}.holographic-preview{background:linear-gradient(45deg,#ff6b9d,#c44569,#f8b500,#00d4ff);background-size:200% 200%;animation:2s linear infinite holo-rotation}.mocha-preview{background:linear-gradient(135deg,#8d4004,#bf6830,#ddbf94)}.cherry-preview{background:linear-gradient(135deg,#ff4757,#ff6b9d,#ffc048)}.zen-preview{background:linear-gradient(135deg,#f5c23f,#6ddf9c,#e86b57)}.synthwave-preview{background:linear-gradient(45deg,#ff006e,#8338ec,#06ffa5);position:relative}.synthwave-preview::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(6,255,165,.1) 2px,rgba(6,255,165,.1) 4px)}.pastel-preview{background:linear-gradient(135deg,#ffb3d9,#b3e5ff,#ffffb3)}.metallic-preview{background:linear-gradient(135deg,#ffdf01,#b79001,#a57c01);position:relative}.matrix-preview{background:linear-gradient(135deg,#000,#030,#060);position:relative;overflow:hidden}.matrix-preview::after{content:'';position:absolute;top:-50%;left:0;width:100%;height:200%;background:repeating-linear-gradient(180deg,transparent,transparent 2px,rgba(0,255,0,.4) 2px,rgba(0,255,0,.4) 4px);animation:3s linear infinite matrix-cascade}.ocean-preview{background:linear-gradient(135deg,#002240,#046,#068,#33c2e6,#66e0ff);background-size:200% 200%;animation:3s ease-in-out infinite wave-motion}.fire-preview{background:linear-gradient(135deg,#f44,#f80,#fa0,#f44);background-size:200% 200%;animation:1.5s ease-in-out infinite fire-flicker}.galaxy-preview{background:linear-gradient(135deg,#000 0,#1a1a2e 25%,#16213e 50%,#0f3460 75%,#000 100%);position:relative;overflow:hidden}.galaxy-preview::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 15% 25%,#fff 1px,transparent 1px),radial-gradient(circle at 60% 40%,#fff 1px,transparent 1px),radial-gradient(circle at 30% 70%,#fff 1px,transparent 1px),radial-gradient(circle at 75% 80%,#fff 1px,transparent 1px),radial-gradient(circle at 50% 15%,#fff 1px,transparent 1px);background-size:50px 50px,60px 60px,40px 40px,70px 70px,55px 55px;opacity:.6;pointer-events:none}.retro-preview{background:linear-gradient(135deg,#f0f,#0ff,#ff0);background-size:200% 200%;animation:2s ease-in-out infinite retro-pulse}.theme-rainyDay{--theme-board-bg:linear-gradient(135deg, #121920, #152128, #182630, #1c2b38, #203140);--theme-cell-bg:rgba(40, 55, 70, 0.3);background:radial-gradient(circle at center,#1c2a35 0,#0b1218 60%,#04070a 100%);--interface-bg:linear-gradient(135deg, #040609, #080d12, #0f161d, #16202a)}.rainy-preview{background:linear-gradient(135deg,#06090d,#0b1117,#141b22);position:relative;overflow:hidden}.rainy-preview::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1px 6px at 20% 30%,rgba(255,255,255,.3) 50%,transparent 100%),radial-gradient(1px 8px at 50% 60%,rgba(255,255,255,.25) 50%,transparent 100%),radial-gradient(1px 5px at 80% 40%,rgba(255,255,255,.2) 50%,transparent 100%),radial-gradient(1px 7px at 35% 75%,rgba(255,255,255,.28) 50%,transparent 100%),radial-gradient(1px 6px at 65% 25%,rgba(255,255,255,.22) 50%,transparent 100%),radial-gradient(1px 5px at 10% 85%,rgba(255,255,255,.18) 50%,transparent 100%),radial-gradient(1px 7px at 90% 55%,rgba(255,255,255,.26) 50%,transparent 100%);background-repeat:repeat;background-size:50px 60px;opacity:.8}.theme-rainyDay .game-interface{background:var(--interface-bg);position:relative;overflow:hidden}.theme-rainyDay .game-interface::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1px 6px at 20% 30%,rgba(255,255,255,.3) 50%,transparent 100%),radial-gradient(1px 8px at 50% 60%,rgba(255,255,255,.25) 50%,transparent 100%),radial-gradient(1px 5px at 80% 40%,rgba(255,255,255,.2) 50%,transparent 100%),radial-gradient(1px 7px at 35% 75%,rgba(255,255,255,.28) 50%,transparent 100%);background-repeat:repeat;background-size:150px 100px;opacity:.5}.theme-rainyDay .game-board{background:var(--theme-board-bg);box-shadow:inset 0 0 35px rgba(0,0,0,.5)}.theme-actions{text-align:center;display:flex;gap:var(--space-16);justify-content:center;flex-wrap:wrap}.game-customization{min-height:100vh;padding:var(--space-24);background:var(--color-background);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;position:relative;overflow:auto}.customization-content{max-width:1000px;width:100%;margin:50px auto 0;display:flex;flex-direction:column;align-items:center}.customization-content h2{text-align:center;font-size:var(--font-size-3xl);margin-bottom:var(--space-24)}.customization-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:var(--space-20);margin-bottom:var(--space-24);width:100%;justify-content:center;align-content:center}.setting-card{background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:var(--space-20);box-shadow:var(--shadow-sm);width:100%;height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;min-height:200px}@media (max-width:768px){:root{--duration-fast:80ms}.setting-card{min-height:auto; padding:12px;}}.setting-card h3{margin-bottom:var(--space-24);color:var(--color-text)}.animation-options,.grid-size-options,.shape-options{display:flex;gap:var(--space-8);flex-wrap:wrap;justify-content:center;padding:20px 0 0}.anim-option,.shape-option,.size-option{background:var(--color-secondary);border:1px solid var(--color-border);border-radius:var(--radius-base);padding:var(--space-8) var(--space-16);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);font-size:var(--font-size-md)}.anim-option:hover,.shape-option:hover,.size-option:hover{background:var(--color-secondary-hover)}.anim-option.active,.shape-option.active,.size-option.active{background:var(--color-primary);color:var(--color-btn-primary-text);border-color:var(--color-primary)}.target-dropdown{width:100%;max-width:250px;padding:10px 32px 10px 16px;border:1px solid var(--color-slate-500,#98a1b3);background:var(--color-cream-100,#fffaf5) url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2398a1b3' stroke-width='2'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e") no-repeat right 12px center/16px;color:var(--color-slate-900,#0f172a);border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:border-color .2s,box-shadow .2s;appearance:none;margin-top:20px}.target-dropdown:hover{border-color:var(--color-teal-500,#33a8b5)}.target-dropdown:focus{outline:0;border-color:var(--color-teal-500,#33a8b5);box-shadow:0 0 0 3px rgba(33,128,141,.2)}#winning-target-card{opacity:0;transition:opacity .3s}#winning-target-card.visible{opacity:1}.accessibility-options,.effects-toggles{display:flex;flex-direction:column;gap:var(--space-12)}.toggle-label{display:flex;align-items:center;cursor:pointer;font-size:var(--font-size-md);margin-bottom:var(--space-16)}.toggle-label input[type=checkbox]{display:none}.toggle-slider{width:50px;height:24px;background:var(--color-secondary);border-radius:var(--radius-full);position:relative;margin-right:var(--space-12);transition:all var(--duration-fast) var(--ease-standard)}.toggle-slider::after{content:'';position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--color-surface);border-radius:50%;transition:all var(--duration-fast) var(--ease-standard)}.toggle-label input[type=checkbox]:checked+.toggle-slider{background:var(--color-primary)}.toggle-label input[type=checkbox]:checked+.toggle-slider::after{transform:translateX(26px)}.volume-control{display:flex;align-items:center;gap:var(--space-12);margin:var(--space-12) 0}.volume-control input[type=range]{flex:1}.customization-actions{text-align:center;display:flex;gap:var(--space-16);justify-content:center;flex-wrap:wrap}.game-interface{min-height:100vh;background:var(--interface-bg),var(--color-background);position:relative;overflow:hidden;display:flex;flex-direction:column}.floating-actions{position:fixed;bottom:var(--space-20);right:var(--space-20);display:flex;flex-direction:column;gap:var(--space-8);z-index:100}.fab{width:56px;height:56px;border-radius:50%;background:var(--color-primary);color:var(--color-btn-primary-text);border:none;font-size:var(--font-size-lg);cursor:pointer;box-shadow:var(--shadow-lg);transition:all var(--duration-fast) var(--ease-standard);display:flex;align-items:center;justify-content:center}.fab:hover{transform:scale(1.1);box-shadow:0 8px 25px rgba(0,0,0,.15)}.fab:active{transform:scale(.95)}.game-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-20) var(--space-16);background:linear-gradient(rgba(255,255,255,.08),rgba(255,255,255,.08)),var(--interface-bg);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);backdrop-filter:blur(4px)}#mode-specific-info{display:none!important}.game-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-primary),var(--color-teal-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:var(--color-text);margin:0 0 var(--space-4) 0;line-height:1.1;text-align:left;text-shadow:0 1px 2px rgba(0,0,0,.1);cursor:pointer;transition:color var(--duration-fast, .2s) ease;user-select:none}.game-title:hover{background:linear-gradient(135deg,var(--color-teal-600),var(--color-teal-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 1px 2px rgba(0,0,0,.15)}.mode-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 4px;text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-weight-medium);line-height:1.2;text-align:right}.game-stats{display:flex;gap:var(--space-16);align-items:stretch;background:rgba(var(--color-background-rgb),.6);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.stat-item{text-align:center;flex:1;height:64px;min-width:80px;border-radius:var(--radius-md);padding:var(--space-8) var(--space-12);box-shadow:var(--shadow-sm);transition:all var(--duration-fast) var(--ease-standard);position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border:none}.stat-item:hover{box-shadow:var(--shadow-md),0 0 0 1px rgba(255,255,255,.2);transform:translateY(-1px)}.stat-label{font-size:var(--font-size-xs);margin:var(--space-4) 0 0;text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-weight-medium);flex-shrink:0;color:var(--color-white)}.stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);text-shadow:0 1px 1px rgba(0,0,0,.1);margin:0;flex:1;display:flex;align-items:center;justify-content:center;line-height:1;color:var(--color-white);font-family:var(--font-family-mono)}.game-stats>.stat-item:first-child{background:var(--color-primary);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.1)}.game-stats>.stat-item:nth-child(2){background:var(--color-success);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.1)}.game-stats>.stat-item:nth-child(3){background:var(--color-warning);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.1)}.game-stats>.stat-item:nth-child(4){background:var(--color-info);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.1)}.game-stats>.stat-item:nth-child(4) .stat-value{font-family:var(--font-family-mono)}.game-controls{display:flex;gap:var(--space-12);justify-content:center;align-items:center;padding:var(--space-24) var(--space-16) var(--space-12);flex-wrap:wrap}.undo-counter{font-size:var(--font-size-md);color:var(--color-text-secondary);background:var(--color-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:var(--space-8) var(--space-16);font-weight:var(--font-weight-medium);display:inline-flex;align-items:center;gap:var(--space-6);box-shadow:var(--shadow-xs);transition:all var(--duration-fast) var(--ease-standard)}.game-board-container{display:flex;justify-content:center;padding:var(--space-20);position:relative}.game-board{position:relative;border-radius:16px;padding:var(--space-16);box-shadow:var(--shadow-lg);transition:all var(--duration-normal) var(--ease-standard);background:var(--theme-board-bg,var(--color-bg-1));display:grid;gap:var(--space-8)}.game-board.size-4{grid-template-columns:repeat(4,115px);grid-template-rows:repeat(4,115px);gap:8px;padding:16px}@media (max-width:768px){.game-board.size-4{grid-template-columns:repeat(4,92px);grid-template-rows:repeat(4,92px);gap:6px;padding:12px}}@media (max-width:480px){.game-board.size-4{grid-template-columns:repeat(4,80px);grid-template-rows:repeat(4,80px);gap:6px;padding:12px}}.game-board.size-5{grid-template-columns:repeat(5,92px);grid-template-rows:repeat(5,92px);gap:6px;padding:16px}@media (max-width:768px){.game-board.size-5{grid-template-columns:repeat(5,74px);grid-template-rows:repeat(5,74px);gap:6px;padding:10px}}@media (max-width:480px){.game-board.size-5{grid-template-columns:repeat(5,64px);grid-template-rows:repeat(5,64px);gap:6px;padding:10px}}.game-board.size-6{grid-template-columns:repeat(6,80px);grid-template-rows:repeat(6,80px);gap:6px;padding:16px}@media (max-width:768px){.game-board.size-6{grid-template-columns:repeat(6,64px);grid-template-rows:repeat(6,64px);gap:5px;padding:10px}}@media (max-width:480px){.game-board.size-6{grid-template-columns:repeat(6,56px);grid-template-rows:repeat(6,56px);gap:5px;padding:10px}}.game-board.size-8{grid-template-columns:repeat(8,69px);grid-template-rows:repeat(8,69px);gap:4px;padding:16px}@media (max-width:768px){.game-board.size-8{grid-template-columns:repeat(8,55px);grid-template-rows:repeat(8,55px);gap:4px;padding:8px}}.grid-cell{background:var(--theme-cell-bg,var(--color-bg-2));border-radius:var(--tile-border-radius,var(--radius-base));transition:all var(--duration-fast) var(--ease-standard);overflow:hidden;box-shadow:0 4px 8px rgba(0,0,0,.2),0 1px 3px rgba(0,0,0,.1),inset 0 1px 1px rgba(255,255,255,.2),inset 0 -1px 1px rgba(0,0,0,.1)}.grid-cell::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.1) 0,rgba(255,255,255,.04) 40%,rgba(0,0,0,.02) 70%,rgba(0,0,0,.05) 100%);pointer-events:none}.tile{position:absolute;display:flex;align-items:center;justify-content:center;font-weight:600;border-radius:var(--tile-border-radius,var(--radius-base));transition:transform .1s ease-in-out;box-shadow:var(--shadow-sm),inset 0 2px 2px rgba(255,255,255,.15);z-index:10;text-shadow:0 1px 2px rgba(0,0,0,.1)}.tile::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.1) 0,rgba(255,255,255,.04) 40%,rgba(0,0,0,.02) 70%,rgba(0,0,0,.05) 100%);z-index:1}.tile-new{animation:.1s ease-in-out tile-pop}.merge-effect{animation:150ms ease-in-out merge-pop}@keyframes tile-pop{0%{transform:scale(0)}50%{transform:scale(1.05)}100%{transform:scale(1)}}@keyframes merge-pop{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width:768px){.tile{transition:transform 80ms ease-in-out}.tile-new{animation:80ms ease-in-out tile-pop}.merge-effect{animation:120ms ease-in-out merge-pop}}.grid-cell{position:relative}.tile{transition:left var(--animation-duration) ease,top var(--animation-duration) ease,transform .2s ease}.tile.glow-effect{box-shadow:0 0 20px rgba(var(--color-primary-rgb,33,128,141),.5)}.tile.new-tile{animation:.3s cubic-bezier(.68,-.55,.265,1.55) tile-spawn}.tile.merged-tile{animation:.4s cubic-bezier(.68,-.55,.265,1.55) tile-merge}.tile.moving{z-index:20}.shape-circle .grid-cell,.shape-circle .tile{border-radius:50%}.shape-hexagon .grid-cell,.shape-hexagon .tile{clip-path:polygon(25% 0%,75% 0%,100% 50%,75% 100%,25% 100%,0% 50%)}.particles-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:15}.floating-scores{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:25}.floating-score{position:absolute;font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);color:var(--color-primary);animation:1.5s ease-out forwards float-up;z-index:25;text-shadow:0 2px 4px rgba(0,0,0,.3)}.timed-challenge{position:fixed;top:var(--space-20);left:50%;transform:translateX(-50%);background:var(--color-warning);color:var(--color-surface);padding:var(--space-12) var(--space-20);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:50;animation:2s infinite challenge-pulse}.challenge-info{display:flex;gap:var(--space-16);align-items:center}.challenge-timer{font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}.challenge-goal{font-size:var(--font-size-md)}.zen-ambient{position:relative;margin-top:var(--space-16);bottom:25px;left:auto;right:auto;pointer-events:none;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:row;gap:0;width:auto;align-self:center;flex-shrink:0}.zen-ambient.hidden{display:none}.ambient-text{margin:0;font-size:var(--font-size-lg);color:var(--color-gray-300);text-align:center;opacity:.8;padding:6px 12px;background:rgba(255,255,255,.1);border-radius:8px;backdrop-filter:blur(5px);white-space:nowrap;animation:6s ease-in-out infinite zen-scale-fade;line-height:1.2}@keyframes zen-scale-fade{0%,100%{transform:scale(1);opacity:.4}50%{transform:scale(1.1);opacity:.8}}@media (max-width:768px){.zen-ambient{margin-top:var(--space-20);flex-direction:row}.ambient-text{padding:4px 8px;font-size:var(--font-size-md);white-space:nowrap}.target-dropdown{margin-top:0}.animation-options,.grid-size-options,.shape-options{padding:0}}@media (max-width:480px){.game-board.size-8{grid-template-columns:repeat(8,42px);grid-template-rows:repeat(8,42px);gap:4px;padding:8px}.zen-ambient{margin-top:var(--space-20)}.ambient-text{padding:3px 6px;font-size:var(--font-size-sm);white-space:nowrap}}.game-message{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;transition:all var(--duration-normal, .3s) var(--ease-standard, ease);overflow:hidden}.game-message.hidden{opacity:0;pointer-events:none}.game-message .message-content{background:var(--color-surface,#fff);border-radius:var(--radius-lg,12px);padding:var(--space-32,2rem);text-align:center;box-shadow:var(--shadow-lg,0 10px 25px rgba(0,0,0,.2));max-width:600px;margin:var(--space-20,1.25rem);position:relative;animation:.35s cubic-bezier(.25,.46,.45,.94) message-bounce;border:1px solid var(--color-primary,#333);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;align-items:center}.game-message .message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-16,1rem);width:100%}.game-message .message-content h2{margin:var(--space-24) 0 0;color:var(--color-primary,#333);font-size:var(--font-size-4xl, 2.5rem);flex:1}.game-message .message-content p{font-size:var(--font-size-2xl, 1.25rem)!important;line-height:1.6;margin:var(--space-12,.75rem) 0;color:var(--color-text,#333);word-wrap:break-word;overflow-wrap:break-word;text-align:center;max-width:100%;padding-right:0;width:100%}.game-message .close-btn{background:0 0;border:none;font-size:28px;cursor:pointer;color:var(--color-text-secondary,#666);padding:var(--space-8,.5rem);border-radius:var(--radius-sm,4px);transition:all var(--duration-fast, .2s) var(--ease-standard, ease);width:40px;height:40px;display:flex;align-items:center;justify-content:center;margin-left:var(--space-12,.75rem);position:absolute;top:10px;right:10px}.game-message .close-btn:hover{background:var(--color-secondary,#f0f0f0);color:var(--color-text,#333);transform:scale(1.1)}.game-message .close-btn.hidden{display:none}.game-message .achievement-celebration{margin:var(--space-16,1rem) 0;padding:var(--space-16,1rem);background:var(--color-success,#4caf50);color:var(--color-btn-primary-text,#fff);border-radius:var(--radius-base,8px);animation:2s ease-in-out infinite celebration-glow;width:100%}.game-message .celebration-icon{font-size:2rem;margin-bottom:var(--space-8,.5rem)}.game-message .message-actions{display:flex;gap:var(--space-12,.75rem);justify-content:center;margin-top:var(--space-20,1.25rem);flex-wrap:wrap;width:100%}.game-message .stats-section{display:flex;flex-direction:column;gap:var(--space-2,.125rem);margin:var(--space-8,.5rem) 0;padding:0;background:rgba(var(--color-surface-rgb,255,255,255),.8);text-align:center;overflow:hidden;max-width:100%;width:100%;font-family:inherit}.game-message .stat-line{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-2,.125rem) 0;font-size:1.5rem!important;gap:0;width:100%;margin:0}.game-message .stat-label{font-weight:var(--font-weight-medium,500);color:var(--color-text-secondary,#666);flex:none;text-align:center;font-size:var(--font-size-xl)}.game-message .stat-value{font-weight:var(--font-weight-bold,700);font-size:1.5rem!important;min-width:100px;text-align:center}.game-message #modal-final-score{color:var(--color-warning,#f59e0b)!important}.game-message #modal-final-moves{color:var(--color-info,#3b82f6)!important}@keyframes message-bounce{0%{opacity:0;transform:scale(.95) translateY(20px) rotate(0)}60%{opacity:1;transform:scale(1.02) translateY(-5px) rotate(2.5deg)}100%{opacity:1;transform:scale(1) translateY(0) rotate(0)}}@media (max-width:768px){.game-message .stats-section{padding:var(--space-12,.75rem);gap:var(--space-8,.5rem)}.game-message .stat-line{flex-direction:column;align-items:center;gap:var(--space-4,.25rem);text-align:center;font-size:var(--font-size-lg)!important}.game-message .stat-value{font-size:var(--font-size-2xl, 1rem)!important;text-align:center;min-width:auto}.game-message .message-content p{font-size:var(--font-size-2xl, 1.125rem)!important;margin:0}.game-message .message-content{animation:.3s cubic-bezier(.25,.46,.45,.94) message-bounce}.stat-item{padding:var(--space-4) var(--space-8);height:58px}.stat-label{margin-top:var(--space-6)}.stat-value{margin-bottom:var(--space-4)}}.pause-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.9);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;z-index:1000;transition:all var(--duration-normal) var(--ease-standard)}.pause-overlay.hidden{opacity:0;pointer-events:none}.pause-content{text-align:center;color:var(--color-surface)}.pause-animation{width:100px;height:100px;border:4px solid rgba(255,255,255,.2);border-top:4px solid var(--color-primary);border-radius:50%;margin:0 auto var(--space-24);animation:2s linear infinite pause-spin}.pause-content h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-12);color:var(--color-warning)}.pause-actions{display:flex;gap:var(--space-16);justify-content:center;margin-top:var(--space-24);flex-wrap:wrap}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1000;transition:all var(--duration-normal) var(--ease-standard);padding:var(--space-20)}.modal.hidden{opacity:0;pointer-events:none}.modal-content{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:600px;max-height:80vh;overflow:hidden;width:100%;animation:.3s cubic-bezier(.68,-.55,.265,1.55) modal-slide-in;display:flex;flex-direction:column}.modal-content--wide{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-24);border-bottom:1px solid var(--color-border);flex-shrink:0;height:80px;overflow:hidden}.modal-header h3{margin:0;font-size:var(--font-size-xl);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-close{background:0 0;border:none;font-size:28px;cursor:pointer;color:var(--color-text-secondary);padding:var(--space-4);border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-standard);width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-close:hover{background:var(--color-secondary);color:var(--color-text)}.modal-body{padding:var(--space-24);overflow-y:auto;max-height:calc(80vh - 80px);flex:1}.progress-bar-container{display:flex;align-items:center;justify-content:space-between;padding:var(--space-8);background:var(--interface-bg);border:1px solid rgba(var(--color-slate-500-rgb),.25);border-radius:var(--radius-base);box-shadow:var(--shadow-xs);max-width:500px;width:100%;margin:var(--space-16) auto 0;z-index:5}.progress-info{display:flex;align-items:center;gap:var(--space-6);flex:1;max-width:calc(100% - 100px)}#progress-percent{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-gray-400);white-space:nowrap;min-width:35px}.progress-bar{flex:1;height:12px;max-width:100%;background:rgba(var(--color-slate-500-rgb),.2);border-radius:var(--radius-full);overflow:hidden;position:relative;margin-right:var(--space-8)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-success));border-radius:var(--radius-full);transition:width var(--duration-normal) var(--ease-standard);width:0%}.target-score{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-gray-400);white-space:nowrap;padding-left:var(--space-8);border-left:1px solid var(--color-border);min-width:80px}.target-score span{color:var(--color-primary);font-weight:var(--font-weight-bold)}body.theme-classic .progress-fill{background:linear-gradient(90deg,#f67c5f,#edcf72)}body.theme-aurora .progress-fill{background:linear-gradient(90deg,#ab47bc,#00e676)}body.theme-holographic .progress-fill{background:linear-gradient(90deg,#ff6b9d,#4ecdc4)}body.theme-mochaMousse .progress-fill{background:linear-gradient(90deg,#a68a64,#d4af37)}body.theme-cherryButter .progress-fill{background:linear-gradient(90deg,#ff4757,#ffa502)}body.theme-zenGradient .progress-fill{background:linear-gradient(90deg,#e17055,#6c5ce7)}body.theme-synthwaveNeon .progress-fill{background:linear-gradient(90deg,#00b894,#00cec9)}body.theme-pastelDream .progress-fill{background:linear-gradient(90deg,#fdcb6e,#e17055)}body.theme-metallicGold .progress-fill{background:linear-gradient(90deg,gold,#daa520)}body.theme-cyberpunkMatrix .progress-fill{background:linear-gradient(90deg,#0f0,green)}body.theme-oceanDepths .progress-fill{background:linear-gradient(90deg,#0077be,#00b4d8)}body.theme-fireElements .progress-fill{background:linear-gradient(90deg,#ff416c,#ff4b2b)}body.theme-galaxySpace .progress-fill{background:linear-gradient(90deg,indigo,#9400d3)}body.theme-retroArcade .progress-fill{background:linear-gradient(90deg,#ff0080,#ff8000)}body.theme-rainyDay .progress-fill{background:linear-gradient(90deg,#667eea,#764ba2)}@media (max-width:768px){.progress-bar-container{max-width:95%;padding:var(--space-6);margin-bottom:var(--space-8)}.progress-bar{max-width:none;height:10px}#progress-percent,.target-score{font-size:var(--font-size-xs)}.game-controls{padding:var(--space-10)}}.achievements-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-16);margin-bottom:var(--space-24)}.stat-card{text-align:center;padding:var(--space-16);background:var(--color-bg-1);border-radius:var(--radius-base)}.stat-number{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.stat-card .stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-4)}.achievements-list{display:grid;gap:var(--space-12);max-height:400px;overflow-y:auto;padding:var(--space-10)}.achievement-item{display:flex;align-items:center;padding:var(--space-16);background:var(--color-bg-2);border-radius:var(--radius-base);transition:all var(--duration-fast) var(--ease-standard)}.achievement-item.unlocked{background:var(--color-success);color:var(--color-btn-primary-text)}.achievement-item.unlocked .achievement-icon{animation:1s ease-in-out achievement-bounce}.achievement-icon{font-size:var(--font-size-2xl);margin-right:var(--space-16)}.achievement-info h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-md)}.achievement-info p{margin:0;font-size:var(--font-size-sm);opacity:.8}.analytics-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-24);background:var(--color-bg-1);border-radius:var(--radius-base);padding:var(--space-4)}.tab-btn{flex:1;padding:var(--space-12) var(--space-16);background:0 0;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);font-size:var(--font-size-md);color:var(--color-text)}.tab-btn.active{background:var(--color-primary);color:var(--color-btn-primary-text)}.tab-content{display:none}.tab-content.active{display:block}.chart-container{margin-bottom:var(--space-24);background:var(--color-surface);border-radius:var(--radius-base);padding:var(--space-16)}.perf-stat{padding:var(--space-16);background:var(--color-bg-1);border-radius:var(--radius-base)}.analytics-content{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-20);box-shadow:var(--shadow-md);margin-top:var(--space-24)}.performance-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-16);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-16);margin-top:var(--space-16)}.perf-stat{background:var(--color-bg-1);border-radius:var(--radius-base);padding:var(--space-16);text-align:center;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease-standard),box-shadow .25s var(--ease-standard)}.perf-stat:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.perf-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.perf-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.chart-container{background:var(--color-bg-1);border-radius:var(--radius-base);padding:var(--space-16);box-shadow:var(--shadow-xs);margin-bottom:var(--space-20)}.progress-overview{background:var(--color-surface);border-radius:var(--radius-base);padding:var(--space-16);box-shadow:var(--shadow-xs);margin-bottom:var(--space-16)}.progress-overview h4{margin-bottom:var(--space-12);font-size:var(--font-size-lg);color:var(--color-primary)}.mode-progress-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-16);margin-top:var(--space-12)}.mode-progress-list>div{background:var(--color-bg-2);border-radius:var(--radius-base);padding:var(--space-16);box-shadow:var(--shadow-xs);display:flex;align-items:center;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text);gap:var(--space-4)}.mp-label{font-weight:var(--font-weight-bold);color:var(--color-text);margin-right:var(--space-2);position:relative}.mp-value{font-weight:var(--font-weight-regular);color:var(--color-text-secondary)}.patterns-analysis{background:var(--color-surface);border-radius:var(--radius-base);padding:var(--space-16);box-shadow:var(--shadow-sm);margin-bottom:var(--space-16)}.patterns-analysis h4{font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:var(--space-12)}.pattern-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-16)}.insight{background:var(--color-bg-2);padding:var(--space-16);border-radius:var(--radius-base);box-shadow:var(--shadow-xs);font-size:var(--font-size-sm);color:var(--color-text)}@media (max-width:768px){.analytics-content,.chart-container,.perf-stat{padding:var(--space-12)}.mode-progress-list,.pattern-insights{grid-template-columns:1fr}}.help-sections{display:grid;gap:var(--space-24)}.help-section h4{font-size:var(--font-size-lg);margin-bottom:var(--space-12);color:var(--color-primary)}.mode-explanations,.shortcuts-list{display:grid;gap:var(--space-8)}.mode-explain,.shortcut{padding:var(--space-12);background:var(--color-bg-1);border-radius:var(--radius-base);border-left:4px solid var(--color-primary)}.shortcut kbd{background:var(--color-secondary);padding:var(--space-2) var(--space-6);border-radius:var(--radius-sm);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.color-reference{display:flex;gap:var(--space-12);flex-wrap:wrap}.color-ref-item{display:flex;align-items:center;gap:var(--space-8)}.color-sample{width:30px;height:30px;border-radius:var(--radius-sm);border:2px solid var(--color-border)}.theme-editor h4{margin-bottom:var(--space-16)}.color-pickers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-16);margin-bottom:var(--space-24)}.color-picker-group label{display:block;margin-bottom:var(--space-8);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.color-picker-group input[type=color]{width:100%;height:50px;border:none;border-radius:var(--radius-base);cursor:pointer}.theme-preview-container h5{margin-bottom:var(--space-12)}.custom-preview{padding:var(--space-16);border-radius:var(--radius-base);background:var(--color-bg-1)}.preview-tiles{display:flex;gap:var(--space-8);justify-content:center}.preview-tile{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-base);font-weight:var(--font-weight-bold);color:#fff}.theme-actions{display:flex;gap:var(--space-12);justify-content:center;margin-top:var(--space-16)}.achievement-notification{position:fixed;top:var(--space-20);right:var(--space-20);background:var(--color-success);color:var(--color-btn-primary-text);padding:var(--space-20);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1001;max-width:350px;transform:translateX(400px);transition:all var(--duration-normal) var(--ease-standard)}.achievement-notification:not(.hidden){transform:translateX(0);animation:.5s cubic-bezier(.68,-.55,.265,1.55) achievement-slide-in}.achievement-content{display:flex;align-items:center;position:relative}.achievement-notification .achievement-icon{font-size:var(--font-size-3xl);margin-right:var(--space-16)}.achievement-details .achievement-title{font-weight:var(--font-weight-bold);margin-bottom:var(--space-4);font-size:var(--font-size-lg)}.achievement-details .achievement-description{font-size:var(--font-size-sm);opacity:.9}.achievement-animation{position:absolute;top:-10px;right:-10px}.sparkle{position:absolute;width:6px;height:6px;background:rgba(255,255,255,.8);border-radius:50%;animation:2s ease-in-out infinite sparkle-twinkle}.sparkle:nth-child(2){animation-delay:.5s;top:10px;right:15px}.sparkle:nth-child(3){animation-delay:1s;top:20px;right:5px}.touch-instructions{position:relative;margin-top:auto;bottom:15px;left:auto;transform:none;display:flex;gap:var(--space-16);background:var(--color-gray-200);padding:var(--space-12) var(--space-20);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);z-index:10;align-self:center;flex-shrink:0;width:auto;align-items:center}.instruction-item{font-size:var(--font-size-sm);color:var(--color-gray-400);margin:0}.theme-classic{--theme-board-bg:linear-gradient(135deg, #A9988B, #A89684);--theme-cell-bg:rgba(202, 189, 170, 1);--color-primary-rgb:161,136,127;--interface-bg:linear-gradient(135deg, #fefcfb, #f5f0e8, #e8dfd5)}.theme-aurora{--theme-board-bg:linear-gradient(135deg, #1a237e, #7c4dff, #00e676, #4fc3f7);--theme-cell-bg:rgba(255, 255, 255, 0.1);--color-primary-rgb:124,77,255;--interface-bg:linear-gradient(135deg, #b3cde0, #d1c4e9, #b3ffd9)}.theme-aurora .game-board{background-size:400% 400%;animation:8s ease-in-out infinite aurora-flow}.theme-holographic{--theme-board-bg:linear-gradient(45deg, #ff6b9d, #c44569, #f8b500);--theme-cell-bg:rgba(255, 255, 255, 0.15);--interface-bg:linear-gradient(45deg, #ffe6ee, #ffcccb, #fff5cc)}.theme-holographic .game-board{background-size:200% 200%;animation:8s linear infinite holo-shift;position:relative}.theme-mochaMousse{--theme-board-bg:linear-gradient(135deg, #8d4004, #bf6830, #ddbf94);--theme-cell-bg:rgba(221, 191, 148, 0.3);--interface-bg:linear-gradient(135deg, #f5d4b3, #ffe6cc, #fff8e6)}.theme-cherryButter{--theme-board-bg:linear-gradient(135deg, #ff4757,  #ff6b9d, #ffc048);--theme-cell-bg:rgba(255, 192, 72, 0.3);--interface-bg:linear-gradient(135deg, #ffd6e0, #ffead9, #ffe6f0)}.theme-zenGradient{--theme-board-bg:linear-gradient(135deg, #f5c23f, #76d599 , #f87865);--theme-cell-bg:rgba(109, 223, 156, 0.25);--interface-bg:linear-gradient(135deg, #fff9e6, #ecfff2, #ffeeec)}.theme-zenGradient .game-board{animation:6s ease-in-out infinite zen-breathe}.theme-synthwaveNeon{--theme-board-bg:linear-gradient(45deg, #ff006e, #8338ec, #06ffa5);--theme-cell-bg:rgba(255, 0, 110, 0.15);--interface-bg:linear-gradient(135deg, #1e0d33 0%, #0c1938 50%, #051f24 100%);background:linear-gradient(45deg,#ff006e,#8338ec,#06ffa5);position:relative;box-shadow:20px -20px 80px rgba(255,0,110,.6),0 0 60px rgba(131,56,236,.4);border-radius:var(--radius-lg)}.theme-synthwaveNeon .game-board{position:relative;z-index:5;background:var(--theme-board-bg);border-radius:var(--radius-lg)}.theme-synthwaveNeon .game-board::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(6,255,165,.1) 2px,rgba(6,255,165,.1) 4px);pointer-events:none;border-radius:var(--radius-lg);z-index:6}@media (max-width:768px){.theme-synthwaveNeon .game-board::after{background:repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(6,255,165,.08) 1px,rgba(6,255,165,.08) 3px)}}.theme-synthwaveNeon .game-interface{position:relative;overflow:hidden;perspective:2400px;perspective-origin:50% 48%;transform-style:preserve-3d}.theme-synthwaveNeon .game-interface::after{content:'';position:absolute;top:50%;left:50%;transform-origin:50% 0%;transform:translateX(-50%) rotateX(83deg);width:200vw;height:200%;background-image:repeating-linear-gradient(to right,rgba(255,0,200,.32) 0 2px,transparent 2px 64px),repeating-linear-gradient(to top,rgba(255,0,200,.28) 0 2px,transparent 2px 96px);background-position:0 0,0 36px;opacity:.92;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,0.08) 6%,rgba(0,0,0,0.30) 14%,rgba(0,0,0,0.55) 24%,rgba(0,0,0,0.80) 36%,rgba(0,0,0,1) 50%,rgba(0,0,0,1) 100%),linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,0.08) 6%,rgba(0,0,0,0.30) 14%,rgba(0,0,0,0.55) 24%,rgba(0,0,0,0.80) 36%,rgba(0,0,0,1) 50%,rgba(0,0,0,1) 100%),linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.theme-pastelDream{--theme-board-bg:linear-gradient(135deg, #ffb3d9, #b3e5ff, #ffffb3);--theme-cell-bg:rgba(255, 255, 255, 0.4);--interface-bg:linear-gradient(135deg, #fff0f5, #e6f7ff, #fffde6)}.theme-pastelDream .game-board{filter:blur(.5px);animation:4s ease-in-out infinite dream-float}.theme-metallicGold{--theme-board-bg:linear-gradient(135deg, #FFDF01, #B79001, #A57C01);--theme-cell-bg:rgba(183, 144, 1, 0.4);--interface-bg:linear-gradient(135deg, #F4F4F4, #ECE6D4, #E5D7A4)}.theme-metallicGold .grid-cell{border:1px solid rgba(255,223,1,.4)}.theme-cyberpunkMatrix{--theme-board-bg:linear-gradient(135deg, #002200, #003300, #004400);--theme-cell-bg:rgba(0, 255, 0, 0.1);background:#010;--interface-bg:linear-gradient(135deg, #000C00 0%, #001600 50%, #001E00 100%)}.theme-cyberpunkMatrix .game-board{position:relative;overflow:hidden;background:var(--theme-board-bg);box-shadow:0 0 5px rgba(0,255,0,.1),inset 0 0 5px rgba(0,255,0,.1);border-radius:var(--radius-lg)}.theme-cyberpunkMatrix .game-board::before{content:'';position:absolute;top:-50%;left:0;width:100%;height:200%;background:repeating-linear-gradient(180deg,transparent,transparent 2px,rgba(0,255,0,.15) 2px,rgba(0,255,0,.15) 4px);animation:5s linear infinite matrix-cascade;pointer-events:none;border-radius:var(--radius-lg)}@media (max-width:768px){.theme-cyberpunkMatrix .game-board::before{background:repeating-linear-gradient(180deg,transparent,transparent 2px,rgba(0,255,0,.08) 2px,rgba(0,255,0,.08) 4px)}.theme-galaxySpace .game-interface::after{display:none}}.theme-cyberpunkMatrix .game-interface{position:relative;overflow:hidden;background:var(--interface-bg);isolation:isolate;--matrix-green:0,255,128;--col-w:18px;--dot-gap:20px;--dot-size:1px}.theme-cyberpunkMatrix .game-interface::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.1) 40%,rgba(0,0,0,.18) 100%),repeating-linear-gradient(to right,rgba(var(--matrix-green),.1) 0 1px,transparent 1px var(--col-w));-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%);opacity:.55;filter:saturate(.9) contrast(1.03)}.theme-cyberpunkMatrix .game-interface::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(circle,rgba(var(--matrix-green),.35) 0 var(--dot-size),transparent var(--dot-size));background-size:var(--col-w) var(--dot-gap);background-position:center 6px;-webkit-mask-image:radial-gradient(120% 80% at 50% 50%,black 60%,rgba(0,0,0,0.85) 78%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%);mask-image:radial-gradient(120% 80% at 50% 50%,black 60%,rgba(0,0,0,0.85) 78%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%);opacity:.42;filter:blur(.2px) saturate(.85) contrast(1.02)}@keyframes matrix-cascade{0%{transform:translateY(0)}100%{transform:translateY(50%)}}.theme-oceanDepths{--theme-board-bg:linear-gradient(135deg, #002240, #004466, #006688, #33c2e6, #66e0ff);--theme-cell-bg:rgba(51, 194, 230, 0.2);background:radial-gradient(circle at center,#66d9ff 0,#046 50%,#002240 100%);--interface-bg:linear-gradient(135deg, #c0dce6, #a3d0e6, #8ac4e0, #72b9d9)}.theme-oceanDepths .game-board{background:var(--theme-board-bg);background-size:300% 300%;animation:8s ease-in-out infinite ocean-wave;border-radius:var(--radius-lg)}@keyframes ocean-wave{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.theme-fireElements{--theme-board-bg:linear-gradient(135deg, #ff4d4d, #ff9933, #ffcc33);--theme-cell-bg:rgba(255, 102, 0, 0.1);background:radial-gradient(circle at center,#300 0,#100 100%);--interface-bg:linear-gradient(135deg, #fff2e3, #ffd8b0, #ffc6a1, #ffb8a0)}.theme-fireElements .game-board{position:relative;background:var(--theme-board-bg);background-size:200% 200%;animation:3s ease-in-out infinite alternate fire-flicker;border-radius:var(--radius-lg);box-shadow:0 0 30px rgba(255,102,0,.4),inset 0 0 10px rgba(255,68,68,.2);overflow:hidden}@keyframes fire-flicker{0%,100%{filter:brightness(1) contrast(1)}25%{filter:brightness(1.08) contrast(1.05)}50%{filter:brightness(1.12) contrast(1.08)}75%{filter:brightness(1.05) contrast(1.02)}}.theme-galaxySpace{--theme-board-bg:radial-gradient(circle at 50% 40%, #152044 0%, #0b1328 50%, #040814 100%);--theme-cell-bg:rgba(255, 255, 255, 0.05);--interface-bg:none}.theme-galaxySpace .game-interface{position:relative;overflow:hidden;background:linear-gradient(135deg,#000010,#020b1b,#04102e,#000010)}.theme-galaxySpace .game-interface::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:0 0}.theme-galaxySpace .game-interface::after{content:'';position:absolute;top:15%;left:10%;width:60px;height:60px;background:radial-gradient(circle at 30% 30%,#eee 0,#ccc 40%,#999 60%,transparent 80%);border-radius:50%;box-shadow:0 0 25px rgba(200,200,200,.2);z-index:1}.theme-galaxySpace .game-board{position:relative;background:var(--theme-board-bg);border-radius:var(--radius-lg);overflow:hidden;z-index:2;border:1px solid;border-image:linear-gradient(135deg,rgba(0,246,255,0.4),rgba(131,126,255,0.4),rgba(255,102,255,0.4)) 1;box-shadow:0 0 10px rgba(100,150,255,.1)}.theme-galaxySpace .game-board::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 20% 40%,rgba(255,255,255,.8) 1px,transparent 1px),radial-gradient(circle at 80% 60%,rgba(255,255,255,.6) 1px,transparent 1px),radial-gradient(circle at 50% 80%,rgba(255,255,255,.4) 1px,transparent 1px),radial-gradient(circle at 30% 20%,rgba(255,255,255,.7) 1px,transparent 1px),radial-gradient(circle at 70% 30%,rgba(255,255,255,.5) 1px,transparent 1px),radial-gradient(circle at 40% 60%,rgba(255,255,255,.9) 1.5px,transparent 2px);background-size:120px 120px,180px 180px,150px 150px,160px 160px,140px 140px,200px 200px;animation:5s ease-in-out infinite stars-twinkle;pointer-events:none}@keyframes stars-twinkle{0%,100%{opacity:.6}50%{opacity:1}}.theme-retroArcade{--theme-board-bg:linear-gradient(135deg, #ff00ff, #00ffff, #ffff00);--theme-cell-bg:rgba(255, 0, 255, 0.2);--interface-bg:linear-gradient(135deg, #ffd6ff, #d6faff, #fff3b0)}.theme-retroArcade .game-board{background-size:200% 200%;animation:6s ease-in-out infinite retro-shift;position:relative}.theme-retroArcade .game-board::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px);border-radius:var(--radius-lg)}.tile-disappear{animation:.6s ease-out forwards tileDisappear;pointer-events:none}.tile-disappear::after,.tile-disappear::before{content:'';position:absolute;top:50%;left:50%;width:4px;height:4px;background:inherit;border-radius:50%;opacity:.7;transform:translate(-50%,-50%);animation:.6s ease-out forwards particleScatter}.tile-disappear::before{transform:translate(-50%,-50%) translateX(-20px) scale(.5);animation-delay:.1s}.tile-disappear::after{transform:translate(-50%,-50%) translateY(20px) scale(.7);animation-delay:.2s}@keyframes tileDisappear{0%{transform:scale(1);opacity:1}50%{transform:scale(.8) rotate(5deg);opacity:.5}100%{transform:scale(0) rotate(10deg);opacity:0}}@keyframes particleScatter{0%{opacity:.7;transform:translate(-50%,-50%) translateX(0) translateY(0) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) translateX(30px) translateY(-30px) scale(0)}}@media (prefers-color-scheme:dark){.tile-disappear::after,.tile-disappear::before{background:rgba(255,255,255,.5)}}@keyframes tile-spawn{0%{transform:scale(0) rotate(180deg);opacity:0}100%{transform:scale(1) rotate(0);opacity:1}}@keyframes tile-merge{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes float-up{0%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-100px) scale(.8)}}@keyframes aurora-flow{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes aurora-shimmer{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes holo-rotation{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(360deg)}}@keyframes holo-shift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(200%)}}@keyframes matrix-rain{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}@keyframes matrix-cascade{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}@keyframes wave-motion{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes retro-pulse{0%,100%{background-position:0 50%;filter:saturate(1)}50%{background-position:100% 50%;filter:saturate(1.5)}}@keyframes retro-shift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes zen-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes breathing{0%,100%{transform:scale(1);opacity:.6}50%{transform:scale(1.1);opacity:.8}}@keyframes zen-fade{0%,100%{opacity:.4}50%{opacity:.8}}@keyframes grid-pulse{0%,100%{opacity:.3}50%{opacity:.7}}@keyframes dream-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes stars-twinkle{0%,100%{opacity:.8}25%{opacity:.4}50%{opacity:1}75%{opacity:.6}}@keyframes challenge-pulse{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.05)}}@keyframes pause-spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes modal-slide-in{0%{transform:translateY(-100px) scale(.8);opacity:0}100%{transform:translateY(0) scale(1);opacity:1}}@keyframes achievement-slide-in{0%{transform:translateX(400px) rotate(10deg);opacity:0}100%{transform:translateX(0) rotate(0);opacity:1}}@keyframes achievement-bounce{0%,100%{transform:scale(1)}25%{transform:scale(1.2) rotate(-5deg)}50%{transform:scale(1.1) rotate(5deg)}75%{transform:scale(1.15) rotate(-2deg)}}@keyframes celebration-glow{0%,100%{box-shadow:0 0 20px rgba(var(--color-success-rgb),.5)}50%{box-shadow:0 0 40px rgba(var(--color-success-rgb),.8)}}@keyframes sparkle-twinkle{0%,100%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1) rotate(180deg);opacity:1}}@media (max-width:768px){.game-board-container{padding:var(--space-12)}.theme-card{padding:12px}.customization-content{margin-top: 0;}.game-interface{min-height:100vh}.app-subtitle{font-size:var(--font-size-lg)}.floating-actions{bottom:var(--space-8);right:var(--space-8);gap:var(--space-4)}.fab{width:36px;height:36px;font-size:var(--font-size-md)}.game-header{flex-direction:column;gap:var(--space-16);text-align:center}.game-stats{justify-content:center;gap:var(--space-8)}.mode-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-12)}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.theme-card h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4);}.mode-card{border-radius:var(--radius-md);padding:var(--space-12)}.mode-card p{margin-bottom:4px}.customization-grid{grid-template-columns:1fr; gap:12px;}.achievement-notification{right:var(--space-12);left:var(--space-12);max-width:none;transform:translateY(-200px)}.achievement-notification:not(.hidden){transform:translateY(0)}.touch-instructions{flex-direction:column;gap:var(--space-4);bottom:var(--space-4);left:var(--space-8);right:var(--space-8);padding:6px 8px;transform:none;border-radius:var(--radius-md);text-align:center}.modal-content{margin:var(--space-12);max-height:calc(100vh - 24px)}.app-title{margin-top:var(--space-16);font-size:2.5rem}}.hidden{display:none!important}.fade-in{animation:.3s ease-in fadeIn}.slide-up{animation:.3s ease-out slideUp}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}#new-game-confirm{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1001;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}#new-game-confirm:not(.hidden){opacity:1;visibility:visible}.new-game-confirm-modal .modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);backdrop-filter:blur(5px);border-radius:var(--radius-lg)}.new-game-confirm-modal .modal-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-20);max-width:400px;width:90%;text-align:center;box-shadow:var(--shadow-xl);position:relative;z-index:2;color:var(--color-text-primary)}.new-game-confirm-modal .modal-content h3{margin-bottom:var(--space-8);font-size:var(--font-size-3xl);color:var(--color-primary);font-weight:var(--font-weight-bold)}.new-game-confirm-modal .modal-content p{margin-bottom:var(--space-16);color:var(--color-text-secondary);line-height:1.4;font-size:var(--font-size-md)}.new-game-confirm-modal .modal-buttons{display:flex;gap:var(--space-8);justify-content:center}.new-game-confirm-modal .modal-buttons .btn{flex:1;max-width:120px;padding:var(--space-8) var(--space-12);font-weight:500}.new-game-confirm-modal .modal-buttons .btn-primary{background-color:var(--color-success);border-color:var(--color-success);color:var(--color-white)}.new-game-confirm-modal .modal-buttons .btn-primary:hover{background-color:var(--color-teal-600);border-color:var(--color-teal-600);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.new-game-confirm-modal .modal-buttons .btn-secondary{background-color:var(--color-warning);border-color:var(--color-warning);color:var(--color-white)}.new-game-confirm-modal .modal-buttons .btn-secondary:hover{background-color:var(--color-orange-400);border-color:var(--color-orange-400);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.credit-line{ z-index: 10;text-align:center;padding:var(--space-10);margin-top:var(--space-12,12px);font-size:var(--font-size-md);color:var(--color-gray-400);font-weight:500;border-top:1px solid var(--color-border,rgba(0,0,0,.1));box-shadow:0 1px 3px rgba(0,0,0,.05)}.credit-line a{color:var(--color-primary);text-decoration:none;transition:all var(--duration-fast, .2s) ease}.credit-line a:hover{color:var(--color-primary-hover,#40a9ff);text-decoration:underline;transform:translateY(-1px)}.credit-line a:active{transform:translateY(0)}.touch-instructions.hidden+.credit-line{display:none}@media (max-width:768px){.new-game-confirm-modal .modal-content{padding:var(--space-16);width:95%;margin:var(--space-8)}.instruction-item{font-size:10px;}.new-game-confirm-modal .modal-buttons{flex-direction:row;gap:var(--space-6)}.new-game-confirm-modal .modal-buttons .btn{max-width:100px}.credit-line{z-index: 10;padding:var(--space-8,6px);margin-top:var(--space-8,8px);font-size:13px}#theme-fab,.theme-fab{display:none!important}}