/* Shared, opt-in frame for static SSC simulations. Set --shell-* tokens per page. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body.sim-shell{background:var(--shell-bg,#1a1a18);color:var(--shell-text,#F1EFE8);font-family:var(--shell-body-font,Georgia,serif);font-weight:300;line-height:1.7;min-height:100vh;}
.sim-shell__header{background:var(--shell-bg,#1a1a18);border-bottom:1px solid var(--shell-border,#3a3a36);padding:1.5rem 4rem 0;}
.sim-shell__topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;}
.sim-shell__nav{display:flex;align-items:center;justify-content:flex-end;gap:1.5rem;flex-wrap:wrap;}
.sim-shell__catalogue-link{font-family:var(--shell-mono-font,monospace);font-size:0.6rem;letter-spacing:0.08em;color:var(--shell-soft,#6b6b66);text-decoration:none;}
.sim-shell__catalogue-link:hover{color:var(--shell-text,#F1EFE8);}
.sim-shell__title{font-family:var(--shell-display-font,Georgia,serif);font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.1;color:var(--shell-text,#F1EFE8);margin-bottom:0.75rem;}
.sim-shell__title em{font-style:italic;color:var(--shell-muted,#b4b2a9);}
.sim-shell__framing,.sim-shell__question{font-size:0.95rem;font-style:italic;color:var(--shell-muted,#b4b2a9);max-width:600px;padding-bottom:1.5rem;}
.sim-shell__main{padding:2.5rem 4rem;max-width:1100px;margin:0 auto;}
.sim-shell__visualization-panel{background:var(--shell-surface,#242422);border:1px solid var(--shell-border,#3a3a36);padding:1.5rem;}
.sim-shell__visualization-frame{position:relative;width:100%;margin-bottom:1.25rem;}
.sim-shell__canvas{width:100%;display:block;}
.sim-shell__control-grid{display:grid;grid-template-columns:var(--shell-control-columns,repeat(3,minmax(0,1fr)));gap:1.1rem;margin-bottom:1.25rem;}
.sim-shell__actions{display:flex;gap:8px;flex-wrap:wrap;}
.sim-shell__button{font-family:var(--shell-mono-font,monospace);font-size:0.65rem;letter-spacing:0.07em;padding:6px 14px;background:transparent;border:1px solid var(--shell-border,#3a3a36);color:var(--shell-muted,#b4b2a9);cursor:pointer;transition:all 0.15s;text-transform:lowercase;}
.sim-shell__button:hover{background:var(--shell-accent,#D85A30);border-color:var(--shell-accent,#D85A30);color:var(--shell-text,#F1EFE8);}
.sim-shell__button:focus-visible,.sim-shell__catalogue-link:focus-visible{outline:2px solid var(--shell-accent,#D85A30);outline-offset:3px;}
.sim-shell__interpretation{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;padding-top:1.5rem;border-top:1px solid var(--shell-border,#3a3a36);}
.sim-shell__interpretation h4{font-family:var(--shell-display-font,Georgia,serif);font-size:1rem;font-weight:700;color:var(--shell-text,#F1EFE8);margin-bottom:0.5rem;}
.sim-shell__interpretation p{font-size:0.85rem;color:var(--shell-muted,#b4b2a9);line-height:1.8;}
.sim-shell__footer{background:var(--shell-bg,#1a1a18);border-top:1px solid var(--shell-border,#3a3a36);padding:1.5rem 4rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.sim-shell__footer p{font-family:var(--shell-mono-font,monospace);font-size:0.6rem;letter-spacing:0.08em;color:var(--shell-soft,#6b6b66);}
.sim-shell__footer a{color:var(--shell-soft,#6b6b66);text-decoration:none;}
.sim-shell__footer a:hover{color:var(--shell-text,#F1EFE8);}
@media(max-width:750px){
  .sim-shell__header,.sim-shell__main,.sim-shell__footer{padding-left:1.25rem;padding-right:1.25rem;}
  .sim-shell__topbar{flex-direction:column;gap:0.5rem;}
  .sim-shell__nav{justify-content:center;}
  .sim-shell__control-grid,.sim-shell__interpretation{grid-template-columns:1fr;}
  .sim-shell__footer{flex-wrap:wrap;}
}
