.perforated-tool{--cad-ink:#202529;--cad-muted:#626a70;--cad-line:#cbd0d3;--cad-soft:#f1f3f4;--cad-yellow:#e9b92e;color:var(--cad-ink);background:#f0f1f1;min-height:calc(100vh - 64px);padding-bottom:48px}.generator-breadcrumbs{color:var(--cad-muted);gap:9px;padding:22px 0;font-size:11px;display:flex}.generator-breadcrumbs a:hover{color:var(--cad-ink);text-decoration:underline}.generator-heading{justify-content:space-between;align-items:end;gap:20px;margin:3px 0 18px;display:flex}.generator-eyebrow{letter-spacing:1.7px;color:#725810;font-size:9px;font-weight:600}.generator-heading h1{letter-spacing:-.8px;margin-top:5px;font-size:31px;line-height:1.2}.generator-heading>div>p:last-child{color:var(--cad-muted);margin-top:6px;font-size:13px;line-height:1.5}.generator-unit-note{border:1px solid var(--cad-line);color:var(--cad-muted);white-space:nowrap;background:#fff;padding:7px 9px;font-size:10px}.generator-layout{grid-template-columns:320px minmax(0,1fr);gap:14px;display:grid}.parameter-panel,.model-panel,.generator-results{border:1px solid var(--cad-line);background:#fff}.parameter-panel{align-self:start;padding:17px 17px 13px}.panel-heading{align-items:center;gap:10px;display:flex}.panel-index{background:var(--cad-yellow);place-items:center;width:23px;height:23px;font-size:9px;font-weight:700;display:grid}.panel-heading h2{letter-spacing:-.2px;font-size:15px;font-weight:600}.parameter-group{border:0;border-top:1px solid #e1e4e6;margin:15px 0 0;padding:13px 0 0}.parameter-group legend{padding:0 0 9px;font-size:11px;font-weight:600}.generator-fields{grid-template-columns:1fr 1fr;gap:10px 11px;display:grid}.generator-fields>label{color:var(--cad-muted);font-size:10px}.generator-fields>label>span{float:right;color:#777f85;font-weight:600}.field-with-unit{background:#fff;border:1px solid #bcc3c7;align-items:center;height:34px;margin-top:5px;display:flex}.field-with-unit:focus-within{outline:2px solid var(--cad-yellow);outline-offset:1px}.field-with-unit input{width:100%;min-width:0;height:100%;color:var(--cad-ink);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:0 8px;font-size:12px}.field-with-unit small{color:#646c71;padding:0 7px;font-size:9px}.parameter-help{color:var(--cad-muted);margin-top:9px;font-size:9px;line-height:1.5}.pattern-options{grid-template-columns:1fr 1fr;gap:7px;display:grid}.pattern-options label{border:1px solid var(--cad-line);cursor:pointer;align-items:flex-start;gap:7px;min-height:55px;padding:9px 8px;display:flex;position:relative}.pattern-options label:has(input:checked){box-shadow:inset 3px 0 0 var(--cad-yellow);background:#fff9e6;border-color:#87702e}.pattern-options input{accent-color:#b2870c;margin:2px 0 0}.pattern-options span{flex-direction:column;gap:4px;display:flex}.pattern-options strong{font-size:9px;font-weight:600;line-height:1.3}.pattern-options small{color:var(--cad-muted);font-size:8px;line-height:1.35}.material-field{margin-top:14px}.material-field>label{color:var(--cad-muted);margin-bottom:5px;font-size:10px;display:block}.material-field select{width:100%;height:36px;color:var(--cad-ink);background:#fff;border:1px solid #bcc3c7;border-radius:0;padding:0 9px;font-size:11px}.material-field select:focus-visible,.field-with-unit input:focus-visible{outline:2px solid var(--cad-yellow);outline-offset:1px}.generator-error{color:#a52b25;min-height:15px;margin-top:8px;font-size:10px;line-height:1.5}.generator-error:empty{display:none}.model-panel{flex-direction:column;min-width:0;padding:0 15px;display:flex}.model-toolbar{border-bottom:1px solid #e1e4e6;justify-content:space-between;align-items:center;gap:15px;min-height:55px;display:flex}.view-controls{align-items:center;gap:4px;display:flex}.view-controls button{color:#565e63;background:#f1f3f4;border:1px solid #0000;min-height:30px;padding:0 10px;font-size:9px}.view-controls button[aria-pressed=true]{color:#25282a;background:#f8edc8;border-color:#bf9b2e;font-weight:600}.view-controls button.reset-camera{background:#fff;border-color:#cbd0d3;margin-left:5px}.model-canvas,.top-view-wrap{background:#eef0f1;width:100%;height:clamp(350px,42vw,510px);position:relative;overflow:hidden}.model-canvas canvas{touch-action:none;width:100%;height:100%;display:block}.model-fallback{color:var(--cad-muted);text-align:center;place-items:center;padding:22px;font-size:12px;display:grid;position:absolute;inset:0}.model-fallback[hidden]{display:none}.top-view-wrap{background:#f4f5f5;justify-content:center;align-items:center;display:flex}.top-view-wrap svg{width:100%;height:100%;display:block}.top-view-wrap[hidden]{display:none}.sheet-outline{fill:#e3e6e7;stroke:#31383c;stroke-width:1.2px}.holes circle{fill:#f7f8f8;stroke:#5e666b;stroke-width:.8px}.dimension-line{stroke:#555d62;stroke-width:1px}.dimension-label,.view-label{fill:#3d454a;font:11px Arial,sans-serif}.view-label{fill:#656e73;font-size:10px}.model-footer{min-height:35px;color:var(--cad-muted);border-top:1px solid #e1e4e6;justify-content:space-between;align-items:center;gap:12px;font-size:9px;display:flex}.model-footer>span:first-child{align-items:center;gap:7px;display:flex}.status-dot{background:#b18b1e;border-radius:50%;width:7px;height:7px}.generator-results{grid-column:1/-1;padding:16px 18px 13px}.results-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.results-heading>p{color:var(--cad-muted);font-size:9px}.primary-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px;display:grid}.primary-result{background:#f3f4f4;border-left:3px solid #b9bec1;flex-direction:column;min-width:0;min-height:81px;padding:11px 12px;display:flex}.primary-result:first-child{border-left-color:var(--cad-yellow);background:#fff8e2}.primary-result>span{color:var(--cad-muted);font-size:9px}.primary-result strong{letter-spacing:-.4px;font-variant-numeric:tabular-nums;margin-top:5px;font-size:21px;font-weight:600}.primary-result small{color:var(--cad-muted);margin-top:3px;font-size:8px;line-height:1.4}.secondary-results{border-top:1px solid #e1e4e6;border-bottom:1px solid #e1e4e6;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:12px;display:grid}.secondary-results>div{border-right:1px solid #e1e4e6;min-width:0;padding:10px 9px}.secondary-results>div:first-child{padding-left:0}.secondary-results>div:last-child{border:0}.secondary-results span,.secondary-results strong{display:block}.secondary-results span{color:var(--cad-muted);font-size:8px;line-height:1.35}.secondary-results strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin-top:5px;font-size:10px;font-weight:600;line-height:1.35}.weight-note{color:var(--cad-muted);margin-top:9px;font-size:8px;line-height:1.5}@media (width>=1400px){.generator-layout{grid-template-columns:340px minmax(0,1fr);gap:16px}.model-canvas,.top-view-wrap,.pattern-image-wrap{height:520px}}@media (width<=900px){.generator-layout{grid-template-columns:285px minmax(0,1fr);gap:10px}.parameter-panel{padding:14px 12px}.model-panel{padding-inline:11px}.model-canvas,.top-view-wrap,.pattern-image-wrap{height:390px}.secondary-results{grid-template-columns:repeat(3,minmax(0,1fr))}.secondary-results>div:nth-child(3){border-right:0}.secondary-results>div:nth-child(n+4){border-top:1px solid #e1e4e6}.secondary-results>div:nth-child(4){padding-left:0}}@media (width<=680px){.perforated-tool{padding-bottom:28px}.perforated-tool>.container{width:calc(100% - 28px)}.generator-breadcrumbs{padding-block:16px;font-size:10px}.generator-heading{align-items:flex-start;margin:0 0 13px}.generator-heading h1{letter-spacing:-.6px;font-size:25px}.generator-heading>div>p:last-child{max-width:280px;font-size:11px}.generator-unit-note{display:none}.generator-layout{grid-template-columns:minmax(0,1fr);gap:10px}.parameter-panel{padding:14px}.parameter-group{margin-top:12px;padding-top:11px}.generator-fields{gap:10px 12px}.generator-fields>label{font-size:10px}.field-with-unit{height:38px}.field-with-unit input{font-size:14px}.pattern-options label{min-height:58px;padding:8px 7px}.pattern-options strong{font-size:9px}.material-field select{height:40px;font-size:13px}.model-panel{padding-inline:11px}.model-toolbar{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;min-height:52px;padding-block:9px}.view-controls{width:100%}.view-controls button{flex:1;min-height:34px;font-size:10px}.view-controls button.reset-camera{flex:none}.model-canvas,.top-view-wrap,.pattern-image-wrap{height:min(88vw,400px);min-height:270px}.model-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding-block:8px;font-size:8px}.generator-results{grid-column:auto;padding:13px 12px}.results-heading{flex-direction:column;align-items:flex-start;gap:5px}.results-heading>p{font-size:8px}.primary-results{grid-template-columns:1fr 1fr;gap:7px}.primary-result{min-height:77px;padding:9px}.primary-result:last-child{grid-column:1/-1}.primary-result strong{font-size:19px}.secondary-results{grid-template-columns:1fr 1fr}.secondary-results>div{border-top:1px solid #e1e4e6;border-right:1px solid #e1e4e6!important;padding:9px 7px!important}.secondary-results>div:nth-child(odd){padding-left:0!important}.secondary-results>div:nth-child(2n){border-right:0!important}.secondary-results>div:first-child,.secondary-results>div:nth-child(2){border-top:0}.secondary-results span{font-size:8px}.secondary-results strong{font-size:10px}.weight-note{font-size:8px}}.preview-simplified{color:#8a6b13;margin:0;padding:8px 0;font-size:10px;line-height:1.45}.preview-simplified[hidden]{display:none}.generate-button{background:var(--cad-yellow);color:#25282a;cursor:pointer;border:1px solid #a88419;width:100%;min-height:38px;margin-top:12px;font-size:12px;font-weight:700}.generate-button:hover{background:#e9bd2d}.generate-button:focus-visible{outline-offset:2px;outline:2px solid #1b63c8}.generator-dirty{color:#8a6b13;margin:7px 0 0;font-size:10px;line-height:1.45}.generator-dirty[hidden]{display:none}.generate-button:disabled{cursor:wait;opacity:.68}.generation-progress{margin-top:10px}.generation-progress[hidden]{display:none}.generation-progress-labels{color:var(--cad-muted);justify-content:space-between;gap:10px;margin-bottom:5px;font-size:9px;line-height:1.4;display:flex}.generation-progress-labels span:last-child{font-variant-numeric:tabular-nums;color:var(--cad-ink);font-weight:600}.generation-progress progress{appearance:none;background:#e7e9ea;border:0;border-radius:0;width:100%;height:7px;display:block}.generation-progress progress::-webkit-progress-bar{background:#e7e9ea}.generation-progress progress::-webkit-progress-value{background:var(--cad-yellow);transition:width .18s}.generation-progress progress::-moz-progress-bar{background:var(--cad-yellow);transition:width .18s}.generate-image-button{color:#25282a;cursor:pointer;background:#fffaf0;border:1px solid #a88419;width:100%;min-height:38px;margin-top:8px;font-size:12px;font-weight:600}.generate-image-button:hover{background:#fff3cf}.generate-image-button:focus-visible{outline-offset:2px;outline:2px solid #1b63c8}.generate-image-button:disabled{cursor:wait;opacity:.68}@media (width<=680px){.generate-button,.generate-image-button{min-height:44px}}.mobile-generate-button,.mobile-generate-error{display:none}.generator-layout>.model-panel{grid-area:1/2}.generator-layout>.generator-results{grid-row:2}@media (width<=680px){.generator-layout>.generator-results,.generator-layout>.model-panel{grid-area:auto}#generate-button{display:none}.mobile-generate-button{margin:12px 0 4px;display:block}.mobile-generate-error:not(:empty){display:block}.model-panel .panel-index,.generator-results .panel-index{font-size:0}.model-panel .panel-index:after{content:"03";font-size:9px}.generator-results .panel-index:after{content:"02";font-size:9px}}.pattern-image-wrap{background:#eef0f1;width:100%;height:clamp(350px,42vw,510px);position:relative;overflow:hidden}.pattern-image-wrap canvas{width:100%;height:100%;display:block}.pattern-zoom-controls{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.pattern-zoom-controls button{border:1px solid var(--cad-line);min-width:32px;min-height:32px;color:var(--cad-ink);cursor:pointer;background:#fff;padding:0 9px;font-size:11px}.pattern-zoom-controls button:hover{background:#fff8e2;border-color:#a88419}.pattern-zoom-controls button:disabled{opacity:.4;cursor:default}.pattern-zoom-controls button:focus-visible,.pattern-image-wrap canvas:focus-visible{outline-offset:2px;outline:2px solid #1b63c8}.pattern-zoom-controls output{text-align:center;font-variant-numeric:tabular-nums;min-width:48px;font-size:11px}.pattern-clarity{color:#725810;margin:0;padding:9px 0;font-size:11px;line-height:1.5}.pattern-clarity[hidden]{display:none}.pattern-image-wrap canvas.is-zoomed{cursor:grab;touch-action:none}.pattern-image-wrap canvas.is-dragging{cursor:grabbing}@media (width<=1100px){.model-toolbar{flex-wrap:wrap;gap:8px;padding-block:10px}.pattern-zoom-controls{padding-bottom:2px}}@media (width<=680px){.pattern-zoom-controls{width:100%}.pattern-zoom-controls button{min-height:40px}.pattern-zoom-controls button:nth-last-child(-n+2){flex:1}}.pattern-export-status{color:var(--cad-muted);margin:0;padding:9px 0;font-size:11px;line-height:1.5}.pattern-export-status[hidden]{display:none}#pattern-pdf{background:#fff8e2;border-color:#a88419}.drawing-layout{grid-template-columns:minmax(0,1fr) 200px;align-items:center;min-width:0;display:grid}.hole-detail-panel{border-left:1px solid #e1e4e6;flex-direction:column;justify-content:center;align-self:stretch;padding:16px 0 16px 10px;display:flex}.hole-detail-panel h3{margin:0 0 5px;font-size:12px;font-weight:600}.hole-detail-panel>p{color:var(--cad-muted);font-size:9px;line-height:1.5}#hole-detail-diagram{align-self:center;width:100%;max-width:280px;margin-top:10px}#hole-detail-diagram svg{width:100%;height:auto;display:block}#hole-detail-diagram text{fill:var(--cad-ink);stroke:none;text-anchor:middle;dominant-baseline:middle;font:11px Arial,sans-serif}.hole-detail-panel label{color:var(--cad-ink);justify-content:space-between;gap:10px;margin:8px 0;font-size:10px;display:flex}.hole-detail-panel input[type=range]{accent-color:#a88419;cursor:pointer;width:100%;min-height:24px}.hole-detail-panel input:focus-visible{outline-offset:2px;outline:2px solid #1b63c8}.hole-detail-panel .detail-scale-note{margin-top:5px;font-size:8px}@media (width<=1100px){.drawing-layout{grid-template-columns:minmax(0,1fr) 160px}}@media (width<=900px){.drawing-layout{grid-template-columns:minmax(0,1fr)}.hole-detail-panel{border-top:1px solid #e1e4e6;border-left:0;padding:14px 4px}.hole-detail-panel input[type=range],.hole-detail-panel label{align-self:center;width:100%;max-width:280px}#hole-detail-diagram{max-width:240px}.hole-detail-panel input[type=range]{min-height:36px}}.generator-fields>label[hidden],.material-field[hidden],.pattern-options>label[hidden]{display:none}.generator-fields>label>span#hole-size-label,.generator-fields>label>span#hole-pitch-label{float:none;color:var(--cad-muted);font-weight:400}.shape-selector{margin:0 0 12px}.secondary-results{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=900px){.secondary-results{grid-template-columns:repeat(2,minmax(0,1fr))}}#hole-detail-diagram text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}@media (width<=680px){.pattern-zoom-controls{grid-template-columns:34px 48px 34px minmax(0,1fr) minmax(0,1fr);gap:4px;display:grid}.pattern-zoom-controls button{white-space:normal;min-height:44px;padding-inline:5px;line-height:1.25}.pattern-zoom-controls output{min-width:0}#pattern-pdf{grid-column:1/-1}}.pattern-options:has(#inline-pattern-option[hidden]){grid-template-columns:minmax(0,1fr)}.generator-unit-note{background:0 0;border:0;align-items:center;gap:12px;padding:0;font-size:12px;font-weight:600;display:flex}.perforated-unit-buttons{gap:6px;display:flex}.perforated-unit-buttons button{color:#46515c;cursor:pointer;background:#fff;border:1px solid #bac3cc;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:112px;min-height:55px;padding:9px 16px;display:flex;box-shadow:0 1px 2px #20252908}.perforated-unit-buttons strong{font-size:12px;font-weight:650}.perforated-unit-buttons button span{font-size:10px;font-weight:400}.perforated-unit-buttons button[aria-pressed=true]{color:#202529;background:#e9b92e;border-color:#a88419;box-shadow:inset 0 0 0 1px #a88419}.perforated-unit-buttons button:hover:not(:disabled){background:#fff6d7;border-color:#a88419}.perforated-unit-buttons button[aria-pressed=true]:hover:not(:disabled){background:#e3ae19}.perforated-unit-buttons button:focus-visible{outline-offset:3px;outline:2px solid #1b63c8}@media (width<=680px){.generator-heading{flex-wrap:wrap}.generator-unit-note{width:100%;margin-top:6px;display:flex}.perforated-unit-buttons{flex:1}.perforated-unit-buttons button{flex:1;min-width:0;min-height:54px}}#calculate-button,#generate-button,#mobile-generate-button{text-align:left;border-width:1px;border-radius:5px;align-items:center;gap:12px;min-height:66px;padding:12px 14px;transition:background .15s,border-color .15s;box-shadow:0 2px 3px #2025290a}#calculate-button,#generate-button{display:flex}#calculate-button{color:#202529;background:#e9b92e;border-color:#a88419}#calculate-button:hover:not(:disabled){background:#e2ad19}#generate-button,#mobile-generate-button{color:#fff;background:#203c59;border-color:#203c59;margin-top:10px}#generate-button:hover:not(:disabled),#mobile-generate-button:hover:not(:disabled){background:#142d47;border-color:#142d47}.action-button-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.action-button-copy strong{font-size:13px;font-weight:700;line-height:1.3}.action-button-copy small{font-size:10px;font-weight:400;line-height:1.4}#calculate-button:disabled,#generate-button:disabled,#mobile-generate-button:disabled{opacity:.6;cursor:wait}@media (width<=680px){#generate-button{display:none}#mobile-generate-button{display:flex}.action-button-copy strong{font-size:14px}.action-button-copy small{font-size:11px}}@media (prefers-reduced-motion:reduce){#calculate-button,#generate-button,#mobile-generate-button{transition:none}}.generator-breadcrumbs{font-size:12px;line-height:1.5}.generator-eyebrow{letter-spacing:1.2px;font-size:11px;line-height:1.5}.generator-heading>div>p:last-child{font-size:15px;line-height:1.6}.generator-layout{grid-template-columns:350px minmax(0,1fr)}.panel-heading h2{font-size:17px}.panel-index{width:26px;height:26px;font-size:11px}.parameter-group legend{font-size:14px;line-height:1.4}.generator-fields>label,.material-field>label{font-size:13px;line-height:1.5}.field-with-unit{height:42px}.field-with-unit input{font-size:15px}.field-with-unit small{font-size:12px}.material-field select{height:42px;font-size:13px}.parameter-help{font-size:12px;line-height:1.65}.pattern-options label{min-height:78px;padding:11px 9px}.pattern-options strong{font-size:12px;line-height:1.4}.pattern-options small{font-size:11px;line-height:1.5}.pattern-options input{flex-shrink:0;width:16px;height:16px}.action-button-copy strong{font-size:15px}.action-button-copy small{font-size:12px}.generation-progress-labels{font-size:11px;line-height:1.5}.generator-dirty,.generator-error{font-size:12px;line-height:1.6}.pattern-zoom-controls button{min-height:36px;font-size:12px}.pattern-zoom-controls output{font-size:12px}.model-toolbar{flex-wrap:wrap;padding-block:12px}.hole-detail-panel h3{font-size:14px;line-height:1.5}.hole-detail-panel>p{font-size:12px;line-height:1.6}.hole-detail-panel label{font-size:12px;line-height:1.5}.hole-detail-panel .detail-scale-note{font-size:11px;line-height:1.6}.model-footer{flex-wrap:wrap;padding-block:10px;font-size:11px;line-height:1.6}.pattern-export-status,.pattern-clarity,.results-heading>p{font-size:12px;line-height:1.6}.primary-result>span{font-size:12px;line-height:1.5}.primary-result strong{font-size:26px}.primary-result small{font-size:11px;line-height:1.6}.secondary-results span{font-size:11px;line-height:1.5}.secondary-results strong{font-size:13px;line-height:1.6}.weight-note{font-size:11px;line-height:1.7}@media (width<=1100px) and (width>=681px){.generator-layout{grid-template-columns:320px minmax(0,1fr)}.drawing-layout{grid-template-columns:1fr}.hole-detail-panel{border-top:1px solid #e1e4e6;border-left:0;padding:16px 4px}.hole-detail-panel label,.hole-detail-panel input[type=range]{align-self:center;width:100%;max-width:280px}#hole-detail-diagram{max-width:240px}.secondary-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.generator-layout{grid-template-columns:minmax(0,1fr)}.generator-heading>div>p:last-child{max-width:none;font-size:14px}.generator-breadcrumbs{font-size:11px}.generator-fields>label,.material-field>label{font-size:13px}.field-with-unit input,.material-field select{font-size:16px}.field-with-unit,.material-field select{height:44px}.parameter-help,.pattern-options strong{font-size:12px}.pattern-options small{font-size:11px}.pattern-options label{min-height:82px}.model-footer{font-size:11px}.results-heading>p{font-size:12px}.primary-results{grid-template-columns:1fr}.primary-result{min-height:95px;padding:14px}.primary-result:last-child{grid-column:auto}.primary-result strong{font-size:27px}.primary-result>span{font-size:13px}.primary-result small{font-size:12px}.secondary-results span{font-size:11px}.secondary-results strong{font-size:13px}.weight-note{font-size:11px}.pattern-zoom-controls button{min-height:44px;font-size:12px}}@media (width>=681px){.generator-layout{align-items:stretch}.generator-layout>.parameter-panel,.generator-layout>.model-panel{align-self:stretch}.model-panel>.drawing-layout{flex:1;align-items:stretch;min-height:0}.drawing-layout>.pattern-image-wrap{height:auto;min-height:510px}.pattern-image-wrap canvas{width:100%;height:100%;position:absolute;inset:0}.model-footer{flex-shrink:0;margin-top:auto}.hole-detail-panel{justify-content:center}}@media (width>=681px) and (width<=1100px){.model-panel>.drawing-layout{grid-template-rows:minmax(390px,1fr) auto}.drawing-layout>.pattern-image-wrap{min-height:390px}}@media (width>=681px){.parameter-panel{padding:14px 16px 12px}.parameter-group{margin-top:11px;padding-top:8px}.parameter-group legend{padding-bottom:6px}.generator-fields{gap:8px 10px}.parameter-group:first-child .generator-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.field-with-unit{height:36px;margin-top:3px}.field-with-unit input{padding-inline:7px;font-size:14px}.field-with-unit small{padding-inline:5px;font-size:11px}.parameter-help{margin-top:6px;font-size:12px;line-height:1.45}.shape-selector{margin-bottom:8px}.material-field{margin-top:9px}.material-field select{height:36px}.pattern-options label{min-height:62px;padding:8px}.pattern-options span{gap:3px}.pattern-options small{line-height:1.4}#calculate-button,#generate-button{gap:9px;min-height:54px;padding:8px 12px}#generate-button{margin-top:7px}.action-button-copy{gap:3px}.action-button-copy strong{font-size:14px}.action-button-copy small{font-size:11px}.generation-progress{margin-top:7px}.drawing-layout>.pattern-image-wrap{min-height:380px}.model-toolbar{min-height:50px;padding-block:8px}.model-footer{padding-block:7px}}.layout-notes{color:var(--cad-muted);margin-top:8px;font-size:12px;line-height:1.5}.layout-notes summary{cursor:pointer;text-underline-offset:3px;width:fit-content;text-decoration:underline}.layout-notes summary:focus-visible{outline-offset:3px;outline:2px solid #1b63c8}@media (width>=681px) and (width<=1100px){.hole-detail-panel{grid-template-columns:minmax(0,1fr) 145px;align-content:center;column-gap:12px;padding-block:12px;display:grid}.hole-detail-panel h3,.hole-detail-panel>p,.hole-detail-panel label,.hole-detail-panel input[type=range]{grid-column:1}.hole-detail-panel #hole-detail-diagram{grid-area:1/2/7;width:100%;max-width:145px;margin:0}.model-panel>.drawing-layout{grid-template-rows:minmax(300px,1fr) auto}.drawing-layout>.pattern-image-wrap{min-height:300px}}.model-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.model-toolbar #generate-button{gap:10px;width:auto;min-width:228px;min-height:56px;margin:0;padding:9px 13px;display:flex}.model-toolbar #generate-button .action-button-copy strong{font-size:14px}.model-toolbar #generate-button .action-button-copy small{font-size:11px}.model-toolbar .pattern-zoom-controls{border-top:1px solid #e1e4e6;grid-column:1/-1;justify-content:flex-end;padding-top:10px}@media (width<=1100px){.model-toolbar{grid-template-columns:1fr}.model-toolbar #generate-button{width:100%;min-width:0}.model-toolbar .pattern-zoom-controls{justify-content:flex-start}}@media (width<=680px){.model-toolbar{gap:12px}.model-toolbar #generate-button{min-height:60px;display:flex}.model-toolbar .pattern-zoom-controls{width:100%}.perforated-tool{padding-bottom:20px}.generator-breadcrumbs{gap:6px;padding-block:12px;font-size:10px}.generator-heading{gap:8px;margin-bottom:10px}.generator-heading h1{font-size:24px;line-height:1.2}.generator-eyebrow{letter-spacing:.8px;font-size:9px}.generator-heading>div>p:last-child{margin-top:5px;font-size:12px;line-height:1.5}.generator-unit-note{gap:9px;margin-top:2px}.perforated-unit-buttons{gap:6px}.perforated-unit-buttons button{gap:2px;min-height:44px;padding:6px 10px}.perforated-unit-buttons strong{font-size:12px}.perforated-unit-buttons button span{font-size:10px}.generator-layout{gap:10px}.parameter-panel{padding:12px}.panel-heading{gap:8px}.panel-heading h2{font-size:15px}.panel-index{width:23px;height:23px}.parameter-group{margin-top:10px;padding-top:7px}.parameter-group legend{padding-bottom:6px;font-size:13px}.generator-fields{gap:8px}.parameter-group:first-child .generator-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.generator-fields>label,.material-field>label{font-size:12px;line-height:1.4}.field-with-unit{height:40px;margin-top:3px}.field-with-unit input{padding-inline:7px;font-size:16px}.field-with-unit small{padding-inline:4px;font-size:10px}.material-field{margin-top:8px}.material-field select{height:42px;font-size:14px}.shape-selector{margin-top:0;margin-bottom:8px}.pattern-options label{gap:6px;min-height:65px;padding:8px 6px}.pattern-options strong{font-size:12px;line-height:1.3}.pattern-options small{font-size:10px;line-height:1.4}.pattern-options span{gap:3px}.layout-notes{margin-top:7px;font-size:11px}.parameter-help{margin-top:6px;font-size:11px;line-height:1.5}#calculate-button{min-height:54px;margin-top:8px;padding:8px 11px}.action-button-copy{gap:3px}.action-button-copy strong{font-size:14px}.action-button-copy small{font-size:11px}.generation-progress{margin-top:7px}.generation-progress-labels{font-size:10px}.model-panel{padding-inline:10px}.model-toolbar{gap:8px;padding-block:10px}.model-toolbar #generate-button{min-height:52px;padding:7px 11px}.model-toolbar .pattern-zoom-controls{grid-template-columns:32px 40px 32px minmax(0,1fr) minmax(0,1fr);gap:4px;padding-top:8px}.pattern-zoom-controls button{min-height:44px;padding-inline:4px;font-size:11px}.pattern-image-wrap{height:300px;min-height:260px}.hole-detail-panel{grid-template-columns:minmax(0,1fr) 135px;align-content:center;column-gap:10px;padding:12px 0;display:grid}.hole-detail-panel h3,.hole-detail-panel>p,.hole-detail-panel label,.hole-detail-panel input[type=range]{grid-column:1}.hole-detail-panel h3{font-size:13px}.hole-detail-panel>p{font-size:11px;line-height:1.5}.hole-detail-panel label{margin-block:7px;font-size:11px}.hole-detail-panel .detail-scale-note{font-size:10px}.hole-detail-panel #hole-detail-diagram{grid-area:1/2/7;width:100%;max-width:135px;margin:0}.hole-detail-panel input[type=range]{min-height:32px}.model-footer{gap:3px;padding-block:7px;font-size:10px;line-height:1.5}.generator-results{padding:12px}.results-heading{gap:4px}.results-heading>p{font-size:11px}.primary-results{grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.primary-result{min-height:81px;padding:10px}.primary-result:last-child{grid-column:1/-1}.primary-result>span{font-size:12px}.primary-result strong{margin-top:3px;font-size:24px}.primary-result small{font-size:10px;line-height:1.5}.secondary-results{margin-top:9px}.secondary-results>div{padding:8px 6px!important}.secondary-results span{font-size:10px}.secondary-results strong{margin-top:3px;font-size:12px;line-height:1.5}.weight-note{font-size:10px;line-height:1.6}}
