:root{--bg:#0a0e17;--card:rgba(12,18,30,0.85);--text:#f1f5f9;--muted:#8899b0;--green:#10b981;--yellow:#f59e0b;--gray:#2a3444;--border:rgba(255,255,255,0.07);--tile:rgba(14,20,34,0.8);--accent:#3b82f6;--accent2:#06b6d4}body,html{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);position:relative;overflow-x:hidden}body:before{background:radial-gradient(ellipse at 20% 50%,rgba(59,130,246,.06) 0,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(6,182,212,.06) 0,transparent 50%),linear-gradient(180deg,rgba(10,14,23,.95) 0,rgba(10,14,23,.8))}body:after,body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none}body:after{background:repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(255,255,255,.008) 0,rgba(255,255,255,.008) 4px)}.wrap{position:relative;z-index:1;max-width:620px;margin:0 auto;padding:24px 16px}.header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;text-align:center;align-items:center}.header h1{font-size:2.2rem;font-weight:800;letter-spacing:-.02em;margin:0;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header .sub{color:var(--muted);font-size:14px;margin:2px 0 6px}.modeBadge{display:inline-block;padding:2px 8px;border-radius:999px;background:rgba(59,130,246,.12);color:var(--accent2);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle;margin-left:4px}.attempts,.modeBadge{border:1px solid var(--border)}.attempts{color:var(--muted);font-size:12px;background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:5px 14px;border-radius:999px;margin-bottom:8px}.landingPage{text-align:center}.modeCards{display:flex;gap:16px;margin-top:24px;flex-wrap:wrap;justify-content:center}.modeCard{background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;padding:28px 24px;flex:1 1;min-width:220px;max-width:280px;text-decoration:none;color:var(--text);display:flex;flex-direction:column;align-items:center;gap:10px;transition:border-color .2s,box-shadow .2s,transform .2s}.modeCard:hover{border-color:rgba(59,130,246,.4);box-shadow:0 0 30px rgba(59,130,246,.1);transform:translateY(-2px)}.modeCardIcon{font-size:40px;line-height:1}.modeCardTitle{font-size:20px;font-weight:800;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modeCardDesc{font-size:13px;color:var(--muted);line-height:1.5}.modeCardBtn{margin-top:8px;padding:8px 20px;border-radius:10px;border:1px solid rgba(59,130,246,.3);background:rgba(59,130,246,.12);color:var(--text);font-size:13px;font-weight:600}.seoContent{margin-top:32px;padding:28px 24px;background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;text-align:left}.seoContent h2{font-size:18px;font-weight:700;margin:20px 0 8px;color:var(--text)}.seoContent h2:first-child{margin-top:0}.seoContent p{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 12px}.seoContent strong{color:var(--text)}.seoLinks{display:flex;gap:16px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border);flex-wrap:wrap}.seoLinks a{color:var(--accent2);font-size:13px;text-decoration:none;font-weight:600;transition:opacity .15s}.seoLinks a:hover{opacity:.8}.resultOverlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:overlayFadeIn .3s ease;padding:20px}.resultCard{background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;padding:28px 24px 24px;max-width:480px;width:100%;text-align:center;animation:popIn .45s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.resultCard.win{border-color:rgba(16,185,129,.3);box-shadow:0 0 80px rgba(16,185,129,.12),0 0 30px rgba(16,185,129,.06)}.resultCard.loss{border-color:rgba(239,68,68,.25);box-shadow:0 0 80px rgba(239,68,68,.1),0 0 30px rgba(239,68,68,.05)}.resultIcon{font-size:48px;margin-bottom:8px;line-height:1}.resultTitle{font-size:22px;font-weight:800;margin-bottom:4px}.resultCard.win .resultTitle{background:linear-gradient(135deg,var(--green) 0,#34d399 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.resultCard.loss .resultTitle{background:linear-gradient(135deg,#ef4444,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.resultSub{font-size:14px;color:var(--muted);margin-bottom:16px}.solution{font-size:18px;font-weight:700;margin:4px 0 8px}.solutionDetails{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:12px}.solutionDetails span{font-size:11px;color:var(--muted);padding:3px 10px;border-radius:999px;border:1px solid var(--border);background:rgba(255,255,255,.03)}.shareWrap{margin-top:14px;display:flex;justify-content:center}.shareBtn{padding:9px 22px;border-radius:10px;border:1px solid rgba(16,185,129,.35);background:rgba(16,185,129,.15);color:var(--text);cursor:pointer;font-size:14px;font-weight:600;transition:background .2s,border-color .2s;letter-spacing:.01em}.shareBtn:hover{background:rgba(16,185,129,.28);border-color:rgba(16,185,129,.55)}.tryAgainBtn{margin-top:16px;padding:10px 28px;border-radius:10px;border:1px solid var(--border);background:rgba(59,130,246,.15);color:var(--text);cursor:pointer;font-size:14px;font-weight:600;transition:background .2s}.tryAgainBtn:hover{background:rgba(59,130,246,.25)}.resultImageWrap{margin:12px 0 8px;border-radius:12px;overflow:hidden;border:1px solid var(--border)}.resultImage{width:100%;max-height:220px;object-fit:cover;display:block}.resultAttribution{font-size:10px;color:var(--muted);padding:5px 10px;text-align:right;background:rgba(0,0,0,.3)}.resultAttribution a{color:var(--muted);text-decoration:underline}.resultAttribution a:hover{color:var(--accent2)}.resultCountdown{color:var(--muted);font-size:13px;margin:8px 0 0}.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}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.inputRow{display:flex;gap:8px;margin:12px 0 10px;align-items:stretch}input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);font-size:16px;outline:none;transition:border-color .2s;height:44px;box-sizing:border-box}input:focus{border-color:rgba(59,130,246,.4)}button{padding:0 20px;height:44px;border-radius:10px;border:1px solid var(--border);background:rgba(59,130,246,.15);color:var(--text);cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;transition:background .2s;box-sizing:border-box;flex-shrink:0}button:hover{background:rgba(59,130,246,.25)}button:disabled{opacity:.45;cursor:default}button.secondary{background:var(--card)}button.secondary:hover{background:rgba(255,255,255,.06)}.legend{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;color:var(--muted);justify-content:center}.badge{padding:4px 10px;border-radius:999px;font-size:11px;border:1px solid var(--border)}.badge.green{background:rgba(16,185,129,.15);color:var(--green)}.badge.yellow{background:rgba(245,158,11,.15);color:var(--yellow)}.badge.gray{background:rgba(42,52,68,.3)}.board{gap:10px}.board,.guessRow{display:flex;flex-direction:column}.guessRow{gap:0;background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:14px;overflow:hidden}.guessMeta{padding:10px 14px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.guessMeta .name{font-size:15px;font-weight:600;line-height:1.2}.guessMeta .ticker{color:var(--accent2);font-size:12px;font-weight:700;font-family:monospace}.tiles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0}.tile{padding:10px 14px;display:flex;flex-direction:column;justify-content:center;gap:4px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.tile:nth-child(3n){border-right:none}.tile:nth-child(n+4){border-bottom:none}.label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.label,.value{font-weight:600}.value{font-size:13px;display:flex;align-items:center;gap:6px;line-height:1.3}.state-green{background:rgba(16,185,129,.12)}.state-green .value{color:var(--green)}.state-yellow{background:rgba(245,158,11,.1)}.state-yellow .value{color:var(--yellow)}.state-gray{background:transparent}.arrow{font-size:14px;opacity:.8}.tile--flip{perspective:600px;animation:tileFlipBg .6s ease-in-out var(--flip-delay,0s) both}.tile--flip .label,.tile--flip .value{animation:tileFlipContent .6s ease-in-out var(--flip-delay,0s) both}@keyframes tileFlipBg{0%{transform:rotateX(0deg);background:var(--tile)}50%{transform:rotateX(90deg);background:var(--tile)}51%{transform:rotateX(90deg)}to{transform:rotateX(0deg)}}@keyframes tileFlipContent{0%{opacity:0}55%{opacity:0}to{opacity:1}}.flag{width:20px;height:14px;border-radius:2px;display:inline-block;object-fit:cover;border:1px solid rgba(255,255,255,.1);vertical-align:middle}.autocomplete{position:relative;flex:1 1}.suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;background:rgba(12,18,30,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:10px;overflow:hidden;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.5)}.suggestion{padding:8px 12px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;transition:background .15s}.suggestion.active,.suggestion:hover{background:rgba(59,130,246,.08)}.suggestion .smodel{color:var(--text);font-size:13px}.suggestion .sbrand{color:var(--accent2);font-size:12px;white-space:nowrap;font-family:monospace;font-weight:600}.footer{margin-top:12px;color:var(--muted);font-size:12px}.topNav{justify-content:space-between;margin-bottom:8px}.menuBtn,.topNav{display:flex;align-items:center}.menuBtn{padding:0;width:40px;height:40px;flex-direction:column;justify-content:center;gap:5px;background:var(--card);border:1px solid var(--border);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.menuBtn span{display:block;width:18px;height:2px;background:var(--text);border-radius:2px}.menuBtn:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}.helpBtn{padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--card);border:1px solid var(--border);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.helpBtn:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}.helpIcon{font-size:20px;font-weight:800;line-height:1;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.menuOverlay{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .3s ease}.menuOverlay.open{opacity:1;pointer-events:auto}.menuPanel{position:fixed;top:0;left:0;bottom:0;width:280px;z-index:160;background:rgba(8,12,20,.97);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid var(--border);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);visibility:hidden}.menuPanel.open{transform:translateX(0);visibility:visible}.menuHeader{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid var(--border)}.menuLogo{font-size:1.4rem;font-weight:800;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.menuClose{padding:0;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:20px;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menuClose:hover{background:rgba(255,255,255,.06);color:var(--text)}.menuNav{padding:12px 0;flex:1 1;overflow-y:auto}.menuItem{display:flex;align-items:center;justify-content:space-between;padding:13px 20px;color:var(--text);text-decoration:none;font-size:15px;font-weight:500;transition:background .15s;cursor:pointer}a.menuItem:hover{background:rgba(255,255,255,.04)}.menuItemHome{color:var(--accent2);font-weight:600}.menuDivider{padding:16px 20px 6px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:600}.howToPlayOverlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:overlayFadeIn .3s ease;padding:20px}.howToPlayCard{background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;padding:24px;max-width:460px;width:100%;animation:popIn .45s cubic-bezier(.175,.885,.32,1.275);max-height:80vh;overflow-y:auto}.howToPlayHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.howToPlayHeader h2{font-size:20px;font-weight:800;margin:0;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.howToPlayClose{padding:0;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:20px;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.howToPlayClose:hover{background:rgba(255,255,255,.06);color:var(--text)}.howToPlayBody{font-size:14px;line-height:1.65}.howToPlayBody p{margin:0 0 12px;color:var(--muted)}.howToPlayBody strong{color:var(--text)}.howToPlayBody h3{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:18px 0 8px}.howToPlayBody ul{margin:0 0 12px;padding-left:18px;color:var(--muted)}.howToPlayBody li{margin-bottom:5px}.exampleRow{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:var(--muted);font-size:13px}.exTile{padding:5px 12px;border-radius:8px;font-size:12px;font-weight:600;border:1px solid var(--border);white-space:nowrap;flex-shrink:0}.exTile.green{background:rgba(16,185,129,.15);color:var(--green)}.exTile.yellow{background:rgba(245,158,11,.15);color:var(--yellow)}.exTile.gray{background:rgba(42,52,68,.2);color:var(--muted)}.howToPlayPageWrap{background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;padding:28px 24px;margin-top:8px}.howToPlayPageTitle{font-size:1.6rem;font-weight:800;margin:0 0 20px;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.howToPlayPageLinks{display:flex;gap:16px;margin-top:24px;flex-wrap:wrap}.howToPlayPageLink{color:var(--muted);font-size:13px;text-decoration:none;transition:color .15s}.howToPlayPageLink:hover{color:var(--accent2)}.archiveCal{max-width:400px;margin:0 auto}.archiveCalHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.archiveCalTitle{font-size:17px;font-weight:700;color:var(--text)}.archiveCalNav{background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--accent);font-size:14px;cursor:pointer;padding:4px 10px;height:auto;width:auto;line-height:1.4;transition:background .15s}.archiveCalNav:hover:not(:disabled){background:rgba(59,130,246,.1)}.archiveCalNav:disabled{opacity:.25;cursor:default}.archiveCalGrid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:5px;gap:5px}.archiveCalWd{text-align:center;font-size:10px;font-weight:700;color:var(--muted);padding:2px 0 8px;text-transform:uppercase;letter-spacing:.06em}.archiveCalCell{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;gap:1px}.archiveCalCell--empty{background:transparent}.archiveCalCell--locked{border:1px solid var(--border);opacity:.3}.archiveCalCell--future{border:1px solid var(--border);opacity:.18}.archiveCalCell--puzzle{border:2px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);cursor:default;text-decoration:none;color:inherit}a.archiveCalCell--link{cursor:pointer;transition:border-color .15s,background .15s}a.archiveCalCell--link:hover{border-color:var(--accent2);background:rgba(16,185,129,.12)}.archiveCalCell--today{border:2px solid var(--accent);background:rgba(59,130,246,.12);box-shadow:0 0 10px rgba(59,130,246,.25)}.archiveCalDate{font-size:13px;font-weight:700;line-height:1;color:var(--text)}.archiveCalCell--future .archiveCalDate,.archiveCalCell--locked .archiveCalDate,.archiveCalNum{color:var(--muted)}.archiveCalNum{font-size:8px;font-weight:500;letter-spacing:.02em;line-height:1}.archiveCalCell--today .archiveCalNum{color:var(--accent2)}.archiveCalCell--won{border-color:var(--green)!important;background:rgba(16,185,129,.12)!important;box-shadow:0 0 8px rgba(16,185,129,.2)}.archiveCalDate--won,.archiveCalNum--won{color:var(--green)!important}.archiveCalLock{font-size:10px;line-height:1}@media (max-width:400px){.archiveCalGrid{gap:3px}.archiveCalDate{font-size:11px}.archiveCalNum{font-size:7px}}.puzzlePage{width:100%;max-width:640px;margin:0 auto}.puzzlePageMeta{display:flex;align-items:center;gap:12px;padding:10px 0 4px;flex-wrap:wrap}.puzzleBackLink{color:var(--accent2);text-decoration:none;font-size:13px;font-weight:600;opacity:.85;transition:opacity .15s}.puzzleBackLink:hover{opacity:1}.puzzlePageTitle{font-size:13px;color:var(--muted);font-weight:500}@media (max-width:640px){.wrap{padding:16px 10px}.guessRow .tiles{grid-template-columns:repeat(2,1fr)}.tile:nth-child(3n){border-right:1px solid var(--border)}.tile:nth-child(2n){border-right:none}.tile{border-bottom:1px solid var(--border)}.tile:last-child{border-bottom:none}.modeCards{flex-direction:column;align-items:center}.modeCard{max-width:100%}}