@charset "UTF-8";
:root{--paper:#f5f4ec;--panel:#fffef8;--ink:#173d32;--muted:#626d63;--line:#d8ddcf;--accent:#b56b36;--sage:#e6eadb;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans)}a{color:inherit;text-underline-offset:4px}a:hover{color:#91532c}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.skip{position:fixed;left:16px;top:-100px;padding:12px;background:var(--ink);color:white;z-index:20}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:35px 24px;display:flex;flex-direction:column;background:#eeefe5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:12px;letter-spacing:1.2px;font-weight:750}.brand-mark{font:italic 30px var(--serif);position:relative;letter-spacing:-3px}.brand-mark span{font:14px var(--sans);position:absolute;right:-7px;top:-8px;color:var(--accent)}.brand small{display:block;font-size:10px;letter-spacing:0;font-weight:400;color:var(--muted)}.nav-label{margin:53px 10px 15px;font-size:9px;letter-spacing:1.8px;color:var(--muted)}nav{display:grid;gap:5px}nav a{display:block;border-radius:5px;padding:10px 12px;text-decoration:none;font-size:12px}nav a[aria-current=page]{background:var(--ink);color:var(--panel)}nav a:hover:not([aria-current]){background:#e0e5d7}.sidebar-bottom{margin-top:auto;display:grid;gap:12px;font-size:10px}.sidebar-bottom a{text-decoration:none}.sidebar-bottom span{border-top:1px solid var(--line);padding-top:16px;margin-top:10px;color:var(--muted)}.workspace{min-width:0}.topbar{min-height:71px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:15px 44px;font-size:9px;letter-spacing:1.4px}.topbar a{font-size:11px;letter-spacing:0;text-decoration:none}.topbar-divider{margin:0 10px;color:var(--accent)}main{max-width:1450px;margin:0 auto;padding:46px 44px 68px}h1,h2,h3,p{margin-top:0}h1{font:normal clamp(36px,4vw,60px)/1.08 var(--serif);letter-spacing:-1.6px;margin-bottom:20px}h1 em{color:#72856b;font-weight:400}h2{font:normal 28px/1.2 var(--serif);letter-spacing:-.4px}h3{font:normal 24px/1.2 var(--serif)}.eyebrow{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:650;letter-spacing:1.8px;line-height:1.6;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.lede{color:var(--muted);max-width:660px;font-size:15px;line-height:1.8}.intro-row{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:center;margin-bottom:32px}.intro-row>.focus-note{border-left:2px solid #c6cbb7;padding:20px 0 20px 24px;text-decoration:none}.focus-note strong{display:block;font:normal 26px/1.3 var(--serif);margin:12px 0 22px}.focus-note>span:last-child{font-size:11px;color:var(--muted)}.entry-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:7px;overflow:hidden;margin:16px 0 40px}.entry-strip a{padding:21px 18px;text-decoration:none;border-right:1px solid var(--line);transition:background .15s}.entry-strip a:last-child{border:0}.entry-strip a:hover{background:var(--sage)}.entry-strip span{display:block;color:var(--accent);font-size:9px;letter-spacing:1px;margin-bottom:10px}.entry-strip strong{display:block;font-size:12px;margin-bottom:5px}.entry-strip small{font-size:10px;line-height:1.5;color:var(--muted);display:block}.section{margin-top:40px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:20px}.section-heading h2{margin:0}.section-heading>a{font-size:11px;text-decoration:none}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.asset-card{min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--panel);padding:25px 23px;display:flex;flex-direction:column;position:relative}.asset-card:nth-child(3n+2){background:#edf0e5}.asset-card h3{font-size:27px;margin-bottom:15px}.asset-card h3 a{text-decoration:none}.asset-card p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:25px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.status{font-size:9px;padding:4px 8px;border:1px solid #cdd6c5;border-radius:4px;color:#4f6553;background:#edf1e7;display:inline-block}.arrow{font-size:22px;text-decoration:none}.connection-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--ink);color:var(--panel);margin-top:34px;padding:30px;border-radius:7px}.connection-banner .eyebrow{color:#c0cbb9}.connection-banner h2{font-size:30px;margin-bottom:14px}.connection-banner p:not(.eyebrow){max-width:540px;font-size:12px;color:#c4d0bf;margin-bottom:0}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:5px;text-decoration:none;font-size:12px;padding:11px 17px;line-height:1.5;min-height:43px}.button:hover{background:#2b5545;color:white}.connection-banner .button{background:#dfe7d0;color:var(--ink);white-space:nowrap}.stream-card{display:block;border-top:1px solid #bfc9b8;padding-top:22px;text-decoration:none}.stream-card h3{display:flex;justify-content:space-between}.stream-card p,.stream-card small{font-size:12px;color:var(--muted)}.stream-card small{font-size:10px}.page-heading{margin-bottom:30px;max-width:900px}.page-heading h1{font-size:48px}.library-controls{display:flex;gap:14px;align-items:end;padding:20px;background:var(--sage);border:1px solid var(--line);border-radius:7px}.library-controls label,.brief-form label,.graph-picker{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.search-label{flex:1}input,select,textarea{min-height:44px;border:1px solid #bac4b3;border-radius:4px;padding:9px 11px;color:var(--ink);background:var(--panel);max-width:100%;font-size:13px}textarea{resize:vertical}.text-button{background:none;border:0;color:var(--ink);text-decoration:underline;text-underline-offset:4px;font-size:12px;padding:10px}.compact h3{font-size:23px}.compact p{font-size:12px}#result-count{font-size:11px;color:var(--muted);margin:20px 0}.empty-state{padding:50px;text-align:center;border:1px dashed var(--line)}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.offer-card{display:flex;flex-direction:column;background:var(--panel);padding:25px;border:1px solid var(--line);border-radius:7px}.offer-card h2{font-size:28px}.offer-card p,.offer-card li{font-size:12px;color:var(--muted)}.offer-card h3{font:600 12px var(--sans);margin-top:15px}.offer-card ul{padding-left:18px}.evidence-links{display:grid;gap:8px;margin:10px 0 20px;font-size:11px}.offer-card .button{margin-top:auto}.muted{color:var(--muted)}.reading-path{border:1px solid var(--line);background:var(--panel);padding:30px;border-radius:7px;margin:30px 0}.reading-path p{color:var(--muted);max-width:850px}.reading-path li{padding:8px 0}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:30px 0}.capability-grid h3{font-size:22px}.capability-grid p,.capability-grid a{font-size:12px}.graph-picker{max-width:520px;margin-bottom:24px}.graph-workspace{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.graph-workspace>div,.graph-workspace>aside{border:1px solid var(--line);padding:25px;border-radius:7px;background:var(--panel)}.graph-root{padding:25px;background:var(--ink);color:white;border-radius:6px}.graph-root h2{font-size:24px;margin-bottom:8px}.graph-root p{font-size:11px;color:#c1d1c1;margin:0}.graph-neighbors{padding-left:25px;border-left:1px solid #9eaf95;margin:0 0 0 20px;display:grid;gap:12px;padding-top:22px}.graph-node{display:block;background:var(--sage);text-decoration:none;padding:14px;border-radius:5px;position:relative}.graph-node:before{content:'';position:absolute;width:25px;height:1px;background:#9eaf95;left:-25px;top:50%}.graph-node strong{font:normal 21px var(--serif);display:block;margin-top:5px}.graph-node small{font-size:9px;letter-spacing:1px}.graph-context-item{padding:15px 0;border-bottom:1px solid var(--line)}.graph-context-item h3{font-size:20px}.graph-context-item p{font-size:12px;color:var(--muted)}.relationship-list{display:grid;gap:12px}.relationship-list article{border-bottom:1px solid var(--line);padding:15px 0;font-size:13px}.relationship-list span{margin:0 12px;color:var(--accent);font-size:11px}.relationship-list p{color:var(--muted);font-size:11px;margin:8px 0}.design-tree{max-width:900px}.design-tree section{padding:30px;border:1px solid var(--line);background:var(--panel);border-radius:7px}.design-tree section:nth-of-type(2){background:var(--ink);color:white}.design-tree span{font-size:10px;letter-spacing:1.5px}.design-tree h2{margin:12px 0}.design-tree small{opacity:.75}.tree-arrow{font-size:30px;text-align:center;padding:6px}.tree-branches{display:flex;gap:12px;flex-wrap:wrap}.tree-branches a{padding:10px 13px;border:1px solid var(--line);font-size:12px;border-radius:4px}.brief-form{max-width:750px;display:grid;gap:24px;background:var(--panel);border:1px solid var(--line);padding:30px;border-radius:7px}.brief-form label{font-size:13px}.actions{display:flex;gap:15px;flex-wrap:wrap}.asset-toolbar{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:25px 0}.asset-toolbar>a:last-child{font-size:12px}.back-link{display:block;margin-bottom:25px;font-size:12px;text-decoration:none}.reader{max-width:860px;padding:35px;background:var(--panel);border:1px solid var(--line);border-radius:7px;overflow-wrap:anywhere}.reader h2{font-size:30px;margin-top:30px}.reader h3{font-size:25px;margin-top:25px}.reader p,.reader li{font-size:15px;line-height:1.9}.reader pre{padding:18px;overflow:auto;background:#e9eddf;font-size:12px;line-height:1.6;border-radius:4px}.reader code{font-size:.9em}.related-list{padding:0;list-style:none}.related-list li{padding:15px 0;border-bottom:1px solid var(--line)}.related-list small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.source-details{margin-top:35px;border-top:1px solid var(--line);padding-top:20px;font-size:12px}.source-details summary{cursor:pointer}.source-details p{margin:12px 0;color:var(--muted)}.fingerprint{overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:25px 44px;display:flex;gap:20px;justify-content:space-between;font-size:10px;color:var(--muted)}footer div{display:flex;gap:18px;flex-wrap:wrap}footer a{text-decoration:none}
.card-photo{display:block;margin:-25px -23px 22px;overflow:hidden;border-radius:6px 6px 0 0;background:var(--sage)}.card-photo img{display:block;width:100%;height:170px;object-fit:cover}.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.story-grid .card-photo img{height:210px}.article-gallery{max-width:1000px;display:grid;gap:24px;margin:30px 0}.article-gallery figure{margin:0;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--panel)}.article-gallery img{display:block;width:100%;height:auto;max-height:none}.article-gallery figcaption{padding:12px 18px;color:var(--muted);font-size:11px}.article-gallery figcaption a{display:inline-block;margin-right:8px}
@media(max-width:760px){.story-grid{grid-template-columns:1fr}.card-photo{margin:-24px -24px 22px}.story-grid .card-photo img{height:auto;max-height:280px;object-fit:cover}}
.entry-strip.entries-three{grid-template-columns:repeat(3,minmax(0,1fr))}.collaboration-choices{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.collaboration-choices a{display:flex;flex-direction:column;gap:8px;padding:24px;background:var(--sage);border:1px solid var(--line);border-radius:7px;text-decoration:none}.collaboration-choices strong{font:normal 25px var(--serif)}.collaboration-choices span{font-size:12px;color:var(--muted)}#projects,#research{scroll-margin-top:24px}
@media(max-width:1150px){.entry-strip.entries-three a{border-bottom:0}.entry-strip.entries-three a:nth-child(2){border-right:1px solid var(--line)}}
@media(max-width:760px){.entry-strip.entries-three{grid-template-columns:1fr}.entry-strip.entries-three a,.entry-strip.entries-three a:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}.entry-strip.entries-three a:last-child{border-bottom:0}.collaboration-choices{grid-template-columns:1fr}}
.library-about{margin:-10px 0 26px;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:13px}.library-about summary{cursor:pointer;font-weight:600;width:fit-content}.library-about>div{max-width:760px;padding-top:18px;color:var(--muted)}.about-links{display:flex;flex-wrap:wrap;gap:16px;font-size:12px}.asset-type-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.asset-type-links a{display:block;padding:7px 12px;border:1px solid var(--line);border-radius:5px;font-size:11px;text-decoration:none}.asset-type-links a[aria-current=true]{background:var(--ink);color:white;border-color:var(--ink)}.asset-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-top:15px;margin-top:15px;border-top:1px solid var(--line)}.asset-contact{display:inline-flex;min-height:36px;align-items:center;padding:6px 12px;border:1px solid #b5c3ad;border-radius:5px;font-size:11px;text-decoration:none}.asset-contact:hover{background:var(--sage)}.asset-toolbar .asset-actions{margin:0;padding:0;border:0}
@media(min-width:1600px){main{padding-top:65px}.intro-row{margin-bottom:50px}.asset-card{min-height:270px}}
@media(max-width:1150px){.app-shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:30px 17px}main{padding:34px 28px}.topbar{padding:15px 28px}.intro-row{grid-template-columns:1fr 195px;gap:20px}.card-grid,.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-strip{grid-template-columns:1fr 1fr}.entry-strip a:nth-child(2){border-right:0}.entry-strip a:nth-child(-n+2){border-bottom:1px solid var(--line)}.connection-banner{align-items:start;flex-direction:column}.library-controls{flex-wrap:wrap}.search-label{flex-basis:100%}.capability-grid{grid-template-columns:1fr}.graph-workspace{grid-template-columns:1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;height:auto;padding:20px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin-bottom:18px}.nav-label,.sidebar-bottom{display:none}nav{display:flex;overflow-x:auto;gap:6px;padding:4px 0 8px}nav a{white-space:nowrap;border:1px solid var(--line);font-size:11px;padding:8px 12px}.topbar{padding:13px 20px}.topbar>span{font-size:8px;letter-spacing:.7px}.topbar-divider{margin:0 3px}main{padding:30px 20px 45px}.intro-row{grid-template-columns:1fr}.intro-row>.focus-note{padding:15px 20px;border-left:2px solid var(--accent);background:var(--sage)}.focus-note strong{font-size:23px;margin:5px 0 10px}.focus-note strong br{display:none}.focus-note .eyebrow{margin-bottom:5px}h1,.page-heading h1{font-size:42px;letter-spacing:-1px}.card-grid,.offer-grid{grid-template-columns:1fr}.asset-card{padding:24px}.entry-strip a{padding:16px 12px}.entry-strip strong{font-size:12px}.entry-strip small{font-size:10px}.connection-banner{padding:25px}.section-heading{align-items:start}.section-heading h2{font-size:25px}.library-controls{padding:15px;gap:12px}.library-controls label:not(.search-label){flex:1;min-width:120px}.reading-path,.brief-form,.reader{padding:22px}.reader pre{padding:12px}.asset-toolbar{gap:10px}.graph-workspace>div,.graph-workspace>aside{padding:20px}.tree-branches{display:grid}.design-tree section{padding:23px}footer{padding:22px 20px;flex-direction:column}.relationship-list span{display:block;margin:6px 0}.source-details a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.sidebar,.topbar,footer,.asset-toolbar,button{display:none}.app-shell{display:block}main{padding:0}.reader{max-width:none;border:0}.card-grid{display:block}.asset-card{break-inside:avoid}.source-details{display:block}body{background:white;color:black}}

