body.library .page{padding-top:0}
.library-hero{position:relative;min-height:72svh;display:grid;align-items:center;overflow:hidden;background:radial-gradient(circle at 75% 35%,color-mix(in oklch,var(--purple-500) 26%,transparent),transparent 27%),radial-gradient(circle at 18% 72%,color-mix(in oklch,var(--blue-500) 20%,transparent),transparent 30%),var(--grad-abyss)}
.library-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 58%,var(--bg-base));pointer-events:none}
.library-hero-in{position:relative;z-index:2;width:min(100% - 2 * var(--gutter),var(--container-max));margin:auto;padding:130px 0 90px}
.library-hero-in>*{max-width:720px}.library-hero h1{font-size:clamp(3.2rem,9vw,7rem)}
.library-hero .lead{max-width:680px;margin:var(--space-5) 0 var(--space-7);color:var(--text-secondary);font-size:clamp(1rem,2vw,1.25rem);line-height:var(--lh-relaxed)}
.library-orbit{position:absolute;right:8%;top:19%;width:min(38vw,460px);aspect-ratio:1;border:1px solid color-mix(in oklch,var(--blue-400) 24%,transparent);border-radius:50%;animation:libspin 24s linear infinite}
.library-orbit::before,.library-orbit::after{content:"";position:absolute;inset:15%;border:1px solid color-mix(in oklch,var(--purple-400) 28%,transparent);border-radius:50%;transform:rotate(55deg)}
.library-orbit::after{inset:34%;background:radial-gradient(circle,var(--orange-400),var(--orange-600) 35%,transparent 38%);border:0;box-shadow:var(--glow-orange)}
.library-orbit i{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--blue-300);box-shadow:0 0 18px var(--blue-400)}.library-orbit i:nth-child(1){left:8%;top:35%}.library-orbit i:nth-child(2){right:12%;bottom:24%;background:var(--purple-300)}.library-orbit i:nth-child(3){left:52%;top:-8px;background:var(--orange-300)}
@keyframes libspin{to{transform:rotate(1turn)}}
.library-main{max-width:var(--container-max);margin:auto;padding:var(--space-10) var(--gutter)}
.library-filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 var(--space-7)}.library-filters .chip{cursor:pointer}.library-filters .chip.on{background:var(--accent-soft);border-color:var(--border-accent);color:var(--text-primary)}
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}
.content-card{--card-c:var(--blue-400);position:relative;min-height:330px;display:flex;flex-direction:column;align-items:flex-start;padding:var(--space-7);overflow:hidden;border:1px solid var(--border-default);border-radius:var(--radius-xl);background:radial-gradient(100% 70% at 100% 0%,color-mix(in oklch,var(--card-c) 18%,transparent),transparent 62%),linear-gradient(155deg,var(--surface-3),var(--surface-1));box-shadow:var(--shadow-lg),var(--inset-top);transition:border-color .25s,box-shadow .25s,opacity .25s}
.content-card.panel{flex:initial;height:auto}
.content-card::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 45%,color-mix(in oklch,var(--card-c) 7%,transparent));pointer-events:none}.content-card:hover{border-color:color-mix(in oklch,var(--card-c) 65%,transparent);box-shadow:0 18px 60px color-mix(in oklch,var(--card-c) 18%,transparent)}
.content-card.c-purple{--card-c:var(--purple-400)}.content-card.c-orange{--card-c:var(--orange-400)}.content-card.c-blue{--card-c:var(--blue-400)}
.content-card .card-no{position:absolute;right:24px;top:12px;font:700 clamp(4.4rem,10vw,7.2rem)/1 var(--font-display);color:transparent;-webkit-text-stroke:1px color-mix(in oklch,var(--card-c) 28%,transparent)}
.content-card .badge,.content-card h3,.content-card p,.content-card .more{position:relative;z-index:1}.content-card h3{max-width:78%;margin:auto 0 var(--space-3);font-size:clamp(1.55rem,3vw,2.25rem)}.content-card p{max-width:540px;margin:0 0 var(--space-5);color:var(--text-secondary);line-height:var(--lh-relaxed)}.content-card .more{margin-top:auto;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:var(--ls-wide);color:var(--card-c)}
.content-card[hidden]{display:none}.empty-filter{text-align:center;color:var(--text-muted)}
.content-card.p-cores{background:radial-gradient(65% 55% at 12% 105%,rgba(255,59,48,.42),transparent 70%),radial-gradient(60% 55% at 55% 110%,rgba(52,199,89,.34),transparent 70%),radial-gradient(60% 60% at 105% 85%,rgba(10,132,255,.44),transparent 70%),linear-gradient(170deg,#141830,#0a0d1c)}
.content-card.p-anim{background:radial-gradient(80% 60% at 20% 100%,rgba(235,77,29,.30),transparent 70%),linear-gradient(170deg,#1b1420,#0a0d1c)}
.content-card.p-chars{background:linear-gradient(rgba(74,184,245,.07) 1px,transparent 1px) 0 0/26px 26px,linear-gradient(90deg,rgba(74,184,245,.07) 1px,transparent 1px) 0 0/26px 26px,radial-gradient(90% 70% at 100% 0%,rgba(74,184,245,.22),transparent 65%),linear-gradient(170deg,#0e1a2e,#0a0d1c)}
.content-card.p-story{background:radial-gradient(90% 70% at 100% 0%,rgba(130,57,238,.34),transparent 65%),radial-gradient(70% 50% at 0% 100%,rgba(74,184,245,.14),transparent 70%),linear-gradient(170deg,#150f2c,#0a0d1c)}
.content-card.p-game{background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/28px 28px,linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px) 0 0/28px 28px,radial-gradient(80% 60% at 100% 100%,rgba(235,77,29,.28),transparent 65%),linear-gradient(170deg,#1a1322,#0a0d1c)}
.content-card.p-cam{background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),radial-gradient(90% 60% at 50% 0%,rgba(74,184,245,.2),transparent 65%),linear-gradient(170deg,#0d1730,#070a14)}
.content-card.space-card{background:radial-gradient(1.5px 1.5px at 20% 30%,#fff,transparent),radial-gradient(1px 1px at 70% 20%,#cfe3ff,transparent),radial-gradient(1.5px 1.5px at 85% 60%,#fff,transparent),radial-gradient(1px 1px at 35% 75%,#ffd9c7,transparent),radial-gradient(1px 1px at 55% 50%,#fff,transparent),radial-gradient(120% 90% at 80% 10%,color-mix(in oklch,var(--purple-500) 45%,transparent),transparent 60%),radial-gradient(90% 80% at 10% 100%,color-mix(in oklch,var(--blue-500) 25%,transparent),transparent 60%),linear-gradient(170deg,#0b0a1f,#050816)}
.blueprint-card::after{content:"";position:absolute;right:3%;bottom:4%;width:42%;height:46%;opacity:.18;background:linear-gradient(var(--blue-300) 1px,transparent 1px),linear-gradient(90deg,var(--blue-300) 1px,transparent 1px);background-size:20px 20px;transform:rotate(-6deg)}
.pipeline-card::after{content:"● — ● — ● — ●";position:absolute;right:4%;bottom:10%;font:700 clamp(1rem,2.5vw,1.5rem) var(--font-mono);letter-spacing:.18em;color:color-mix(in oklch,var(--orange-400) 28%,transparent);transform:rotate(-7deg)}
.frames-card::after{content:"";position:absolute;right:5%;bottom:7%;width:42%;height:35%;border:2px dashed color-mix(in oklch,var(--purple-300) 24%,transparent);box-shadow:-18px -18px 0 -1px color-mix(in oklch,var(--purple-300) 10%,transparent),-36px -36px 0 -1px color-mix(in oklch,var(--purple-300) 6%,transparent);transform:rotate(4deg)}
.library-cta{width:min(100% - 2 * var(--gutter),var(--container-max));margin:0 auto var(--space-10);padding:clamp(32px,7vw,72px);border:1px solid var(--border-accent);border-radius:var(--radius-xl);background:radial-gradient(circle at 90% 10%,var(--accent-soft),transparent 42%),var(--surface-2);text-align:center}.library-cta p:not(.eyebrow){max-width:660px;margin:var(--space-4) auto var(--space-6);color:var(--text-secondary);line-height:var(--lh-relaxed)}
@media(max-width:760px){.content-grid{grid-template-columns:1fr}.content-card{min-height:290px;padding:var(--space-6)}.library-orbit{opacity:.35;right:-25%;width:78vw}.content-card h3{max-width:85%}}
@media(prefers-reduced-motion:reduce){.library-orbit{animation:none}}
