*{box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body{background:var(--bg-page);height:100%;color:var(--text-primary);font-family:Iosevka,Fira Code,JetBrains Mono,ui-monospace,monospace;font-size:14px;overflow:hidden}#app{background:var(--bg-page);flex-direction:column;gap:clamp(6px,1.5vw,12px);width:100%;height:100%;padding:clamp(6px,1.5vw,12px);display:flex}#toolbar{flex-shrink:0;justify-content:space-between;align-items:center;display:flex}#toolbar h1{align-items:center;height:35px;display:flex}#toolbar button{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;letter-spacing:.05em;padding:4px 10px;font-family:inherit;font-size:12px}#visualizations{flex-direction:column;flex:1;gap:clamp(6px,1.5vw,12px);min-height:0;display:flex}.viz-container{border:1px solid var(--border);min-width:0;min-height:0;box-shadow:0 2px 8px var(--shadow);flex:1;display:none;position:relative;overflow:hidden}.viz-container[data-active=true]{flex-direction:column;display:flex}#tab-bar{flex-shrink:0;display:flex}.tab-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex:1;padding:8px 0;font-family:inherit;font-size:12px}.tab-btn+.tab-btn{border-left:none}.tab-btn[data-active=true]{background:var(--accent);color:#fff;border-color:var(--accent)}dialog{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:0;min-width:340px;padding:1.5rem;font-family:inherit;position:fixed;top:50%;left:50%;translate:-50% -50%}@media (width<=400px){dialog{width:calc(100vw - 2rem);min-width:auto}}dialog::backdrop{background:var(--backdrop)}dialog h2{color:var(--accent);letter-spacing:.05em;text-transform:lowercase;text-align:center;margin-bottom:1.2rem;font-size:1rem;font-weight:400}dialog form{flex-direction:column;gap:1rem;display:flex}dialog label{color:var(--text-secondary);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}select{appearance:none;border:1px solid var(--border);background:var(--bg-page) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23888'/%3E%3C/svg%3E") no-repeat right .5rem center;color:var(--text-primary);border-radius:0;outline:none;font-family:inherit}select:focus{outline:none}dialog select{padding:.4rem 2rem .4rem .5rem;font-size:.9rem}dialog button{border:1px solid var(--accent);color:var(--accent);cursor:pointer;letter-spacing:.05em;background:0 0;border-radius:0;padding:.4rem 1rem;font-family:inherit;font-size:.9rem;transition:background .15s,color .15s}dialog form>button{margin-top:.5rem}@media (hover:hover){dialog button:hover{background:var(--accent);color:var(--bg-page)}}@media (width<=767px){#toolbar h1{height:28px}}
