html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

*::-moz-focus-inner {
  border: 0; }

body {
  margin: 0; }

button,
input {
  font-family: inherit;
  font-size: inherit; }

[hidden] {
  display: none !important; }

.icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-size: 16px;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: middle; }
  .icon.icon-spacer {
    margin-inline-end: 8px; }
  .icon.icon-bookmark {
    background-image: url("assets/glyph-bookmark-16.svg"); }
  .icon.icon-bookmark-remove {
    background-image: url("assets/glyph-bookmark-remove-16.svg"); }
  .icon.icon-delete {
    background-image: url("assets/glyph-delete-16.svg"); }
  .icon.icon-dismiss {
    background-image: url("assets/glyph-dismiss-16.svg"); }
  .icon.icon-new-window {
    background-image: url("assets/glyph-newWindow-16.svg"); }
  .icon.icon-new-window-private {
    background-image: url("assets/glyph-newWindow-private-16.svg"); }

html,
body,
#root {
  height: 100%; }

body {
  background: #F6F6F8;
  color: #383E49;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', 'Helvetica Neue', sans-serif;
  font-size: 16px; }

h1,
h2 {
  font-weight: normal; }

a {
  color: #00AFF7;
  text-decoration: none; }
  a:hover {
    color: #2bc1ff; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.inner-border {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 100; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.show-on-init {
  opacity: 0;
  transition: opacity 0.2s ease-in; }
  .show-on-init.on {
    opacity: 1;
    animation: fadeIn 0.2s; }

.actions {
  border-top: solid 1px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: row;
  margin: 0;
  padding: 15px 25px;
  justify-content: flex-start; }
  .actions button {
    background: #FBFBFB;
    border: solid 1px #BFBFBF;
    border-radius: 5px;
    color: #858585;
    cursor: pointer;
    padding: 10px 30px; }
    .actions button:hover {
      box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.1);
      transition: box-shadow 150ms; }
    .actions button.done {
      background: #0695F9;
      border: solid 1px #1677CF;
      color: #FFF;
      margin-inline-start: auto; }

.outer-wrapper {
  display: flex;
  flex-grow: 1;
  padding: 62px 32px 32px;
  height: 100%; }

main {
  margin: auto; }
  @media (min-width: 672px) {
    main {
      width: 608px; } }
  @media (min-width: 800px) {
    main {
      width: 736px; } }
  main section {
    margin-bottom: 41px; }

.section-title {
  color: #6E707E;
  font-size: 13px;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0 0 18px; }

.top-sites-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-inline-end: -32px; }
  @media (min-width: 672px) {
    .top-sites-list {
      width: 640px; } }
  @media (min-width: 800px) {
    .top-sites-list {
      width: 768px; } }
  .top-sites-list li {
    display: inline-block;
    margin: 0 0 18px;
    margin-inline-end: 32px; }
  .top-sites-list .top-site-outer {
    position: relative; }
    .top-sites-list .top-site-outer > a {
      display: block;
      color: inherit;
      outline: none; }
      .top-sites-list .top-site-outer > a.active .tile, .top-sites-list .top-site-outer > a:focus .tile {
        box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1), 0 0 0 5px rgba(0, 0, 0, 0.1);
        transition: box-shadow 150ms; }
    .top-sites-list .top-site-outer .context-menu-button {
      cursor: pointer;
      position: absolute;
      top: -13.5px;
      offset-inline-end: -13.5px;
      width: 27px;
      height: 27px;
      background-color: #FFF;
      background-image: url("assets/glyph-more-16.svg");
      background-position: 65%;
      background-repeat: no-repeat;
      background-clip: padding-box;
      border: 1px solid rgba(0, 0, 0, 0.2);
      border-radius: 100%;
      box-shadow: 0 2px 0 rgba(0, 0, 0, 0.1);
      transform: scale(0.25);
      opacity: 0;
      transition-property: transform, opacity;
      transition-duration: 200ms;
      z-index: 399; }
      .top-sites-list .top-site-outer .context-menu-button:focus, .top-sites-list .top-site-outer .context-menu-button:active {
        transform: scale(1);
        opacity: 1; }
    .top-sites-list .top-site-outer:hover .tile, .top-sites-list .top-site-outer:active .tile, .top-sites-list .top-site-outer:focus .tile, .top-sites-list .top-site-outer.active .tile {
      box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1), 0 0 0 5px rgba(0, 0, 0, 0.1);
      transition: box-shadow 150ms; }
    .top-sites-list .top-site-outer:hover .context-menu-button, .top-sites-list .top-site-outer:active .context-menu-button, .top-sites-list .top-site-outer:focus .context-menu-button, .top-sites-list .top-site-outer.active .context-menu-button {
      transform: scale(1);
      opacity: 1; }
    .top-sites-list .top-site-outer .tile {
      position: relative;
      height: 96px;
      width: 96px;
      border-radius: 6px;
      box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
      color: #A0A0A0;
      font-weight: 200;
      font-size: 32px;
      text-transform: uppercase;
      display: flex;
      align-items: center;
      justify-content: center; }
    .top-sites-list .top-site-outer .screenshot {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background-color: #FFF;
      border-radius: 6px;
      box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
      background-size: 250%;
      background-position: top left;
      transition: opacity 1s;
      opacity: 0; }
      .top-sites-list .top-site-outer .screenshot.active {
        opacity: 1; }
    .top-sites-list .top-site-outer .title {
      height: 30px;
      line-height: 30px;
      text-align: center;
      white-space: nowrap;
      font-size: 11px;
      overflow: hidden;
      text-overflow: ellipsis;
      width: 96px; }

