.ap-library { padding-top: clamp(34px, 5vw, 66px); }
.paper-controls { display: grid; gap: 16px; margin-top: 38px; }
.paper-filter-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; }
.paper-search input { width: min(100%, 520px); padding: 15px 17px; border: 1px solid var(--seo-line); border-radius: 0; background: rgba(255,255,255,.58); color: var(--seo-ink); font: 500 14px DM Sans,sans-serif; }
.paper-search input:focus { outline: 2px solid var(--seo-blue); outline-offset: 2px; }
.paper-year { display: grid; gap: 6px; color: var(--seo-muted); font: 700 9px DM Sans,sans-serif; letter-spacing: 1px; }
.paper-year select { min-width: 145px; padding: 15px 17px; border: 1px solid var(--seo-line); border-radius: 0; background: rgba(255,255,255,.58); color: var(--seo-ink); font: 500 14px DM Sans,sans-serif; }
.state-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.state-filter { padding: 9px 11px; border: 1px solid var(--seo-line); border-radius: 999px; background: transparent; color: var(--seo-muted); cursor: pointer; font: 600 11px DM Sans,sans-serif; }
.state-filter:hover,.state-filter:focus-visible,.state-filter.is-active { border-color: var(--seo-blue); background: var(--seo-blue); color: #fff; }
.paper-count { margin: 24px 0 12px; color: var(--seo-muted); font: 600 11px DM Sans,sans-serif; letter-spacing: .4px; }
.paper-grid { display: grid; grid-template-columns: 1fr; gap: 8px; }
.paper-card { display: grid; grid-template-columns: 175px minmax(210px,1.15fr) minmax(150px,.9fr) auto; gap: 18px; align-items: center; min-height: 0; padding: 17px 20px; border: 1px solid var(--seo-line); background: rgba(255,255,255,.48); }
.paper-card[hidden] { display: none; }
.paper-card>span { color: var(--seo-blue); font: 700 12px DM Sans,sans-serif; letter-spacing: 1.05px; }
.paper-card h3 { margin: 0; color: var(--seo-ink); font: 600 20px/1.24 Manrope,sans-serif; letter-spacing: -.5px; }
.paper-card p { margin: 0; color: var(--seo-muted); font: 400 15px/1.5 DM Sans,sans-serif; }
.paper-card a { display: inline-flex; align-items: center; justify-content: space-between; gap: 14px; min-width: 160px; padding: 13px 15px; border: 1px solid #315e5a; background: #315e5a; color: #fff; font: 700 12px DM Sans,sans-serif; text-decoration: none; }
.paper-card a:hover,.paper-card a:focus-visible { border-color: var(--seo-blue); background: var(--seo-blue); color: #fff; }
.paper-card a b { font-size: 13px; }
.no-papers { margin: 22px 0 0; color: var(--seo-muted); font: 500 14px/1.6 DM Sans,sans-serif; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.resource-note strong { font-weight: 700; }.resource-note a { color: inherit; font-weight: 700; }
@media (max-width:850px) { .paper-card { grid-template-columns: 145px minmax(0,1fr) auto; }.paper-card p { grid-column: 2; }.paper-card a { grid-row: 1 / span 2; grid-column: 3; } }
@media (max-width:600px) { .paper-card { display: flex; align-items: flex-start; gap: 9px; padding: 17px; }.paper-card a { width: 100%; margin-top: 5px; }.paper-filter-row { display: grid; grid-template-columns: 1fr; }.paper-search input,.paper-year select { width: 100%; } }
