/*
 * hub.css — extra styles loaded ONLY on the [land_tools] hub page.
 * frame.css is already loaded as a dependency.
 */

/* Animated entry for cards */
@keyframes ltCardIn {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: translateY(0); }
}

.lt-hub-grid .lt-tool-card {
	animation: ltCardIn .3s cubic-bezier(.4,0,.2,1) both;
}

/* Stagger: up to 15 cards */
.lt-hub-grid .lt-tool-card:nth-child(1)  { animation-delay:  0ms; }
.lt-hub-grid .lt-tool-card:nth-child(2)  { animation-delay: 30ms; }
.lt-hub-grid .lt-tool-card:nth-child(3)  { animation-delay: 60ms; }
.lt-hub-grid .lt-tool-card:nth-child(4)  { animation-delay: 90ms; }
.lt-hub-grid .lt-tool-card:nth-child(5)  { animation-delay:120ms; }
.lt-hub-grid .lt-tool-card:nth-child(6)  { animation-delay:150ms; }
.lt-hub-grid .lt-tool-card:nth-child(7)  { animation-delay:180ms; }
.lt-hub-grid .lt-tool-card:nth-child(8)  { animation-delay:210ms; }
.lt-hub-grid .lt-tool-card:nth-child(9)  { animation-delay:240ms; }
.lt-hub-grid .lt-tool-card:nth-child(10) { animation-delay:270ms; }
.lt-hub-grid .lt-tool-card:nth-child(11) { animation-delay:300ms; }
.lt-hub-grid .lt-tool-card:nth-child(12) { animation-delay:330ms; }
.lt-hub-grid .lt-tool-card:nth-child(13) { animation-delay:360ms; }
.lt-hub-grid .lt-tool-card:nth-child(14) { animation-delay:390ms; }
.lt-hub-grid .lt-tool-card:nth-child(15) { animation-delay:420ms; }

/* Subtle background pattern on hub page */
.land-tools-frame-page body.lt-body,
body.lt-body {
	background-image: radial-gradient(circle at 50% 0%, rgba(79,70,229,.04) 0%, transparent 60%);
}
.lt-dark body.lt-body {
	background-image: radial-gradient(circle at 50% 0%, rgba(99,102,241,.06) 0%, transparent 60%);
}
