.resource-card{border-radius:var(--radius-24);background:var(--ds-background-100);min-height:220px;box-shadow:var(--shadow-card);transition:box-shadow var(--duration-fast) ease;flex-direction:column;padding:20px;display:flex;position:relative}.resource-card:hover{box-shadow:var(--shadow-card-hover)}.resource-card:has(.resource-card-open:focus-visible){box-shadow:var(--ds-focus-ring)}.resource-card-author{align-items:center;gap:8px;display:flex}.resource-card-author-text{flex-direction:column;min-width:0;display:flex}.resource-card-author-text-name{text-overflow:ellipsis;white-space:nowrap;font:var(--text-label-14);font-weight:500;overflow:hidden}.resource-card-author-text-handle{font:var(--text-label-13);color:var(--ds-gray-900)}.resource-card-author-platform{margin-left:auto}.resource-card-excerpt{-webkit-line-clamp:4;font:var(--text-copy-14);-webkit-box-orient:vertical;margin-top:16px;display:-webkit-box;overflow:hidden}.resource-card-open{cursor:pointer;background:0 0;border:none;padding:0;position:static}.resource-card-open:after{content:"";border-radius:inherit;position:absolute;inset:0}.resource-card-open:focus-visible{box-shadow:none}.resource-card-actions{z-index:1;flex-wrap:wrap;gap:8px;margin-top:16px;display:flex;position:relative}.resource-card-actions-link{border-radius:var(--radius-control);background:var(--ds-background-100);height:28px;box-shadow:var(--ds-shadow-border-base);font:var(--text-button-12);transition:background-color var(--duration-fast) ease;align-items:center;gap:4px;padding:0 12px;display:inline-flex}.resource-card-actions-link:hover{background:var(--ds-gray-100)}.resource-card-actions-link svg{width:14px;height:14px}.resource-card-actions-link--download{background:linear-gradient(0deg, var(--button-primary-from), var(--button-primary-to));color:var(--primary-contrast);box-shadow:none}.resource-card-actions-link--download:hover{background:linear-gradient(0deg, var(--button-primary-from-hover), var(--button-primary-to))}.resource-card-footer{flex-direction:column;align-items:flex-start;gap:8px;margin-top:auto;padding-top:16px;display:flex}.resource-card-footer-topics{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.resource-card-footer-meta{align-items:center;gap:8px;display:flex}.resource-card-footer-date{font:var(--text-label-13);color:var(--ds-gray-900);flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.resource-card-footer-date-arrow{opacity:0;width:14px;height:14px;transition:opacity var(--duration-fast) ease}.resource-card:hover .resource-card-footer-date-arrow{opacity:1}.resource-card{cursor:pointer}.resource-card--grid .resource-card-actions{order:1}.resource-card--list{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"author actions""excerpt actions""footer actions";align-items:start;column-gap:24px;min-height:0;display:grid}.resource-card--list .resource-card-author{grid-area:author}.resource-card--list .resource-card-author-platform{display:none}.resource-card--list .resource-card-excerpt{grid-area:excerpt;margin-top:12px;display:block;overflow:visible}.resource-card--list .resource-card-actions{grid-area:actions;justify-content:flex-start;margin-top:0}.resource-card--list .resource-card-footer{grid-area:footer;margin-top:0;padding-top:12px}.resource-card--list .resource-card-footer-topics{flex-wrap:nowrap}@media (max-width:800px){.resource-card--list{grid-template-columns:minmax(0,1fr);grid-template-areas:"author""excerpt""footer""actions"}.resource-card--list .resource-card-actions{margin-top:16px}}
.tweet-embed{min-height:120px;position:relative}.tweet-embed-frame>*{margin:0 auto!important}.tweet-embed--loading .tweet-embed-frame{opacity:0;pointer-events:none;position:absolute;inset:0}.tweet-embed--failed .tweet-embed-frame{display:none}.tweet-embed-skeleton{border-radius:var(--radius-12);background:var(--ds-gray-100);height:240px;box-shadow:inset 0 0 0 1px var(--ds-gray-alpha-400);animation:1.4s ease-in-out infinite tweet-embed-pulse}@keyframes tweet-embed-pulse{50%{opacity:.55}}.tweet-embed-fallback{border-radius:var(--radius-12);background:var(--ds-gray-100);min-height:120px;box-shadow:inset 0 0 0 1px var(--ds-gray-alpha-400);font:var(--text-label-14);color:var(--ds-gray-900);text-align:center;justify-content:center;align-items:center;gap:4px;padding:24px;display:flex}.tweet-embed-fallback:hover{color:var(--ds-gray-1000)}.tweet-embed-fallback svg{width:16px;height:16px}
.resource-dialog-overlay{z-index:70;background:color-mix(in srgb, var(--ds-background-200) 70%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:fixed;inset:0}.resource-dialog{z-index:71;border-radius:var(--radius-panel);background:var(--ds-background-100);width:min(600px,100vw - 32px);max-height:calc(100vh - 64px);box-shadow:var(--ds-shadow-menu);outline:none;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.resource-dialog-overlay[data-state=open]{animation:resource-dialog-fade-in .16s var(--ease-out)}.resource-dialog-overlay[data-state=closed]{animation:.12s ease-in resource-dialog-fade-out}.resource-dialog[data-state=open]{animation:resource-dialog-in .18s var(--ease-out)}.resource-dialog[data-state=closed]{animation:.12s ease-in resource-dialog-out}.resource-dialog-header{box-shadow:inset 0 -1px 0 var(--ds-gray-alpha-400);align-items:center;gap:12px;padding:16px 16px 16px 24px;display:flex}.resource-dialog-header-text{flex-direction:column;flex:1;min-width:0;display:flex}.resource-dialog-header-text-name{font:var(--text-label-16)}.resource-dialog-header-text-meta{font:var(--text-label-13);color:var(--ds-gray-900);margin-top:4px}.resource-dialog-header-platform{margin-right:4px}.resource-dialog-header-close{border-radius:max(var(--radius-min), round(nearest, calc(var(--radius-panel) - 16px), 4px));width:32px;height:32px;color:var(--ds-gray-900);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.resource-dialog-header-close:hover{background:var(--ds-gray-alpha-100);color:var(--ds-gray-1000)}.resource-dialog-header-close svg{width:16px;height:16px}.resource-dialog-body{flex-direction:column;gap:24px;padding:24px;display:flex;overflow-y:auto}.resource-dialog-body-label{font:var(--text-label-12-mono);color:var(--ds-gray-900);text-transform:uppercase;letter-spacing:.04em}.resource-dialog-body-summary-text{font:var(--text-copy-16);margin-top:8px}.resource-dialog-body-summary-stats{margin-top:12px}.resource-dialog-body-summary-tags{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.resource-dialog-body-post-embed{margin-top:8px}.resource-dialog-footer{background:var(--ds-background-200);box-shadow:inset 0 1px 0 var(--ds-gray-alpha-400);border-radius:0 0 var(--radius-panel) var(--radius-panel);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 12px 24px;display:flex}.resource-dialog-footer-links{flex-wrap:wrap;gap:8px;display:flex}.resource-dialog-footer-steps{flex-shrink:0;align-items:center;gap:4px;display:flex}.resource-dialog-footer-steps-count{min-width:56px;font:var(--text-label-12-mono);color:var(--ds-gray-900);text-align:center}.resource-dialog-footer-steps-button{border-radius:var(--radius-control);background:var(--ds-background-100);width:32px;height:32px;box-shadow:var(--ds-shadow-border-base);color:var(--ds-gray-1000);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.resource-dialog-footer-steps-button:hover:not(:disabled){background:var(--ds-gray-100)}.resource-dialog-footer-steps-button:disabled{opacity:.4;cursor:not-allowed}.resource-dialog-footer-steps-button svg{width:16px;height:16px}@keyframes resource-dialog-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}}@keyframes resource-dialog-out{to{opacity:0;transform:translate(-50%,-48%)scale(.97)}}@keyframes resource-dialog-fade-in{0%{opacity:0}}@keyframes resource-dialog-fade-out{to{opacity:0}}@media (prefers-reduced-motion:reduce){.resource-dialog[data-state=open]{animation-name:resource-dialog-fade-in}.resource-dialog[data-state=closed]{animation-name:resource-dialog-fade-out}}@media (max-width:640px){.resource-dialog-footer{flex-direction:column;align-items:stretch}.resource-dialog-footer-steps{justify-content:space-between}}
