:root{color:#e8eef2;font-synthesis:none;text-rendering:optimizelegibility;background:#101316;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}*{box-sizing:border-box}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;min-width:320px;min-height:100vh;margin:0;overflow:hidden}#app{z-index:1;pointer-events:none;position:fixed;inset:0}.pixi-canvas{z-index:0;touch-action:none;-webkit-user-select:none;user-select:none;width:100vw;height:100vh;display:block;position:fixed;inset:0}.debug-fps{z-index:3;color:#e8eef2;pointer-events:none;background:#0e1114db;border:1px solid #86c7b7b3;border-radius:6px;padding:5px 8px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.78rem;position:fixed;bottom:12px;right:12px}.hidden{display:none!important}.admin-panel{z-index:4;color:#e8eef2;background:#0e1114f0;border:1px solid #d3bf76cc;border-radius:8px;width:min(520px,100vw - 28px);max-height:calc(100dvh - 28px);padding:12px;position:fixed;top:14px;left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 16px 44px #00000061}.admin-panel input{color:#f7faf8;background:#101316;border:1px solid #465258;border-radius:6px;width:100%;margin:10px 0;padding:8px}.admin-actions{grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:8px;display:grid}.admin-balance{border-top:1px solid #303a40;border-bottom:1px solid #303a40;margin:12px 0;padding:10px 0}.admin-balance h3{margin:0 0 8px;font-size:.95rem}.admin-balance-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin-bottom:8px;display:grid}.admin-balance-grid label{color:#c7d1d5;gap:4px;font-size:.78rem;display:grid}.admin-balance-grid input{margin:0}.admin-panel button{color:#f7faf8;cursor:pointer;touch-action:manipulation;background:#20282d;border:1px solid #465258;border-radius:6px;padding:8px}.admin-panel button:disabled{cursor:wait;opacity:.55}.admin-result{white-space:pre-wrap;max-height:180px;margin:10px 0 0;overflow:auto}.observer-layout{width:100%;height:100%;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));pointer-events:none;grid-template:"stats.right""tools.right"minmax(0,1fr)/minmax(260px,320px) 1fr minmax(300px,380px);gap:14px;display:grid}.right-panel-stack{pointer-events:none;grid-area:right;align-self:start;gap:14px;max-height:calc(100dvh - 28px);display:grid;overflow:hidden}.language-panel{color:#dce5df;pointer-events:auto;background:#0e1114b8;border:1px solid #455258b8;border-radius:8px;justify-content:flex-start;place-self:start stretch;align-items:center;gap:6px;padding:8px;display:flex}.language-panel span{color:#9fa9af;font-size:.78rem}.language-panel button{color:#f7faf8;cursor:pointer;touch-action:manipulation;background:#20282d;border:1px solid #465258;border-radius:6px;padding:5px 8px}.language-panel button.active{background:#24413b;border-color:#86c7b7e6}.panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;background:#0e1114d6;border:1px solid #455258b8;border-radius:8px;box-shadow:0 12px 36px #0000004d}.stats-panel{grid-area:stats;align-self:start;max-height:min(58vh,100vh - 220px);padding:14px;overflow:auto}.observer-tools-panel{grid-area:tools;align-self:start;padding:14px}.selected-panel{align-self:start;max-height:min(46vh,100vh - 260px);padding:14px;overflow:auto}.events-panel{max-height:min(34vh,300px);padding:12px 14px;overflow:auto}h2,h3,p{margin:0}h2{color:#f7faf8;font-size:1rem}h3{color:#d9e8df;margin-top:16px;font-size:.86rem}.connection-status{color:#86c7b7;margin-top:6px;font-size:.84rem;font-weight:700}.legend-list,.generation-legend,.type-filter-list{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.legend-list span,.generation-legend span{color:#dce5df;align-items:center;gap:6px;font-size:.76rem;display:inline-flex}.legend-list i,.generation-legend i{border:1px solid #ffffff6b;border-radius:50%;flex:none;width:10px;height:10px}.generation-swatch-0{background:linear-gradient(135deg,#3dad4b,#fef08a)}.generation-swatch-1{background:linear-gradient(135deg,#8e59d1,#111827)}.corpse-legend-swatch{background:#6b6257}.type-filter-list button{color:#9fa9af;cursor:pointer;touch-action:manipulation;background:#181e21c7;border:1px solid #465258;border-radius:6px;padding:5px 8px}.type-filter-list button.active{color:#f7faf8;background:#24413b;border-color:#86c7b7e0}.population-graph{border:1px solid #455258b8;border-radius:6px;width:100%;height:92px;margin-top:8px;display:block}.metric-list,.detail-list{gap:8px;margin:12px 0 0;display:grid}.metric-list>div,.detail-list>div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;display:grid}.detail-list>div{grid-template-columns:112px minmax(0,1fr)}.detail-list.compact>div{grid-template-columns:minmax(96px,1fr) auto}dt{color:#9fa9af;font-size:.78rem}dd{color:#fff;overflow-wrap:anywhere;min-width:0;margin:0;font-size:.86rem;font-weight:700}.event-list{grid-template-columns:1fr;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.event-list li{color:#dce5df;grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:8px;min-width:0;font-size:.82rem;display:grid}.event-list p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.event-type,.event-tick{color:#86c7b7;font-variant-numeric:tabular-nums;font-size:.74rem}.event-type{color:#d3bf76}.selected-content{margin-top:12px}.empty-row{color:#9fa9af;font-size:.86rem}.genome-list{gap:4px;margin:10px 0 0;padding:0;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.78rem;list-style:none;display:grid}.genome-list li{background:#181e21cc;border:1px solid #364044cc;border-radius:6px;grid-template-columns:34px minmax(120px,1fr) minmax(40px,auto);gap:8px;padding:5px 7px;display:grid}.genome-list span:first-child{color:#86c7b7;font-variant-numeric:tabular-nums}.genome-list strong{color:#f4f4f0;overflow-wrap:anywhere;font-weight:700}.current-gene{background:#53471db8!important;border-color:#f5d76ee6!important}@media (width<=900px){.observer-layout{grid-template:"stats""tools""right"minmax(0,1fr)/1fr}.stats-panel,.observer-tools-panel,.selected-panel,.events-panel{max-height:30dvh}.right-panel-stack{max-height:none;overflow:visible}}@media (width<=560px){.observer-layout{padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));gap:8px}.stats-panel,.observer-tools-panel,.selected-panel,.events-panel{max-height:24dvh}.event-list{grid-template-columns:1fr}}@media (pointer:coarse){.panel{border-radius:10px}.stats-panel,.observer-tools-panel,.selected-panel,.events-panel{padding:12px}.language-panel{flex-wrap:wrap;gap:8px}.language-panel button,.type-filter-list button,.admin-panel button{min-height:44px;padding:9px 12px;font-size:.92rem}.admin-panel input,.admin-balance-grid input{min-height:44px;font-size:1rem}.metric-list>div,.detail-list>div{gap:8px}.event-list li{grid-template-columns:auto minmax(0,1fr)}.event-list p{white-space:normal;grid-column:1/-1}}
