:root{--draft:#9a6132;--draft-bg:#f3eadc;--soft:#eff1eb}body{line-height:1.55}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:white;padding:12px}.skip-link:focus{top:8px}.project-header{position:relative;padding:18px 4vw;gap:18px}.project-header .brand span span{margin:0;font-weight:450;letter-spacing:1px}.header-actions{display:flex;gap:10px}.header-actions button{font-size:13px;min-height:42px}.project-banner{padding:20px 0 16px;display:flex;gap:16px;align-items:baseline;font-size:13px;color:var(--muted)}.draft-label{color:var(--draft);font-size:11px;font-weight:700;letter-spacing:1px;white-space:nowrap}.project-sequence{padding:12px 0 16px;font-size:14px}.project-sequence summary{cursor:pointer;min-height:30px;font-weight:600}.project-sequence ol{display:grid;grid-template-columns:repeat(6,1fr);list-style:none;padding:0;counter-reset:phases;gap:8px;margin:18px 0}.project-sequence li{counter-increment:phases;border:1px solid var(--line);padding:14px 12px;font-size:13px}.project-sequence li:before{content:'0' counter(phases);display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.room-tabs{margin:0;padding:0;position:relative;display:flex;gap:0;border-bottom:2px solid var(--ink);width:100%}.room-tabs button{font-size:18px;font-weight:600;border:0;border-radius:0;padding:15px 30px;min-height:58px;flex:1}.room-tabs button[aria-selected=true]{background:var(--ink);color:white}.room-tabs button[aria-selected=false]:hover{background:#e9ece6}.room-panel{min-width:0}.room-panel .intro{padding-top:38px}.room-panel .intro h1{text-transform:none;font-size:38px}.room-nav{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 28px;padding:10px 0 16px;border-bottom:1px solid var(--line)}.room-nav a{font-size:13px;min-height:32px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:5px}.room-panel h2{text-transform:none;font-size:26px}.room-panel h3{text-transform:none;letter-spacing:0;font-size:18px}.room-panel .section:first-of-type{margin-top:30px}.room-panel .section{padding-top:36px;margin-top:38px}.task{border-top:1px solid var(--line);padding:24px 0 18px}.task:first-of-type{border-top:0;padding-top:0}.task-heading{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.task-heading h3{margin:0;font-size:20px}.task-code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:13px;font-weight:600;color:var(--muted)}.status-label{font-size:11px;padding:4px 9px;border:1px solid var(--line);border-radius:3px;margin-left:auto;white-space:nowrap}.status-label.included{background:var(--soft)}.status-label.pending,.status-label.optional{background:var(--draft-bg);border-color:#ddc9ac;color:#7a4c25}.scope-bullets{max-width:980px;padding-left:21px;margin:10px 0 22px}.scope-bullets li{padding-left:4px;margin:9px 0;font-size:15px;line-height:1.65}.field-note{font-size:14px;padding:16px 20px;background:var(--soft);border-left:3px solid var(--accent);max-width:1050px;margin:18px 0 24px}.field-note.pending{background:var(--draft-bg);border-color:var(--draft)}.technical-figure{margin:26px 0;background:white;border:1px solid var(--line)}.diagram-button{display:block;border:0;padding:0;width:100%;background:white;border-radius:0;cursor:zoom-in}.diagram-button:hover{background:white}.diagram-button img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;aspect-ratio:1200/780}.technical-figure figcaption{font-size:13px;line-height:1.6;padding:14px 18px;border-top:1px solid var(--line);color:var(--muted)}.open-reference{font-size:12px;text-decoration:underline;border:0;padding:5px 0;margin-left:10px;min-height:32px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.photo-grid:has(>.photo-card:only-child){grid-template-columns:minmax(0,650px)}.photo-grid:has(>.photo-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.photo-card{margin:0;min-width:0}.photo-card button{border:1px solid var(--line);background:#eae9e2;padding:0;display:block;width:100%;cursor:zoom-in;border-radius:2px;overflow:hidden}.photo-card img{display:block;width:100%;height:270px;object-fit:cover}.photo-card figcaption{display:flex;gap:9px;font-size:12px;color:var(--muted);padding:10px 0;line-height:1.5}.photo-number{font-family:ui-monospace,SFMono-Regular,monospace;font-size:11px;color:var(--accent);font-weight:650}.material-spec{padding:22px 26px;background:#edf0e9;border:1px solid var(--line)}.material-spec h3{margin:0 0 10px;font-size:15px}.material-name{font-size:21px;font-weight:600;line-height:1.4}.resource-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin:18px 0 4px}.resource-links a{font-size:13px;min-height:32px;display:inline-flex;align-items:center;text-underline-offset:4px}.instruction-list{counter-reset:instructions;list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;margin:24px 0}.instruction-list li{counter-increment:instructions;position:relative;padding:6px 0 10px 40px;font-size:14px;line-height:1.65}.instruction-list li:before{content:counter(instructions);position:absolute;left:0;top:5px;width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--accent);font-size:13px;font-weight:650}.split-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:28px}.split-detail .photo-card img{height:340px;object-fit:contain}.disclosure .photo-grid{margin-top:20px}.disclosure>div,.disclosure>.photo-grid{padding-bottom:10px}#reference-dialog{width:min(1200px,98vw);height:94dvh;max-height:100dvh;max-width:100vw;padding:16px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}#reference-dialog[open]{display:flex;flex-direction:column}#reference-dialog::backdrop{background:#18221ed9}#reference-scroll{flex:1;min-height:0;overflow:auto;background:white;touch-action:pan-x pan-y pinch-zoom;cursor:grab;overscroll-behavior:contain;padding:12px}#reference-image{display:block;max-width:none;height:auto;user-select:none;-webkit-user-drag:none}#reference-scale{font-size:13px}.drawing-toolbar strong{line-height:1.4}button:disabled{opacity:.4;cursor:default}
@media(min-width:1000px){main{max-width:1300px}.room-panel .photo-grid:not(:has(>.photo-card:nth-child(2))) .photo-card img{height:350px}}
@media(max-width:800px){.project-sequence ol{grid-template-columns:repeat(3,1fr)}.project-banner{flex-direction:column;gap:5px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-card img{height:230px}.room-nav{gap:6px 18px}.split-detail{grid-template-columns:1fr}.split-detail .photo-card{max-width:550px}.instruction-list{grid-template-columns:1fr}.room-panel .intro h1{font-size:32px}}
@media(max-width:700px){.project-header{padding:10px 5vw;display:flex;flex-wrap:nowrap;gap:8px}.project-header .brand{font-size:12px;letter-spacing:1px;display:block;min-height:0}.project-header .brand>span{display:block;margin:3px 0 0;font-size:10px}.project-header .brand span span{font-size:10px}.header-actions{gap:6px}.header-actions button{min-width:0;min-height:44px;padding:5px 10px;font-size:12px}#print-room{display:none}.project-banner{font-size:12px;padding:16px 0}.project-sequence{font-size:13px}.project-sequence summary{min-height:40px;align-content:center}.project-sequence ol{grid-template-columns:1fr 1fr}.project-sequence li{font-size:12px}.room-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;overflow:visible}.room-tabs button{padding:12px 4px;font-size:16px;min-height:54px}.room-panel .intro{padding:25px 0 18px}.room-nav{display:flex;justify-content:flex-start;flex-wrap:wrap;margin-bottom:22px;gap:0 20px}.room-nav a{flex:initial;min-height:44px;font-size:13px}.task-heading{gap:7px 10px}.task-heading h3{font-size:19px;flex:1}.status-label{margin-left:30px;font-size:11px}.scope-bullets li{font-size:15px}.room-panel .section{margin-top:30px;padding-top:28px}.room-panel h2{font-size:25px}.photo-grid,.photo-grid:has(>.photo-card:nth-child(2):last-child){grid-template-columns:1fr 1fr;gap:14px}.photo-grid:has(>.photo-card:only-child){grid-template-columns:1fr}.photo-card img{height:180px}.photo-grid:has(>.photo-card:only-child) .photo-card img{height:280px}.photo-card figcaption{font-size:12px}.technical-figure figcaption{font-size:12px;padding:12px}.technical-figure .diagram-button img{max-height:none}.open-reference{display:block;margin:6px 0 0;min-height:40px;font-size:13px}.field-note{padding:14px;font-size:13px}.material-spec{padding:18px}.material-name{font-size:18px}.resource-links{display:grid;gap:8px}.resource-links a{min-height:44px;font-size:13px}.instruction-list li{font-size:14px}#reference-dialog{width:100vw;height:100dvh;margin:0;border:0;padding:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}html{scroll-padding-top:20px}}
@media(max-width:390px){.photo-grid,.photo-grid:has(>.photo-card:nth-child(2):last-child){grid-template-columns:1fr}.photo-card img{height:250px}.header-actions button{padding:5px 8px}}
@media print{header,.room-tabs,.room-nav,.project-sequence,.project-banner,.skip-link,.open-reference,dialog,#model,.enlarge-drawing,.text-link{display:none!important}body{background:white;font-size:11pt}main{padding:0;max-width:none}.room-panel[hidden]{display:none!important}.intro{padding:0 0 15px!important}.revision{display:block!important}.section,.task{break-inside:auto;margin-top:18px!important;padding-top:16px!important}.task-heading,.section-heading{break-after:avoid}.technical-figure,.photo-card{break-inside:avoid}.photo-card img{height:180px}.technical-figure img{max-height:550px!important}.field-note{border:1px solid #ccc;background:white}details:not([open]){display:none}.scope-bullets li{font-size:11pt}.instruction-list{display:block}.project-header{position:static}footer{font-size:9pt}a{text-decoration:none}}
#room-tabs{position:sticky;top:0;z-index:6;background:var(--paper)}html{scroll-padding-top:82px}.technical-figure .diagram-button img{aspect-ratio:auto}
@media(max-width:700px){html{scroll-padding-top:72px}}
@media print{#room-tabs{display:none!important}}
/* Direct jumps keep room switching predictable on long contractor pages. */
html{scroll-behavior:auto}
#tv-library table{table-layout:fixed}#tv-library th:first-child{width:26%}#tv-library td:nth-child(2){white-space:normal}#tv-library td{overflow-wrap:break-word}
