:root{--bg:#0a0a0f;--fg:#e6e6ea;--fg-dim:#8a8a92;--accent:#ff9c39;--accent-dim:#b76d22;--border:#1f1f28;--card:#11111a;--card-hover:#15151f;--error:#ff5c5c;--success:#4ade80;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Pretendard,Apple SD Gothic Neo,sans-serif;font-size:15px;line-height:1.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--mono);font-size:.92em}#app{flex-direction:column;min-height:100vh;display:flex}.nav{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;align-items:center;gap:24px;padding:14px 24px;display:flex;position:sticky;top:0}.nav-brand{font-family:var(--mono);letter-spacing:-.5px;color:var(--fg);font-size:17px;font-weight:700}.nav-brand span{color:var(--accent)}.nav-search{flex:1;max-width:420px;margin:0 8px;display:flex}.nav-search-input{background:var(--bg-elev,#15151c);width:100%;color:var(--fg);border:1px solid var(--border);border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s}.nav-search-input::placeholder{color:var(--fg-dim)}.nav-search-input:focus{border-color:var(--accent);background:var(--bg)}.nav-search-input::-webkit-search-cancel-button{appearance:none}.nav-links{gap:18px;margin-left:auto;display:flex}.nav-auth{justify-content:flex-end;align-items:center;min-width:32px;margin-left:12px;display:flex}.nav-auth-loading{color:var(--fg-dim);padding:6px 10px;font-size:13px}.btn-login{background:var(--card);color:var(--fg);border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:13px;text-decoration:none;transition:all .12s;display:inline-flex}.btn-login:hover{background:var(--card-hover);border-color:var(--accent-dim);text-decoration:none}.btn-login svg{flex-shrink:0}.modal-open{overflow:hidden}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000000a6;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--bg);border:1px solid var(--border);border-radius:16px;width:100%;max-width:420px;padding:32px 28px 24px;animation:.18s ease-out slideUp;position:relative;box-shadow:0 24px 60px #0009}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-close{color:var(--fg-dim);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 10px;font-size:26px;line-height:1;position:absolute;top:12px;right:12px}.modal-close:hover{color:var(--fg);background:var(--card-hover)}.login-modal-head{text-align:center;margin-bottom:24px}.login-modal-brand{font-family:var(--mono);letter-spacing:-.5px;margin-bottom:14px;font-size:20px;font-weight:700}.login-modal-brand span{color:var(--accent)}.login-modal-title{color:var(--fg);margin:0 0 6px;font-size:18px;font-weight:600}.login-modal-sub{color:var(--fg-dim);margin:0;font-size:13px;line-height:1.5}.login-modal-foot{color:var(--fg-dim);text-align:center;margin:18px 0 0;font-size:11px;line-height:1.5}.login-modal-providers{flex-direction:column;gap:10px;display:flex}.login-provider{background:var(--card);border:1px solid var(--border);color:var(--fg);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:14px;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;text-decoration:none;transition:all .12s;display:flex}.login-provider:hover:not(.disabled){background:var(--card-hover);border-color:var(--accent-dim);text-decoration:none;transform:translateY(-1px)}.login-provider-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.login-provider-label{flex:1;font-weight:500}.login-provider-arrow{color:var(--fg-dim);flex-shrink:0;font-size:16px}.login-provider-note{font-family:var(--mono);color:var(--fg-dim);background:#ffffff0a;border-radius:4px;flex-shrink:0;padding:3px 8px;font-size:11px;transition:all .12s}.login-provider-note.flash{color:var(--fg);background:var(--accent-dim)}.login-provider.disabled{opacity:.55;cursor:not-allowed}.nav-user{position:relative}.nav-user-btn{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;display:block}.nav-avatar{border:1px solid var(--border);object-fit:cover;background:var(--card);border-radius:50%;width:32px;height:32px}.nav-avatar-letter{font-family:var(--mono);color:var(--fg);justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.nav-user-menu{background:var(--card);border:1px solid var(--border);z-index:30;border-radius:10px;min-width:220px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 8px 24px #0006}.nav-user-menu[hidden]{display:none}.nav-user-info{border-bottom:1px solid var(--border);padding:12px 14px}.nav-user-name{color:var(--fg);font-size:14px;font-weight:600}.nav-user-email{color:var(--fg-dim);word-break:break-all;margin-top:2px;font-size:12px}.nav-user-provider{font-family:var(--mono);color:var(--fg-dim);text-transform:lowercase;margin-top:6px;font-size:11px}.nav-user-menu-item{box-sizing:border-box;text-align:left;width:100%;color:var(--fg);cursor:pointer;background:0 0;border:0;padding:10px 14px;font-family:inherit;font-size:13px;text-decoration:none;display:block}.nav-user-menu-item:hover{background:var(--card-hover);text-decoration:none}.key-row{background:var(--card);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:6px 16px;margin-bottom:10px;padding:14px 16px;display:grid}.key-row-main{flex-direction:column;gap:4px;display:flex}.key-row-name{color:var(--fg);align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.key-row-prefix{font-family:var(--mono);color:var(--fg-dim);font-size:12px}.key-row-meta{color:var(--fg-dim);flex-wrap:wrap;grid-column:1/-1;gap:6px;font-size:12px;display:flex}.key-row-actions{grid-area:1/2}.btn-sm{padding:4px 10px;font-size:12px}.just-issued{border:1px solid var(--accent-dim);background:linear-gradient(#a78bfa1f,#22d3ee0f);border-radius:12px;margin:20px 0;padding:18px}.just-issued-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.just-issued-close{color:var(--fg-dim);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:22px;line-height:1}.just-issued-close:hover{color:var(--fg)}.just-issued-note{color:var(--fg-dim);margin:0 0 12px;font-size:13px}.just-issued-key{border:1px solid var(--border);background:#0a0a0f;border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.just-issued-key code{font-family:var(--mono);word-break:break-all;color:var(--accent);flex:1;font-size:13px}.just-issued-copy{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:6px;flex-shrink:0;padding:6px 14px;font-family:inherit;font-size:13px}.just-issued-copy:hover{opacity:.9}.nav-links a{color:var(--fg-dim);font-size:14px}.nav-links a:hover,.nav-links a.active{color:var(--fg)}.chip-bar{background:var(--bg);border-bottom:1px solid var(--border);scrollbar-width:thin;z-index:9;gap:8px;padding:10px 24px;display:flex;position:sticky;top:53px;overflow-x:auto}.chip-bar::-webkit-scrollbar{height:4px}.chip-bar::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chip{background:var(--card);color:var(--fg-dim);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:13px;transition:all .12s;display:inline-flex}.chip:hover{background:var(--card-hover);color:var(--fg);border-color:var(--accent-dim)}.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.chip-icon{font-size:14px;line-height:1}.chip-label{font-weight:500}@media (max-width:720px){.chip-bar{padding:8px 16px;top:95px}.chip{padding:5px 12px;font-size:12px}}.hot-title{color:var(--fg);margin:0 0 4px;font-size:18px;font-weight:700}.hot-sub{color:var(--fg-dim);margin:0 0 16px;font-size:13px}.container{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:36px 24px}.hero{padding:64px 0 48px}.hero h1{letter-spacing:-1px;margin-bottom:18px;font-size:44px;font-weight:700;line-height:1.15}.hero h1 span{color:var(--accent)}.hero p{color:var(--fg-dim);max-width:640px;margin-bottom:28px;font-size:17px}.hero-cta{gap:12px;display:flex}.btn{cursor:pointer;color:var(--fg);background:0 0;border:1px solid #0000;border-radius:8px;padding:12px 22px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-block}.btn-primary{background:var(--accent);color:#1a0f00}.btn-primary:hover{background:var(--accent-dim);text-decoration:none}.btn-ghost{border-color:var(--border)}.btn-ghost:hover{background:var(--card);text-decoration:none}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px;margin:48px 0;display:grid}.stat{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:22px}.stat-num{font-family:var(--mono);color:var(--accent);margin-bottom:6px;font-size:32px;font-weight:700;line-height:1}.stat-label{color:var(--fg-dim);font-size:13px}.section{margin:56px 0}.section h2{letter-spacing:-.5px;margin-bottom:16px;font-size:24px}.section p{color:var(--fg-dim);max-width:720px;margin-bottom:12px}.three-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:24px;display:grid}.col-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:22px}.col-card h3{margin-bottom:10px;font-size:15px}.col-card p{margin:0;font-size:14px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.input,.select{background:var(--card);border:1px solid var(--border);color:var(--fg);border-radius:7px;padding:9px 12px;font-family:inherit;font-size:14px}.input{flex:1;min-width:200px}.select{cursor:pointer}.skill-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.skill-card{background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:18px;transition:all .12s;display:block}.skill-card:hover{background:var(--card-hover);border-color:var(--accent-dim);text-decoration:none}.skill-card-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.skill-card-name{color:var(--fg);font-size:15px;font-weight:600;line-height:1.3}.skill-card-id{font-family:var(--mono);color:var(--fg-dim);margin-top:4px;font-size:11px}.skill-card-head-text{flex:1;min-width:0}.skill-card-stats{flex-shrink:0;align-items:center;gap:8px;display:flex}.skill-card-stats .stat{font-family:var(--mono);color:var(--fg-dim);cursor:default;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:12px;line-height:1;display:inline-flex}.skill-card-stats button.stat{cursor:pointer;transition:color .12s,background .12s}.skill-card-stats button.stat:hover{color:#fbbf24;background:#fbbf2414}.skill-card-stats button.stat.active .stat-icon{color:#fbbf24}.skill-card-stats .stat-icon{font-size:13px;line-height:1}.skill-card-meta{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.badge{font-family:var(--mono);color:var(--accent);background:#ff9c391a;border:1px solid #ff9c3933;border-radius:4px;padding:3px 8px;font-size:11px;display:inline-block}.badge.tool{color:var(--success);background:#4ade8014;border-color:#4ade8033}.badge.dim{border-color:var(--border);color:var(--fg-dim);background:0 0}.detail-header{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:18px}.detail-header h1{margin-bottom:6px;font-size:28px}.detail-header .skill-card-id{font-size:13px}.detail-meta{background:var(--card);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin:20px 0;padding:18px;display:grid}.meta-item{font-size:13px}.meta-label{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px;font-size:11px;display:block}.meta-value{font-family:var(--mono);font-size:13px}.profile-tabs{gap:4px;margin-bottom:14px;display:flex}.profile-tab{border:1px solid var(--border);color:var(--fg-dim);cursor:pointer;font-family:var(--mono);background:0 0;border-radius:6px;padding:6px 14px;font-size:12px}.profile-tab.active{background:var(--card);color:var(--fg);border-color:var(--accent-dim)}.markdown{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:24px;font-size:14.5px;line-height:1.65}.markdown h1{margin:0 0 14px;font-size:22px}.markdown h2{color:var(--accent);margin:22px 0 10px;font-size:18px}.markdown h3{margin:18px 0 8px;font-size:15px}.markdown p{margin:8px 0}.markdown ul,.markdown ol{margin:8px 0 8px 20px}.markdown li{margin:3px 0}.markdown code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 6px}.markdown pre{background:var(--bg);border:1px solid var(--border);border-radius:6px;margin:12px 0;padding:14px;overflow-x:auto}.markdown pre code{background:0 0;border:none;padding:0}.markdown hr{border:none;border-top:1px solid var(--border);margin:18px 0}.markdown blockquote{border-left:3px solid var(--accent-dim);color:var(--fg-dim);margin:12px 0;padding-left:14px}.markdown table{border-collapse:collapse;width:100%;margin:12px 0;font-size:13px}.markdown th,.markdown td{border:1px solid var(--border);text-align:left;padding:6px 10px}.markdown th{background:var(--bg)}.loading{text-align:center;color:var(--fg-dim);padding:80px 0}.error{color:var(--error);background:#ff5c5c0d;border:1px solid #ff5c5c4d;border-radius:8px;margin:20px 0;padding:16px}.footer{border-top:1px solid var(--border);text-align:center;color:var(--fg-dim);margin-top:auto;padding:24px;font-size:12px}.footer a{color:var(--fg-dim);margin:0 8px}textarea.input{font-family:var(--mono);resize:vertical;min-height:140px}@media (max-width:640px){.hero h1{font-size:32px}.container{padding:24px 16px}.nav{flex-wrap:wrap;padding:12px 16px}.nav-search{flex-basis:100%;order:3;max-width:none;margin:8px 0 0}.nav-links{gap:10px}.nav-links a{font-size:13px}}
