:root{--ink:#172033;--muted:#6d7789;--blue:#526df5;--card:#fff;--bg:#f5f7fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 system-ui,-apple-system,"Microsoft YaHei",sans-serif}.wrap{max-width:1180px;margin:auto;padding:0 22px}.top{background:#fff;border-bottom:1px solid #e9ecf3}.nav{height:68px;display:flex;align-items:center;gap:28px}.brand{font-size:21px;font-weight:800;text-decoration:none;color:var(--ink)}.links{display:flex;gap:18px;margin-left:auto}.links a,a{color:var(--blue);text-decoration:none}.hero{padding:70px 0 42px;text-align:center;background:radial-gradient(circle at 50% -10%,#dce4ff,#f5f7fb 65%)}h1{font-size:42px;margin:0 0 8px;letter-spacing:-1px}.muted{color:var(--muted)}.search{max-width:720px;margin:26px auto 0;position:relative;z-index: 9;}.search input{width:100%;border:1px solid #d9deec;border-radius:16px;padding:17px 22px;font-size:17px;box-shadow:0 10px 28px #3552aa12;outline:none}.search input:focus{border-color:var(--blue);box-shadow:0 10px 28px #3552aa25}.search-results{position:absolute;width:100%;z-index:5;background:#fff;border-radius:14px;text-align:left;box-shadow:0 18px 40px #1e2c5530;overflow:hidden}.result{display:block;padding:12px 18px;color:var(--ink)}.result:hover{background:#f5f7ff}.section{padding:35px 0}.section h2{font-size:20px;margin:0 0 18px}.hot{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);grid-auto-columns:minmax(225px,1fr);gap:12px;overflow-x:auto;padding-bottom:9px;scrollbar-color:#b8c1dc transparent}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.site{display:flex;gap:12px;background:var(--card);padding:16px;border:1px solid #e9ecf3;border-radius:14px;color:var(--ink);transition:.2s;min-width:0}.site:hover{transform:translateY(-3px);border-color:#bfcaff;box-shadow:0 10px 22px #233a7812}.icon{width:36px;height:36px;border-radius:9px;object-fit:cover;background:#e9edfb;flex:none}.site strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site p{margin:2px 0 0;color:var(--muted);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.badge{display:inline-block;font-size:11px;color:#e55238;background:#fff0ed;padding:1px 6px;border-radius:5px;margin-left:5px}.letters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.letters a{background:#eaf0ff;padding:2px 9px;border-radius:7px}.letter-title{padding-top:18px}footer{background:#202738;color:#d9deeb;text-align:center;padding:26px;margin-top:50px;font-size:13px}footer a{color:#b7c5ff}.floating{position:fixed;right:22px;bottom:30px;z-index:10;display:grid;gap:8px}.floating button,.floating a{border:0;border-radius:50%;width:46px;height:46px;background:#fff;box-shadow:0 5px 18px #14214b2b;display:grid;place-items:center;color:var(--blue);cursor:pointer}.modal{position:fixed;inset:0;background:#10182780;z-index:20;display:none;place-items:center}.modal.show{display:grid}.dialog{background:#fff;width:min(94vw,500px);padding:26px;border-radius:18px}.dialog input,.dialog textarea,.dialog select,.admin input,.admin textarea,.admin select{width:100%;padding:10px;border:1px solid #d8deea;border-radius:8px;margin:4px 0 12px;font:inherit}.dialog textarea{height:110px}.button{background:var(--blue);border:0;color:#fff;border-radius:8px;padding:10px 16px;cursor:pointer}.admin{max-width:1180px;margin:35px auto;padding:0 20px}.panel{background:#fff;border:1px solid #e4e8f0;border-radius:12px;padding:20px;margin:16px 0;overflow:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:9px;border-bottom:1px solid #edf0f5;text-align:left}.danger{color:#c43030}@media(max-width:600px){h1{font-size:30px}.nav{gap:10px}.links{gap:10px;font-size:13px}.hero{padding-top:48px}.grid{grid-template-columns:1fr}}
