/* DriveStream 1.1.0: resilient latest-media and mobile TikTok layout. */
.ds-collection .ds-media-grid:not(:has(.ds-loading)):not(:has(.ds-empty)) {
	align-items: start;
}

.ds-media-card:focus-visible,
.ds-round-action:focus-visible,
.ds-primary-button:focus-visible,
.ds-secondary-button:focus-visible,
.ds-text-button:focus-visible {
	outline: 3px solid rgba(255, 77, 79, .34);
	outline-offset: 2px;
}

@media (max-width: 760px) {
	.ds-topbar {
		height: 60px;
		padding: 0 14px;
	}

	.ds-brand-mark { width: 31px; height: 31px; }
	.ds-topbar-actions { gap: 8px; }
	.ds-main { padding: 16px 13px 88px; }
	.ds-welcome-card { border-radius: 15px; gap: 15px; }
	.ds-welcome-card h1 { font-size: 21px; }
	.ds-welcome-card p:not(.ds-eyebrow) { font-size: 13px; }
	.ds-welcome-card .ds-primary-button { width: 100%; }
	.ds-stat-grid { margin: 15px 0; }
	.ds-collection { padding: 17px 12px; border-radius: 15px; }
	.ds-section-heading { align-items: center; margin-bottom: 15px; }
	.ds-section-heading h2 { font-size: 17px; }
	.ds-text-button { font-size: 12px; white-space: nowrap; }
	.ds-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
	.ds-media-preview { height: clamp(132px, 43vw, 194px); }
	.ds-media-info { padding: 9px; }
	.ds-media-info h3 { font-size: 12px; }
	.ds-media-info p { font-size: 10px; }
	.ds-media-card-actions { right: 6px; bottom: 5px; gap: 4px; }
	.ds-round-action { width: 29px; height: 29px; }
	.ds-modal { padding: 12px; }
	.ds-modal-card { max-height: calc(100dvh - 24px); overflow: auto; padding: 24px 18px; }
	.ds-viewer { padding: 0; }
	.ds-viewer-card { width: 100vw; height: 100dvh; max-height: none; border-radius: 0; }
	.ds-viewer-stage > img,
	.ds-viewer-stage > video { width: 100%; height: 100%; object-fit: contain; }
	.ds-viewer-caption { padding: 82px 18px 24px; }
	.ds-viewer-actions { right: 13px; bottom: 104px; }
	.ds-viewer .ds-close-button { right: 14px; top: 14px; }
}

@media (max-width: 360px) {
	.ds-brand > span:last-child { font-size: 0; }
	.ds-brand > span:last-child span { font-size: 17px; }
	.ds-media-preview { height: 126px; }
}
