:root{--bg:#07111c;--bg-soft:#0d1b2c;--panel:#0c1626d1;--panel-strong:#0f1d31;--border:#a0c2ff29;--border-strong:#a0c2ff47;--text:#dce7f6;--muted:#89a0be;--accent:#7ff3cc;--accent-2:#ffbf69;--shadow:0 18px 44px #00000059;--redhat:"Red Hat Mono", sans-serif;--sans:"Trebuchet MS", "Segoe UI", sans-serif;--mono:ui-monospace, SFMono-Regular, Consolas, monospace;font:16px/1.5 var(--redhat);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#7ff3cc29,#0000 30%),radial-gradient(circle at 100% 100%,#ffbf691c,#0000 28%),linear-gradient(#07111c 0%,#0a1424 54%,#060b12 100%)}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0}button,select,input{font:inherit}button{cursor:pointer}#root{min-height:100svh}.app-shell{width:min(1400px,100vw - 32px);margin:0 auto;padding:32px 0 40px}.header{flex-direction:column;margin-bottom:24px;padding-left:20px;display:flex}.title-icon{align-items:center;gap:45px;padding:10px 0;display:flex}.title-container{flex-direction:column;gap:.4rem;line-height:.95;display:flex}#subtitle{margin:0;font-size:2rem;font-weight:350}#title{color:#f5f8fd;margin:0;font-size:3.5rem;font-weight:650}#game-icon{object-fit:cover}.description{color:var(--text);margin:16px 0 0;font-size:1.04rem}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.18em;margin:0 0 10px;font-size:.78rem;font-weight:700}.status-card,.gen-card,.panel{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:24px}.gen-card{justify-content:space-between;align-items:center;gap:10px;margin-top:20px;padding:18px;display:flex}.status-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:40px;padding:18px;display:grid}.section-heading{color:var(--text);font-size:1.2rem;font-weight:500;display:block}.status-label,.field span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;display:block}.status-card strong{color:#f6fbff;margin-top:8px;font-size:1.25rem;display:block}.workspace{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:25px;display:grid}.controls-panel{padding:18px}.panel-section+.panel-section{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}button{border:1px solid var(--border-strong);color:var(--text);background:#ffffff08;border-radius:16px;padding:12px 14px;transition:transform .15s,border-color .15s,background-color .15s,opacity .15s}button:hover:not(:disabled){border-color:#7ff3cc80;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{color:#ecfff8;background:linear-gradient(135deg,#7ff3cc3d,#7ff3cc14)}.field{gap:10px;margin-top:12px;display:grid}select,input[type=range]{width:100%}select{appearance:none;border:1px solid var(--border-strong);color:var(--text);background:#ffffff0a;border-radius:16px;padding:12px 14px}.slider-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.slider-header strong{color:#f6fbff}input[type=range]{accent-color:var(--accent)}.note{color:var(--muted);line-height:1.7}.canvas-container{flex-direction:column;gap:8px;display:flex}.board{aspect-ratio:1;cursor:pointer;background:linear-gradient(#ffffff0a,#ffffff05),#070e18e0;border:1px solid #a0c2ff38;border-radius:4px;width:100%;max-width:860px;display:block}.cell{background:#ffffff05;border:0;border-radius:0;min-width:0;min-height:0;padding:0;box-shadow:inset 0 0 0 1px #ffffff09}.cell:hover{background:#7ff3cc29}.cell.alive{background:radial-gradient(circle at 35% 35%, #e7fff4 0%, var(--accent) 42%, #1ebf94 100%);box-shadow:inset 0 0 0 1px #ffffff1a,0 0 10px #7ff3cc2e}@media (width<=1100px){.hero,.workspace{grid-template-columns:1fr}h1{max-width:14ch}}@media (width<=700px){.app-shell{width:min(100vw - 20px,1400px);padding-top:18px}.status-card,.button-row{grid-template-columns:1fr}.board{width:100%}}
