/* ═══════════════════════════════════════════════════════════════════════
   dashboards.css — CPT tool archive (/dashboards/)
   Requires: style.css with --ls-* tokens
   ═══════════════════════════════════════════════════════════════════════ */

/* ── GP layout reset (same pattern as archive/single) ───────────────── */
.post-type-archive-tool #page.grid-container {
	display:       block !important;
	max-width:     none !important;
	padding-left:  0 !important;
	padding-right: 0 !important;
}
.post-type-archive-tool .site-content {
	display:   block !important;
	width:     100% !important;
	max-width: none !important;
	padding:   0 !important;
}
.post-type-archive-tool .ls-inner {
	max-width: 1100px;
	margin:    0 auto;
	padding:   0 var(--ls-space-page);
}

/* ════════════════════════════════════════════════════════════════════════
   HERO
   ════════════════════════════════════════════════════════════════════════ */
.ls-db-hero {
	background:    var(--ls-bg-dark);
	border-bottom: 1px solid rgba(255,255,255,0.07);
	padding:       32px 0 28px;
}
.ls-db-hero__eyebrow {
	font-family:    var(--ls-font-mono);
	font-size:      var(--ls-text-mono);
	color:          var(--ls-accent-mid);
	letter-spacing: var(--ls-tracking-caps);
	text-transform: uppercase;
	margin:         0 0 8px;
}
.ls-db-hero__title {
	font-size:   var(--ls-text-h1);
	font-weight: var(--ls-weight-semi);
	color:       #fff;
	line-height: var(--ls-leading-tight);
	margin:      0 0 10px;
}
.ls-db-hero__sub {
	color:       rgba(255,255,255,0.55);
	font-size:   var(--ls-text-body);
	line-height: var(--ls-leading-normal);
	margin:      0;
	max-width:   560px;
}

/* ════════════════════════════════════════════════════════════════════════
   BODY / GRID
   ════════════════════════════════════════════════════════════════════════ */
.ls-db-body {
	background: var(--ls-bg);
	padding:    40px 0 72px;
}

.ls-db-grid {
	display:               grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap:                   20px;
}

/* ════════════════════════════════════════════════════════════════════════
   DASHBOARD CARD
   ════════════════════════════════════════════════════════════════════════ */
.ls-db-card {
	background:     var(--ls-bg-card);
	border:         1px solid var(--ls-border);
	border-radius:  var(--ls-radius-xl);
	box-shadow:     var(--ls-shadow-card);
	padding:        24px;
	display:        flex;
	flex-direction: column;
	gap:            10px;
	text-decoration: none;
	color:          inherit;
	transition:     box-shadow .2s, border-color .2s, transform .18s;
	cursor:         pointer;
}
.ls-db-card:hover {
	box-shadow:   var(--ls-shadow-card-hover);
	border-color: #d1d5db;
	transform:    translateY(-2px);
	text-decoration: none;
	color:        inherit;
}
/* Disabled state for "soon" cards */
.ls-db-card--draft {
	opacity: 0.6;
	cursor:  default;
	pointer-events: none;
}
.ls-db-card--draft:hover {
	transform:    none;
	box-shadow:   var(--ls-shadow-card);
	border-color: var(--ls-border);
}

/* Top row: icon + type label */
.ls-db-card__top {
	display:     flex;
	align-items: center;
	gap:         10px;
	margin-bottom: 4px;
}
.ls-db-card__icon {
	width:         40px;
	height:        40px;
	border-radius: var(--ls-radius-md);
	display:       flex;
	align-items:   center;
	justify-content: center;
	flex-shrink:   0;
}
.ls-db-card__type {
	font-family:    var(--ls-font-mono);
	font-size:      var(--ls-text-mono);
	font-weight:    var(--ls-weight-medium);
	color:          var(--ls-muted);
	letter-spacing: var(--ls-tracking-caps);
}

/* Title */
.ls-db-card__title {
	font-size:   1.1rem;
	font-weight: var(--ls-weight-semi);
	line-height: 1.3;
	color:       var(--ls-ink);
	margin:      0;
}
.ls-db-card:hover .ls-db-card__title { color: var(--ls-accent); }

/* Description */
.ls-db-card__desc {
	font-size:          var(--ls-text-body);
	color:              var(--ls-muted);
	line-height:        var(--ls-leading-normal);
	margin:             0;
	flex:               1;
	display:            -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow:           hidden;
}

/* Footer: date + badge */
.ls-db-card__foot {
	display:         flex;
	justify-content: space-between;
	align-items:     center;
	padding-top:     12px;
	border-top:      1px solid var(--ls-border-light);
	margin-top:      auto;
}
.ls-db-card__date {
	font-family: var(--ls-font-mono);
	font-size:   var(--ls-text-mono);
	color:       var(--ls-faint);
}

/* ── Status badges ───────────────────────────────────────────────────── */
.ls-db-badge {
	font-family:    var(--ls-font-mono);
	font-size:      10px;
	font-weight:    var(--ls-weight-semi);
	letter-spacing: var(--ls-tracking-caps);
	padding:        2px 8px;
	border-radius:  var(--ls-radius-pill);
	text-transform: uppercase;
}
.ls-db-badge--live {
	background: var(--ls-accent-light);
	color:      var(--ls-accent);
}
.ls-db-badge--beta {
	background: var(--ls-amber-light);
	color:      var(--ls-amber);
}
.ls-db-badge--soon {
	background: var(--ls-border-light);
	color:      var(--ls-faint);
}

/* ── Empty state ──────────────────────────────────────────────────────── */
.ls-db-empty {
	color:      var(--ls-muted);
	text-align: center;
	padding:    80px 0;
	font-size:  var(--ls-text-body);
}

/* ════════════════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════════════════ */
@media (max-width: 640px) {
	.ls-db-grid { grid-template-columns: 1fr; }
	.ls-db-hero { padding: 20px 0 18px; }
	.ls-db-hero__title { font-size: var(--ls-text-h2); }
}
