:root{font-family:Arial,Helvetica,sans-serif;font-size:16px;color:#222422;background:#fff;--ink:#222422;--muted:#656b65;--line:#d9ddd7;--sound:#927baf;--privacy:#73a7aa;--light:#d8af36;--thermal:#d57d70}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #486576;outline-offset:4px}button:disabled{opacity:.4;cursor:default}h1,h2,h3,p{margin:0}p{line-height:1.55}.page{max-width:1720px;margin:auto;padding:28px 40px 20px}header{display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid var(--ink);padding-bottom:22px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-copy{display:flex;flex-direction:column;gap:7px}.brand-icon{display:block;width:48px;height:48px;flex-shrink:0;object-fit:contain}.eyebrow{font-size:.75rem;letter-spacing:.1em;color:var(--muted);line-height:1.5}.brand-title{font-size:1.4rem;letter-spacing:-.035em}nav{display:flex;gap:27px}nav a{font-size:.9375rem;text-decoration:none;padding:10px 0;border-bottom:2px solid transparent}nav a.active{border-color:var(--ink)}.version{font-size:.75rem;color:var(--muted);white-space:nowrap}.version span{margin:0 8px}.intro{padding:29px 0 26px;display:flex;justify-content:space-between;align-items:flex-end;gap:25px}h1{font-size:2.3rem;letter-spacing:-.05em;font-weight:500;line-height:1.15}.intro p{margin-top:10px;color:var(--muted);max-width:700px}.legend{display:flex;list-style:none;gap:17px;padding:0;margin:0;flex-wrap:wrap;font-size:.875rem}.legend li,.tag{display:inline-flex;align-items:center;gap:6px}.legend li:before,.tag:before{content:'';width:7px;height:7px;background:var(--force);flex-shrink:0}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:30px;align-items:start}.library-header{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding:13px 0;border-top:1px solid var(--line)}.library-header h2{font-size:1rem;font-weight:500}.library-header p{font-size:.8125rem;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{border:1px solid var(--line);display:flex;flex-direction:column;min-width:0;background:white}.card.selected{border-color:var(--ink);box-shadow:inset 0 3px var(--force)}.card.has-conflict{border-color:#b67569}.card.has-constraint{border-color:#b79f53}.card-link{display:block;padding:13px 13px 6px;text-decoration:none;flex:1}.card-link:hover{background:#f5f6f2}.card-meta{display:flex;justify-content:space-between;gap:7px;align-items:start}.card-id{font-size:.875rem;color:var(--muted)}.tags{display:flex;gap:5px 10px;flex-wrap:wrap}.tag{font-size:.75rem;color:var(--muted)}.card .tags{justify-content:flex-end}.card img{display:block;width:100%;height:136px;object-fit:contain;margin:10px 0}.card h3{font-size:1rem;line-height:1.3;font-weight:500;min-height:2.6em}.card .project-label{color:var(--muted);font-size:.8125rem;line-height:1.3;margin:6px 0;min-height:2.6em}.card-action{padding:0 13px 13px}.card-note{font-size:.8125rem;line-height:1.3;min-height:32px;display:flex;align-items:center;color:var(--muted);margin-bottom:8px}.card-note.issue{color:#894b3d}.card-note.suggested{color:#496b6d}.button{padding:10px 14px;background:white;border:1px solid var(--line);border-radius:2px;color:var(--ink);font-size:.875rem;min-height:41px;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:5px}.button:hover:not(:disabled){background:#f1f3ef}.button.dark{background:var(--ink);border-color:var(--ink);color:#fff}.button.dark:hover:not(:disabled){background:#414b41}.card-action .button{width:100%}.sidebar{position:sticky;top:24px;border:1px solid var(--line);border-top:3px solid var(--ink);padding:20px;max-height:calc(100vh - 48px);overflow:auto;background:#fff}.sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.sidebar h2{font-size:1.3rem;letter-spacing:-.025em;font-weight:500}.text-button{font-size:.8125rem;background:none;border:0;text-decoration:underline;text-underline-offset:3px;color:var(--muted);padding:5px}.empty{padding:22px 0;color:var(--muted);font-size:.9375rem}.empty strong{color:var(--ink);font-weight:500;display:block;margin-bottom:8px}.path-list{list-style:none;padding:0;margin:18px 0}.path-list li{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--line)}.path-list .order{font-size:.75rem;color:var(--muted);width:18px}.path-list a{font-size:.875rem;line-height:1.35;flex:1;text-decoration:none}.path-list a:hover{text-decoration:underline}.remove{border:0;background:none;font-size:1.2rem;color:var(--muted);padding:3px 7px}.sidebar-section{border-top:1px solid var(--line);padding-top:17px;margin-top:18px}.sidebar-section h3{font-size:.875rem;font-weight:500;margin-bottom:10px}.sidebar-section>p{font-size:.8125rem;color:var(--muted)}.suggestion{display:block;border:1px solid var(--line);padding:11px;margin-top:9px}.suggestion-top{display:flex;justify-content:space-between;align-items:start;gap:8px}.suggestion a{font-size:.875rem;line-height:1.4;text-decoration:none}.suggestion p{font-size:.8125rem;color:var(--muted);margin:8px 0}.suggestion .button{padding:6px 9px;min-height:32px}.badge{font-size:.75rem;border:1px solid var(--line);padding:3px 6px;display:inline-block;color:var(--muted);line-height:1.3}.issue-box{border-left:3px solid var(--thermal);background:#faf6f3;padding:12px;margin-top:12px;font-size:.8125rem}.issue-box strong{font-size:.875rem;font-weight:500;line-height:1.4;display:block;margin-bottom:7px}.issue-box p{color:#62544c;margin-top:6px}.issue-box .badge{margin-top:8px}.original{width:100%;margin-top:17px}.scope-note{font-size:.8125rem;color:var(--muted);border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.scope-note p{margin:8px 0}.scope-note summary{cursor:pointer;color:var(--ink);line-height:1.4}.breadcrumb{display:flex;gap:10px;font-size:.875rem;color:var(--muted);padding:24px 0}.detail-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:50px;align-items:start}.large-drawing{border:1px solid var(--line);padding:30px;display:flex;align-items:center;justify-content:center;min-height:450px}.large-drawing img{width:100%;height:410px;object-fit:contain}.detail-text h1{margin:11px 0 15px;font-size:2.1rem}.detail-text>.tags{margin-bottom:23px}.detail-text>p{color:var(--muted);margin:18px 0}.detail-text .button{margin:5px 0 12px}.precedent-block{margin-top:20px;border-top:1px solid var(--line);padding-top:22px}.precedent-block h2{font-size:1.3rem;font-weight:500;margin:7px 0 10px}.precedent-block p{color:var(--muted);margin:8px 0}.precedent-block a{display:inline-block;margin-top:10px;font-size:.9375rem}.section{margin:35px 0}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;border-top:1px solid var(--line);padding-top:21px;margin-bottom:18px}.section-heading h2{font-size:1.3rem;font-weight:500;letter-spacing:-.025em}.section-heading p{font-size:.875rem;color:var(--muted)}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.related-item{border:1px solid var(--line);padding:18px;display:grid;grid-template-columns:110px 1fr;gap:20px}.related-item img{width:110px;height:100px;object-fit:contain}.related-item h3{font-size:1rem;font-weight:500;margin-bottom:8px}.related-item p{font-size:.875rem;color:var(--muted);margin-bottom:10px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.project-card{border:1px solid var(--line);padding:20px;text-decoration:none;display:block}.project-card:hover{background:#f7f8f5}.project-card .preview-strip{display:flex;height:145px;gap:10px;margin:8px 0 20px;overflow:hidden}.preview-strip img{min-width:0;width:50%;object-fit:contain}.project-card h2{font-size:1.25rem;font-weight:500;margin-bottom:7px}.project-card p{font-size:.875rem;color:var(--muted);margin:5px 0}.project-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding:15px 0 28px}.project-intro h1{margin-bottom:15px}.project-intro p{color:var(--muted)}.sources{margin-top:22px;display:flex;flex-direction:column;gap:9px;font-size:.875rem}.evidence-note{font-size:.8125rem;color:var(--muted);margin-top:10px}.example{border-left:3px solid var(--privacy);padding:16px 20px;background:#f6f9f8;margin-top:14px}.example h3{font-size:1rem;font-weight:500;margin-bottom:8px}.example p{font-size:.875rem;color:var(--muted);margin:7px 0}.example a{font-size:.875rem}.context-note{font-size:.875rem;color:var(--muted);margin:18px 0}.empty-review{padding:16px 0;color:var(--muted);font-size:.9375rem}footer{border-top:1px solid var(--line);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted)}.skip{position:absolute;top:-70px;left:20px;background:var(--ink);color:#fff;padding:10px;z-index:3}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.card img{height:162px}}@media(max-width:1250px){.page{padding:24px}.workspace{grid-template-columns:minmax(0,1fr) 300px;gap:22px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.version{display:none}.intro{align-items:start}.legend{max-width:225px;justify-content:flex-end}.detail-main{gap:30px}}@media(max-width:940px){.workspace{grid-template-columns:1fr}.sidebar{position:static;max-height:none;grid-row:1}.sidebar .path-list{display:flex;flex-wrap:wrap;gap:8px}.path-list li{border:1px solid var(--line);padding:7px 10px;max-width:100%}.path-list .order{width:auto}.sidebar-section{margin-top:13px;padding-top:13px}.sidebar .suggestion{display:inline-block;vertical-align:top;width:calc(50% - 6px);margin-right:4px}.sidebar .empty{padding:13px 0 0}.original{width:auto}.scope-note{margin-top:18px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(2,1fr)}.project-intro{gap:30px}.large-drawing{min-height:350px;padding:15px}.large-drawing img{height:320px}.detail-text h1{font-size:1.8rem}}@media(max-width:650px){.brand{gap:10px}.brand-icon{width:40px;height:40px}.page{padding:20px 16px}.brand-title{font-size:1.1rem}.eyebrow{letter-spacing:.06em}.brand .eyebrow{font-size:.6875rem}header{gap:14px;align-items:flex-start;padding-bottom:18px}nav{gap:14px}nav a{font-size:.8125rem;padding:3px 0 7px;white-space:nowrap}.intro{display:block;padding:23px 0}h1{font-size:2rem}.intro p{font-size:.9375rem}.legend{max-width:none;justify-content:flex-start;margin-top:17px;gap:15px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card-link{padding:11px 10px 5px}.card-meta{min-height:30px}.card img{height:130px;margin:5px 0 10px}.card h3{font-size:.9375rem;min-height:3.9em}.card .project-label{font-size:.8125rem;min-height:2.6em}.card-action{padding:0 10px 10px}.card-note{font-size:.75rem;min-height:31px}.card .tag{font-size:.6875rem}.card .tags{gap:4px}.card .button{font-size:.8125rem;padding:9px 7px}.sidebar{padding:16px}.sidebar .suggestion{display:block;width:100%;margin-right:0}.library-header p{max-width:170px;text-align:right;line-height:1.4}.detail-main{grid-template-columns:1fr;gap:24px}.large-drawing{min-height:270px}.large-drawing img{height:260px}.detail-text h1{font-size:1.9rem}.related-grid{grid-template-columns:1fr}.related-item{grid-template-columns:85px 1fr;gap:15px;padding:15px}.related-item img{width:85px;height:100px}.project-grid{grid-template-columns:1fr}.project-card .preview-strip{height:140px}.project-intro{grid-template-columns:1fr;gap:22px}.section-heading{display:block}.section-heading p{margin-top:8px}.breadcrumb{font-size:.8125rem;flex-wrap:wrap}footer{display:block;line-height:1.5}footer span{display:block;margin-top:7px}}
.card.has-conflict{background:#fbf8f6}.card.has-conflict img{opacity:.5}.card.has-conflict .card-note{align-items:flex-start;min-height:47px}.card-note{min-height:47px}.card-action button:disabled{opacity:1;color:#8c7770;border-style:dashed;background:#f5eeea}.portal-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:30px}.portal-panel{border:1px solid var(--line);padding:25px}.portal-panel h2{font-size:1.35rem;font-weight:500;margin:12px 0}.portal-panel p{color:var(--muted);margin:16px 0}.portal-panel .button{margin-top:12px}.upload-label{display:block;margin:20px 0 14px;font-size:1.1rem}input[type=file]{font:inherit;max-width:100%;padding:10px;border:1px solid var(--line);width:100%}input[type=file]::file-selector-button{font:inherit;background:var(--ink);color:white;border:0;padding:9px 13px;margin-right:12px}.upload-preview{border-top:1px solid var(--line);padding-top:15px}.upload-preview h2{font-size:1rem;overflow-wrap:anywhere}.upload-preview ul{padding-left:19px;font-size:.9375rem;line-height:1.5}.upload-preview li{margin:8px 0}.upload-preview .button{margin-right:8px}.muted{color:var(--muted)}@media(max-width:940px){.portal-grid{grid-template-columns:1fr}}@media(max-width:650px){header{flex-wrap:wrap}nav{width:100%;gap:22px}.portal-panel{padding:18px}.card.has-conflict .card-note,.card-note{min-height:62px}}

#strategy-grid{overflow-anchor:none}main{overflow-anchor:none}

/* Section study and photographic precedent catalog, v5. */
.strategy-workspace{min-width:0}.visualiser{border:1px solid var(--line);margin-bottom:28px;background:#fff}.visualiser-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 23px 0}.visualiser-heading h2{font-size:1.35rem;font-weight:500;letter-spacing:-.03em;margin:0 0 6px}.visualiser-heading .text-button{font-size:.875rem;white-space:nowrap}.section-canvas{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding-top:10px}.section-svg{display:block;width:100%;min-width:700px;height:auto;font-family:Arial,Helvetica,sans-serif}.base-section{stroke:#8d978e;stroke-width:1.5;fill:none}.base-section text{fill:#737d73;stroke:none;font-size:13px;letter-spacing:1.5px;text-anchor:middle}.dimension-lines{fill:none;stroke:#b4bcb4;stroke-width:1}.dimension-lines text{fill:#6c756c;stroke:none;font-size:16px;text-anchor:middle}.dimension-handle{cursor:ew-resize;touch-action:none}.dimension-handle[data-dimension=height]{cursor:ns-resize}.dimension-handle circle{fill:white;stroke:#3e4941;stroke-width:1.5}.dimension-handle path{fill:none;stroke:#3e4941;stroke-width:1.5}.dimension-handle:hover circle,.dimension-handle:focus circle{fill:#e2eee8;stroke-width:2.5}.dimension-handle:focus{outline:none}.section-layer{transition:opacity .2s ease;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.section-layer.muted-layer{opacity:.16}.section-layer:focus{outline:none}.section-layer:focus .section-badge circle,.section-layer:hover .section-badge circle{fill:#24382d;stroke:#24382d}.section-layer:focus .section-badge text,.section-layer:hover .section-badge text{fill:white}.section-badge circle{fill:white;stroke:#49524a;stroke-width:1.5}.section-badge text{fill:#29332b;stroke:none;font-size:13px;font-weight:600}.force-flow{fill:none;stroke-width:2;stroke-dasharray:6 5}.dashed{stroke-dasharray:5 5}.sound-line,.sound{stroke:#927baf;fill:none}.privacy-line,.privacy{stroke:#60989c;fill:none}.thermal-line,.thermal{stroke:#ce7467;fill:none}.light-line,.light{stroke:#b88f17;fill:none}.sound-solid{fill:#927baf;stroke:none}.privacy-solid{fill:#73a7aa;stroke:none}.thermal-solid{fill:#d57d70;stroke:none}.light-solid{fill:#b88f17;stroke:none}.light-wash{fill:#d8af36;fill-opacity:.14;stroke:none}.thermal-wash{fill:#d57d70;fill-opacity:.1;stroke:#d57d70;stroke-width:1}.privacy-wash{fill:#73a7aa;fill-opacity:.18;stroke:#60989c;stroke-width:1.5}.light-glass{fill:#f7e9ac;stroke:#b88f17;stroke-width:1.5}.privacy-glass{fill:#d6e8e5;stroke:#60989c;stroke-width:1.5}.sound-glass{fill:#e4dfee;stroke:#927baf;stroke-width:1.5}.section-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:12px 23px;border-top:1px solid var(--line)}.section-controls label{font-size:.875rem}.section-controls label>span{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.section-controls output{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.section-controls input{width:100%;margin:13px 0 3px;accent-color:#344d3f;cursor:ew-resize;height:18px}.visualiser-hint{font-size:.8125rem;color:var(--muted);padding:0 23px 16px;line-height:1.5}.section-layers{display:flex;gap:7px;flex-wrap:wrap;align-content:flex-start;padding:14px 23px;min-height:69px}.section-layers>p{font-size:.875rem;color:var(--muted);padding:8px 0}.layer-chip{border:1px solid var(--line);border-left:3px solid var(--force,var(--ink));background:white;padding:7px 9px;font-size:.8125rem;line-height:1.3;min-height:34px;text-align:left;max-width:100%}.layer-chip[aria-pressed=true]{background:#edf1ec;border-color:#637667}.layer-chip:hover{background:#f3f5f1}.card.is-suggested{border-color:#668a79;background:#f7faf6}.card.is-suggested .card-note{color:#335d43}.card-note{line-height:1.45}.card.is-suggested .card-link:hover{background:#eef4eb}.project-card{padding:0;overflow:hidden}.project-photo{aspect-ratio:1.5;background:#f0f1ed;overflow:hidden}.project-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.project-card:hover .project-photo img{transform:scale(1.025)}.project-card-copy{padding:18px 20px 21px}.project-card-copy h2{margin:9px 0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.photo-card{margin:0;min-width:0}.photo-card>button{display:block;width:100%;aspect-ratio:1.35;border:0;padding:0;background:#eff1ed;position:relative;overflow:hidden}.photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photo-card>button:hover img{transform:scale(1.03)}.photo-card figcaption{padding-top:13px;font-size:.9375rem;line-height:1.5}.photo-card figcaption p{margin:8px 0}.photo-strategies{display:flex;flex-wrap:wrap;gap:5px 10px}.photo-strategies a{font-size:.875rem;text-decoration:none;color:#394f40;border-bottom:1px solid #c9d4c8;line-height:1.4}.photo-note{font-size:.875rem;color:var(--muted)}.photo-credit{font-size:.75rem;color:var(--muted)}.photo-dialog{width:min(1300px,96vw);max-width:96vw;max-height:94dvh;border:0;padding:18px;background:#fff;color:var(--ink)}.photo-dialog::backdrop{background:#101810db}.photo-dialog-toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:12px}.photo-dialog-toolbar p{font-size:1rem}.photo-dialog-toolbar span{font-size:.875rem;color:var(--muted);margin-left:15px}.photo-dialog>img{width:100%;height:65dvh;object-fit:contain;background:#f4f5f2;display:block}.photo-dialog-caption{display:flex;justify-content:space-between;gap:22px;align-items:center;padding-top:13px}.photo-dialog-caption>div:first-child{max-width:850px}.photo-dialog-caption .photo-credit{margin-top:7px}.photo-dialog-nav{display:flex;gap:8px;flex-shrink:0}.photograph-section .section-heading p{font-size:.875rem}
@media(max-width:1250px){.section-controls{gap:15px;padding:12px 16px}.section-controls label>span{display:block}.section-controls output{display:block;margin-top:5px}.visualiser-heading{padding:18px 16px 0}.visualiser-hint,.section-layers{padding-left:16px;padding-right:16px}}
@media(max-width:940px){.sidebar{grid-row:auto}.photo-grid{gap:16px}.section-controls label>span{display:flex}.section-controls output{margin-top:0}.workspace>.path-rail>.sidebar{border-top-width:1px}.photo-card figcaption{font-size:.875rem}}
@media(max-width:650px){.visualiser-heading{gap:10px;align-items:start}.visualiser-heading h2{font-size:1.2rem}.visualiser-heading .text-button{white-space:normal;max-width:90px;line-height:1.4;padding-right:0}.section-controls{grid-template-columns:1fr;gap:8px}.section-controls label>span{display:flex}.section-controls input{margin-top:6px}.section-layers{padding:12px;min-height:0}.layer-chip{font-size:.8125rem}.photo-grid{grid-template-columns:1fr;gap:28px}.photo-card>button{aspect-ratio:1.4}.photo-card figcaption{font-size:.9375rem}.project-photo{aspect-ratio:1.5}.photo-dialog{padding:12px}.photo-dialog>img{height:58dvh}.photo-dialog-caption{display:block}.photo-dialog-nav{margin-top:12px}.photo-dialog-toolbar p{font-size:.875rem;line-height:1.3}.photo-dialog-toolbar span{display:block;margin-left:0;margin-top:4px}}
@media(prefers-reduced-motion:reduce){.section-layer,.project-photo img,.photo-card img{transition:none}}

/* Dimension editor is collapsed until requested. */
.visualiser[data-editing="false"] .dimension-handle,.visualiser[data-editing="false"] .dimension-lines{display:none}.dimensions-edit{flex-shrink:0;white-space:nowrap}.dimensions-edit[aria-expanded="true"]{background:var(--ink);color:white;border-color:var(--ink)}#dimension-editor[hidden]{display:none}@media(max-width:650px){.dimensions-edit{font-size:.8125rem;padding:9px 10px}}

/* Compact link from a strategy to its main precedent. */
.precedent-summary{display:grid;grid-template-columns:144px minmax(0,1fr);gap:18px;align-items:center;margin:14px 0 17px}.precedent-block .precedent-thumbnail{display:block;margin:0;overflow:hidden;border:1px solid var(--line);aspect-ratio:1.35;background:#f0f1ed}.precedent-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.precedent-thumbnail:hover img{transform:scale(1.04)}.precedent-summary h2{margin:0 0 8px}.precedent-summary p{margin:0;font-size:.9375rem;line-height:1.45}@media(max-width:650px){.precedent-summary{grid-template-columns:112px minmax(0,1fr);gap:14px}.precedent-summary h2{font-size:1.2rem}.precedent-summary p{font-size:.875rem}}@media(prefers-reduced-motion:reduce){.precedent-thumbnail img{transition:none}}

/* Hold the dark Save state until the pointer first leaves the button. */
.dimensions-edit[aria-expanded="true"]:hover:not(:disabled){background:#f1f3ef;color:var(--ink);border-color:var(--line)}.dimensions-edit[aria-expanded="true"][data-initial-hover="true"]:hover:not(:disabled){background:var(--ink);color:#fff;border-color:var(--ink)}

/* v11: a shared visual grammar for conditions and detailed precedent studies. */
.conditional-prompt{border-left:3px solid #73a7aa;padding:2px 0 2px 18px;margin:24px 0}.conditional-prompt p:last-child{font-size:20px;line-height:1.5}.mechanism-detail{margin:20px 0;padding:18px 0;border-top:1px solid #d7ddd5;border-bottom:1px solid #d7ddd5}.mechanism-detail summary{cursor:pointer;font-weight:600}.mechanism-detail h3{font-size:15px;margin-top:22px}.mechanism-detail p{font-size:16px;line-height:1.65}.study-question{padding:28px;background:#f5f7f3;border-left:4px solid #73a7aa;max-width:960px;margin-bottom:36px}.study-question h3{font-size:26px;font-weight:500;line-height:1.35;margin:10px 0}.study-question p{line-height:1.7}.study-columns,.mechanism-studies{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin:28px 0}.precedent-study h3{font-size:23px;font-weight:500;margin-bottom:18px;line-height:1.35}.precedent-study article p{font-size:17px;line-height:1.8;color:#485148;max-width:65ch}.mechanism-studies{border-top:1px solid #d7ddd5;border-bottom:1px solid #d7ddd5;padding:32px 0}.suggestion-condition{font-size:12px!important;line-height:1.5;color:#657065}.large-drawing img{background:#fff}.card-link img{object-fit:contain;aspect-ratio:5/3;background:#fff}.section-badge text{font-size:11px}.section-badge circle{stroke-width:1.5}.force-flow{stroke-width:2.5}.section-svg .base-section{stroke:#363b36}.visualiser-hint{max-width:75ch}.study-columns article strong{color:#222422}
@media(max-width:900px){.study-columns,.mechanism-studies{gap:28px}.precedent-study article p{font-size:16px}}
@media(max-width:620px){.study-columns,.mechanism-studies{grid-template-columns:1fr}.study-question{padding:20px}.study-question h3{font-size:22px}.study-columns,.mechanism-studies{gap:16px}}

.section-caption{padding:0 22px 14px;font-size:12px;color:#657065;max-width:82ch;line-height:1.6}.section-badge text{font-size:10px}

/* Footer relationship portal uses the existing footer style. */
.brand{min-width:0}.brand-copy{min-width:0}
footer{align-items:baseline;flex-wrap:wrap;line-height:1.5}.footer-credit{margin:0;line-height:inherit}.footer-portal{margin-left:auto;text-align:right;font:inherit;color:inherit;text-decoration:none;white-space:nowrap}.footer-portal:hover,.footer-portal:focus-visible{text-decoration:underline;text-underline-offset:3px}.footer-portal[hidden]{display:none}
@media(max-width:650px){header{flex-wrap:wrap}header nav{width:100%;gap:22px}footer{display:flex;gap:12px 20px}.footer-credit{flex-basis:100%}.footer-portal{margin-left:auto}}

/* V13: restored atlas branding, with small author details at the right. */
.header-author{font-size:.75rem;font-weight:400;line-height:1.45;color:var(--muted);text-align:right;flex-shrink:0}.header-author span{display:block}
@media(max-width:900px){header{flex-wrap:wrap}header nav{order:2;width:100%;gap:22px}.header-author{margin-left:auto;max-width:100%;flex-shrink:1}}

/* V18: legend above the path box; both move as one sticky column. */
.path-rail{position:sticky;top:24px;margin-top:-44px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;gap:24px;min-width:0}
.path-rail>.legend{margin:0;max-width:none;justify-content:flex-end;gap:17px;flex-wrap:nowrap;line-height:20px;flex-shrink:0}
.path-rail>.legend li{white-space:nowrap}
.path-rail>.sidebar{position:static;top:auto;max-height:none;min-height:0;flex:0 1 auto}
@media(max-width:940px){.path-rail{position:static;grid-row:auto;margin-top:0;max-height:none;gap:16px}.path-rail>.legend{justify-content:flex-start;flex-wrap:wrap;gap:8px 17px}.path-rail>.sidebar{overflow:visible}}


/* Personal force palette and compact control beside the sticky key. */
.path-rail{margin-top:-72px}
.force-key{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}
.force-key>.legend{margin:0;max-width:none;justify-content:flex-end;gap:17px;flex-wrap:nowrap;line-height:20px}
.force-key>.legend li{white-space:nowrap}
.force-colors-button{font-size:.75rem;color:var(--muted);line-height:20px;padding:0;border:0;background:none;text-decoration:underline;text-underline-offset:3px}
.force-colors-button:hover{color:var(--ink)}
.force-colors-button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.force-colors-dialog{width:min(650px,calc(100vw - 32px));max-width:650px;max-height:calc(100dvh - 32px);padding:28px;border:1px solid var(--line);color:var(--ink);background:white;box-shadow:0 22px 80px #16201930}
.force-colors-dialog::backdrop{background:#141c195e}
.color-dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.color-dialog-heading h2{font-size:26px;font-weight:500;letter-spacing:-.5px;margin:8px 0 0}
.color-dialog-heading .text-button{font-size:13px;padding:3px 0}
.color-intro{font-size:14px;line-height:1.5;color:var(--muted);margin:16px 0 20px}
.color-presets{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.color-presets .button{font-size:13px}
.color-presets .button[aria-pressed=true]{border-color:var(--ink);background:#eef1eb;box-shadow:inset 0 0 0 1px var(--ink)}
.color-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.color-field{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;font-size:14px}
.color-field>div{display:flex;gap:8px;align-items:center}
.color-field input[type=color]{width:34px;height:34px;padding:2px;border:1px solid var(--line);background:#fff;cursor:pointer;flex-shrink:0}
.color-field input[type=text]{width:91px;height:34px;font:13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;border:1px solid var(--line);border-radius:0;padding:6px 8px;background:#fff;color:var(--ink);text-transform:uppercase}
.color-field input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.color-field input[aria-invalid=true]{border-color:#a32924;outline-color:#a32924}
.color-help{font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}
.color-preview{border:1px solid var(--line);padding:12px;background:#fafbf8;align-self:start}
.color-preview .eyebrow{font-size:10px;letter-spacing:1px}
.color-preview>img{width:100%;aspect-ratio:5/3;object-fit:contain;display:block;background:white;margin:8px 0 10px}
.color-preview ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:11px}
.color-preview li{display:flex;align-items:center;gap:6px}
.color-preview li span{width:10px;height:10px;display:block;border:1px solid #0002}
.color-dialog-footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.sound-line,.sound{stroke:var(--sound)}.privacy-line,.privacy{stroke:var(--privacy)}.thermal-line,.thermal{stroke:var(--thermal)}.light-line,.light{stroke:var(--light)}
.sound-solid{fill:var(--sound)}.privacy-solid{fill:var(--privacy)}.thermal-solid{fill:var(--thermal)}.light-solid{fill:var(--light)}
.light-wash{fill:var(--light)}.thermal-wash{fill:var(--thermal);stroke:var(--thermal)}.privacy-wash{fill:var(--privacy);stroke:var(--privacy)}
.light-glass{fill:var(--light-tint);stroke:var(--light)}.privacy-glass{fill:var(--privacy-tint);stroke:var(--privacy)}.sound-glass{fill:var(--sound-tint);stroke:var(--sound)}
.conditional-prompt,.study-question{border-left-color:var(--privacy)}
@media(max-width:940px){.path-rail{margin-top:0}.force-key{align-items:flex-start}.force-key>.legend{justify-content:flex-start;flex-wrap:wrap;gap:8px 17px}}
@media(max-width:520px){.force-colors-dialog{padding:20px}.color-editor-grid{grid-template-columns:1fr;gap:18px}.color-preview{display:none}.color-dialog-heading h2{font-size:23px}.color-field{max-width:100%}.color-field input[type=text]{width:112px}}

/* V21: preset colors are plain swatches and values; only Custom has inputs. */
.color-field [hidden],.color-help[hidden]{display:none!important}
.color-fixed-swatch{width:34px;height:34px;display:block;flex-shrink:0}
.color-fixed-hex{display:block;width:91px;padding:6px 8px;font:13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--ink)}
@media(max-width:520px){.color-fixed-hex{width:112px}}

/* V22: the section shares the atlas's architectural drawing grammar. */
.section-svg .base-section{stroke:none;fill:none}
.section-svg .atlas-cut{fill:url(#section-cut-hatch);stroke:#222422;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.section-svg .atlas-outline{fill:none;stroke:#222422;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.section-svg .atlas-context{fill:none;stroke:#858D85;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.section-svg .atlas-glazing{fill:none;stroke:#739190;stroke-width:2;stroke-linejoin:round}
.section-svg .atlas-glass-block{fill:#DCE8E5;stroke:#65827F;stroke-width:2;stroke-linejoin:round}
.section-svg .atlas-panel{fill:#EFEEE9;stroke:#222422;stroke-width:2}
.section-svg .atlas-curtain{fill:none;stroke:#739190;stroke-width:2}
.section-svg .atlas-ground{stroke:#858D85;stroke-width:1.5;fill:none}
.section-svg .atlas-flow{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.section-svg .sound-line,.section-svg .privacy-line{stroke-width:2.2}
.section-svg .section-layer.muted-layer{opacity:.07;pointer-events:none}
.section-svg .section-badge circle{stroke:#697369;stroke-width:1;fill:white}
.section-svg .section-badge text{font-size:10px}
.section-canvas[hidden],#dimension-editor[hidden]{display:none}
.supporting-views{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 22px 18px}
.supporting-views:empty{display:none}
.supporting-view{margin:0;border:1px solid var(--line);background:white;min-width:0;transition:opacity .2s ease}
.supporting-view.muted-view{opacity:.2}
.supporting-view figcaption{padding:11px 12px;font-size:12px;line-height:1.4;border-bottom:1px solid var(--line)}
.supporting-view figcaption span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);display:block;margin-bottom:4px}
.supporting-view figcaption a{text-decoration:none}
.supporting-view img{width:100%;aspect-ratio:5/3;object-fit:contain;display:block}
.supporting-view:only-child{grid-column:1/-1;max-width:580px;width:100%;justify-self:center}
@media(max-width:650px){.supporting-views{grid-template-columns:1fr;padding:0 12px 14px}}
@media(prefers-reduced-motion:reduce){.supporting-view{transition:none}}

/* Related precedent thumbnails are compact links below Architectural Strategies. */
.similar-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.similar-project{display:flex;align-items:flex-start;gap:16px;text-decoration:none;padding:16px;border:1px solid var(--line);color:inherit;min-width:0;transition:background .2s ease}
.similar-project:hover{background:#f4f6f1}
.similar-project:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.similar-project-icon{width:96px;height:96px;object-fit:cover;flex-shrink:0;display:block}
.similar-project h3{font-size:17px;font-weight:500;line-height:1.35;margin:1px 0 8px}
.similar-project p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}
@media(max-width:1150px){.similar-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.similar-project-grid{grid-template-columns:1fr;gap:14px}.similar-project-icon{width:80px;height:80px}}
@media(prefers-reduced-motion:reduce){.similar-project{transition:none}}

.light-icon{stroke:var(--light);color:var(--light)}.thermal-icon{stroke:var(--thermal);color:var(--thermal)}.privacy-icon{stroke:var(--privacy);color:var(--privacy)}.sound-icon{stroke:var(--sound);color:var(--sound)}

/* V23: six compact strategy cards beside the independent path column. */
.page{padding-left:28px;padding-right:28px}
.workspace{grid-template-columns:minmax(0,1fr) 300px;gap:22px}
.strategy-workspace{min-width:0}
.grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.card-link{padding:9px 9px 7px;min-width:0}
.card-meta{min-height:20px;gap:5px;align-items:start}
.card-id{font-size:11px;line-height:1.4;flex-shrink:0}
.card .tags{gap:3px 6px}
.card .tag{font-size:9px;line-height:1.45;gap:3px}
.card .tag:before{width:5px;height:5px}
.card-link img{height:auto;aspect-ratio:2.2/1;max-height:90px;margin:5px 0 7px}
.card h3{font-size:13px;line-height:1.25;min-height:2.5em;overflow-wrap:break-word}
.card-action{padding:0 9px 9px}
.card-action .button{font-size:12px;line-height:1.25;min-height:35px;padding:7px 5px;flex-direction:column;gap:3px;white-space:normal;overflow-wrap:break-word}
.card-button-status{font-size:10px;line-height:1.3;color:var(--muted)}
.card-action .dark .card-button-status{color:#e2e6e0}
.card.has-conflict .card-button-status{color:#784a3f}
.card.has-constraint .card-button-status{color:#715e2c}
.card.has-constraint .dark .card-button-status{color:#eee2b4}
.filter-count{color:var(--muted)}
.filter-empty{grid-column:1/-1;padding:26px 0;color:var(--muted);font-size:14px}
.path-rail{margin-top:-104px;gap:20px}
.force-key{align-items:stretch;gap:6px}
.force-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.force-filter-heading h2{font-size:13px;font-weight:500}
.filter-all{padding:5px 8px;min-height:30px;font-size:12px;background:none;color:var(--muted);border:1px solid transparent;border-radius:2px}
.filter-all[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}
.filter-all:hover{background:#f1f3ef}
.force-key>.legend{justify-content:space-between;gap:3px}
.force-key>.legend li:before{content:none}
.force-filter{display:inline-flex;align-items:center;gap:5px;font-size:12px;line-height:20px;padding:4px 2px;min-height:30px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted)}
.force-filter-swatch{display:block;width:8px;height:8px;background:var(--force);flex-shrink:0}
.force-filter[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}
.force-filter:hover{background:#f1f3ef;color:var(--ink)}
.force-colors-button{align-self:flex-end}
@media(max-width:1150px) and (min-width:941px){.workspace{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.force-filter{font-size:11px;gap:4px}.sidebar{padding:16px}}
@media(max-width:940px){.workspace{grid-template-columns:1fr}.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.path-rail{position:static;grid-row:1;margin-top:0;max-height:none;gap:14px}.force-key{max-width:340px;width:100%;align-items:stretch}.force-key>.legend{justify-content:space-between;flex-wrap:nowrap;gap:3px}}
@media(max-width:650px){.page{padding-left:16px;padding-right:16px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card h3{font-size:13px;min-height:2.5em}.card-link{padding:9px 9px 7px}.card-action{padding:0 9px 9px}.card-meta{min-height:20px}.library-header p{max-width:none}}

/* V24: details navigation is explicit; the main card surface is not a link. */
.card-body{padding:9px 9px 7px;min-width:0;flex:1}
.card-body .card-meta{align-items:center;min-height:25px}
.card-details{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:4px 6px;border:1px solid var(--line);border-radius:2px;font-size:10px;line-height:1.2;color:var(--muted);text-decoration:none;background:white;white-space:nowrap}
.card-details:hover{color:var(--ink);border-color:var(--ink);background:#f1f3ef}
.card-details:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.card-body img{height:auto;aspect-ratio:2.2/1;max-height:90px;margin:5px 0 7px;object-fit:contain;background:white}
.card-body>.tags{justify-content:flex-start;min-height:13px;margin-bottom:5px}

/* V25: coherent section alternatives and explicit path limits. */
.assembly-view{border-top:1px solid var(--line);padding-top:15px;margin-top:12px}
.assembly-view:first-child{border-top:0;margin-top:0}
.assembly-view>h3{font-size:14px;font-weight:500;margin:0 22px 5px;display:flex;gap:15px;align-items:baseline}
.assembly-view>h3 span{font-size:12px;color:var(--muted)}
.combination-notes{padding:0 22px 18px;font-size:13px;line-height:1.5}
.assembly-notice{padding:12px;border-left:3px solid var(--privacy);background:#f5f7f3;margin-bottom:14px}
.combination-notes summary{cursor:pointer;color:var(--ink);padding:8px 0;font-weight:500}
.combination-notes article{padding:12px 0;border-top:1px solid var(--line)}
.combination-notes h3{font-size:13px;line-height:1.4;font-weight:500;margin-bottom:5px}
.combination-notes p{color:var(--muted)}
.combination-notes .combination-kind{font-size:11px;letter-spacing:.02em;margin:4px 0;color:var(--ink)}
.path-limit{font-size:13px;line-height:1.45;border-left:3px solid var(--light);padding:10px 12px;background:#faf8f0;margin-top:15px}
.builder-scope{font-size:12px;color:var(--muted);margin:-3px 0 14px}
.reference-note{font-size:13px;color:var(--muted);padding:12px;border:1px solid var(--line)}

/* V26: Libron for reading and small interface text; retain the existing title font. */
@font-face{font-family:Libron;src:url('/catalogue/fonts/libron/Libron-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Libron;src:url('/catalogue/fonts/libron/Libron-Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Libron;src:url('/catalogue/fonts/libron/Libron-Italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Libron;src:url('/catalogue/fonts/libron/Libron-BoldItalic.woff2') format('woff2');font-style:italic;font-weight:700;font-display:swap}
body{font-family:Libron,Georgia,serif}
h1,h2,h3,h4,h5,h6,.brand{font-family:Arial,Helvetica,sans-serif}
.card-body .card-meta{flex-wrap:wrap}
/* Shared strategy names and compact precedent browsing. */
.precedent-block .shared-precedent{display:flex;margin-top:0;align-items:center;gap:15px;padding:14px 0;border-top:1px solid var(--line,#d9ddd6);text-decoration:none;color:inherit}
.shared-precedent img{width:100px;height:72px;object-fit:cover;border-radius:3px}
.shared-precedent>span{display:grid;gap:5px}.shared-precedent strong{font-size:1.05rem}.shared-precedent span span{color:var(--muted,#687168);font-size:.86rem}
.precedent-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin-top:24px;padding:0 0 20px;border-bottom:1px solid var(--line,#d9ddd6)}
.precedent-controls label{display:grid;gap:8px;font-size:.84rem;color:var(--muted,#687168)}
.precedent-controls select{min-width:155px;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23656b65' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid #bfc7be;border-radius:5px;padding:10px 32px 10px 11px;font:inherit;font-size:.95rem;color:var(--ink,#242924)}
.precedent-controls p{margin:0 0 11px auto;max-width:500px;text-align:right;color:var(--muted,#687168);font-size:.88rem}

.project-meta{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;font-size:.82rem;color:var(--muted,#687168);margin-top:16px}
.climate-tag{background:#edf0eb;padding:5px 8px;border-radius:4px;color:#455347;white-space:nowrap}
@media(max-width:620px){.precedent-controls{gap:12px}.precedent-controls label{flex:1;min-width:125px}.precedent-controls select{min-width:0;width:100%}.precedent-controls p{width:100%;margin:0;max-width:none;text-align:left}.shared-precedent img{width:80px;height:60px}}

.card .strategy-reading{font-size:.84rem;line-height:1.5;color:var(--muted);margin:12px 0 16px}

/* Two-state ordering control, shared by every precedent sort. */
.sort-order{display:grid;gap:8px;font-size:.84rem;color:var(--muted)}
.direction-switch{display:flex;align-items:center;gap:11px;min-height:43px;padding:9px 12px;border:1px solid #bfc7be;border-radius:5px;background:#fff;color:var(--muted);font-family:inherit;font-size:.95rem}
.direction-switch:hover{background:#f5f7f3}.direction-switch:focus-visible{outline:3px solid #486576;outline-offset:3px}
.switch-track{display:block;position:relative;width:36px;height:21px;border-radius:20px;background:#e5e9e2;border:1px solid #9aa496;flex-shrink:0}
.switch-track>span{position:absolute;width:15px;height:15px;border-radius:50%;top:2px;left:2px;background:#344c3b;transition:transform .15s ease}
.direction-switch[aria-checked="true"] .switch-track>span{transform:translateX(15px)}
.direction-switch[aria-checked="false"] .ascending,.direction-switch[aria-checked="true"] .descending{color:var(--ink);font-weight:600}
.precedent-controls+.project-grid{margin-top:28px}
@media(prefers-reduced-motion:reduce){.switch-track>span{transition:none}}
@media(max-width:620px){.sort-order{width:100%;order:2}.direction-switch{width:max-content;max-width:100%}.precedent-controls>p{order:3}}

/* Compact Build a Path layout. */
.path-workspace{margin-top:24px}
.path-workspace>.path-rail{margin-top:0}
.section-layers.is-empty{justify-content:flex-end}
.section-layers.is-empty>p{text-align:right;max-width:100%;margin-left:auto}

/* Compact the surrounding controls without resizing the section artwork. */
.visualiser-heading{padding:12px 18px 0;gap:14px}
.visualiser-heading h2{margin-bottom:2px;line-height:1.15}
.visualiser-heading .eyebrow{line-height:1.2}
.visualiser .dimensions-edit{min-height:34px;padding:6px 10px}
.section-canvas{padding-top:2px}
.section-layers{min-height:0;padding:6px 18px 10px;gap:6px}
.section-layers>p{padding:0;line-height:1.3}
.layer-chip{min-height:28px;padding:5px 8px}
.combination-notes{padding:0 18px 8px}
.combination-notes summary{padding:5px 0}
.combination-notes article{padding:8px 0}
.visualiser-hint{padding-bottom:10px}
@media(max-width:650px){.visualiser-heading{padding:10px 12px 0;gap:10px}.section-layers{padding:6px 12px 10px}.combination-notes{padding-left:12px;padding-right:12px}}

/* Share the header space with layer selection, keeping the artwork at its original size. */
.visualiser-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.visualiser-title{grid-column:1;grid-row:1;min-width:0}
.visualiser-heading .section-layers{grid-column:2;grid-row:1;min-width:0;padding:0;justify-content:flex-end;align-items:center}
.visualiser-heading .dimensions-edit{grid-column:3;grid-row:1}
.visualiser-heading.has-many-layers{row-gap:6px}
.visualiser-heading.has-many-layers .section-layers{grid-column:1/-1;grid-row:2;justify-content:flex-start}
@media(max-width:700px){
  .visualiser-heading{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}
  .visualiser-heading .dimensions-edit{grid-column:2}
  .visualiser-heading .section-layers{grid-column:1/-1;grid-row:2;justify-content:flex-start}
  .visualiser-heading .section-layers.is-empty{justify-content:flex-end}
}

/* The website owns its full-height scrolling surface. */
html,body{height:100%;overflow:hidden}
.site-scroll{height:100vh;height:100dvh;width:100%;overflow-y:scroll;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior-y:contain}
.site-scroll::-webkit-scrollbar{width:13px;background:transparent}
.site-scroll::-webkit-scrollbar-track{background:transparent;border:0}
.site-scroll::-webkit-scrollbar-thumb{background:#9aa197;background-clip:padding-box;border:3px solid transparent;border-radius:8px;min-height:40px}
.site-scroll::-webkit-scrollbar-thumb:hover{background-color:#70796e}
.site-scroll:focus-visible{outline:2px solid #486576;outline-offset:-2px}
@supports not selector(::-webkit-scrollbar){.site-scroll{scrollbar-width:auto;scrollbar-color:#9aa197 transparent}}

/* Keep the presentation exit beside the graphic-development link. */
.footer-exit{display:inline-block;color:inherit;font:inherit;line-height:1.5;text-decoration:none;white-space:nowrap}
.footer-exit:hover,.footer-exit:focus-visible{text-decoration:underline;text-underline-offset:3px}
.footer-exit:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
