/* ---------- Admin ---------- */
.shs-repo-admin .shs-repo-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 16px;
	margin-top: 20px;
}
.shs-repo-admin .shs-repo-card {
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 6px;
	padding: 16px 18px;
	box-shadow: 0 1px 1px rgba(0,0,0,.04);
}
.shs-repo-admin .shs-repo-card h2 { margin-top: 0; }
.shs-repo-admin .shs-repo-card-meta { color: #646970; margin: 0 0 8px; }
.shs-repo-admin .shs-repo-shortcode code {
	display: inline-block;
	background: #f0f0f1;
	padding: 4px 8px;
	border-radius: 4px;
	font-size: 12px;
	word-break: break-all;
}
.shs-repo-admin .shs-repo-card-new { border-style: dashed; background: #fbfbfc; }
.shs-repo-admin .shs-repo-card-actions { margin-bottom: 0; }

.shs-repo-admin .shs-repo-columns { display: flex; gap: 20px; margin-top: 16px; align-items: flex-start; }
.shs-repo-admin .shs-repo-main { flex: 1 1 65%; min-width: 0; }
.shs-repo-admin .shs-repo-side { flex: 1 1 30%; max-width: 340px; }
.shs-repo-admin .shs-repo-box {
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 6px;
	padding: 16px 20px 20px;
	margin-bottom: 20px;
}
.shs-repo-admin .shs-repo-box h2 { margin-top: 0; }

.shs-repo-admin .shs-inline-form label { display: block; margin-bottom: 10px; font-weight: 600; }
.shs-repo-admin .shs-inline-form input[type="text"],
.shs-repo-admin .shs-inline-form input[type="url"] { display: block; margin-top: 4px; font-weight: 400; }
.shs-repo-admin .shs-checkbox-label { font-weight: 400 !important; }
.shs-repo-admin .shs-url-row { display: flex; gap: 8px; align-items: center; }
.shs-repo-admin .shs-url-row input { flex: 1; }

.shs-repo-admin .shs-links-table .shs-drag-col { width: 24px; text-align: center; cursor: grab; color: #a7aaad; }
.shs-repo-admin .shs-links-table tr.ui-sortable-helper { background: #f6f7f7; box-shadow: 0 2px 6px rgba(0,0,0,.15); }
.shs-repo-admin .shs-links-table .shs-row-actions { white-space: nowrap; }
.shs-repo-admin .shs-edit-row.shs-hidden { display: none; }
.shs-repo-admin .shs-edit-row td { background: #f6f7f7; padding-top: 14px; }

.shs-repo-admin .shs-shortcode-box { font-family: Consolas, Menlo, monospace; }

/* ---------- Frontend ---------- */
.shs-repo-wrap { margin: 1.5em 0; }
.shs-repo-title { margin-bottom: 0.25em; }
.shs-repo-subtitle { color: #555; margin-top: 0; }
.shs-repo-table-scroll { overflow-x: auto; }
.shs-repo-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.95em;
}
.shs-repo-table th,
.shs-repo-table td {
	border: 1px solid #ddd;
	padding: 8px 12px;
	text-align: left;
	vertical-align: top;
}
.shs-repo-table thead th {
	background: #f5f5f5;
	font-weight: 700;
}
.shs-repo-table tbody tr:nth-child(even) { background: #fafafa; }
.shs-repo-table .shs-col-num { width: 3%; text-align: center; }
.shs-repo-table .shs-col-title { width: 32%; }
.shs-repo-table td.shs-col-title a {
	text-decoration: underline;
	font-weight: 600;
}
.shs-repo-empty { font-style: italic; color: #777; }
