/* Library Rail, sized for the floating studio panel rather than a wide library. */
.stage-dock .sd-panel.lr-panel{width:clamp(300px,var(--st-right,320px),350px);max-width:calc(100% - 32px);background:#1d1427;border-color:#70518365}
.lr-panel .sd-panel-heading{padding:12px 14px;background:#24192e}
.lr-panel .sd-panel-title{gap:8px}
.lr-panel .lr-logo{width:28px;height:26px;object-fit:contain;flex:none}
.lr-panel .lr-brand{display:flex;flex-direction:column;gap:1px}
.lr-panel .lr-brand small{font-size:8px;letter-spacing:1.3px;text-transform:uppercase;color:#a98eba;font-weight:400}
.lr-panel .lr-brand>span{font-size:12px;color:#ead9f6}
.lr-panel .sd-content.lr-body{display:grid;grid-template-columns:47px minmax(0,1fr);gap:0;padding:0;min-height:0;overflow:hidden;align-items:stretch}
.lr-panel .lr-main{display:flex;flex-direction:column;gap:9px;padding:12px 11px;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.lr-panel #o-cats.lr-rail,.lr-panel #h-tabs.lr-rail{display:flex;flex-direction:column;flex-wrap:nowrap;gap:5px;min-width:0;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;padding:10px 4px;margin:0;background:#281b32;border:0;border-right:1px solid #68477a40;align-self:stretch}
.lr-panel .lr-rail .st-cat,.lr-panel .lr-rail>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:none;min-width:0;width:100%;padding:7px 2px;border:1px solid transparent;border-radius:7px;background:none;color:#a68ab8;min-height:43px;box-shadow:none;text-align:center}
.lr-panel .lr-rail .st-cat.on,.lr-panel .lr-rail>button.on{background:#7a4c982b;border-color:#b382d359;color:#e2bff8}
.lr-panel .lr-rail .st-cat>i{display:grid;place-items:center;width:21px;height:21px;border:0;border-radius:4px;background-color:transparent;background-size:contain;opacity:1;filter:none;color:#b291cd}
.lr-panel .lr-rail .st-cat i svg,.lr-panel .lr-tab-icon svg{width:17px;height:17px}
.lr-panel .lr-rail .st-cat i[style*="url("] svg{display:none}
.lr-panel .lr-rail .st-cat span{display:block;flex:none;font-size:8px;font-weight:500;line-height:1.3;letter-spacing:.3px}
.lr-panel .lr-rail .st-cat small{display:none}
.lr-panel .lr-rail .st-toggle{width:23px;height:12px;min-height:12px}
.lr-panel .lr-rail .st-toggle::after{width:8px;height:8px;top:2px;left:2px}
.lr-panel .lr-rail .st-toggle.is-on::after{transform:translateX(11px)}
.lr-panel .lr-tab-icon{display:grid;place-items:center;width:23px;height:23px}
.lr-panel #h-tabs.lr-rail button span{font-size:8px;line-height:1.5;white-space:normal}
.lr-panel .st-head{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:0;flex:none}
.lr-panel .st-head-text{min-width:0}
.lr-panel .st-head h2{font-size:19px;line-height:1.3;font-weight:550;margin:2px 0 0}
.lr-panel .st-head .eyebrow{font-size:8px;letter-spacing:1px}
.lr-panel .st-desc{font-size:10px;line-height:1.65;margin:0;color:#9e86b0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:none}
.lr-panel .lr-filters{display:flex;align-items:center;gap:6px;min-width:0;flex:none}
.lr-panel .lr-filters .st-filter{flex:1;min-width:0;padding:0}
.lr-panel .lr-filters .st-search{min-width:0;width:100%;display:block}
.lr-panel .lr-filters .st-search input{width:100%;min-width:0;height:32px;padding-left:28px;padding-right:8px;font-size:10px;border-radius:7px}
.lr-panel .lr-filters .st-search svg{width:12px;height:12px;left:10px}
.lr-panel #o-pack,.lr-panel #h-pack{flex:none;min-width:0;width:88px;max-width:88px;padding:7px 4px;font-size:9px;height:32px;border-radius:7px}
.lr-panel .lr-upload{flex:none;max-width:118px}
.lr-panel .lr-upload .st-item.upload{display:block;position:static;aspect-ratio:auto;width:auto;height:auto;min-height:30px;padding:0;border:0;border-radius:7px;background:#ac80d1;color:#22122f;font-size:9px;box-shadow:none;cursor:pointer}
.lr-panel .lr-upload .st-item.upload>span{display:flex;align-items:center;justify-content:center;gap:4px;position:static;inset:auto;padding:7px 8px;white-space:nowrap;font-size:9px;font-weight:600}
.lr-panel .lr-upload .st-item.upload>span>b{display:inline;font-size:15px;line-height:1;font-weight:400;margin:0}
.lr-panel .lr-upload .st-item.upload small{display:none}
.lr-panel .lr-upload .st-item.upload:hover{background:#bf98e1}
.lr-panel #o-grid,.lr-panel #h-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:7px;min-height:0;flex:none;padding:0;overflow:visible}
.lr-panel .st-grid>.st-item{height:96px;aspect-ratio:auto;min-width:0;min-height:0;border-radius:7px;order:0}
.lr-panel .st-grid>.st-item.none{grid-column:1/-1;height:34px;min-height:34px;border-style:solid;border-color:#79558f65;background:#271a33;order:3}
.lr-panel .st-grid>.st-item.none>span{position:static;display:flex;align-items:center;gap:7px;padding:8px 10px;font-size:10px;line-height:1.5}
.lr-panel .st-grid>.st-item.none>span::before{content:"⊘";font-size:14px;font-weight:400}
.lr-panel .st-grid>.st-item.none.on{border-color:#bb8ce0a8;background:#8450a22b;color:#e2c0f8}
.lr-panel .st-grid>.st-item.none.on>span::after{content:"✓";margin-left:auto;font-size:12px}
.lr-panel .st-item[role="button"]:focus-visible{outline:2px solid #bd8ce8;outline-offset:2px}
.lr-panel .lr-empty{grid-column:1/-1;order:1;min-height:65px;display:grid;place-items:center;padding:12px 8px;margin:0;color:#9f84b1;text-align:center;font-size:10px;line-height:1.8}
.lr-panel .st-cats-empty,.lr-panel .o-empty{grid-column:1/-1;padding:15px 5px;color:#a38ab5;text-align:center;font-size:10px;line-height:1.8}
.lr-panel .st-pager{display:flex;justify-content:center;align-items:center;gap:3px;padding:0;flex:none}
.lr-panel .st-pager button{min-width:24px;height:25px;padding:4px;font-size:10px;border-radius:5px}
.lr-panel .st-pager button svg{width:11px;height:11px}
.lr-panel .st-pages{gap:3px}
.lr-panel .st-actions{position:sticky;bottom:-12px;padding:10px 0 0;margin:0;background:#1d1427f5;border-top:1px solid #68477a45;flex:none;gap:6px}
.lr-panel .st-actions .btn{min-width:0;font-size:9px;padding:9px 6px;gap:5px;min-height:33px;border-radius:6px}
.lr-panel .st-actions .btn svg{width:13px;height:13px}
.lr-panel .st-pane{display:flex;flex-direction:column;gap:9px;overflow:visible}
.lr-panel.lr-tattoo .sd-content.lr-body,.lr-panel.lr-editor .sd-content.lr-body{display:flex;flex-direction:column}
.lr-panel.lr-tattoo #h-tabs{display:none!important}
.lr-panel.lr-editor #h-tabs.lr-rail{display:flex;flex-direction:row;max-height:none;min-height:53px;padding:5px 10px;border-right:0;border-bottom:1px solid #68477a40;overflow:visible;gap:7px;flex:none}
.lr-panel.lr-editor #h-tabs.lr-rail>button{flex:1;flex-direction:row;gap:7px;padding:7px}
.lr-panel.lr-editor #h-tabs.lr-rail>button span{font-size:10px}
.lr-panel.lr-tattoo .lr-main,.lr-panel.lr-editor .lr-main{overflow:auto}
.lr-panel.lr-tattoo .st-actions{flex-direction:column}
.lr-panel.lr-tattoo .st-actions .btn{width:100%;flex:none;justify-content:center;white-space:nowrap;font-size:10px}
#sd-h-catalog>.lr-fixed-actions{position:static;flex:none;z-index:auto;margin:0;padding:11px 12px;background:#24192e;border-top:1px solid #68477a60;gap:7px}
#sd-h-catalog>.lr-fixed-actions .btn{min-height:35px}
@media(min-width:761px) and (max-width:1200px){.stage-dock .sd-panel.lr-panel{width:clamp(290px,var(--st-right,310px),330px)}}
@media(min-width:761px) and (max-height:780px){.lr-panel .lr-empty{display:none}.lr-panel .lr-main{gap:8px;padding:10px}.lr-panel .st-desc{-webkit-line-clamp:1}.lr-panel .sd-panel-heading{padding:10px 13px}}
@media(max-width:760px){
.stage-dock .sd-panel.lr-panel{max-width:none;width:auto}
.lr-panel .sd-content.lr-body{grid-template-columns:44px minmax(0,1fr)}
.lr-panel .lr-main{padding:11px;gap:9px}
.lr-panel .lr-empty{display:none}
.lr-panel .lr-filters .st-search input{font-size:12px;height:35px}
.lr-panel #o-pack,.lr-panel #h-pack{width:95px;max-width:95px;font-size:10px;height:35px}
.lr-panel .lr-rail .st-cat span{font-size:9px}
.lr-panel .st-grid>.st-item.none{height:36px}
.lr-panel .st-actions .btn{font-size:10px;min-height:35px}
.lr-panel .lr-upload .st-item.upload>span{font-size:10px;padding:9px}
}
