:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4;color:#e8e8ed;background:#0a0a0f;--accent: #636efa;--surface: rgba(255, 255, 255, .06);--surface-border: rgba(255, 255, 255, .1);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;min-height:100dvh}body{overflow:hidden;-webkit-tap-highlight-color:transparent}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;background:#0a0a0f;transition:opacity .4s ease}.loading-screen--fade{opacity:0;pointer-events:none}.loading-cluster{width:72px;height:72px;animation:spin 10s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-label{margin:0;font-size:.95rem;color:#ffffff80;letter-spacing:.02em}.gallery{display:flex;flex-direction:column;height:100dvh;padding-top:var(--safe-top);padding-bottom:var(--safe-bottom)}.gallery-meta{flex-shrink:0;padding:.85rem 1rem .5rem;text-align:center}.gallery-meta__name{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:.01em}.gallery-meta__age{margin:.2rem 0 0;font-size:.85rem;color:#ffffff73}.gallery-meta__resonances{margin-top:.35rem}.gallery-meta__resonance{margin:.15rem 0 0;font-size:.8rem;letter-spacing:.01em}.gallery-meta__resonance-prefix{color:#ffffff73}.gallery-body{display:flex;flex:1;min-height:0}.gallery-sidebar{flex-shrink:0;display:flex;flex-direction:column;justify-content:center;padding:.35rem .25rem .35rem .5rem;max-height:100%}.gallery-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.gallery-plot{flex:1;min-height:0;position:relative;padding:0 .25rem 0 0}.gallery-plot__empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin:0;color:#fff6;font-size:.9rem}.gallery-error{position:absolute;left:1rem;right:1rem;bottom:.5rem;margin:0;padding:.5rem .75rem;background:#b42828d9;border-radius:8px;font-size:.8rem}.gallery-controls{flex-shrink:0;padding:.5rem .75rem .75rem .25rem;background:linear-gradient(to top,#0a0a0f 70%,transparent)}.gallery-controls__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.zoom-btn{border:1px solid var(--surface-border);background:var(--surface);color:#ffffffa6;font-size:.75rem;padding:.35rem .65rem;border-radius:8px;cursor:pointer;touch-action:manipulation}.zoom-btn:disabled{opacity:.35;cursor:default}.zoom-btn:not(:disabled):active{background:#ffffff1a}.gallery-controls__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.6rem}.view-toggle{display:flex;background:var(--surface);border:1px solid var(--surface-border);border-radius:10px;padding:3px}.view-toggle__btn{border:none;background:transparent;color:#ffffff80;font-size:.85rem;font-weight:500;padding:.4rem 1rem;border-radius:8px;cursor:pointer;touch-action:manipulation;transition:background .15s,color .15s}.view-toggle__btn--active{background:#636efa40;color:#e8e8ed}.view-toggle--triple .view-toggle__btn{padding:.35rem .65rem;font-size:.78rem}.escape-toggle{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#ffffff8c;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.escape-toggle input{accent-color:var(--accent)}.escape-toggle input:disabled+span{opacity:.35}.run-chips{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}.run-chips--vertical{flex-direction:column;overflow-x:hidden;overflow-y:auto;max-height:min(70dvh,100%);padding-bottom:0;padding-right:.15rem;gap:.55rem}.run-chips::-webkit-scrollbar{display:none}.run-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--surface-border);background:var(--surface);color:#ffffff73;font-size:.7rem;padding:.3rem .5rem;border-radius:8px;cursor:pointer;touch-action:manipulation;transition:border-color .15s,background .15s,color .15s;text-align:left;white-space:nowrap}.run-chips--vertical .run-chip{width:100%;max-width:5.5rem;justify-content:center;padding:.4rem .5rem}.run-column{display:flex;flex-direction:column;align-items:center;gap:.5rem}.run-column__title{font-size:.8rem;font-weight:600;color:#ffffff8c;letter-spacing:.02em;padding-bottom:.15rem}.run-column__title sub{font-size:.65em}.run-chip--on{border-color:color-mix(in srgb,var(--chip-color) 60%,transparent);background:color-mix(in srgb,var(--chip-color) 18%,transparent);color:#e8e8ed}.run-chip--loading{opacity:.6;cursor:wait}.run-chip__dot{width:8px;height:8px;border-radius:50%;background:var(--chip-color);opacity:.9}.run-chip:not(.run-chip--on) .run-chip__dot{opacity:.35}.app-error{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:2rem;text-align:center;color:#f87171}
