.lc-library{color:var(--text,#eee);background:var(--panel,#171522);border:1px solid var(--line,#ffffff25);border-radius:14px;padding:18px;min-width:0;box-sizing:border-box;overflow-wrap:anywhere}
.lc-library *{box-sizing:border-box}.lc-library header{display:block!important;position:static!important;padding:0!important;background:none!important;min-height:0!important;border:0!important}.lc-library h3{margin:0 0 8px;font-size:19px}.lc-library p{line-height:1.5}.lc-library .lc-toolbar,.lc-library .lc-actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.lc-library .lc-search{flex:1 1 250px;min-width:0}.lc-library label{display:grid;gap:7px;font-size:13px}.lc-library input,.lc-library textarea{width:100%;min-width:0;max-width:100%;padding:10px!important;border:1px solid var(--line,#ffffff35);border-radius:8px;background:var(--bg,#100d19);color:inherit;font:inherit}.lc-library textarea{resize:vertical}.lc-library button{width:auto!important;min-height:44px;padding:9px 13px!important;font:inherit;font-size:13px;font-weight:600;color:inherit;background:var(--panel2,#241d31);border:1px solid var(--line,#ffffff35);border-radius:8px;cursor:pointer;white-space:normal}.lc-library button:disabled{opacity:.5;cursor:wait}.lc-library button:focus-visible,.lc-library summary:focus-visible,.lc-library input:focus-visible,.lc-library textarea:focus-visible{outline:2px solid #b479ed;outline-offset:3px}.lc-library [data-lc=add],.lc-library [data-lc=save]{background:linear-gradient(110deg,#397caa,#8d45b6);color:white;border-color:transparent}.lc-library .lc-message{min-height:22px;margin:12px 0}.lc-library .lc-form{display:grid;gap:14px;margin:14px 0 22px;padding:16px;border:1px solid var(--line,#ffffff35);border-radius:10px}.lc-library [hidden]{display:none!important}.lc-library .lc-actions{justify-content:flex-end}.lc-library .lc-record{margin:10px 0;border:1px solid var(--line,#ffffff25);border-radius:9px;overflow:hidden}.lc-library summary{cursor:pointer;padding:14px;min-height:44px}.lc-library summary strong{font-size:15px}.lc-library summary small{display:block;margin-top:6px;opacity:.75}.lc-library .lc-record-body{padding:0 14px 14px}.lc-library pre{white-space:pre-wrap;word-break:break-word;font:inherit;font-size:14px;line-height:1.6;margin:8px 0 16px}.lc-library .lc-muted,.lc-library small{opacity:.8}.lc-library .lc-empty{padding:20px 0;opacity:.8}.lc-library a{color:inherit;text-decoration:underline}
@media(max-width:600px){.lc-library{padding:14px}.lc-library .lc-toolbar{align-items:stretch}.lc-library .lc-search{flex-basis:100%}.lc-library .lc-toolbar>button{flex:1}.lc-library .lc-form{padding:12px}.lc-library .lc-actions>button{flex:1}}

.lc-library select{min-height:44px;max-width:100%;padding:9px;border:1px solid var(--line,#ffffff35);border-radius:8px;background:var(--bg,#100d19);color:inherit;font:inherit}.lc-library select:focus-visible{outline:2px solid #b479ed;outline-offset:3px}.lc-library .lc-confirm{padding:14px;margin:14px 0;border:1px solid var(--line,#ffffff35);border-radius:10px}.lc-library .lc-confirm button{margin:0 8px 6px 0}.lc-library .lc-record .lc-actions{justify-content:flex-start}

/* Give native Mobile typography enough room without splitting button words. */
.lc-library button{word-break:normal;overflow-wrap:normal}
@media(max-width:600px){.lc-library .lc-toolbar>label:not(.lc-search){flex-basis:100%}.lc-library .lc-toolbar>button{flex:1 1 130px;min-width:130px}.lc-library .lc-record .lc-actions>button{flex:1 1 120px;min-width:120px}}
