html,body{height:auto;overflow:visible}:root{--lib-gap: 14px;--lib-side-pad: 16px;--lib-top-pad: 18px;--lib-bottom-pad: 80px}.lib-main{max-width:920px;margin:0 auto;padding:var(--lib-top-pad) var(--lib-side-pad) var(--lib-bottom-pad);padding-top:calc(var(--lib-top-pad) + env(safe-area-inset-top,0))}.lib-tabs{display:flex;gap:1px;margin-bottom:16px;border-bottom:1px solid var(--border);align-items:stretch}.lib-tabs-spacer{flex:1}.lib-tab-right{color:var(--text-mute)}.lib-tab{background:transparent;border:0;padding:9px 16px;color:var(--text-dim);font:inherit;font-size:var(--fs-sm);cursor:pointer;border-bottom:1px solid transparent;transition:color .1s,border-color .1s;margin-bottom:-1px}.lib-tab:hover{color:var(--text)}.lib-tab-active{color:var(--text);border-bottom-color:var(--accent)}.lib-upload-zone{display:flex;align-items:center;gap:12px;padding:16px;margin-bottom:14px;background:var(--surface);border:1px dashed var(--border-2);border-radius:var(--radius-md);transition:border-color .12s,background .12s}.lib-upload-zone.drag{border-color:var(--accent);background:var(--accent-bg)}.lib-upload-hint{color:var(--text-mute);font-size:var(--fs-xs)}.lib-progress{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.lib-progress-row{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-left:2px solid var(--border-2);padding:6px 10px;border-radius:var(--radius);font-size:var(--fs-xs)}.lib-progress-row.ok{border-left-color:var(--ok)}.lib-progress-row.err{border-left-color:var(--rec);color:#e88c7a}.lib-progress-row .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.lib-progress-row .bar{width:80px;height:3px;background:var(--bg);border-radius:2px;overflow:hidden}.lib-progress-row .bar>div{height:100%;background:var(--accent);transition:width .12s linear}.lib-progress-row .pct{font-family:var(--font-mono);color:var(--text-dim);width:32px;text-align:right}.lib-progress-row .lib-progress-retry,.lib-progress-row .lib-progress-dismiss{background:transparent;border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:var(--fs-xs);padding:2px 8px;border-radius:var(--radius);cursor:pointer;line-height:1.2}.lib-progress-row .lib-progress-retry:hover,.lib-progress-row .lib-progress-dismiss:hover{background:var(--surface-2)}.lib-progress-row .lib-progress-dismiss{width:22px;padding:2px 0;text-align:center}.lib-progress-row.err .lib-progress-retry{border-color:#e88c7a;color:#e88c7a}.lib-content{display:grid;grid-template-columns:1fr;grid-template-rows:1fr;min-height:100dvh;gap:var(--lib-gap);align-items:start}.lib-content.has-detail{grid-template-columns:minmax(0,1fr) 300px}@media (max-width: 760px){.lib-content.has-detail{grid-template-columns:1fr}}.lib-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px;min-width:0}.lib-content.has-detail .lib-list{grid-template-columns:1fr;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.lib-content.has-detail .lib-item{border:0;border-bottom:1px solid var(--border);border-radius:0;padding:6px 10px;cursor:pointer}.lib-content.has-detail .lib-item:last-child{border-bottom:0}.lib-content.has-detail .lib-item:hover{background:var(--surface-2)}.lib-content.has-detail .lib-item.selected{background:var(--accent-bg)}.lib-content.has-detail .lib-item .meta{display:flex;align-items:center;gap:12px}.lib-content.has-detail .lib-item .name{flex:1}.lib-content.has-detail .lib-item .body{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-dim);width:64px;text-align:center}.lib-content.has-detail .lib-item .date{font-size:var(--fs-xs);color:var(--text-mute);font-family:var(--font-mono);width:84px;text-align:right}.lib-content.has-detail .lib-item .sub,.lib-content.has-detail .lib-item .lib-tags{display:none}.lib-detail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--lib-gap);display:flex;flex-direction:column;gap:12px;position:sticky;top:var(--lib-gap);max-height:calc(100dvh - 2 * var(--lib-gap));overflow-x:hidden;overflow-y:auto;align-self:start;min-width:0}.lib-detail .lib-preview-stack{position:sticky;top:0;background:var(--surface);z-index:1;padding-bottom:8px;margin-bottom:-8px}.lib-detail-preview{width:100%;height:auto;aspect-ratio:1 / 1;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius);image-rendering:pixelated}.lib-preview-stack{display:flex;flex-direction:column;gap:8px}.lib-detail-dirs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.lib-dir-btn{padding:0;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius);cursor:pointer;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;transition:border-color .1s,background .1s}.lib-dir-btn:hover{border-color:var(--accent)}.lib-dir-btn.lib-dir-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--bg))}.lib-dir-btn canvas{width:100%;height:100%;image-rendering:pixelated}.lib-dir-btn[disabled]{opacity:.35;cursor:not-allowed;border-color:var(--border)}.lib-detail-info h3{margin:0;font-size:var(--fs-md);font-weight:600;font-family:var(--font-mono);color:var(--text)}.lib-detail-empty{font-size:var(--fs-sm);color:var(--text-mute)}.lib-detail-form{display:flex;flex-direction:column;gap:8px}.lib-field{display:flex;flex-direction:column;gap:3px;font-size:var(--fs-xs);color:var(--text-dim)}.lib-field input,.lib-field select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:5px 7px;font:inherit;font-family:var(--font-mono);font-size:var(--fs-sm)}.lib-field input:focus,.lib-field select:focus{outline:none;border-color:var(--accent)}.lib-detail-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px}.lib-detail-sub{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-mute);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-detail-meta-row .st-btn{padding:3px 12px;font-size:var(--fs-xs)}.lib-detail-meta-row a.st-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:3px 8px}.cu-audio-preview{display:flex;align-items:center;justify-content:center;background:var(--bg);padding:8px}.cu-audio-preview audio{width:100%;max-width:144px}.cu-inline-label{flex-direction:row!important;align-items:center;gap:6px!important}.cu-inline-label input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);margin:0}.cu-name-label textarea{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:7px 9px;font:inherit;font-family:var(--font-stack);font-size:var(--fs-sm);resize:vertical;min-height:50px}.cu-name-label textarea:focus{outline:none;border-color:var(--accent)}.lib-detail-stats{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:2px 12px;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-dim);margin-top:4px;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);min-width:0}.lib-detail-stats .stat-key{color:var(--text-mute)}.lib-detail-stats .stat-val{color:var(--text);min-width:0;overflow-wrap:anywhere;word-break:break-word}.lib-audio-player{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;background:var(--bg);padding:16px}.lib-audio-player audio{width:100%;max-width:100%}.lib-field-inline{flex-direction:row!important;align-items:center;gap:6px!important;cursor:pointer}.lib-field-inline input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);margin:0}.lib-field .range-with-val{display:flex;align-items:center;gap:8px}.lib-field .range-with-val input[type=range]{flex:1}.lib-field .range-with-val span{width:48px;text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-dim)}.lib-trim-field{gap:8px!important}.lib-trim-head{display:flex;align-items:center;justify-content:space-between}.lib-trim-reset{background:none;border:none;cursor:pointer;color:var(--text-mute);font:inherit;font-size:var(--fs-xs);padding:0;text-decoration:underline}.lib-trim-reset:hover{color:var(--text)}.lib-trim-bar{--trim-yellow: #f6c945;position:relative;height:68px;background:#11161d;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;touch-action:none;user-select:none}.lib-trim-wave{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;pointer-events:none}.lib-trim-dim{position:absolute;top:0;bottom:0;background:#080b10a8;z-index:1;pointer-events:none;display:none}.lib-trim-region{position:absolute;top:0;bottom:0;border-top:3px solid var(--trim-yellow);border-bottom:3px solid var(--trim-yellow);background:#f6c9451a;box-sizing:border-box;z-index:2;pointer-events:none;display:none}.lib-trim-playhead{position:absolute;top:0;bottom:0;width:2px;background:#fff;opacity:.9;box-shadow:0 0 3px #000000b3;z-index:3;pointer-events:none;display:none}.lib-trim-handle{position:absolute;top:-1px;bottom:-1px;width:14px;transform:translate(-50%);background:var(--trim-yellow);border-radius:4px;z-index:4;cursor:ew-resize;touch-action:none;box-shadow:0 0 0 1px #0006,0 1px 5px #0000008c;display:none}.lib-trim-handle:before{content:"";position:absolute;left:50%;top:50%;width:2px;height:42%;transform:translate(-50%,-50%);background:#0000006b;box-shadow:-3px 0 #0000006b,3px 0 #0000006b;border-radius:1px}.lib-trim-handle:after{content:"";position:absolute;inset:0 -13px}.lib-trim-handle:focus-visible{outline:2px solid #fff;outline-offset:1px}@media (hover: none){.lib-trim-handle{width:18px}.lib-trim-handle:after{left:-16px;right:-16px}}.lib-trim-loading{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);z-index:1;text-align:center;pointer-events:none;color:var(--text-mute);font-size:var(--fs-xs);letter-spacing:.02em;display:none}.lib-trim-hint{font-size:var(--fs-xs);color:var(--text-mute);margin:2px 0 0}.lib-trim-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.lib-trim-time{font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-dim)}.lib-trim-play{width:100%}.lib-trim-apply{width:100%;border-color:color-mix(in srgb,#ff8080 50%,var(--border));color:#ffb0b0}.lib-trim-apply:hover:not(:disabled){border-color:#ff8080;color:#fff;background:color-mix(in srgb,#ff8080 16%,var(--surface))}.lib-trim-apply:disabled{opacity:.4;cursor:default}.lib-settings{display:flex;flex-direction:column;gap:12px}.lib-settings-title{margin:0;font-size:var(--fs-md);font-weight:600;letter-spacing:-.01em;color:var(--text)}.lib-settings-hint{margin:-4px 0 0;font-size:var(--fs-xs);color:var(--text-mute)}.lib-settings-rows{display:flex;flex-direction:column;gap:4px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.lib-settings-row{display:grid;grid-template-columns:44px minmax(160px,1fr) 110px minmax(120px,1fr) auto auto;gap:8px;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border)}.lib-settings-row:last-child{border-bottom:0}.lib-settings-row .thumb{width:36px;height:36px}.lib-settings-row input,.lib-settings-row select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:4px 7px;font:inherit;font-family:var(--font-mono);font-size:var(--fs-sm);width:100%;min-width:0}.lib-settings-row input:focus,.lib-settings-row select:focus{outline:none;border-color:var(--accent)}.lib-settings-row .save-btn{padding:3px 10px;font-size:var(--fs-xs)}.lib-settings-row .del-btn{background:transparent;border:0;color:var(--text-mute);cursor:pointer;padding:4px 8px;border-radius:var(--radius);font-family:var(--font-mono);font-size:14px}.lib-settings-row .del-btn:hover{color:var(--rec);background:#c4634a14}.lib-settings-empty{text-align:center;color:var(--text-mute);font-size:var(--fs-sm);padding:24px 20px;background:var(--surface);border:1px dashed var(--border-2);border-radius:var(--radius)}.schema-section{margin-top:4px}.schema-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.schema-section-title{margin:0;font-size:var(--fs-xs);font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.schema-builtin{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.schema-builtin li{display:grid;grid-template-columns:1fr 1fr 100px 1fr;gap:12px;padding:6px 12px;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.schema-builtin li:last-child{border-bottom:0}.schema-builtin .bf-label{color:var(--text)}.schema-builtin .bf-key,.schema-builtin .bf-type,.schema-builtin .bf-note{color:var(--text-mute);font-family:var(--font-mono);font-size:var(--fs-xs)}.schema-rows{display:flex;flex-direction:column;gap:6px}.schema-row{display:grid;grid-template-columns:160px 1fr 110px 1fr auto;gap:8px;align-items:start;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.schema-row>input,.schema-row>select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:4px 7px;font:inherit;font-family:var(--font-mono);font-size:var(--fs-sm);width:100%;min-width:0}.schema-row>input:focus,.schema-row>select:focus{outline:none;border-color:var(--accent)}.schema-row .del-btn{background:transparent;border:0;color:var(--text-mute);cursor:pointer;padding:4px 8px;border-radius:var(--radius);font-size:14px}.schema-row .del-btn:hover{color:var(--rec);background:#c4634a14}.schema-options{grid-column:1 / -1;display:grid;grid-template-columns:160px 1fr;gap:8px;align-items:start;margin-top:4px}.schema-options>span{font-size:var(--fs-xs);color:var(--text-dim);padding-top:4px}.schema-options textarea{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px;font-family:var(--font-mono);font-size:var(--fs-sm);resize:vertical;min-height:50px}.schema-options textarea:focus{outline:none;border-color:var(--accent)}.schema-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}@media (max-width: 700px){.schema-row{grid-template-columns:1fr 1fr auto;grid-template-areas:"key key del" "label label label" "type default default" "opts opts opts"}.schema-row>input:nth-of-type(1){grid-area:key}.schema-row>input:nth-of-type(2){grid-area:label}.schema-row>select{grid-area:type}.schema-row>input:nth-of-type(3){grid-area:default}.schema-row>.del-btn{grid-area:del}.schema-row .schema-options{grid-area:opts}.schema-builtin li{grid-template-columns:1fr 1fr}}@media (max-width: 700px){.lib-settings-row{grid-template-columns:44px 1fr auto;grid-template-areas:"thumb name del" "body body body" "race race race" "save save save"}.lib-settings-row .thumb{grid-area:thumb}.lib-settings-row>input:nth-of-type(1){grid-area:name}.lib-settings-row>select{grid-area:body}.lib-settings-row>input:nth-of-type(2){grid-area:race}.lib-settings-row>.save-btn{grid-area:save}.lib-settings-row>.del-btn{grid-area:del}}.lib-detail-actions-title{margin-top:12px;font-size:var(--fs-xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.lib-detail-actions{display:flex;flex-wrap:wrap;gap:4px}.lib-detail-version{display:flex;flex-direction:column;gap:6px;margin-top:4px}.lib-detail-history{display:flex;flex-direction:column;gap:4px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-dim)}.lib-detail-history-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .1s,background .1s}.lib-detail-history-row:hover{border-color:var(--accent)}.lib-detail-history-row .h-num{color:var(--text-mute);font-weight:600;white-space:nowrap}.lib-detail-history-row .h-meta{display:flex;flex-direction:column;min-width:0}.lib-detail-history-row .h-fname{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-detail-history-row .h-ts{color:var(--text-mute);font-size:var(--fs-xs)}.lib-detail-history-row a.st-btn{padding:2px 8px;font-size:var(--fs-xs);text-decoration:none}.lib-detail-history-row.lib-history-current{background:color-mix(in srgb,var(--accent) 12%,var(--bg))}.lib-detail-history-row.lib-history-current .h-num{color:var(--accent)}.lib-detail-history-row.lib-history-active{outline:2px solid var(--accent);outline-offset:-2px}.lib-item-version{display:inline-block;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-mute);padding:1px 6px;border:1px solid var(--border);border-radius:4px;margin-left:4px;vertical-align:middle}.lib-detail-actions button{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);padding:3px 8px;border-radius:var(--radius);cursor:pointer;letter-spacing:.02em}.lib-detail-actions button:hover{color:var(--text);border-color:var(--border-2)}.lib-detail-actions button.playing{background:var(--accent);border-color:var(--accent);color:#fff}.lib-empty{grid-column:1 / -1;text-align:center;color:var(--text-mute);font-size:var(--fs-sm);padding:40px 20px}.lib-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;display:flex;align-items:center;gap:10px;font-size:var(--fs-sm);min-width:0;transition:border-color .1s,background .1s}.lib-item:hover{background:var(--surface-2);border-color:var(--border-2)}.lib-item .ext{width:36px;text-align:center;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-mute);flex-shrink:0;text-transform:uppercase}.lib-item .meta{flex:1;min-width:0}.lib-item .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-sm);color:var(--text);font-family:var(--font-mono)}.lib-item .sub{color:var(--text-mute);font-size:var(--fs-xs);font-family:var(--font-mono)}.lib-item .del{background:transparent;border:0;color:var(--text-mute);font-size:13px;cursor:pointer;padding:4px 8px;border-radius:var(--radius);font-family:var(--font-mono)}.lib-item .del:hover{color:var(--rec);background:#c4634a14}.lib-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}.lib-tag{display:inline-block;font-size:10px;font-family:var(--font-mono);color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);padding:1px 5px;border-radius:2px;letter-spacing:.02em}.lib-tag-muted{color:var(--text-mute);background:transparent;border-style:dashed}.lib-item .thumb{width:48px;height:48px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;image-rendering:pixelated;overflow:hidden}.lib-item .thumb canvas{image-rendering:pixelated;width:100%;height:100%}.lib-listbar{display:flex;align-items:center;gap:8px;margin-bottom:var(--lib-gap);flex-wrap:wrap}.lib-search{flex:1;min-width:160px;background:var(--surface);border:1px solid var(--border);color:var(--text);font:inherit;font-size:var(--fs-sm);padding:7px 10px;border-radius:var(--radius)}.lib-search:focus{outline:none;border-color:var(--accent)}.lib-search::placeholder{color:var(--text-mute)}.lib-sort{background:var(--surface);border:1px solid var(--border);color:var(--text-dim);font:inherit;font-size:var(--fs-xs);padding:7px 8px;border-radius:var(--radius);cursor:pointer}.lib-bar-btn{flex-shrink:0;background:var(--surface);border:1px solid var(--border);color:var(--text-dim);font-size:14px;line-height:1;width:34px;height:34px;border-radius:var(--radius);cursor:pointer}.lib-bar-btn:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.lib-bar-btn:disabled{opacity:.4;cursor:default}.lib-bar-btn.active{color:var(--text);border-color:var(--accent);background:var(--accent-bg)}.lib-content.has-detail .lib-item{padding-left:calc(10px + var(--depth, 0) * 15px)}.lib-content.has-detail .lib-item[draggable=true]{cursor:grab}.lib-tree-toolbar{display:flex;align-items:center;gap:10px;padding:6px 10px;border-bottom:1px solid var(--border);background:var(--surface)}.lib-newfolder-btn{background:var(--surface-2);border:1px solid var(--border-2);color:var(--text-dim);font:inherit;font-size:var(--fs-xs);font-family:var(--font-mono);padding:3px 9px;border-radius:var(--radius);cursor:pointer}.lib-newfolder-btn:hover{color:var(--text);border-color:var(--accent)}.lib-tree-roothint{font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-mute);opacity:0;transition:opacity .12s}.lib-list.drag-active .lib-tree-roothint{opacity:.55}.lib-tree-toolbar.drop-into .lib-tree-roothint{opacity:1}.lib-folder{display:flex;align-items:center;gap:6px;padding:6px 10px;padding-left:calc(10px + var(--depth, 0) * 15px);border-bottom:1px solid var(--border);background:var(--surface);cursor:pointer;user-select:none;font-size:var(--fs-sm)}.lib-folder:hover{background:var(--surface-2)}.lib-folder-caret{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:12px;border-radius:var(--radius);transition:background .1s,color .1s}.lib-folder-caret:hover{background:var(--surface-2);color:var(--text)}@media (hover: none){.lib-folder-caret{width:30px;height:30px;font-size:15px}}.lib-folder-icon{flex-shrink:0;font-size:13px}.lib-folder-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-weight:600}.lib-folder-count{flex-shrink:0;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-mute);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:0 7px;min-width:20px;text-align:center}.lib-folder-actions{display:flex;gap:4px;flex-shrink:0;opacity:0;transition:opacity .12s}.lib-folder:hover .lib-folder-actions,.lib-folder:focus-within .lib-folder-actions{opacity:1}.lib-folder-act{background:transparent;border:0;color:var(--text-mute);font-size:13px;line-height:1;cursor:pointer;padding:6px 8px;border-radius:var(--radius)}.lib-folder-act:hover{color:var(--text);background:var(--surface-2)}@media (hover: none){.lib-folder-actions{opacity:1}.lib-folder-act{padding:9px 11px;font-size:15px}}.lib-folder:focus-visible,.lib-content.has-detail .lib-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.lib-item.dragging,.lib-folder.dragging{opacity:.45}.lib-folder.drop-into,.lib-tree-toolbar.drop-into{background:var(--accent-bg);box-shadow:inset 0 0 0 2px var(--accent)}.cu-box{max-width:460px}.cu-filename{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-mute);margin:-4px 0 14px;word-break:break-all}.cu-preview-row{display:flex;gap:14px;margin-bottom:14px}.cu-preview{width:144px;height:144px;background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius);image-rendering:pixelated;flex-shrink:0}.cu-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.cu-name-label{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-xs);color:var(--text-dim)}.cu-name-label input{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:7px 9px;font:inherit;font-family:var(--font-mono);font-size:var(--fs-sm)}.cu-name-label input:focus{outline:none;border-color:var(--accent)}.cu-actions-label{font-size:var(--fs-xs);color:var(--text-dim);margin-top:4px}.auth-modal{position:fixed;inset:0;background:#000000c7;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.auth-box{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-md);padding:24px;max-width:360px;width:100%}.auth-box h2{margin:0 0 6px;font-size:var(--fs-lg);font-weight:600;color:var(--text)}.auth-box p{margin:0 0 14px;color:var(--text-dim);font-size:var(--fs-sm)}.auth-box code{background:var(--bg);padding:1px 4px;border-radius:2px;font-family:var(--font-mono);font-size:var(--fs-xs)}.auth-box input{width:100%;box-sizing:border-box;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;font:inherit;font-family:var(--font-mono);font-size:var(--fs-sm);margin-bottom:12px}.auth-box input:focus{outline:none;border-color:var(--accent)}.auth-actions{display:flex;gap:8px;justify-content:flex-end}.auth-error{color:#e88c7a;font-size:var(--fs-xs);margin-top:8px}.st-link-primary{background:var(--accent);color:#fff!important;font-weight:600;padding:5px 12px;border-radius:var(--radius)}.st-link-primary:hover{background:var(--accent-2);color:#fff!important}
