html:root{--card-bg: #fff;--card-border: #eee;--card-radius: 12px;--card-shadow: 0 2px 6px rgba(0,0,0,.03);--card-shadow-hover: 0 4px 16px rgba(0,0,0,.05);--card-title: #222;--card-desc: #666;--card-inactive: #bbb;--card-inactive-line: #f77;--code-bg: #212121}html[data-theme=dark]{--card-bg: #242526 !important;--card-border: #3a3b3c !important;--card-shadow: 0 2px 6px rgba(0,0,0,.2) !important;--card-shadow-hover: 0 4px 16px rgba(0,0,0,.3) !important;--card-title: #e4e6ea !important;--card-desc: #b0b3b8 !important;--card-inactive: #8a8d91 !important;--card-inactive-line: #f77 !important;--code-bg: #2d2d2d !important}@media (max-width: 768px){html[data-theme=dark] .link-card{background:var(--card-bg)!important;border-color:var(--card-border)!important;color:var(--card-title)!important}html[data-theme=dark] .link-info h3{color:var(--card-title)!important}html[data-theme=dark] .truncated-desc{color:var(--card-desc)!important}html[data-theme=dark] .glass-tooltip{background:var(--card-bg)!important;border-color:var(--card-border)!important;color:var(--card-desc)!important}html[data-theme=dark] .friend-apply-title{color:var(--heading-color, #e4e6ea)!important}html[data-theme=dark] .friend-apply-sub{color:var(--text-color, #b0b3b8)!important}html[data-theme=dark] .friend-apply-codeblock{background:var(--code-bg)!important}}.links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin-bottom:2.5rem;overflow:visible}.link-card{display:flex;align-items:center;gap:1.2rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:1.2rem 1.4rem;text-decoration:none;color:inherit;transition:box-shadow .18s,border-color .18s,transform .18s;position:relative;z-index:0}.link-card:hover,.link-card:focus-within{z-index:20;box-shadow:var(--card-shadow-hover);border-color:#00baff33;transform:translateY(-2px) scale(1.018)}.link-logo{width:64px;height:64px;border-radius:50%;object-fit:cover;background:#f1f3f6;flex-shrink:0}.link-info h3{margin:0;font-size:1.06rem;font-weight:600;color:var(--card-title);letter-spacing:.02em;display:flex;align-items:center;gap:.48rem;line-height:1.2}.link-info h3.inactive{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--card-inactive-line);color:var(--card-inactive);font-weight:500}.cert-badge{display:inline-flex;align-items:center;margin-left:.35rem;vertical-align:middle}.cert-badge svg{margin-bottom:-2px}.desc-container{position:relative;display:block}.truncated-desc{margin:.18em 0 0;font-size:14px;color:var(--card-desc);line-height:1.45;font-weight:400;font-family:inherit;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.7em;cursor:text;text-decoration:none!important;transition:color .16s;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.glass-tooltip{display:block;pointer-events:none;opacity:0;position:absolute;left:50%;top:100%;z-index:30;margin-top:.5em;width:max-content;max-width:340px;font-family:inherit;font-size:14px;font-weight:400;line-height:1.45;color:var(--card-desc);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:0 8px 32px #3044781a;padding:.97em 1.26em;background-clip:padding-box;white-space:normal;word-break:break-word;backdrop-filter:blur(10px) saturate(150%);transform:translate(-50%) translateY(20px) scale(.98);transition:opacity .22s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}.link-card:hover .glass-tooltip{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0) scale(1.02)}.glass-tooltip:after{content:"";position:absolute;left:50%;top:-12px;transform:translate(-50%);border-width:0 10px 12px 10px;border-style:solid;border-color:transparent transparent var(--card-bg) transparent;filter:drop-shadow(0 1.5px 2.5px rgba(48,68,120,.08));z-index:3}.inactive-text{font-size:.77rem;color:var(--card-inactive);margin:.18em 0 0;line-height:1.2;font-style:italic;font-weight:400}.friend-apply-block{margin:2.2em auto 2em;max-width:900px}.friend-apply-header{text-align:center;margin-bottom:.7em}.friend-apply-title{font-size:1.32em;color:var(--heading-color, #111);font-weight:700;letter-spacing:.03em;font-family:PingFang SC,Helvetica Neue,Arial,Hiragino Sans GB,sans-serif;margin-bottom:.13em}.friend-apply-sub{font-size:.93em;color:var(--text-color, #111);margin-bottom:.85em;margin-top:0;font-family:PingFang SC,Helvetica Neue,Arial,Hiragino Sans GB,sans-serif;font-weight:400}.friend-apply-codeblock-wrapper{position:relative}.friend-apply-codeblock-wrapper .friend-apply-copy-btn{display:none}.friend-apply-codeblock-wrapper:hover .friend-apply-copy-btn,.friend-apply-codeblock-wrapper:focus-within .friend-apply-copy-btn{display:inline-block}.friend-apply-copy-btn{position:absolute;top:10px;right:16px;z-index:2;background:#111;color:#fff;border:none;border-radius:6px;font-size:13px;padding:3px 13px;font-family:inherit;font-weight:500;cursor:pointer;transition:opacity .15s,background .18s;opacity:.93;outline:none}.friend-apply-copy-btn:hover,.friend-apply-copy-btn:active{opacity:1;background:#000;color:#fff}.friend-apply-codeblock{background:var(--code-bg,#23272f);border-radius:7px;font-family:Fira Mono,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:14.2px;overflow-x:auto;padding:.5em 1.2em .5em 1.5em;line-height:1.48;margin:0;border:0;color:#fff;min-height:0;white-space:pre;max-width:100%;box-sizing:border-box}.friend-apply-json-key{color:#c792ea}.friend-apply-json-string{color:#c3e88d}.friend-apply-json-brace,.friend-apply-json-colon,.friend-apply-json-comma{color:#89ddf1}.friend-apply-json-colon,.friend-apply-json-comma{font-weight:700}@media (max-width: 900px){.friend-apply-block{max-width:100%}}@media (max-width: 600px){.links-grid{grid-template-columns:1fr;gap:1.2rem}.link-logo{width:48px;height:48px}.link-card{padding:1.1rem .8rem}.friend-apply-block{padding:0 .2em}.friend-apply-copy-btn{top:6px;right:7px;font-size:12px;padding:3px 10px}.friend-apply-codeblock{font-size:12.7px;padding:.5em .39em}.friend-apply-title{font-size:1.1em}.friend-apply-sub{font-size:.9em}}
