.m9-page{max-width:1080px;margin:14px auto 28px;padding:18px 22px;background:#fff;border:1px solid var(--line)}
.m9-page .breadcrumbs{font-size:.82rem;color:var(--muted);margin-bottom:8px}
.m9-page .breadcrumbs ol{display:flex;flex-wrap:wrap;gap:4px;list-style:none;padding:0;margin:0}
.m9-page .breadcrumbs li+li::before{content:"/";margin-right:4px;color:var(--muted)}
.m9-page h1{font-size:clamp(1.4rem,4vw,2rem);margin:4px 0 10px;overflow-wrap:anywhere}
.m9-page h2{font-size:1.1rem;margin:0 0 10px}
.m9-page h3{font-size:1rem;margin:18px 0 8px}
.m9-lead{font-size:1rem;line-height:1.8;max-width:780px;margin:8px 0 14px}
.m9-preview-banner{padding:10px 12px;margin:12px 0 18px;border-left:3px solid var(--cut);background:#f8f2ef;color:#573d34;font-size:.875rem}
.m9-section{border-top:1px solid var(--line);padding:16px 0}
.m9-section>p{margin:6px 0;line-height:1.8}
.m9-page form{display:grid;gap:12px}
.m9-page label{display:grid;gap:4px;font-weight:600}
.m9-filter-row,.m9-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.m9-page select{width:100%;min-width:0;min-height:42px;border:1px solid var(--line);background:#fff;color:var(--ink);padding:6px 8px;font:inherit}
.m9-page .button{width:auto;justify-self:start;min-width:190px}
.m9-page .m9-browse form{max-width:700px}
.m9-results{list-style:none;margin:12px 0;padding:0;border-top:1px solid var(--ink)}
.m9-result{border-bottom:1px solid var(--line)}
.m9-result a{display:grid;gap:3px;padding:12px 10px;color:var(--ink);text-decoration:none}
.m9-result a:hover{background:#f2f6f8}
.m9-result strong{font-size:1.03rem;line-height:1.5}
.m9-result span,.m9-result small{color:var(--muted);font-size:.84rem;line-height:1.65;overflow-wrap:anywhere}
.m9-empty{padding:16px 10px;color:var(--muted)}
.m9-status{min-height:1.5em;margin:10px 0;color:var(--muted);font-size:.875rem}
.m9-footnote,.m9-note{color:var(--muted);font-size:.82rem;line-height:1.7;margin:8px 0}
.m9-number{display:flex;align-items:center;gap:7px;max-width:280px}
.m9-number input{max-width:180px}
.m9-number>span{color:var(--muted);font-size:.82rem}
.m9-input small{color:var(--muted);font-size:.75rem;font-weight:400}
.m9-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--line);margin:8px 0 14px}
.m9-table-scroll table{width:100%;border-collapse:collapse;min-width:370px;font-size:.88rem}
.m9-table-scroll caption{text-align:left;padding:8px;font-weight:700}
.m9-table-scroll th,.m9-table-scroll td{padding:8px 10px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.m9-table-scroll thead th{background:#f3f6f8}
.m9-table-scroll tbody th{min-width:120px}
.m9-table-scroll small{display:block;color:var(--muted);font-size:.75rem}
.m9-materials,.m9-list,.m9-formulas,.m9-limitations,.m9-related{padding-left:20px;line-height:1.8}
.m9-materials li,.m9-related li{padding:5px 0}
.m9-materials li{display:flex;justify-content:space-between;gap:12px;max-width:520px;border-bottom:1px solid var(--rule)}
.m9-materials span,.m9-related span{color:var(--muted);font-size:.82rem}
.m9-formulas li{margin:8px 0}
.m9-formulas li span{display:block;color:var(--muted);font-size:.84rem;overflow-wrap:anywhere}
.m9-placement{min-width:0}
.m9-result-material{border-top:1px solid var(--rule);padding:8px 0}
.m9-result-material .diagram-board{max-width:100%;overflow:auto;border:1px solid var(--line);background:#fbfcfd}
.m9-result-material .cutting-diagram{display:block;width:100%;height:auto;min-width:620px}
.m9-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:12px}
.m9-actions a{min-height:42px;display:inline-flex;align-items:center;padding:7px 12px}
.m9-back-link{display:inline-block;margin-top:10px}
@media(max-width:540px){
 .m9-page{margin:8px 8px 18px;padding:14px 12px}
 .m9-filter-row,.m9-input-grid{grid-template-columns:minmax(0,1fr)}
 .m9-page .button{width:100%;min-width:0;justify-self:stretch}
 .m9-materials li{align-items:flex-start}
 .m9-table-scroll table{min-width:360px}
 .m9-result-material .cutting-diagram{min-width:620px}
}
@media(max-width:350px){.m9-page{margin-inline:5px;padding-inline:9px}.m9-page h1{font-size:1.28rem}.m9-table-scroll table{min-width:340px}}

.m13-collection{min-width:0}
.m13-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.m13-summary p{display:flex;flex-direction:column;gap:4px;margin:0;padding:14px;border:1px solid var(--rule);border-radius:10px;background:#f8fafb}
.m13-summary strong{font-size:1.15rem}
.m13-summary span,.m13-table small{color:var(--muted);font-size:.84rem}
.m13-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.m13-filter{display:grid;gap:6px;font-weight:650}
.m13-filter select{max-width:100%;min-height:42px;padding:8px;border:1px solid var(--rule);border-radius:6px;background:#fff;color:inherit;font:inherit}
.m13-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--rule);border-radius:8px}
.m13-table{width:100%;min-width:850px;border-collapse:collapse;background:#fff}
.m13-table th,.m13-table td{padding:10px;vertical-align:top;text-align:left;border-bottom:1px solid var(--rule)}
.m13-table thead th{position:sticky;top:0;background:#f1f4f6;font-size:.88rem}
.m13-table tbody th{min-width:190px;font-weight:650}
.m13-table tbody th a{overflow-wrap:anywhere}
.m13-table small{display:block;margin-top:4px;font-weight:400}
.m13-width-table{min-width:1000px}
.m13-width-table td{min-width:112px;white-space:nowrap}
.m13-width-table td span,.m13-width-table td small{display:block}
.m13-width-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0;list-style:none}
.m13-width-stats li{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--rule);border-radius:8px}
.m13-width-stats span{font-size:.85rem;color:var(--muted)}
.m13-collection-links ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;list-style:none}
.m13-collection-links li{min-width:0;border:1px solid var(--rule);border-radius:9px}
.m13-collection-links a{display:flex;flex-direction:column;gap:5px;height:100%;padding:12px;text-decoration:none}
.m13-collection-links span{color:var(--muted);font-size:.84rem}
.m13-back{margin-top:18px}
.m13-table tr[hidden]{display:none}
@media(max-width:700px){.m13-summary{grid-template-columns:1fr}.m13-width-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.m13-collection-links ul{grid-template-columns:1fr}.m13-filter-grid{grid-template-columns:1fr}}
@media(max-width:350px){.m13-width-stats{grid-template-columns:1fr}.m13-table tbody th{min-width:155px}}
