.pattern-viewer{min-width:0}.packet-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.packet-print-button,.packet-zoom-controls button,.packet-zoom-controls select{color:#18313b;min-height:44px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #9aaba9;border-radius:4px;padding:9px 12px;font-size:14px}.packet-print-button:disabled,.packet-zoom-controls button:disabled{opacity:.5;cursor:default}.packet-zoom-controls{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.packet-zoom-controls button{min-width:44px}.packet-zoom-controls label{flex:1;min-width:110px}.packet-zoom-controls select{width:100%}.packet-pan-help{color:#40564d;margin:8px 0 12px;font-size:12px;line-height:1.55}.packet-diagram-viewport{overscroll-behavior:contain;touch-action:pan-x pan-y;scrollbar-gutter:stable;background:#f4f0e7;border:1px solid #d7ded6;max-height:65vh;overflow:auto}.packet-diagram-viewport:focus-visible,.packet-zoom-controls :focus-visible,.packet-print-button:focus-visible{outline-offset:3px;outline:3px solid #a64822}.packet-diagram-viewport.is-zoomed{cursor:grab}.packet-diagram-viewport.is-zoomed:active{cursor:grabbing}.packet-diagram-canvas{min-width:100%}.packet-diagram-canvas .pattern-svg{-webkit-user-select:none;user-select:none;max-height:none}.packet-diagram-canvas .pattern-svg--sheet{max-height:60vh}.is-zoomed .packet-diagram-canvas .pattern-svg--sheet{max-height:none}.pattern-viewer .pattern-part-list{margin:0;padding:0;list-style:none}.pattern-viewer .pattern-part{margin:0}.packet-incomplete{color:#753f1c;margin:0 24px 18px;font-size:14px}.packet-dialog-summary{overflow-wrap:anywhere;font-size:14px;line-height:1.6}.pattern-viewer .pattern-dialog{overflow:auto}.job-packet-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.job-packet-facts dt{color:#40564d;font-size:12px}.job-packet-facts dd{margin:4px 0 0;font-weight:700}.job-packet-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px;line-height:1.5}.job-packet-table th,.job-packet-table td{text-align:left;overflow-wrap:anywhere;vertical-align:top;border:1px solid #bbc5c0;padding:8px}.job-packet-table th{background:#eef0e9}@media (width<=650px){.packet-actions{justify-content:stretch;margin-top:10px}.packet-actions>button{flex:135px;margin:0}.packet-zoom-controls{grid-template-columns:44px minmax(80px,1fr) 44px;display:grid}.packet-zoom-controls>button:last-child{grid-column:1/-1}.packet-diagram-viewport{max-height:60vh}.packet-incomplete{margin-inline:16px}}@media print{body:has(.job-packet) .guide-faq{display:none!important}body:has(.job-packet) .skip-link{display:none!important}body:has(.job-packet) .optimizer-material{display:none!important}.optimizer__results:has(.job-packet)>:not(.pattern-viewer){display:none!important}.linear-results:has(.job-packet)>:not(.pattern-viewer){display:none!important}.packet-zoomable,.packet-actions{display:none!important}.job-packet{color:#18313b;font-size:11pt}.job-packet-header h2{overflow-wrap:anywhere;font-size:25pt;line-height:1.15}.job-packet-header p,.job-packet>p,.job-packet .print-pattern>p{font-size:10pt;line-height:1.45}.job-packet-header,.job-packet-facts,.job-packet-table tr{break-inside:avoid}.job-packet-table thead{display:table-header-group}.job-packet-table{margin-bottom:20px}.job-packet .print-pattern{break-before:page}.job-packet .print-pattern>.pattern-svg{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:100%;height:auto;max-height:440px;margin:14px auto}.job-packet .pattern-part-number{-webkit-print-color-adjust:exact;print-color-adjust:exact}.job-packet .pattern-part{font-size:9pt}.job-packet .pattern-dimensions,.job-packet .pattern-part>div>strong{font-size:11pt}.job-packet h3,.job-packet h4{break-after:avoid}}@media screen and (width<=650px){.pattern-viewer .packet-zoom-controls{grid-template-columns:36px minmax(70px,1fr) 36px 74px;gap:4px;display:grid}.pattern-viewer .packet-zoom-controls>button:last-child{grid-column:auto}.pattern-viewer .packet-zoom-controls button,.pattern-viewer .packet-zoom-controls select{min-width:0;padding:8px 5px;font-size:12px}}@media print{.job-packet .print-pattern>.stock-drawing{width:88%;max-width:600px;max-height:none;margin:10px auto}.job-packet .pattern-part-list{grid-template-columns:1fr 1fr;column-gap:22px;display:grid}.job-packet .pattern-part{padding:8px 0;line-height:1.4}.job-packet .pattern-schedule h4{margin:10px 0}.job-packet .pattern-part>div>strong,.job-packet .pattern-dimensions{font-size:10pt}.job-packet .pattern-caption{margin:8px 0;font-size:9pt;line-height:1.4}}
