main{max-width:1460px}.page-heading{max-width:1100px;margin-bottom:24px}h1{font-size:clamp(27px,3vw,40px)}.boundary{border-left:3px solid #d9b976;padding:10px 14px;background:#1f2a37;font-size:14px}.dual-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.panel{min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-heading h2{margin:0}.panel-heading span{font-size:12px;color:var(--muted)}.controller{max-width:none!important}.lcd-title{font-size:1.72cqw!important;line-height:1.15!important}.lcd-content{height:68%;overflow:hidden}.lcd .screen-hint{font-size:1.2cqw;line-height:1.15;margin-top:2%;border-top:1px solid #625d7455;padding-top:1%}.lcd .data-row{font-size:1.55cqw;line-height:1.14}.lcd li{font-size:1.65cqw;line-height:1.2;padding:1.2% 2%}.key{min-height:44px}.key-label{font-size:1.4cqw}.source-page{font-size:11px;color:#b2c5d4;margin:9px 0 0}.shared-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 0;font-size:12px;color:#bad1d6}.sync-dot{width:8px;height:8px;background:#81cbae;border-radius:50%}.status-panel{margin-top:8px}#module-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}#module-list li{display:block}#module-list li b{display:block;margin-bottom:6px}#notice{min-height:0}.help,.exercise,.evidence,.qa-box{padding:16px 0;border-top:1px solid var(--line);margin-top:16px}summary{cursor:pointer;font-weight:650}details p,details li{font-size:14px}.exercise-actions{display:flex;flex-wrap:wrap;gap:8px}button:not(.key){background:#233d50;color:#eef5fa;border:1px solid #58798d;border-radius:6px;padding:10px 14px;min-height:44px;cursor:pointer}button:not(.key):hover{background:#305369}button:focus-visible,a:focus-visible{outline:3px solid #b5e7ef;outline-offset:3px}a{color:#a4dbe8}code{overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;font-size:12px}.conflict{border-left:2px solid #ad9163;padding-left:12px;margin:12px 0}.conflict strong{color:#e0c591}.page-heading p{font-size:15px}
@media(max-width:800px){.dual-panels{grid-template-columns:1fr;gap:24px}.panel-heading span{font-size:11px}#module-list{grid-template-columns:repeat(2,minmax(0,1fr))}.lcd-content{height:67%}.key-label{font-size:1.65cqw}.key{min-height:44px}.controller{margin:0}.page-heading{margin-bottom:20px}.panel{scroll-margin-top:16px}.panel-heading{margin-bottom:10px}}
@media(max-width:450px){main{padding:16px}.dual-panels{gap:26px}.panel-heading{align-items:baseline}.lcd .data-row{font-size:1.6cqw}.key .symbol{border-width:1px}.key .zh{font-size:1.5cqw}.key-label{font-size:1.7cqw}#module-list{gap:8px}h1{font-size:28px}}

.controller{background:linear-gradient(155deg,#e1ded8 0%,#d0cac3 70%,#c1bbb3 100%)}
.lcd-bezel{top:21%;height:46%;padding:2.2% 4%}
.lcd{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:2%;padding:2.2% 4%}
.lcd-top{margin:0;padding:0 0 1%}.lcd .lcd-title{margin:0!important}
.lcd-content{height:auto;min-height:0}.lcd .screen-hint{margin:0;padding-top:1%;font-size:1.12cqw;line-height:1.1}

/* Scoped simulator fault explanation and photographed control markings. */
.key .glyph{width:auto;height:74%;aspect-ratio:1;flex:none;display:flex;align-items:center;justify-content:center;transform:none;line-height:1}
.key-glyph{display:block;width:100%;height:100%;overflow:visible}.key-glyph .fn-divider{stroke-width:2.1}
.fault-card{margin:18px 0 22px;padding:20px;background:linear-gradient(135deg,#182c3c,#142235);border:1px solid #426273;border-radius:12px;color:var(--text)}
.fault-card[data-phase="cause-present"]{border-color:#a48653}.fault-card[data-phase="awaiting-reset"],.fault-card[data-phase="awaiting-recovery"]{border-color:#79aeb7}
.fault-card-heading{display:flex;align-items:center;gap:16px}.fault-subject{display:flex;flex-direction:column;align-items:center;gap:5px;flex:0 0 88px;text-align:center;color:#a7dbe2}.fault-icon{display:flex;align-items:center;justify-content:center;width:42px;height:46px}.fault-icon svg{width:36px;height:39px}.fault-icon-label{font-size:11px;line-height:1.2;max-width:90px}.fault-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#b8d4dd;margin:0 0 5px}.fault-card h2{font-size:20px;margin:0 0 4px;line-height:1.25}.fault-context{font-size:12px;color:var(--muted);margin:0}.fault-reset{margin-left:auto;align-self:flex-start;padding:6px 9px;border:1px solid #617e8b;border-radius:6px;white-space:nowrap;font-size:12px;color:#d4e7eb}.fault-phase{color:#f3d49d;font-size:14px;font-weight:600;margin:14px 0 8px}.fault-class-note{font-size:13px;line-height:1.5;color:#c9d7df;margin:0 0 17px}.fault-explanation{display:grid;grid-template-columns:1.1fr 1fr;gap:28px}.fault-explanation h3{font-size:14px;line-height:1.4;margin:0 0 6px;color:#dfebf1}.fault-explanation p,.fault-explanation li{font-size:14px;line-height:1.55;color:#c9d7df}.fault-explanation p{margin:0 0 14px}.fault-explanation ol{margin:0;padding-left:20px}.fault-explanation li{padding-left:3px;margin-bottom:9px}.fault-card-foot{border-top:1px solid #365264;margin-top:5px;padding-top:10px}.fault-card-foot p,.fault-counts{font-size:12px;line-height:1.45;color:var(--muted);margin:5px 0}.fault-card-foot .fault-boundary{font-size:11px;color:#a5bbc7}.fault-empty{font-size:14px;color:#c9d7df;margin:14px 0 8px}.fault-card[data-mode="empty"]{padding-top:17px;padding-bottom:17px}
@media(max-width:640px){.fault-card{padding:16px}.fault-card-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}.fault-subject{flex-basis:62px}.fault-icon-label{font-size:11px}.fault-card-heading>div:nth-child(2){flex:1;min-width:0}.fault-reset{margin-left:74px;white-space:normal}.fault-card h2{font-size:18px}.fault-explanation{grid-template-columns:1fr;gap:6px}.fault-explanation h3,.fault-explanation p,.fault-explanation li{font-size:16px}.fault-class-note,.fault-empty{font-size:14px}}

/* Shared outline icon grammar: text remains the accessible section label. */
.section-icon{display:inline-block;width:24px;height:24px;margin-right:9px;vertical-align:-.28em;flex:none;color:var(--accent,#136b83)}.fault-explanation h3 .section-icon{width:21px;height:21px;margin-right:7px}

.chiller-visual{margin:24px 0;padding:18px;border:1px solid #395066;border-radius:14px;background:#162535}.chiller-visual h2{margin:0 0 10px}.chiller-visual p{line-height:1.5;color:#c4dce2}.chiller-visual iframe{display:block;width:100%;height:clamp(510px,68vh,650px);border:0;border-radius:10px;background:#0c1620}@media(max-width:450px){.chiller-visual{padding:12px}.chiller-visual iframe{height:510px}}

/* The simulation has one module, with no empty multi-module grid slots. */
.status-panel #module-list{grid-template-columns:minmax(0,1fr)}

/* Subtle outline tones keep controls and section icons coherent with the dark scene. */
.section-icon,.fault-subject{color:#95b5bf}button:not(.key){background:#203646;border-color:#5d7a88;color:#d1dee6}button:not(.key):hover{background:#2b4656}button:focus-visible,a:focus-visible{outline:2px solid #91aeba;outline-offset:3px}

/* Owner photo: grey membrane seats, dark circular rims, no white outline ring.
   Glyphs are a visual trace; photograph blur does not establish factory microgeometry. */
.key .symbol,.key.power .symbol{width:73%;aspect-ratio:73/57;color:#e0e2d6;background:linear-gradient(145deg,#a7aaa3,#959990);border:1px solid #a4a79f;border-radius:5px;box-shadow:inset 0 1px 2px #666c6229,0 1px 1px #ecece433}
.key .symbol:before{inset:auto;left:50%;top:8%;height:84%;aspect-ratio:1;transform:translateX(-50%);background:radial-gradient(ellipse at 38% 26%,#353630 0%,#272822 65%,#20211c 100%);border:1px solid #393b34;box-shadow:inset 0 1px 2px #62655b55,0 1px 1px #4f524944}
.key.power .symbol:before{background:radial-gradient(ellipse at 38% 26%,#338d7b 0%,#277c6a 65%,#216c5b 100%);border-color:#3d8a76;box-shadow:inset 0 1px 2px #82b4a266,0 1px 1px #4f524944}

/* Fullscreen controls remain inside the unchanged simulator iframe. */
.sim-view-controls{position:sticky;top:0;z-index:60;display:flex;justify-content:flex-end;gap:8px;padding:8px max(0px,env(safe-area-inset-right));background:#14212e}.sim-view-controls[hidden],.sim-view-controls button[hidden]{display:none!important}.sim-view-controls button{min-height:44px}
html.sim-expanded,html.sim-expanded body,html:fullscreen{background:#14212e;min-height:100vh;min-height:100dvh}html.sim-expanded main{padding-top:0}.sim-expanded .sim-view-controls{padding-top:max(8px,env(safe-area-inset-top));border-bottom:1px solid #395066}html:fullscreen{overflow:auto}
