:root{--blue:#2961ad;--ink:#17253a;--muted:#768296;--line:#e8ecf2;--paper:#f7f9fc;--nav:#152d4f;--radius:14px;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:14px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8db9ef;outline-offset:4px}[hidden]{display:none!important}.sidebar{width:220px;position:fixed;inset:0 auto 0 0;padding:32px 22px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;letter-spacing:1.8px;font-size:16px;font-weight:750}.brand-mark{display:flex;align-items:center;justify-content:center;background:var(--blue);width:40px;height:40px;border-radius:12px;color:#fff;letter-spacing:-4px;font-size:27px;font-weight:800;padding-right:4px}.brand-mark span{color:#b9d6fe}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#8a94a2;font-weight:400;margin-top:6px}.nav-caption{font-size:11px;color:#9ba4b1;margin:47px 12px 15px;letter-spacing:1px}.nav-item{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:9px;margin-bottom:6px;color:#7b8696;font-size:13px}.nav-item>span:first-child{font-size:19px}.nav-item.active{background:#edf3fd;color:#265eab;font-weight:600}.nav-item:hover{background:#f1f5fa}.nav-arrow{margin-left:auto}.sidebar-note{margin-top:auto;padding:24px 12px 29px;border-bottom:1px solid var(--line)}.note-dot{display:block;width:6px;height:6px;background:#72a48b;border-radius:50%;margin-bottom:15px}.sidebar-note strong{font-size:13px;font-weight:550}.sidebar-note p{font-size:11px;color:#8a94a2;line-height:1.9;margin:8px 0 0}.sidebar-bottom{font-size:8px;letter-spacing:1.2px;color:#9aa5b5;padding:24px 12px 0}.sidebar-bottom span{display:block;font-size:10px;letter-spacing:0;margin-top:8px}.workspace{margin-left:220px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 46px;gap:15px}.breadcrumb{font-size:12px;color:#8b94a2}.breadcrumb span{margin:0 13px;color:#c8cfd9}.breadcrumb strong{color:#435169;font-weight:500}.top-actions{display:flex;align-items:center;gap:10px;font-size:11px;color:#7c8797}.separator{height:17px;width:1px;background:var(--line);margin:0 9px}.account-dot{width:7px;height:7px;background:#bcc5d0;border-radius:50%}.account-dot.connected{background:#5e9d7e}.text-button{border:0;background:none;padding:7px 3px;color:#6b7b91;font-size:12px}.text-button:hover{color:var(--blue)}main{max-width:1420px;margin:auto;padding:35px 46px 0}.hero{position:relative;overflow:hidden;min-height:296px;background:linear-gradient(110deg,#edf2fb 0%,#f0f5fb 57%,#e4edf9 100%);border:1px solid #e2eaf6;border-radius:17px;padding:34px 39px;display:flex;justify-content:space-between}.eyebrow{font-size:9px;letter-spacing:2.3px;font-weight:650;color:#6382ae;display:flex;align-items:center;gap:7px}.eyebrow>span{height:4px;width:4px;border-radius:50%;background:var(--blue)}h1{font-size:39px;font-weight:650;line-height:1.25;letter-spacing:1px;margin:19px 0 12px}h1 span{color:var(--blue)}.hero-copy>p{line-height:1.9;color:#6d809a;font-size:12px;margin:0}.hero-tags{display:flex;gap:15px;margin-top:20px}.hero-tags span{font-size:9px;color:#7e91ab;display:flex;align-items:center;gap:5px}.hero-tags span:before{content:"";width:3px;height:3px;background:#96aaca;border-radius:50%}.hero-visual{position:relative;width:330px;min-height:220px;margin-right:26px}.visual-grid{position:absolute;inset:0 -80px;background-image:linear-gradient(#99afd519 1px,transparent 1px),linear-gradient(90deg,#99afd519 1px,transparent 1px);background-size:26px 26px;transform:rotate(-13deg);mask-image:radial-gradient(ellipse,#000 5%,transparent 67%)}.visual-card{position:absolute;background:#fff;border:1px solid #dfe8f5;border-radius:13px;box-shadow:0 17px 40px #28549a0c;padding:22px;width:216px;height:166px}.visual-card-back{left:22px;top:9px;transform:rotate(-10deg);background:#f9fbff;color:#8fadd3}.visual-card-back>div{height:5px;margin-top:12px;background:#e3ebf6;border-radius:6px;width:120px}.visual-card-front{right:0;top:56px;transform:rotate(5deg)}.visual-icon{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:9px;background:#eef3fa;font-size:24px}.visual-icon.blue{color:var(--blue);background:#eaf1fd}.visual-card strong{display:block;font-size:12px;margin:11px 0 12px}.visual-line{width:147px;height:4px;background:#e4ebf6;border-radius:4px;margin-top:7px}.visual-line.short{width:99px}.visual-ready{position:absolute;bottom:17px;font-size:8px;color:#8497ac}.visual-ready i{display:inline-block;width:4px;height:4px;border-radius:50%;background:#70a38b;margin-right:5px}.visual-float{position:absolute;right:-32px;top:25px;font-size:9px;font-family:monospace;color:#7289a8;background:#ffffffdc;padding:9px 12px;border-radius:7px;border:1px solid #dbe5f3;transform:rotate(5deg)}.visual-float>span{margin-left:15px;color:#7c9dc4}.login-panel{display:grid;grid-template-columns:1fr 1fr;gap:45px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 38px;margin:29px 0 65px}.section-kicker{font-size:10px;letter-spacing:1px;color:#8e9bb0}h2{font-size:21px;letter-spacing:.3px;font-weight:600;margin:12px 0}.login-copy>p{font-size:12px;line-height:1.9;color:#8290a2;margin:10px 0 19px}.privacy-note{font-size:10px;color:#93a0b2}.privacy-note>span{margin-right:5px;color:#7b9db2}form{align-self:center}form>label{display:block;font-size:11px;color:#687b96;margin-bottom:10px}.key-field{display:flex;border:1px solid #dce4ef;border-radius:8px;padding:0 12px;background:#fafcfe}.key-field:focus-within{border-color:#91afd5}.key-field input{min-width:0;flex:1;width:100%;border:0;outline:0;background:transparent;height:43px;font-size:12px;color:#354a68}.key-field input::placeholder{color:#b0bac8}.key-field button{border:0;background:none;color:#8c9bb0;font-size:10px}.primary-button{background:var(--blue);color:white;border:1px solid var(--blue);border-radius:8px;min-height:42px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:30px;font-size:12px;font-weight:550;transition:background .15s}.primary-button:hover{background:#1c4e91}.primary-button:disabled{opacity:.6;cursor:wait}form>.primary-button{width:100%;margin-top:12px;justify-content:space-between}.form-message{font-size:10px;min-height:18px;line-height:1.7;color:#a0aaba;margin-bottom:0}.form-message.error,.catalog-message.error{color:#ab5349}.catalog-heading{display:flex;justify-content:space-between;align-items:center;margin-top:34px}.catalog-heading h2{margin:9px 0 0}.count-badge{font-size:10px;font-weight:450;letter-spacing:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce5f0;border-radius:6px;padding:3px 7px;color:#7589a7;vertical-align:middle;margin-left:7px}.secondary-button{border:1px solid #dfe5ee;border-radius:7px;background:#fff;color:#657893;min-height:34px;padding:8px 13px;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:13px}.secondary-button:hover{border-color:#a7bdda;color:var(--blue)}.secondary-button:disabled{opacity:.4;cursor:default}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0 22px}.category-tabs{display:flex;gap:8px;flex-wrap:wrap}.category-tabs button{border:1px solid transparent;border-radius:6px;background:none;padding:8px 12px;color:#8491a4;font-size:11px}.category-tabs button.selected{color:var(--blue);background:#e9f0fb;border-color:#e0e9f6}.search-field{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e1e6ef;border-radius:7px;padding:0 11px;min-width:220px}.search-field>span{color:#95a4b9;font-size:21px}.search-field input{width:100%;background:none;border:0;outline:0;height:34px;color:#52647d;font-size:11px}.search-field input::placeholder{color:#a4afbe}.search-field kbd{font-family:inherit;border:1px solid #e5e9ef;border-radius:3px;color:#aeb8c6;font-size:9px;padding:0 4px}.catalog-message{font-size:11px;color:#95a2b4;min-height:0}.catalog-message:not(:empty){padding:0 0 18px}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.skill-card{background:#fff;border:1px solid #e3e9f1;border-radius:11px;padding:22px;display:flex;flex-direction:column;min-height:236px;transition:box-shadow .18s,transform .18s,border-color .18s}.skill-card:hover{transform:translateY(-3px);border-color:#c7d8ef;box-shadow:0 10px 26px #243d6810}.card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.skill-icon{font-size:20px;display:flex;align-items:center;justify-content:center;background:#eef3fc;width:38px;height:38px;border-radius:10px;color:#5080bd}.skill-card:nth-child(3n+2) .skill-icon{color:#7c709d;background:#f2eff9}.skill-card:nth-child(3n) .skill-icon{color:#6d968e;background:#edf5f1}.version-badge{font-family:monospace;font-size:9px;color:#a3afbf;padding:3px 5px;border:1px solid #edf0f5;border-radius:4px}.card-title{display:block;text-align:left;padding:0;border:0;background:none;color:#334660;font-size:14px;font-weight:600;margin:18px 0 8px;line-height:1.5}.card-title:hover{color:var(--blue)}.card-description{font-size:11px;line-height:1.9;color:#8c99ac;margin:0 0 17px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:59px}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:13px;border-top:1px solid #f1f3f7}.category-label{color:#93a1b4;font-size:9px}.card-action{border:0;background:none;font-size:10px;color:#6f8fbd;padding:3px 0}.card-action:hover{color:#265eab}.install-banner{display:flex;align-items:center;gap:18px;background:#eef2f8;border:1px solid #e5ebf4;border-radius:11px;padding:23px 24px;margin-top:32px}.install-symbol{font-size:23px;color:#8da4c5;background:#fff;border:1px solid #e4eaf3;border-radius:9px;width:39px;height:39px;display:flex;align-items:center;justify-content:center}.install-banner>div:nth-child(2){flex:1}.install-banner strong{font-size:12px;color:#637997;font-weight:550}.install-banner p{font-size:10px;color:#95a3b8;margin:7px 0 0}.install-banner .secondary-button{font-size:10px}.empty-state{text-align:center;padding:54px 20px;color:#8a99ae}.empty-state>span{font-size:32px;color:#b9c9df}.empty-state h3{font-size:14px;font-weight:500;margin:18px 0 10px}.empty-state p{font-size:11px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin:25px 0;color:#8b9bb1;font-size:11px}footer{border-top:1px solid #e4eaf2;margin-top:48px;padding:21px 0 27px;display:flex;justify-content:space-between;gap:15px;color:#a5afbf;font-size:9px}dialog{width:min(680px,calc(100% - 30px));max-height:85vh;overflow:auto;border:1px solid #e1e7f0;border-radius:15px;padding:28px 31px;color:var(--ink);box-shadow:0 28px 100px #10274530}dialog::backdrop{background:#162d4d50;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.icon-button{border:0;background:#f3f6fb;border-radius:50%;width:28px;height:28px;font-size:19px;color:#8a9bb1}.detail-description{color:#7f8ea3;line-height:1.9;font-size:13px}.detail-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:17px;background:#f6f8fc;border-radius:9px;font-size:11px;line-height:1.8;margin:20px 0;color:#7c8da6}.detail-meta strong{display:block;color:#526a8c;font-size:10px;font-weight:500}.detail-version{display:flex;align-items:center;gap:10px;border-bottom:1px solid #edf0f6;padding:16px 0;font-size:12px}.detail-version div{flex:1}.detail-version small{display:block;color:#97a5b9;font-size:10px;margin-top:5px;line-height:1.7}.detail-version button{font-size:10px;gap:12px;min-height:34px}.detail-checksum{overflow-wrap:anywhere;font-family:monospace;font-size:9px!important}.help-steps{padding-left:20px;margin:25px 0}.help-steps li{padding-left:7px;margin-bottom:23px;color:#7a8aa2;font-size:12px;line-height:1.9}.help-steps strong{color:#4d6484;font-size:13px}.help-steps p{margin:6px 0}.code-note{background:#f4f7fb;border:1px solid #e5eaf3;border-radius:9px;padding:18px;font-size:11px;color:#7d8ea7;line-height:1.9}.code-note strong{color:#5b7396;font-weight:550}.code-note pre{overflow:auto;background:#e9eef7;padding:13px;color:#617c9f;border-radius:6px;font-size:10px;line-height:2}.muted{font-size:10px;color:#98a6ba;line-height:1.9}.toast{position:fixed;bottom:30px;left:calc(50% + 90px);transform:translateX(-50%);background:#25456e;color:#fff;padding:13px 20px;border-radius:9px;font-size:12px;box-shadow:0 8px 30px #10284626;z-index:10}@media(min-width:1500px){main{padding-top:43px}.hero{min-height:315px;padding-top:40px}.hero-visual{margin-right:80px}}@media(max-width:1150px){.sidebar{width:190px;padding-left:17px;padding-right:17px}.workspace{margin-left:190px}main{padding:28px 29px 0}.topbar{padding:0 29px}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-visual{width:270px;margin-right:5px;transform:scale(.9);transform-origin:right center}.login-panel{padding:29px;gap:30px}}@media(max-width:820px){.sidebar{width:77px;padding:25px 17px}.brand>span:last-child,.nav-caption,.nav-arrow,.sidebar-note,.sidebar-bottom{display:none}.brand-mark{width:40px}.nav-item{font-size:0;padding:12px;justify-content:center;margin-top:20px}.nav-item>span:first-child{font-size:20px}.workspace{margin-left:77px}.hero{padding:29px;min-height:280px}.hero-visual{width:230px;transform:scale(.8);margin-right:-5px}.login-panel{grid-template-columns:1fr;gap:24px}.login-copy>p br{display:none}.privacy-note{font-size:10px}.catalog-toolbar{flex-direction:column;align-items:stretch}.search-field{min-width:0}.install-banner{flex-wrap:wrap;gap:14px}.install-banner>div:nth-child(2){min-width:180px}.install-banner .text-button{margin-left:auto}.top-actions{gap:7px}.separator{margin:0 3px}.breadcrumb{font-size:11px}.topbar{height:66px}.toast{left:calc(50% + 38px)}footer>span:last-child{display:none}}@media(max-width:560px){.sidebar{display:none}.workspace{margin-left:0}.topbar{padding:0 21px;height:60px}.breadcrumb{font-size:10px}.breadcrumb span{margin:0 7px}.top-actions{font-size:10px}.top-actions .text-button{font-size:10px}main{padding:21px 18px 0}.hero{padding:27px;min-height:260px}.hero-visual{display:none}h1{font-size:34px}.hero-copy>p{font-size:11px}.hero-tags{gap:11px}.hero-tags span{font-size:8px}.login-panel{margin:20px 0 35px;padding:25px}.login-panel h2{font-size:19px}.skill-grid{grid-template-columns:1fr}.skill-card{padding:22px;min-height:220px}.card-description{min-height:auto}.catalog-heading h2{font-size:19px}.catalog-toolbar{margin-top:20px}.category-tabs{gap:4px}.category-tabs button{padding:8px 10px}.install-banner{padding:19px}.install-symbol{display:none}.install-banner>div:nth-child(2){min-width:100%}.install-banner .text-button{margin-left:0}footer{margin-top:35px}.toast{left:50%;width:max-content;max-width:90%}dialog{padding:23px}.detail-meta{grid-template-columns:1fr}.detail-version{align-items:flex-start}.detail-version button{margin-top:3px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.subcategory-tabs { margin: 12px 0 20px; padding-top: 10px; border-top: 1px solid var(--border, #e5e7eb); }
.category-tabs { flex-wrap: wrap; }

/* Category navigation: second level on the left, platforms nested below it. */
.sidebar{width:260px}.workspace{margin-left:260px}.catalog-connected .sidebar{overflow-y:auto;gap:0}.catalog-connected .sidebar-note,.catalog-connected .sidebar-bottom{display:none}.classification-panel{margin-top:25px;min-height:0;flex:1;overflow-y:auto;padding-right:5px}.classification-panel h2{font-size:13px;margin:0 9px 5px}.classification-panel>p{font-size:11px;color:var(--muted);margin:0 9px 17px}.category-group-title{font-size:11px;color:var(--muted);margin:20px 9px 7px}.category-node{display:block;width:100%;border:0;text-align:left;background:transparent;padding:10px 11px;border-radius:7px;color:#52647d;font-size:12px;line-height:1.5}.category-node:hover{background:#f0f4fa}.category-node.selected{background:#eaf1fe;color:#245ca7;font-weight:650}.platform-children{margin:3px 0 9px 16px;padding-left:8px;border-left:1px solid #dbe4f2}.level-three{font-size:11px;padding:8px}.classification-toggle,.classification-overlay{display:none}.category-label{overflow-wrap:anywhere;line-height:1.6;max-width:70%}.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1250px){.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.workspace{margin-left:0}.sidebar{display:none}.classification-toggle{display:inline-flex;align-self:flex-start;white-space:nowrap}.catalog-connected .sidebar{display:flex;position:fixed;inset:0 auto 0 0;width:min(290px,85vw);z-index:40;background:white;transform:translateX(-105%);padding:25px 18px;box-shadow:10px 0 35px #152d4f22}.categories-open .sidebar{transform:translateX(0)}.categories-open .classification-overlay{display:block;position:fixed;inset:0;background:#152d4f66;border:0;z-index:35}.catalog-connected .brand>span:last-child,.catalog-connected .sidebar .nav-caption{display:block}.catalog-connected .sidebar .nav-item{font-size:13px;justify-content:flex-start;margin-top:0;padding:13px 14px}.catalog-connected .sidebar .nav-arrow{display:block}.catalog-connected .sidebar .nav-caption{margin-top:27px}.classification-panel{margin-top:15px}.catalog-toolbar{align-items:stretch}.category-tabs{min-width:0}.toast{left:50%}}
@media(max-width:560px){.skill-grid{grid-template-columns:1fr}.category-label{max-width:65%}}

/* Use the approved Yuanchen AI wordmark at its original aspect ratio. */
.yuanchen-brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;letter-spacing:0}.yuanchen-logo{position:relative;display:block;width:200px;max-width:100%;height:62px;overflow:hidden}.yuanchen-logo img{position:absolute;display:block;width:200px;max-width:none;height:auto;left:50%;top:50%;transform:translate(-50%,-50%)}.yuanchen-brand-context{font-size:12px;line-height:1.6;color:#52647d;letter-spacing:1px}.yuanchen-brand+.nav-caption{margin-top:25px}.hero-copy>p{max-width:470px}
@media(max-width:820px){.catalog-connected .sidebar .yuanchen-brand{font-size:inherit}.catalog-connected .sidebar .yuanchen-logo{display:block}.catalog-connected .sidebar .yuanchen-brand+.nav-caption{margin-top:23px}}
@media(max-width:560px){.catalog-heading h2{font-size:18px}.topbar{gap:8px}.top-actions{flex-shrink:0}.breadcrumb{min-width:0}}

.publish-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.publish-form label,.code-editor-dialog label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#52647d}.publish-form input,.publish-form textarea,.code-editor-dialog input,.code-editor-dialog select,.code-editor-dialog textarea{width:100%;border:1px solid #d8e1ee;border-radius:7px;padding:10px;color:#17253a;background:#fff;font:inherit}.publish-wide{grid-column:1/-1}.code-editor-dialog{width:min(1000px,92vw)}.code-editor-dialog textarea{display:block;font-family:ui-monospace,monospace;font-size:12px;line-height:1.5;resize:vertical;margin:10px 0}.code-actions{display:flex;align-items:center;gap:15px;margin-top:14px}.catalog-heading{gap:10px;flex-wrap:wrap}@media(max-width:560px){.publish-form{grid-template-columns:1fr}.publish-wide{grid-column:auto}}

.manage-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.manage-filters label{display:flex;flex-direction:column;gap:6px;color:#52647d;font-size:12px}.manage-filters select{width:100%;min-width:0;border:1px solid #d8e1ee;border-radius:7px;padding:10px;background:#fff;color:#17253a;font:inherit}.manage-filters select:disabled{color:#9aa5b5;background:#f7f9fc}@media(max-width:560px){.manage-filters{grid-template-columns:1fr}}
.share-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0}.share-actions button{min-height:36px}.share-actions span{flex-basis:100%}
.skill-card{text-align:left;width:100%;font:inherit}
.danger-button{color:#b44c45;border-color:#e8c7c3}.danger-button:hover{background:#fff4f2}
