[hidden]{display:none!important}
.basics{padding-top:0;padding-bottom:0}
.basics-summary{display:flex;justify-content:space-between;align-items:center;min-height:53px;cursor:pointer;list-style:none;font-size:18px;font-weight:550;gap:10px}
.basics-summary::-webkit-details-marker{display:none}
.basics-summary>span:first-child{display:flex;align-items:center;gap:9px}
.basics-summary small{font-size:13.5px;font-weight:400;color:#7d97a7;border:1px solid #dce6ec;padding:3px 6px;border-radius:3px;margin-left:5px}
.basics-summary>span[data-icon] svg{height:13px;width:13px;color:#88a0af;transition:transform .15s}
.basics[open]>.basics-summary>span[data-icon]{transform:rotate(180deg)}
.basics[open]{padding-bottom:22px}
.basics[open] .section-heading{margin-top:6px;margin-bottom:17px}
.basics[open] h1{font-size:15px;font-weight:500;color:#8b9eaa}
.section-editor>.section-heading{margin-bottom:16px}
.top-down-label{display:flex;gap:8px;align-items:center;color:#91a3ae;font-size:13.5px;white-space:nowrap}
.top-down-label>span{font-size:19.5px;color:#75a0b7}
.section-tabs-row{display:flex;align-items:stretch;gap:7px;position:sticky;top:0;z-index:6;background:#fff;padding:7px 0 12px;margin-top:-7px}
#section-tabs{display:flex;gap:5px;align-items:stretch;min-width:0;flex:1;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ccdce6 transparent;padding:0 1px 2px}
.section-tab{padding:9px 11px;border:1px solid #e1e8ed;border-radius:4px;background:#f7f9fb;color:#8b9eab;font-size:15px;font-weight:500;white-space:nowrap}
.section-tab:hover{border-color:#8db2c8;color:#4f819f}
.section-tab.active{background:#ecf4f9;color:#39799f;border-color:#83acc3;box-shadow:inset 0 -2px #679dbb}
.add-section{display:grid;place-items:center;flex-shrink:0;width:33px;border:1px dashed #98b9cb;border-radius:4px;color:#4b88a9;background:#f6fafc;align-self:flex-start;height:34px}
.add-section:hover{background:#e7f3f9;border-color:#6598b6}
.add-section svg{height:15px;width:15px}
#section-content{outline:0}
.section-meta{display:flex;align-items:center;gap:8px;min-height:25px;font-size:13.5px;margin:2px 0 13px}
.section-meta strong{font-size:15px;font-weight:550;color:#5c8198;white-space:nowrap}
.section-meta>span{color:#95a6b1;font-size:12px;font-variant-numeric:tabular-nums}
.section-meta button{margin-left:auto;color:#a79398;font-size:12px;white-space:nowrap;gap:3px}
.section-meta button svg{height:11px;width:11px}
#section-widths{margin-top:0;margin-bottom:0;gap:14px}
#section-widths .field-label{font-size:16.5px;color:#5c798b;font-weight:550;height:18px}
.unit-input:has(input[readonly]){background:#f0f4f7;border-color:#dce5eb}
.unit-input input[readonly]{color:#8c9fab;cursor:default;outline:none}
.linked-badge{font-size:10.5px;color:#7398af;background:#e8f0f6;border-radius:3px;padding:2px 5px;margin-left:7px;font-weight:400;vertical-align:middle}
.inheritance-note{font-size:13.5px;line-height:1.8;color:#91a5b2;margin:11px 0 21px}
.panel-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e5edf2;padding-top:18px;margin-bottom:20px;gap:10px}
.panel-heading h3{font-size:18px;display:flex;gap:9px;align-items:center;margin:0;font-weight:550}
.panel-heading .text-button{font-size:13.5px}
.panel-row{padding-top:12px;padding-bottom:12px}
.panel-column-labels,.panel-main,.panel-details,.arm-directions{grid-template-columns:57px 1fr 1fr 1fr;gap:8px}
.panel-select small{font-family:'Segoe UI',sans-serif;font-size:12px;color:#92a7b4}
.panel-details{margin-top:11px;padding-top:9px}
.arm-directions{display:grid;align-items:center;margin-top:7px}
.arm-directions select{min-width:0;width:100%;height:27px;border:1px solid #d9e4ea;border-radius:3px;background:#fff;color:#638095;padding:0 3px;font-size:13.5px}
.panel-note{align-items:flex-start;font-size:13.5px;line-height:1.9;margin-top:17px}
.panel-note>[data-icon]{flex-shrink:0;margin-top:3px}
.bend-summary{display:block;margin-top:7px;font-size:13.5px;color:#89a3b2;letter-spacing:.2px}
.bend-label{color:#a06d3a;border-color:#ddc3a2;background:#fcf8efe8;font-size:12px}
.dimension-label.total-label{z-index:1}
.prepend-section{border-color:#83b1ad;background:#f1f8f6;color:#518e87}
.prepend-section:hover{background:#e5f3ee;border-color:#6b9f95}
.arm-extra-row{display:grid;grid-template-columns:57px 1fr 1fr 1fr;gap:8px;align-items:center;margin-top:7px}
.arm-extra-caption{grid-column:1/3;font-size:12px;color:#90a3b0;display:flex;gap:7px;align-items:center}
.arm-extra-caption small{font-size:10.5px;color:#a4b2bc;font-family:'Segoe UI',sans-serif}
.arm-extra-row input{height:27px;width:100%;min-width:0;padding:4px 7px;border:1px solid #dce5eb;border-radius:3px;background:#fff;color:#537389;font-size:15px;font-variant-numeric:tabular-nums}
.arm-extra-row input:disabled{background:#f3f6f8;color:#b2bec6;border-color:#e5ebef}
.tip-offset-row input{background:#fbfdfe}
@media(max-width:1100px){.arm-extra-row{grid-template-columns:49px 1fr 1fr 1fr;gap:7px}}
@media(max-width:760px){.arm-extra-row{grid-template-columns:58px 1fr 1fr 1fr;gap:10px}.arm-extra-row input{height:32px;font-size:16.5px}.arm-extra-caption{font-size:13.5px}.arm-extra-caption small{font-size:12px}}
@media(max-width:1100px){.panel-column-labels,.panel-main,.panel-details,.arm-directions{grid-template-columns:49px 1fr 1fr 1fr;gap:7px}.section-meta{flex-wrap:wrap;gap:5px}.section-meta button{font-size:12px}.section-meta>span{font-size:10.5px}.section-tab{padding:9px 10px}.top-down-label{font-size:12px}}
@media(max-width:760px){.basics{padding-top:0;padding-bottom:0}.basics-summary{min-height:54px}.basics[open]{padding-bottom:22px}.section-editor{padding-top:24px}.section-tabs-row{top:0}.section-tab{padding:10px 14px;font-size:16.5px}.add-section{height:36px;width:36px}.section-meta{flex-wrap:nowrap;gap:9px}.section-meta>span{font-size:12px}.section-meta button{font-size:12px}.panel-column-labels,.panel-main,.panel-details,.arm-directions{grid-template-columns:58px 1fr 1fr 1fr;gap:10px}.panel-details select,.arm-directions select{height:32px;font-size:15px}.inheritance-note{font-size:15px}.panel-note{font-size:15px}.bend-summary{font-size:12px;margin-top:5px}.panel-column-labels{font-size:13.5px}.panel-heading .text-button{font-size:15px}}
/* 鉄塔ラボのサイトへ戻るリンク(tower-lab.com/tower3d/ に置くときに追加) */
.site-back{color:inherit;text-decoration:none;font-weight:600;padding:8px 0}.site-back:hover{text-decoration:underline}
/* 腕金の長さが鉄塔の外面より短く、作図されないとき */
.panel-main input.is-short{border-color:#d9963f;background:#fff8ee;color:#9a5b00}
/* 3D表示が狭い幅(スマホ・iPad):寸法の数字を3D表示の上の帯に出し、3D表示はその下から始めて、パネル番号のラベルと重ならないようにする */
@media(max-width:1100px){#viewport{top:112px}.model-summary{top:78px;left:20px;right:15px;width:auto;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px}.model-summary .summary-eyebrow{display:none}.model-summary>div{padding-top:0;display:flex;align-items:baseline;gap:6px}.model-summary>div>span{margin-bottom:0;font-size:13.5px}.model-summary strong{font-size:21px}.model-summary .member-count{margin:0 0 0 auto;padding:0;border:0;font-size:12px}}
@media(max-width:760px){.preview{height:64dvh;min-height:450px}.model-summary{left:17px;right:12px}}
/* 水平材（パネルの下）の行と、パネルの間の「下にパネルを追加」 */
.horizontal-row{display:grid;grid-template-columns:58px 1fr 1fr 1fr;gap:9px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed #dce7ee}
.horizontal-row .arm-extra-caption{grid-column:1/3}
.horizontal-row select{grid-column:3/5;min-width:0;width:100%;height:30px;border:1px solid #d9e4ea;border-radius:3px;background:#fff;color:#638095;padding:0 6px;font-size:15px}
.insert-panel{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin:0 0 8px;padding:6px;border:1px dashed #c9d8e2;border-radius:4px;color:#68818f;background:transparent;font-size:13.5px;cursor:pointer}
.insert-panel:hover:not(:disabled){border-color:#4c87ab;color:#1d748a;background:#f5f9fc}
.insert-panel:disabled{opacity:.45;cursor:default}
.insert-panel svg{width:13px;height:13px}
.section-brace{margin-top:16px}
/* 文字を大きくしたあとも、腕金の行の見出しと選択肢をそろえて収める */
.arm-directions .detail-caption{font-size:12px;color:#8b9faa;line-height:1.6}
.panel-details select,.arm-directions select,.horizontal-row select{font-size:13.5px;padding:0 2px}
