@import "https://fonts.googleapis.com/css2?family=Archivo+Black&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&family=Caveat:wght@600;700&display=swap";
.learn-root{--paper:#f5ede0;--paper-2:#ebdfc9;--ink:#160f08;--ink-2:#2b2014;--orange:#ff7a1a;--orange-deep:#e8580a;--gold:#ffc233;--mint:#1fb997;--plum:#5a2d82;--line:#160f0824;--card:#ffffff80;min-height:100vh;position:relative}.learn-root[data-theme=midnight]{--paper:#0e0a06;--paper-2:#1a1209;--ink:#f6ecda;--ink-2:#e5d5b6;--line:#f6ecda29;--card:#f6ecda0a}.learn-root *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.learn-root,.learn-root{margin:0;padding:0}.learn-root{background:var(--paper);scroll-behavior:smooth;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 18% 4%,#ff7a1a14,#0000 42%),radial-gradient(circle at 84%,#1fb9970f,#0000 42%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.09  0 0 0 0 0.06  0 0 0 0 0.03  0 0 0 0.07 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.learn-root img{max-width:100%;display:block}.learn-root a{color:inherit;text-decoration:none}.learn-root button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}.learn-root .display{letter-spacing:-.04em;text-transform:uppercase;font-family:Archivo Black,sans-serif;line-height:.86}.learn-root .mono{font-family:JetBrains Mono,ui-monospace,monospace}.learn-root .hand{font-family:Caveat,cursive}.learn-root .wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}@media (min-width:900px){.learn-root .wrap{padding:0 32px}}.learn-root .topbar{z-index:40;background:color-mix(in srgb, var(--paper) 80%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex;position:sticky;top:0}.learn-root .topbar .lockup{letter-spacing:-.03em;align-items:center;gap:10px;font-family:Archivo Black;font-size:18px;display:flex}.learn-root .topbar .lockup img{object-fit:contain;width:34px;height:34px;transform:rotate(-6deg)}.learn-root .topbar .lockup span{display:none}.learn-root .topbar nav{text-transform:uppercase;letter-spacing:.12em;gap:22px;font-size:13px;font-weight:700;display:none}.learn-root .topbar nav a{opacity:.72}.learn-root .topbar nav a:hover,.learn-root .topbar nav a.active{opacity:1;color:var(--orange)}.learn-root .topbar nav.open{background:color-mix(in srgb, var(--paper) 97%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);flex-direction:column;gap:18px;padding:18px 22px 22px;display:flex;position:absolute;top:100%;left:0;right:0}.learn-root .nav-burger{border:2px solid var(--ink);border-radius:12px;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;margin-left:auto;padding:11px 9px;display:inline-flex}.learn-root .nav-burger span{background:var(--ink);border-radius:2px;width:100%;height:2px;transition:transform .2s,opacity .2s;display:block}.learn-root .nav-burger[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.learn-root .nav-burger[aria-expanded=true] span:nth-child(2){opacity:0}.learn-root .nav-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (min-width:760px){.learn-root .topbar .lockup span{display:inline}.learn-root .topbar nav{display:flex}.learn-root .nav-burger{display:none}}.learn-root .topbar .cta{letter-spacing:.04em;text-transform:uppercase;background:var(--ink);color:var(--paper);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--orange);border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-family:Archivo Black;font-size:13px;transition:transform .15s,box-shadow .15s;display:inline-flex}.learn-root .topbar .cta:hover{box-shadow:4px 4px 0 var(--orange);transform:translate(-1px,-1px)}.learn-root .eyebrow{letter-spacing:.05em;border:1px solid var(--line);background:var(--card);color:var(--ink-2);border-radius:999px;align-items:center;gap:10px;padding:7px 12px;font-family:JetBrains Mono;font-size:12px;display:inline-flex}.learn-root .eyebrow .dot{background:var(--mint);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--mint) 30%, transparent);border-radius:50%;animation:1.6s ease-in-out infinite blip}@keyframes blip{50%{opacity:.7;transform:scale(.7)}}.learn-root .btn{letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--ink);border-radius:14px;justify-content:center;align-items:center;gap:8px;height:54px;padding:0 22px;font-family:Archivo Black;font-size:14px;transition:transform .14s,box-shadow .14s;display:inline-flex}.learn-root .btn-primary{background:var(--ink);color:var(--paper);box-shadow:5px 5px 0 var(--orange)}.learn-root .btn-primary:hover{box-shadow:7px 7px 0 var(--orange);transform:translate(-2px,-2px)}.learn-root .btn-ghost{color:var(--ink);background:0 0}.learn-root .btn-ghost:hover{box-shadow:5px 5px 0 var(--ink-2)}.learn-root .btn .arrow{transition:transform .15s;display:inline-block}.learn-root .btn:hover .arrow{transform:translate(3px)}.learn-root .pill{letter-spacing:.04em;border:1px solid var(--line);text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-family:JetBrains Mono;font-size:11px;font-weight:500;display:inline-flex}.learn-root .pill:before{content:"";background:var(--mint);border-radius:50%;width:6px;height:6px}.learn-root .pill.beginner:before{background:var(--mint)}.learn-root .pill.intermediate:before{background:var(--gold)}.learn-root .pill.advanced:before{background:var(--orange)}.learn-root .meta-dot{opacity:.4;padding:0 2px}.learn-root .learn-hero{padding:48px 0 24px;position:relative;overflow:hidden}@media (min-width:900px){.learn-root .learn-hero{padding:72px 0 32px}}.learn-root .learn-hero .ghost-word{color:var(--ink);opacity:.05;pointer-events:none;-webkit-user-select:none;user-select:none;letter-spacing:-.06em;font-family:Archivo Black;font-size:clamp(120px,26vw,360px);line-height:.78;position:absolute;top:-8%;right:-4%}.learn-root[data-theme=midnight] .learn-hero .ghost-word{opacity:.07}.learn-root .learn-hero h1{z-index:2;letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;max-width:14ch;margin:18px 0 14px;font-family:Archivo Black;font-size:clamp(48px,9vw,112px);line-height:.86;position:relative}.learn-root .learn-hero h1 .ko{color:var(--orange)}.learn-root .learn-hero .lede{z-index:2;max-width:560px;color:var(--ink-2);margin:0;font-size:clamp(16px,2.2vw,20px);font-weight:500;line-height:1.45;position:relative}.learn-root .search-wrap{z-index:2;max-width:620px;margin:28px 0 0;position:relative}.learn-root .search-box{border:2px solid var(--ink);background:var(--card);height:60px;box-shadow:5px 5px 0 var(--orange);border-radius:16px;align-items:center;gap:12px;padding:0 18px;transition:box-shadow .15s,transform .15s;display:flex}.learn-root .search-box:focus-within{box-shadow:7px 7px 0 var(--orange);transform:translate(-2px,-2px)}.learn-root .search-box svg{opacity:.55;flex-shrink:0;width:22px;height:22px}.learn-root .search-box input{min-width:0;height:100%;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font:600 17px Inter,sans-serif}.learn-root .search-box input::placeholder{color:color-mix(in srgb, var(--ink) 42%, transparent)}.learn-root .search-box kbd{border:1px solid var(--line);background:var(--card);opacity:.7;border-radius:6px;padding:4px 7px;font-family:JetBrains Mono;font-size:11px}.learn-root .search-clear{opacity:.5;padding:4px;font-family:JetBrains Mono;font-size:13px}.learn-root .search-clear:hover{opacity:1;color:var(--orange)}@media (max-width:520px){.learn-root .search-box kbd{display:none}}.learn-root .filters{flex-wrap:wrap;gap:8px;margin:32px 0 8px;display:flex}.learn-root .filter-tab{letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--ink);color:var(--ink);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-family:Archivo Black;font-size:12px;transition:transform .12s,background .12s,color .12s;display:inline-flex}.learn-root .filter-tab .cnt{opacity:.55;font-family:JetBrains Mono;font-size:10px;font-weight:500}.learn-root .filter-tab:hover{transform:translateY(-1px)}.learn-root .filter-tab.active{background:var(--ink);color:var(--paper)}.learn-root .filter-tab.active .cnt{opacity:.7}.learn-root .filters+.filters{margin-top:10px}.learn-root .filter-label{letter-spacing:.1em;text-transform:uppercase;opacity:.5;align-self:center;margin-right:4px;font-family:JetBrains Mono;font-size:11px}.learn-root .filter-pill{cursor:pointer;background:0 0;padding:7px 12px;font-size:11px;transition:transform .12s,background .12s,color .12s}.learn-root .filter-pill:hover{transform:translateY(-1px)}.learn-root .filter-pill.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.learn-root .filter-pill .cnt{opacity:.55;font-family:JetBrains Mono;font-size:10px;font-weight:500}.learn-root .filter-pill.active .cnt{opacity:.75}.learn-root .filter-pill.all:before{background:#8d8d8d}.learn-root .section-label{flex-wrap:wrap;align-items:baseline;gap:12px;margin:8px 0 18px;display:flex}.learn-root .section-label h2{letter-spacing:-.03em;text-transform:uppercase;margin:0;font-family:Archivo Black;font-size:clamp(26px,4vw,42px);line-height:.9}.learn-root .section-label .note{color:var(--ink-2);opacity:.6;font-family:JetBrains Mono;font-size:12px}.learn-root .popular-rail{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:680px){.learn-root .popular-rail{grid-template-columns:1fr 1fr}}@media (min-width:980px){.learn-root .popular-rail{grid-template-columns:repeat(3,1fr)}}.learn-root .pop-card{border:2px solid var(--ink);background:var(--card);box-shadow:5px 5px 0 var(--ink);border-radius:20px;flex-direction:column;gap:10px;padding:20px;transition:transform .16s,box-shadow .16s;display:flex;position:relative;overflow:hidden}.learn-root[data-theme=midnight] .pop-card{box-shadow:5px 5px 0 var(--orange)}.learn-root .pop-card:hover{box-shadow:7px 7px 0 var(--ink);transform:translate(-2px,-2px)}.learn-root[data-theme=midnight] .pop-card:hover{box-shadow:7px 7px 0 var(--orange)}.learn-root .pop-rank{color:var(--orange);opacity:.9;letter-spacing:-.04em;font-family:Archivo Black;font-size:46px;line-height:1}.learn-root .pop-card h3{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:Archivo Black;font-size:19px;line-height:1.05}.learn-root .pop-card .pill{align-self:flex-start}.learn-root .pop-card .views{color:var(--ink-2);opacity:.7;align-items:center;gap:7px;margin-top:auto;font-family:JetBrains Mono;font-size:12px;display:flex}.learn-root .pop-card .views b{color:var(--orange);font-weight:700}.learn-root .article-list{gap:0;margin-top:6px;display:grid}.learn-root .art-row{border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:10px;padding:24px 0;transition:padding-left .18s;display:grid}@media (min-width:760px){.learn-root .art-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px}}.learn-root .art-row:hover{padding-left:8px}.learn-root .art-row .lead{flex-direction:column;gap:8px;min-width:0;display:flex}.learn-root .art-row h3{letter-spacing:-.03em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:12px;margin:0;font-family:Archivo Black;font-size:clamp(22px,3vw,30px);line-height:1;display:flex}.learn-root .art-row h3 .num{color:var(--orange);letter-spacing:0;font-family:JetBrains Mono;font-size:13px;font-weight:700}.learn-root .art-row p{color:var(--ink-2);max-width:64ch;margin:0;font-size:15px;line-height:1.5}.learn-root .art-row .row-meta{color:var(--ink-2);opacity:.75;flex-wrap:wrap;align-items:center;gap:6px;font-family:JetBrains Mono;font-size:12px;display:flex}.learn-root .art-row .row-cta{letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--ink);background:0 0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;height:46px;padding:0 18px;font-family:Archivo Black;font-size:12px;transition:transform .14s,background .14s,color .14s;display:inline-flex}.learn-root .art-row:hover .row-cta{background:var(--ink);color:var(--paper)}.learn-root .art-row .row-cta .arrow{transition:transform .15s}.learn-root .art-row:hover .row-cta .arrow{transform:translate(3px)}.learn-root .empty{text-align:center;color:var(--ink-2);padding:48px 0;font-family:JetBrains Mono;font-size:14px}.learn-root .empty b{color:var(--ink);text-transform:uppercase;letter-spacing:-.02em;margin-bottom:10px;font-family:Archivo Black;font-size:24px;display:block}.learn-root mark{background:var(--gold);color:#160f08;border-radius:3px;padding:0 2px}.learn-root section.block{padding:40px 0}@media (min-width:900px){.learn-root section.block{padding:56px 0}}.learn-root .divider{border:none;border-top:1px solid var(--line);margin:0}.learn-root footer.foot{border-top:1px solid var(--line);margin-top:40px;padding:36px 0 64px}.learn-root .foot-grid{grid-template-columns:1fr;align-items:start;gap:24px;display:grid}@media (min-width:760px){.learn-root .foot-grid{grid-template-columns:1.3fr 1fr 1fr}}.learn-root .foot-grid .lockup{align-items:center;gap:10px;font-family:Archivo Black;font-size:18px;display:flex}.learn-root .foot-grid .lockup img{width:34px;height:34px;transform:rotate(-6deg)}.learn-root .foot-grid h5{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);opacity:.7;margin:0 0 12px;font-family:JetBrains Mono;font-size:11px}.learn-root .foot-grid ul{gap:8px;margin:0;padding:0;font-size:14px;font-weight:600;list-style:none;display:grid}.learn-root .foot-grid p{color:var(--ink-2);max-width:340px;margin:8px 0 0;font-size:14px;line-height:1.5}.learn-root .foot-bottom{border-top:1px dashed var(--line);color:var(--ink-2);opacity:.7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:36px;padding-top:18px;font-family:JetBrains Mono;font-size:12px;display:flex}@media (prefers-reduced-motion:reduce){.learn-root *{scroll-behavior:auto!important;animation:none!important}}.learn-root .reader-progress{z-index:60;background:var(--orange);width:0;height:4px;transition:width .1s linear;position:fixed;top:0;left:0}.learn-root .article{padding:36px 0 0;position:relative}.learn-root .article .wrap{max-width:760px}.learn-root .article .all-articles-top{margin:0 0 22px}.learn-root .crumb{color:var(--ink-2);opacity:.7;align-items:center;gap:8px;margin-bottom:22px;font-family:JetBrains Mono;font-size:12px;display:inline-flex}.learn-root .crumb a:hover{color:var(--orange);opacity:1}.learn-root .art-head h1{letter-spacing:-.04em;text-transform:uppercase;text-wrap:balance;margin:8px 0 16px;font-family:Archivo Black;font-size:clamp(36px,7vw,72px);line-height:.9}.learn-root .art-head .summary{color:var(--ink-2);max-width:62ch;margin:0 0 20px;font-size:clamp(17px,2.3vw,21px);font-weight:500;line-height:1.5}.learn-root .art-head .head-meta{color:var(--ink-2);border-bottom:2px solid var(--ink);flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:24px;font-family:JetBrains Mono;font-size:13px;display:flex}.learn-root .art-head .head-meta .cat{text-transform:uppercase;letter-spacing:.04em;color:var(--orange);font-family:Archivo Black;font-size:12px}.learn-root .art-head .head-meta a.cat:hover{text-underline-offset:3px;text-decoration:underline}.learn-root .art-head .head-meta a.pill{transition:border-color .12s,background .12s}.learn-root .art-head .head-meta a.pill:hover{border-color:var(--ink-2);background:var(--card)}.learn-root .head-meta .share-btn{border:1px solid var(--line);background:var(--card);width:38px;height:38px;color:var(--ink-2);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;margin-left:auto;transition:color .15s,border-color .15s,transform .12s;display:inline-flex}.learn-root .head-meta .share-btn:hover{color:var(--orange);border-color:var(--orange);transform:translateY(-1px)}.learn-root .head-meta .share-btn.copied{color:var(--mint);border-color:var(--mint)}.learn-root .head-meta .share-btn svg{width:18px;height:18px}.learn-root .art-body{color:var(--ink);padding:28px 0 0;font-size:18px;line-height:1.7}.learn-root .art-body>:first-child{margin-top:0}.learn-root .art-body h2{letter-spacing:-.03em;text-transform:uppercase;margin:40px 0 14px;font-family:Archivo Black;font-size:clamp(24px,4vw,34px);line-height:1}.learn-root .art-body h3{letter-spacing:-.02em;text-transform:uppercase;margin:30px 0 10px;font-family:Archivo Black;font-size:20px}.learn-root .art-body p{margin:0 0 18px}.learn-root .art-body a{color:var(--orange);text-underline-offset:3px;text-decoration:underline}.learn-root .art-body strong{font-weight:800}.learn-root .art-body ul,.learn-root .art-body ol{margin:0 0 18px;padding-left:22px}.learn-root .art-body li{margin:0 0 8px}.learn-root .art-body code{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2px 6px;font-family:JetBrains Mono;font-size:.86em}.learn-root .art-body blockquote{border:2px solid var(--ink);background:var(--card);box-shadow:5px 5px 0 var(--orange);letter-spacing:-.02em;text-transform:uppercase;border-radius:16px;margin:24px 0;padding:18px 22px;font-family:Archivo Black;font-size:20px;line-height:1.2}.learn-root[data-theme=midnight] .art-body blockquote{box-shadow:5px 5px 0 var(--gold)}.learn-root .callout{border:1px dashed var(--ink);background:var(--card);border-radius:14px;margin:24px 0;padding:18px 20px;font-family:JetBrains Mono;font-size:14px;line-height:1.6}.learn-root .callout b{text-transform:uppercase;letter-spacing:.02em;color:var(--orange);margin-bottom:8px;font-family:Archivo Black;font-size:13px;display:block}.learn-root .takeaway{border:2px solid var(--ink);background:var(--ink);color:var(--paper);box-shadow:6px 6px 0 var(--orange);border-radius:20px;margin:36px 0 0;padding:24px}.learn-root .takeaway h4{letter-spacing:.16em;text-transform:uppercase;opacity:.6;margin:0 0 10px;font-family:JetBrains Mono;font-size:12px}.learn-root .takeaway p{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:Archivo Black;font-size:clamp(20px,3vw,26px);line-height:1.05}.learn-root .next-up{margin-top:48px}.learn-root .next-grid{grid-template-columns:1fr;gap:14px;margin-top:18px;display:grid}@media (min-width:680px){.learn-root .next-grid{grid-template-columns:1fr 1fr}}.learn-root .next-card{border:2px solid var(--ink);background:var(--card);box-shadow:4px 4px 0 var(--ink);border-radius:18px;flex-direction:column;gap:8px;padding:20px;transition:transform .15s,box-shadow .15s;display:flex}.learn-root[data-theme=midnight] .next-card{box-shadow:4px 4px 0 var(--orange)}.learn-root .next-card:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.learn-root[data-theme=midnight] .next-card:hover{box-shadow:6px 6px 0 var(--orange)}.learn-root .next-card .lbl{letter-spacing:.12em;text-transform:uppercase;color:var(--orange);opacity:.85;font-family:JetBrains Mono;font-size:11px}.learn-root .next-card h4{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:Archivo Black;font-size:20px;line-height:1.02}.learn-root .next-card p{color:var(--ink-2);margin:0;font-size:14px;line-height:1.45}.learn-root .next-card .nm{color:var(--ink-2);opacity:.7;margin-top:4px;font-family:JetBrains Mono;font-size:12px}