/* Library-first shell and native modal conversation drawer. */
.app-shell{display:block}.workspace{width:100%}.library-topbar{max-width:1450px;margin:auto;min-height:86px}.library-topbar .brand{margin:0;font-size:12px;letter-spacing:1.2px}.topbar-links{display:flex;align-items:center;gap:24px}.topbar-links>a{font-size:12px}.topbar-links .conversation-trigger{display:inline-flex;align-items:center;gap:12px;background:var(--ink);color:white;padding:11px 17px;border-radius:5px}.conversation-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(540px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:30px;border:0;border-left:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:-18px 0 70px #173d3233;overflow-y:auto;overscroll-behavior:contain}.conversation-panel[open]{animation:conversation-enter .24s ease-out}.conversation-panel::backdrop{background:#173d3266}.conversation-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.conversation-heading h2{font-size:30px;margin:0}.conversation-heading button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--panel);color:var(--ink);font-size:26px}.conversation-description{font-size:13px;color:var(--muted);margin:20px 0}.conversation-panel .brief-form{padding:0;border:0;background:transparent;gap:18px}.conversation-panel .brief-form label{font-size:12px}.conversation-panel .actions{gap:7px}.conversation-panel #brief-status:empty{display:none}@keyframes conversation-enter{from{transform:translateX(100%);opacity:.6}to{transform:translateX(0);opacity:1}}
@media(max-width:760px){.library-topbar{min-height:76px;padding:15px 20px}.topbar-links{gap:12px}.topbar-links>a:first-child{display:none}.topbar-links .conversation-trigger{font-size:11px;padding:10px 12px}.library-topbar .brand small{display:none}.conversation-panel{padding:22px}.conversation-heading h2{font-size:27px}}
@media print{.conversation-panel{display:none!important}}

/* Compact collection header; secondary controls live in side drawers. */
.library-topbar{min-height:64px;padding-top:12px;padding-bottom:12px}.collection-main{padding-top:22px;padding-bottom:40px}.collection-heading h1{font-size:32px;line-height:1.15;letter-spacing:-.6px;margin:0 0 16px}.compact-search{display:flex;gap:10px;align-items:center;margin:0}.compact-search input[type=search]{flex:1;min-width:0;min-height:44px;background:var(--panel);border:1px solid var(--line);padding:10px 14px}.filter-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 17px;border:1px solid var(--line);border-radius:5px;text-decoration:none;font-size:12px;white-space:nowrap}#filter-count:not(:empty){border-radius:12px;background:var(--ink);color:white;min-width:20px;text-align:center;font-size:10px}.collection-main #result-count{margin:12px 0;font-size:11px}.library-topbar .topbar-links #about-trigger{display:inline-flex;align-items:center;padding:10px 13px;border:1px solid var(--line);border-radius:5px;font-size:12px;white-space:nowrap}.about-panel-content{margin-top:26px;font-size:14px;line-height:1.8;color:var(--muted)}.about-panel-content .about-links{display:grid;gap:16px;margin-top:22px}.filters-panel{inset:0 auto 0 0;border-left:0;border-right:1px solid var(--line);width:min(380px,100vw);box-shadow:18px 0 70px #173d3233}.filters-panel[open]{animation:filters-enter .24s ease-out}.filter-group{border:0;padding:0;margin:28px 0}.filter-group legend{font-size:12px;font-weight:600;margin-bottom:12px}.filter-options{display:flex;flex-wrap:wrap;gap:8px}.filter-options button{border:1px solid var(--line);border-radius:5px;padding:9px 13px;min-height:40px;background:var(--panel);color:var(--ink);font-size:12px}.filter-options button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.filter-panel-actions{display:flex;align-items:center;gap:10px}#filter-results{font-size:12px;color:var(--muted)}@keyframes filters-enter{from{transform:translateX(-100%);opacity:.6}to{transform:translateX(0);opacity:1}}
@media(max-width:760px){.library-topbar{padding:12px 16px;gap:10px;flex-wrap:wrap}.library-topbar .brand{font-size:11px}.topbar-links{gap:8px;margin-left:auto}.library-topbar .topbar-links #about-trigger{font-size:11px;padding:8px 10px}.topbar-links .conversation-trigger{font-size:11px;padding:9px 10px}.collection-main{padding:20px 16px 36px}.collection-heading h1{font-size:29px;margin-bottom:13px}.filter-trigger{padding:9px 12px}.compact-search{gap:8px}}

/* Balanced spacing and an explicit asset-type list in the left drawer. */
.library-topbar{min-height:76px;padding-top:16px;padding-bottom:16px}.collection-main{padding-top:34px}.collection-heading h1{font-size:40px;margin:0 0 10px}.collection-heading p{margin:0 0 24px;color:var(--muted);font-size:14px}.compact-search input[type=search],.filter-trigger{min-height:48px}.collection-main #result-count{margin:18px 0}.filters-panel{width:min(410px,100vw)}.asset-type-group{margin-top:28px}.asset-type-group legend{font-size:16px;font-weight:650;margin-bottom:6px}.filter-help{font-size:11px;color:var(--muted);margin:0 0 16px}.asset-type-options{display:grid;grid-template-columns:1fr;gap:8px}.asset-type-options button{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;min-height:46px;padding:10px 14px;font-size:13px}.type-total{font-size:11px;opacity:.75;font-variant-numeric:tabular-nums}.filters-panel .filter-panel-actions{position:sticky;bottom:-30px;background:var(--paper);padding:18px 0;margin-bottom:-12px}
@media(max-width:760px){.library-topbar{min-height:72px;padding:14px 16px}.collection-main{padding-top:28px}.collection-heading h1{font-size:35px}.collection-heading p{font-size:13px;line-height:1.6;margin-bottom:20px}.filter-trigger{font-size:11px;padding:9px 10px}.compact-search input[type=search]{font-size:12px}.filters-panel .filter-panel-actions{bottom:-22px}}

/* Non-modal push sidebar: the collection stays interactive and reflows. */
:root{--filters-width:320px}.app-shell{margin-left:0;transition:margin-left .24s ease}.workspace{container-type:inline-size}body[data-filters-open=true] .app-shell{margin-left:var(--filters-width)}.filters-panel{position:fixed;inset:0 auto 0 0;z-index:20;display:block;width:var(--filters-width);max-width:none;height:100dvh;margin:0;padding:24px;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);color:var(--ink);border:0;border-right:1px solid var(--line);box-shadow:none;transform:translateX(-100%);visibility:hidden;pointer-events:none;transition:transform .24s ease,visibility .24s;animation:none}.filters-panel[aria-hidden=false]{transform:translateX(0);visibility:visible;pointer-events:auto}.filters-panel .conversation-heading h2{font-size:25px}.filters-panel .filter-panel-actions{bottom:-24px;flex-wrap:wrap}.filters-panel .filter-group{margin:24px 0}
@container(max-width:1000px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-topbar{gap:14px;flex-wrap:wrap}}
@container(max-width:600px){.card-grid{grid-template-columns:minmax(0,1fr)}.compact-search{flex-wrap:wrap}.compact-search input[type=search]{flex-basis:100%}.topbar-links{flex-wrap:wrap;margin-left:0}.collection-heading h1{font-size:30px}.asset-card h3{overflow-wrap:anywhere}}
@media(max-width:760px){:root{--filters-width:min(280px,44vw)}.filters-panel{padding:14px}.filters-panel .conversation-heading{gap:6px;align-items:flex-start}.filters-panel .conversation-heading h2{font-size:20px;overflow-wrap:anywhere}.filters-panel .conversation-heading button{width:32px;height:32px;font-size:22px}.filters-panel .filter-options button{padding:8px;font-size:11px}.filters-panel .filter-help{font-size:10px}.filters-panel .filter-panel-actions{bottom:-14px}.filters-panel .filter-panel-actions .button{padding:9px;font-size:11px}body[data-filters-open=true] .collection-main,body[data-filters-open=true] .library-topbar{padding-left:12px;padding-right:12px}body[data-filters-open=true] .brand small{display:none}}

