/* Keep the workspace within the viewport; scroll collections independently. */
html,body{height:100%;overflow:hidden}
body{height:100dvh;display:grid;grid-template-rows:56px minmax(0,1fr) 26px}
header{height:auto;padding:0 20px}
main{width:100%;max-width:none;min-height:0;margin:0;padding:12px 16px;gap:14px;grid-template-columns:190px minmax(0,1fr) 260px}
footer{width:100%;max-width:none;margin:0;padding:0 18px;align-items:center;font-size:11px}
.library{position:relative;align-self:stretch;min-height:0;display:flex;flex-direction:column;padding:12px}
.library .section-title{margin-bottom:10px}
.library-help{margin:8px 0;font-size:11px;line-height:1.35}
.library>.library-help:last-child{margin-bottom:0}
.import-button,.folder-button{padding:8px;font-size:12px}
.folder-button{margin-top:6px}
.publisher{margin:8px 0;font-size:11px}
.publisher[open]{position:absolute;left:10px;right:10px;top:90px;z-index:5;padding:12px;background:#182025;border:1px solid var(--accent);border-radius:7px;box-shadow:0 12px 32px #0009}
#gallery{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:5px}
.model-card{margin-top:9px}
.model-card:first-child{margin-top:0}
.model-card img{height:90px}
.model-card strong{padding:8px 9px 3px;font-size:12px}
.model-card small{padding:0 9px 8px;font-size:10px}
#libraryStatus{max-height:65px;overflow:auto;font-size:11px;flex-shrink:0}
.workspace{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:8px}
.toolbar{margin:0;gap:10px;min-width:0}
.toolbar>div{min-width:0}
h1{font-size:20px;margin-top:3px;line-height:1.2}
.eyebrow{font-size:10px}
.quiet{padding:8px 10px;flex-shrink:0;font-size:12px}
.stage{height:100%;min-height:0;aspect-ratio:auto}
.stage-label{top:14px;left:14px;font-size:10px}
.stage-bottom{margin:0;font-size:10px;gap:5px}
.model-description{padding:0 3px;font-size:12px;line-height:1.4;max-height:51px;overflow:auto}
.actionbar{gap:8px 12px;align-content:center}
.actionbar .primary{min-width:0;padding:10px 12px;font-size:13px}
.actionbar .check{font-size:11px;gap:4px}
main>aside{grid-column:auto;align-self:stretch;display:flex;flex-direction:column;min-height:0}
.panel{padding:12px;flex-shrink:0}
.panel .section-title{margin-bottom:12px}
.panel h2{font-size:14px}
.control{font-size:12px;margin-top:12px;margin-bottom:6px}
.range-ends{margin-top:2px;font-size:10px}
.panel:nth-child(2){display:flex;flex-direction:column;flex:1;min-height:70px}
#layers{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.layer{padding:5px;margin:0;font-size:12px;gap:7px}
.layer img{width:30px;height:26px}
.layer small{font-size:9px}
.panel:last-child{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px 10px;font-size:12px}
.panel:last-child .section-title,.panel:last-child .check{grid-column:1/-1;margin:0}
.panel:last-child .section-title{margin-bottom:3px}
#action,#speed{margin:0;padding:6px;min-width:0;font-size:12px}
.panel:last-child .check{font-size:12px}
@media(min-width:1500px){main{grid-template-columns:220px minmax(0,1fr) 290px}.model-card img{height:115px}}
@media(max-width:1000px){main{grid-template-columns:155px minmax(0,1fr) 235px;gap:10px;padding:10px}.library{grid-row:auto;padding:10px}.brand .muted{display:none}.local{font-size:11px}h1{font-size:17px}.model-card img{height:76px}.actionbar .primary{width:100%;justify-content:center}.model-description{max-height:34px}}
@media(max-height:740px){body{grid-template-rows:46px minmax(0,1fr) 22px}main{padding-top:8px;padding-bottom:8px}.panel{padding:9px}.panel .section-title{margin-bottom:7px}.control{margin-top:8px;margin-bottom:3px}.range-ends{display:none}.layer{padding:3px}.layer img{height:22px}.library-help{font-size:10px;margin:5px 0}.model-description{max-height:32px;font-size:11px}.workspace{gap:6px}.actionbar .primary{padding:8px}}
@media(max-width:700px){
 body{grid-template-rows:44px minmax(0,1fr) 0}
 header{padding:0 10px}.local,footer{display:none}
 main{display:grid;grid-template-columns:minmax(0,1fr) 190px;grid-template-rows:106px minmax(0,1fr);gap:8px;padding:8px}
 .library{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:115px minmax(0,1fr);grid-template-rows:22px 30px 26px;gap:4px 8px;padding:7px}
 .library .section-title{margin:0}.library-help,.publisher{display:none}
 .import-button,.folder-button{width:100%;margin:0;font-size:10px;padding:4px}
 #gallery{grid-column:2;grid-row:1/4;display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;padding:0;scrollbar-gutter:auto}
 .model-card{width:108px;min-width:108px;flex-shrink:0;margin:0}
 .model-card img{height:36px}.model-card strong{font-size:10px;padding:3px 5px}.model-card small{display:none}
 #libraryStatus{position:absolute;top:100%;left:0;right:0;background:#182025;z-index:4}
 #publish{position:absolute;bottom:0;left:0;width:115px}
 .workspace{grid-row:2;grid-column:1}
 main>aside{grid-row:2;grid-column:2;width:auto}
 .toolbar{align-items:start}.eyebrow,.stage-label,.stage-bottom,.model-description{display:none}
 .workspace{grid-template-rows:auto minmax(0,1fr) auto}
 h1{font-size:14px}.quiet{font-size:0;padding:5px}.quiet::after{content:'↺';font-size:18px}
 .actionbar{gap:4px}.actionbar .check{font-size:10px}.actionbar .primary{font-size:11px;padding:7px}
 .panel{padding:8px}.panel:last-child{gap:5px}.layer{font-size:10px}.layer small{display:none}
}

