:root{
  --pm-border:#e6e8ef;
  --pm-muted:#6b7280;
  --pm-bg:#ffffff;
  --pm-soft:#f8fafc;
  --pm-title:#111827;
  --pm-accent:#111827;
}
.pm-card{
  max-width:1100px;
  margin:0 auto;
  background:var(--pm-bg);
  border:1px solid var(--pm-border);
  border-radius:16px;
  padding:18px;
  box-shadow:0 10px 30px rgba(0,0,0,.04);
}
.pm-head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  padding-bottom:12px;
  border-bottom:1px solid var(--pm-border);
}
.pm-title{margin:0;color:var(--pm-title);font-size:22px;line-height:1.2}
.pm-subtitle{margin:6px 0 0;color:var(--pm-muted);font-size:13px}
.pm-badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border:1px solid var(--pm-border);
  border-radius:999px;
  background:var(--pm-soft);
  font-size:12px;
  color:var(--pm-muted);
  white-space:nowrap;
}
.pm-filters{display:flex;flex-direction:column;gap:14px;margin-top:14px}
.pm-years{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pm-radio{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid var(--pm-border);
  border-radius:999px;
  background:#fff;
  cursor:pointer;
  user-select:none;
  transition:all .15s ease;
}
.pm-radio:hover{background:var(--pm-soft)}
.pm-radio input{margin:0}
.pm-radio span{font-size:13px;color:var(--pm-title)}
.pm-searchbar{display:flex;flex-direction:column;gap:8px}
.pm-label{font-size:12px;color:var(--pm-muted)}
.pm-searchrow{display:flex;gap:10px;flex-wrap:wrap}
.pm-input{
  flex:1;
  min-width:280px;
  padding:11px 12px;
  border:1px solid var(--pm-border);
  border-radius:12px;
  outline:none;
}
.pm-input:focus{border-color:#c7cbd6;box-shadow:0 0 0 3px rgba(17,24,39,.06)}
.pm-btn{
  padding:11px 14px;
  border:1px solid var(--pm-accent);
  border-radius:12px;
  background:var(--pm-accent);
  color:#fff;
  cursor:pointer;
}
.pm-btn:hover{filter:brightness(.95)}
.pm-hint{font-size:12px;color:var(--pm-muted)}
.pm-meta{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  margin-top:14px;
  flex-wrap:wrap;
}
.pm-count{font-size:13px;color:var(--pm-muted)}
.pm-pager{display:flex;gap:10px;align-items:center}
.pm-pagebtn{
  padding:8px 12px;
  border:1px solid var(--pm-border);
  border-radius:12px;
  background:#fff;
  cursor:pointer;
}
.pm-pagebtn[disabled]{opacity:.5;cursor:not-allowed}
.pm-pageinfo{font-size:13px;color:var(--pm-muted)}
.pm-tablewrap{overflow:auto;margin-top:12px;border:1px solid var(--pm-border);border-radius:14px}
.pm-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}
.pm-table thead th{
  position:sticky;
  top:0;
  background:var(--pm-soft);
  z-index:1;
  text-align:left;
  font-size:12px;
  color:var(--pm-muted);
  padding:12px 12px;
  border-bottom:1px solid var(--pm-border);
}
.pm-table td{
  padding:12px 12px;
  border-bottom:1px solid var(--pm-border);
  vertical-align:top;
  font-size:14px;
  color:var(--pm-title);
}
.pm-table tbody tr:hover td{background:#fcfcfd}
.pm-muted{color:var(--pm-muted);text-align:center}
.pm-num{white-space:nowrap;font-weight:600}
.pm-date{white-space:nowrap}
.pm-dl{white-space:nowrap}
.pm-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 10px;
  border:1px solid var(--pm-accent);
  border-radius:12px;
  text-decoration:none;
  color:var(--pm-accent);
  font-size:13px;
}
.pm-link:hover{background:var(--pm-accent);color:#fff}
@media (max-width:640px){
  .pm-head{flex-direction:column;align-items:flex-start}
  .pm-input{min-width:200px}
}