/* Persistent icon rail with draggable, snapping panel widths. */
body[data-filter-layout=rail],body[data-filter-layout=expanded]{--filters-width:64px}body[data-filter-layout=rail] .app-shell,body[data-filter-layout=expanded] .app-shell{margin-left:var(--filters-width)}body[data-filter-layout] .filters-panel{transform:none;visibility:visible;pointer-events:auto;width:var(--filters-width);transition:width .24s ease;padding-right:20px}.panel-stops{display:flex;gap:6px;margin:18px 0}.panel-stops button{background:var(--panel);border:1px solid var(--line);color:var(--ink);padding:6px 9px;border-radius:5px;font-size:10px;min-height:32px}.panel-stops button[aria-pressed=true]{background:var(--ink);color:white}.type-icon{font:20px/1 var(--sans);width:24px;flex-shrink:0;text-align:center}.type-label{flex:1;margin-left:10px}.asset-type-options button{justify-content:flex-start}.type-total{margin-left:auto}#filters-resizer{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;touch-action:none;z-index:25;background:transparent}#filters-resizer:hover,#filters-resizer:focus-visible{background:#9fb3a1}#filters-resizer:after{content:'';position:absolute;top:45%;left:2px;height:48px;width:3px;border-radius:3px;background:#a1af9a}body[data-filter-dragging=true]{cursor:col-resize;user-select:none}body[data-filter-dragging=true] .app-shell,body[data-filter-dragging=true] .filters-panel{transition:none}body[data-filter-layout=rail] .filters-panel{padding:16px 10px 16px 8px}body[data-filter-layout=rail] .filters-panel .conversation-heading{justify-content:center}body[data-filter-layout=rail] .filters-panel .conversation-heading h2,body[data-filter-layout=rail] .panel-stops,body[data-filter-layout=rail] .filters-panel legend,body[data-filter-layout=rail] .filter-help,body[data-filter-layout=rail] .type-label,body[data-filter-layout=rail] .type-total,body[data-filter-layout=rail] .filters-panel .filter-group:not(.asset-type-group),body[data-filter-layout=rail] #filter-results,body[data-filter-layout=rail] .filter-panel-actions{display:none}body[data-filter-layout=rail] .filters-panel .asset-type-group{margin:20px 0 0}body[data-filter-layout=rail] .asset-type-options button{justify-content:center;padding:8px 0;min-height:42px}body[data-filter-layout=rail] .filters-panel .conversation-heading button{width:36px;height:36px}body[data-filter-layout=expanded] .filters-panel .conversation-heading h2{font-size:22px}body[data-filter-layout=expanded] .filters-panel .conversation-heading{gap:8px}body[data-filter-layout=expanded] .filters-panel .conversation-heading button{width:32px;height:32px}

