:root{--blue:#193e82;--navy:#112c59;--orange:#d97827;--ink:#1b2d46;--muted:#50627a;--pale:#f2f6fc;--line:#d7e1ee;--white:#fff;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;color:var(--ink);background:#fff;line-height:1.85;font-size:17px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}a{color:var(--blue);text-underline-offset:4px}button,input,select{font:inherit}button,select,input{max-width:100%}button,a,select,input{touch-action:manipulation}button,select{min-height:48px}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #a34d0c;outline-offset:5px}h1,h2,h3,p{margin:0 0 1rem}h1{font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.38;letter-spacing:.015em}h2{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.5;color:var(--navy)}h3{font-size:1.12rem;line-height:1.55}p:last-child{margin-bottom:0}img,svg{max-width:100%;height:auto}button{border:1px solid #b8c7dc;border-radius:9px;background:white;color:var(--blue);padding:9px 17px;font-weight:700}button:hover{background:#eaf0fa}select{width:100%;border:1px solid #8ea3c0;border-radius:8px;background:#fff;color:var(--ink);padding:8px 12px}label{display:block;font-weight:600}label select{margin-top:7px}small,.quiet,.caption{font-size:.86rem;color:var(--muted)}.wrap{width:min(1152px,calc(100% - 64px));margin-inline:auto}.site-head{border-bottom:1px solid var(--line)}.head-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px}.brand{display:flex;gap:12px;align-items:center;color:var(--blue);text-decoration:none;font-size:1.3rem;font-weight:800;line-height:1.35}.brand small{display:block;font-weight:400;font-size:.7rem;margin-top:5px}.brand img{width:48px;height:48px}.head-link{font-size:.94rem;min-height:44px;display:flex;align-items:center}.hero{background:linear-gradient(115deg,#edf3fc,#fff);padding:36px 0 54px}.hero-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:60px;align-items:center}.crumb{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.8rem;margin-bottom:30px}.crumb a{min-height:44px;display:inline-flex;align-items:center}.crumb span{display:inline-flex;align-items:center}.eyebrow{color:var(--blue);font-size:.83rem;letter-spacing:.12em;font-weight:800;margin-bottom:12px}.answer{font-size:1.08rem;margin:22px 0 28px}.primary{background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:10px;display:inline-flex;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:11px 23px;text-decoration:none;font-weight:700}.primary:hover{background:var(--navy);color:#fff}.hero .quiet{margin-top:15px}.hero-visual{background:var(--navy);color:#fff;padding:30px 32px;border-radius:24px;box-shadow:14px 14px 0 #e0e9f6;border-top:5px solid var(--orange)}.hero-visual p{font-size:1rem}.hero-visual small{color:#d9e5f8}.figure-tag{font-size:.88rem!important;color:#e9bc96}.route{display:grid;text-align:center;gap:3px;margin-bottom:22px}.route span{border:1px solid #7388aa;border-radius:8px;padding:7px;background:#203f6d}.route b{color:#edb383;font-size:20px}.body-wrap{max-width:1000px}.safety{border-left:5px solid var(--orange);background:#fff7ef;padding:22px 26px;margin-top:32px;border-radius:0 12px 12px 0}.safety strong{color:#703608}.safety p{margin-top:6px}.contents{display:flex;flex-wrap:wrap;gap:8px 22px;padding:24px 0;border-bottom:1px solid var(--line);font-size:.94rem}.contents a{min-height:44px;display:flex;align-items:center}.section{padding-top:64px;scroll-margin-top:24px}.tool{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--pale);margin:25px 0}.tool fieldset{border:0;margin:0 0 22px;padding:0}.tool legend{font-weight:800;margin-bottom:12px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.check-grid label{background:white;border:1px solid #b5c6df;border-radius:8px;display:flex;gap:9px;align-items:center;min-height:52px;padding:8px 12px;cursor:pointer}.check-grid label:has(input:checked){background:var(--blue);color:white;border-color:var(--blue)}input[type=checkbox]{width:21px;height:21px;accent-color:var(--blue);flex-shrink:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-bottom:24px}.tool .quiet{margin-top:12px}.result{background:white;border:1px solid #a8bddb;border-top:4px solid var(--blue);padding:22px;margin-top:24px;border-radius:8px}.result ul{padding-left:22px;margin-bottom:0}.result .urgent{background:#fff2e4;padding:12px;border-radius:6px;color:#703608}.four-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.four-cards article{border:1px solid var(--line);padding:23px;border-radius:14px}.number{display:block;color:#a34d0c;font-size:.85rem;font-weight:bold;margin-bottom:10px}.diagram-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:24px 0}.segmented{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:18px;background:var(--pale)}.segmented button{padding:10px 4px}.segmented [aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.building{background:#f8fafc;padding:8px 12px}.building svg{display:block;width:100%;max-height:700px}.building .wall{opacity:0;transition:opacity .3s}.building[data-layer=outside] .wall{opacity:1}.building[data-layer=outside] .pipe-layer,.building[data-layer=outside] .pipe-label{opacity:0}.building .part-layer,.building .fault-layer{display:none}.building[data-layer=parts] .part-layer,.building[data-layer=fault] .fault-layer{display:block}.layer-note{padding:22px 26px;border-top:1px solid var(--line);background:white}.layer-note p{margin-top:8px}.diagram-card>.caption{padding:0 26px 22px;margin:0}.terms{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.terms article{border-left:3px solid var(--line);padding-left:18px}.story-player{background:var(--pale);border:1px solid var(--line);border-radius:16px;padding:26px}.story-stage{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;min-height:250px}.story-track{height:230px;position:relative;border:16px solid #c0cddd;border-top:0;border-bottom:0;width:90px;margin:0 auto;background:linear-gradient(90deg,#d1ddeb,#fff,#c2d2e5)}.story-stream{position:absolute;inset:20px 6px 20px;background:repeating-linear-gradient(to bottom,#4674ad 0,#4674ad 20px,transparent 20px,transparent 34px);border-radius:6px;opacity:.8}.playing .story-stream{animation:flow 1.6s linear infinite}.story-track span{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;background:white;border:1px solid #adbed7;padding:2px 9px;font-size:.8rem;border-radius:5px}.upstream{top:0}.bottleneck{top:140px}.downstream{bottom:0}.story-stage[data-scene="2"] .bottleneck,.story-stage[data-scene="3"] .bottleneck{background:#8c3d07;color:#fff}.story-stage[data-scene="3"] .story-stream{background:linear-gradient(0deg,#d97827,#e9bc96);inset:60px 0 55px}.story-stage[data-scene="4"] .story-stream,.story-stage[data-scene="5"] .story-stream{opacity:.2}#story-caption{font-size:1.1rem;min-height:4em}#story-caption.is-hidden{visibility:hidden}.story-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.story-controls .primary{min-height:48px}.story-controls label{display:flex;align-items:center;gap:8px;font-size:.9rem}.story-controls select{width:110px;margin:0}.shot-nav{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.shot-nav button{min-width:44px}.shot-nav [aria-current=true]{background:var(--blue);color:white}progress{display:block;width:100%;height:8px;margin:20px 0;accent-color:var(--blue)}details{border-top:1px solid var(--line);padding:14px 0}summary{min-height:44px;cursor:pointer;padding:8px 0;font-weight:700}details p{padding:12px 0}.slope-tool{display:grid;grid-template-columns:1fr 1fr;gap:28px;border:1px solid var(--line);border-radius:14px;padding:26px;margin:24px 0}.slope-tool input[type=range]{width:100%;height:48px;accent-color:var(--blue);margin:7px 0 22px}.math{font-size:.9rem;margin-top:18px}.slope-output{background:var(--pale);padding:25px;text-align:center;border-radius:12px;display:flex;flex-direction:column;justify-content:center}.slope-output>output{font-size:2.6rem;color:var(--blue);font-weight:800}.slope-output p{font-size:.95rem}.note{background:var(--pale);padding:22px;border-radius:12px;margin-bottom:24px}.note strong{color:var(--blue)}.recall{padding:12px 18px;border:1px solid var(--line);border-radius:9px;margin-top:22px}.decision-list{border-top:1px solid var(--line);margin:25px 0}.decision-list article{display:grid;grid-template-columns:150px 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--line)}.decision-list article>span{font-weight:800;color:var(--blue)}.scenario{background:var(--pale);border-radius:12px;padding:23px}.scenario p{margin-top:10px}.mnemonic{margin:24px 0 0;font-size:1.1rem}.checklist{background:var(--navy);color:white;border-radius:18px;margin-top:56px;padding:30px}.checklist h2,.checklist .eyebrow,.checklist a{color:white}.checklist ul{padding-left:1.3rem}.checklist li{margin-bottom:12px}.checklist .primary{background:white;color:var(--blue);margin:10px 0 12px}.checklist p a{display:inline-flex;align-items:center;min-height:44px}.check-summary{border-top:1px solid #597295;padding-top:20px}.related>a{display:flex;justify-content:space-between;align-items:center;gap:15px;text-decoration:none;padding:22px 0;border-bottom:1px solid var(--line)}.related span{font-size:.88rem}.footer{padding:42px 0;margin-top:60px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 24px;font-size:.88rem}.footer a{min-height:44px;display:inline-flex;align-items:center}.footer>span{flex:1;min-width:220px}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--blue);color:white;z-index:20}.skip:focus{top:10px}.section ul{padding-left:1.4rem}.section li{margin-bottom:8px}@keyframes flow{to{background-position:0 68px}}
@media(max-width:700px){:root{font-size:16px}.wrap{width:calc(100% - 36px)}.head-inner{min-height:76px;gap:10px}.brand{font-size:1.12rem;gap:8px}.brand img{width:40px;height:40px}.brand small{font-size:.65rem}.head-link{font-size:.86rem}.hero{padding:16px 0 34px}.hero-grid{grid-template-columns:1fr;gap:28px}.crumb{margin-bottom:15px;font-size:.75rem;gap:6px}.hero-visual{padding:22px;box-shadow:6px 6px 0 #e0e9f6}.route{grid-template-columns:1fr auto 1fr auto 1.3fr;gap:5px;align-items:center;font-size:.8rem}.route b{transform:rotate(-90deg)}.route span{padding:10px 4px}.hero-visual>p:not(.figure-tag){font-size:.9rem}.hero-visual br{display:none}.hero .answer{font-size:1rem}.hero .primary{width:100%}.safety{padding:18px;margin-top:24px}.contents{gap:3px 14px;font-size:.88rem}.section{padding-top:42px}.tool{padding:18px}.check-grid{grid-template-columns:1fr 1fr;gap:8px}.check-grid label{padding:8px;font-size:.9rem}.form-grid{grid-template-columns:1fr;gap:16px}.tool .primary{width:100%}.result{padding:18px}.four-cards{gap:12px;grid-template-columns:1fr}.four-cards article{padding:20px}.number{float:left;margin:2px 12px 0 0}.segmented{padding:10px;gap:5px}.segmented button{font-size:.84rem;min-height:48px}.building{padding:4px}.layer-note{padding:18px}.diagram-card>.caption{padding:0 18px 18px}.terms{grid-template-columns:1fr;gap:22px}.story-player{padding:18px}.story-stage{grid-template-columns:70px 1fr;gap:20px;min-height:270px}.story-track{width:55px;border-width:9px;height:220px}.story-track span{font-size:.62rem;padding:2px 4px}.story-stage h3{font-size:1rem}#story-caption{font-size:.96rem}.story-controls{gap:8px}.story-controls button{padding:8px 11px}.slope-tool{grid-template-columns:1fr;padding:20px;gap:20px}.decision-list article{grid-template-columns:1fr;gap:9px}.checklist{padding:22px;margin-top:38px}.related>a{display:block}.related span{display:block;margin-top:6px}.footer{margin-top:40px;padding:25px 0}.footer>span{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-head,.contents,.tool,.story-player,.primary,.footer{display:none}.wrap{width:100%;max-width:none}.section{padding-top:20px}.hero-grid{display:block}.hero-visual{display:none}.checklist{background:white;color:#000;border:2px solid #193e82;break-inside:avoid}.checklist h2,.checklist .eyebrow{color:#193e82}.checklist a{color:#000}.building .wall{display:none}.building .pipe-layer,.building .pipe-label{opacity:1!important}}

/* Q822：各鏡實體圖面與資料同步。 */
.r4-film{display:block;width:100%;height:auto;max-width:100%;font-family:system-ui,'Microsoft JhengHei',sans-serif}.r4-film [data-r4-scene]{display:none}.r4-film [data-r4-scene].r4-current{display:block}.r4-film text{font-weight:600}.r4-film .r4-flow{stroke-dasharray:9 7}.r4-film[hidden]{display:none!important}

.story-stage{grid-template-columns:1fr}.story-stage .r4-film{max-height:390px}
