.kb019{--kb-blue:#193e82;--kb-orange:#d97827;--kb-ink:#16324e;background:#f4f7fb;color:var(--kb-ink);scroll-margin-top:100px}.kb019 *{box-sizing:border-box}.kb019 [hidden]{display:none!important}.kb019 .kb019-heading{max-width:800px;margin-bottom:28px}.kb019 .kb019-heading h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.35;margin:12px 0}.kb019 p{line-height:1.8}.kb019-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:start}.kb019-panel{margin:0;padding:28px;background:#fff;border:1px solid #d6e0ed;border-radius:22px;box-shadow:0 9px 28px #193e8208;min-width:0}.kb019 h3{font-size:1.35rem;line-height:1.5;margin:9px 0 12px}.kb019-eyebrow{color:#8b4311;font-size:.88rem;letter-spacing:.05em;font-weight:700}.kb019 fieldset{border:0;padding:0;margin:22px 0;min-width:0}.kb019 legend{font-size:1.3rem;font-weight:750;line-height:1.5;padding:0;margin-bottom:12px}.kb019 label{font-weight:650;display:block;line-height:1.7}.kb019 .kb019-option{display:flex;gap:12px;align-items:flex-start;border:1px solid #c7d4e5;border-radius:12px;margin:10px 0;padding:16px;cursor:pointer;font-weight:500;min-height:56px}.kb019 .kb019-option:has(input:checked){background:#edf3ff;border:2px solid var(--kb-blue);padding:15px}.kb019 input[type=radio]{accent-color:var(--kb-blue);width:20px;height:20px;margin:3px 0;flex:none}.kb019 select{display:block;width:100%;min-height:52px;font:inherit;line-height:1.5;margin:12px 0;padding:10px 38px 10px 12px;border:1px solid #9cb0c9;border-radius:10px;background:#fff;color:var(--kb-ink)}.kb019 .kb019-hint{font-size:.92rem;color:#4b6179}.kb019-progress{display:flex;flex-direction:column;gap:9px;font-size:.92rem;color:#4b6179}.kb019 progress{accent-color:var(--kb-blue);width:100%;height:9px;display:block}.kb019-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.kb019 button{min-height:46px;padding:10px 16px;font:inherit;font-weight:650;color:var(--kb-blue);background:#fff;border:1px solid #9fb3ce;border-radius:10px;cursor:pointer;line-height:1.5}.kb019 button:hover{background:#edf3ff}.kb019 button:focus-visible,.kb019 input:focus-visible,.kb019 select:focus-visible,.kb019 a:focus-visible{outline:3px solid var(--kb-orange);outline-offset:4px}.kb019 button.kb019-next,.kb019 a.kb019-contact{background:var(--kb-blue);color:#fff;border-color:var(--kb-blue)}.kb019 .kb019-error{color:#9a2c20;font-weight:650;min-height:0;margin:8px 0}.kb019 .kb019-error:empty{display:none}.kb019-result:focus{outline:none}.kb019-result ul{padding-left:22px;line-height:1.9}.kb019-result li{padding:5px 0}.kb019-summary{background:#f2f6fc;border-left:4px solid var(--kb-orange);padding:14px 16px;white-space:pre-line;overflow-wrap:anywhere}.kb019-result-links{display:flex;flex-direction:column;align-items:stretch;gap:12px}.kb019-result-links a{min-height:44px;display:flex;align-items:center;color:var(--kb-blue);font-weight:650}.kb019 a.kb019-contact{justify-content:center;text-align:center;border-radius:10px;padding:12px;text-decoration:none}.kb019-diagram{width:100%;height:auto;display:block;margin:12px 0}.kb019 input[type=range]{width:100%;min-height:44px;accent-color:var(--kb-blue);margin:0}.kb019-layer-labels{display:flex;justify-content:space-between;font-size:.85rem;color:#4b6179}.kb019-layer-copy{padding:14px 16px;background:#edf3ff;border-radius:12px;min-height:90px}.kb019-tour{margin-top:24px;display:grid;grid-template-columns:1fr;gap:10px}.kb019-tour audio{width:100%;margin:8px 0}.kb019-tour .kb019-controls{margin:0 0 10px}.kb019-caption{padding:18px;border-radius:12px;background:#163568;color:#fff;min-height:90px;font-weight:600;font-size:1.1rem;white-space:pre-line;text-align:center;line-height:1.8}.kb019 .kb019-caption.is-off{visibility:hidden}.kb019.is-playing .kb019-water-flow{animation:kb019-flow 1.5s linear infinite}@keyframes kb019-flow{to{stroke-dashoffset:-38}}@media(max-width:780px){.kb019-layout{grid-template-columns:1fr}.kb019-panel{padding:20px}.kb019 .container{padding-left:20px;padding-right:20px}.kb019-figure h3{font-size:1.25rem}.kb019-controls button{flex:1 1 auto}.kb019-layer-copy{min-height:0}.kb019-caption{font-size:1rem}.kb019 .kb019-heading{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.kb019 *{animation:none!important;scroll-behavior:auto!important}}@media print{.kb019 form,.kb019-controls,.kb019-tour,.kb019-figure{display:none!important}.kb019-layout{display:block}.kb019-result-links{display:none}.kb019-panel{box-shadow:none}.kb019-result[hidden]{display:none!important}}

.kb019-layer-heading{font-size:1.05rem;line-height:1.6;margin:12px 0 6px;color:#193e82}.kb019-layer-legend{font-size:1rem;line-height:1.8;margin:0 0 16px}.kb019:not(.is-ready) #kb019-form,.kb019:not(.is-ready) .kb019-controls{display:none}@media(max-width:780px){.kb019-diagram text{display:none}.kb019-layer-heading{font-size:1.1rem}}

/* KB010 F01: keep the current figure, caption and main controls together. */
.kb019-tour-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:center;scroll-margin-block:100px}
.kb019-tour-visual,.kb019-tour-readout{min-width:0}
.kb019 .kb019-tour-diagram{margin:0 auto;width:100%;max-height:270px;display:block}
.kb019 .kb019-tour-layer-caption{font-size:1rem;font-weight:700;line-height:1.5;margin:6px 0 0;text-align:center;color:#193e82}
.kb019-tour-stage .kb019-caption{margin:0 0 12px;min-height:72px;display:flex;align-items:center;justify-content:center}
.kb019-tour-stage .kb019-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}
.kb019-tour-stage .kb019-controls button{min-width:0;min-height:46px;padding:10px 8px}
.kb019-tour-stage #kb019-caption-toggle{grid-column:1/-1}
.kb019-tour-stage #kb019-tour-status{margin:10px 0 0;font-size:.9rem;line-height:1.5;min-height:22px}
@media(max-width:780px){.kb019-tour-stage{grid-template-columns:minmax(0,1fr);gap:10px}.kb019 .kb019-tour-diagram{max-height:175px}.kb019 .kb019-tour-layer-caption{font-size:.95rem}.kb019-tour-stage .kb019-caption{min-height:64px;padding:12px;margin-bottom:10px}.kb019-tour-stage .kb019-controls{margin-bottom:10px}.kb019-tour-stage #kb019-tour-status{margin-top:8px}}

.kb019-audio{display:block;width:100%;min-width:0;height:54px;margin:8px 0}.kb019-audio-note{font-size:14px;line-height:1.5;margin:6px 0 0;color:#425a73}.kb019-audio-error{color:#8b3919;border-left:4px solid #d97827;padding:10px;margin:8px 0;font-size:16px}.kb019-tour-tools{margin-top:16px}.kb019-tour-tools summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;font-weight:700}.kb019-tour-tools label{display:block;margin-top:10px}.kb019-tour-tools select{width:100%;min-height:46px;font:inherit;border:1px solid #94add1;border-radius:8px;background:#fff;color:#193e82;padding:8px}.kb019-tour-tools .kb019-controls{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.kb019-tour-tools button{min-width:44px;min-height:46px}.kb019-transcript{padding-left:25px;line-height:1.8}.kb019-transcript li{margin:10px 0}.kb019-tour-stage .kb019-caption{white-space:normal;overflow-wrap:anywhere}.kb019-tour-stage .kb019-caption:empty::after{content:'\00a0'}