/* Let placement, hierarchy, and control states carry the interface. */
.header-library-title{margin:0;font:normal 30px/1.2 var(--serif);letter-spacing:-.5px}.library-topbar .header-library-link{font:normal 30px/1.2 var(--serif);letter-spacing:-.5px;text-decoration:none}.collection-main{padding-top:25px}.filters-panel .conversation-heading .sidebar-brand{display:block;margin:0;min-width:0}.sidebar-brand .brand{gap:12px;margin:0;font-size:11px;letter-spacing:1px;line-height:1.3}.sidebar-brand .brand-mark{font:italic 28px var(--serif);flex-shrink:0}.sidebar-brand .brand-name{min-width:0;white-space:nowrap}.sidebar-brand .brand small{font-size:9px;line-height:1.6;letter-spacing:0;font-weight:400;color:var(--muted)}body[data-filter-layout=rail] .filters-panel .conversation-heading{flex-direction:column;gap:14px}body[data-filter-layout=rail] .sidebar-brand .brand-name{display:none}body[data-filter-layout=rail] .sidebar-brand .brand{justify-content:center;padding:5px 4px}body[data-filter-layout=rail] .filters-panel .asset-type-group{margin-top:16px}.asset-card{transition:border-color .16s ease}.asset-card:hover{border-color:#a1b198}.filter-options button:hover:not([aria-pressed=true]){border-color:#9aad94;background:#edf0e5}.panel-stops button:hover:not([aria-pressed=true]){background:var(--sage)}
@media(max-width:760px){.library-topbar .header-library-link,.header-library-title{font-size:26px}.collection-main{padding-top:20px}.sidebar-brand .brand-name{overflow:hidden;text-overflow:ellipsis}.sidebar-brand .brand{gap:8px;font-size:10px}.sidebar-brand .brand small{display:none}}

/* In-place asset canvas; the library and rail remain mounted. */
.viewer-toolbar{display:flex;align-items:center;gap:16px;padding:0 0 16px;border-bottom:1px solid var(--line)}.viewer-toolbar h2{font:normal 22px/1.35 var(--serif);margin:0;flex:1;min-width:0}.viewer-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.viewer-actions a{font-size:12px;text-decoration:none}#viewer-status{font-size:12px;color:var(--muted);margin:12px 0}#viewer-status:empty{display:none}#viewer-canvas{margin-top:16px;min-height:320px}.asset-frame{display:block;width:100%;height:calc(100dvh - 185px);min-height:480px;background:white;border:1px solid var(--line);border-radius:7px}#viewer-canvas .reader{max-width:100%;margin:0}body[data-asset-open=true] footer{display:none}body[data-asset-open=true] .collection-main{padding-top:18px;padding-bottom:16px}
@container(max-width:700px){.viewer-toolbar{flex-wrap:wrap;gap:8px}.viewer-toolbar h2{order:3;flex-basis:100%;font-size:20px}.viewer-actions{margin-left:auto}.asset-frame{height:calc(100dvh - 220px);min-height:400px}}

/* One header row for library navigation, current asset, and workspace actions. */
.library-topbar{gap:16px;flex-wrap:nowrap;transition:min-height .2s,padding .2s}.library-topbar .viewer-toolbar{flex:1;min-width:0;padding:0;border:0;gap:10px;flex-wrap:nowrap}.library-topbar .viewer-toolbar h2{font-size:18px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;order:initial;flex:1}.library-topbar .viewer-toolbar button{flex-shrink:0;min-height:36px}.library-topbar .topbar-links{gap:10px;margin-left:auto;flex-shrink:0;flex-wrap:nowrap}.control-icon,.viewer-asset-mark{display:none}.header-collapse{display:inline-grid;place-items:center;width:34px;height:34px;flex-shrink:0;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--ink);font-size:20px;cursor:pointer}.library-topbar .header-library-title{flex-shrink:0}body[data-asset-open=true] .header-library-link{font-size:22px}body[data-asset-open=true] .collection-main{padding-top:12px;padding-bottom:12px}body[data-asset-open=true] #viewer-canvas{margin-top:0}.asset-frame{height:calc(100dvh - 110px);min-height:400px}body[data-header-compact=true] .library-topbar{min-height:48px;padding-top:6px;padding-bottom:6px;gap:12px}body[data-header-compact=true] .library-topbar .control-label{display:none}body[data-header-compact=true] .library-topbar .control-icon,body[data-header-compact=true] .viewer-asset-mark{display:inline-block;font-size:20px}body[data-header-compact=true] #viewer-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}body[data-header-compact=true] .library-topbar .viewer-toolbar{flex:0 1 auto}body[data-header-compact=true] .library-topbar .topbar-links #about-trigger,body[data-header-compact=true] .topbar-links .conversation-trigger{padding:6px 10px;min-height:34px}body[data-header-compact=true] .asset-frame{height:calc(100dvh - 82px)}
@container(max-width:1000px){body[data-asset-open=true] .library-topbar .topbar-links .control-label{display:none}body[data-asset-open=true] .library-topbar .topbar-links .control-icon{display:inline-block;font-size:18px}body[data-asset-open=true] .library-topbar .topbar-links #about-trigger,body[data-asset-open=true] .topbar-links .conversation-trigger{padding:7px 9px}body[data-asset-open=true] .library-topbar .header-library-link .control-label{display:none}body[data-asset-open=true] .library-topbar .header-library-link .control-icon{display:inline-block}}
@media(max-width:760px){.library-topbar{gap:8px}.library-topbar .topbar-links{gap:6px}.library-topbar .topbar-links .control-label{display:none}.library-topbar .topbar-links .control-icon{display:inline-block;font-size:18px}.library-topbar .topbar-links #about-trigger,.topbar-links .conversation-trigger{padding:7px 9px}.library-topbar .viewer-toolbar{gap:4px}.library-topbar .viewer-toolbar h2{font-size:16px}.library-topbar #viewer-share .control-label{display:none}.library-topbar .viewer-toolbar button{padding:6px}.header-collapse{width:30px;height:32px}.library-topbar .header-library-link{font-size:24px}}

/* Search shares the library header; asset views keep the title as their focus. */
.library-topbar .compact-search{flex:1;min-width:100px;max-width:520px;margin:0;gap:0;flex-wrap:nowrap}.library-topbar .compact-search input[type=search]{width:100%;min-width:0;min-height:40px;flex:1;font-size:13px;letter-spacing:0}body[data-asset-open=true] .library-topbar .compact-search{display:none}
@container(max-width:1000px){.library-topbar .topbar-links .control-label{display:none}.library-topbar .topbar-links .control-icon{display:inline-block;font-size:18px}.library-topbar .topbar-links #about-trigger,.library-topbar .topbar-links .conversation-trigger{padding:7px 9px}}
@container(max-width:540px){.library-topbar .header-library-link .control-label{display:none}.library-topbar .header-library-link .control-icon{display:inline-block;font-size:22px}.library-topbar{padding-left:10px;padding-right:10px;gap:6px}.library-topbar .topbar-links{gap:4px}.library-topbar .compact-search input[type=search]{padding:8px;font-size:12px}.library-topbar .topbar-links #about-trigger,.library-topbar .topbar-links .conversation-trigger{padding:6px}.library-topbar .header-collapse{width:26px}}

/* The expanded rail uses the wordmark alone. */
body[data-filter-layout=rail] .filters-panel .conversation-heading .sidebar-brand{display:none}

/* Shared type scale for the library shell and generated readers. */
:root{--type-caption:.75rem;--type-label:.875rem;--type-body:1rem;--type-card-title:1.5rem}
body{font-size:var(--type-body)}
.sidebar-brand .brand{font-size:1rem;font-weight:750;letter-spacing:.045em;line-height:1.3}
.sidebar-brand .brand-name{white-space:normal;overflow:visible;text-overflow:clip}
.sidebar-brand .brand small{display:block;font-size:var(--type-caption);line-height:1.5;margin-top:5px}
.filters-panel .conversation-heading{align-items:center}
.filters-panel .filter-group legend{font-size:var(--type-label);line-height:1.4}
.filters-panel .filter-options button{font-size:var(--type-label);line-height:1.45}
.filters-panel .asset-type-options button{padding-left:10px;padding-right:10px}
.type-label{margin-left:8px}.type-total{font-size:var(--type-caption)}
.library-topbar .topbar-links #about-trigger,.library-topbar .topbar-links .conversation-trigger{font-size:var(--type-label);line-height:1.4}
.library-topbar .compact-search input[type=search]{font-size:var(--type-body);line-height:1.4}
.library-topbar .viewer-toolbar h2{font-size:1.25rem}
.asset-card h3,.asset-card.compact h3{font-size:var(--type-card-title);line-height:1.25;letter-spacing:-.025em}
.asset-card p,.asset-card.compact p{font-size:var(--type-label);line-height:1.7}
.eyebrow{font-size:var(--type-caption);letter-spacing:.08em;line-height:1.5}
.status{font-size:var(--type-caption);line-height:1.4}
.collection-main #result-count,#result-count,#filter-results,#viewer-status{font-size:var(--type-label)}
.button,.text-button,.filters-panel .filter-panel-actions .button,.about-links,.about-panel-content .about-links{font-size:var(--type-label)}
.about-panel-content,.conversation-description{font-size:var(--type-body);line-height:1.75}
.brief-form label,.conversation-panel .brief-form label{font-size:var(--type-label)}
input,select,textarea{font-size:var(--type-body)}
.reader p,.reader li{font-size:var(--type-body);line-height:1.8}
.reader pre{font-size:var(--type-label)}
.source-details,.related-list small,.article-gallery figcaption,footer{font-size:var(--type-caption);line-height:1.6}
.graph-root p,.graph-context-item p,.relationship-list p,.evidence-links,.offer-card p,.offer-card li,.tree-branches a{font-size:var(--type-label);line-height:1.65}
.graph-node small,.relationship-list span,.design-tree span{font-size:var(--type-caption)}
@media(max-width:760px){.sidebar-brand .brand{font-size:1rem}.library-topbar .viewer-toolbar h2{font-size:1.125rem}}

/* Sorting is collection state, alongside the result count. */
.collection-order{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.collection-order label{display:flex;align-items:center;gap:8px;font-size:var(--type-label);color:var(--muted)}
.collection-order select{font-size:var(--type-label);min-height:40px;background:var(--panel)}
.collection-order #result-count{margin:0}.asset-card p.asset-date{font-size:var(--type-caption);margin:0 0 12px;font-variant-numeric:tabular-nums}
