/* Collection credentials: shared admin page, isolated visual treatment. */
body.collector-keys-page { --ink:#162a26; --muted:#647970; --line:#e1eae6; --accent:#07845e; --bg:#f3f8f6; background:var(--bg); }
.collector-keys-page.material-library-page.app-page { padding-top:64px; }
.collector-keys-page.material-library-page .app-topbar { height:64px; }
.collector-keys-page.material-library-page .admin-shell { max-width:1760px; padding:26px 32px 32px; }
.collector-keys-page.material-library-page .app-brand small, .collector-keys-page.material-library-page .sidebar-account small { display:block; }
.collector-keys-page .page-heading { margin-bottom:26px; }
.collector-keys-page .library-heading h1 { font-size:34px; letter-spacing:-.6px; }
.collector-keys-page #admin-description { margin:5px 0 0; color:var(--muted); line-height:1.7; }
.collector-keys-page #admin-description:not([hidden]) { display:block; }
.collector-keys-page .library-navigation, .collector-keys-page .library-search { display:none; }
.collector-dashboard[hidden], .collector-dashboard [hidden] { display:none!important; }
.collector-symbols { position:absolute; width:0; height:0; overflow:hidden; }
.collector-dashboard svg:not(.collector-hero-art):not(.collector-symbols) { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.collector-hero { position:relative; display:flex; align-items:center; min-height:228px; padding:28px; border:1px solid #fff; border-radius:16px; overflow:hidden; background:linear-gradient(115deg,#fbfefc 0%,#edf9f3 57%,#dcf2e8 100%); box-shadow:0 3px 12px #254d3805; }
.collector-hero::after { content:''; position:absolute; width:460px; height:360px; border-radius:50%; right:-60px; bottom:-210px; background:#fff5; transform:rotate(-30deg); }
.collector-hero-copy { position:relative; z-index:1; flex:1; min-width:0; padding-right:320px; }
.collector-hero-heading { display:flex; align-items:center; gap:22px; }
.collector-hero-heading h2 { margin:0 0 4px; color:var(--ink); font-size:24px; }
.collector-hero-heading p { color:var(--muted); margin:0; line-height:1.8; }
.collector-glyph { display:grid; place-items:center; width:56px; height:56px; flex:none; border-radius:50%; color:#04996b; background:#ddf3e8; }
.collector-glyph.collector-lock { width:80px; height:80px; background:linear-gradient(135deg,#e3f7ee,#d1ecdf); }
.collector-dashboard .collector-lock svg { width:40px!important; height:40px!important; }
.collector-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:26px; }
.collector-benefits>div { display:flex; align-items:center; gap:14px; }
.collector-benefits h3 { font-size:17px; margin:0 0 3px; }
.collector-benefits p { color:var(--muted); margin:0; font-size:14px; white-space:nowrap; }
.collector-hero-art { position:absolute; z-index:1; width:365px; height:250px; right:5px; bottom:-8px; }
.collector-columns { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:26px; margin-top:26px; align-items:stretch; }
.collector-dashboard .card { margin:0; min-width:0; padding:26px; border:1px solid #eaf0ec; border-radius:16px; background:#fff; box-shadow:0 3px 8px #254d3804; }
.collector-card-heading { display:flex; gap:18px; align-items:center; margin-bottom:26px; }
.collector-card-heading h2 { font-size:21px; margin:0 0 3px; }
.collector-card-heading p { margin:0; color:var(--muted); }
.collector-plus { width:46px; height:46px; border-radius:14px; font-size:34px; font-weight:600; background:linear-gradient(135deg,#edf9f2,#ddf3e8); }
.collector-form { display:grid; grid-template-columns:110px minmax(0,1fr); gap:20px 16px; align-items:start; }
.collector-form>label { padding-top:13px; margin:0; color:var(--ink); }
.collector-required { color:#ed5262; }
.collector-field { min-width:0; }
.collector-name-input, .collector-days-input { display:flex; align-items:center; min-width:0; border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.collector-form input, .collector-form select { width:100%; min-width:0; margin:0; min-height:50px; color:var(--ink); border-radius:10px; border-color:var(--line); background:#fff; }
.collector-form input::placeholder { color:#83948c; }
.collector-form .collector-name-input input, .collector-form .collector-days-input input { border:0; border-radius:0; box-shadow:none; }
.collector-name-input:focus-within, .collector-days-input:focus-within { outline:3px solid #80bca5; outline-offset:2px; }
.collector-name-input input:focus-visible, .collector-days-input input:focus-visible { outline:none; }
.collector-name-input>span { padding:0 14px 0 4px; color:#7d9186; font-size:14px; white-space:nowrap; }
.collector-days-input>span { align-self:stretch; display:grid; place-items:center; padding:0 17px; border-left:1px solid var(--line); background:#f7faf8; }
.collector-field p { margin:4px 0 0; font-size:14px; color:#788c80; }
.collector-form-actions { grid-column:2; display:flex; justify-content:flex-end; }
.collector-dashboard #collector-submit { display:flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:12px 26px; border:0; border-radius:11px; background:linear-gradient(130deg,#0ba777,#07845e); color:white; box-shadow:0 3px 8px #07845e19; }
.collector-dashboard #collector-submit:hover { background:#077654; }
.collector-dashboard #collector-submit:disabled { opacity:.5; cursor:not-allowed; }
.collector-list-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:18px; }
.collector-list-heading h2 { display:flex; align-items:center; gap:10px; margin:0; font-size:19px; }
.collector-list-heading svg { color:#09956a; width:21px!important; height:21px!important; }
.collector-list-heading button { padding:4px 0; min-height:32px; border:0; background:none; color:var(--accent); box-shadow:none; white-space:nowrap; font-size:14px; }
.collector-record { display:grid; grid-template-columns:36px minmax(0,1fr) auto 32px; align-items:center; gap:12px; padding:8px 12px; margin:5px -6px 0; min-height:64px; border:1px solid #f0f4f1; border-radius:12px; background:linear-gradient(110deg,#fff,#fbfdfc); }
.collector-record-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:9px; background:linear-gradient(135deg,#24bd8c,#078460); color:#fff; }
.collector-record-icon[data-tint="1"] { background:linear-gradient(135deg,#738e84,#354c45); }
.collector-record-icon[data-tint="2"] { background:linear-gradient(135deg,#fcb36c,#e89041); }
.collector-record-icon[data-tint="3"] { background:linear-gradient(135deg,#43c5b9,#1c998e); }
.collector-record-icon[data-tint="4"] { background:linear-gradient(135deg,#a28adc,#7966b9); }
.collector-dashboard .collector-record-icon svg { width:21px; height:21px; }
.collector-record-copy { min-width:0; }
.collector-record h3 { margin:0; font-size:16px; line-height:1.5; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.collector-record-copy p { margin:2px 0 0; color:#788c80; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.collector-status { white-space:nowrap; padding:3px 10px; border-radius:20px; color:#087f57; background:#e3f6ed; font-size:14px; }
.collector-status[data-state="expired"] { background:#eef2f4; color:#657581; }
.collector-status[data-state="revoked"] { background:#fff0f1; color:#d84c60; }
.collector-menu { position:relative; margin:0; padding:0; border:0; }
.collector-menu>summary { display:grid; place-items:center; width:32px; min-height:36px; padding:0; border:0; border-radius:9px; list-style:none; color:#7c8f84; background:#f6f9f7; cursor:pointer; font-size:13px; }
.collector-menu>summary::-webkit-details-marker { display:none; }
.collector-menu-content { position:absolute; right:0; top:42px; z-index:10; width:244px; padding:14px; border:1px solid var(--line); border-radius:12px; background:white; box-shadow:0 8px 30px #153d2d20; }
.collector-menu-content p { font-size:14px; color:var(--muted); margin:0 0 8px; }
.collector-menu-content button { color:#bf4250; width:100%; min-height:38px; padding:6px 12px; background:#fff7f7; border-color:#f6dadd; }
.collector-list-empty { display:grid; place-content:center; min-height:280px; text-align:center; margin:0; color:var(--muted); }
.collector-dashboard .collector-receipt { margin:24px 0 0; }
.collector-dashboard .collector-receipt input { width:100%; font-family:monospace; }
@media(min-width:1600px) { .collector-hero-copy { padding-right:410px; }.collector-hero-art { width:430px; height:270px; right:20px; }.collector-dashboard .card { padding:28px; }.collector-record-copy p { font-size:14px; }.collector-columns { gap:28px; } }
@media(max-width:1250px) { .collector-hero-copy { padding-right:220px; }.collector-hero-art { width:280px; right:-30px; }.collector-benefits { gap:12px; }.collector-benefits>div { gap:8px; }.collector-benefits .collector-glyph { width:42px; height:42px; }.collector-columns { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:18px; }.collector-dashboard .card { padding:22px; }.collector-form { grid-template-columns:96px minmax(0,1fr); gap:18px 10px; }.collector-record { gap:8px; padding:10px 8px; grid-template-columns:32px minmax(0,1fr) auto 28px; }.collector-record-icon { width:32px; height:32px; }.collector-status { padding:3px 7px; } }
@media(max-width:1100px) { .collector-hero-copy { padding-right:0; }.collector-hero-art { display:none; }.collector-columns { grid-template-columns:minmax(0,1fr); }.collector-form { grid-template-columns:110px minmax(0,1fr); }.collector-record-copy p { font-size:14px; }.collector-list-empty { min-height:160px; } }
@media(max-width:600px) { .collector-keys-page.material-library-page .admin-shell { padding:24px 16px; }.collector-keys-page .library-heading h1 { font-size:28px; }.collector-hero { padding:22px 18px; }.collector-hero-heading { gap:14px; align-items:flex-start; }.collector-glyph.collector-lock { width:52px; height:52px; }.collector-dashboard .collector-lock svg { width:28px!important; height:28px!important; }.collector-hero-heading h2 { font-size:21px; }.collector-hero-heading p { font-size:14px; }.collector-benefits { grid-template-columns:1fr; gap:16px; margin-top:24px; }.collector-benefits>div { gap:14px; }.collector-benefits h3 { font-size:16px; }.collector-columns { gap:20px; margin-top:20px; }.collector-dashboard .card { padding:22px 18px; }.collector-card-heading { gap:12px; margin-bottom:24px; }.collector-card-heading p { font-size:14px; }.collector-form { grid-template-columns:1fr; gap:8px; }.collector-form>label { padding:0; }.collector-field { margin-bottom:10px; }.collector-form-actions { grid-column:1; }.collector-dashboard #collector-submit { width:100%; }.collector-list-heading h2 { font-size:18px; }.collector-record { grid-template-columns:32px minmax(0,1fr) auto; padding:12px 8px; }.collector-status { grid-column:2; grid-row:2; justify-self:start; }.collector-menu { grid-column:3; grid-row:1 / 3; }.collector-record-copy p { font-size:13px; }.collector-record-icon { align-self:start; margin-top:4px; }.collector-record-copy { grid-column:2; }.collector-record { row-gap:5px; }.collector-menu-content { width:230px; }.collector-list-heading button { font-size:13px; } }

/* The material catalog and preview share one viewport on desktop. */
.material-library-page { --ink:#1d2a38; --muted:#6a798b; --line:#e3eae8; --bg:#f3f7f6; --accent:#107854; }
.material-library-page.app-page { padding-top:56px; }
.material-library-page .app-topbar { height:56px; }
.material-library-page .admin-shell { max-width:1900px; padding:22px 24px; }
.admin-shell .page-heading { margin:0 0 18px; gap:24px; flex-wrap:nowrap; align-items:center; }
.library-heading { display:block; min-width:0; }
.library-heading h1 { white-space:nowrap; margin:0; color:#111b22; }
.library-heading p { color:var(--muted); font-size:16px; }
.library-search { position:relative; margin:0; width:min(430px,38%); flex-shrink:0; }
.library-search svg { position:absolute; left:14px; top:13px; width:18px; height:18px; color:#8b99aa; }
.admin-shell .library-search input { min-height:44px; padding:10px 14px 10px 42px; font-size:16px; background:#fff; border:1px solid #dfe7eb; }
.library-navigation { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:12px; }
.admin-shell .admin-tabs.detail-pane-tabs { position:static; padding:0; display:flex; flex-wrap:wrap; gap:2px; background:transparent; border:0; margin:0; }
.admin-shell .admin-tabs button { min-height:44px; padding:10px 16px; border:1px solid transparent; border-radius:9px; color:var(--muted); background:transparent; font-size:16px; white-space:nowrap; }
.admin-shell .admin-tabs [aria-selected="true"], .admin-shell .admin-tabs [aria-pressed="true"] { color:var(--accent); background:#fff; border-color:#e4eeea; border-bottom:2px solid var(--accent); font-weight:600; }
.admin-shell .admin-tabs [data-detail-pane="list"] { display:none; }
.library-options { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.admin-shell .library-options select { min-height:44px; width:124px; font-size:16px; padding:6px 8px; background:transparent; border-color:transparent; }
.library-tools { position:relative; margin:0; border:0; }
.library-tools>summary { cursor:pointer; font-size:16px; color:var(--muted); padding:6px 0; min-height:44px; }
.library-tools-menu { position:absolute; right:0; top:38px; width:330px; max-width:calc(100vw - 40px); z-index:25; padding:16px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 40px #203b2b1a; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.library-tools-menu button, .library-tools-menu .button-link { min-height:38px; font-size:16px; padding:8px; }
.admin-shell #metrics { grid-column:1/-1; margin:4px 0 0; padding:10px 0 0; color:var(--muted); font-size:16px; border-top:1px solid var(--line); }
.admin-shell #metrics details { margin:8px 0 0; border:0; }
.admin-shell #metrics summary, .admin-shell #metrics p { font-size:16px; margin:0; padding:0; min-height:0; }
.admin-shell .admin-columns.work-detail { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:16px; align-items:start; }
.admin-shell .work-detail>.card { min-width:0; padding:18px; margin:0; border:1px solid #e9efed; border-radius:16px; box-shadow:0 2px 12px #284f3a03; max-height:calc(100dvh - 202px); overflow:auto; scrollbar-width:thin; scrollbar-color:#dbe4df transparent; }
.admin-shell .work-detail>[data-detail-pane-panel="list"] { display:block; grid-column:1; grid-row:1; }
.admin-shell .work-detail>[data-detail-pane-panel="material"], .admin-shell .work-detail>[data-detail-pane-panel="handling"] { grid-column:2; grid-row:1; }
.admin-shell .work-detail>[data-detail-pane-panel="handling"], .admin-shell .work-detail[data-active-pane="handling"]>[data-detail-pane-panel="material"] { display:none; }
.admin-shell .work-detail[data-active-pane="handling"]>[data-detail-pane-panel="handling"] { display:block; }
.library-filters { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.admin-shell .library-filters select { min-height:44px; width:150px; max-width:100%; padding:8px 10px; font-size:16px; flex:0 1 150px; }
.library-view-toggle { display:flex; gap:3px; padding:3px; border:1px solid var(--line); border-radius:8px; margin-left:auto; }
.admin-shell .library-view-toggle button { min-height:30px; width:34px; padding:0; border:0; border-radius:5px; font-size:22px; line-height:1; color:#687b89; }
.admin-shell .library-view-toggle [aria-pressed="true"] { background:var(--accent); color:white; box-shadow:0 2px 5px #10785430; }
.library-result-bar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 12px; align-items:center; margin:12px 0 0; }
.library-result-bar #list-count { color:var(--muted); font-size:16px; }
.library-display-tools { display:flex; align-items:center; gap:12px; margin-left:auto; }
.admin-shell .library-result-bar select { font-size:16px; min-height:44px; width:auto; padding:6px 10px; border-color:transparent; color:var(--muted); }
.library-selection-bar { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; min-height:60px; padding:8px 0; margin-bottom:12px; border-bottom:1px solid var(--line); }
.library-selection-bar:has(.selection-tools:not([hidden])) { background:var(--soft); border-radius:8px; border-bottom-color:transparent; padding:8px 12px; }
.library-selection-bar .selection-tools { display:flex; flex:1; flex-wrap:wrap; align-items:center; gap:8px 16px; min-width:0; }
.library-selection-bar .selection-tools[hidden] { display:none; }
.selection-tools>span { color:var(--accent); white-space:nowrap; }
.selection-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-left:auto; }
.admin-shell .selection-actions button { min-height:44px; padding:8px 12px; white-space:nowrap; }
.admin-shell .page-select-all { display:inline-flex; align-items:center; gap:8px; margin:0; min-height:44px; color:var(--muted); white-space:nowrap; }
.admin-shell .page-select-all input { margin:0; width:18px; height:18px; flex:none; }
.admin-shell #list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.material-card { min-width:0; border:1px solid #edf1ef; background:#fff; border-radius:12px; padding:8px; transition:border-color .15s,box-shadow .15s; }
.material-card:hover { border-color:#a9cdbc; box-shadow:0 3px 12px #183a2910; }
.material-card:has(.candidate[aria-current="true"]) { border-color:var(--accent); box-shadow:0 0 0 1px #1078541a; }
.admin-shell .candidate { display:block; margin:0; padding:0; border:0; width:100%; text-align:left; border-radius:8px; background:transparent; color:var(--ink); box-shadow:none; }
.admin-shell .candidate:hover { background:transparent; }
.candidate-cover { position:relative; display:block; width:100%; aspect-ratio:16/9; border-radius:7px; overflow:hidden; background:linear-gradient(135deg,#e9f0ec,#dce8e2); }
.candidate-cover>img { position:absolute; inset:0; width:100%; height:100%; margin:0; object-fit:cover; }
.cover-fallback { position:absolute; inset:0; display:grid; place-content:center; font-size:16px; color:#637e71; padding:32px 8px; }
.candidate-cover[data-type="video"] .cover-fallback { padding-top:76px; }
.card-platform { position:absolute; top:8px; z-index:1; border-radius:7px; padding:4px 7px; font-size:16px; font-weight:600; line-height:1.5; }
.card-platform .platform-logo { display: inline-grid; width: 20px; height: 20px; margin-right: 5px; vertical-align: middle; }
.card-platform .platform-logo img { position: static; width: 20px; height: 20px; object-fit: contain; }
.card-platform { left:8px; background:#fffffff2; color:#2a3842; box-shadow:0 1px 6px #00000010; }
.card-platform:before { content:'●'; margin-right:5px; color:#718293; }
.card-platform[data-platform="weibo"]:before { color:#e64a42; }
.card-platform[data-platform="xiaohongshu"]:before { color:#ff3455; }
.card-platform[data-platform="bilibili"]:before { color:#13abdb; }
.card-platform[data-platform="douyin"]:before { content:'♪'; color:#141d24; }
.card-status { display:inline-block; margin:0 0 7px; border-radius:5px; padding:2px 7px; font-size:16px; font-weight:500; line-height:1.5; background:#e4f7ee; color:#12734f; }
.material-card[data-state="analysis_snapshot"] .card-status, .material-state[data-state="analysis_snapshot"] { background:#fff4e1; color:#886021; }
.material-card[data-state="pending"] .card-status { background:#fff5c9; color:#947215; }
.material-card[data-state="returned"] .card-status { background:#fff0df; color:#a35e20; }
.material-card[data-state="superseded"] .card-status { background:#edf1f4; color:#6d7b85; }
.cover-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:38px; height:38px; border:2px solid #fff; border-radius:50%; display:grid; place-content:center; padding-left:3px; background:#1b2b2670; color:#fff; font-size:17px; }
.card-duration { position:absolute; bottom:7px; right:7px; border-radius:4px; background:#13231dbb; color:white; padding:1px 5px; font-size:16px; font-variant-numeric:tabular-nums; }
.candidate-copy { display:block; padding:9px 2px 0; min-width:0; }
.candidate-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.55; font-size:18px; font-weight:600; min-height:3.1em; }
.card-stats { display:flex; flex-wrap:wrap; gap:6px 8px; justify-content:space-between; align-items:center; min-width:0; margin:10px 0; color:var(--muted); font-size:16px; }
.card-author { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.card-stats time { white-space:nowrap; font-variant-numeric:tabular-nums; }
.card-tags { display:flex; flex-wrap:wrap; gap:5px; margin:9px 0; }
.card-tags>span, .admin-shell .card-tags>small { padding:3px 7px; border-radius:7px; background:#f2f5f6; color:#6b7989; font-size:16px; font-weight:400; line-height:1.5; }
.card-actions { display:flex; flex-wrap:nowrap; gap:6px; align-items:center; margin-top:10px; }
.admin-shell .card-actions button, .admin-shell .card-actions .button-link { min-width:0; min-height:44px; padding:8px 6px; font-size:16px; flex:1; white-space:nowrap; border-radius:7px; color:#35455a; }
.admin-shell .card-actions .primary { color:white; }
.card-original { flex:0 0 22px; text-align:center; color:#687b89; font-size:18px; }
.admin-shell .card-select { display:flex; gap:8px; flex-direction:row-reverse; justify-content:flex-end; align-items:center; margin:10px 2px 2px; font-size:16px; color:var(--muted); }
.card-select input { accent-color:var(--accent); margin:0; }
.admin-shell #list[data-view="list"] { grid-template-columns:1fr; }
#list[data-view="list"] .material-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0 12px; align-items:center; }
.admin-shell #list[data-view="list"] .candidate { display:grid; grid-template-columns:160px minmax(0,1fr); gap:14px; align-items:center; }
#list[data-view="list"] .candidate-copy { padding:0; }
#list[data-view="list"] .candidate-title { height:auto; }
#list[data-view="list"] .card-actions { margin:0; flex-direction:column; width:70px; }
#list[data-view="list"] .card-actions>* { width:100%; }
#list[data-view="list"] .card-select { grid-column:1/-1; }
.library-empty { grid-column:1/-1; text-align:center; padding:72px 16px; color:var(--muted); }
.empty-library-icon { display:block; font-size:46px; color:#8fa99b; }
.library-empty h3 { font-size:18px; color:#486253; }
.library-empty p { font-size:16px; }
.material-panel-header { position:sticky; top:-18px; z-index:3; display:flex; justify-content:space-between; align-items:center; gap:12px; margin:-18px -18px 16px; padding:14px 18px; background:#fff; border-bottom:1px solid var(--line); }
.material-panel-header h2 { margin:0; font-size:18px; }
.admin-shell .detail-close { border:0; background:transparent; font-size:24px; padding:0; min-height:30px; width:30px; color:#82909f; }
.material-title-row { display:flex; align-items:flex-start; gap:12px; margin-top:14px; }
.material-heading { margin:0; font-size:18px; line-height:1.6; overflow-wrap:anywhere; flex:1; }
.material-state { flex-shrink:0; color:var(--accent); background:#e9f7ef; border-radius:9px; padding:4px 8px; font-size:16px; }
.material-state[data-state="pending"] { background:#fff5c9; color:#947215; }
.material-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin:12px 0 20px; color:var(--muted); font-size:16px; }
.material-meta a { margin-left:auto; }
.material-caption { margin:20px 0; }
.material-caption h3, .material-summary h3 { margin:0 0 8px; font-size:16px; }
.material-caption p { white-space:pre-wrap; margin:0; line-height:1.8; color:var(--muted); font-size:16px; }
.material-facts { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:14px 0; }
.material-facts>div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:5px; padding:6px 8px; background:#f7f9fa; border-radius:6px; color:var(--muted); font-size:16px; }
.material-facts dd { margin:0; }
.material-quick-actions { display:flex; gap:8px; padding:15px 0; margin:0 0 8px; border-bottom:1px solid var(--line); }
.admin-shell .material-quick-actions>* { flex:1; min-height:40px; font-size:16px; padding:8px; border-radius:8px; }
#detail>p, #detail>details { font-size:16px; color:var(--muted); }
#detail>details summary { font-size:16px; }
.admin-shell .metadata { font-size:16px; overflow-wrap:anywhere; }
.admin-shell .resource-line { border-radius:8px; background:#f7f9f7; }
.admin-shell #detail-actions p, .admin-shell #detail-actions label { font-size:16px; }
.material-gallery { border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; }
.gallery-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid var(--line); }
.gallery-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.gallery-controls button { padding:5px 10px; min-height:36px; }
.gallery-controls a { margin-left:4px; }
.gallery-stage { background:#f4f6f5; }
.gallery-panel { height:360px; padding:12px; text-align:center; position:relative; }
.gallery-panel>img,.gallery-panel>video { display:block; width:100%; height:100%; max-height:none; object-fit:contain; margin:auto; }
.gallery-panel>video { background:#18201d; border-radius:4px; }
.gallery-panel>img { cursor:zoom-in; }
.gallery-error { position:absolute; inset:25% 20px auto; padding:14px; background:white; border:1px solid var(--line); border-radius:8px; }
.gallery-thumbnails { display:grid; grid-template-columns:repeat(auto-fill,minmax(88px,1fr)); gap:10px; padding:14px; max-height:250px; overflow:auto; border-top:1px solid var(--line); }
.gallery-thumbnail { display:flex; flex-direction:column; align-items:center; gap:6px; padding:6px; overflow:hidden; border-radius:7px; font-size:16px; }
.gallery-thumbnail>img,.video-thumbnail { width:100%; height:68px; object-fit:cover; border-radius:4px; background:#eef2ef; }
.video-thumbnail { display:grid; place-items:center; color:var(--accent); font-size:24px; }
.gallery-thumbnail[aria-pressed="true"] { border-color:var(--accent); background:var(--soft); box-shadow:0 0 0 1px var(--accent); }
.gallery-thumbnail>span:last-child { line-height:1.4; }
.material-lightbox { width:min(1100px,95vw); max-width:95vw; height:min(900px,94dvh); max-height:94dvh; padding:18px; border:0; border-radius:12px; background:#fff; }
.material-lightbox::backdrop { background:rgb(15 23 20 / 75%); }
.material-lightbox>button { display:block; margin:0 0 12px auto; }
.material-lightbox>img { display:block; width:100%; height:calc(100% - 56px); max-height:none; object-fit:contain; }

/* A compact gallery keeps file navigation available below the preview. */
#detail .material-gallery { display:flex; flex-direction:column; border:0; border-radius:9px; }
#detail .gallery-stage { order:-1; border-radius:9px; overflow:hidden; }
#detail .gallery-panel { height:auto; aspect-ratio:16/10; padding:0; }
#detail .gallery-panel>img { object-fit:contain; }
#detail .gallery-toolbar { padding:9px 0; border:0; gap:6px; }
#detail .gallery-toolbar strong { color:var(--muted); font-size:16px; font-weight:400; }
#detail .gallery-controls { gap:5px; }
#detail .gallery-controls button, #detail .gallery-controls a { min-height:44px; padding:7px 9px; font-size:16px; border-radius:7px; }
#detail .gallery-thumbnails { grid-template-columns:repeat(auto-fill,minmax(88px,1fr)); gap:8px; padding:8px 0; max-height:210px; }
#detail .gallery-thumbnail { font-size:16px; padding:4px; }
#detail .gallery-thumbnail>span:last-child { font-size:16px; }
#detail .gallery-thumbnail>img, #detail .video-thumbnail { height:45px; }
@media(min-width:1600px) {
  .admin-shell .admin-columns.work-detail { grid-template-columns:minmax(0,1fr) 420px; }
  .admin-shell #list { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:1380px) {
  .library-heading p { margin:4px 0 0; }
  .admin-shell .work-detail>.card { max-height:calc(100dvh - 226px); }
  .admin-shell .admin-tabs button { padding:8px 10px; }
  .library-filters { gap:7px; }
}
@media(max-width:1050px) and (min-width:901px) {
  .admin-shell .admin-columns.work-detail { grid-template-columns:minmax(0,1fr) 310px; }
  .admin-shell #list { grid-template-columns:1fr; }
  .library-navigation { flex-wrap:wrap; }
  .admin-shell #list[data-view="list"] .candidate { grid-template-columns:100px minmax(0,1fr); }
}
@media(max-width:900px) {
  .material-library-page .admin-shell { padding:20px; }
  .admin-shell .admin-columns.work-detail { display:block; }
  .admin-shell .work-detail>.card { max-height:none; position:static; }
  .admin-shell .work-detail>[data-detail-pane-panel] { display:none; }
  .admin-shell .work-detail[data-active-pane="list"]>[data-detail-pane-panel="list"],
  .admin-shell .work-detail[data-active-pane="material"]>[data-detail-pane-panel="material"],
  .admin-shell .work-detail[data-active-pane="handling"]>[data-detail-pane-panel="handling"] { display:block; }
  .admin-shell .admin-tabs [data-detail-pane="list"] { display:block; }
  .admin-shell .admin-tabs [data-admin-tab="library"][aria-selected="true"][aria-pressed="false"] { border-color:transparent; color:var(--muted); background:transparent; font-weight:400; }
  .library-navigation { flex-wrap:wrap; }
  .library-options { margin-left:auto; }
  #detail .gallery-panel { max-height:440px; }
}
@media(max-width:560px) {
  .material-library-page .admin-shell { padding:18px 12px; }
  .admin-shell .page-heading { display:block; margin-bottom:12px; }
  .library-heading h1 { font-size:28px; }
  .library-heading p { display:none; }
  .library-search { display:block; width:100%; margin-top:14px; }
  .admin-shell .admin-tabs.detail-pane-tabs { width:100%; flex-wrap:nowrap; overflow:auto; }
  .admin-shell .admin-tabs button { flex:none; font-size:16px; padding:8px 11px; }
  .library-options { width:100%; justify-content:space-between; }
  .library-tools-menu { width:calc(100vw - 32px); }
  .admin-shell .work-detail>.card { padding:12px; }
  .admin-shell #list { grid-template-columns:1fr; }
  .admin-shell .library-filters select { flex:1 1 calc(50% - 7px); width:0; font-size:16px; }
  .library-selection-bar .selection-actions { grid-column:1/-1; width:100%; margin-left:0; }
  .library-selection-bar:has(.selection-tools:not([hidden])) { display:grid; grid-template-columns:auto 1fr; }
  .library-selection-bar .selection-tools { display:contents; }
  .candidate-title { min-height:0; }

  .admin-shell .card-actions button, .admin-shell .card-actions .button-link { min-height:40px; font-size:16px; }
  .admin-shell #list[data-view="list"] .candidate { grid-template-columns:100px minmax(0,1fr); gap:8px; }
  #list[data-view="list"] .material-card { display:block; }
  #list[data-view="list"] .card-actions { flex-direction:row; width:auto; margin-top:8px; }
  #list[data-view="list"] .card-stats { display:block; }
  #list[data-view="list"] .card-stats time { display:block; }
  #list[data-view="list"] .card-platform, #list[data-view="list"] .card-status { display:none; }
  .material-title-row { display:block; }
  .material-state { display:inline-block; margin-top:8px; }
}
.exposure-session { border-bottom: 1px solid var(--line); padding: 12px 0; }
.data-navigation { display:flex; flex-wrap:wrap; gap:8px; }
.data-navigation button { border:1px solid var(--line); background:white; font-size:16px; min-height:44px; padding:9px 16px; }
.data-navigation [aria-selected="true"] { color:var(--accent); background:#e8f3ec; border-color:#b8d8c6; font-weight:600; }
.data-navigation[hidden], .library-tools[hidden], .detail-pane-tabs[hidden], .library-search[hidden] { display:none !important; }
.section-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; }
.management-create { margin:18px 0; padding:16px; border:1px solid var(--line); border-radius:10px; }
.management-create>summary { cursor:pointer; font-size:16px; font-weight:600; color:var(--accent); }
.management-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:18px; }
.management-form label { margin:0; min-width:0; }
.management-form .full-width { grid-column:1/-1; }
.management-form button { align-self:end; justify-self:start; }
.management-record { padding:20px 0; border-top:1px solid var(--line); overflow-wrap:anywhere; }
.management-record h3 { margin:0 0 8px; font-size:18px; }
.management-record blockquote { margin:16px 0; padding:10px 16px; border-left:3px solid #bad6c7; background:#f6f9f7; white-space:pre-wrap; }
.management-record details>p { white-space:pre-wrap; }
.collector-receipt { margin:16px 0; padding:18px; background:#edf7f0; border:1px solid #bad6c7; border-radius:10px; }
.collector-receipt[hidden] { display:none; }
@media(max-width:560px) { .management-form { grid-template-columns:1fr; } .data-navigation { width:100%; gap:4px; } .data-navigation button { flex:1; padding:8px; } }
.exposure-session h3 { margin: 0 0 4px; }
.exposure-session p { margin: 4px 0; overflow-wrap: anywhere; }
.exposure-sequence { list-style: none; padding-left: 0; }
.exposure-sequence li { padding: 6px 0; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }

.allocation-details{border-top:1px solid var(--line);padding-top:16px;margin:18px 0}.allocation-details>summary{font-weight:600;cursor:pointer;color:var(--accent);padding:8px 0}.allocation-details form{margin-top:16px}.allocation-details fieldset{display:flex;flex-wrap:wrap;gap:12px}.material-pagination{display:flex;justify-content:space-between;gap:12px;padding:18px 0}.library-tools-menu [data-admin-tab]{width:100%;text-align:left}
.page-select-all input,.card-select input{accent-color:var(--accent)}.selection-tools .danger{color:#a44352;border-color:#e4bfc6;background:#fff7f8}
.material-card.is-selected{border-color:var(--accent);background:#f3faf6;box-shadow:0 0 0 1px var(--accent)}
.admin-shell .card-select{min-height:36px;margin:0 2px 8px;cursor:pointer}
.card-select input{width:18px;height:18px;flex:none}
#list[data-view="list"] .card-select{grid-column:1/-1}
#batch-results{padding:12px;margin:12px 0;border:1px solid var(--line);border-radius:8px;overflow-wrap:anywhere;max-height:240px;overflow:auto}
#batch-results p{margin:4px 0}
.batch-verify-dialog{width:min(620px,calc(100vw - 32px));max-height:90dvh;overflow:auto;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:24px}
.batch-verify-dialog::backdrop{background:rgb(15 23 20 / 50%)}
.batch-verify-dialog label{display:block;margin:12px 0}
.batch-verify-dialog .inline{display:flex;align-items:flex-start;gap:8px}
.batch-verify-dialog input[type=checkbox]{flex:none;width:18px;height:18px;margin:4px 0;accent-color:var(--accent)}
.batch-verify-dialog fieldset{border:1px solid var(--line);border-radius:8px;padding:12px;margin:16px 0;min-width:0}
.batch-verify-dialog textarea,.batch-verify-dialog select{width:100%;box-sizing:border-box}
.admin-shell .admin-tabs [data-detail-pane="list"]{display:block}
.admin-shell .work-detail[data-active-pane="list"]>[data-detail-pane-panel]:not([data-detail-pane-panel="list"]){display:none}

/* Data and quality workspace: a calm green surface that keeps export actions easy to scan. */
.quality-dashboard { --quality-green:#17845a; --quality-dark:#173d31; --quality-soft:#eaf7f0; --quality-line:#d9ebe1; max-width:1480px; margin:0 auto 42px; }
.quality-card { margin:0 0 18px; padding:24px 28px; background:#fff; border:1px solid #e0ebe5; border-radius:18px; box-shadow:0 4px 18px #173d3109; }
.quality-card-title { display:flex; align-items:center; gap:12px; }
.quality-card-title.compact { gap:10px; }
.quality-card-title .title-icon { display:grid; place-items:center; width:30px; height:30px; color:var(--quality-green); background:var(--quality-soft); border-radius:9px; font-size:20px; }
.quality-card-title h2 { margin:0; color:var(--quality-dark); font-size:21px; }
.quality-card-title p { margin:2px 0 0; color:#71877d; font-size:16px; }
.export-builder { padding-bottom:22px; }
.export-steps { display:grid; grid-template-columns:1fr 1.08fr 1fr; gap:24px; margin:24px 0 20px; }
.export-step { min-width:0; padding:0 20px 4px 0; border-right:1px solid #e7eee9; }
.export-step:last-child { border-right:0; padding-right:0; }
.step-heading { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.step-heading b { display:grid; place-items:center; width:26px; height:26px; border-radius:50%; color:#fff; background:#3a9a71; font-size:16px; }
.step-heading h3 { margin:0; color:var(--quality-dark); font-size:18px; }
.export-select-label { display:block; margin:0; color:#446357; font-weight:600; }
.export-select-label select { margin-top:7px; border-color:#cfe4d7; background:#fbfefc; }
.step-note { margin:10px 0 0; color:#71877d; font-size:16px; line-height:1.6; }
.scope-choice, .content-check { display:flex; align-items:center; gap:9px; margin:10px 0; color:#365849; font-size:16px; }
.scope-choice input, .content-check input { width:18px; height:18px; margin:0; accent-color:var(--quality-green); }
.content-check { margin:8px 0; }
.export-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding-top:18px; border-top:1px solid #e7eee9; }
.export-actions button { min-height:46px; }
.export-main-action { background:var(--quality-green); border-color:var(--quality-green); box-shadow:0 5px 12px #17845a26; }
.export-main-action:hover { background:#116b48; border-color:#116b48; }
.export-hint { margin-left:auto; color:#7a8d84; font-size:16px; }
#downloads { width:100%; margin-top:14px; padding:0; color:#376653; }
#downloads a { display:inline-flex; margin:4px 10px 4px 0; color:var(--quality-green); }
.recent-exports .section-toolbar { margin-bottom:18px; }
.export-table-wrap { overflow:auto; }
.recent-exports table { width:100%; border-collapse:collapse; min-width:720px; }
.recent-exports th { padding:12px 14px; text-align:left; color:#71877d; background:#f3f8f5; font-size:16px; font-weight:600; }
.recent-exports td { padding:14px; border-bottom:1px solid #edf2ef; color:#365849; font-size:16px; }
.recent-exports tbody tr:last-child td { border-bottom:0; }
.empty-history { padding:26px 14px !important; color:#8a9b93 !important; text-align:center; }
@media(max-width:900px) { .quality-dashboard { margin-bottom:24px; } .export-steps { grid-template-columns:1fr; gap:18px; } .export-step { border-right:0; border-bottom:1px solid #e7eee9; padding:0 0 18px; } .export-step:last-child { border-bottom:0; padding-bottom:0; } }
@media(max-width:560px) { .quality-card { padding:20px 16px; border-radius:14px; } .export-hint { width:100%; margin-left:0; } }
@media(min-width:901px){
  .admin-shell .admin-columns.work-detail{grid-template-columns:minmax(0,1fr) minmax(360px,42%)}
  .admin-shell .admin-columns.work-detail[data-active-pane="list"]{grid-template-columns:minmax(0,1fr)}
  .admin-shell .work-detail[data-active-pane="list"]>.library-catalog{max-height:none;overflow:visible}
  .admin-shell #list[data-view="grid"]{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
}

/* Keep source records readable without nesting another scrolling pane. */
.analysis-snapshot-notice { margin:0 0 18px; padding:14px 16px; border:1px solid #efdfbf; border-radius:10px; background:#fffaf0; color:#805b26; }
.analysis-snapshot-notice strong { font-size:16px; }
.analysis-snapshot-notice p { margin:6px 0; line-height:1.7; font-size:16px; }
.analysis-snapshot-notice a { color:#805b26; text-decoration:underline; text-underline-offset:3px; }
#detail .detail-section { margin:20px 0 0; padding:18px 0 0; border-top:1px solid var(--line); }
.detail-section h3, #detail .detail-section>summary { margin:0; font-size:16px; font-weight:600; color:var(--ink); }
.detail-section>summary { cursor:pointer; }
.detail-section p { line-height:1.75; overflow-wrap:anywhere; }
.detail-gaps ul { padding-left:20px; margin:10px 0; line-height:1.8; }
.detail-gaps p, .supplement-history p { color:var(--muted); }
#detail .transcript-hint { margin:10px 0; color:var(--muted); }
.transcript-segments { display:grid; gap:0; }
.admin-shell .transcript-locate { display:grid; grid-template-columns:1fr; gap:4px; width:100%; padding:12px 10px; text-align:left; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; }
.transcript-time { font-size:16px; font-variant-numeric:tabular-nums; color:var(--accent); }
.transcript-text { font-size:16px; line-height:1.7; color:var(--ink); }
.transcript-origin { font-size:16px; color:var(--muted); }
.material-caption.is-collapsed>p { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.admin-shell .caption-expand { padding:6px 0; margin-top:6px; border:0; box-shadow:none; background:transparent; color:var(--accent); }
.admin-shell #detail, .admin-shell #detail-actions { overscroll-behavior:contain; }
@media(min-width:901px) {
  .admin-shell .work-detail>.library-catalog { max-height:none; overflow:visible; }
  .admin-shell #detail, .admin-shell #detail-actions { position:sticky; top:72px; max-height:calc(100dvh - 96px); }
}
@media(max-width:560px) {
  .material-panel-header { top:-12px; margin:-12px -12px 14px; padding:12px; }
}

/* Scoped overrides also take precedence over the material library skin. */
.data-heading-icon, .data-folder-art { display:none; }
body.material-library-page.data-quality-page { --ink:#17392e; --muted:#60786c; --accent:#17845a; --line:#deebe3; --bg:#f5f9f7; background:radial-gradient(ellipse at 85% 0%,#dff2e8 0,transparent 48%),#f5f9f7; }
.data-quality-page .admin-shell { position:relative; max-width:1780px; padding:30px 26px; }
.data-quality-page .admin-shell .page-heading { position:relative; min-height:100px; margin:0 0 20px; display:flex; justify-content:flex-start; gap:22px; padding:0 210px 0 10px; }
.data-quality-page .library-heading h1 { color:var(--ink); font-size:32px; }
.data-quality-page .library-heading p { display:block; margin:6px 0 0; color:var(--muted); }
.data-quality-page .data-heading-icon { display:grid; flex:none; place-items:center; width:68px; height:68px; border:1px solid #dfede5; border-radius:16px; background:linear-gradient(135deg,#fbfffd,#e5f5ec); box-shadow:0 4px 10px #1b593910; color:var(--accent); }
.data-heading-icon svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.data-quality-page .data-folder-art { display:block; position:absolute; top:25px; right:75px; width:115px; height:105px; transform:rotate(-8deg); pointer-events:none; }
.data-folder-art i { position:absolute; width:100px; height:88px; top:0; left:22px; border:1px solid #fff; border-radius:9px; background:#f6fffa; box-shadow:5px 5px 0 #cae8d9; transform:skewY(14deg); }
.data-folder-art i:nth-child(2) { top:10px; left:10px; background:#e5f7ee; }
.data-folder-art i:nth-child(3) { top:22px; left:0; background:linear-gradient(145deg,#96d6b6,#35a876); border-color:#9bd9ba; box-shadow:0 12px 22px #27855b22; }
.data-folder-art span { position:absolute; top:46px; left:38px; color:white; font-size:32px; opacity:.8; }
.data-quality-page .library-navigation { margin-bottom:20px; gap:12px; }
.data-quality-page .data-navigation { gap:10px; }
.data-quality-page .data-navigation button { min-width:145px; padding:9px 20px; border:1px solid #deebe3; border-radius:10px; box-shadow:0 3px 7px #214d3808; color:#315746; }
.data-quality-page .data-navigation [aria-selected=true] { background:#17845a; color:#fff; border-color:#17845a; box-shadow:0 4px 10px #17845a25; }
.data-quality-page .app-brand small, .data-quality-page .sidebar-account small { display:block; }
.data-quality-page .nav-link[aria-current=page] { background:#e4f3ea; color:#137c52; }
.data-quality-page .quality-dashboard { max-width:none; }
.quality-dashboard .export-step:last-child { border-radius:10px; }
.quality-dashboard .scope-choice input { min-height:0; padding:0; width:18px; height:18px; flex:none; }
.quality-dashboard .included-check { display:grid; place-items:center; width:17px; height:17px; flex:none; border-radius:4px; background:#17845a; color:#fff; font-size:13px; line-height:1; }
.quality-dashboard .content-check { font-size:16px; }
.quality-dashboard .export-actions button { display:inline-flex; align-items:center; gap:10px; padding:11px 24px; }
.quality-dashboard svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.quality-dashboard .export-filename { display:block; overflow-wrap:anywhere; }
.quality-dashboard .export-complete { display:inline-block; margin-top:4px; padding:1px 9px; border-radius:12px; color:#168252; background:#e4f7ec; white-space:nowrap; }
.quality-dashboard .export-download { display:inline-flex; padding:6px 14px; border:1px solid #dbece2; border-radius:8px; text-decoration:none; color:#17845a; background:#f7fcf9; white-space:nowrap; }
.quality-dashboard .export-download:hover { background:#e8f6ee; }
.quality-dashboard .export-table-wrap { max-width:100%; }
.quality-dashboard .recent-exports th { white-space:nowrap; }
.quality-dashboard .recent-exports td:first-child { min-width:230px; }
.quality-dashboard .export-actions .export-main-action { background:#17845a; border-color:#17845a; }
.quality-dashboard .export-actions .export-main-action:hover { background:#116b48; }
.quality-dashboard #downloads:empty { display:none; }
@media(max-width:1200px) {
  .data-quality-page .admin-shell .page-heading { padding-right:0; }
  .data-quality-page .data-folder-art { display:none; }
  .quality-dashboard .export-steps { grid-template-columns:1fr 1fr; }
  .quality-dashboard .export-step:nth-child(2) { border:0; padding-right:0; }
  .quality-dashboard .export-step:last-child { grid-column:1/-1; border-top:1px solid #e7eee9; padding-top:18px; }
}
@media(max-width:900px) {
  .quality-dashboard .export-steps { grid-template-columns:1fr; }
  .quality-dashboard .export-step:nth-child(2) { border-bottom:1px solid #e7eee9; padding-bottom:18px; }
  .quality-dashboard .export-step:last-child { border:0; padding-top:0; }
}
@media(max-width:600px) {
  .data-quality-page .admin-shell { padding:20px 14px; }
  .data-quality-page .admin-shell .page-heading { gap:14px; align-items:flex-start; padding:0; }
  .data-quality-page .data-heading-icon { width:48px; height:48px; border-radius:12px; }
  .data-quality-page .library-heading h1 { font-size:28px; }
  .data-quality-page .library-navigation { flex-wrap:wrap; }
  .data-quality-page .data-navigation { width:100%; gap:6px; }
  .data-quality-page .data-navigation button { min-width:0; flex:1; padding:9px 8px; }
  .data-quality-page .library-options { width:auto; margin-left:auto; }
  .quality-dashboard .export-actions button { flex:1; padding:10px; white-space:nowrap; }
}

.quality-dashboard #downloads:not(:empty) { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:16px 0 0; border-top:1px solid #e7eee9; }
.quality-dashboard #downloads br { display:none; }
.quality-dashboard #downloads a { margin:0; padding:7px 12px; border:1px solid #dcece2; border-radius:8px; background:#f7fbf9; text-decoration:none; font-size:16px; }
.quality-dashboard #downloads a:hover { background:#e8f6ee; }
.quality-dashboard #downloads p { width:100%; margin:3px 0 0; color:var(--muted); }
.quality-dashboard .export-result-summary,
.quality-dashboard .export-issues,
.quality-dashboard .export-raw { width:100%; min-width:0; overflow-wrap:anywhere; }
.quality-dashboard .export-result-summary h3 { margin:0 0 8px; }
.quality-dashboard .export-issues { padding:12px 16px; border:1px solid #ead9b7; border-radius:8px; background:#fffbf2; }
.quality-dashboard .export-raw { margin-top:8px; }
.quality-dashboard .export-raw a { margin:8px 8px 0 0 !important; }
.quality-dashboard .export-empty { display:block; color:#805a22; margin-top:4px; }

/* Library overview. Supporting labels remain at least 16px. */
.material-library-page { --ink:#112448; --muted:#536b8d; --line:#e6edf6; --bg:#f4f7fc; --accent:#009d79; background:var(--bg); }
.material-library-page .admin-shell { padding:28px 24px; }
.material-library-page .app-brand small,
.material-library-page .sidebar-account small,
.material-library-page .workspace-label { display:none; }
.material-library-page .app-nav { font-size:18px; }
.material-library-page .app-topbar { background:#ffffffed; }
.admin-shell .page-heading { min-height:56px; margin-bottom:22px; }
.library-heading h1 { font-size:32px; letter-spacing:-1px; }
.library-search { display:flex; align-items:center; width:min(560px,48%); background:white; border-radius:28px; box-shadow:0 4px 20px #27426f04; }
.admin-shell .library-search input { width:0; flex:1; border:0; border-radius:28px; background:transparent; min-height:48px; }
.admin-shell .library-search button { align-self:stretch; min-width:88px; min-height:48px; border-radius:12px; font-size:16px; }
.library-search svg { top:15px; }
.library-navigation { margin-bottom:18px; }
.admin-shell .admin-tabs.detail-pane-tabs { gap:12px; }
.admin-shell .admin-tabs button { border:0; border-radius:24px; background:#eaf0f7; color:var(--muted); padding:10px 22px; }
.admin-shell .admin-tabs [aria-pressed="true"],
.admin-shell .admin-tabs [aria-selected="true"] { background:var(--accent); color:#fff; border:0; }
.admin-shell .admin-tabs button:disabled { opacity:1; color:#657792; cursor:not-allowed; }
.admin-shell .work-detail>.library-catalog { padding:0; background:transparent; border:0; box-shadow:none; container-type:inline-size; container-name:library; }
.library-filters { background:#fff; padding:16px; border-radius:16px; gap:10px; margin-bottom:16px; }
.admin-shell .library-filters select { width:0; flex:1 1 145px; background:#fff; border-color:var(--line); border-radius:12px; color:var(--ink); }
.library-date-range { display:flex; align-items:center; gap:8px; flex:2 1 300px; min-width:0; padding:0 10px; border:1px solid var(--line); border-radius:12px; color:var(--muted); }
.admin-shell .library-date-range input { width:0; flex:1; min-width:0; padding:8px 0; border:0; background:transparent; color:var(--muted); font-size:16px; }
.library-date { position:relative; flex:1; min-width:0; margin:0; }
.admin-shell .library-date input { width:100%; }
.library-date>span { display:none; position:absolute; left:0; top:50%; transform:translateY(-50%); pointer-events:none; font-size:16px; }
.library-date:has(input[data-empty="true"]:not(:focus))>span { display:block; }
.library-date input[data-empty="true"]:not(:focus)::-webkit-datetime-edit { color:transparent; }
.admin-shell #reset-filters { min-height:44px; border-color:var(--line); border-radius:10px; padding:8px 18px; font-size:16px; }
.library-statistics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.library-stat { display:flex; align-items:center; gap:14px; padding:18px 16px; border-radius:14px; min-width:0; background:linear-gradient(120deg,var(--stat-tint),#fff); --stat-color:#00a6d9; --stat-tint:#eefaff; }
.library-stat[data-kind="pending"] { --stat-color:#d99700; --stat-tint:#fff8e5; }
.library-stat[data-kind="promoted"] { --stat-color:#00aa7e; --stat-tint:#eafaf4; }
.library-stat[data-kind="video"] { --stat-color:#1685f7; --stat-tint:#edf5ff; }
.library-stat[data-kind="image"] { --stat-color:#f24870; --stat-tint:#fff0f4; }
.library-stat[data-kind="today"] { --stat-color:#9256eb; --stat-tint:#f5efff; }
.library-stat-icon { display:grid; place-items:center; width:48px; height:48px; flex:none; border-radius:18px; color:var(--stat-color); background:color-mix(in srgb,var(--stat-color) 13%,white); }
.library-stat-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.library-stat>div { min-width:0; }
.library-stat span { font-size:16px; white-space:nowrap; }
.library-stat strong { display:block; font-size:26px; line-height:1.3; margin-top:4px; color:var(--ink); font-variant-numeric:tabular-nums; }
.library-catalog-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; padding:12px 14px; border-radius:16px 16px 0 0; background:white; }
.library-result-bar { order:2; margin:0 0 0 auto; }
.library-result-bar #list-count { display:none; }
.library-selection-bar { margin:0; padding:0; border:0; min-height:44px; }
.library-selection-bar:has(.selection-tools:not([hidden])) { padding:0; background:transparent; }
.library-display-tools { gap:12px; }
.library-view-toggle { order:-1; padding:0; border:0; gap:5px; }
.admin-shell .library-view-toggle button { width:40px; min-height:40px; border:1px solid var(--line); border-radius:8px; }
.admin-shell .library-result-bar select { border:1px solid var(--line); border-radius:10px; }
.admin-shell .page-select-all { color:var(--ink); font-size:16px; }
.admin-shell .selection-actions button { padding:8px 12px; font-size:16px; }
.admin-shell #list { padding:0 10px 10px; background:#fff; border-radius:0 0 16px 16px; gap:12px; }
.material-card { position:relative; border-color:var(--line); padding:10px; box-shadow:0 3px 8px #264c7f05; border-radius:14px; }
.candidate-cover { border-radius:10px; }
.admin-shell .card-select { position:absolute; z-index:2; top:18px; left:18px; margin:0; padding:3px; min-height:24px; border-radius:5px; background:#ffffffed; }
.card-platform { left:42px; top:8px; padding:3px 7px; color:#fff; background:#253b5cdd; font-weight:500; }
.card-platform:before { display:none; }
.card-platform[data-platform="xiaohongshu"] { background:#ff3659; }
.card-platform[data-platform="bilibili"] { background:#c7358b; }
.card-platform[data-platform="weibo"] { background:#df6441; }
.card-status { top:auto; bottom:8px; left:8px; right:auto; font-size:16px; padding:2px 6px; }
.candidate-title { min-height:1.6em; -webkit-line-clamp:1; font-size:18px; line-height:1.6; }
.card-stats { margin:7px 0; gap:4px 8px; }
.card-author { flex:1; min-width:0; }
.card-tags { margin:8px 0; gap:5px; }
.card-tags>span, .admin-shell .card-tags>small { padding:2px 6px; background:#f0f5fb; color:var(--muted); }
.card-actions { margin:6px 0 0; gap:6px; }
.admin-shell .card-actions button, .admin-shell .card-actions .button-link { min-width:0; min-height:38px; padding:6px 3px; border:0; background:#f4f7fc; color:#3e587c; }
.admin-shell .card-actions .primary { background:#e7f7f2; color:#008461; }
.material-pagination { font-size:16px; }
#list[data-view="list"] .card-select { grid-column:auto; }
#list[data-view="list"] .card-actions { width:80px; }
@media(min-width:1500px) {
  .admin-shell .work-detail[data-active-pane="list"] #list[data-view="grid"] { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(max-width:1250px) {
  .library-statistics { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
.work-detail:not([data-active-pane="list"]) .library-statistics { grid-template-columns:repeat(3,minmax(0,1fr)); }
@container library (max-width:620px) {
  .work-detail .library-statistics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .library-stat { padding:14px 10px; gap:10px; }
  .library-stat-icon { width:38px; height:38px; }
}
@media(max-width:900px) {
  .admin-shell .work-detail>.library-catalog { padding:0; }
  .admin-shell #list[data-view="grid"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-shell #list[data-view="list"] .candidate { grid-template-columns:130px minmax(0,1fr); }
}
@media(max-width:560px) {
  .material-library-page .admin-shell { padding:20px 12px; }
  .library-search { width:100%; }
  .library-search[hidden] { display:none; }
  .library-statistics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .library-stat { padding:14px 10px; gap:10px; }
  .library-stat-icon { width:38px; height:38px; border-radius:14px; }
  .library-filters { padding:12px; }
  .admin-shell .library-filters select { flex-basis:calc(50% - 10px); }
  .library-date-range { flex-basis:100%; }
  .library-catalog-toolbar { padding:10px; }
  .library-result-bar { margin:0; width:100%; }
  .library-display-tools { margin-left:0; width:100%; justify-content:space-between; }
  .library-selection-bar:has(.selection-tools:not([hidden])) { display:flex; }
  .library-selection-bar .selection-tools { display:flex; }
  .admin-shell #list[data-view="grid"] { grid-template-columns:1fr; }
  .admin-shell #list[data-view="list"] .candidate { grid-template-columns:1fr; }
  #list[data-view="list"] .material-card { grid-template-columns:1fr; }
  #list[data-view="list"] .card-actions { width:100%; flex-direction:row; }
  #list[data-view="list"] .card-actions>* { width:auto; }
}
