.academy-page.svelte-1co7vn5{max-width:1200px;margin:0 auto;padding:40px 24px 120px}.academy-header.svelte-1co7vn5{text-align:center;margin-bottom:20px;position:relative}.title.svelte-1co7vn5{font-size:3.5rem;font-weight:800;margin:0;letter-spacing:-2px;display:flex;justify-content:center;overflow:hidden;color:#fff}.title.svelte-1co7vn5 .char:where(.svelte-1co7vn5){display:inline-block;transform:translateY(100%);opacity:0;filter:blur(10px);animation:svelte-1co7vn5-text-reveal 1.2s cubic-bezier(.2,0,.2,1) forwards;background:linear-gradient(180deg,#fff,#888);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.subtitle.svelte-1co7vn5{font-size:1.1rem;font-weight:600;margin:4px auto 0;display:flex;justify-content:center;gap:0;position:relative;width:fit-content;padding:4px 0;overflow:hidden}.subtitle.svelte-1co7vn5 .char:where(.svelte-1co7vn5){display:inline-block;opacity:0;filter:blur(8px);transform:translateY(20px);animation:svelte-1co7vn5-text-reveal-sub 1s cubic-bezier(.2,0,.2,1) forwards;background:linear-gradient(180deg,#fff,#888);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.word-wrap.svelte-1co7vn5{display:flex;gap:0}.space.svelte-1co7vn5{width:.5em}@keyframes svelte-1co7vn5-text-reveal{to{transform:translateY(0);opacity:1;filter:blur(0)}}@keyframes svelte-1co7vn5-text-reveal-sub{to{transform:translateY(0);opacity:1;filter:blur(0)}}.academy-grid.svelte-1co7vn5{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px;position:relative}.tech-card.svelte-1co7vn5{background:#ffffff05;backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:28px;overflow:hidden;display:flex;flex-direction:column;transition:all .4s cubic-bezier(.23,1,.32,1);cursor:pointer}.tech-card.svelte-1co7vn5:hover{transform:translateY(-8px) scale(1.02);border-color:#fff3;background:#ffffff0a;box-shadow:0 20px 40px #0006}.card-image-wrap.svelte-1co7vn5{position:relative;height:240px;overflow:hidden}.card-image-wrap.svelte-1co7vn5 img:where(.svelte-1co7vn5){width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.tech-card.svelte-1co7vn5:hover .card-image-wrap:where(.svelte-1co7vn5) img:where(.svelte-1co7vn5){transform:scale(1.1)}.image-overlay.svelte-1co7vn5{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8) 0%,transparent 60%)}.category-badge.svelte-1co7vn5{position:absolute;top:20px;right:20px;padding:6px 14px;border-radius:100px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.category-badge.hub.svelte-1co7vn5{background:#3b82f666;color:#93c5fd}.category-badge.skills.svelte-1co7vn5{background:#10b98166;color:#6ee7b7}.category-badge.memory.svelte-1co7vn5{background:#f59e0b66;color:#fcd34d}.card-body.svelte-1co7vn5{padding:32px;display:flex;flex-direction:column;flex:1}.card-header.svelte-1co7vn5{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.date.svelte-1co7vn5{font-size:.8rem;color:#ffffff4d;font-family:monospace}.tag-row.svelte-1co7vn5{display:flex;gap:8px}.tag.svelte-1co7vn5{font-size:.75rem;color:#fff6}.card-title.svelte-1co7vn5{font-size:1.4rem;line-height:1.3;color:#fff;margin:0 0 16px;font-weight:600}.card-summary.svelte-1co7vn5{font-size:.95rem;color:#ffffff80;line-height:1.6;margin:0 0 24px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer.svelte-1co7vn5{margin-top:auto}.read-more.svelte-1co7vn5{display:inline-flex;align-items:center;gap:12px;font-size:.75rem;font-weight:700;letter-spacing:.2em;color:#fff;opacity:.4;transition:opacity .3s}.tech-card.svelte-1co7vn5:hover .read-more:where(.svelte-1co7vn5){opacity:1}.arrow.svelte-1co7vn5{transition:transform .3s ease}.tech-card.svelte-1co7vn5:hover .arrow:where(.svelte-1co7vn5){transform:translate(5px)}.animate-in.svelte-1co7vn5{animation:svelte-1co7vn5-cardIn .8s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--delay);opacity:0;transform:translateY(30px)}@keyframes svelte-1co7vn5-cardIn{to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.title.svelte-1co7vn5{font-size:2.5rem}.academy-grid.svelte-1co7vn5{grid-template-columns:1fr}}
