.section-empty-state { border: 1px solid var(--border-color); border-radius: var(--border-radius-small); display: flex; height: $card-height-compact; width: 100%; @media (min-width: $break-point-sections-variant) { width: 936px; } .empty-state-message { color: var(--newtab-text-secondary-color); font-size: var(--font-size-small); text-align: center; margin: auto; max-width: 936px; } .try-again-button { margin-block-start: var(--space-medium); padding: var(--space-small) var(--space-xxlarge); border-radius: var(--border-radius-small); border: 0; background: var(--newtab-button-secondary-color); color: var(--newtab-text-primary-color); cursor: pointer; position: relative; transition: background 0.2s ease, color 0.2s ease; &:not(.waiting) { &:focus { @include ds-fade-in; @include dark-theme-only { @include ds-fade-in($blue-40-40); } } &:hover { @include ds-fade-in(var(--newtab-element-secondary-color)); } } &::after { content: ''; height: 20px; width: 20px; animation: spinner 1s linear infinite; opacity: 0; position: absolute; inset-block-start: 50%; inset-inline-start: 50%; margin: calc(var(--space-small) * -1) 0 0 calc(var(--space-small) * -1); mask-image: url('chrome://newtab/content/data/content/assets/spinner.svg'); mask-size: 20px; background: var(--newtab-text-secondary-color); } &.waiting { cursor: initial; background: var(--newtab-element-secondary-color); color: transparent; transition: background 0.2s ease; &::after { transition: opacity 0.2s ease; opacity: 1; } } } h2 { font-size: inherit; // @backward-compat { version 150 } D281466/D283723 renamed design tokens; remove once Firefox 150 is on Release. font-weight: var(--font-weight-heading, var(--heading-font-weight)); margin: 0; } p { margin: 0; } } @keyframes spinner { to { transform: rotate(360deg); } }