.door-table .tr{grid-template-columns:1fr 2fr .8fr 1fr 1fr}
.drawing-state,.drawing-requirement{font-weight:750}
.drawing-state.missing,.drawing-requirement.missing{color:#b51f2b}
.drawing-state.ready,.drawing-requirement.ready{color:#18724b}
.drawing-state.na{color:#7b858e}
.drawing-requirement{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px;padding:14px;border:2px solid currentColor;border-radius:8px;margin:10px 0;max-width:100%;overflow:hidden}
.drawing-requirement>div{min-width:0}
.drawing-requirement strong{display:block;overflow-wrap:anywhere;word-break:break-word}
.drawing-requirement p{margin:5px 0;font-weight:400;overflow-wrap:anywhere}
.drawing-upload{display:grid;grid-template-columns:minmax(0,120px) minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;max-width:100%}
.drawing-upload input,.drawing-upload button{min-width:0;max-width:100%;width:100%}
.drawing-upload input[type=file]{overflow:hidden}
@media(max-width:700px){.door-table .tr{grid-template-columns:1fr 1fr}
.door-table .tr span:nth-child(3){display:none}
.drawing-requirement,.drawing-upload{grid-template-columns:minmax(0,1fr);width:100%}
.drawing-requirement{padding:12px}
.drawing-upload input,.drawing-upload button{display:block;width:100%;box-sizing:border-box}
.drawing-upload button{white-space:normal}
}

.drawing-viewport{width:100%;max-height:78vh;overflow:auto;background:#cfd6dd;border:1px solid #9aa8b5;border-radius:6px}
.drawing-pages{width:100%;line-height:0}
.drawing-pages img{display:block;width:100%;height:auto;margin:0 0 12px;background:#fff;box-shadow:0 2px 8px #0003;scroll-snap-align:start}
.drawing-viewport{scroll-snap-type:y proximity}
.fire-rating-preview{color:#a51e28;font-size:1.05em}

.drawing-viewport.panning{cursor:grabbing;user-select:none}
