:root{--pp-gutter:clamp(12px,2vw,24px)}.pp-wrap{max-width:1200px;margin:0 auto;padding:0 var(--pp-gutter);box-sizing:border-box}.pp-hero{padding:1.25rem 0 .5rem;border-bottom:1px solid var(--ap-border,#e5e7eb)}.pp-hero h1{font-family:Georgia,serif;font-size:2rem;margin:0 0 .25rem;color:var(--ap-heading,#0f172a);line-height:1.2}.pp-hero p.lede{font-size:1.02rem;color:var(--ap-text-muted,#475569);max-width:70ch;margin:0;line-height:1.5}.pp-hero .pp-retry{margin-left:8px;padding:3px 11px;font-size:.85rem;font-weight:600;border:1px solid var(--brand-color,#0c5fce);background:transparent;color:var(--brand-color,#0c5fce);border-radius:6px;cursor:pointer}.pp-hero .pp-retry:hover{background:var(--brand-color,#0c5fce);color:#fff}.pp-hero .pp-bg-loading{display:inline-flex;align-items:center;gap:7px;margin-left:10px;padding:4px 12px;font-size:.82rem;font-weight:600;color:var(--brand-color,#0c5fce);background:#eef4ff;border:1px solid var(--brand-color,#0c5fce);border-radius:999px;white-space:nowrap;animation:pp-bg-loading-pulse 1.3s ease-in-out infinite}[data-theme=dark] .pp-hero .pp-bg-loading{background:rgba(12,95,206,.18)}.pp-bg-spinner{width:11px;height:11px;border-radius:50%;border:2px solid;border-top:2px solid transparent;animation:pp-bg-spin .7s linear infinite}@keyframes pp-bg-loading-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes pp-bg-spin{to{transform:rotate(1turn)}}.pp-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:1rem 0 .25rem;padding:12px 14px;background:var(--ap-surface,#fbfbfc);border:1px solid var(--ap-border,#e5e7eb);border-radius:10px}.pp-toolbar input{flex:1 1 240px;padding:9px 13px;font-size:.95rem;font-family:inherit}.pp-toolbar input,.pp-toolbar select{border:1px solid var(--ap-input-border,#cbd5e1);border-radius:6px;background:var(--ap-input-bg,#fff);color:var(--ap-text,inherit)}.pp-toolbar select{padding:8px 10px;font-size:.9rem}.pp-toolbar .pp-count{font-size:.85rem;color:var(--ap-muted,#64748b);font-weight:600}.pp-mobile-filters{display:none;padding:8px 14px;border:1px solid var(--ap-input-border,#cbd5e1);border-radius:6px;background:var(--ap-input-bg,#fff);color:var(--ap-text,inherit);font-weight:600;font-size:.9rem;cursor:pointer}.pp-layout{display:grid;grid-template-columns:250px minmax(0,1fr);grid-gap:16px;gap:16px;margin-top:.25rem;align-items:start}.pp-sidebar{position:-webkit-sticky;position:sticky;top:70px;max-height:calc(100vh - 90px);overflow-y:auto;padding:14px 16px;background:var(--ap-surface,#fff);border:1px solid var(--ap-border,#e5e7eb);border-radius:10px;font-size:.9rem}.pp-sidebar h3{font-size:.8rem;font-weight:700;color:var(--ap-text-muted,#475569);margin:.85rem 0 .35rem;letter-spacing:.03em;text-transform:uppercase}.pp-sidebar h3:first-child{margin-top:0}.pp-chip-row{display:flex;flex-wrap:wrap;gap:5px}.pp-chip{padding:4px 10px;border-radius:999px;background:var(--ap-tag-bg,#f1f5f9);color:var(--ap-text-muted,#475569);border:1px solid var(--ap-input-border,#cbd5e1);font-size:.78rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pp-chip.active{background:var(--brand-color,#0c5fce);color:#fff;border-color:var(--brand-color,#0c5fce)}.pp-range-row{display:flex;gap:6px;align-items:center;font-size:.82rem;color:var(--ap-text-muted,#475569)}.pp-range-row input[type=number]{width:60px;padding:3px 6px;border:1px solid var(--ap-input-border,#cbd5e1);border-radius:4px;font-size:.82rem;background:var(--ap-input-bg,#fff);color:var(--ap-text,inherit)}.pp-sidebar label{display:flex;align-items:center;gap:6px;cursor:pointer;padding:3px 0;font-size:.85rem;color:var(--ap-text,#1f2937)}.pp-sidebar label input[type=checkbox]{margin:0}.pp-reset{margin-top:1rem;width:100%;padding:7px;background:var(--ap-tag-bg,#f1f5f9);color:var(--ap-text,#1f2937);border:1px solid var(--ap-input-border,#cbd5e1);border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer}.pp-reset:hover{background:var(--ap-border,#e2e8f0)}.pp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:12px;gap:12px;align-items:start}.pp-card{background:var(--ap-surface,#fff);border:1px solid var(--ap-border,#e5e7eb);border-radius:10px;overflow:hidden;transition:box-shadow .15s,transform .06s;display:flex;flex-direction:column}.pp-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.07);transform:translateY(-1px)}.pp-thumb{width:100%;object-fit:cover;display:block;background:var(--ap-surface,#f8fafc)}.pp-thumb,.pp-thumb-fallback{aspect-ratio:4/3;border-bottom:1px solid var(--ap-border,#e5e7eb)}.pp-thumb-fallback{display:flex;align-items:center;justify-content:center;padding:14px 16px;box-sizing:border-box;font-family:Georgia,serif}.pp-thumb-title{font-size:.98rem;font-weight:700;line-height:1.28;text-align:center;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.pp-body{padding:12px 16px 14px;flex:1 1;display:flex;flex-direction:column}.pp-year-row{display:flex;justify-content:space-between;font-size:.72rem;color:var(--ap-muted,#64748b);font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.pp-title{font-family:Georgia,serif;font-size:1.02rem;font-weight:700;color:var(--ap-heading,#0f172a);line-height:1.3;margin:0 0 5px}.pp-title a{color:inherit;text-decoration:none}.pp-title a:hover{text-decoration:underline}.pp-authors{font-size:.82rem;color:var(--ap-text-muted,#475569);line-height:1.4;margin:0 0 8px}.pp-summary{font-size:.82rem;color:var(--ap-text,#1f2937);line-height:1.5;margin:0 0 10px;flex:1 1}.pp-pills{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.pp-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:4px;font-size:.72rem;font-weight:700;background:var(--ap-tag-bg,#f1f5f9);color:var(--ap-text-muted,#475569)}.pp-pill.cite-1{background:#dbeafe;color:#1d4ed8}.pp-pill.cite-2{background:#93c5fd;color:#1e3a8a}.pp-pill.cite-3{background:#1d4ed8;color:#fff}.pp-pill.hf-1{background:#fef3c7;color:#92400e}.pp-pill.hf-2{background:#fcd34d;color:#78350f}.pp-pill.hf-3{background:#b45309;color:#fff}.pp-pill.gh-1{background:#f1f5f9;color:#334155}.pp-pill.gh-2{background:#cbd5e1;color:#1e293b}.pp-pill.gh-3{background:#475569;color:#fff}.pp-tags{display:flex;flex-wrap:wrap;gap:4px}.pp-tag{font-size:.7rem;padding:2px 7px;border-radius:999px;background:#eff6ff;color:#1e40af;border:none;cursor:pointer}.pp-tag:hover{background:#dbeafe}.pp-empty{text-align:center;padding:3rem;color:var(--ap-muted,#64748b);font-size:.95rem}.pp-load-more{text-align:center;padding:1rem}.pp-load-more button{background:var(--brand-color,#0c5fce);color:#fff;padding:10px 22px;border-radius:6px;border:none;font-size:.9rem;font-weight:600;cursor:pointer}.pp-load-more button:hover{filter:brightness(.93)}.pp-fresh{color:var(--ap-accent,#16a34a);font-weight:800}.pp-skel{pointer-events:none}.pp-skel-thumb{aspect-ratio:4/3;border-bottom:1px solid var(--ap-border,#e5e7eb)}.pp-skel-line{height:11px;border-radius:5px;margin:9px 0}.pp-skel-line,.pp-skel-thumb{background:linear-gradient(90deg,var(--ap-tag-bg,#f1f5f9) 25%,var(--ap-border,#e5e7eb) 37%,var(--ap-tag-bg,#f1f5f9) 63%);background-size:400% 100%;animation:pp-shimmer 1.4s ease infinite}.pp-skel-line.w40{width:40%}.pp-skel-line.w60{width:60%}.pp-skel-line.w80{width:80%}.pp-skel-line.w90{width:90%}@keyframes pp-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.pp-rail{margin:0 0 18px;min-width:0}.pp-rail-head{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.pp-rail-head h2{font-size:1rem;font-weight:800;margin:0;color:var(--ap-heading,#0f172a)}.pp-rail-head .sub{font-size:.78rem;color:var(--ap-muted,#64748b)}.pp-rail-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}.pp-rail-card{scroll-snap-align:start;flex:0 0 240px;background:var(--ap-surface,#fff);border:1px solid var(--ap-border,#e5e7eb);border-radius:10px;padding:11px 13px;text-decoration:none;transition:box-shadow .15s,transform .06s}.pp-rail-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.07);transform:translateY(-1px)}.pp-rail-badge{font-size:.68rem;font-weight:800;color:var(--ap-accent,#16a34a);text-transform:uppercase;letter-spacing:.04em}.pp-rail-title{font-family:Georgia,serif;font-size:.9rem;font-weight:700;color:var(--ap-heading,#0f172a);line-height:1.3;margin:3px 0 4px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pp-rail-meta{font-size:.74rem;color:var(--ap-text-muted,#475569)}@media (max-width:768px){.pp-layout{grid-template-columns:minmax(0,1fr)}.pp-sidebar{position:static;max-height:none;display:none}.pp-sidebar.open{display:block;margin-bottom:12px}.pp-mobile-filters{display:block}.pp-hero h1{font-size:1.5rem}}