@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;650;700;750&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{font-family:DM Sans,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;color:#101a35;background:#fff;font-synthesis:none;-webkit-font-smoothing:antialiased;--blue: #075bea;--ink: #101a35;--muted: #586985;--line: #e1e7f0;--soft: #f8faff;--sidebar: 292px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}button{cursor:pointer}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,pre:focus-visible{outline:3px solid #7aa7ff;outline-offset:3px}button:disabled{cursor:default}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:20;top:8px;left:12px;transform:translateY(-150%);padding:12px 16px;background:#fff;border-radius:8px}.skip-link:focus{transform:none}.directory{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto;padding:38px 18px 24px;background:#fcfdff;border-right:1px solid var(--line)}.sidebar-intro{padding:0 16px 28px}.sidebar-intro>a{color:#0b1b58;font-size:29px;line-height:1.15;font-weight:750;letter-spacing:-.045em}.sidebar-intro p{color:var(--muted);font-size:17px;line-height:1.5;margin:10px 0 0}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav a{display:flex;align-items:center;gap:16px;min-height:53px;padding:10px 15px;border-radius:9px;color:#24386e;font-size:16px;line-height:1.35}.sidebar nav a>svg{flex:none}.sidebar nav a:hover{background:#f0f5ff}.sidebar nav a.active{color:var(--blue);background:#edf4ff;font-weight:700}.mobile-category-next{display:none}.catalog{width:100%;max-width:1600px;padding:66px 40px 64px;margin:0 auto;min-width:0}.catalog-intro h1{color:var(--ink);font-size:44px;line-height:1.15;letter-spacing:-.048em;font-weight:750;margin:0 0 9px}.catalog-intro p{color:var(--muted);font-size:18px;line-height:1.5;margin:0}.toolbar{display:flex;align-items:center;gap:28px;margin:32px 0}.toolbar form{display:flex;align-items:center;gap:16px;flex:1;min-width:0;min-height:62px;padding:0 18px;color:#60718e;background:#fff;border:1px solid #d3dceb;border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease}.toolbar form:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #075bea14}.toolbar input{width:100%;min-width:0;padding:17px 0;border:0;outline:0;background:transparent;color:var(--ink);font-size:17px}.toolbar input::placeholder{color:#8290a8}.toolbar form button{display:grid;place-items:center;flex:none;min-height:42px;min-width:42px;padding:8px;border:0;background:none;color:var(--muted)}.toolbar form button:hover{color:var(--blue)}.skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.skill-card{position:relative;display:flex;align-items:flex-start;gap:24px;min-width:0;min-height:254px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 2px #12234c05;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.skill-card:hover,.skill-card:focus-within{border-color:#afc8f5;box-shadow:0 8px 28px #1f4b8b10;transform:translateY(-2px)}.skill-card .card-link:focus-visible{outline:0}.skill-card .card-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.skill-card:focus-within{outline:3px solid #8eb2f6;outline-offset:2px}.skill-icon{display:grid;place-items:center;flex:none;width:70px;height:70px;border-radius:12px}.tone-blue{color:#0759df;background:#edf4ff}.tone-purple{color:#7834cb;background:#f6efff}.tone-green{color:#067c50;background:#eaf9f1}.tone-amber{color:#985900;background:#fff5e3}.tone-slate{color:#53627a;background:#eff2f7}.card-content{display:flex;flex:1;flex-direction:column;align-self:stretch;min-width:0}.card-content h2{margin:0 0 8px;color:#0b1b58;font-size:24px;line-height:1.25;font-weight:750;letter-spacing:-.035em;overflow-wrap:anywhere}.card-content h2 a{color:inherit}.skill-card:hover h2 a{color:var(--blue)}.card-content>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:72px;margin:0 0 18px;color:#4b5c78;font-size:17px;line-height:1.42}.skill-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:7px 11px;min-width:0;margin:0 0 18px;color:#586985;font-size:14px;line-height:1.5}.skill-metrics>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.skill-metrics svg{flex:none}.skill-metrics strong{color:#172a57;font-weight:700;font-variant-numeric:tabular-nums}.skill-metrics i{width:1px;height:16px;background:#d7dfec}.card-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:auto}.category-pill{display:inline-block;max-width:100%;padding:6px 11px;border-radius:7px;font-size:14px;line-height:1.35;font-weight:500}.card-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.github-link{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:#385273;background:#fff;font-size:14px;font-weight:650;white-space:nowrap}.github-link:hover{color:var(--blue);border-color:#afc8f5;background:#edf4ff}.guide-link{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;margin-left:auto;color:var(--blue);transition:transform .2s ease}.skill-card .card-link:after{z-index:1}.skill-card:hover .guide-link{transform:translate(4px)}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:34px 0 0;font-size:15px}.pagination>a,.pagination>button,.pagination>span:not(.sr-only){display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted)}.pagination [aria-disabled],.pagination button:disabled{background:#fafbfd;color:#8390a5}.pagination a:hover,.pagination button:not(:disabled):hover{background:#edf4ff}.empty{padding:85px 24px;text-align:center;background:var(--soft);border-radius:10px;color:var(--muted)}.empty h1,.empty h2{color:var(--ink)}.empty .primary,.empty .secondary{display:inline-flex;margin-top:12px}.not-found{max-width:800px;margin:100px auto}.notice{color:var(--muted);font-size:16px}.detail{width:100%;max-width:900px;padding:48px 40px 72px;margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-bottom:26px;font-size:16px}.detail-header{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.detail-name{display:flex;align-items:center;flex-wrap:wrap;gap:18px;min-width:0}.detail h1{margin:0;color:var(--ink);font-size:44px;line-height:1.18;letter-spacing:-.045em;font-weight:750;overflow-wrap:anywhere}.detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.detail-github{white-space:nowrap}.primary,.secondary,.version-select select{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border:1px solid var(--line);border-radius:8px;font-size:15px;font-weight:600}.primary{color:#fff;border-color:var(--blue);background:var(--blue)}.primary:hover{background:#034bbf}.secondary,.version-select select{color:#29394f;background:#fff}.secondary:hover{background:var(--soft)}.version-select select{max-width:170px}.detail-description{max-width:780px;margin:28px 0 0;color:#425470;font-size:18px;line-height:1.65;overflow-wrap:anywhere}.license-note{margin:14px 0 0;color:#856521;font-size:14px}.usage-guide{margin-top:28px;padding:28px 30px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 4px 24px #1f4b8b08}.usage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.usage-eyebrow{color:#5271a4;font-size:12px;font-weight:750;letter-spacing:.09em}.usage-heading h2{margin:6px 0 5px;color:var(--ink);font-size:25px;line-height:1.25;letter-spacing:-.035em}.usage-heading p{max-width:490px;margin:0;color:var(--muted);font-size:16px;line-height:1.5}.usage-platform{display:flex;flex:none;gap:3px;padding:4px;border-radius:9px;background:#f2f5fa}.usage-platform button{min-height:42px;padding:0 13px;border:0;border-radius:7px;background:transparent;color:#52627b;font-size:14px;font-weight:650;white-space:nowrap}.usage-platform button:hover{color:var(--blue)}.usage-platform button[aria-pressed=true]{background:#fff;color:var(--blue);box-shadow:0 1px 4px #1f4b8b17}.usage-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.usage-mode button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:76px;padding:12px 16px;border:1px solid var(--line);border-radius:9px;background:#fff;text-align:left}.usage-mode button:hover{border-color:#afc8f5;background:#f8fbff}.usage-mode button[aria-pressed=true]{border-color:#97b9f3;background:#f0f6ff;box-shadow:inset 0 0 0 1px #c5d9fa}.usage-mode strong{color:#13295b;font-size:15px;font-weight:700}.usage-mode span{color:#63728c;font-size:14px;line-height:1.35}.usage-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0;padding:0;list-style:none;counter-reset:usage-step}.usage-steps li{position:relative;padding-left:34px;color:#40516c;font-size:14px;line-height:1.5;counter-increment:usage-step}.usage-steps li:before{position:absolute;top:0;left:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e9f1ff;color:#235fc2;font-size:12px;font-weight:700;content:counter(usage-step)}.usage-prompt-box{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#f8faff}.usage-prompt-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);background:#fff}.usage-prompt-top>span{color:#52617a;font-size:14px;font-weight:650}.usage-prompt-top button{min-height:40px;padding:8px 12px;font-size:14px}.usage-prompt-box pre{max-height:170px;margin:0;padding:16px;overflow:auto;color:#34435b;font:14px/1.65 IBM Plex Mono,monospace;overflow-wrap:anywhere;white-space:pre-wrap}.usage-copy-status{margin:10px 0 0;color:#257046;font-size:14px}.usage-copy-status.is-error{color:#a34539}.usage-copy-status:empty{display:none}.usage-note{margin:14px 0 0;color:#66748b;font-size:14px;line-height:1.5}.usage-note a{display:inline-flex;align-items:center;gap:3px;font-weight:600}.copy-status{min-height:20px;margin:8px 0;color:#257046;font-size:14px}.copy-status:empty{display:none}.reading-column{max-width:740px;margin:30px 0 0}.markdown{color:#28384e;font-size:18px;line-height:1.75;overflow-wrap:anywhere}.markdown h2,.markdown h3,.markdown h4{color:var(--ink);font-weight:700;line-height:1.3;letter-spacing:-.025em;scroll-margin-top:24px}.markdown h2{margin:32px 0 16px;font-size:28px}.markdown h3{margin:28px 0 14px;font-size:23px}.markdown h4{margin:24px 0 12px;font-size:20px}.markdown>.readme-title:first-child{padding-bottom:12px;margin-top:0;border-bottom:1px solid var(--line);font-size:30px}.markdown p{margin:14px 0 22px}.markdown li{padding-left:5px;margin:8px 0}.markdown ul,.markdown ol{padding-left:26px;margin:18px 0}.markdown blockquote{margin:24px 0;padding:14px 20px;border-left:4px solid var(--blue);background:#eff6ff}.markdown blockquote p{margin:0}.markdown a{text-decoration:underline;text-underline-offset:3px}.markdown pre,.raw-markdown{padding:22px;border:1px solid var(--line);border-radius:8px;background:#f7f9fc;font:14px/1.7 IBM Plex Mono,monospace;-moz-tab-size:2;tab-size:2;white-space:pre-wrap;overflow-wrap:anywhere}.markdown code{padding:2px 5px;border-radius:3px;background:#f1f4f8;font-family:IBM Plex Mono,monospace;font-size:.85em}.markdown pre code{padding:0;background:none;font-size:inherit}.markdown hr{margin:32px 0;border:0;border-top:1px solid var(--line)}.table-scroll{max-width:100%;overflow-x:auto}.markdown table{width:100%;margin:20px 0;border-collapse:collapse;font-size:16px;line-height:1.5}.markdown th,.markdown td{min-width:110px;padding:12px;border:1px solid var(--line);text-align:left}.markdown th{background:var(--soft)}.detail-footer{max-width:840px;margin:48px 0 0;padding-top:24px;border-top:1px solid var(--line)}.detail-footer a{display:flex;align-items:center;gap:10px;font-size:16px}@media(min-width:1600px){.catalog{padding:72px 48px}.skill-card{padding:28px}}@media(max-width:1150px){:root{--sidebar: 240px}.sidebar{padding:28px 12px}.sidebar nav a{gap:11px;padding:10px 12px;font-size:15px}.catalog{padding:44px 28px}.catalog-intro h1{font-size:38px}.toolbar{gap:16px;flex-wrap:wrap}.toolbar form{flex-basis:100%}.skill-grid{grid-template-columns:1fr;gap:18px}.skill-card{min-height:220px}}@media(max-height:820px)and (min-width:821px){.sidebar{padding-top:16px;padding-bottom:16px}.sidebar-intro{padding-bottom:12px}.sidebar-intro>a{font-size:25px}.sidebar-intro p{margin-top:6px;font-size:15px;line-height:1.35}.sidebar nav{gap:4px}.sidebar nav a{min-height:44px;padding-top:7px;padding-bottom:7px}}@media(max-width:820px){.directory{display:block}.sidebar{position:relative;height:auto;overflow:hidden;padding:13px 54px 13px 16px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-intro{display:none}.sidebar nav{flex-direction:row;overflow-x:auto;gap:6px;padding-bottom:2px;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav a{flex:none;min-height:48px;padding:10px 13px;white-space:nowrap}.mobile-category-next:not([hidden]){position:absolute;right:9px;top:15px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;color:var(--blue);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 8px #12234c10}.catalog{padding:32px 24px}.catalog-intro h1{font-size:36px}.detail{padding:30px 26px 56px}}@media(max-width:600px){.catalog{padding:28px 18px 42px}.catalog-intro h1{font-size:32px}.catalog-intro p{font-size:16px}.toolbar{gap:14px;margin:24px 0}.toolbar form{min-height:54px;padding:0 12px}.toolbar input{font-size:16px}.skill-grid{gap:16px}.skill-card{min-height:230px;padding:20px;gap:16px}.skill-icon{width:52px;height:52px}.skill-icon svg{width:29px;height:29px}.card-content h2{font-size:21px}.card-content>p{min-height:0;margin-bottom:14px;font-size:16px;-webkit-line-clamp:4}.skill-metrics{margin-bottom:12px}.skill-metrics i{display:none}.detail{padding:24px 20px 48px}.detail h1{font-size:34px}.detail-actions{width:100%;gap:10px}.detail-actions .primary,.detail-actions .secondary{flex:1;padding:12px;font-size:14px}.detail-description{font-size:17px}.usage-guide{padding:20px}.usage-heading{flex-direction:column;gap:16px}.usage-platform{width:100%}.usage-platform button{flex:1}.usage-mode,.usage-steps{grid-template-columns:1fr}.usage-mode{margin-top:18px}.usage-mode button{min-height:66px}.usage-steps{gap:12px;margin:20px 0}.usage-prompt-box pre{max-height:150px}.markdown{font-size:18px;line-height:1.7}.markdown h2{font-size:25px}.markdown pre,.raw-markdown{padding:16px;font-size:14px}.pagination{gap:8px}.pagination>a,.pagination>button,.pagination>span:not(.sr-only){padding:0 14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.skill-card:hover,.skill-card:hover .guide-link{transform:none}}
