.sim-dashboard { width: 100%; max-width: 1100px; margin: 0 auto; }
.sim-section { margin-top: 2.25rem; }
.sim-section h2 { margin: 0; color: var(--text-tertiary); font-size: 1.35rem; }
.sim-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.sim-time { margin: 0; color: var(--text-tertiary); font-size: .9rem; font-weight: 700; }
.sim-carousel { --aspect-ratio: auto; width: 100%; }
.sim-carousel::part(base) { background: var(--surface); border: 1px solid var(--border); border-radius: 10px;
padding-bottom: 1rem; }
.sim-carousel::part(pagination) { bottom: 0.8rem; }
.sim-carousel::part(scroll-container) { height: auto; }
.sim-carousel sl-carousel-item { height: auto; }
.sim-map-slide { padding-bottom: 1rem; }
.sim-map-heading { 
    display: flex; 
    align-items: start; 
    justify-content: space-between; 
    gap: 1rem; 
    margin-bottom: .85rem; 
margin-top: 1rem; 
}
.sim-map-heading h3 { margin: 0 0 .3rem; color: var(--text-tertiary); font-size: 1.1rem; }
.sim-map-heading p { max-width: 680px; margin: 0; font-size: .88rem; line-height: 1.5; }
.sim-map-slide img { 
    display: block; 
    width: 100%; 
    aspect-ratio: 16 / 10; 
    object-fit: contain; 
    background: var(--background); 
    border: 1px solid var(--border); 
    border-radius: 7px; 
}
.sim-controls { display: grid; grid-template-columns: auto auto auto minmax(120px, 1fr) auto; align-items: center; gap: .75rem; margin-top: 1rem; }
.sim-controls label { color: var(--text-tertiary); font-size: .85rem; font-weight: 700; }
.sim-controls input { width: 100%; accent-color: var(--accent); }
.sim-progress { min-width: 4.5rem; color: var(--muted); font-size: .8rem; text-align: right; }
.sim-overview p { line-height: 1.7; }
.sim-diagram { margin: 1.5rem 0 0; text-align: center; }
.sim-diagram img { display: block; width: 100%; max-height: 560px; object-fit: contain; background: var(--surface); border: 1px solid var(--border); border-radius: 10px; }
.sim-diagram figcaption { margin-top: .5rem; color: var(--muted); font-size: .8rem; }
@media (max-width: 700px) {
    .sim-controls { grid-template-columns: auto auto 1fr auto; }
    .sim-controls label { grid-column: 1 / -1; }
    .sim-controls input { grid-column: 1 / 4; }
    .sim-controls .sim-progress { grid-column: 4; }
}