.search-wrapper {
  cursor: default;
  display: flex;
  position: relative;
  margin: 0 0 48px;
  width: 100%;
  height: 36px; }
  .search-wrapper input {
    border: 0;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
    flex-grow: 1;
    margin: 0;
    outline: none;
    padding: 0 12px 0 35px;
    height: 100%;
    border-radius: 4px 0 0 4px;
    padding-inline-start: 35px; }
    .search-wrapper input:focus {
      border-color: #0996F8;
      box-shadow: 0 0 0 2px #0996F8;
      z-index: 1; }
    .search-wrapper input:focus + .search-button {
      z-index: 1;
      box-shadow: 0 0 0 2px #0996F8;
      background-color: #0996F8;
      background-image: url("assets/glyph-forward-16-white.svg");
      color: #FFF; }
    .search-wrapper input[aria-expanded="true"] {
      border-radius: 4px 0 0 0; }
    .search-wrapper input:dir(rtl) {
      border-radius: 0 4px 4px 0; }
      .search-wrapper input:dir(rtl)[aria-expanded="true"] {
        border-radius: 0 4px 0 0; }
  .search-wrapper .search-label {
    background: url("assets/glyph-search-16.svg") no-repeat center center/20px;
    position: absolute;
    top: 0;
    offset-inline-start: 0;
    height: 100%;
    width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2; }
  .search-wrapper .search-button {
    border-radius: 0 3px 3px 0;
    margin-inline-start: -1px;
    border: 0;
    width: 36px;
    padding: 0;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
    background: #FFF url("assets/glyph-forward-16.svg") no-repeat center center;
    background-size: 16px 16px; }
    .search-wrapper .search-button:hover {
      z-index: 1;
      box-shadow: 0 1px 0 0 rgba(0, 0, 1, 0.5);
      background-color: #0996F8;
      background-image: url("assets/glyph-forward-16-white.svg");
      color: #FFF;
      cursor: pointer; }
    .search-wrapper .search-button:dir(rtl) {
      transform: scaleX(-1); }
  .search-wrapper .contentSearchSuggestionTable {
    transform: translate(-2px, 2px); }
    .search-wrapper .contentSearchSuggestionTable:dir(rtl) {
      transform: translate(2px, 2px); }

.context-menu {
  display: block;
  position: absolute;
  font-size: 14px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.2);
  top: 6.75px;
  offset-inline-start: 100%;
  margin-inline-start: 5px;
  z-index: 10000;
  background: #FBFBFB;
  border-radius: 5px; }
  .context-menu > ul {
    margin: 0;
    padding: 5px 0;
    list-style: none; }
    .context-menu > ul > li {
      margin: 0;
      width: 100%; }
      .context-menu > ul > li.separator {
        margin: 5px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
      .context-menu > ul > li > a {
        outline: none;
        cursor: pointer;
        color: inherit;
        white-space: nowrap;
        padding: 3px 12px;
        line-height: 16px;
        display: flex;
        align-items: center; }
        .context-menu > ul > li > a:hover, .context-menu > ul > li > a:focus {
          background: #2B99FF;
          color: #FFF; }
          .context-menu > ul > li > a:hover a, .context-menu > ul > li > a:focus a {
            color: #383E49; }
          .context-menu > ul > li > a:hover:hover, .context-menu > ul > li > a:hover:focus, .context-menu > ul > li > a:focus:hover, .context-menu > ul > li > a:focus:focus {
            color: #FFF; }
