.tdl{min-width:0;overflow:hidden;margin:2rem 0;padding:clamp(16px,3vw,26px);border:1px solid #b9d0da;border-radius:22px;background:linear-gradient(145deg,#f8fcfd,#eef5f7);box-shadow:0 18px 48px #0b355017}.tdl header small{font:800 .72rem ui-monospace;letter-spacing:.12em;color:#08788c}.tdl header h2{margin:.3rem 0;color:#12385a}.tdl-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr);gap:14px}.tdl-grid>*{min-width:0}.tdl svg.tdl-chart{width:100%;max-width:100%;height:auto;touch-action:none;user-select:none}.tdl svg.tdl-chart text{font:800 14px system-ui;fill:#173651}.tdl [data-grid] path{stroke:#cddde2;stroke-width:1}.tdl-xaxis{fill:none;stroke:#698692;stroke-width:3}.tdl-guide{fill:none;stroke:#078e9b;stroke-width:4;stroke-dasharray:8 6}.tdl [data-dot]{fill:#f58220;stroke:#fff;stroke-width:5;cursor:grab;filter:url(#tdl-glow);outline:none}.tdl [data-dot]:active{cursor:grabbing}.tdl [data-dot]:focus-visible{stroke:#082a50;stroke-width:8;filter:drop-shadow(0 0 5px #fff)}.tdl aside{padding:15px;border-radius:16px;background:#082a50;color:#fff}.tdl aside label{display:grid;gap:5px;margin-bottom:12px;font-weight:800}.tdl aside input{min-width:0;width:100%;box-sizing:border-box;padding:9px;border:1px solid #8db0bd;border-radius:9px;font:inherit}.tdl aside input.is-invalid{border-color:#ffb184;outline:3px solid #ff7a4550;background:#fff4ef}.tdl aside p{padding:11px;border-radius:10px;background:#ffffff14;font-weight:800;line-height:1.6}.tdl.is-error [data-result]{border-left:4px solid #ff9b54;background:#5a203d;color:#fff}.tdl aside small{color:#b9dfe3}.tdl-actions{display:grid;grid-template-columns:1fr;gap:7px;margin:0 0 12px}.tdl-actions button{min-height:44px;padding:9px;border:1px solid #ffffff55;border-radius:9px;background:#fff;color:#082a50;font:800 1rem system-ui;cursor:pointer}.tdl-actions button:hover{background:#e2f7f6}.tdl-actions button:focus-visible{outline:3px solid #ffab5c;outline-offset:3px}.tdl-research{margin-top:14px;padding-top:14px;border-top:1px solid #ffffff35}.tdl-research h3{margin:.2rem 0 .8rem}.tdl-research [data-research]{font-size:.9rem;background:#dff4f21a}
.tdl-mode{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tdl-mode button{min-height:42px;padding:8px 16px;border:1px solid #8db0bd;border-radius:999px;background:#fff;color:#12385a;font:800 .95rem system-ui;cursor:pointer}.tdl-mode button[aria-pressed="true"]{border-color:#08788c;background:#08788c;color:#fff;box-shadow:0 5px 14px #08788c35}.tdl-mode button:focus-visible{outline:3px solid #f58220;outline-offset:2px}.tdl-guidance{margin:10px 0 14px;padding:12px;border-left:4px solid #4dd1d7;border-radius:8px;background:#dff4f21a;line-height:1.65}.tdl.is-error .tdl-guidance{border-color:#ff9b54;background:#5a203d}
@media(max-width:760px){.tdl-grid{grid-template-columns:1fr}.tdl aside{order:-1}.tdl svg.tdl-chart{min-height:280px}}
:is(.article-main,.technical-main) .tdl-grid{grid-template-columns:1fr}:is(.article-main,.technical-main) .tdl aside{width:100%}:is(.article-main,.technical-main) .tdl svg.tdl-chart{min-height:300px}
@media(max-width:430px){.tdl{margin:1.25rem 0;padding:12px;border-radius:16px}.tdl header h2{font-size:1.28rem}.tdl svg.tdl-chart text{font-size:16px}.tdl aside{padding:12px}.tdl svg.tdl-chart{min-height:240px}}
@media(prefers-reduced-motion:reduce){.tdl *{scroll-behavior:auto!important;transition:none!important}}
/* 2026-10-15 擬真升級：現場畫面、三色教學燈號、可截圖現場紀錄卡 */
.tdl-left{display:grid;gap:12px;min-width:0}
.tdl-scene{margin:0;border-radius:16px;overflow:hidden;background:#e6dfd2;box-shadow:0 10px 28px #0b355022;border:1px solid #cbbfa8}
.tdl-scene-art svg{display:block;width:100%;height:auto;aspect-ratio:720/300}
.tdl-scene figcaption{padding:6px 12px;font-size:.82rem;color:#5d5442;background:#f6f1e7}
.tdl-lamp{display:flex;gap:10px;align-items:flex-start;margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#ffffff14;border:2px solid #ffffff30}
.tdl-lamp>span:last-child{display:grid;gap:2px;line-height:1.5}.tdl-lamp strong{font-size:1.05rem}.tdl-lamp small{color:#b9dfe3;font-size:.78rem}
.tdl-lamp-dots{display:grid;gap:4px;padding:5px;border-radius:8px;background:#111}.tdl-lamp-dots i{display:block;width:13px;height:13px;border-radius:50%;background:#3a3a3a}
.tdl-lamp[data-level="stop"]{border:3px solid #ff5a4f;background:#5a1d1d}.tdl-lamp[data-level="stop"] i:nth-child(1){background:#ff3b30;box-shadow:0 0 10px #ff3b30}
.tdl-lamp[data-level="warn"]{border-color:#ffc247;background:#4a3a12}.tdl-lamp[data-level="warn"] i:nth-child(2){background:#ffc247;box-shadow:0 0 10px #ffc247}
.tdl-lamp[data-level="ok"]{border-color:#3ccf7a;background:#123d2a}.tdl-lamp[data-level="ok"] i:nth-child(3){background:#3ccf7a;box-shadow:0 0 10px #3ccf7a}
.tdl-card{margin-top:14px;max-width:560px;padding:14px 16px 10px;border:1px solid #cfc6b4;border-radius:14px;background:#fffdf8;color:#1d2a36;box-shadow:0 8px 22px #3a2a1014;font-size:.92rem}
.tdl-card header{display:flex;gap:10px;align-items:center;border-bottom:2px solid #10335e;padding-bottom:7px;font-weight:800}
.tdl-brand{display:flex;gap:6px;align-items:center;color:#10335e;text-decoration:none;font-weight:900}.tdl-brand img{width:28px;height:auto}
.tdl-card time{margin-left:auto;font-weight:600;color:#5d6b78;font-size:.8rem}.tdl-card h3{margin:8px 0 6px;font-size:1.05rem}
.tdl-card dl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 8px}.tdl-card dl div{padding:6px 8px;border-radius:8px;background:#f3efe6}.tdl-card dt{font-size:.78rem;color:#5d6b78}.tdl-card dd{margin:0;font:800 1.1rem/1.3 Consolas,ui-monospace,monospace}
.tdl-card p{margin:6px 0;line-height:1.6}.tdl-card-lamp{font-weight:800;padding:6px 9px;border-radius:8px;background:#e9f6ef;color:#16734d}
.tdl-card[data-level="warn"] .tdl-card-lamp{background:#fff4dd;color:#8a4b00}.tdl-card[data-level="stop"] .tdl-card-lamp{background:#fff4f2;color:#9b1c14;border:3px solid #d0281f}
.tdl-card-guide{font-size:.86rem;color:#3d4c5c}.tdl-card footer{margin-top:6px;padding-top:6px;border-top:1px dashed #cfc6b4;font-size:.76rem;color:#5d6b78}
@media(max-width:430px){.tdl-scene figcaption{font-size:.76rem}}
.tdl .tdl-card header{flex-wrap:wrap;row-gap:2px}.tdl .tdl-card header>span{white-space:nowrap}
.tdl .tdl-card .tdl-brand{white-space:nowrap;text-decoration:none!important;border:0;color:#10335e}
.tdl .tdl-card .tdl-brand img{width:28px;height:auto;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:none;max-width:none}
@media(max-width:760px){.tdl-left{display:contents}.tdl-scene{order:-2}.tdl .tdl-card time{flex:1 0 100%;margin-left:0}}
/* 手機版現場畫面小字放大（畫面縮成約一半寬，說明文字至少約 10px 實際字高）；儀表刻度與 LCD 讀值（qs-fix）不動 */
@media(max-width:760px){.tdl-scene-art text.qs-l{font-size:max(calc(var(--fs) * 1.4),20px)}}
/* 依 Codex 燈號複核：沒有綠燈；info＝示例計算未分級（藍），warn＝需補資料（黃），pause＝資料不足（灰） */
.tdl-lamp[data-level="info"]{border-color:#7cc4e8;background:#12324a}.tdl-lamp[data-level="info"] i:nth-child(2){background:#7cc4e8;box-shadow:0 0 10px #7cc4e8}
.tdl-lamp[data-level="pause"]{border-color:#9aa6b2;background:#2a3540}.tdl-lamp[data-level="pause"] i{background:#5d6873}
.tdl-card[data-level="info"] .tdl-card-lamp{background:#e8f3fa;color:#0f4a6e}.tdl-card[data-level="pause"] .tdl-card-lamp{background:#eef1f4;color:#3d4c5c}
