.supplement-section{margin:36px 0;padding:28px;background:#fff;border:1px solid #cfdde1;border-radius:20px;box-shadow:0 8px 30px #17384b08;color:#17384b;scroll-margin-top:20px}.supplement-kicker{font-weight:800;color:#11767b;font-size:.85rem;letter-spacing:.08em}.supplement-section h2{font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.55;margin:6px 0 12px}.supplement-section p{line-height:1.8}.supplement-jump{display:inline-block;margin:16px 0 8px;padding:12px 16px;border:1px solid #168187;border-radius:9px;color:#08767d;text-decoration:none;font-weight:700}.supplement-grid{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.8fr);gap:24px}.supplement-controls{display:flex;flex-direction:column;gap:18px;background:#f4f9fa;border-radius:12px;padding:18px}.supplement-controls label{display:block;line-height:1.6;font-weight:700;font-size:.95rem}.supplement-controls output{float:right;color:#08757d}.supplement-controls input[type=range]{width:100%;height:44px;accent-color:#127c84}.supplement-controls select{width:100%;min-height:48px;padding:8px;border:1px solid #b6cbd2;border-radius:8px;background:white;color:#17384b;font:inherit}.supplement-actions{display:flex;gap:9px;flex-wrap:wrap}.supplement-actions button,.reaction-actions button{min-height:48px;padding:9px 15px;border:1px solid #117c82;border-radius:8px;background:white;color:#0c7178;font:inherit;font-weight:700;cursor:pointer}.supplement-actions button:first-child{background:#087980;color:white}.supplement-actions button:disabled{opacity:.5;cursor:default}.supplement-figure{margin:0;min-width:0}.supplement-scene{width:100%;display:block;background:#f4f9fa;border-radius:12px;aspect-ratio:640/390}.supplement-result{padding:14px 18px;border-left:4px solid #13828b;background:#eef7f5;line-height:1.8;margin-top:14px}.supplement-result strong{display:block}.supplement-result ul{padding-left:1.3em;margin-bottom:0}.supplement-note{font-size:.9rem;color:#526975}.supplement-table-wrap{overflow:auto;max-height:300px;margin:18px 0}.supplement-section table{border-collapse:collapse;width:100%;font-size:.9rem}.supplement-section th,.supplement-section td{border:1px solid #d1e0e4;padding:8px;text-align:left;white-space:normal;min-width:85px}.supplement-section th{background:#eaf3f5}.supplement-section [hidden]{display:none!important}.reaction-signal{min-height:150px;display:grid;place-content:center;border-radius:14px;background:#e6edf1;font-size:1.4rem;font-weight:700;text-align:center}.reaction-signal.ready{background:#237b59;color:white}.reaction-actions{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.supplement-section button:focus-visible,.supplement-section a:focus-visible{outline:3px solid #cb942e;outline-offset:3px}@media(max-width:600px){.supplement-section{padding:16px;margin:24px 0;border-radius:14px}.supplement-grid{display:flex;flex-direction:column;gap:16px}.supplement-figure{order:-1}.supplement-controls{padding:14px}.supplement-actions button{flex:1 1 120px}.supplement-section h2{font-size:1.35rem}.supplement-scene{min-width:0}.supplement-note{font-size:.85rem}}

.supplement-diagram-scroll{max-width:100%;overflow:auto}.supplement-zoom{display:none}@media(max-width:600px){.supplement-diagram-scroll.is-zoomed .supplement-scene{width:640px;max-width:none}.supplement-zoom{display:block;min-height:44px;margin:8px 0;padding:8px 14px;background:white;border:1px solid #117c82;border-radius:8px;color:#0c7178;font:inherit;font-weight:700}}
