.library-page{height:100dvh;overflow:hidden;background:var(--bg)}.library-layout{display:grid;grid-template-columns:208px minmax(0,1fr);height:calc(100dvh - 64px)}.library-nav{background:#fff;border-right:1px solid var(--line);padding:22px 18px;min-width:0;overflow:auto}.library-nav>h2{font-size:15px;margin:27px 0 12px;overflow-wrap:anywhere;font-weight:600}.library-nav>.btn{padding-left:0}.library-nav nav{margin-top:30px;display:grid;gap:8px}.library-nav nav>.btn{text-align:left;min-height:40px;border:0;padding:10px 12px}.library-nav-current{background:var(--brand-50);color:var(--brand);padding:10px 12px;border-radius:5px;display:flex;align-items:center;gap:9px;font-size:14px;font-weight:500}.library-nav>p{font-size:12px;line-height:1.8;color:var(--text-3);margin-top:36px}.library-content{padding:30px 32px;overflow:auto;min-width:0}.library-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.library-heading h1{font-size:26px;font-weight:600;margin:0 0 8px}.library-heading p:last-child{font-size:13px;color:var(--text-2);margin:0}.library-actions{display:flex;gap:10px}.library-actions>.btn{min-height:38px}.library-filters{background:#fff;border:1px solid var(--line);border-radius:7px;padding:16px;display:flex;align-items:flex-end;gap:12px;margin-bottom:22px}.library-filters label{font-size:12px;color:var(--text-2)}.library-filters label:first-child{flex:1;min-width:130px}.library-filters input,.library-filters select{font:inherit;display:block;min-height:36px;padding:7px 9px;border:1px solid #DDE1E7;border-radius:5px;background:#fff;margin-top:7px;width:100%}.library-filters>.btn{min-height:36px}.library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:18px}.library-card{background:#fff;border:1px solid var(--line);border-radius:7px;overflow:hidden;min-width:0}.library-photo{border:0;padding:0;background:#EDF0F4;width:100%;height:155px;display:block;cursor:pointer;position:relative}.library-photo>img{width:100%;height:100%;object-fit:contain;display:block}.library-photo .state-pill{position:absolute;left:10px;bottom:10px;box-shadow:0 0 0 3px #fff9}.library-card-body{padding:13px 14px}.library-card h2{font-size:13px;font-weight:600;margin:0 0 7px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.library-card p{font-size:12px;color:var(--text-2);margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-card small{font-size:11px;color:var(--text-3)}.library-card-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--line-2)}.training-label{font-size:11px;color:#665B88;background:#F2F0F8;padding:3px 6px;border-radius:4px;white-space:nowrap}.training-label[data-scope=not_allowed]{color:#6B7280;background:#F1F2F4}.library-card-foot .btn{font-size:12px;padding:3px 0;border:0;color:var(--brand)}.library-empty{background:#fff;border:1px solid var(--line);border-radius:7px;padding:48px 24px;text-align:center}.library-empty img{object-fit:contain}.library-empty h2{font-size:18px;margin:12px 0 8px;font-weight:500}.library-empty p{font-size:13px;color:var(--text-2);margin:0}.library-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;font-size:12px;color:var(--text-2)}.library-pagination>div{display:flex;align-items:center;gap:14px}.metadata-image{display:flex;align-items:center;gap:16px;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--line)}.metadata-image img{width:110px;height:86px;object-fit:contain;border-radius:5px;background:var(--bg)}.metadata-image>div{min-width:0}.metadata-image b{font-weight:500;overflow-wrap:anywhere;font-size:13px}.metadata-image p{color:var(--text-2);font-size:12px;margin:7px 0}.metadata-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.metadata-fields label{min-width:0;margin:0}.metadata-training{margin-top:25px;border-top:1px solid var(--line);padding-top:18px}.metadata-training summary{cursor:pointer;color:var(--text);font-size:14px}.metadata-training summary>span{float:right;color:var(--text-2);font-size:12px}.metadata-training p{font-size:12px;line-height:1.8;color:var(--text-2)}.metadata-training select{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:5px;min-height:36px;padding:7px;background:#fff}.metadata-version{font-size:11px;color:var(--text-3);margin-top:20px}.metadata-actions{display:flex;justify-content:space-between;gap:12px}.metadata-csv{width:860px}.metadata-csv .file-field{margin-top:14px}.csv-preview-actions{display:flex;align-items:center;gap:14px;margin:18px 0;font-size:12px;color:var(--text-2)}.csv-table-wrap{max-height:310px;overflow:auto}.csv-table-wrap table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.csv-table-wrap th{background:var(--bg);position:sticky;top:0;font-weight:500}.csv-table-wrap th,.csv-table-wrap td{padding:10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;max-width:240px}.csv-table-wrap .csv-invalid{color:#B42318}.metadata-csv .dialog-actions{margin-top:16px}.metadata-drawer .drawer-body{padding-top:10px}
@media(max-width:1150px){.library-layout{grid-template-columns:174px minmax(0,1fr)}.library-content{padding:25px 22px}.library-filters{flex-wrap:wrap}.library-filters label:first-child{min-width:100%;}.library-filters label:not(:first-child){flex:1}.library-heading{align-items:flex-start}.library-actions{flex-direction:column;gap:7px}.library-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}}
@media(max-width:700px){.library-layout{grid-template-columns:minmax(0,1fr)}.library-nav{border-right:0;padding:10px 16px;display:flex;gap:15px;align-items:center;overflow:auto;border-bottom:1px solid var(--line)}.library-nav h2,.library-nav>.role-chip,.library-nav>p,.library-nav nav>.library-nav-current{display:none}.library-nav nav{display:flex;margin:0;gap:8px}.library-layout{grid-template-rows:auto minmax(0,1fr)}.library-nav nav>.btn{white-space:nowrap}.library-content{padding:20px 16px}.library-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.library-photo{height:135px}.metadata-fields{grid-template-columns:1fr}.library-heading h1{font-size:23px}}
