.skillspage{--font-display:"Instrument Serif",Georgia,"Times New Roman",serif;--font-ui:-apple-system,BlinkMacSystemFont,system-ui,"Helvetica Neue",Helvetica,Arial,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--bg:oklch(0.984 0.004 250);--bg-2:oklch(0.972 0.005 250);--surface:oklch(1 0 0);--ink:oklch(0.24 0.012 260);--ink-soft:oklch(0.44 0.012 260);--ink-mute:oklch(0.60 0.010 260);--line:oklch(0.91 0.006 260);--line-soft:oklch(0.945 0.005 260);--accent:oklch(0.625 0.135 47);--accent-ink:oklch(0.46 0.13 45);--accent-wash:oklch(0.95 0.03 55);--term-bg:oklch(0.185 0.012 264);--term-bg-2:oklch(0.235 0.013 264);--term-ink:oklch(0.91 0.006 260);--term-mute:oklch(0.64 0.010 260);--term-green:oklch(0.83 0.16 150);--term-amber:oklch(0.84 0.13 78);--term-line:oklch(0.32 0.013 264);--radius:14px;--shadow-win:0 2px 6px oklch(0.2 0.04 264/0.10),0 26px 70px -16px oklch(0.18 0.05 264/0.45);--shadow-card:0 1px 2px oklch(0.2 0.02 260/0.04),0 10px 34px oklch(0.2 0.02 260/0.07);--maxw:940px;font-family:var(--font-ui);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:has(.skillspage),html:has(.skillspage){height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}.skillspage ::selection{background:var(--accent-wash)}.skillspage [tabindex]:focus-visible,.skillspage a:focus-visible,.skillspage button:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:5px}.skillspage :focus:not(:focus-visible){outline:none}.skillspage .app{min-height:100vh}.skillspage .skdesk{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(120% 90% at 18% -8%,oklch(.93 .022 235),transparent 55%),radial-gradient(120% 100% at 85% 0,oklch(.9 .03 280/.7),transparent 50%),linear-gradient(168deg,oklch(.89 .028 245),oklch(.8 .04 255) 70%,oklch(.77 .045 260))}.skillspage.app--plain .skdesk{background:linear-gradient(180deg,var(--bg),var(--bg-2))}.skillspage .skmenubar{position:-webkit-sticky;position:sticky;top:0;z-index:8;height:30px;display:flex;align-items:center;gap:20px;padding:0 16px;font-size:13px;color:oklch(.22 .01 260/.9);background:oklch(1 0 0/.5);backdrop-filter:blur(22px) saturate(1.6);-webkit-backdrop-filter:blur(22px) saturate(1.6);border-bottom:1px solid oklch(1 0 0/.45)}.skillspage.app--plain .skmenubar{display:none}.skillspage .skmenubar__j{font-family:var(--font-display);font-size:19px;line-height:1;margin-right:-4px}.skillspage .skmenubar__item{color:inherit;text-decoration:none;opacity:.78}.skillspage .skmenubar__item:hover{opacity:1}.skillspage .skmenubar__item--active{font-weight:600;opacity:1}.skillspage .skmenubar__spacer{margin-left:auto}.skillspage .skmenubar__src{display:inline-flex;align-items:center;gap:4px;color:inherit;text-decoration:none;opacity:.78}.skillspage .skmenubar__src:hover{opacity:1}.skillspage .skmenubar__clock{opacity:.82;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.skillspage .stage{flex:1 1;display:flex;flex-direction:column;align-items:center;padding:clamp(34px,7vh,76px) 22px 0;text-align:center}.skillspage .eyebrow{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.05em;color:var(--accent-ink);margin:0 0 16px;padding:5px 12px;border-radius:999px;background:oklch(1 0 0/.5);border:1px solid oklch(1 0 0/.6)}.skillspage.app--plain .eyebrow{background:var(--accent-wash);border-color:transparent}.skillspage .hero__h{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em;line-height:1.04;font-size:clamp(40px,6.4vw,66px);margin:0;color:oklch(.2 .015 262)}.skillspage .hero__sub{font-size:clamp(16px,2vw,18.5px);line-height:1.5;color:oklch(.34 .014 262);margin:16px 0 0;max-width:48ch;text-wrap:pretty}.skillspage .hero__sub strong{color:oklch(.2 .015 262);font-weight:600}.skillspage .chat{margin-top:clamp(26px,4vh,40px);width:100%;max-width:640px;text-align:left;background:oklch(1 0 0/.74);backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border:1px solid oklch(1 0 0/.7);border-radius:20px;box-shadow:var(--shadow-card);overflow:hidden}.skillspage.app--plain .chat{background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--line)}.skillspage .chat__head{display:flex;align-items:center;gap:9px;padding:12px 15px;border-bottom:1px solid oklch(.9 .005 260/.55)}.skillspage .chat__avatar{width:24px;height:24px;border-radius:50%;flex:none;background:radial-gradient(circle at 33% 28%,oklch(.8 .12 58),var(--accent));box-shadow:0 2px 6px -1px var(--accent)}.skillspage .chat__name{font-weight:600;font-size:14px;color:var(--ink)}.skillspage .chat__tag{background:var(--bg-2);border:1px solid var(--line);padding:2px 8px;border-radius:999px}.skillspage .chat__replay,.skillspage .chat__tag{font-family:var(--font-mono);font-size:11px;color:var(--ink-mute)}.skillspage .chat__replay{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--line);border-radius:7px;padding:4px 9px;cursor:pointer}.skillspage .chat__replay:hover{color:var(--ink);border-color:var(--ink-mute)}.skillspage .chat__body{padding:17px 16px 20px;display:grid;grid-gap:14px;gap:14px}.skillspage .bubble{max-width:88%}.skillspage .bubble--you{justify-self:end}.skillspage .bubble--ai{justify-self:start;animation:skp-appear .4s ease}.skillspage .bubble__from{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute);margin:0 4px 5px}.skillspage .bubble--you .bubble__from{text-align:right}.skillspage .bubble__text{margin:0;font-size:15px;line-height:1.5;color:var(--ink);padding:11px 15px;border-radius:15px}.skillspage .bubble--you .bubble__text{background:var(--accent);color:#fff;border-bottom-right-radius:5px;font-family:var(--font-mono);font-size:13.5px;font-weight:500;line-height:1.45}.skillspage .bubble--ai .bubble__text{background:var(--bg-2);border:1px solid var(--line);border-bottom-left-radius:5px}.skillspage .bubble--ai .bubble__text b{font-weight:600}.skillspage .bubble__text--cta{background:transparent!important;border:none!important;padding:7px 4px 0!important;color:var(--ink-soft);font-size:14px}.skillspage .caretc{display:inline-block;width:7px;height:15px;transform:translateY(2px);background:#fff;margin-left:2px;animation:skp-blink 1.05s step-end infinite}@keyframes skp-blink{50%{opacity:0}}.skillspage .chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 2px 0}.skillspage .chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--accent-ink);background:var(--accent-wash);padding:5px 12px;border-radius:999px}.skillspage .chip__tick{width:6px;height:6px;border-radius:1.5px;background:var(--accent);transform:rotate(45deg)}.skillspage .cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:clamp(20px,3vh,28px)}.skillspage .cta__hint{font-family:var(--font-mono);font-size:12.5px;color:oklch(.34 .014 262/.85)}.skillspage.app--plain .cta__hint{color:var(--ink-mute)}.skillspage .scrollcue{margin:30px 0 0;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:oklch(.32 .015 262/.7);background:none;border:none;cursor:pointer;display:inline-flex;gap:7px;align-items:center}.skillspage .scrollcue:hover{color:oklch(.2 .015 262)}.skillspage .scrollcue .ar{animation:skp-bob 1.8s ease-in-out infinite}@keyframes skp-bob{50%{transform:translateY(3px)}}.skillspage .copybtn{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-ui);font-weight:600;cursor:pointer;border-radius:10px;transition:filter .15s ease,transform .08s ease,border-color .15s,color .15s}.skillspage .copybtn--solid{font-size:14.5px;color:#fff;background:var(--accent);border:none;padding:12px 20px;box-shadow:0 8px 20px -8px var(--accent)}.skillspage .copybtn--solid:hover{filter:brightness(1.06)}.skillspage .copybtn--solid:active{transform:scale(.98)}.skillspage .copybtn--solid.is-copied{background:var(--accent-ink)}.skillspage .copybtn--ghost{font-size:12.5px;font-weight:500;color:var(--term-mute);background:transparent;border:1px solid var(--term-line);padding:6px 11px}.skillspage .copybtn--ghost:hover{color:var(--term-ink);border-color:var(--term-mute)}.skillspage .copybtn--ghost.is-copied{color:var(--term-green)}.skillspage .sheet{background:var(--surface);border-top:1px solid oklch(1 0 0/.5);box-shadow:0 -20px 50px -30px oklch(.2 .05 264/.5);border-radius:26px 26px 0 0;margin-top:56px;position:relative;z-index:2}.skillspage.app--plain .sheet{margin-top:0;border-radius:0;box-shadow:none;background:transparent}.skillspage .sheet__inner{max-width:var(--maxw);margin:0 auto;padding:18px 28px 0}.skillspage .display{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em}.skillspage .kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin:0;font-weight:500}.skillspage .card{margin-top:24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:38px clamp(22px,4vw,44px);box-shadow:var(--shadow-card)}.skillspage .card__head{display:flex;align-items:center;gap:12px}.skillspage .card__slug{font-family:var(--font-mono);font-size:13px;color:var(--accent-ink);background:var(--accent-wash);padding:4px 10px;border-radius:7px}.skillspage .badge{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-mute);border:1px solid var(--line);padding:3px 9px;border-radius:999px}.skillspage .card__title{font-size:clamp(31px,4.4vw,44px);line-height:1.04;margin:16px 0 0}.skillspage .card__summary{font-size:clamp(16px,2vw,18.5px);line-height:1.5;color:var(--ink-soft);margin:14px 0 0;max-width:58ch;text-wrap:pretty}.skillspage .bullets{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-gap:13px;gap:13px}.skillspage .bullets li{display:grid;grid-template-columns:22px 1fr;align-items:start;font-size:15.5px;line-height:1.5;color:var(--ink);max-width:66ch}.skillspage .bullets__tick{margin-top:7px;width:8px;height:8px;border-radius:2px;background:var(--accent);transform:rotate(45deg)}.skillspage .ex{margin-top:30px;border-radius:var(--radius);overflow:hidden;background:var(--term-bg);border:1px solid var(--term-line)}.skillspage .ex__bar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--term-bg-2);border-bottom:1px solid var(--term-line)}.skillspage .ex__dots{display:inline-flex;gap:6px}.skillspage .ex__dots i{width:10px;height:10px;border-radius:50%;background:var(--term-line)}.skillspage .ex__dots i:first-child{background:oklch(.68 .16 25)}.skillspage .ex__dots i:nth-child(2){background:oklch(.82 .14 85)}.skillspage .ex__dots i:nth-child(3){background:oklch(.78 .15 145)}.skillspage .ex__title{font-family:var(--font-mono);font-size:11.5px;color:var(--term-mute);letter-spacing:.02em}.skillspage .ex__body{padding:18px;font-family:var(--font-mono);font-size:13.5px;line-height:1.6;color:var(--term-ink)}.skillspage .ex__line{margin:0 0 10px;display:flex;gap:11px;align-items:baseline}.skillspage .ex__line--out{margin:12px 0 0}.skillspage .ex__who{flex:none;font-size:10.5px;letter-spacing:.03em;padding:2px 7px;border-radius:5px;text-transform:uppercase;transform:translateY(-1px)}.skillspage .ex__who.you{color:var(--term-bg);background:var(--term-mute)}.skillspage .ex__who.skill{color:var(--term-bg);background:var(--term-green)}.skillspage .ex__list{list-style:none;margin:0 0 0 4px;padding:0 0 0 18px;border-left:2px solid var(--term-line);display:grid;grid-gap:7px;gap:7px;color:var(--term-mute)}.skillspage .ex__list b{color:var(--term-ink);font-weight:500}.skillspage .ex__ok{color:var(--term-green)}.skillspage .ex__no{color:oklch(.78 .13 35)}.skillspage .ex__body code{color:var(--term-green)}.skillspage .card__installhead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:36px 0 16px}.skillspage .srclink{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;font-weight:600;color:var(--accent-ink);text-decoration:none}.skillspage .srclink:hover{text-decoration:underline;text-underline-offset:3px}.skillspage .seg{display:inline-flex;gap:4px;padding:4px;border-radius:11px;background:var(--bg-2);border:1px solid var(--line);flex-wrap:wrap}.skillspage .seg__btn{font-family:var(--font-ui);font-size:13.5px;font-weight:500;color:var(--ink-soft);background:transparent;border:none;cursor:pointer;padding:8px 15px;border-radius:8px;transition:background .15s,color .15s}.skillspage .seg__btn:hover{color:var(--ink)}.skillspage .seg__btn.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px oklch(.2 .02 260/.1)}.skillspage .install__panel{margin-top:18px;animation:skp-appear .28s ease}@keyframes skp-appear{0%{transform:translateY(6px)}to{transform:translateY(0)}}.skillspage .install__lead{font-size:14.5px;line-height:1.55;color:var(--ink-soft);margin:0 0 14px;max-width:60ch}.skillspage .skic{font-family:var(--font-mono);font-size:12.5px;background:var(--bg-2);border:1px solid var(--line);padding:1px 6px;border-radius:5px;color:var(--ink)}.skillspage .install__lead strong{color:var(--ink)}.skillspage .code{display:flex;align-items:stretch;gap:10px;background:var(--term-bg);border:1px solid var(--term-line);border-radius:var(--radius);padding:14px 14px 14px 16px}.skillspage .code__body{display:flex;gap:12px;flex:1 1;min-width:0;align-items:flex-start}.skillspage .code__prompt{color:var(--term-green);flex:none}.skillspage .code__pre,.skillspage .code__prompt{font-family:var(--font-mono);font-size:13.5px;line-height:1.6}.skillspage .code__pre{margin:0;color:var(--term-ink);white-space:pre-wrap;word-break:break-word;flex:1 1;min-width:0}.skillspage .code__copy{flex:none;display:flex;align-items:flex-start}.skillspage .dlrow{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.skillspage .dlbtn{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:13.5px;font-weight:500;color:#fff;background:var(--accent);text-decoration:none;padding:11px 18px;border-radius:10px;transition:filter .15s,transform .08s}.skillspage .dlbtn:hover{filter:brightness(1.05)}.skillspage .dlbtn:active{transform:scale(.98)}.skillspage .dlrow__hint{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-mute)}.skillspage .disclaimer{margin:30px 0 0;padding-top:22px;border-top:1px solid var(--line-soft);font-size:13px;line-height:1.55;color:var(--ink-mute);max-width:64ch}.skillspage .disclaimer strong{color:var(--ink-soft)}.skillspage .trust{margin:40px 0 0;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.skillspage .trust__item{background:var(--surface);padding:22px}.skillspage .trust__k{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:9px}.skillspage .trust__v{font-size:14px;line-height:1.5;color:var(--ink-soft)}.skillspage .trust__v a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}.skillspage .trust__v a:hover{border-color:var(--accent)}.skillspage .intro{margin-top:30px}.skillspage .intro__h{font-family:var(--font-display);font-weight:400;letter-spacing:-.01em;font-size:clamp(26px,3.6vw,38px);line-height:1.08;margin:12px 0 0;color:var(--ink)}.skillspage .intro__lead{font-size:clamp(15px,1.9vw,17.5px);line-height:1.55;color:var(--ink-soft);margin:13px 0 0;max-width:62ch;text-wrap:pretty}.skillspage .intro__lead strong{color:var(--ink);font-weight:600}.skillspage .faq{margin:46px 0 0}.skillspage .faq__list{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:var(--shadow-card)}.skillspage .faq__item{padding:22px clamp(18px,3vw,26px);border-top:1px solid var(--line-soft)}.skillspage .faq__item:first-child{border-top:none}.skillspage .faq__q{font-family:var(--font-ui);font-size:16px;font-weight:600;color:var(--ink);margin:0}.skillspage .faq__a{font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:9px 0 0;max-width:70ch}.skillspage .faq__a strong{color:var(--ink);font-weight:600}.skillspage .faq__a code{font-family:var(--font-mono);font-size:12.5px;background:var(--bg-2);border:1px solid var(--line);padding:1px 6px;border-radius:5px;color:var(--ink)}.skillspage .faq__a a{color:var(--accent-ink);text-decoration:none;border-bottom:1px solid var(--line)}.skillspage .faq__a a:hover{border-color:var(--accent)}.skillspage .faq__methods{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:11px;gap:11px}.skillspage .faq__methods li{display:grid;grid-template-columns:auto 1fr;grid-gap:11px;gap:11px;align-items:baseline}.skillspage .faq__tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;color:var(--accent-ink);background:var(--accent-wash);padding:3px 9px;border-radius:999px;white-space:nowrap}.skillspage .footer{margin:44px 0 0;padding:28px 0 56px;border-top:1px solid var(--line-soft)}.skillspage .footer__links{display:flex;gap:22px;flex-wrap:wrap}.skillspage .footer__links a{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;color:var(--ink-soft);text-decoration:none;font-weight:500}.skillspage .footer__links a:hover{color:var(--accent-ink)}.skillspage .footer__fine{margin:18px 0 0;font-size:12.5px;color:var(--ink-mute)}@media (max-width:680px){.skillspage .sheet__inner{padding-left:18px;padding-right:18px}.skillspage .skmenubar{gap:13px;padding:0 12px}.skillspage .skmenubar__hide{display:none}.skillspage .card{padding:26px 18px;border-radius:16px}.skillspage .card__installhead{flex-direction:column;align-items:flex-start;gap:8px}.skillspage .seg{display:flex;width:100%}.skillspage .seg__btn{flex:1 1;padding:9px 6px;text-align:center}.skillspage .trust{grid-template-columns:1fr}.skillspage .code{flex-direction:column}.skillspage .code__copy{justify-content:flex-end}}@media (prefers-reduced-motion:reduce){.skillspage *,.skillspage :after,.skillspage :before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}