Skip to content

Commit 50faff6

Browse files
committed
Update index.html with new update card for ICSE 2026 NIER acceptance and modify existing link text. Refactor CSS for roadmap display and add image zoom functionality in JavaScript for enhanced user experience.
1 parent f8b9d4b commit 50faff6

3 files changed

Lines changed: 120 additions & 52 deletions

File tree

assets/css/style.css

Lines changed: 59 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -366,48 +366,78 @@ ul {
366366
background: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
367367
}
368368

369-
.roadmap-grid {
370-
display: grid;
371-
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
372-
gap: 1.25rem;
369+
.roadmap-figure {
370+
display: flex;
371+
justify-content: center;
373372
}
374373

375-
.roadmap-card {
376-
background-color: var(--card-bg-color);
374+
.roadmap-image {
375+
width: 100%;
376+
max-width: 960px;
377+
border-radius: 0.75rem;
377378
border: 1px solid var(--border-color);
378-
border-radius: 1rem;
379-
padding: 1.25rem;
380-
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
379+
background-color: var(--card-bg-color);
380+
box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
381+
cursor: zoom-in;
381382
transition: transform 0.2s ease, box-shadow 0.2s ease;
382-
height: 100%;
383383
}
384384

385-
.roadmap-card:hover {
386-
transform: translateY(-4px);
387-
box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
385+
.roadmap-image:hover {
386+
transform: translateY(-2px);
387+
box-shadow: 0 22px 48px rgba(0, 0, 0, 0.16);
388388
}
389389

390-
.roadmap-phase {
391-
display: inline-flex;
390+
.image-zoom {
391+
position: fixed;
392+
inset: 0;
393+
display: flex;
392394
align-items: center;
393-
gap: 0.35rem;
394-
padding: 0.2rem 0.55rem;
395-
border-radius: 999px;
396-
background-color: rgba(0, 123, 255, 0.1);
397-
color: var(--primary-color);
398-
font-weight: 700;
399-
font-size: 0.85rem;
400-
letter-spacing: 0.05em;
401-
text-transform: uppercase;
395+
justify-content: center;
396+
background: rgba(0, 0, 0, 0.7);
397+
opacity: 0;
398+
pointer-events: none;
399+
transition: opacity 0.25s ease;
400+
z-index: 250;
402401
}
403402

404-
.roadmap-card h3 {
405-
margin: 0.75rem 0 0.35rem;
403+
.image-zoom.is-open {
404+
opacity: 1;
405+
pointer-events: auto;
406406
}
407407

408-
.roadmap-card p {
409-
color: var(--secondary-color);
410-
margin: 0;
408+
.image-zoom-frame {
409+
position: relative;
410+
max-width: min(1200px, 90vw);
411+
max-height: 90vh;
412+
background: var(--bg-color);
413+
padding: 0.75rem;
414+
border-radius: 0.75rem;
415+
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
416+
display: flex;
417+
align-items: center;
418+
justify-content: center;
419+
}
420+
421+
.image-zoom-frame img {
422+
width: 100%;
423+
height: 100%;
424+
object-fit: contain;
425+
border-radius: 0.5rem;
426+
}
427+
428+
.image-zoom-close {
429+
position: absolute;
430+
top: 0.35rem;
431+
right: 0.35rem;
432+
background: rgba(0, 0, 0, 0.6);
433+
color: #fff;
434+
border: none;
435+
width: 2rem;
436+
height: 2rem;
437+
border-radius: 50%;
438+
cursor: pointer;
439+
font-size: 1.25rem;
440+
line-height: 1;
411441
}
412442

413443
/* Contact Section */

assets/js/main.js

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,9 @@ document.addEventListener('DOMContentLoaded', () => {
6969
});
7070
});
7171

72+
const zoomOverlay = document.querySelector('[data-zoom-overlay]');
73+
const zoomTarget = zoomOverlay?.querySelector('[data-zoom-target]');
74+
7275
const modal = document.getElementById('pilot-modal');
7376
const applicationForm = document.getElementById('application-form');
7477
const statusField = document.getElementById('application-status');
@@ -133,7 +136,9 @@ document.addEventListener('DOMContentLoaded', () => {
133136
const closeModal = () => {
134137
modal.classList.remove('is-open');
135138
modal.setAttribute('aria-hidden', 'true');
136-
body.classList.remove('no-scroll');
139+
if (!zoomOverlay?.classList.contains('is-open')) {
140+
body.classList.remove('no-scroll');
141+
}
137142
document.removeEventListener('keydown', handleKeydown);
138143
if (lastFocusedElement) {
139144
lastFocusedElement.focus();
@@ -145,6 +150,44 @@ document.addEventListener('DOMContentLoaded', () => {
145150
overlay?.addEventListener('click', closeModal);
146151
}
147152

153+
const zoomSources = document.querySelectorAll('[data-zoom-source]');
154+
155+
const closeZoom = () => {
156+
if (!zoomOverlay) return;
157+
zoomOverlay.classList.remove('is-open');
158+
zoomOverlay.setAttribute('aria-hidden', 'true');
159+
if (zoomTarget) {
160+
zoomTarget.src = '';
161+
}
162+
if (!modal?.classList.contains('is-open')) {
163+
body.classList.remove('no-scroll');
164+
}
165+
};
166+
167+
const openZoom = (source) => {
168+
if (!zoomOverlay || !zoomTarget) return;
169+
zoomTarget.src = source.src;
170+
zoomTarget.alt = source.alt || 'Zoomed image';
171+
zoomOverlay.classList.add('is-open');
172+
zoomOverlay.setAttribute('aria-hidden', 'false');
173+
body.classList.add('no-scroll');
174+
};
175+
176+
zoomSources.forEach(img => img.addEventListener('click', () => openZoom(img)));
177+
zoomOverlay?.addEventListener('click', (event) => {
178+
if (event.target === zoomOverlay) {
179+
closeZoom();
180+
}
181+
});
182+
zoomOverlay?.querySelectorAll('[data-zoom-close]').forEach(el =>
183+
el.addEventListener('click', closeZoom)
184+
);
185+
document.addEventListener('keydown', (event) => {
186+
if (event.key === 'Escape' && zoomOverlay?.classList.contains('is-open')) {
187+
closeZoom();
188+
}
189+
});
190+
148191
const setStatus = (message, state) => {
149192
if (!statusField) {
150193
return;

index.html

Lines changed: 17 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ <h2 class="section-title">Publications</h2>
125125
<p>This paper introduces the Effective-Information Consistency Score to quantify uncertainty in Transformer Circuits. This white-box, single-pass metric helps attribute uncertainty to specific mechanisms within LLMs.</p>
126126
</li>
127127
<li>
128-
<a href="https://www.alphaxiv.org/abs/2506.11176" target="_blank" rel="noopener noreferrer">Model Discovery and Graph Simulation: A Lightweight Alternative to Chaos Engineering</a>
128+
<a href="https://www.alphaxiv.org/abs/2506.11176" target="_blank" rel="noopener noreferrer">Model Discovery and Graph Simulation: A Lightweight Gateway to Chaos Engineering</a>
129129
<p>Offline resilience estimation from a dependency graph; compares simulations to live failure injection on a microservice benchmark.</p>
130130
</li>
131131
<li>
@@ -140,6 +140,11 @@ <h2 class="section-title">Publications</h2>
140140
<div class="container">
141141
<h2 class="section-title">Updates</h2>
142142
<div class="updates-grid">
143+
<article class="update-card">
144+
<span class="update-date">December 2025</span>
145+
<h3 class="update-title">ICSE 2026 NIER acceptance</h3>
146+
<p class="update-text">Our paper “Model Discovery and Graph Simulation: A Lightweight Gateway to Chaos Engineering” was accepted to the ICSE 2026 NIER track, which recognizes our commitment to safer, simulation-driven resilience.</p>
147+
</article>
143148
<article class="update-card">
144149
<span class="update-date">September 2025</span>
145150
<h3 class="update-title">Causal AI publication</h3>
@@ -170,27 +175,8 @@ <h3 class="update-title">Sheaft framework</h3>
170175
<img src="assets/img/roadmap.svg" alt="Roadmap icon" class="section-icon" width="56" height="56">
171176
<h2 class="section-title">Roadmap</h2>
172177
</div>
173-
<div class="roadmap-grid">
174-
<article class="roadmap-card">
175-
<span class="roadmap-phase">Q4 2025</span>
176-
<h3>Design partner pilots</h3>
177-
<p>Guide Bering discovery runs and Sheaft simulations with early adopters to tune the resilience playbook.</p>
178-
</article>
179-
<article class="roadmap-card">
180-
<span class="roadmap-phase">Q1 2026</span>
181-
<h3>Self-serve ingestion</h3>
182-
<p>Ship a secure CLI and UI to import configs, traces, and telemetry, producing live dependency graphs on demand.</p>
183-
</article>
184-
<article class="roadmap-card">
185-
<span class="roadmap-phase">Q2 2026</span>
186-
<h3>Simulation workspace</h3>
187-
<p>Launch a collaborative workspace for Monte-Carlo what-if runs, result sharing, and regression tracking.</p>
188-
</article>
189-
<article class="roadmap-card">
190-
<span class="roadmap-phase">Q3 2026</span>
191-
<h3>Resilience scoring</h3>
192-
<p>Release resilience and causal emergence scores with remediation recommendations for production rollouts.</p>
193-
</article>
178+
<div class="roadmap-figure">
179+
<img src="assets/img/roadmap.svg" alt="MB3R Lab roadmap" class="roadmap-image" data-zoom-source>
194180
</div>
195181
</div>
196182
</section>
@@ -213,6 +199,15 @@ <h2 class="section-title">Contact</h2>
213199
</div>
214200
</footer>
215201

202+
<div class="image-zoom" data-zoom-overlay aria-hidden="true">
203+
<div class="image-zoom-frame">
204+
<button type="button" class="image-zoom-close" data-zoom-close aria-label="Close zoomed image">
205+
&times;
206+
</button>
207+
<img src="" alt="" data-zoom-target>
208+
</div>
209+
</div>
210+
216211
<div class="modal" id="pilot-modal" aria-hidden="true">
217212
<div class="modal-overlay" data-modal-close></div>
218213
<div class="modal-dialog" role="dialog" aria-modal="true" aria-labelledby="pilot-modal-title">

0 commit comments

Comments
 (0)