:root{--drawing-room:#f9fcff;--drawing-line:#486780;--drawing-full:#dfeef4;--drawing-cut:#f6ecd3;--drawing-narrow:#f8d8d9;--drawing-ink:#365c72}:root[data-theme=dark]{--drawing-room:#101e31;--drawing-line:#99b5ce;--drawing-full:#1d3f50;--drawing-cut:#4b412d;--drawing-narrow:#5c3039;--drawing-ink:#bcdae9}.hh-container{width:min(1540px,calc(100% - 64px))}.hh-main{padding-top:30px}.hh-header-inner{min-height:76px}.hh-header{background:var(--hh-surface)}.product-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.product-heading h1{font-size:32px;letter-spacing:-1.1px;margin:5px 0 6px}.product-heading h1 span{color:var(--hh-primary);font-weight:500}.product-heading p{margin:0;color:var(--hh-muted);font-size:14px}.subtitle-dot{padding:0 8px;color:#97a9bb}.preview-badge{border:1px solid var(--hh-border);background:var(--hh-soft);padding:5px 10px;border-radius:6px;font-size:11px;letter-spacing:.07em;white-space:nowrap;color:var(--hh-muted)}.project-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--hh-surface);border:1px solid var(--hh-border);border-radius:10px;gap:15px;margin-bottom:22px}.project-name{display:flex;align-items:center;gap:10px;min-width:0;color:var(--hh-primary)}.project-name input{background:transparent;border:0;min-width:0;width:230px;color:var(--hh-text);font-size:14px}.project-actions{display:flex;gap:10px;align-items:center}.segmented{display:flex;border:1px solid var(--hh-border);border-radius:7px;background:var(--hh-bg);padding:3px}.segmented button{background:transparent;border:0;color:var(--hh-muted);border-radius:5px;min-height:34px;padding:4px 10px;font-size:12px;white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--hh-surface);color:var(--hh-primary);box-shadow:0 1px 4px #0000000d;font-weight:650}.project-actions>.hh-btn{font-size:13px;min-height:40px}.mode-tabs{display:flex;gap:6px;border-bottom:1px solid var(--hh-border);margin-bottom:22px}.mode-tabs>button{display:flex;gap:12px;align-items:center;text-align:left;padding:13px 24px 15px;color:var(--hh-muted);background:transparent;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;border-radius:8px 8px 0 0;font-size:14px;font-weight:650;min-height:66px}.mode-tabs>button[aria-selected=true]{border-bottom-color:var(--hh-primary);color:var(--hh-primary);background:var(--hh-soft)}.mode-tabs small{display:block;font-size:10px;font-weight:400;color:var(--hh-muted);margin-top:1px;letter-spacing:.025em}.tab-icon{font-size:26px;font-weight:400}.calculator-layout{display:grid;grid-template-columns:300px minmax(0,1fr) 320px;gap:20px;align-items:start}.calculator-layout .hh-card{padding:0;overflow:hidden}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid var(--hh-border);padding:16px 18px;min-height:62px}.panel-heading h2{font-size:15px!important;display:flex;align-items:center;gap:8px;margin:0!important;letter-spacing:-.03em}.step-number{font-family:var(--hh-font-mono);font-size:10px;color:var(--hh-muted);border:1px solid var(--hh-border);border-radius:4px;padding:2px 4px;font-weight:400;letter-spacing:0}.text-button{background:transparent;border:0;padding:4px;color:var(--hh-primary);font-size:12px;min-height:30px}.input-content{padding:18px}.input-content h3{font-size:13px;margin:22px 0 12px;letter-spacing:0}.input-content h3:first-child{margin-top:0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hh-field{position:relative;font-size:11px;font-weight:500;gap:6px}.unit{position:absolute;right:10px;top:33px;font-size:11px;pointer-events:none;color:var(--hh-muted)}.hh-field input,.hh-field select{min-height:42px;padding:8px 10px;font-size:14px;background:var(--hh-bg);border:1px solid var(--hh-border);border-radius:6px;color:var(--hh-text);width:100%;min-width:0;font-variant-numeric:tabular-nums}.hh-field input{padding-right:28px}.ceiling-types{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}.ceiling-types button{border:1px solid var(--hh-border);background:var(--hh-bg);color:var(--hh-muted);border-radius:6px;padding:10px 2px 7px;font-size:10px;min-height:70px}.ceiling-types button.selected{border-color:var(--hh-primary);color:var(--hh-primary);background:var(--hh-soft)}.ceiling-types svg{display:block;width:54px;height:28px;margin:0 auto 4px;fill:none;stroke:currentColor;stroke-width:2}.spaced{margin-top:14px}.info-box,.warning-box{font-size:12px;line-height:1.7;background:var(--hh-soft);border-radius:7px;padding:12px;margin-top:15px;color:var(--hh-muted)}.warning-box{background:#f7ba4b18;color:var(--hh-danger);border:1px solid #dcab4a55}.warning-box p{margin:0}.hh-caption{font-size:11px;margin:8px 0 0}.check-row{display:flex;gap:8px;align-items:center;font-size:12px;min-height:44px;margin-top:10px}.check-row input,.layer-toggles input{accent-color:var(--hh-primary);width:15px;height:15px}.add-opening{width:100%;font-size:12px;border-style:dashed}.opening-card{background:var(--hh-bg);border:1px solid var(--hh-border);border-radius:8px;padding:10px;margin-bottom:12px}.opening-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.opening-top select{background:transparent;border:0;color:var(--hh-text);font-size:12px;min-height:35px}.count{font-size:11px;color:var(--hh-primary);padding:2px 6px;background:var(--hh-soft);border-radius:5px}.blueprint-column{min-width:0}.live-dot{font-size:10px;display:flex;gap:6px;align-items:center;color:var(--hh-muted)}.live-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#2ca37b}.drawing-bar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 14px}.drawing-bar>span{font-family:var(--hh-font-mono);font-size:10px;color:var(--hh-muted)}.drawing-surface{position:relative;overflow:hidden;background:var(--hh-bg);margin:0 12px;border:1px solid var(--hh-border);border-radius:6px}.blueprint{display:block;width:100%;min-height:320px;touch-action:none;cursor:grab}.blueprint:active{cursor:grabbing}.board-full{fill:var(--drawing-full);stroke:#7ea5b9;stroke-width:.8}.board-cut{fill:var(--drawing-cut);stroke:#bca873;stroke-width:.8}.board-narrow{fill:var(--drawing-narrow);stroke:#c86570;stroke-width:1}.sheet-id{font-family:var(--hh-font-mono);font-size:10px;fill:var(--drawing-ink);opacity:.8}.dimensions path{stroke:#8ba3b8;stroke-width:.8;fill:none}.dimensions text{font-size:12px;font-family:var(--hh-font-mono);fill:var(--drawing-ink)}.origin-label{font-size:8px;fill:var(--hh-muted);font-family:var(--hh-font-mono)}.section-drawing text{font-size:12px;fill:var(--drawing-ink)}.zoom-toolbar{display:flex;align-items:center;position:absolute;right:12px;bottom:12px;background:var(--hh-surface);border:1px solid var(--hh-border);border-radius:6px;box-shadow:0 3px 10px #00000008}.zoom-toolbar button{width:34px;height:34px;border:0;background:transparent;color:var(--hh-text);font-size:18px}.zoom-toolbar span{font-size:10px;font-family:var(--hh-font-mono);padding-inline:5px}.zoom-toolbar button:last-child{border-left:1px solid var(--hh-border)}.drawing-legend{display:flex;flex-wrap:wrap;gap:12px;padding:15px;font-size:10px;color:var(--hh-muted)}.drawing-legend span{display:flex;gap:5px;align-items:center}.swatch{display:inline-block;width:10px;height:10px;border:1px solid #7ea5b9;border-radius:2px;background:var(--drawing-full)}.swatch.cut{background:var(--drawing-cut);border-color:#bca873}.swatch.narrow{background:var(--drawing-narrow);border-color:#c86570}.swatch.step{background:#c19aef55;border-color:#9971cc}.layer-toggles{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--hh-border);padding:11px 15px;font-size:10px}.layer-toggles>span{color:var(--hh-muted);margin-right:3px}.layer-toggles label{display:flex;align-items:center;gap:4px;min-height:32px}.drawing-footnote{padding:10px 16px;font-size:10px;background:var(--hh-bg);color:var(--hh-muted);border-top:1px solid var(--hh-border)}.layout-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.layout-stats>div{background:var(--hh-surface);border:1px solid var(--hh-border);border-radius:9px;padding:14px;min-width:0}.layout-stats span{font-size:10px;color:var(--hh-muted);display:block;margin-bottom:6px}.layout-stats strong{font-size:23px;letter-spacing:-.03em}.layout-stats small{font-size:11px;font-weight:400;color:var(--hh-muted)}.technical-note{display:flex;gap:12px;padding:18px!important}.note-icon{color:var(--hh-primary);font-size:19px}.technical-note h3{font-size:12px;margin-bottom:6px}.technical-note p{font-size:11px;color:var(--hh-muted);line-height:1.7;margin-bottom:8px}.technical-note p:last-child{margin-bottom:0}.boq-badge{font-size:9px;border:1px solid var(--hh-border);padding:2px 5px;border-radius:4px;color:var(--hh-muted)}.boq-summary{padding:20px;background:var(--hh-soft)}.boq-summary>span{display:block;font-size:11px;color:var(--hh-muted)}.boq-summary strong{display:block;font-size:34px;color:var(--hh-primary);line-height:1.5;letter-spacing:-1px;font-variant-numeric:tabular-nums}.boq-summary strong small{font-size:15px;letter-spacing:0;font-weight:400}.boq-summary .summary-meta{font-size:9px;display:flex;justify-content:space-between;gap:5px}.summary-meta b{color:var(--hh-primary);white-space:nowrap}.boq-list{padding:3px 18px}.material-row{display:flex;gap:10px;border-bottom:1px solid var(--hh-border);padding:14px 0;align-items:flex-start}.material-row:last-child{border:0}.material-icon{color:var(--hh-muted);font-size:20px;width:24px;height:29px;flex-shrink:0;background:var(--hh-bg);border:1px solid var(--hh-border);border-radius:5px;display:grid;place-items:center;line-height:1}.material-info{flex:1;min-width:0}.material-info strong{font-size:11px;line-height:1.5;display:block;font-weight:600}.material-info small{display:block;color:var(--hh-muted);font-size:10px;margin-top:3px}.material-qty{min-width:30px;text-align:right}.material-qty b{font-size:17px;display:block;line-height:1.3;font-variant-numeric:tabular-nums}.material-qty small{font-size:9px;color:var(--hh-muted)}.cost-section{padding:18px;border-top:1px solid var(--hh-border);background:var(--hh-bg)}.cost-heading{display:flex;justify-content:space-between;align-items:center}.cost-heading h3{font-size:13px;margin:0}.cost-heading>span{font-size:9px;color:var(--hh-muted)}details{margin-top:12px}summary{cursor:pointer;font-size:11px;color:var(--hh-primary);min-height:38px;list-style-position:inside}summary span{float:right}.price-list{padding-block:10px}.price-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:10px;margin-bottom:10px}.price-row>span{flex:1}.price-row small{display:block;color:var(--hh-muted);font-size:9px}.price-row input{min-width:0;width:100px;padding:8px 7px;border:1px solid var(--hh-border);border-radius:5px;min-height:40px;background:var(--hh-surface);color:var(--hh-text);text-align:right}.cost-total{border-top:1px dashed var(--hh-border);padding-top:14px}.cost-total>span{font-size:11px}.cost-total strong{display:block;font-size:27px;color:var(--hh-primary);font-variant-numeric:tabular-nums}.cost-total strong small{font-size:18px}.cost-total>small{font-size:10px;color:var(--hh-muted)}.print-button{width:100%;font-size:12px;margin-top:14px;background:var(--hh-surface)}.save-status{font-size:12px;color:var(--hh-muted);margin:20px 0 0}.empty-drawing{min-height:320px;display:grid;place-items:center;padding:30px;text-align:center;font-size:14px;color:var(--hh-muted)}button:disabled{opacity:.45;cursor:not-allowed}.hh-footer-inner{font-size:11px}.hh-brand-text small{font-size:10px}@media(min-width:1600px){.blueprint{min-height:400px}}@media(max-width:1250px){.hh-container{width:calc(100% - 36px)}.calculator-layout{grid-template-columns:270px minmax(0,1fr);gap:16px}.boq{grid-column:1/-1}.boq-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.boq-summary{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.cost-section{max-width:none}.price-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.mode-tabs>button{padding-inline:18px}.project-name input{width:180px}}@media(max-width:900px){.product-heading h1{font-size:28px}.project-bar{align-items:stretch;flex-direction:column;gap:10px}.project-actions{justify-content:space-between}.mode-tabs>button{flex:1;padding-inline:12px}.tab-icon{display:none}.blueprint{min-height:280px}.layer-toggles{gap:8px}.layout-stats{gap:6px}.layout-stats>div{padding:10px}}@media(max-width:767px){.hh-container{width:calc(100% - 28px)}.hh-header-inner{flex-direction:row;align-items:center;padding-block:12px}.hh-brand-text strong{font-size:16px}.hh-brand-text small{font-size:11px;letter-spacing:0}.hh-header-actions{gap:4px}.hh-theme-toggle .hh-icon-button{min-width:36px}.hh-header-actions .hh-btn{font-size:13px;min-height:44px;padding-inline:8px}.hh-brand{gap:8px}.hh-brand-mark{width:36px;height:36px}.hh-header-actions .hh-theme-toggle .hh-icon-button{display:none}.hh-header-actions .hh-theme-toggle .hh-icon-button[aria-pressed=false]{display:grid}.product-heading{align-items:flex-start;gap:8px}.product-heading h1{font-size:28px;line-height:1.2;letter-spacing:-.7px}.product-heading p{font-size:16px}.subtitle-dot,.preview-badge{display:none}.hh-eyebrow{font-size:11px}.hh-main{padding-top:22px}.calculator-layout{grid-template-columns:1fr}.boq{grid-column:auto}.project-name input{font-size:17px;width:100%}.project-actions{flex-wrap:wrap;gap:8px}.project-actions .hh-btn{font-size:15px;flex:1;min-height:44px;white-space:nowrap}.segmented button{min-height:38px;font-size:13px}.project-actions>.segmented{width:100%}.project-actions>.segmented button{flex:1;font-size:15px}.mode-tabs{gap:0}.mode-tabs>button{font-size:15px;padding:10px 6px;justify-content:center;min-height:64px;text-align:center;line-height:1.4}.mode-tabs small{display:none}.panel-heading h2{font-size:18px!important}.panel-heading{padding:16px}.text-button{font-size:14px;min-height:44px}.input-content{padding:18px}.input-content h3{font-size:18px}.hh-field{font-size:15px;line-height:1.5}.hh-field input,.hh-field select{font-size:17px;min-height:46px}.unit{font-size:13px;top:40px}.two-fields{gap:14px}.ceiling-types button{font-size:14px;min-height:80px}.hh-caption,.info-box,.warning-box{font-size:14px}.check-row{font-size:15px}.add-opening{font-size:15px;min-height:46px}.opening-top select{font-size:16px;min-height:46px}.drawing-bar{flex-wrap:wrap}.drawing-bar .segmented button{font-size:14px;min-height:44px}.drawing-bar>span{font-size:11px}.drawing-surface{margin:0 8px}.blueprint{min-height:300px}.zoom-toolbar button{min-height:44px;min-width:44px}.zoom-toolbar span{font-size:12px}.drawing-legend{font-size:13px;gap:10px 14px}.layer-toggles{font-size:14px;padding:10px 14px;gap:6px 14px}.layer-toggles>span{width:100%}.layer-toggles label{min-height:44px}.layer-toggles input{width:18px;height:18px}.drawing-footnote{font-size:13px}.layout-stats{gap:8px}.layout-stats span{font-size:13px}.layout-stats strong{font-size:26px;line-height:1.4}.layout-stats small{font-size:12px}.technical-note h3{font-size:18px}.technical-note p{font-size:14px}.live-dot{font-size:12px}.boq-summary>span{font-size:15px}.boq-summary .summary-meta{font-size:13px}.boq-summary strong{font-size:34px}.boq-list{display:block}.material-info strong{font-size:15px}.material-info small{font-size:13px}.material-qty b{font-size:22px}.material-qty small{font-size:13px}.material-row{padding:16px 0}.material-icon{width:30px;height:34px}.cost-heading h3{font-size:18px}.cost-heading>span{font-size:13px}summary{font-size:15px;min-height:44px}.price-list{display:block}.price-row{font-size:15px}.price-row small{font-size:13px}.price-row input{font-size:17px;min-height:46px;width:120px}.cost-total>span{font-size:15px}.cost-total>small{font-size:14px}.cost-total strong{font-size:32px}.print-button{font-size:15px;min-height:46px}.save-status{font-size:14px}.hh-footer-inner{font-size:13px}.opening-card .hh-field{font-size:14px}.opening-card .two-fields{gap:10px}.opening-card .hh-field input{padding-right:8px}}@media(max-width:360px){.hh-brand-text strong{font-size:14px}.hh-brand-text small{font-size:10px}.hh-header-actions .hh-btn{padding-inline:6px;font-size:12px}.hh-container{width:calc(100% - 24px)}.mode-tabs>button{font-size:15px}.ceiling-types button{font-size:13px}.layout-stats{grid-template-columns:1fr}.layout-stats>div{display:flex;justify-content:space-between;align-items:center}.layout-stats span{margin:0}.project-actions .hh-btn{padding-inline:9px}.layer-toggles{gap:4px 9px}}@media print{html:root{color-scheme:light;--hh-bg:#fff;--hh-surface:#fff;--hh-text:#152b42;--hh-muted:#56687a;--hh-border:#dce4ee;--hh-soft:#edf3fb;--hh-primary:#185ac3;--drawing-room:#fff;--drawing-full:#dfeef4;--drawing-cut:#f6ecd3;--drawing-narrow:#f8d8d9;--drawing-line:#486780;--drawing-ink:#365c72}.hh-header,.project-actions,.mode-tabs,.inputs,.zoom-toolbar,.layer-toggles,.drawing-footnote,.save-status,.cost-section details,.print-button{display:none!important}.hh-container{width:100%}.calculator-layout{display:block}.blueprint-column,.boq{margin-bottom:20px;break-inside:avoid}.boq-list{display:grid;grid-template-columns:1fr 1fr}.hh-card{box-shadow:none}.project-bar{border:0;padding:0}.blueprint{max-height:400px}.hh-main{padding:0}.hh-footer{background:#fff}.material-info strong{font-size:12px}.material-info small,.material-qty small{font-size:10px}}.section-drawing .section-structure{stroke:var(--hh-muted)}.section-drawing .section-dimensions{stroke:var(--drawing-ink)}.section-drawing .section-hanger{stroke:#a380d6;fill:#a380d6}.section-drawing .section-frame{stroke:#5374d2}.section-drawing .section-level-label{font-weight:650;font-size:13px}.section-drawing .section-caption{fill:var(--hh-muted);font-size:11px}.section-drawing .section-led-label{fill:var(--drawing-ink);font-size:12px}.frame-reference{background:var(--hh-soft);border:1px solid var(--hh-border);border-radius:7px;padding:10px;margin:12px 0;font-size:11px;color:var(--hh-muted)}.frame-reference p{margin:0 0 7px}.frame-reference p:last-child{margin-bottom:0}.frame-reference-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px}.frame-reference-actions a{font-size:11px}.frame-reference-actions .text-button{font-size:11px;padding:0}.frame-edge-settings summary{list-style-position:inside;white-space:normal}.frame-edge-settings .two-fields{margin-bottom:12px}.frame-issues p{margin-top:6px}.framing-settings>h3:first-child{margin-top:22px}@media(max-width:767px){.frame-reference,.frame-reference-actions a,.frame-reference-actions .text-button{font-size:14px}.frame-reference-actions .text-button{min-height:44px}.frame-edge-settings summary{font-size:15px}}.swatch.joint{background:#2a988d22;border-color:#2a988d}.frame-print-summary{display:none}@media print{.frame-print-summary{display:block}.framing-settings{display:none}}.board-piece{cursor:pointer}.board-piece:focus{outline:none}.board-piece:focus-visible path,.board-piece[aria-pressed=true] path{stroke:var(--hh-primary);stroke-width:2.5px}.selected-board-outline{fill:none;stroke:var(--hh-primary);stroke-width:3px}.selected-fascia-line{stroke:var(--hh-primary);stroke-width:5;stroke-linecap:round}.cut-hint{font-size:12px;padding:12px 16px;color:var(--hh-muted);border-bottom:1px solid var(--hh-border)}.cut-inspector{margin:12px;border:1px solid var(--hh-border);border-radius:8px;background:var(--hh-soft);padding:12px;break-inside:avoid}.cut-inspector-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.cut-inspector-heading strong{font-size:15px}.cut-inspector-heading span{display:block;font-size:11px;color:var(--hh-muted)}.cut-inspector-heading .hh-icon-button{min-height:44px;min-width:44px}.cut-inspector-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:10px}.cut-piece-preview{display:block;width:100%;max-height:190px;overflow:visible}.cut-preview-label{font-size:9px;fill:var(--hh-muted)}.cut-piece-data>strong{font-size:18px;display:block;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.cut-piece-data strong small{font-size:12px}.cut-piece-data p{font-size:11px;line-height:1.6;color:var(--hh-muted);margin:7px 0}.cut-piece-data .hh-error{color:var(--hh-danger)}.cut-hole-details{padding-top:10px;border-top:1px solid var(--hh-border);font-size:11px}.cut-hole-details p{margin:5px 0;color:var(--hh-muted)}.cut-list{margin:16px 0}.cut-list-heading{gap:6px}.cut-list-heading h2{min-width:0}.cut-list-toggle{display:flex;gap:7px;align-items:center;min-height:44px;text-align:left;font-size:14px;font-weight:650;color:var(--hh-text);border:0;background:transparent;padding:0;line-height:1.4}.cut-list-heading .cut-csv-button{font-size:12px;flex:none;padding-inline:10px}.cut-list-body{padding:14px}.cut-list-note{color:var(--hh-muted);font-size:11px;line-height:1.65;margin:0 0 12px}.cut-table-scroll{max-width:100%;overflow-x:auto}.cut-table{width:100%;border-collapse:collapse;font-size:11px;table-layout:fixed}.cut-table th{text-align:left;color:var(--hh-muted);font-size:10px;font-weight:500;padding:8px 5px;border-bottom:1px solid var(--hh-border)}.cut-table th:nth-child(1){width:34%}.cut-table th:nth-child(2){width:28%}.cut-table th:nth-child(3){width:10%}.cut-table th:nth-child(4){width:28%}.cut-table td{vertical-align:top;border-bottom:1px solid var(--hh-border);padding:12px 5px;overflow-wrap:anywhere}.cut-table tr:last-child td{border-bottom:0}.cut-table tr[data-selected=true]{background:var(--hh-soft)}.cut-table td>small{display:block;color:var(--hh-muted);font-size:10px;margin-top:3px}.cut-table .cut-size{font-variant-numeric:tabular-nums;font-weight:600}.cut-table .cut-quantity{font-variant-numeric:tabular-nums;font-weight:650}.cut-code-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.cut-code-list button{font-size:11px;border-radius:5px;min-width:44px;min-height:44px;padding:3px 6px;color:var(--hh-primary);background:var(--hh-soft);border:1px solid var(--hh-border);font-family:var(--hh-font-mono)}.cut-code-list button[aria-pressed=true]{background:var(--hh-primary);color:var(--hh-button-foreground)}.cut-code-details summary{font-size:11px;min-height:44px;padding-top:10px;overflow-wrap:anywhere}.cut-list-body[hidden]{display:none}@media(max-width:767px){.cut-hint{font-size:14px}.cut-inspector-heading strong{font-size:18px}.cut-inspector-heading span{font-size:14px}.cut-inspector-content{grid-template-columns:1fr}.cut-piece-preview{max-height:220px}.cut-piece-data>strong{font-size:24px}.cut-piece-data p,.cut-hole-details{font-size:14px}.cut-piece-data .text-button{font-size:15px}.cut-list-toggle{font-size:17px}.cut-list-note{font-size:14px}.cut-list-heading .cut-csv-button{font-size:14px;min-height:44px}.cut-table{font-size:14px;table-layout:auto}.cut-table th{font-size:12px}.cut-table th:nth-child(1){width:30%}.cut-table th:nth-child(2){width:30%}.cut-table th:nth-child(3){width:10%}.cut-table th:nth-child(4){width:30%}.cut-table td{padding:12px 4px}.cut-table td>small{font-size:12px}.cut-code-list button,.cut-code-details summary{font-size:13px}.cut-list-body{padding:12px}}@media(max-width:430px){.cut-list-heading{align-items:flex-start}.cut-list-toggle{font-size:16px;flex-wrap:wrap}.cut-list-heading .cut-csv-button{padding-inline:7px;font-size:13px}.cut-table th:nth-child(4),.cut-table td:nth-child(4){display:none}.cut-table th:nth-child(1){width:42%}.cut-table th:nth-child(2){width:43%}.cut-table th:nth-child(3){width:15%}.cut-table .cut-size{font-size:14px}}@media print{.cut-list-body[hidden]{display:block!important}.cut-list{break-inside:auto}.cut-list-heading .cut-csv-button,.cut-inspector button,.cut-hint{display:none!important}.cut-code-list button{min-height:0;min-width:0;border:0;background:none!important;color:#152b42!important;font-size:10px;padding:2px}.cut-code-details>div{display:flex!important}.cut-code-details::details-content{content-visibility:visible}.cut-table tr{break-inside:avoid}.cut-table th:nth-child(4),.cut-table td:nth-child(4){display:table-cell}.selected-board-outline,.selected-fascia-line{stroke:#185ac3}}.cut-table td>.cut-mobile-detail{display:none}@media(max-width:430px){.cut-table td>.cut-mobile-detail{display:block}}:root{color-scheme:light;--hh-bg: #f6f8fc;--hh-surface: #ffffff;--hh-text: #152b42;--hh-muted: #56687a;--hh-border: #dce4ee;--hh-navy: #102d43;--hh-primary: #185ac3;--hh-soft: #edf3fb;--hh-gold: #f8c154;--hh-shadow: 0 8px 30px #12345808;--hh-danger: #b91c1c;--hh-focus: #185ac3;--hh-button-foreground: #ffffff;--hh-font: Inter, "Segoe UI", Arial, sans-serif;--hh-font-mono: Consolas, "SFMono-Regular", monospace;--hh-radius-sm: 7px;--hh-radius-button: 8px;--hh-radius-card: 12px;--hh-radius-feature: 16px;--hh-content-width: 1200px;--hh-space-1: 4px;--hh-space-2: 8px;--hh-space-3: 12px;--hh-space-4: 16px;--hh-space-5: 20px;--hh-space-6: 24px;--hh-space-8: 32px}:root[data-theme=dark]{color-scheme:dark;--hh-bg: #0c1724;--hh-surface: #142337;--hh-text: #eff5ff;--hh-muted: #acbfd5;--hh-border: #30445d;--hh-navy: #0b1928;--hh-primary: #8fbbff;--hh-soft: #1b3049;--hh-shadow: none;--hh-danger: #fda4af;--hh-focus: #8fbbff;--hh-button-foreground: #102b43}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){color-scheme:dark;--hh-bg: #0c1724;--hh-surface: #142337;--hh-text: #eff5ff;--hh-muted: #acbfd5;--hh-border: #30445d;--hh-navy: #0b1928;--hh-primary: #8fbbff;--hh-soft: #1b3049;--hh-shadow: none;--hh-danger: #fda4af;--hh-focus: #8fbbff;--hh-button-foreground: #102b43}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{margin:0;min-width:280px;background:var(--hh-bg);color:var(--hh-text);font-family:var(--hh-font);font-size:1rem;line-height:1.6}a{color:var(--hh-primary);text-underline-offset:3px}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--hh-focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.02em;line-height:1.25}h1{font-size:clamp(1.85rem,2.8vw,2.4rem)}h2{font-size:clamp(1.25rem,2vw,1.5rem)}h3{font-size:1.2rem}.hh-container{width:min(var(--hh-content-width),calc(100% - 32px));margin-inline:auto}.hh-skip{position:fixed;inset:-100px auto auto 12px;padding:10px 14px;border-radius:6px;background:var(--hh-gold);color:#102d43;z-index:1000}.hh-skip:focus{top:12px}.hh-header{background:var(--hh-surface);border-bottom:1px solid var(--hh-border)}.hh-header-inner{display:flex;gap:16px;min-height:78px;justify-content:space-between;align-items:center}.hh-brand{display:flex;align-items:center;gap:12px;min-width:0;color:inherit;text-decoration:none;border-radius:10px}.hh-brand:hover .hh-brand-text strong{color:var(--hh-primary)}.hh-brand-mark{display:grid;place-items:center;position:relative;width:40px;height:40px;flex:none;border-radius:10px;background:var(--hh-text);color:var(--hh-surface);font-size:.85rem;font-weight:750}.hh-brand-mark:after{content:"";position:absolute;width:8px;height:8px;top:4px;right:4px;border-radius:2px;background:var(--hh-gold)}.hh-brand-text{display:flex;flex-direction:column;min-width:0}.hh-brand-text strong{line-height:1.2;font-size:1.1rem}.hh-brand-text small{color:var(--hh-muted);font-size:.75rem;margin-top:3px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hh-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.hh-theme-toggle{display:flex;gap:2px;align-items:center}.hh-icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid transparent;border-radius:var(--hh-radius-button);background:transparent;color:var(--hh-muted);font-size:1.2rem}.hh-icon-button:hover,.hh-icon-button[aria-pressed=true]{background:var(--hh-soft);border-color:var(--hh-border);color:var(--hh-primary)}.hh-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--hh-border);border-radius:var(--hh-radius-button);padding:8px 15px;background:var(--hh-surface);color:var(--hh-text);font-size:.9375rem;font-weight:650;text-decoration:none}.hh-btn:hover{filter:brightness(.97)}.hh-btn-primary{background:var(--hh-primary);border-color:var(--hh-primary);color:var(--hh-button-foreground)}.hh-btn-muted{background:var(--hh-bg)}.hh-main{min-height:min(70vh,720px);padding-top:28px;padding-bottom:40px}.hh-hero{margin:0 0 26px}.hh-eyebrow{text-transform:uppercase;color:var(--hh-primary);font-weight:700;font-size:.75rem;letter-spacing:.12em}.hh-hero h1{margin:8px 0 12px}.hh-hero p{max-width:740px;color:var(--hh-muted);margin:0}.hh-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:18px}.hh-card{min-width:0;border-radius:var(--hh-radius-card);background:var(--hh-surface);border:1px solid var(--hh-border);padding:24px;box-shadow:var(--hh-shadow)}.hh-card h2{margin:0 0 12px}.hh-muted{color:var(--hh-muted)}.hh-caption{font-size:.875rem;color:var(--hh-muted)}.hh-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.hh-field{display:flex;flex-direction:column;gap:6px;font-weight:650;font-size:.9rem}.hh-field input{width:100%;min-width:0;min-height:46px;border:1px solid var(--hh-border);background:var(--hh-bg);border-radius:var(--hh-radius-sm);padding:10px 12px;color:var(--hh-text)}.hh-field input:focus{border-color:var(--hh-primary)}.hh-actions{display:flex;gap:12px;margin-top:18px}.hh-result{background:var(--hh-soft)}.hh-result-label{color:var(--hh-muted);font-size:.9rem;font-weight:600;margin-top:20px}.hh-result-number{font-family:var(--hh-font-mono);font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.25;overflow-wrap:anywhere;color:var(--hh-primary);margin:10px 0 24px}.hh-result-number span{font-family:var(--hh-font);font-size:1.2rem}.hh-error{color:var(--hh-danger);font-weight:600;font-size:.875rem}.hh-guide{margin-top:20px;padding:4px 0;max-width:820px}.hh-guide h2{margin-bottom:8px}.hh-guide p{margin-bottom:10px}.hh-footer{background:var(--hh-surface);border-top:1px solid var(--hh-border);color:var(--hh-muted);font-size:.85rem}.hh-footer-inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-block:22px}@media(max-width:800px){.hh-workspace{grid-template-columns:1fr}}@media(max-width:640px){.hh-header-inner{padding-block:12px;align-items:stretch;flex-direction:column;min-height:0}.hh-brand-text strong{font-size:1.05rem}.hh-header-actions{justify-content:space-between;gap:6px}.hh-main{padding-top:24px}.hh-card{padding:18px}.hh-field-grid{grid-template-columns:1fr;gap:12px}.hh-footer-inner{flex-direction:column;gap:8px}}@media(min-width:361px)and (max-width:640px){.hh-header-actions{justify-content:flex-end;gap:6px}.hh-lang{font-size:.84rem;padding-inline:10px}}@media(max-width:360px){.hh-brand-mark{width:34px;height:34px;border-radius:8px}.hh-lang{padding-inline:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:767px){body{font-size:16px;line-height:1.6}h1,.hh-hero h1{font-size:clamp(28px,6vw,32px);line-height:1.2}h2,.hh-card h2{font-size:21px;line-height:1.3}h3{font-size:18px}.hh-hero p,.hh-guide p{font-size:16px}.hh-field,.hh-result-label{font-size:15px;line-height:1.5}.hh-field input,select,textarea{font-size:17px;min-height:46px}.hh-btn{font-size:15px;min-height:44px}.hh-caption{font-size:14px;line-height:1.6}.hh-eyebrow,.hh-brand-text small{font-size:13px;letter-spacing:.08em}.hh-card,.hh-field-grid>*{min-width:0}}.hh-header{position:sticky;top:0;z-index:50}.hh-eco-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--hh-primary);border-radius:8px;background:var(--hh-soft);color:var(--hh-primary);font:700 15px/1.3 var(--hh-font);cursor:pointer;white-space:nowrap}.hh-eco-trigger:hover,.hh-eco-trigger[aria-expanded=true]{background:var(--hh-primary);color:var(--hh-button-foreground)}.hh-eco-trigger svg{width:18px;height:18px;flex:none}.hh-eco-chevron{font-size:12px}.hh-eco-panel{box-sizing:border-box;position:fixed;z-index:100;width:min(600px,calc(100vw - 32px));padding:18px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--hh-border);border-radius:14px;background:var(--hh-surface);color:var(--hh-text);box-shadow:0 18px 60px #06192b40;font-family:var(--hh-font)}.hh-eco-panel-title{display:flex;flex-wrap:wrap;gap:4px;align-items:baseline;margin-bottom:14px;font-size:18px;font-weight:800}.hh-eco-panel-title>span{color:var(--hh-primary)}.hh-eco-panel-title>small{flex-basis:100%;margin-top:4px;color:var(--hh-muted);font-size:13px;font-weight:500}.hh-eco-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hh-eco-tool{display:flex;align-items:flex-start;gap:10px;padding:12px;min-height:80px;box-sizing:border-box;border:1px solid var(--hh-border);border-radius:9px;color:var(--hh-text);background:var(--hh-bg);text-decoration:none}.hh-eco-tool:hover,.hh-eco-tool[aria-current=page]{border-color:var(--hh-primary);background:var(--hh-soft)}.hh-eco-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:8px;color:var(--hh-primary);background:var(--hh-soft)}.hh-eco-tool-copy{display:flex;align-items:flex-start;flex-direction:column;min-width:0}.hh-eco-tool strong{display:block;font-size:15px;line-height:1.4;font-weight:700;overflow-wrap:anywhere}.hh-eco-tool small{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:var(--hh-muted)}.hh-eco-current{display:inline-block;margin-top:8px;padding:3px 7px;border-radius:5px;background:var(--hh-primary);color:var(--hh-button-foreground);font-size:12px;line-height:1.5;font-weight:700}.hh-eco-explore{display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;min-height:44px;margin-top:14px;padding:12px;border-radius:8px;color:var(--hh-primary);background:var(--hh-soft);font-size:14px;font-weight:700;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}.hh-eco-panel a:focus-visible,.hh-eco-trigger:focus-visible{outline:3px solid var(--hh-focus);outline-offset:3px}.hh-eco-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:430px){.hh-eco-trigger{gap:6px;padding-inline:8px}.hh-eco-panel{padding:12px}.hh-eco-grid{gap:8px}.hh-eco-tool{flex-direction:column;gap:8px;padding:10px}.hh-eco-tool strong{font-size:15px}}@media print{.hh-eco-switcher,.hh-eco-panel{display:none!important}}.hh-eco-panel{display:flex;flex-direction:column;overflow:hidden}.hh-eco-panel-title,.hh-eco-explore{flex-shrink:0}.hh-eco-grid{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:3px;margin:-3px}.hh-eco-grid{grid-auto-rows:max-content;align-content:start}header.hh-eco-host{position:sticky;top:0;z-index:50;height:auto}.hh-eco-host.hh-eco-header-row,.hh-eco-host .hh-eco-header-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:12px 16px}.hh-eco-host .hh-eco-switcher{min-width:0}.hh-eco-host .hh-eco-actions{display:flex;flex-wrap:nowrap;align-items:center;width:auto;margin:0;gap:6px;justify-self:end;justify-content:flex-end}.hh-eco-host .hh-eco-actions .hh-eco-themes{display:flex;flex-wrap:nowrap;align-items:center;gap:2px}.hh-eco-host .hh-eco-actions .hh-eco-themes .hh-eco-theme{display:grid;place-items:center;box-sizing:border-box;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--hh-muted);font:400 20px/1 var(--hh-font)}.hh-eco-host .hh-eco-actions .hh-eco-themes .hh-eco-theme:hover,.hh-eco-host .hh-eco-actions .hh-eco-themes .hh-eco-theme[aria-pressed=true]{background:var(--hh-soft);border-color:var(--hh-border);color:var(--hh-primary)}.hh-eco-host .hh-eco-actions .hh-eco-theme svg{width:20px;height:20px;margin:0}.hh-eco-host .hh-eco-actions .hh-eco-language{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 68px;width:68px;min-width:68px;min-height:44px;padding:6px;border:1px solid var(--hh-border);border-radius:8px;background:var(--hh-bg);color:var(--hh-text);font:700 13px/1.3 var(--hh-font);white-space:nowrap}.hh-eco-host .hh-eco-actions button:focus-visible{outline:3px solid var(--hh-focus);outline-offset:2px}.hh-eco-host .hh-brand{min-width:0}.hh-eco-host .hh-eco-header-row>nav:not(.hh-eco-actions){grid-column:1 / -1;grid-row:2;width:100%;order:initial;justify-content:center}.hh-eco-host .hh-eco-loban-row{grid-template-columns:auto auto minmax(0,1fr) auto}.hh-eco-brand-row{display:contents}.hh-eco-host .hh-eco-loban-row .hh-brand{grid-column:1;grid-row:1}.hh-eco-brand-extras{display:flex;align-items:center;gap:4px;grid-column:4;grid-row:1}.hh-eco-host .hh-eco-loban-row>.hh-eco-switcher{grid-column:2;grid-row:1}.hh-eco-host .hh-eco-loban-row>.hh-eco-actions{grid-column:3;grid-row:1}@media(max-width:1000px){.hh-eco-host.hh-eco-header-row,.hh-eco-host .hh-eco-header-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding-block:12px}.hh-eco-host .hh-brand{grid-column:1 / -1;grid-row:1}.hh-eco-host .hh-eco-switcher,.hh-eco-host .hh-eco-loban-row>.hh-eco-switcher{grid-column:1;grid-row:2}.hh-eco-host .hh-eco-actions,.hh-eco-host .hh-eco-loban-row>.hh-eco-actions{grid-column:2;grid-row:2}.hh-eco-host .hh-eco-trigger{width:100%;max-width:160px;min-width:0;white-space:normal;padding:6px 8px;gap:6px}.hh-eco-host .hh-eco-trigger>span:not(.hh-eco-chevron){min-width:0}.hh-eco-host .hh-eco-header-row>nav:not(.hh-eco-actions){grid-row:3}.hh-eco-brand-row{display:flex;grid-column:1 / -1;grid-row:1;align-items:center;justify-content:space-between;gap:8px;min-width:0}.hh-eco-brand-extras{flex:none}.hh-eco-brand-extras .header-download,.hh-eco-brand-extras .help-button{display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0}.hh-eco-brand-extras span{display:none}}@media(max-width:340px){.hh-eco-host .hh-eco-actions{gap:2px}.hh-eco-host .hh-eco-actions .hh-eco-themes{gap:0}.hh-eco-host .hh-eco-actions .hh-eco-language{flex-basis:64px;width:64px;min-width:64px}.hh-eco-brand-row .hh-brand{gap:8px}.hh-eco-brand-row .hh-brand-text strong{font-size:15px}.hh-eco-brand-extras{gap:0}}
