/* v1.9：v1.6の共通デザインには触れず、追加情報と安全制御だけを補う。 */
.review{font-size:14px;color:var(--muted);margin-top:22px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}
.emergency{background:var(--red);border-color:var(--red);box-shadow:0 4px 0 #6e2421}
.emergency:hover{background:#6e2421}
.choices button:disabled,.back:disabled,.reset-row button:disabled{cursor:default;opacity:.55;box-shadow:none}
.price-section{margin-top:44px}
.price-section>p,.price-section>.notice{margin-top:18px}
.sort-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:22px 0}
.sort-row label{font-weight:700}
.sort-row select{font:inherit;min-height:44px;max-width:100%;padding:8px 14px;background:white;color:var(--ink);border:1.5px solid var(--green);border-radius:22px}
.sort-row select:focus-visible,.offer-table:focus-visible{outline:3px solid #345f99;outline-offset:5px}
.product-list{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;margin-top:24px}
.product-group{min-width:0}
.product-group h4{font-size:21px;margin:0}
.product-group dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px 16px;margin:18px 0}
.product-group dt{font-weight:700}
.product-group dd{margin:0}
.offer-table{margin-top:20px;overflow-x:auto}
.offer-table table{min-width:580px;font-size:14px;table-layout:auto}
.offer-table caption{padding:10px 12px}
.offer-table th,.offer-table td{padding:10px 12px;font-size:14px}
.offer-table tbody th{width:auto}
.offer-table td:nth-child(3){white-space:nowrap}
.offer-table a{display:inline-flex;align-items:center;min-height:44px;margin:0}
.offer-table time{display:block;font-size:12px;font-weight:400}
.unit-price{font-weight:700;white-space:nowrap}
.price-section .ad-disclosure{font-size:14px}
.placeholder{display:grid;place-items:center;width:240px;max-width:100%;height:260px;background:#e5e5e5;color:#414141;border:1px solid #888;border-radius:14px;margin:18px 0}
.placeholder.diagram{width:100%;max-width:500px;height:220px}
.terminal *,.terminal *::before,.terminal *::after{animation:none!important;transition:none!important}
@media(max-width:480px){.product-group dl{grid-template-columns:1fr;gap:4px}.product-group dd{margin-bottom:12px}}
