/* MCP Index — "Directory Grid" 青色卡片网格目录风 */
:root { --ink:#0c1618; --paper:#f4f8f8; --card:#ffffff; --line:#d6e4e5; --accent:#0e7c86; --accent2:#0891b2; --muted:#5b7477; }
* { box-sizing:border-box; }
body { margin:0; font:15px/1.6 "IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); }
.wrap { max-width:1000px; margin:0 auto; padding:0 22px; }
header.site { border-bottom:1px solid var(--line); padding:15px 0; background:var(--card); position:sticky; top:0; z-index:10; }
header.site .wrap { display:flex; align-items:center; justify-content:space-between; }
.logo { font-weight:800; font-size:19px; text-decoration:none; color:var(--ink); letter-spacing:-0.02em; }
.logo span { color:var(--accent); }
nav a { color:var(--muted); text-decoration:none; margin-left:15px; font-size:13px; font-weight:600; }
nav a:hover { color:var(--accent); }
h1 { font-size:clamp(30px,5vw,44px); line-height:1.1; letter-spacing:-0.03em; margin:36px 0 14px; font-weight:800; }
.lede { color:#3a5457; font-size:17px; max-width:680px; }
h2 { font-size:20px; margin:40px 0 4px; font-weight:700; letter-spacing:-0.01em; }
h2 a { color:var(--ink); text-decoration:none; }
h2 a:hover { color:var(--accent); }
.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; margin:16px 0; }
.entry { display:block; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:16px 18px; text-decoration:none; color:inherit; transition:border-color .15s, transform .15s, box-shadow .15s; }
.entry:hover { border-color:var(--accent); transform:translateY(-2px); box-shadow:0 8px 20px rgba(14,124,134,0.1); }
.entry-top { display:flex; align-items:center; gap:8px; margin-bottom:6px; }
.entry-name { font-weight:700; font-size:16px; color:var(--ink); }
.badge { font-size:10px; text-transform:uppercase; letter-spacing:0.06em; font-weight:700; color:#fff; background:var(--accent); padding:2px 7px; border-radius:999px; }
.entry-desc { margin:0; font-size:13.5px; color:var(--muted); line-height:1.5; }
.muted { color:var(--muted); font-size:14px; font-weight:400; }
a { color:var(--accent); }
footer.site { border-top:1px solid var(--line); margin-top:56px; padding:24px 0 36px; font-size:13px; color:var(--muted); }
footer.site a { color:var(--muted); }
.cross { background:linear-gradient(90deg,#e6f4f4,#e0f2fe); border:1px solid #c5e5e8; border-radius:12px; padding:14px 18px; font-size:14px; margin-top:24px; }
@media (max-width:560px){ .wrap{ padding:0 16px; } .grid{ grid-template-columns:1fr; } }
