@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Syne:wght@600;700;800&display=swap";:root{--bg: oklch(.11 0 0);--surface: oklch(.16 .012 353);--surface-2: oklch(.2 .014 353);--bg-elev: var(--surface);--ink: oklch(.96 .012 353);--muted: oklch(.84 .02 353);--placeholder: oklch(.72 .02 353);--primary: oklch(.62 .16 353);--primary-soft: oklch(.72 .14 353);--primary-ink: oklch(.98 .01 353);--accent: oklch(.78 .12 185);--focus: var(--accent);--line: oklch(.96 .01 353 / .12);--danger: oklch(.68 .18 25);--input-bg: oklch(.08 0 0);--font: "DM Sans", system-ui, sans-serif;--display: "Syne", var(--font);--radius: 10px;--radius-card: 12px;--ease: cubic-bezier(.16, 1, .3, 1);--max: 68rem;--space-1: .35rem;--space-2: .6rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2.5rem;--space-6: 4rem}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;min-height:100%;font-family:var(--font);font-size:1.05rem;line-height:1.55;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(900px 520px at 12% -10%,oklch(.62 .16 353 / .14),transparent 55%),radial-gradient(700px 480px at 92% 8%,oklch(.78 .12 185 / .1),transparent 50%),linear-gradient(180deg,oklch(.13 .01 353) 0%,var(--bg) 42%,oklch(.09 0 0) 100%)}img{max-width:100%;display:block}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:var(--primary-soft)}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin:0 0 var(--space-3);text-wrap:balance}p{margin:0 0 var(--space-3);color:var(--muted)}p:last-child{margin-bottom:0}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(12px);background:#0c0d0fb8;border-bottom:1px solid var(--line)}.site-header__inner,.site-footer__inner,.page{width:min(100% - 2rem,var(--max));margin-inline:auto}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.85rem 0}.brand{font-family:var(--display);font-weight:800;font-size:1.35rem;letter-spacing:-.03em;color:var(--ink);text-decoration:none}.brand:hover{color:var(--primary-soft)}.nav{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;align-items:center}.nav a{color:var(--muted);text-decoration:none;font-size:.95rem;font-weight:500}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.site-main{flex:1}.site-footer{margin-top:var(--space-6);border-top:1px solid var(--line);padding:var(--space-4) 0}.site-footer__inner{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;color:var(--muted);font-size:.9rem}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--ink)}.page{padding:var(--space-5) 0 var(--space-6)}.page--narrow{width:min(100% - 2rem,42rem)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.35rem;border-radius:999px;border:1px solid transparent;font-family:var(--font);font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),background .2s ease,border-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--primary);color:var(--primary-ink)}.btn--primary:hover{background:var(--primary-soft);color:var(--primary-ink)}.btn:focus-visible,.nav a:focus-visible,.brand:focus-visible,.skill-card:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.btn--ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn--ghost:hover{border-color:#f2efe647;color:var(--ink)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:var(--space-4)}.hero{position:relative;min-height:min(92vh,52rem);display:grid;align-items:end;padding:var(--space-6) 0 var(--space-5);overflow:hidden}.hero__plane{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 20%,var(--bg) 88%),radial-gradient(ellipse 80% 55% at 70% 40%,oklch(.78 .12 185 / .12),transparent 70%),radial-gradient(ellipse 60% 40% at 20% 70%,oklch(.62 .16 353 / .16),transparent 65%)}.hero__inner{width:min(100% - 2rem,var(--max));margin-inline:auto}.hero__brand{font-family:var(--display);font-weight:800;font-size:clamp(3rem,10vw,6rem);line-height:.95;letter-spacing:-.03em;color:var(--ink);margin:0 0 var(--space-3);animation:rise .9s var(--ease) both}.hero__headline{font-family:var(--display);font-size:clamp(1.35rem,3.2vw,2rem);font-weight:600;max-width:22ch;margin:0 0 var(--space-3);color:var(--primary-soft);animation:rise .9s var(--ease) .08s both}.hero__lede{max-width:36ch;font-size:1.15rem;animation:rise .9s var(--ease) .16s both}.hero .btn-row{animation:rise .9s var(--ease) .24s both}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:clamp(1.6rem,3vw,2.2rem)}.lead{font-size:1.15rem;max-width:48ch}.install-list{display:grid;gap:var(--space-4);margin-top:var(--space-5)}.install-item{border-top:1px solid var(--line);padding-top:var(--space-4)}.install-item h2{font-size:1.35rem;margin-bottom:var(--space-2)}.install-item .meta{font-size:.9rem;color:var(--accent);margin-bottom:var(--space-2)}pre,.code{font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Consolas,monospace;font-size:.88rem;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem;overflow-x:auto;color:var(--ink)}.steps{counter-reset:step;list-style:none;padding:0;margin:var(--space-4) 0 0;display:grid;gap:var(--space-4)}.steps li{position:relative;padding-left:2.75rem;border-top:1px solid var(--line);padding-top:var(--space-3)}.steps li:before{counter-increment:step;content:counter(step);position:absolute;left:0;top:var(--space-3);width:1.9rem;height:1.9rem;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;font-family:var(--display);font-size:.85rem;color:var(--primary)}.steps h3{font-size:1.15rem;margin-bottom:var(--space-1)}.library-toolbar{display:grid;gap:var(--space-3);margin:var(--space-4) 0 var(--space-5)}@media(min-width:720px){.library-toolbar{grid-template-columns:1fr auto;align-items:end}}.field label{display:block;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}.field input,.field select{width:100%;min-width:12rem;padding:.7rem .85rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit}.field input::placeholder{color:var(--placeholder)}.field input:focus,.field select:focus{outline:2px solid var(--focus);outline-offset:1px}.skill-grid{display:grid;gap:var(--space-3);grid-template-columns:1fr}@media(min-width:640px){.skill-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:960px){.skill-grid{grid-template-columns:repeat(3,1fr)}}.skill-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-card);background:#110b0ea6;text-decoration:none;color:inherit;transition:border-color .2s ease,transform .25s var(--ease),background .2s ease}.skill-card:hover{border-color:#44d0c173;transform:translateY(-2px);background:#1b1317e6;color:inherit}.skill-card h2{font-size:1.2rem;margin:0;color:var(--ink)}.skill-card .game{color:var(--primary-soft);font-size:.92rem;font-weight:600}.skill-card p{font-size:.95rem;flex:1}.tag-row{display:flex;flex-wrap:wrap;gap:.35rem}.tag{font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:.2rem .5rem;border-radius:999px;border:1px solid var(--line);color:var(--muted)}.badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.detail-meta{display:grid;gap:var(--space-2);margin:var(--space-4) 0;padding:var(--space-4) 0;border-block:1px solid var(--line)}.detail-meta dt{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.detail-meta dd{margin:.15rem 0 .75rem;color:var(--ink);font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Consolas,monospace;font-size:.9rem;word-break:break-all}.detail-meta dd:last-child{margin-bottom:0}.empty{padding:var(--space-5) 0;color:var(--muted)}.reveal{animation:rise .7s var(--ease) both}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__brand,.hero__headline,.hero__lede,.hero .btn-row,.reveal{animation:none}.btn:hover,.skill-card:hover{transform:none}}
