.condition-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:10px;align-items:start}.condition-column{min-width:0}.condition-column h4{font-size:12px;padding:9px;margin:0 0 7px;background:#eaf0e5}.condition-column select{width:100%;min-width:0;border:1px solid #d9e0d3;border-radius:6px;padding:8px 4px;font-size:12px;background:white}.condition-option{display:flex;align-items:flex-start;gap:6px;font-size:11px;line-height:1.5;padding:8px 0;border-bottom:1px solid #e0e5db}.condition-option small{display:block;color:#7a856d;font-size:10px}.condition-option input{flex-shrink:0}.selected-condition{display:flex;align-items:center;gap:8px;border-top:1px solid #dfe4d9;padding:8px 0;font-size:11px}.selected-condition>span{flex:1}.selected-condition small{display:block;color:#7a856d}.selected-condition .source{font-size:10px;margin:0}.selected-condition button{border:0;background:transparent;font-size:19px;color:#6e7969}.compact-conditions>summary,.material-picker>summary{cursor:pointer;font-size:14px;font-weight:700}.compact-conditions>details{font-size:11px}.delete-work{font-size:11px;border:0;background:transparent;color:#956b56;white-space:nowrap;padding:7px 4px}.work-quantity{font-size:10px;max-width:95px}.editable-items{width:100%;table-layout:fixed}.editable-items th,.editable-items td{padding:8px 4px!important;font-size:11px!important;vertical-align:middle}.editable-items th:first-child{width:39%}.editable-items th:nth-child(2){width:26%}.editable-items th:nth-child(3){width:35%}.editable-items td:first-child label{display:flex;align-items:center;gap:4px;white-space:nowrap}.editable-items td:first-child span{white-space:nowrap;font-size:clamp(9px,2.35vw,12px);letter-spacing:-.5px}.editable-items input[type=checkbox]{width:14px;height:14px;flex-shrink:0;margin:0;accent-color:#345647}.coefficient-cell{display:flex;align-items:center;gap:3px}.editable-items input[type=number]{min-width:0;width:100%;border:1px solid #d9e0d3;border-radius:5px;padding:7px 3px;font-size:12px;color:#304c40}.coefficient-cell span{font-size:10px;white-space:nowrap}.editable-items .wage-period{display:block;font-size:9px;color:#8a927f;line-height:1.2;margin-top:3px}.tool-label{font-size:10px;white-space:nowrap}.editable-items td:last-child{white-space:nowrap}.coefficient-matrix td:first-child{white-space:nowrap}.coefficient-matrix td:first-child .result-tag{display:inline;margin-left:6px}.material-picker select{width:100%}.selected-conditions{background:#f5f7f0;padding:0 8px;border-radius:6px}.delete-work:hover{background:#f4e9e3;border-radius:5px}

.editable-items{min-width:340px}.editable-items .wage-period{display:inline;font-size:8px;margin-left:3px}.editable-items .price-input{max-width:100px}.editable-items td:last-child:has(.price-input){white-space:nowrap}

.coefficient-matrix .result-tag{display:none!important}.coefficient-matrix{min-width:360px}.editable-items .price-input{max-width:90px}.editable-items td:last-child{overflow:hidden;text-overflow:ellipsis}.wage-period{vertical-align:middle}
.editable-items .price-input{width:calc(100% - 48px)!important;min-width:52px!important;max-width:90px}.editable-items .wage-period{font-size:8px;letter-spacing:-.5px}

.header-confirm{display:inline-flex;align-items:center;gap:4px;font-size:10px;white-space:nowrap;color:#53664e;cursor:pointer;margin:0}.header-confirm input{width:15px;height:15px;accent-color:#345647;margin:0}.work-item>summary{gap:7px}.work-title{min-width:0}.work-quantity{white-space:nowrap}

.work-item>summary{display:block}.work-item>summary:before{display:none}.work-summary-row{display:flex;align-items:center;gap:8px}.work-summary-row:before{content:"▸";color:#53664e}.work-item[open]>.work-summary-row:before,.work-item[open]>summary .work-summary-row:before{content:"▾"}.header-fields{margin-top:12px;cursor:default}.header-fields .field{margin:0}.header-fields input,.header-fields select{background:white}.header-fields .field:only-child{max-width:none}.individual-conditions{grid-template-columns:1fr}.bulk-common{padding:12px;background:#f0f4eb;border:1px solid #d7dfd0;border-radius:12px;margin:12px 0}.bulk-common h3{font-size:14px;margin:0 0 10px}.bulk-common>select{width:100%;padding:10px;border:1px solid #d7dfd0;background:white;border-radius:6px}.bulk-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bulk-common .hint{font-size:10px;line-height:1.6}.header-fields .input-unit input{min-width:0}.work-summary-row .work-title{flex:1}

.work-summary-row{gap:6px}.work-summary-row .work-title{flex:1 1 95px;min-width:66px}.work-summary-row .work-title b{font-size:12px;line-height:1.4}.inline-code{font-size:10px;color:#7a856d;font-weight:500;white-space:nowrap}.work-summary-row .work-title small{font-size:9px;margin-top:2px}.work-item>summary{padding:9px 10px}.header-fields{display:flex!important;flex:0 1 205px;gap:6px;margin:0!important;min-width:0}.header-fields .field{min-width:0;flex:1;margin:0!important}.header-fields .field:first-child{flex:0 0 69px;max-width:69px!important}.header-fields .field:only-child{flex:0 0 69px}.header-fields:has(.field:only-child){flex:0 0 69px}.header-fields .input-unit{height:33px;padding:0 4px;border-radius:6px;min-width:0;display:flex;align-items:center;gap:2px}.header-fields .input-unit input{width:100%;min-width:0;font-size:12px!important;padding:5px 1px!important;line-height:1.2;font-weight:500}.header-fields .input-unit span{font-size:9px;min-width:0;white-space:nowrap;line-height:1.2}.header-fields select{width:100%;height:33px;min-width:0;font-size:10px!important;padding:5px!important;border-radius:6px}.header-confirm{flex:0 0 16px}.header-confirm input{width:16px;height:16px}.delete-work{padding:4px 1px;font-size:10px}.trade-group{border:1px solid #d5dece;border-radius:10px;margin:12px 0;background:#fafbf8;padding:0 8px 4px}.trade-group>summary{padding:11px 3px;cursor:pointer;font-size:14px;font-weight:700;color:#365442}.trade-group>.work-item{margin:6px 0}.work-summary-row:before{font-size:9px}.trade-group:not([open]){padding-bottom:0}@media(max-width:400px){.work-summary-row .work-title b{font-size:11px}.header-fields{flex-basis:155px}.header-fields .field:first-child{flex-basis:58px;max-width:58px!important}.header-fields .field:only-child,.header-fields:has(.field:only-child){flex-basis:58px}.work-summary-row{gap:4px}.work-item>summary{padding:8px}.trade-group{padding-left:5px;padding-right:5px}}

/* Keep the quantity column aligned even when the method cell is absent. */
.work-summary-row{display:grid;grid-template-columns:7px minmax(0,1fr) minmax(0,205px) 16px 24px;column-gap:6px;align-items:center}.work-summary-row .work-title{min-width:0;width:auto;overflow:hidden}.work-summary-row .work-title b{overflow-wrap:anywhere}.work-summary-row .header-fields{width:100%;min-width:0;max-width:none;margin:0!important;justify-self:stretch}.work-summary-row .header-confirm{margin:0;justify-self:center}.work-summary-row .delete-work{justify-self:end}.header-fields .input-unit{box-sizing:border-box;width:100%;overflow:hidden}.header-fields .input-unit input{flex:1 1 0;width:0!important;min-width:0;box-sizing:border-box}.header-fields .input-unit span{flex:0 0 auto;max-width:36px;white-space:nowrap}.header-fields select{box-sizing:border-box;max-width:100%}.header-fields .field:only-child{width:69px!important;max-width:69px!important;flex:0 0 69px!important}
@media(max-width:400px){.work-summary-row{grid-template-columns:6px minmax(0,1fr) minmax(0,155px) 16px 23px;column-gap:4px}.header-fields .field:only-child{width:58px!important;max-width:58px!important;flex-basis:58px!important}}@media(max-width:340px){.work-summary-row{grid-template-columns:5px minmax(0,1fr) minmax(0,137px) 15px 21px;column-gap:3px}.header-fields{gap:4px}.header-fields select{font-size:9px!important}}

.bulk-common{padding:8px 10px;margin:8px 0;border-radius:8px}.bulk-common>summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;list-style:none}.bulk-common>summary:before{content:'▸';color:#6c7e63}.bulk-common[open]>summary:before{content:'▾'}.common-brief{font-size:10px;color:#718067;line-height:1.5;flex:1;overflow-wrap:anywhere}.common-body{margin-top:8px}.common-body>select{width:100%;padding:7px;border:1px solid #d7dfd0;background:white;border-radius:5px;font-size:12px}.common-body .hint{margin:4px 0 0;font-size:9px}.common-body .condition-option{padding:5px 0}.common-body .selected-condition{padding:5px 0}.trade-group{margin:8px 0}.trade-group>summary{padding:8px 3px}.trade-group>.work-item{margin:5px 0}.calc-line{padding:8px!important}.calc-line .condition-picker,.calc-line .material-picker{margin:7px 0;padding:8px}.calc-line>.calc-conditions{margin:5px 0;padding:5px 0}.calc-line .resource-inputs{padding:6px 0}.editable-items td:first-child label{min-width:0}.editable-items td:first-child span{min-width:0;overflow:hidden;text-overflow:ellipsis}.editable-items td:first-child .long-item-name{white-space:normal;overflow-wrap:anywhere;font-size:9px;line-height:1.3}.calc-line .hint{margin:4px 0;font-size:10px}

/* Compact reference lists: one title row and one subtype control. */
.dense-work{padding:10px 11px;margin:6px 0;border-radius:9px}.dense-work .group-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,42%) 22px;gap:7px;align-items:center}.dense-work .group-heading:not(:has(.variant-nav)){grid-template-columns:minmax(0,1fr) 22px}.dense-work .group-title{display:flex;align-items:baseline;gap:6px;min-width:0}.dense-work .itemcode{font-size:10px;white-space:nowrap;flex-shrink:0}.dense-work h3{font-size:14px;line-height:1.4;margin:0;overflow-wrap:anywhere}.dense-work .variant-nav{margin:0;padding:2px;gap:1px;border-radius:6px;min-width:0}.dense-work .variant-nav .iconbtn{width:23px;height:30px}.dense-work .variant-nav .icon{width:14px;height:14px}.dense-work .variant-name{font-size:11px;line-height:1.35;min-width:0;padding:3px 1px;overflow-wrap:anywhere}.dense-work .choose-current{margin:0;justify-self:end}.dense-work input[type=checkbox]{margin:0;width:18px;height:18px}.chapter{padding:10px 11px;margin:5px 0;border-radius:8px;gap:9px}.chapter h3{font-size:14px}.chapter-num{font-size:15px;min-width:21px}.compact-work>.item{padding:9px 0}.compact-work .itemmeta{display:none}main:has(#searchInput),main:has(.chapter){padding-top:8px}main:has(#searchInput) .overline,main:has(.chapter) .overline{display:none}main:has(#searchInput) h2,main:has(.chapter) h2{font-size:20px;margin:0 0 9px}main:has(#searchInput) .tabs,main:has(.chapter) .tabs{margin:10px 0 8px}.searchbox{padding:9px 11px}.chips{margin:8px 0 5px}.chip{padding:5px 10px}.count{margin:8px 0 5px}.itemname{line-height:1.4}.mode-switch{margin-bottom:6px}

.dense-work{height:57px;box-sizing:border-box;display:flex;align-items:center}.dense-work .group-heading{width:100%}.dense-work h3{font-size:13px}.dense-work .variant-nav{height:32px;box-sizing:border-box}.editable-items{min-width:0!important;table-layout:fixed}.editable-items th:first-child{width:39%}.editable-items th:nth-child(2){width:21%}.editable-items th:nth-child(3){width:40%}.editable-items td,.editable-items th{padding:6px 3px!important}.editable-items td:first-child span{font-size:11px!important;letter-spacing:-.6px;white-space:nowrap!important}.editable-items .coefficient-cell{gap:2px}.editable-items .coefficient-cell input{padding:6px 2px;font-size:11px}.editable-items .coefficient-cell span{font-size:9px}.editable-items .price-input{width:calc(100% - 35px)!important;min-width:0!important;max-width:none;padding:6px 2px;font-size:11px}.editable-items .wage-period{display:inline-block;width:31px;margin-left:3px;font-size:9px;letter-spacing:-.6px;white-space:nowrap}.editable-items td:last-child{overflow:visible}.coefficient-matrix{min-width:0!important;width:100%;table-layout:fixed}.coefficient-matrix td,.coefficient-matrix th{padding:7px 3px;font-size:10px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;text-align:center}.coefficient-matrix td:first-child,.coefficient-matrix th:first-child{text-align:left;white-space:nowrap;font-size:10px;letter-spacing:-.6px;overflow:hidden;text-overflow:ellipsis}.coefficient-matrix .numeric{font-size:10px}
/* Align text and numeric values consistently across reference and calculation tables. */
table th,table td.text-cell{text-align:center!important}table td.number-cell{text-align:right!important}table input[type=number]{text-align:right!important}.editable-items td:first-child label{justify-content:center}.editable-items td:first-child span{text-align:center}.coefficient-cell input{min-width:0}.coefficient-cell>span{font-size:9px}.wage-period{white-space:normal!important;line-height:1.2!important;font-size:8px!important;vertical-align:middle}.compact-conditions{padding:6px 7px!important;margin:5px 0!important;border-radius:7px!important}.compact-conditions>summary{font-size:12px!important;line-height:1.4}.condition-columns{gap:6px;margin-top:6px}.condition-column h4{padding:5px;margin-bottom:4px;font-size:11px}.condition-column select,.common-body>select{height:30px;padding:4px 5px;font-size:11px;border-radius:5px}.condition-option{padding:5px 0;font-size:11px;line-height:1.4;gap:5px}.condition-option small{font-size:9px;line-height:1.4}.condition-option input{width:16px!important;height:16px!important;margin:1px 0}.selected-condition{padding:5px 0;font-size:11px}.compact-conditions>details{padding:6px 0}.compact-conditions .hint{font-size:9px;margin:4px 0;line-height:1.4}.bulk-common>summary{font-size:12px}.common-brief{font-size:10px}.bulk-options{gap:5px}.wage-evidence{font-size:10px;padding:6px 0}.wage-evidence>summary{font-size:10px}.wage-evidence>div{padding:5px 0;border-top:1px solid #e0e5db}.wage-evidence p{font-size:10px;margin:3px 0;line-height:1.5}.wage-evidence a{color:#42634d;font-size:10px}.bill-item .bill-pending{font-size:10px;margin:5px 0}.bill-resource-table td:first-child small{white-space:normal;display:block}

.editable-items .price-input{width:calc(100% - 40px)!important}.editable-items .wage-period{margin-left:1px;overflow-wrap:anywhere}.wage-evidence{overflow-wrap:anywhere}.editable-items .coefficient-cell input{flex:1 1 0;width:0}

.home-index>.searchbox{margin:0 0 12px}.home-index>h2{font-size:19px;margin:0 0 7px}.home-index>.tabs{margin:6px 0 8px}#info .dialog-head{margin-bottom:12px}#info h2{margin:0;font-size:19px}.related-links{display:grid;gap:8px}.related-links a{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--line);border-radius:8px;background:white;text-decoration:none;font-size:14px;color:var(--green)}.related-links a:hover{background:#edf2e8}.related-links a:focus-visible{outline:2px solid var(--green);outline-offset:2px}nav button{min-height:40px}

.coefficient-matrix.matrix-small th,.coefficient-matrix.matrix-small td{font-size:12px;padding:9px 6px;line-height:1.5}.coefficient-matrix.matrix-small td:first-child{font-size:12px;letter-spacing:-.4px}.coefficient-matrix.matrix-small th{font-size:11px}.student-view .choose-current,.student-view .compact-work>input{display:none!important}.student-view .dense-work .group-heading{grid-template-columns:minmax(0,1fr) minmax(0,42%)}.student-view .dense-work .group-heading:not(:has(.variant-nav)){grid-template-columns:1fr}.bid-panel{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;margin:8px 0;border:1px solid var(--line);background:#edf2e8;border-radius:8px;font-size:12px}.bid-panel>label:first-child{display:flex;gap:6px;align-items:center}.bid-panel input[type=checkbox]{width:17px;height:17px;margin:0}.bid-rate{display:flex;gap:4px;align-items:center}.bid-rate input{width:84px;padding:6px 4px;border:1px solid var(--line);border-radius:5px;font-size:13px;text-align:right}.bid-rate input:disabled{background:#e6e9e1;color:#89937e}.bid-applied{font-size:11px;margin:9px 0;color:#48643d}.bid-error{font-size:12px;color:#995344}.search-scope{display:flex;gap:4px;background:#e7ece1;padding:3px;border-radius:7px;margin:8px 0}.search-scope button{flex:1;padding:7px;font-size:12px;border-radius:5px}.search-scope button[aria-pressed=true]{background:white;color:var(--green);font-weight:700}.search-docs{margin:5px 0 8px}.resource-result,.spec-group{border:1px solid var(--line);border-radius:8px;background:white;margin:6px 0;padding:0 9px}.resource-result>summary,.spec-group>summary{padding:10px 0;font-size:13px}.resource-result small{font-size:10px;font-weight:400;color:#7d8975}.resource-work{display:flex;align-items:center;gap:6px;border-top:1px solid var(--line);padding:8px 0}.resource-work>button{flex:1;text-align:left;font-size:12px;line-height:1.5}.resource-work input{width:17px;height:17px}.spec-list-item{display:flex;align-items:center;gap:7px;width:100%;text-align:left;padding:9px 3px;border-top:1px solid #e7ebe2;font-size:12px;line-height:1.5}.spec-list-item>span{font-size:10px;color:#849077;min-width:24px}.spec-list-item>b{flex:1;font-weight:500}.spec-list-item .icon{width:13px;height:13px}.spec-stepper{display:flex;justify-content:space-between;margin:12px 0}.spec-stepper button{font-size:11px;color:#6f8065}.spec-text{padding:9px 0;border-bottom:1px solid #e2e7dc;font-size:13px;line-height:1.85}.spec-text>div{white-space:pre-line;overflow-wrap:anywhere}.spec-text figure{margin:14px 0;background:white;border:1px solid var(--line);border-radius:8px;padding:8px;text-align:center}.spec-text img{display:block;max-width:100%;width:auto;height:auto;margin:auto;object-fit:contain}.spec-text figure button{font-size:10px;color:#708164;padding:6px}.spec-original,.spec-original-button img{display:block;width:100%;height:auto;object-fit:contain}.spec-original-button{display:block;width:100%;padding:0;margin:9px 0}.spec-source-note{font-size:11px;color:#7b826d}.spec-children,.spec-originals{margin:9px 0}.spec-children>summary,.spec-originals>summary{font-size:12px}.spec-text:empty{display:none}

#info .dialog-head{justify-content:flex-end;margin-bottom:4px}#info .creator-credit{margin:12px 2px 0;color:#8b918b;font-size:11px;font-weight:400;text-align:left}
.access-admin-link{display:block;margin-top:12px;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:12px;color:var(--green);text-decoration:none;text-align:center}
.document-reference{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin:14px 0 0;padding:0;color:var(--muted);font-size:11px}.document-reference .source{font-size:11px;color:var(--muted)}
.spec-reference-group{padding:8px 0}.spec-reference-group>summary{font-size:12px;color:var(--green)}.spec-reference-group .spec-reference-group{margin-left:12px}.spec-reference-group>.spec-list-item{padding-left:12px}.spec-reference-open{font-size:11px;color:var(--muted);padding:8px 12px}

/* Reference navigation and narrow-screen tables. */
.reference-chapter{padding:0;margin:5px 0;border:1px solid #dce1d6;border-radius:10px;background:white;min-width:0;overflow:hidden}
.reference-chapter>summary{display:flex;align-items:center;gap:9px;padding:10px 11px;list-style:none;cursor:pointer;font-size:14px}
.reference-chapter>summary svg{margin-left:auto;width:16px;flex-shrink:0}.reference-chapter[open]>summary{background:#eef1e9}.reference-children{padding:4px 8px 8px}
.reference-entry{display:flex;align-items:center;gap:6px;min-height:48px;min-width:0;border-bottom:1px solid #e3e7df}.reference-entry:last-child{border-bottom:0}
.reference-title{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:10px 4px;text-align:left;background:none;border:0;color:inherit;font-size:13px}
.reference-title b{overflow-wrap:anywhere}.reference-title>.itemcode{flex-shrink:0;font-size:11px}.reference-title>svg{width:13px;flex-shrink:0;margin-left:auto}
.reference-variants{display:flex;align-items:center;max-width:43%;min-width:0;background:#f0f2eb;border-radius:7px}.reference-variants button{border:0;background:none;color:inherit;padding:5px;font-size:11px;min-width:0;overflow-wrap:anywhere}.reference-variants svg{width:12px}.reference-variants button:disabled{opacity:.3}
.reference-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:12px;line-height:1.65}.reference-table th,.reference-table td{padding:8px 6px;vertical-align:middle;white-space:normal!important;overflow-wrap:anywhere;word-break:normal;letter-spacing:normal!important;border-bottom:1px solid #e2e6dc}.reference-table th{text-align:center}.reference-table .text-cell{text-align:center}.reference-table .rate-cell,.reference-table .number-cell{text-align:right;font-variant-numeric:tabular-nums}.reference-table.cols-3 th:first-child{width:23%}.reference-table.cols-3 th:last-child{width:23%}.reference-table caption{text-align:left;background:#eff2e9;padding:8px;font-weight:600}.reference-wide-table{display:grid;gap:10px;margin:12px 0}.reference-wide-table th{width:32%}.original-table{max-width:100%;overflow:hidden}.reference-table td br{display:block}
.condition{white-space:pre-line!important;line-height:1.8!important;overflow-wrap:anywhere;margin:12px 0}.poom-original-images{margin:12px 0}.poom-original-images>summary{padding:10px;border:1px solid #dce1d6;border-radius:8px;font-size:13px}.poom-original-images>summary span{color:#89927d;font-size:11px}.diagram-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px;margin-top:8px}.diagram-preview{min-width:0;padding:6px;background:#fff;border:1px solid #e0e4da;border-radius:8px}.diagram-preview img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain}.diagram-preview span{display:block;font-size:11px;color:#738078;margin-top:4px}
.phone,main,#results,.condition,.tablewrap{min-width:0}img{max-width:100%}.coefficient-matrix th,.coefficient-matrix td{overflow-wrap:anywhere;white-space:normal}

.poom-figure-crop{position:relative;display:block!important;overflow:hidden;width:100%;margin:0!important;background:white}.poom-figure-crop img{position:absolute;max-width:none!important;max-height:none!important;height:auto!important;object-fit:initial!important}.inline-poom-figures{margin:14px 0}

/* Compact coefficient tables instead of stretching sparse columns. */
.tablewrap:has(>table.coefficient-matrix.matrix-small){max-width:480px;width:100%;margin:8px 0}
table.coefficient-matrix.matrix-small{width:100%;font-size:12px}
table.coefficient-matrix.matrix-small th,table.coefficient-matrix.matrix-small td{padding:6px 9px;line-height:1.5}
table.coefficient-matrix.matrix-small col:first-child{width:44%!important}
table.coefficient-matrix.matrix-small col:nth-child(2){width:16%!important}
.tablewrap:has(>table.coefficient-matrix.matrix-small col:nth-child(4)){max-width:600px}
.tablewrap:has(>table.coefficient-matrix.matrix-small col:nth-child(4)) col:first-child{width:36%!important}
.tablewrap:has(>table.coefficient-matrix.matrix-small col:nth-child(4)) col:nth-child(2){width:12%!important}
.detailhead{margin-bottom:12px}.detailhead h2{margin-top:8px;margin-bottom:10px}.detailhead+.tabs{margin-top:10px}.item-stepper{margin:6px 0}

/* Preserve reference table columns and readable row-level relationships. */
.original-table{max-width:860px;width:100%;margin:12px 0}
.reference-table{font-size:12px;line-height:1.6}.reference-table th,.reference-table td{border-right:1px solid #e0e4da;letter-spacing:normal!important;word-spacing:normal!important;padding:7px 8px!important}
.reference-table th:last-child,.reference-table td:last-child{border-right:0}
.reference-table thead th{text-align:center!important;vertical-align:middle;font-weight:500}
.reference-table .cell-label{text-align:left!important;word-break:normal!important}
.reference-table .cell-center{text-align:center!important}
.reference-table .cell-note{text-align:left!important}
.reference-table .cell-number{text-align:right!important;font-variant-numeric:tabular-nums}
.reference-table.cols-3 th:first-child,.reference-table.cols-3 th:last-child{width:auto!important}
.reference-table.quantity-standard th{width:auto!important}
.detailhead h2{white-space:nowrap!important;overflow-wrap:normal!important;word-break:keep-all!important;max-width:100%;line-height:1.4}
@media(max-width:480px){.reference-table{font-size:11px}.reference-table th,.reference-table td{padding:6px 4px!important}.reference-table.cols-6,.reference-table.cols-7{font-size:10px}}

.rule-stepper{margin:9px 0}.rule-stepper button,.spec-stepper button{white-space:nowrap}.condition-illustrated{white-space:normal!important;margin:10px 0}.condition-paragraph{white-space:pre-line;margin:0 0 7px;line-height:1.8}
.inline-diagrams{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));align-items:start;gap:8px;max-width:640px;margin:10px 0 16px}.inline-diagrams .diagram-preview{align-self:start;width:100%;max-width:100%;padding:5px}.diagram-gallery{align-items:start}
.original-table:has(.quantity-standard){max-width:740px}.reference-table .cell-note{word-break:keep-all!important;overflow-wrap:anywhere;text-wrap:pretty}
.spec-body{max-width:900px;margin:12px 0;min-width:0}.spec-paragraph{margin:0 0 9px;line-height:1.85;white-space:pre-line;overflow-wrap:anywhere;font-size:13px}
.spec-table-wrap{width:100%;max-width:900px;margin:12px 0;overflow:visible}
.spec-reference-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:12px;line-height:1.6;background:white}
.spec-reference-table caption{text-align:left;padding:7px 3px;font-size:12px;font-weight:600}
.spec-reference-table th,.spec-reference-table td{padding:7px 5px;border:1px solid #dce1d6;white-space:normal!important;overflow-wrap:anywhere;word-break:normal;vertical-align:middle;letter-spacing:normal!important}
.spec-reference-table th{background:#eef1e8;text-align:center!important}.spec-reference-table .cell-label,.spec-reference-table .cell-note{text-align:left!important}.spec-reference-table .cell-center{text-align:center!important}.spec-reference-table .cell-number{text-align:right!important;font-variant-numeric:tabular-nums}.spec-reference-table img{display:block;width:auto;height:auto;max-width:100%;max-height:330px;object-fit:contain;margin:5px auto}
.spec-picture-group{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;max-width:900px;margin:10px 0 14px}.spec-picture-group figure{margin:0;max-width:100%;flex:0 1 420px}.spec-picture-group button{display:block;border:1px solid #e0e4da;border-radius:7px;padding:5px;background:white;max-width:100%}.spec-picture-group img{display:block;max-width:100%;height:auto;width:auto;max-height:420px;object-fit:contain}
@media(max-width:480px){.spec-reference-table{font-size:11px}.spec-reference-table th,.spec-reference-table td{padding:6px 3px}.spec-paragraph{font-size:12px}.spec-picture-group figure{flex-basis:100%}.inline-diagrams{grid-template-columns:1fr}}

.spec-reference-table.illustration-table{background:transparent}.illustration-table td{border-color:transparent;padding:4px!important;text-align:center!important}.illustration-table img{max-height:360px}.illustration-table caption{font-weight:500}

.spec-paragraph{word-break:keep-all;overflow-wrap:break-word}
.spec-reference-table .cell-label{word-break:keep-all;overflow-wrap:break-word}
.detailhead{position:relative;padding-right:42px}
.reference-save{position:absolute;right:0;top:0;border:0;background:transparent;color:#304d43;padding:8px;cursor:pointer}
.reference-save.active{background:transparent;color:#000}
.reference-save.active .icon,.reference-save.active .icon path{fill:#000;stroke:#000}
.saved-reference{display:flex;align-items:center;border-bottom:1px solid #dce1d6;padding:10px 0;gap:8px}
.saved-reference button{border:0;background:transparent;color:inherit;padding:8px;cursor:pointer}
.saved-reference button:first-child{flex:1;text-align:left;min-width:0}
.saved-reference small,.saved-reference strong{display:block}
.saved-reference small{font-size:11px;color:#7c8878;margin-bottom:5px}
.saved-reference strong{font-size:13px;font-weight:600;line-height:1.7;word-break:keep-all;overflow-wrap:break-word}
.saved-count{margin-left:5px;font-size:10px;font-variant-numeric:tabular-nums}
@media(max-width:480px){.spec-reference-table{font-size:12px}.spec-reference-table th{font-size:11px}}

.title-unit-line{display:flex;align-items:center;gap:12px;min-width:0}
.title-unit-line h2{flex:1;min-width:0;margin-bottom:8px}
.title-unit-line .badge{flex:none;margin:0 0 8px;white-space:nowrap;color:#778371;background:transparent;font-size:11px}
.condition-paragraph,.spec-paragraph{line-height:1.85;word-break:keep-all;overflow-wrap:break-word;text-align:left;margin:0 0 8px;white-space:normal}
.numbered-clause{padding-left:1.35em;text-indent:-1.35em}
.reference-equation{display:flex;align-items:center;gap:10px;margin:12px 0;max-width:100%;font-size:13px}
.stacked-fraction{display:inline-flex;flex-direction:column;text-align:center;max-width:85%}
.stacked-fraction>span{padding:3px 8px}.stacked-fraction>span:first-child{border-bottom:1px solid currentColor}
.inline-diagrams{display:flex;flex-wrap:wrap;justify-content:center;max-width:900px;gap:10px;align-items:flex-start}
.inline-diagrams .portrait-diagram{flex:0 1 calc(50% - 5px);width:calc(50% - 5px);max-width:260px}
.inline-diagrams .landscape-diagram{flex:0 1 100%;width:100%;max-width:640px}
.spec-reference-table .cell-center{text-align:center!important}

.spec-picture-group{justify-content:center}
.spec-picture-group .portrait-source-figure{flex:0 1 calc(50% - 5px);max-width:260px}
.spec-reference-table .portrait-source-image{max-width:min(100%,45vw)!important;width:auto!important;max-height:400px;object-fit:contain;margin:auto}

.coefficient-matrix th{vertical-align:middle!important;text-align:center!important;white-space:normal!important;font-size:12px!important;padding:8px 6px!important;line-height:1.5}
.coefficient-matrix td{vertical-align:middle!important;text-align:center!important;font-size:12px!important;padding:8px 6px!important}
.tablewrap:has(.coefficient-matrix){overflow-x:auto!important;max-width:100%;width:max-content;min-width:0;touch-action:pan-x}
.tablewrap:has(.coefficient-matrix:not(.matrix-small)){width:100%}
.chips{overflow-x:auto!important;white-space:nowrap;touch-action:pan-x;scrollbar-width:thin;cursor:grab;user-select:none;max-width:100%}
.chips .chip{flex:none}
.spec-tree-node{margin:6px 0;border:1px solid #dce1d6;border-radius:8px;background:white}
.spec-tree-node>summary{padding:12px 10px;cursor:pointer;list-style:disclosure-closed;display:list-item;line-height:1.6}
.spec-tree-node[open]>summary{list-style:disclosure-open}
.spec-tree-number{font-size:11px;color:#7a8973;margin-right:8px}
.spec-read{float:right;border:0;background:transparent;color:#60766b;font-size:11px;cursor:pointer;padding:3px 6px}
.spec-tree-children{padding:0 8px 6px 14px}
.spec-tree-children .spec-list-item{width:100%;text-align:left;min-width:0}
.spec-reference-table td{vertical-align:middle!important;text-align:center!important}
.spec-reference-table th{vertical-align:middle!important;text-align:center!important}
.spec-reference-table .cell-label{white-space:normal!important;word-break:keep-all}

.spec-reference-table td.cell-note,.spec-reference-table td.cell-label,.spec-reference-table td.cell-number{vertical-align:middle!important;text-align:center!important}

.tablewrap .coefficient-matrix{min-width:var(--matrix-min-width,0px)!important}.coefficient-matrix td.numeric{white-space:nowrap!important}

.tablewrap .coefficient-matrix{width:max(100%,var(--matrix-min-width,0px))!important;table-layout:fixed!important}.coefficient-matrix:not(.matrix-small) th,.coefficient-matrix:not(.matrix-small) td{width:auto!important}

.spec-list-item>.icon{display:none}

.spec-tree-node>summary{display:flex;align-items:center;gap:7px;min-height:40px;padding:9px 10px;list-style:none}
.spec-tree-node>summary::before{content:'▸';color:#566f61;font-size:11px;flex:none}
.spec-tree-node[open]>summary::before{content:'▾'}
.spec-tree-node>summary::marker{content:''}
.spec-tree-node>summary b,.spec-result-title{font-size:13px;font-weight:600;line-height:1.5;text-align:left;min-width:0}
.spec-result-title{border:0;background:transparent;color:inherit;padding:0;cursor:pointer}
.spec-tree-node>summary .spec-tree-number{margin-right:2px;flex:none}
.source-coefficients{max-width:760px;margin:6px 0}
.source-coefficients .spec-table-wrap{margin:6px 0;max-width:760px}
.source-coefficients table{font-size:12px;line-height:1.5}
.source-coefficients th,.source-coefficients td{padding:6px 5px!important}
.spec-reference-table td,.spec-reference-table th{word-break:keep-all!important;overflow-wrap:break-word!important;letter-spacing:normal!important}

.spec-reference-table caption{word-break:keep-all;overflow-wrap:break-word;line-height:1.6}
.spec-chapter>.reference-children>.spec-list-item{margin:6px 0;border:1px solid #dce1d6;border-radius:8px;background:white;padding:12px 10px;font-size:13px;min-height:40px}

/* One row model for branch and leaf entries at each depth. */
.spec-tree-node{border:0!important;border-radius:0!important;background:transparent!important;margin:0!important;padding:0!important}
.spec-tree-node>summary::before{content:none!important}
.spec-tree-node>summary::marker{content:''!important}
.spec-tree-node>summary.spec-tree-row,.spec-tree-row.spec-tree-leaf{display:grid!important;grid-template-columns:10px var(--spec-number-width,4ch) minmax(0,1fr);align-items:center;gap:8px;width:100%;box-sizing:border-box;min-height:42px;margin:0!important;padding:10px 2px!important;border:0;border-bottom:1px solid #e2e7dc;border-radius:0;background:transparent;color:inherit;text-align:left;line-height:1.6;cursor:pointer;list-style:none;font-size:12px;font-weight:500}
.spec-tree-marker{text-align:center;color:#7e8e80;font-size:16px;line-height:1}
.spec-tree-row .spec-tree-number{margin:0!important;min-width:0;font-size:10px;line-height:1.6;color:#849077;white-space:nowrap;font-weight:400}
.spec-tree-label{min-width:0;font-size:12px;font-weight:500;line-height:1.6;word-break:keep-all;overflow-wrap:break-word}
.spec-tree-label .spec-result-title{font:inherit;display:block;padding:0;margin:0}
.spec-tree-children{padding:0 0 0 18px!important;margin:0}
.spec-children{margin:16px 0 12px}
.spec-children-heading{font-size:12px!important;font-weight:600;margin:0!important;padding:0 0 8px;border-bottom:1px solid #dce2d7}
.spec-tree-row:focus-visible{outline:1px solid #789181;outline-offset:-1px}
.reference-variants{align-items:center;flex-shrink:0;max-width:45%}
.reference-variants>button:nth-child(2){min-width:0;white-space:normal;word-break:keep-all;overflow-wrap:normal;line-height:1.4;text-align:center}
.reference-variants .variant-word{display:inline-block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}

/* Share typography and spacing across both reference catalogues. */
.reference-entry{min-height:42px;border-color:#e2e7dc}
.reference-title{display:grid;grid-template-columns:10px var(--reference-number-width,5ch) minmax(0,1fr);align-items:center;gap:8px;min-height:42px;padding:10px 2px;box-sizing:border-box;line-height:1.6;font-size:12px;font-weight:500}
.reference-title>.itemcode{font-size:10px;font-weight:400;line-height:1.6;white-space:nowrap}
.reference-label{min-width:0;line-height:1.6;font-size:12px;font-weight:500;word-break:keep-all;overflow-wrap:break-word}
.reference-bracket{display:inline-block;max-width:100%;text-indent:0;white-space:normal;word-break:keep-all;overflow-wrap:break-word;vertical-align:baseline}
.detailhead h2{white-space:normal!important;word-break:keep-all!important;overflow-wrap:break-word!important;text-wrap:pretty}
.resource-result{margin:0;border:0;border-radius:0;background:transparent;padding:0}
.resource-result>summary{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:42px;box-sizing:border-box;padding:10px 2px;list-style:none;border-bottom:1px solid #e2e7dc;font-size:12px;font-weight:500;line-height:1.6}
.resource-result>summary::marker{content:''}
.resource-result>summary::before{content:none}
.resource-result>.resource-children{padding-left:18px}
.condition-paragraph,.spec-paragraph{font-size:13px;font-weight:400;line-height:1.85}
@media(max-width:480px){.condition-paragraph,.spec-paragraph{font-size:12px}}
.poom-detailhead h2{white-space:nowrap!important}
.detail-subtype{word-break:keep-all;overflow-wrap:break-word;line-height:1.6}
.reference-variants{flex:0 1 44%;max-width:44%;min-width:0;box-sizing:border-box}
.reference-variants>button:first-child,.reference-variants>button:last-child{flex:0 0 20px;width:20px;padding:4px;box-sizing:border-box}
.reference-variants>button:nth-child(2){flex:1 1 auto;min-width:0;max-width:calc(100% - 40px);padding:5px 2px;white-space:normal;word-break:keep-all;overflow-wrap:break-word;line-height:1.5}

/* Keep the source header intact and move only columns after the identity/unit columns. */
.spec-table-wrap.reference-scroll-wrap{display:block;overflow-x:auto!important;overflow-y:visible;max-width:100%;width:100%;touch-action:pan-x pan-y;overscroll-behavior-x:contain;scrollbar-width:thin;isolation:isolate}
.reference-scroll-table{table-layout:fixed!important;max-width:none!important;border-collapse:separate;border-spacing:0;border-top:1px solid #dce1d6;border-left:1px solid #dce1d6}
.reference-scroll-table th,.reference-scroll-table td{box-sizing:border-box;border-width:0 1px 1px 0!important;padding:6px 4px!important;line-height:1.5!important}
.reference-scroll-table th{height:28px;min-width:0;white-space:normal!important}
.reference-scroll-table .reference-pinned-cell{position:sticky;z-index:2;background:#fff;background-clip:padding-box}
.reference-scroll-table th.reference-pinned-cell{z-index:3;background:#eef1e8}
.reference-scroll-table .reference-pinned-last{box-shadow:none}
.reference-scroll-wrap:focus-visible{outline:1px solid #9aa999;outline-offset:2px}
.spec-reference-table.coefficient-table td,.spec-reference-table.coefficient-table th{padding:5px 3px!important;line-height:1.6!important;vertical-align:middle!important}
.spec-reference-table.coefficient-table td.cell-label{text-align:left!important}
.spec-reference-table.coefficient-table td.cell-number{text-align:right!important;font-variant-numeric:tabular-nums}
.reference-scroll-group-label{display:block;position:sticky;width:80px;max-width:100%;text-align:center}

.reference-detailhead{padding-right:42px;margin:12px 0}
.reference-detailhead .overline{display:block;margin:0 0 8px;font-size:10px;font-weight:400;line-height:1.6;letter-spacing:.04em}
.reference-detailhead .title-unit-line{min-height:31px;margin:0 0 8px}
.reference-detailhead h2{margin:0!important;line-height:1.4}
.reference-detailhead .title-unit-line .badge{margin:0;font-size:11px}
.reference-detailhead .detail-subtype{margin:0 0 8px;font-size:12px;line-height:1.6}
.reference-section-title{font-size:14px!important;font-weight:600;line-height:1.5;margin:14px 0 10px!important}
.condition-paragraph.numbered-clause,.spec-paragraph.numbered-clause{display:grid;grid-template-columns:1.5em minmax(0,1fr);padding-left:0;text-indent:0;column-gap:0}
.reference-clause-marker{display:block;text-align:left;white-space:nowrap}
.reference-clause-text{min-width:0;display:block;text-indent:0}
.condition-illustrated:has(>.numbered-clause)>.condition-paragraph:not(.numbered-clause),.spec-body:has(>.numbered-clause)>.spec-paragraph:not(.numbered-clause){padding-left:1.5em}
.resource-name{display:block;width:100%;border:0;background:transparent;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.reference-variants .variant-method,.reference-variants .variant-size{display:inline-block;max-width:100%;white-space:nowrap;word-break:keep-all;font-size:10px}

/* Reading refinements: one-line titles, source prose and compact navigation. */
.detailhead h2{white-space:nowrap!important;overflow-wrap:normal!important}
.detailhead h2 .reference-bracket{display:inline;white-space:nowrap;max-width:none}
.spec-reference-table td.cell-prose{text-align:left!important;line-height:1.8!important;padding:8px!important}
.reference-measure{display:inline-block;white-space:nowrap;max-width:100%;font-size:.95em}
.item-stepper button,.spec-stepper button{font-size:18px;min-width:32px;min-height:32px;padding:2px 6px}

#info .creator-credit{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px}
#info .creator-email{color:inherit;font:inherit;text-decoration:none;overflow-wrap:anywhere}
#info .creator-email:hover{text-decoration:underline}

#info .related-title{font-size:12px;color:#738078;margin:12px 0}
#info .creator-contact{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 8px;max-width:100%;text-align:right}
#info .creator-version{white-space:nowrap}
#info .creator-email{text-align:right;white-space:nowrap}

/* Compact related-address dialog. */
#info{padding:18px 18px 14px}
#info .dialog-head{position:absolute;right:4px;top:4px;margin:0}
#info .dialog-head .iconbtn{width:32px;height:32px;padding:0}
#info .related-title{margin:0 36px 10px 0;line-height:1.6}
#info .related-links{gap:6px}
#info .related-links a{padding:10px 12px}
#info .creator-credit{margin:10px 0 0;justify-content:flex-end}

/* Fill the available student-reader viewport, including unfolded screens. */
body.student-view{margin:0;padding:0;display:block;width:100%;height:100dvh;overflow:hidden}
body.student-view>.phone{width:100%;max-width:none;height:100dvh;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none}
body.student-view>.phone>main{min-height:0}
.student-view .reference-scroll-table{min-width:100%}

body.student-view>.phone{padding-top:max(24px,env(safe-area-inset-top,0px));padding-bottom:max(24px,env(safe-area-inset-bottom,0px));padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}
.student-view .phone.reference-reading>main{padding-left:26px;padding-right:26px}
.reference-page-nav{position:absolute;left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);top:50%;height:64px;transform:translateY(-50%);display:flex;justify-content:space-between;z-index:9;pointer-events:none;margin:0;padding:0}
.reference-page-arrow{display:grid;place-items:center;width:26px;height:64px;padding:0;border:0;border-radius:9px;background:rgba(247,246,240,.7);color:#294c3d;font-size:24px;line-height:1;opacity:.45;pointer-events:auto;touch-action:manipulation}
.reference-page-arrow:disabled{opacity:.14;cursor:default}.reference-page-arrow:not(:disabled):hover,.reference-page-arrow:not(:disabled):focus-visible,.reference-page-arrow:not(:disabled):active{opacity:.9}.reference-page-arrow:focus-visible{outline-offset:-3px}
.source-pager:not(:has(button)){justify-content:center}

.reference-action-head{position:relative;padding-right:0}.reference-action-head .overline{min-height:28px;padding-right:88px;display:flex;align-items:center}
.reference-head-actions{position:absolute;right:0;top:0;height:28px;display:flex;align-items:center;gap:5px}
.reference-head-actions .reference-save{position:static;width:28px;height:28px;padding:4px;display:grid;place-items:center}
.reference-head-actions .reference-original{display:inline-flex;align-items:center;gap:3px;min-height:28px;margin:0;padding:4px 0;font-size:11px;line-height:1.5;white-space:nowrap;text-decoration:none;color:#778371}
.reference-head-actions .reference-original .icon{width:13px;height:13px}
.reference-coefficient-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:0 0 2px;min-width:0}.reference-coefficient-heading h3{margin:0}
.reference-table-unit{flex:none;color:#778371;font-size:11px;font-weight:400;line-height:1.5;white-space:nowrap}

.reference-coefficient-heading + .tablewrap,.reference-coefficient-heading + .spec-table-wrap{margin-top:0!important}.reference-table-unit{line-height:1.2}
.reference-coefficient-heading + .source-coefficients{margin-top:0}.reference-coefficient-heading + .source-coefficients > .spec-table-wrap:first-child{margin-top:0}.reference-coefficient-heading h3.reference-section-title{margin-bottom:0!important}

.reference-title-bracket{font-size:.86em}.spec-reference-table td.cell-label,.spec-reference-table td.cell-note,.spec-reference-table td.cell-prose{padding-left:.33em!important}.spec-reference-table td.cell-number{padding-right:.33em!important}
.spec-reference-table td.cell-label,.spec-reference-table td.cell-note,.spec-reference-table td.cell-prose{text-align:left!important}.spec-reference-table td.cell-number{text-align:right!important}.reference-label .reference-bracket,.spec-tree-label .reference-bracket{font-size:.86em}
