.ctp-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 6px 18px rgba(0,0,0,.04);padding:16px;margin:12px 0}
.ctp-card h3{color:var(--ctp-primary,#6d28d9);font-weight:700;margin:.2rem 0 .4rem}
.note{font-size:.92rem;color:#64748b;margin:.25rem 0 .75rem}
.note.tiny{font-size:.8rem}
.toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:.5rem}
.tabs{display:flex;gap:6px}
.tab{background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:700;color:#444}
.tab.active{background:var(--ctp-primary,#6d28d9);color:#fff;border-color:transparent}
.filters{display:flex;gap:8px}
.filters .filter{padding:8px 10px;border:1px solid #e5e7eb;border-radius:10px}
.cards{display:grid;gap:12px}
@media(min-width:850px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1200px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#fff;display:flex;flex-direction:column;gap:6px}
.card .row{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.card .title{font-weight:800;color:#111}
.badge{font-size:.78rem;color:#fff;background:var(--ctp-primary,#6d28d9);border-radius:999px;padding:2px 8px}
.meta{font-size:.9rem;color:#475569}
.kv{display:grid;grid-template-columns:1fr auto;gap:4px;font-size:.9rem}
.kv .k{color:#6b7280}
.kv .v{font-weight:700}
.actions{margin-top:6px;display:flex;gap:8px}
.btn{background:var(--ctp-primary,#6d28d9);color:#fff;border:1px solid transparent;border-radius:10px;padding:8px 12px;font-weight:700;text-decoration:none}
.btn.outline{background:#fff;color:var(--ctp-primary,#6d28d9);border-color:var(--ctp-primary,#6d28d9)}
.empty{padding:16px;border:1px dashed #e5e7eb;border-radius:12px;color:#6b7280;text-align:center}
