/* Shell desktop partilhado (Quick, QuickList, Mind, Diary). */
@media (min-width: 960px) {
	.tm-shell-wide {
		max-width: min(1280px, calc(100vw - 2rem));
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		display: grid;
		grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
		gap: var(--tm-space-md);
		align-items: start;
	}

	.tm-shell-wide > .tm-col-rail {
		position: sticky;
		top: var(--tm-space-md);
		max-height: calc(100vh - 2rem);
		overflow-y: auto;
	}

	.tm-shell-wide > .tm-col-main {
		min-width: 0;
	}

	.tm-shell-wide.tm-shell-wide--detail {
		grid-template-columns: minmax(200px, 240px) minmax(0, 1fr) minmax(260px, 300px);
	}

	.tm-shell-wide .quick-bottom-nav {
		display: none;
	}
}

.tm-empty-state {
	text-align: center;
	padding: var(--tm-space-xl) var(--tm-space-md);
	color: var(--tm-on-surface-muted);
}

.tm-empty-state__title {
	margin: 0 0 var(--tm-space-xs);
	font-size: var(--tm-type-title-medium-size);
	font-weight: 600;
	color: var(--tm-on-surface);
}

.tm-empty-state__text {
	margin: 0;
	font-size: var(--tm-type-body-medium-size);
}

@media (prefers-reduced-motion: reduce) {
	.home-feature,
	.app-module {
		transition: none;
	}
}

/* Blocos partilhados Diary + Mind (evita duplicação diary.css / mind.css). */
.diary-textarea,
.mind-textarea {
  width: 100%;
  min-height: 108px;
  border-radius: var(--tm-radius-field);
  border: 1px solid var(--tm-outline-variant);
  background: var(--tm-surface);
  color: var(--tm-on-surface);
  padding: var(--tm-space-sm);
  font: inherit;
  resize: vertical;
}

.diary-textarea--outline,
.mind-textarea--outline {
  border-radius: var(--tm-radius-field);
  border: 1px solid var(--tm-outline);
  background: var(--tm-surface);
  color: var(--tm-on-surface);
}

.diary-textarea--outline:focus,
.mind-textarea--outline:focus {
  outline: none;
  border-color: var(--tm-primary);
  box-shadow: 0 0 0 3px var(--tm-focus-ring);
}

.diary-list,
.mind-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--tm-space-sm);
}

.diary-item,
.mind-item {
  border: 1px solid var(--tm-outline-variant);
  border-radius: var(--tm-radius-field);
  padding: var(--tm-space-sm);
  background: var(--tm-surface);
  box-shadow: var(--tm-elev-1);
}

.diary-item__row,
.mind-item__row {
  display: flex;
  gap: var(--tm-space-xs);
  justify-content: flex-end;
  margin-bottom: 6px;
}

.diary-title {
  margin: 0 0 6px 0;
  font-size: var(--tm-type-title-small-size);
  font-weight: 600;
}

.diary-body,
.mind-body {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  font: inherit;
  opacity: 0.92;
  font-size: var(--tm-type-body-medium-size);
  line-height: var(--tm-type-body-medium-lh);
}
