@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Noto Sans SC,sans-serif;color:#172331;background:#f8fafb;font-synthesis:none;-webkit-font-smoothing:antialiased;--ink:#172331;--muted:#6d7b89;--line:#e2e8ec;--accent:#2856d8}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8caaff;outline-offset:3px}.app-shell{min-height:100vh}.topbar{height:78px;display:flex;align-items:center;gap:56px;padding:0 max(36px,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:11px;padding:0;border:0;background:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;background:#1c3458}.brand-name{font-size:21px;font-weight:800;letter-spacing:-.8px}.brand-name span{margin-left:2px;color:#5b6b7a;font-weight:600}.main-nav{height:100%;display:flex;align-items:center;gap:32px}.nav-link{height:100%;padding:0 2px;border:0;border-bottom:2px solid transparent;background:none;color:#657483;font-size:14px;font-weight:600}.nav-link.active,.nav-link:hover{color:#172331}.nav-link.active{border-bottom-color:#2856d8}.topbar-actions{margin-left:auto}.topbar-author{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none}.topbar-author img{width:38px;height:38px;border:1px solid #f0c5a8;border-radius:50%;object-fit:cover;object-position:center 30%;box-shadow:0 2px 8px #2a37451a}.topbar-author span{display:flex;flex-direction:column;gap:2px}.topbar-author small{color:#8a97a2;font-size:10px;line-height:1.1}.topbar-author strong{color:#304154;font-size:13px;line-height:1.25}.topbar-author:hover strong{color:#2856d8}.hero{position:relative;padding:76px 24px 72px;background:radial-gradient(circle at 82% 24%,#dde9fa 0,#f0f5fb 24%,transparent 50%),linear-gradient(135deg,#f3f7fb,#edf3f8 55%,#f8fafb);border-bottom:1px solid var(--line)}.hero-content{max-width:1100px;margin:0 auto}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 23px;color:#3d628c;font-size:12px;font-weight:800;letter-spacing:1.4px}.live-dot{width:8px;height:8px;border-radius:50%;background:#5283d4;box-shadow:0 0 0 5px #5283d423}.hero h1{margin:0;color:#172331;font-size:clamp(42px,5.3vw,70px);line-height:1.18;letter-spacing:-2.5px;font-weight:800}.hero h1 span{color:#345c9b}.search-form{display:flex;align-items:center;gap:14px;max-width:755px;height:66px;padding:7px 8px 7px 20px;border:1px solid #cfdce8;border-radius:14px;background:#fff;box-shadow:0 14px 36px #1836520f}.search-icon{flex:none;color:#8493a1}.search-form input{flex:1;min-width:0;height:100%;border:0;outline:0;color:#172331;background:transparent;font-size:15px}.search-form input::placeholder{color:#9aa8b4}.clear-search{display:grid;place-items:center;border:0;background:none;color:#718294}.search-button{display:flex;align-items:center;justify-content:center;gap:9px;flex:none;min-width:135px;height:50px;padding:0 15px;border:0;border-radius:9px;background:#263f64;color:#fff;font-size:14px;font-weight:700}.search-button:hover,.modal-copy:hover{background:#1a304f}.suggestions{display:flex;align-items:center;gap:9px;margin-top:15px;color:#82909c;font-size:12px}.suggestions span{margin-right:5px}.suggestions button{padding:7px 12px;border:1px solid #dce6ed;border-radius:7px;background:#ffffffb4;color:#5d7081;font-size:12px}.suggestions button:hover{border-color:#b9cde4;color:#2856d8}.recommendations{max-width:1320px;margin:0 auto;padding:52px 0 20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-eyebrow{color:#6c87a2;font-size:11px;font-weight:800;letter-spacing:1.5px}.section-heading h2{margin:7px 0 5px;font-size:29px;letter-spacing:-.7px;line-height:1.35}.section-heading p{margin:0;color:#82909a;font-size:14px}.catalog-count{display:inline-flex;align-items:center;padding:9px 12px;border-radius:8px;background:#e9eff5;color:#4f6781;font-size:12px;font-weight:700}.reset-filter{display:inline-flex;align-items:center;gap:5px;margin-right:14px;padding:0;border:0;background:none;color:#526e95;font-size:13px}.topic-filters{display:flex;align-items:center;gap:17px;margin-bottom:16px}.topic-filter-label{flex:none;color:#708190;font-size:13px;font-weight:700}.topic-chip-list{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;padding:2px 1px 7px;scrollbar-width:thin}.topic-chip{flex:none;padding:9px 13px;border:1px solid #dfe7ed;border-radius:8px;background:#fff;color:#617181;font-size:12px;font-weight:600}.topic-chip small{margin-left:5px;color:#99a7b3;font-size:11px}.topic-chip:hover,.topic-chip.active{border-color:#aac2e2;background:#eaf2fb;color:#27528e}.topic-chip.active small{color:#5d80ac}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 17px;color:#8b98a3;font-size:12px}.list-controls{display:flex;align-items:center;gap:22px}.list-controls label{display:flex;align-items:center;gap:8px}.list-controls select{height:34px;padding:0 8px;border:1px solid #dbe4eb;border-radius:7px;background:#fff;color:#435568}.skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.skill-card{min-width:0;min-height:260px;display:flex;flex-direction:column;padding:24px 25px 0;border:1px solid #e0e6eb;border-radius:13px;background:#fff;box-shadow:0 4px 12px #233f5705;transition:transform .2s,box-shadow .2s,border-color .2s}.skill-card:hover{transform:translateY(-2px);border-color:#c9d8e6;box-shadow:0 16px 36px #233f5712}.skill-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.skill-visual{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:14px;color:var(--cover-accent);background:var(--cover-bg)}.skill-card-top-meta{display:flex;align-items:center;gap:9px}.topic-label{padding:6px 9px;border-radius:6px;background:#f0f4f7;color:#5e7082;font-size:11px;font-weight:700}.card-stars{display:flex;align-items:center;gap:4px;color:#637181;font-size:12px;font-weight:700}.card-stars svg{color:#b88b36}.skill-name-button{align-self:flex-start;max-width:100%;margin-top:16px;padding:0;border:0;background:none;text-align:left}.skill-name-button h3{overflow:hidden;margin:0;color:#1e2d3d;font-size:18px;letter-spacing:-.25px;text-overflow:ellipsis;white-space:nowrap}.skill-name-button:hover h3{color:#2856d8}.skill-purpose{display:-webkit-box;overflow:hidden;margin:9px 0 15px;min-height:45px;color:#6a7b8b;font-size:13px;line-height:1.75;-webkit-line-clamp:2;-webkit-box-orient:vertical}.skill-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-bottom:17px;color:#9aa6b0;font-size:11px}.skill-card-meta a{display:flex;align-items:center;gap:6px;min-width:0;color:#718495;text-decoration:none}.skill-card-meta a:hover{color:#2856d8}.skill-card-meta a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-card-meta>span{flex:none}.skill-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 -25px;padding:12px 25px;border-top:1px solid #edf0f2}.skill-card-foot button{display:inline-flex;align-items:center;gap:7px;border:0;background:none;font-size:12px;font-weight:700}.detail-link{padding:8px 0;color:#647b91}.detail-link:hover{color:#2856d8}.card-copy{padding:9px 12px;border-radius:7px!important;background:#eaf1fa!important;color:#315b90}.card-copy:hover{background:#dce9f8!important}.cover-code{--cover-bg:#e1eaf6;--cover-accent:#315982}.cover-writing{--cover-bg:#f5e9e5;--cover-accent:#a7634e}.cover-design{--cover-bg:#eee8f6;--cover-accent:#70599b}.cover-media{--cover-bg:#eceaf5;--cover-accent:#656298}.cover-data{--cover-bg:#e4f0ed;--cover-accent:#438577}.cover-office{--cover-bg:#e5eef4;--cover-accent:#547a93}.cover-research{--cover-bg:#e7f0ec;--cover-accent:#548579}.cover-web{--cover-bg:#e7eff9;--cover-accent:#5079aa}.cover-automation{--cover-bg:#f4ebe4;--cover-accent:#ab7958}.cover-ai{--cover-bg:#eeeaf6;--cover-accent:#76669b}.cover-project{--cover-bg:#eaf0e7;--cover-accent:#718b61}.cover-growth{--cover-bg:#f6eee0;--cover-accent:#aa8546}.cover-security{--cover-bg:#e7ecf1;--cover-accent:#5c748b}.cover-game{--cover-bg:#f0e9f4;--cover-accent:#896792}.cover-learning{--cover-bg:#f4f0e1;--cover-accent:#9b8548}.cover-other{--cover-bg:#e9edf0;--cover-accent:#667a8b}.empty-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:65px 20px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#718292;text-align:center}.empty-state strong{color:#263748}.empty-state p{margin:0;font-size:13px}.empty-state button{margin-top:6px;padding:9px 14px;border:1px solid #cad9e8;border-radius:8px;background:#fff;color:#315b90}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding:28px 0;color:#7a8996;font-size:13px}.pagination button{padding:9px 14px;border:1px solid #d9e3eb;border-radius:7px;background:#fff;color:#526779}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination strong{color:#263748}.site-footer{display:flex;justify-content:space-between;gap:34px;max-width:1320px;margin:60px auto 0;padding:24px 0 36px;border-top:1px solid var(--line);color:#8997a3;font-size:11px;line-height:1.8}.site-footer div{display:flex;flex-direction:column}.site-footer strong{color:#263a4e;font-size:15px}.site-footer .footer-brand-block{gap:2px;min-width:260px}.site-footer .footer-info-block{align-items:flex-end;gap:8px;max-width:680px;text-align:right}.footer-disclaimer{max-width:680px;margin:0;color:#8997a3}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:20px;background:#1525399c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.detail-modal{width:min(100%,620px);max-height:90vh;overflow-y:auto;padding:30px;border:1px solid #e2e9ee;border-radius:16px;background:#fff;box-shadow:0 30px 80px #0a1e313b}.modal-header{display:flex;align-items:center;gap:14px}.modal-symbol{display:grid;place-items:center;flex:none;width:54px;height:54px;border-radius:12px;background:#e6edf5;color:#426a96}.modal-title{flex:1;min-width:0}.modal-kicker{display:block;margin-bottom:3px;color:#7b8e9f;font-size:11px}.modal-title h2{overflow-wrap:anywhere;margin:0;color:#1f3041;font-size:21px}.modal-close{display:grid;place-items:center;flex:none;width:36px;height:36px;border:0;border-radius:8px;background:#f2f5f7;color:#687c8c}.detail-description{margin-top:25px;padding:20px;border-radius:10px;background:#f5f8fa}.detail-description strong,.install-section-heading strong{color:#263a4b;font-size:14px}.detail-description p{margin:9px 0;color:#5a6f80;font-size:13px;line-height:1.8}.detail-description small{color:#95a1ab;font-size:11px}.detail-source{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 2px;border-bottom:1px solid var(--line)}.detail-source>span,.detail-source a{display:flex;align-items:center;gap:8px;font-size:12px}.detail-source>span{color:#82919e}.detail-source a{max-width:70%;overflow-wrap:anywhere;color:#315f98;text-decoration:none}.install-section{padding:21px 0 19px}.install-section-heading p{margin:5px 0 0;color:#8593a0;font-size:12px;line-height:1.6}.command-box{margin-top:15px;padding:16px;border:1px solid #dce6ec;border-radius:9px;background:#f8fafb}.command-box code{display:block;max-height:155px;overflow:auto;color:#496071;font-family:DM Sans,Noto Sans SC,sans-serif;font-size:12px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.modal-copy{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:45px;margin-top:12px;border:0;border-radius:8px;background:#263f64;color:#fff;font-size:13px;font-weight:700}.install-note{display:flex;align-items:flex-start;gap:6px;margin-top:12px;color:#8d9ca7;font-size:11px;line-height:1.6}.install-note svg{flex:none;margin-top:1px}.modal-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:16px;border-top:1px solid var(--line)}.tag-list{display:flex;flex-wrap:wrap;gap:7px}.tag-list span{padding:5px 8px;border-radius:6px;background:#edf2f6;color:#63798a;font-size:11px}.source-button{display:flex;align-items:center;gap:4px;flex:none;color:#315f98;text-decoration:none;font-size:12px;font-weight:700}.toast-message{position:fixed;z-index:20;left:50%;bottom:28px;transform:translate(-50%);max-width:90vw;padding:12px 17px;border:1px solid #d9e4ed;border-radius:9px;background:#fff;color:#344d62;box-shadow:0 12px 30px #0f283026;font-size:13px;text-align:center}@media(max-width:1400px){.topbar{padding-inline:38px}.recommendations,.site-footer{margin-inline:38px}}@media(max-width:760px){.topbar{height:64px;padding-inline:20px;gap:22px}.brand-name{font-size:19px}.main-nav{gap:15px}.nav-link{font-size:12px}.main-nav{display:flex}.nav-link:not(.active){display:none}.topbar{gap:12px}.topbar-author{gap:7px}.topbar-author img{width:34px;height:34px}.topbar-author strong{font-size:12px}.hero{padding:58px 20px 54px}.hero h1{font-size:clamp(37px,8vw,52px);letter-spacing:-1.6px}.search-form{height:58px;gap:8px;padding-left:13px}.search-form input{font-size:13px}.search-button{min-width:47px;width:47px;height:44px;font-size:0;gap:0}.search-button svg{width:19px}.suggestions{flex-wrap:wrap}.recommendations{margin:0;padding:34px 20px 0}.section-heading{align-items:flex-end}.section-heading h2{font-size:23px}.section-heading p{font-size:12px}.topic-filters{align-items:flex-start;flex-direction:column;gap:8px}.topic-chip-list{width:100%}.skill-grid{grid-template-columns:1fr}.list-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.list-controls{width:100%;justify-content:space-between}.site-footer{margin:45px 20px 0;flex-direction:column;gap:14px}.site-footer .footer-brand-block{min-width:0}.site-footer .footer-info-block{align-items:flex-start;text-align:left}.detail-modal{padding:22px}.detail-source{align-items:flex-start;flex-direction:column}.detail-source a{max-width:100%}}@media(max-width:390px){.topbar{gap:12px;padding-inline:14px}.nav-link,.topbar-author span{display:none}.brand-mark{width:30px;height:30px}.brand-name{font-size:17px}.main-nav{gap:9px}.nav-link{font-size:11px}.hero,.recommendations{padding-inline:15px}.skill-card{padding-inline:18px}.skill-card-foot{margin-inline:-18px;padding-inline:18px}.skill-card-meta{align-items:flex-start;flex-direction:column;gap:5px}.modal-bottom{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.hero{padding:18px 24px 0;background:transparent;border:0}.hero-content{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:center;gap:36px;max-width:1320px;padding:40px 46px;border:1px solid #294460;border-radius:18px;background:radial-gradient(ellipse at 84% 0%,#294868 0,#1d3551 43%,#172a41);box-shadow:0 18px 42px #10243b17}.hero h1{max-width:650px;color:#f5f7fa;font-size:clamp(36px,4.05vw,54px);line-height:1.19;letter-spacing:-1.8px}.hero h1 span{margin-left:0;color:#f0b47f}.search-form{width:100%;max-width:none;height:64px;padding:7px 8px 7px 18px;border:1px solid #ffffff3d;border-radius:11px;background:#fffffffa;box-shadow:0 12px 26px #081a2c38}.search-button{background:#e9af80;color:#192b3e}.search-button:hover{background:#f1bd92}@media(max-width:900px){.hero{padding:16px 22px 0}.hero-content{grid-template-columns:minmax(0,1fr);gap:23px;padding:30px 32px 31px}.hero h1{font-size:clamp(34px,6.2vw,45px)}}@media(max-width:760px){.hero{padding:14px 20px 0}.hero-content{gap:20px;padding:26px 27px 28px;border-radius:15px}.hero h1{font-size:clamp(31px,6.8vw,41px);letter-spacing:-1.2px}.search-form{height:54px}}@media(max-width:390px){.hero{padding:12px 15px 0}.hero-content{gap:18px;padding:23px 19px 24px}.hero h1{font-size:31px;letter-spacing:-1.1px}}.topbar{height:64px}.hero{padding:35px 24px 29px}.hero{padding:27px 24px 23px}.hero-content{max-width:1120px}.eyebrow{margin-bottom:13px}.hero h1{font-size:clamp(30px,3.4vw,44px);line-height:1.25;letter-spacing:-1.4px}.hero h1 span{margin-left:8px}.search-form{max-width:650px;height:55px;padding:5px 6px 5px 16px;border-radius:10px}.search-button{height:43px}.suggestions{margin-top:11px}.recommendations{padding-top:27px}.section-heading{margin-bottom:18px}.section-heading h2{font-size:24px}.topic-filters{margin-bottom:7px}.list-toolbar{margin:3px 0 12px}.skill-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.page-size-note{color:#9aa5ae;font-size:11px}.skill-card{min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0;border:1px solid #ebe3da;border-radius:14px;background:#fffdfa;box-shadow:none}.skill-card:hover{border-color:#d6c8bb;box-shadow:0 13px 28px #46311a12}.card-image-button{display:block;width:100%;padding:0;border:0;border-bottom:1px solid #eee7df;background:#f8f3ec}.card-image-button img{display:block;width:100%;height:100%;object-fit:cover;object-position:left center}.skill-card-content{display:flex;flex:1;flex-direction:column;min-width:0;padding:16px 17px 15px}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-title-zh{overflow:hidden;color:#252725;font-size:16px;font-weight:750;letter-spacing:-.25px;text-overflow:ellipsis;white-space:nowrap}.card-copy{display:grid;place-items:center;flex:none;width:30px;height:30px;padding:0;border:1px solid #e8dfd4;border-radius:50%!important;background:#fffaf2!important;color:#5e6262}.card-copy:hover{background:#f4e9da!important;color:#243a57}.skill-name-button{margin-top:8px}.skill-name-button h3{font-size:15px;font-weight:700}.skill-purpose{min-height:54px;margin:11px 0 18px;color:#73716e;font-size:12px;line-height:1.6;-webkit-line-clamp:3}.skill-card-meta{margin-top:auto;padding:0;color:#817d78;font-size:12px}.skill-card-meta a{gap:8px;min-width:0;color:#777773}.author-avatar{display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;object-fit:cover;background:#e5e3df;color:#4d5a69;font-size:12px;font-weight:700}.card-stars{gap:5px;color:#77716b;font-size:12px;font-weight:600}.card-stars svg{color:#766f64}.card-media{position:relative}.card-image-button{min-height:unset;aspect-ratio:1.55/1}.card-placeholder{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:10px;padding:20px;text-align:left;color:var(--cover-accent);background-color:var(--cover-bg)}.card-placeholder span{font-size:19px;font-weight:750}.hot-badge{position:absolute;top:12px;left:12px;padding:6px 9px;border:1px solid #ffffffba;border-radius:7px;background:#fffdf4e8;color:#796b43;font-size:10px;font-weight:750;box-shadow:0 2px 8px #1f27320c}.hot-badge.is-hot{background:#fff4e5ec;color:#9a5a24}@media(max-width:1150px){.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1 span{display:block;margin-left:0}}@media(max-width:520px){.topbar{height:60px}.hero{padding:29px 16px 26px}.hero h1{font-size:31px}.search-form{height:53px}.search-button{height:41px}.recommendations{padding-top:24px}.skill-grid{grid-template-columns:1fr}.skill-card-content{padding:17px 18px}.card-image-button img{aspect-ratio:1.75/1}}.hero-content{width:100%;max-width:1320px}@media(max-width:1400px)and (min-width:761px){.hero{padding-left:38px;padding-right:38px}}@media(max-width:760px){.hero{padding-left:20px;padding-right:20px}}@media(max-width:390px){.hero{padding-left:15px;padding-right:15px}}@media(min-width:1200px){.hero-content{grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr)}.hero h1{font-size:clamp(28px,2.4vw,36px);letter-spacing:-1.25px;white-space:nowrap}}html,body{background:#f7f9fb}body{background:radial-gradient(ellipse at 7% 10%,#e5eef8a6 0,transparent 34%),radial-gradient(ellipse at 94% 64%,#faeee3a1 0,transparent 31%),linear-gradient(135deg,#f7f9fb,#f2f6f8 52%,#faf8f5);background-attachment:fixed}.app-shell{background:transparent}.topbar{position:sticky;top:0;z-index:40;background:#ffffffed;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px #dce4ebaa}.brand-mark{width:40px;height:40px;overflow:hidden;border-radius:12px;background:transparent}.brand-mark img{display:block;width:100%;height:100%}@media(max-width:390px){.brand-mark{width:34px;height:34px}}
