diff --git a/src/base/sys_info_starboard.cc b/src/base/sys_info_starboard.cc
index 30b5f75..552a8ce 100644
--- a/src/base/sys_info_starboard.cc
+++ b/src/base/sys_info_starboard.cc
@@ -37,7 +37,7 @@
 
 // static
 int64 SysInfo::AmountOfPhysicalMemory() {
-  return SbSystemGetTotalMemory();
+  return SbSystemGetTotalCPUMemory();
 }
 
 }  // namespace base
diff --git a/src/cobalt/bindings/testing/dom_string_bindings_test.cc b/src/cobalt/bindings/testing/dom_string_bindings_test.cc
index 06a9595..4e99c1c 100644
--- a/src/cobalt/bindings/testing/dom_string_bindings_test.cc
+++ b/src/cobalt/bindings/testing/dom_string_bindings_test.cc
@@ -45,6 +45,22 @@
   EXPECT_STREQ("mock_value", result.c_str());
 }
 
+TEST_F(DOMStringBindingsTest, SetPropertyWithJapanese) {
+  EXPECT_CALL(test_mock(), set_property(std::string("かわいいです")));
+
+  std::string result;
+  EXPECT_TRUE(EvaluateScript("test.property = \"かわいいです\";", &result));
+  EXPECT_STREQ("かわいいです", result.c_str());
+}
+
+TEST_F(DOMStringBindingsTest, SetPropertyWithChinese) {
+  EXPECT_CALL(test_mock(), set_property(std::string("的")));
+
+  std::string result;
+  EXPECT_TRUE(EvaluateScript("test.property = \"\xe7\x9a\x84\";", &result));
+  EXPECT_STREQ("的", result.c_str());
+}
+
 TEST_F(DOMStringBindingsTest, GetReadOnlyProperty) {
   EXPECT_CALL(test_mock(), read_only_property()).WillOnce(Return("mock_value"));
 
@@ -53,6 +69,14 @@
   EXPECT_STREQ("mock_value", result.c_str());
 }
 
+TEST_F(DOMStringBindingsTest, GetReadOnlyPropertyWithKorean) {
+  EXPECT_CALL(test_mock(), read_only_property()).WillOnce(Return("대박"));
+
+  std::string result;
+  EXPECT_TRUE(EvaluateScript("test.readOnlyProperty;", &result));
+  EXPECT_STREQ("대박", result.c_str());
+}
+
 TEST_F(DOMStringBindingsTest, SetReadOnlyProperty) {
   // Script executes with no error, but interface is not called.
   EXPECT_TRUE(EvaluateScript("test.readOnlyProperty = \"foo\";", NULL));
diff --git a/src/cobalt/bindings/testing/object_type_bindings_test.cc b/src/cobalt/bindings/testing/object_type_bindings_test.cc
index 3747719..7c5cbf0 100644
--- a/src/cobalt/bindings/testing/object_type_bindings_test.cc
+++ b/src/cobalt/bindings/testing/object_type_bindings_test.cc
@@ -257,6 +257,12 @@
   EXPECT_THAT(result.c_str(), StartsWith("TypeError:"));
 }
 
+TEST_F(UserObjectBindingsTest, SetUndefinedObject) {
+  std::string result;
+  EXPECT_FALSE(EvaluateScript("test.arbitraryObject = undefined;", &result));
+  EXPECT_THAT(result.c_str(), StartsWith("TypeError:"));
+}
+
 TEST_F(UserObjectBindingsTest, SetWrongObjectType) {
   std::string result;
   EXPECT_FALSE(EvaluateScript("test.arbitraryObject = new Object()", &result));
diff --git a/src/cobalt/bindings/testing/stack_trace_test.cc b/src/cobalt/bindings/testing/stack_trace_test.cc
index 34c4629..b8c1304 100644
--- a/src/cobalt/bindings/testing/stack_trace_test.cc
+++ b/src/cobalt/bindings/testing/stack_trace_test.cc
@@ -66,6 +66,22 @@
   EXPECT_TRUE(position != std::string::npos);
 }
 
+TEST_F(StackTraceTest, UnnamedFunction) {
+  std::string result;
+
+  // There should be a stack entry for the anonymous function.
+  std::string script =
+      "function foo(fun) {\n"
+      "  return fun();\n"
+      "}\n"
+      "foo(function() { return getStackTrace();})";
+  EXPECT_TRUE(EvaluateScript(script, &result));
+
+  std::string match_line = "[object BindingsTestBase]:4";
+  size_t position = result.find(match_line);
+  EXPECT_TRUE(position != std::string::npos);
+}
+
 #if defined(ENGINE_SUPPORTS_STACK_TRACE_COLUMNS)
 // Test for column numbers in stack trace. Behavior varies somewhat
 // across engines & versions so, don't check actual column values.
diff --git a/src/cobalt/browser/application.cc b/src/cobalt/browser/application.cc
index 4327e96..ff3ddef 100644
--- a/src/cobalt/browser/application.cc
+++ b/src/cobalt/browser/application.cc
@@ -53,9 +53,6 @@
 namespace browser {
 
 namespace {
-const int kDefaultViewportWidth = 1920;
-const int kDefaultViewportHeight = 1080;
-
 const int kStatUpdatePeriodMs = 1000;
 
 const char kDefaultURL[] = "https://www.youtube.com/tv";
@@ -318,8 +315,6 @@
   // The main web module's stat tracker tracks event stats.
   options.web_module_options.track_event_stats = true;
 
-  math::Size viewport_size(kDefaultViewportWidth, kDefaultViewportHeight);
-
 #if defined(ENABLE_DEBUG_COMMAND_LINE_SWITCHES)
   if (command_line->HasSwitch(browser::switches::kProxy)) {
     options.network_module_options.custom_proxy =
@@ -352,6 +347,10 @@
 
   EnableUsingStubImageDecoderIfRequired();
 
+  if (command_line->HasSwitch(browser::switches::kDisableWebmVp9)) {
+    DLOG(INFO) << "Webm/Vp9 disabled";
+    options.media_module_options.disable_webm_vp9 = true;
+  }
   if (command_line->HasSwitch(switches::kAudioDecoderStub)) {
     DLOG(INFO) << "Use ShellRawAudioDecoderStub";
     options.media_module_options.use_audio_decoder_stub = true;
@@ -366,40 +365,34 @@
   }
 #endif  // ENABLE_DEBUG_COMMAND_LINE_SWITCHES
 
+  base::optional<math::Size> viewport_size;
   if (command_line->HasSwitch(browser::switches::kViewport)) {
     const std::string switchValue =
         command_line->GetSwitchValueASCII(browser::switches::kViewport);
     std::vector<std::string> lengths;
     base::SplitString(switchValue, 'x', &lengths);
     if (lengths.size() >= 1) {
-      int width;
-      if (!base::StringToInt(lengths[0], &width) || width < 1) {
-        DLOG(ERROR) << "Invalid value specified for viewport width: "
-                    << switchValue
-                    << ". Using default viewport: " << viewport_size.width()
-                    << "x" << viewport_size.height();
-      } else {
-        viewport_size.set_width(width);
-        if (lengths.size() >= 2) {
-          int height;
-          if (!base::StringToInt(lengths[1], &height) || height < 1) {
-            DLOG(ERROR) << "Invalid value specified for viewport height: "
-                        << switchValue << ". Using default viewport height: "
-                        << viewport_size.width() << "x"
-                        << viewport_size.height();
-          } else {
-            viewport_size.set_height(height);
-          }
-        } else {
+      int width = -1;
+      if (base::StringToInt(lengths[0], &width) && width >= 1) {
+        int height = -1;
+        if (lengths.size() < 2) {
           // Allow shorthand specification of the viewport by only giving the
           // width. This calculates the height at 4:3 aspect ratio for smaller
           // viewport widths, and 16:9 for viewports 1280 pixels wide or larger.
-          if (viewport_size.width() >= 1280) {
-            viewport_size.set_height(9 * viewport_size.width() / 16);
+          if (width >= 1280) {
+            viewport_size.emplace(width, 9 * width / 16);
           } else {
-            viewport_size.set_height(3 * viewport_size.width() / 4);
+            viewport_size.emplace(width, 3 * width / 4);
           }
+        } else if (base::StringToInt(lengths[1], &height) && height >= 1) {
+          viewport_size.emplace(width, height);
+        } else {
+          DLOG(ERROR) << "Invalid value specified for viewport height: "
+                      << switchValue << ". Using default viewport size.";
         }
+      } else {
+        DLOG(ERROR) << "Invalid value specified for viewport width: "
+                    << switchValue << ". Using default viewport size.";
       }
     }
   }
@@ -558,9 +551,9 @@
 Application::CValStats::CValStats()
     : free_memory("Memory.CPU.Free", 0,
                   "Total free application memory remaining."),
-#if !defined(__LB_SHELL__FOR_RELEASE__)
       used_memory("Memory.CPU.Used", 0,
                   "Total memory allocated via the app's allocators."),
+#if !defined(__LB_SHELL__FOR_RELEASE__)
       exe_memory("Memory.CPU.Exe", 0,
                  "Total memory occupied by the size of the executable."),
 #endif
@@ -634,9 +627,14 @@
   if (!memory_stats_updated) {
     available_memory_ = lb_get_unallocated_memory();
     c_val_stats_.free_memory = static_cast<size_t>(available_memory_);
+    c_val_stats_.used_memory =
+        lb_get_total_system_memory() - lb_get_unallocated_memory();
   }
 #elif defined(OS_STARBOARD)
-// TODO: Need to expose memory tracking through starboard.
+  int64_t used_memory = SbSystemGetUsedCPUMemory();
+  available_memory_ = SbSystemGetTotalCPUMemory() - used_memory;
+  c_val_stats_.free_memory = available_memory_;
+  c_val_stats_.used_memory = used_memory;
 #endif
 
   lifetime_in_ms_ = (base::TimeTicks::Now() - start_time_).InMilliseconds();
diff --git a/src/cobalt/browser/application.h b/src/cobalt/browser/application.h
index 4ed944a..870e87f 100644
--- a/src/cobalt/browser/application.h
+++ b/src/cobalt/browser/application.h
@@ -128,8 +128,8 @@
     CValStats();
 
     base::CVal<size_t, base::CValPublic> free_memory;
-#if !defined(__LB_SHELL__FOR_RELEASE__)
     base::CVal<size_t, base::CValPublic> used_memory;
+#if !defined(__LB_SHELL__FOR_RELEASE__)
     base::CVal<size_t, base::CValPublic> exe_memory;
 #endif
 
diff --git a/src/cobalt/browser/browser_module.cc b/src/cobalt/browser/browser_module.cc
index 668f3c7..9dfbf01 100644
--- a/src/cobalt/browser/browser_module.cc
+++ b/src/cobalt/browser/browser_module.cc
@@ -174,7 +174,7 @@
   debug_console_.reset(new DebugConsole(
       base::Bind(&BrowserModule::OnDebugConsoleRenderTreeProduced,
                  base::Unretained(this)),
-      media_module_.get(), &network_module_, system_window->window_size(),
+      media_module_.get(), &network_module_, system_window->GetWindowSize(),
       renderer_module_.pipeline()->GetResourceProvider(),
       kLayoutMaxRefreshFrequencyInHz,
       base::Bind(&BrowserModule::GetDebugServer, base::Unretained(this))));
@@ -285,6 +285,14 @@
 void BrowserModule::OnRenderTreeProduced(
     const browser::WebModule::LayoutResults& layout_results) {
   TRACE_EVENT0("cobalt::browser", "BrowserModule::OnRenderTreeProduced()");
+  if (MessageLoop::current() != self_message_loop_) {
+    self_message_loop_->PostTask(
+        FROM_HERE,
+        base::Bind(&BrowserModule::OnRenderTreeProduced, weak_this_,
+                   layout_results));
+    return;
+  }
+
   renderer::Submission renderer_submission(layout_results.render_tree,
                                            layout_results.layout_time);
 #if defined(OS_STARBOARD)
@@ -323,6 +331,14 @@
     const browser::WebModule::LayoutResults& layout_results) {
   TRACE_EVENT0("cobalt::browser",
                "BrowserModule::OnDebugConsoleRenderTreeProduced()");
+  if (MessageLoop::current() != self_message_loop_) {
+    self_message_loop_->PostTask(
+        FROM_HERE,
+        base::Bind(&BrowserModule::OnDebugConsoleRenderTreeProduced, weak_this_,
+                   layout_results));
+    return;
+  }
+
   render_tree_combiner_.UpdateDebugConsoleRenderTree(renderer::Submission(
       layout_results.render_tree, layout_results.layout_time));
 }
diff --git a/src/cobalt/browser/debug_console/debug_console.css b/src/cobalt/browser/debug_console/debug_console.css
index 41d695a..afac884 100644
--- a/src/cobalt/browser/debug_console/debug_console.css
+++ b/src/cobalt/browser/debug_console/debug_console.css
@@ -1,3 +1,7 @@
+body {
+  font-size: 1.4815vh;  /* Corresponds to 16px at 1080p. */
+}
+
 #hudFrame {
   position: absolute;
   top: 85%;
@@ -10,16 +14,16 @@
 
 #hud {
   position: absolute;
-  top: 10px;
-  left: 10px;
-  bottom: 10px;
-  right: 10px;
+  top: 0.625em;
+  left: 0.625em;
+  bottom: 0.625em;
+  right: 0.625em;
   background-color: rgba(0, 0, 0, 0.6);
   color: #FFFFFF;
-  border: 1px;
+  border: 0.0625em;
   border-color: #606060;
   border-style: solid;
-  padding: 10px;
+  padding: 0.625em;
 }
 
 #consoleFrame {
@@ -35,37 +39,37 @@
 
 #messageContainerFrame {
   position: absolute;
-  top: 10px;
-  left: 10px;
-  bottom: 40px;
-  right: 10px;
+  top: 0.625em;
+  left: 0.625em;
+  bottom: 2.5em;
+  right: 0.625em;
   background-color: rgba(0, 0, 0, 0.6);
   color: #FFFFFF;
   overflow: hidden;
-  border: 1px;
+  border: 0.0625em;
   border-color: #606060;
   border-style: solid;
-  padding: 10px;
+  padding: 0.625em;
 }
 
 #messageContainer {
   position: absolute;
-  bottom: 10px;
+  bottom: 0.625em;
   font-family: monospace;
 }
 
 #in {
   position: absolute;
-  left: 10px;
+  left: 0.625em;
   bottom: 0;
-  right: 10px;
-  height: 20px;
+  right: 0.625em;
+  height: 1.25em;
   background-color: rgba(0, 0, 0, 0.6);
   color: #FFFFFF;
   white-space: pre;
   font-family: monospace;
-  border: 1px;
+  border: 0.0625em;
   border-color: #606060;
   border-style: solid;
-  padding: 10px;
+  padding: 0.625em;
 }
diff --git a/src/cobalt/browser/switches.cc b/src/cobalt/browser/switches.cc
index d9d0abf..7ebcce6 100644
--- a/src/cobalt/browser/switches.cc
+++ b/src/cobalt/browser/switches.cc
@@ -36,6 +36,9 @@
 // Switches different debug console modes: on | hud | off
 const char kDebugConsoleMode[] = "debug_console";
 
+// Disable webm/vp9.
+const char kDisableWebmVp9[] = "disable_webm_vp9";
+
 // Create WebDriver server.
 const char kEnableWebDriver[] = "enable_webdriver";
 
diff --git a/src/cobalt/browser/switches.h b/src/cobalt/browser/switches.h
index 75dc57d..025841b 100644
--- a/src/cobalt/browser/switches.h
+++ b/src/cobalt/browser/switches.h
@@ -26,6 +26,7 @@
 extern const char kAudioDecoderStub[];
 extern const char kCspMode[];
 extern const char kDebugConsoleMode[];
+extern const char kDisableWebmVp9[];
 extern const char kEnableWebDriver[];
 extern const char kExtraWebFileDir[];
 extern const char kIgnoreCertificateErrors[];
diff --git a/src/cobalt/browser/web_module.cc b/src/cobalt/browser/web_module.cc
index 307b437..073f8b7 100644
--- a/src/cobalt/browser/web_module.cc
+++ b/src/cobalt/browser/web_module.cc
@@ -84,6 +84,10 @@
                          const base::SourceLocation& script_location,
                          base::WaitableEvent* got_result, std::string* result);
 
+  // Clears disables timer related objects
+  // so that the message loop can easily exit
+  void ClearAllIntervalsAndTimeouts();
+
 #if defined(ENABLE_PARTIAL_LAYOUT_CONTROL)
   void OnPartialLayoutConsoleCommandReceived(const std::string& message);
 #endif  // defined(ENABLE_PARTIAL_LAYOUT_CONTROL)
@@ -288,8 +292,9 @@
       data.window_dimensions.width(), data.window_dimensions.height(),
       css_parser_.get(), dom_parser_.get(), fetcher_factory_.get(),
       data.resource_provider, image_cache_.get(), remote_typeface_cache_.get(),
-      local_storage_database_.get(), data.media_module, execution_state_.get(),
-      script_runner_.get(), media_source_registry_.get(),
+      local_storage_database_.get(), data.media_module, data.media_module,
+      execution_state_.get(), script_runner_.get(),
+      media_source_registry_.get(),
       web_module_stat_tracker_->dom_stat_tracker(), data.initial_url,
       data.network_module->GetUserAgent(),
       data.network_module->preferred_language(),
@@ -415,6 +420,12 @@
   got_result->Signal();
 }
 
+void WebModule::Impl::ClearAllIntervalsAndTimeouts() {
+  DCHECK(thread_checker_.CalledOnValidThread());
+  DCHECK(window_);
+  window_->DestroyTimers();
+}
+
 void WebModule::Impl::OnRenderTreeProduced(
     const LayoutResults& layout_results) {
   // Notify the stat tracker that a render tree has been produced. This signals
@@ -608,6 +619,9 @@
                             base::Unretained(&did_register_shutdown_observer)));
   did_register_shutdown_observer.Wait();
 
+  // This will cancel the timers for tasks, which help the thread exit
+  ClearAllIntervalsAndTimeouts();
+
   // Stop the thread. This will cause the destruction observer to be notified.
   thread_.Stop();
 }
@@ -645,6 +659,18 @@
   return result;
 }
 
+void WebModule::ClearAllIntervalsAndTimeouts() {
+  TRACE_EVENT0("cobalt::browser", "WebModule::ClearAllIntervalsAndTimeouts()");
+  DCHECK(message_loop());
+  DCHECK(impl_);
+
+  if (impl_) {
+    message_loop()->PostTask(
+        FROM_HERE, base::Bind(&WebModule::Impl::ClearAllIntervalsAndTimeouts,
+                              base::Unretained(impl_.get())));
+  }
+}
+
 #if defined(ENABLE_PARTIAL_LAYOUT_CONTROL)
 void WebModule::OnPartialLayoutConsoleCommandReceived(
     const std::string& message) {
diff --git a/src/cobalt/browser/web_module.h b/src/cobalt/browser/web_module.h
index 826df99..3aeb2e2 100644
--- a/src/cobalt/browser/web_module.h
+++ b/src/cobalt/browser/web_module.h
@@ -225,6 +225,8 @@
   // perform any other initialization required on the dedicated thread.
   void Initialize(const ConstructionData& data);
 
+  void ClearAllIntervalsAndTimeouts();
+
 #if defined(ENABLE_PARTIAL_LAYOUT_CONTROL)
   void OnPartialLayoutConsoleCommandReceived(const std::string& message);
 #endif  // defined(ENABLE_PARTIAL_LAYOUT_CONTROL)
diff --git a/src/cobalt/build/all.gyp b/src/cobalt/build/all.gyp
index b822bbc..8352629 100644
--- a/src/cobalt/build/all.gyp
+++ b/src/cobalt/build/all.gyp
@@ -87,43 +87,7 @@
           'target_name': 'in_progress_targets',
           'type': 'none',
           'dependencies': [
-            '<(DEPTH)/base/base.gyp:base_unittests',
-            '<(DEPTH)/cobalt/audio/audio.gyp:*',
-            '<(DEPTH)/cobalt/base/base.gyp:*',
-            '<(DEPTH)/cobalt/bindings/testing/testing.gyp:*',
-            '<(DEPTH)/cobalt/browser/browser.gyp:*',
-            '<(DEPTH)/cobalt/browser/cobalt.gyp:*',
-            '<(DEPTH)/cobalt/csp/csp.gyp:*',
-            '<(DEPTH)/cobalt/css_parser/css_parser.gyp:*',
-            '<(DEPTH)/cobalt/cssom/cssom.gyp:*',
-            '<(DEPTH)/cobalt/cssom/cssom_test.gyp:*',
-            '<(DEPTH)/cobalt/debug/debug.gyp:*',
-            '<(DEPTH)/cobalt/dom/dom.gyp:*',
-            '<(DEPTH)/cobalt/dom/dom_test.gyp:*',
-            '<(DEPTH)/cobalt/dom_parser/dom_parser.gyp:*',
-            '<(DEPTH)/cobalt/h5vcc/h5vcc.gyp:*',
-            '<(DEPTH)/cobalt/input/input.gyp:*',
-            '<(DEPTH)/cobalt/layout/layout.gyp:*',
-            '<(DEPTH)/cobalt/layout_tests/layout_tests.gyp:*',
-            '<(DEPTH)/cobalt/loader/image/sandbox/sandbox.gyp:*',
-            '<(DEPTH)/cobalt/loader/loader.gyp:*',
-            '<(DEPTH)/cobalt/math/math.gyp:*',
-            '<(DEPTH)/cobalt/media/sandbox/sandbox.gyp:*',
-            '<(DEPTH)/cobalt/network/network.gyp:*',
-            '<(DEPTH)/cobalt/render_tree/render_tree.gyp:*',
-            '<(DEPTH)/cobalt/renderer/renderer.gyp:*',
-            '<(DEPTH)/cobalt/renderer/sandbox/sandbox.gyp:*',
-            '<(DEPTH)/cobalt/samples/samples.gyp:*',
-            '<(DEPTH)/cobalt/script/script.gyp:*',
-            '<(DEPTH)/cobalt/speech/speech.gyp:*',
-            '<(DEPTH)/cobalt/storage/storage.gyp:*',
-            '<(DEPTH)/cobalt/trace_event/trace_event.gyp:*',
-            '<(DEPTH)/cobalt/web_animations/web_animations.gyp:*',
-            '<(DEPTH)/cobalt/webdriver/webdriver.gyp:*',
-            '<(DEPTH)/cobalt/xhr/xhr.gyp:*',
-            '<(DEPTH)/crypto/crypto.gyp:crypto_unittests',
-            '<(DEPTH)/sql/sql.gyp:sql_unittests',
-            '<(DEPTH)/starboard/nplb/nplb.gyp:nplb',
+            '<(DEPTH)/cobalt/browser/cobalt.gyp:cobalt',
           ],
         },
       ],
diff --git a/src/cobalt/build/build.id b/src/cobalt/build/build.id
index d57c218..2eed42f 100644
--- a/src/cobalt/build/build.id
+++ b/src/cobalt/build/build.id
@@ -1 +1 @@
-10373
\ No newline at end of file
+10571
\ No newline at end of file
diff --git a/src/cobalt/css_parser/background_shorthand_property_parse_structures.h b/src/cobalt/css_parser/background_shorthand_property_parse_structures.h
index 8ab19ba..5c66272 100644
--- a/src/cobalt/css_parser/background_shorthand_property_parse_structures.h
+++ b/src/cobalt/css_parser/background_shorthand_property_parse_structures.h
@@ -27,12 +27,15 @@
 // This helps parsing and verifying syntax of background shorthand property
 // values.
 struct BackgroundShorthandLayer {
+  BackgroundShorthandLayer() : error(false) {}
+
   bool IsBackgroundPropertyOverlapped(
       const BackgroundShorthandLayer& that) const;
   void IntegrateNonOverlapped(const BackgroundShorthandLayer& that);
 
   void ReplaceNullWithInitialValues();
 
+  bool error;
   scoped_refptr<cssom::PropertyValue> background_color;
   scoped_refptr<cssom::PropertyValue> background_image;
   scoped_refptr<cssom::PropertyValue> background_position;
diff --git a/src/cobalt/css_parser/border_shorthand_property_parse_structures.h b/src/cobalt/css_parser/border_shorthand_property_parse_structures.h
index 7a7cb67..c30b75c 100644
--- a/src/cobalt/css_parser/border_shorthand_property_parse_structures.h
+++ b/src/cobalt/css_parser/border_shorthand_property_parse_structures.h
@@ -25,6 +25,9 @@
 
 // This helps parsing and verifying syntax of border shorthand property values.
 struct BorderShorthand {
+  BorderShorthand() : error(false) {}
+
+  bool error;
   scoped_refptr<cssom::PropertyValue> border_color;
   scoped_refptr<cssom::PropertyValue> border_style;
   scoped_refptr<cssom::PropertyValue> border_width;
diff --git a/src/cobalt/css_parser/grammar.y b/src/cobalt/css_parser/grammar.y
index 09e7f2d..34a7143 100644
--- a/src/cobalt/css_parser/grammar.y
+++ b/src/cobalt/css_parser/grammar.y
@@ -955,8 +955,7 @@
     $$ = AddRef(new cssom::MediaFeature($1, $4));
   }
   | kZeroOrOneMediaFeatureTypeToken maybe_whitespace colon zero_or_one {
-    $$ = AddRef(new cssom::MediaFeature($1,
-                                        AddRef(new cssom::NumberValue($4))));
+    $$ = AddRef(new cssom::MediaFeature($1, new cssom::IntegerValue($4)));
   }
   ;
 
@@ -967,8 +966,7 @@
   }
   | kNonNegativeIntegerMediaFeatureTypeToken maybe_whitespace colon
     non_negative_integer {
-    $$ = AddRef(new cssom::MediaFeature($1,
-                                        AddRef(new cssom::NumberValue($4))));
+    $$ = AddRef(new cssom::MediaFeature($1, new cssom::IntegerValue($4)));
   }
   | kRatioMediaFeatureTypeToken maybe_whitespace colon ratio {
     $$ = AddRef(new cssom::MediaFeature($1, MakeScopedRefPtrAndRelease($4)));
@@ -2246,7 +2244,7 @@
 
 positive_length:
   length {
-    scoped_refptr<cssom::LengthValue> length = MakeScopedRefPtrAndRelease($1);
+    scoped_refptr<cssom::LengthValue> length(MakeScopedRefPtrAndRelease($1));
     if (length && length->value() < 0) {
       parser_impl->LogError(@1, "negative values of length are illegal");
       YYERROR;
@@ -2489,25 +2487,28 @@
 
 background_property_element:
     color {
+    scoped_refptr<cssom::PropertyValue> color(MakeScopedRefPtrAndRelease($1));
     if (!$<background_shorthand_layer>0->background_color) {
-      $<background_shorthand_layer>0->background_color =
-          MakeScopedRefPtrAndRelease($1);
+      $<background_shorthand_layer>0->background_color = color;
     } else {
       parser_impl->LogError(
           @1, "background-color value declared twice in background.");
+      $<background_shorthand_layer>0->error = true;
     }
   }
   | background_image_property_list_element {
+    scoped_refptr<cssom::PropertyValue> image(MakeScopedRefPtrAndRelease($1));
     if (!$<background_shorthand_layer>0->background_image) {
       scoped_ptr<cssom::PropertyListValue::Builder>
           background_image_builder(new cssom::PropertyListValue::Builder());
       background_image_builder->reserve(1);
-      background_image_builder->push_back(MakeScopedRefPtrAndRelease($1));
+      background_image_builder->push_back(image);
       $<background_shorthand_layer>0->background_image =
           new cssom::PropertyListValue(background_image_builder.Pass());
     } else {
       parser_impl->LogError(
           @1, "background-image value declared twice in background.");
+      $<background_shorthand_layer>0->error = true;
     }
   }
   ;
@@ -2600,7 +2601,8 @@
       parser_impl->LogError(
           @1, "background-position or background-repeat declared twice in "
               "background.");
-      $$ = NULL;
+      $$ = new BackgroundShorthandLayer();
+      $$->error = true;
     }
   }
   | final_background_layer background_property_element {
@@ -2988,7 +2990,7 @@
   | position_list
     position_list_element {
     scoped_ptr<PositionParseStructure> position_info($1);
-    scoped_refptr<cssom::PropertyValue> element = MakeScopedRefPtrAndRelease($2);
+    scoped_refptr<cssom::PropertyValue> element(MakeScopedRefPtrAndRelease($2));
     if (position_info &&
         !position_info->PushBackElement(element)) {
       parser_impl->LogWarning(@2, "invalid background position value");
@@ -3267,27 +3269,35 @@
 // different values on the four borders.
 border_property_element:
     color {
+    scoped_refptr<cssom::PropertyValue> color(MakeScopedRefPtrAndRelease($1));
     if (!$<border_shorthand>0->border_color) {
-      $<border_shorthand>0->border_color = MakeScopedRefPtrAndRelease($1);
+      $<border_shorthand>0->border_color = color;
     } else {
       parser_impl->LogError(
           @1, "border-color value declared twice in border.");
+      $<border_shorthand>0->error = true;
     }
   }
   | line_style {
+    scoped_refptr<cssom::PropertyValue> line_style =
+        MakeScopedRefPtrAndRelease($1);
     if (!$<border_shorthand>0->border_style) {
-      $<border_shorthand>0->border_style = MakeScopedRefPtrAndRelease($1);
+      $<border_shorthand>0->border_style = line_style;
     } else {
       parser_impl->LogError(
           @1, "border-style value declared twice in border.");
+      $<border_shorthand>0->error = true;
     }
   }
   | positive_length {
+    scoped_refptr<cssom::PropertyValue> positive_length =
+        MakeScopedRefPtrAndRelease($1);
     if (!$<border_shorthand>0->border_width) {
-      $<border_shorthand>0->border_width = MakeScopedRefPtrAndRelease($1);
+      $<border_shorthand>0->border_width = positive_length;
     } else {
       parser_impl->LogError(
           @1, "border-width value declared twice in border.");
+      $<border_shorthand>0->error = true;
     }
   }
   ;
@@ -3335,7 +3345,7 @@
       // Negative values are not allowed for blur radius.
       if (length && length->value() < 0) {
         parser_impl->LogError(@1, "negative values of blur radius are illegal");
-        YYERROR;
+        $<shadow_info>0->error = true;
       }
       $<shadow_info>0->length_vector.push_back(length);
     } else {
@@ -3344,19 +3354,20 @@
     }
   }
   | color {
+    scoped_refptr<cssom::RGBAColorValue> color(MakeScopedRefPtrAndRelease($1));
     if (!$<shadow_info>0->color) {
-      $<shadow_info>0->color = MakeScopedRefPtrAndRelease($1);
+      $<shadow_info>0->color = color;
     } else {
-      parser_impl->LogError(
-          @1, "color value declared twice in box shadow.");
+      parser_impl->LogError(@1, "color value declared twice in box shadow.");
+      $<shadow_info>0->error = true;
     }
   }
   | kInsetToken maybe_whitespace {
     if (!$<shadow_info>0->has_inset) {
       $<shadow_info>0->has_inset = true;
     } else {
-      parser_impl->LogError(
-          @1, "inset value declared twice in box shadow.");
+      parser_impl->LogError(@1, "inset value declared twice in box shadow.");
+      $<shadow_info>0->error = true;
     }
   }
   ;
@@ -3386,14 +3397,14 @@
 
 comma_separated_box_shadow_list:
     validated_box_shadow_list {
-    $$ = new cssom::PropertyListValue::Builder();
     if ($1) {
+      $$ = new cssom::PropertyListValue::Builder();
       $$->push_back(MakeScopedRefPtrAndRelease($1));
     }
   }
   | comma_separated_box_shadow_list comma validated_box_shadow_list {
     $$ = $1;
-    if ($3) {
+    if ($$ && $3) {
       $$->push_back(MakeScopedRefPtrAndRelease($3));
     }
   }
@@ -3404,8 +3415,10 @@
 //   https://www.w3.org/TR/css3-background/#box-shadow
 box_shadow_property_value:
     comma_separated_box_shadow_list {
-    scoped_ptr<cssom::PropertyListValue::Builder> property_value($1);
-    $$ = AddRef(new cssom::PropertyListValue(property_value.Pass()));
+    if ($1) {
+      scoped_ptr<cssom::PropertyListValue::Builder> property_value($1);
+      $$ = AddRef(new cssom::PropertyListValue(property_value.Pass()));
+    }
   }
   | kNoneToken maybe_whitespace {
     $$ = AddRef(cssom::KeywordValue::GetNone().get());
@@ -3892,7 +3905,7 @@
 margin_property_value:
     // If there is only one component value, it applies to all sides.
     margin_width {
-    scoped_refptr<cssom::PropertyValue> width = MakeScopedRefPtrAndRelease($1);
+    scoped_refptr<cssom::PropertyValue> width(MakeScopedRefPtrAndRelease($1));
     $$ = MarginOrPaddingShorthand::TryCreate(
         width, width, width, width).release();
   }
@@ -4155,7 +4168,7 @@
       // Negative values are not allowed for blur radius.
       if (length && length->value() < 0) {
         parser_impl->LogError(@1, "negative values of blur radius are illegal");
-        YYERROR;
+        $<shadow_info>0->error = true;
       }
       $<shadow_info>0->length_vector.push_back(length);
     } else {
@@ -4164,11 +4177,13 @@
     }
   }
   | color {
+    scoped_refptr<cssom::RGBAColorValue> color(MakeScopedRefPtrAndRelease($1));
     if (!$<shadow_info>0->color) {
-      $<shadow_info>0->color = MakeScopedRefPtrAndRelease($1);
+      $<shadow_info>0->color = color;
     } else {
       parser_impl->LogError(
-          @1, "color value declared twice in box shadow.");
+          @1, "color value declared twice in text shadow.");
+      $<shadow_info>0->error = true;
     }
   }
   ;
@@ -4198,14 +4213,14 @@
 
 comma_separated_text_shadow_list:
     validated_text_shadow_list {
-    $$ = new cssom::PropertyListValue::Builder();
     if ($1) {
+      $$ = new cssom::PropertyListValue::Builder();
       $$->push_back(MakeScopedRefPtrAndRelease($1));
     }
   }
   | comma_separated_text_shadow_list comma validated_text_shadow_list {
     $$ = $1;
-    if ($3) {
+    if ($$ && $3) {
       $$->push_back(MakeScopedRefPtrAndRelease($3));
     }
   }
@@ -4216,8 +4231,10 @@
 //   https://www.w3.org/TR/css-text-decor-3/#text-shadow-property
 text_shadow_property_value:
     comma_separated_text_shadow_list {
-    scoped_ptr<cssom::PropertyListValue::Builder> property_value($1);
-    $$ = AddRef(new cssom::PropertyListValue(property_value.Pass()));
+    if ($1) {
+      scoped_ptr<cssom::PropertyListValue::Builder> property_value($1);
+      $$ = AddRef(new cssom::PropertyListValue(property_value.Pass()));
+    }
   }
   | kNoneToken maybe_whitespace {
     $$ = AddRef(cssom::KeywordValue::GetNone().get());
@@ -5072,19 +5089,26 @@
 
     scoped_ptr<TransitionShorthand> transition(new TransitionShorthand());
 
-    if (property_list_builder.size() == 1 &&
-        property_list_builder[0] == cssom::kNoneProperty) {
+    if (property_list_builder.empty() ||
+        (property_list_builder.size() == 1 &&
+         property_list_builder[0] == cssom::kNoneProperty)) {
       transition->property_list = cssom::KeywordValue::GetNone();
     } else {
       transition->property_list = new cssom::PropertyKeyListValue(
           transition_builder->property_list_builder.Pass());
     }
-    transition->duration_list = new cssom::TimeListValue(
-        transition_builder->duration_list_builder.Pass());
-    transition->timing_function_list = new cssom::TimingFunctionListValue(
-        transition_builder->timing_function_list_builder.Pass());
-    transition->delay_list = new cssom::TimeListValue(
-        transition_builder->delay_list_builder.Pass());
+    if (!transition_builder->duration_list_builder->empty()) {
+      transition->duration_list = new cssom::TimeListValue(
+          transition_builder->duration_list_builder.Pass());
+    }
+    if (!transition_builder->timing_function_list_builder->empty()) {
+      transition->timing_function_list = new cssom::TimingFunctionListValue(
+          transition_builder->timing_function_list_builder.Pass());
+    }
+    if (!transition_builder->delay_list_builder->empty()) {
+      transition->delay_list = new cssom::TimeListValue(
+          transition_builder->delay_list_builder.Pass());
+    }
 
     $$ = transition.release();
   }
@@ -5306,7 +5330,7 @@
   | kBackgroundToken maybe_whitespace colon background_property_value
       maybe_important {
     scoped_ptr<BackgroundShorthandLayer> background($4);
-    if (background) {
+    if (background && !background->error) {
       background->ReplaceNullWithInitialValues();
       scoped_ptr<PropertyDeclaration> property_declaration(
           new PropertyDeclaration($5));
@@ -5372,74 +5396,82 @@
       maybe_important {
     scoped_ptr<BorderShorthand> border($4);
     DCHECK(border);
+    if (!border->error) {
+      scoped_ptr<PropertyDeclaration> property_declaration(
+          new PropertyDeclaration($5));
 
-    scoped_ptr<PropertyDeclaration> property_declaration(
-        new PropertyDeclaration($5));
+      // Unpack border color.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftColorProperty, border->border_color));
 
-    // Unpack border color.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftColorProperty, border->border_color));
+      // Unpack border style.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftStyleProperty, border->border_style));
 
-    // Unpack border style.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftStyleProperty, border->border_style));
+      // Unpack border width.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopWidthProperty, border->border_width));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightWidthProperty, border->border_width));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomWidthProperty, border->border_width));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftWidthProperty, border->border_width));
 
-    // Unpack border width.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopWidthProperty, border->border_width));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightWidthProperty, border->border_width));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomWidthProperty, border->border_width));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftWidthProperty, border->border_width));
-
-    $$ = property_declaration.release();
+      $$ = property_declaration.release();
+    } else {
+      parser_impl->LogWarning(@1, "invalid border");
+      $$ = NULL;
+    }
   }
   | kBorderBottomToken maybe_whitespace colon border_property_value
       maybe_important {
     scoped_ptr<BorderShorthand> border($4);
     DCHECK(border);
+    if (!border->error) {
+      scoped_ptr<PropertyDeclaration> property_declaration(
+          new PropertyDeclaration($5));
 
-    scoped_ptr<PropertyDeclaration> property_declaration(
-        new PropertyDeclaration($5));
+      // Unpack border bottom.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderBottomWidthProperty, border->border_width));
 
-    // Unpack border bottom.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderBottomWidthProperty, border->border_width));
-
-    $$ = property_declaration.release();
+      $$ = property_declaration.release();
+    } else {
+      parser_impl->LogWarning(@1, "invalid border-bottom");
+      $$ = NULL;
+    }
   }
   | kBorderBottomColorToken maybe_whitespace colon color_property_value
       maybe_important {
@@ -5498,22 +5530,26 @@
       maybe_important {
     scoped_ptr<BorderShorthand> border($4);
     DCHECK(border);
+    if (!border->error) {
+      scoped_ptr<PropertyDeclaration> property_declaration(
+          new PropertyDeclaration($5));
 
-    scoped_ptr<PropertyDeclaration> property_declaration(
-        new PropertyDeclaration($5));
+      // Unpack border left.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderLeftWidthProperty, border->border_width));
 
-    // Unpack border left.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderLeftWidthProperty, border->border_width));
-
-    $$ = property_declaration.release();
+      $$ = property_declaration.release();
+    } else {
+      parser_impl->LogWarning(@1, "invalid border-left");
+      $$ = NULL;
+    }
   }
   | kBorderLeftColorToken maybe_whitespace colon color_property_value
       maybe_important {
@@ -5543,22 +5579,26 @@
       maybe_important {
     scoped_ptr<BorderShorthand> border($4);
     DCHECK(border);
+    if (!border->error) {
+      scoped_ptr<PropertyDeclaration> property_declaration(
+          new PropertyDeclaration($5));
 
-    scoped_ptr<PropertyDeclaration> property_declaration(
-        new PropertyDeclaration($5));
+      // Unpack border right.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderRightWidthProperty, border->border_width));
 
-    // Unpack border right.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderRightWidthProperty, border->border_width));
-
-    $$ = property_declaration.release();
+      $$ = property_declaration.release();
+    } else {
+      parser_impl->LogWarning(@1, "invalid border-right");
+      $$ = NULL;
+    }
   }
   | kBorderRightColorToken maybe_whitespace colon color_property_value
       maybe_important {
@@ -5617,22 +5657,26 @@
       maybe_important {
     scoped_ptr<BorderShorthand> border($4);
     DCHECK(border);
+    if (!border->error) {
+      scoped_ptr<PropertyDeclaration> property_declaration(
+          new PropertyDeclaration($5));
 
-    scoped_ptr<PropertyDeclaration> property_declaration(
-        new PropertyDeclaration($5));
+      // Unpack border top.
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopColorProperty, border->border_color));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopStyleProperty, border->border_style));
+      property_declaration->property_values.push_back(
+          PropertyDeclaration::PropertyKeyValuePair(
+              cssom::kBorderTopWidthProperty, border->border_width));
 
-    // Unpack border top.
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopColorProperty, border->border_color));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopStyleProperty, border->border_style));
-    property_declaration->property_values.push_back(
-        PropertyDeclaration::PropertyKeyValuePair(
-            cssom::kBorderTopWidthProperty, border->border_width));
-
-    $$ = property_declaration.release();
+      $$ = property_declaration.release();
+    } else {
+      parser_impl->LogWarning(@1, "invalid border-right");
+      $$ = NULL;
+    }
   }
   | kBorderTopColorToken maybe_whitespace colon color_property_value
       maybe_important {
@@ -6307,7 +6351,7 @@
   }
   // Parses the rule.
   | kRuleEntryPointToken maybe_whitespace rule {
-    scoped_refptr<cssom::CSSRule> rule = MakeScopedRefPtrAndRelease($3);
+    scoped_refptr<cssom::CSSRule> rule(MakeScopedRefPtrAndRelease($3));
     parser_impl->set_rule(rule);
   }
   // Parses the contents of a HTMLElement.style attribute.
diff --git a/src/cobalt/css_parser/parser_test.cc b/src/cobalt/css_parser/parser_test.cc
index 77b4874..0aaf421 100644
--- a/src/cobalt/css_parser/parser_test.cc
+++ b/src/cobalt/css_parser/parser_test.cc
@@ -1352,6 +1352,53 @@
   EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundSizeProperty));
 }
 
+TEST_F(ParserTest, InvalidBackgroundWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:38: error: background-color value "
+                      "declared twice in background."));
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "background: 0 0 rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundImageProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundPositionProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundRepeatProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundSizeProperty));
+}
+
+TEST_F(ParserTest, InvalidBackgroundWithTwoImages) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:26: error: background-image value "
+                      "declared twice in background."));
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList("background: url(foo.png) url(bar.png)",
+                                        source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundImageProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundPositionProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundRepeatProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundSizeProperty));
+}
+
+TEST_F(ParserTest, InvalidBackgroundWithTwoPositionsAndTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:11: error: background-position or "
+                      "background-repeat declared twice in background."));
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "background: 0 0 rgba(255,255,255,.1) 100% rgba(255,255,255,.1) 100%",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundImageProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundPositionProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundRepeatProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBackgroundSizeProperty));
+}
+
 TEST_F(ParserTest, LinearGradientWithOneColorStopIsError) {
   EXPECT_CALL(
       parser_observer_,
@@ -2957,6 +3004,159 @@
       parser_.ParseStyleDeclarationList("border: foo, bar;", source_location_);
 }
 
+TEST_F(ParserTest, InvalidBorderWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:30: error: border-color value "
+                      "declared twice in border."));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:1: warning: invalid border"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "border: rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomColorProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomStyleProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderBottomWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:37: error: border-color value "
+                      "declared twice in border."));
+  EXPECT_CALL(
+      parser_observer_,
+      OnWarning("[object ParserTest]:1:1: warning: invalid border-bottom"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "border-bottom: rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderLeftWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:35: error: border-color value "
+                      "declared twice in border."));
+  EXPECT_CALL(
+      parser_observer_,
+      OnWarning("[object ParserTest]:1:1: warning: invalid border-left"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "border-left: rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderRightWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:36: error: border-color value "
+                      "declared twice in border."));
+  EXPECT_CALL(
+      parser_observer_,
+      OnWarning("[object ParserTest]:1:1: warning: invalid border-right"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "border-right: rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderTopWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:34: error: border-color value "
+                      "declared twice in border."));
+  EXPECT_CALL(
+      parser_observer_,
+      OnWarning("[object ParserTest]:1:1: warning: invalid border-right"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "border-top: rgba(255,255,255,.1) rgba(255,255,255,.1)",
+          source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderWithTwoStyles) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:15: error: border-style value "
+                      "declared twice in border."));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:1: warning: invalid border"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList("border: solid hidden",
+                                        source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomColorProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomStyleProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomWidthProperty));
+}
+
+TEST_F(ParserTest, InvalidBorderWithTwoWidths) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:7: error: border-width value "
+                      "declared twice in border."));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:1: warning: invalid border"));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList("border: 10px 20px", source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopColorProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomColorProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopStyleProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomStyleProperty));
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderLeftWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderRightWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderTopWidthProperty));
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBorderBottomWidthProperty));
+}
+
 TEST_F(ParserTest, ParsesBorderColorWidth) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList("border: gray 20px;", source_location_);
@@ -3610,7 +3810,37 @@
             style->GetPropertyValue(cssom::kBoxShadowProperty));
 }
 
-TEST_F(ParserTest, ParsesBoxShadowWith2Lengths) {
+TEST_F(ParserTest, InvalidBoxShadowWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:18: error: color value declared "
+                      "twice in box shadow."));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:11: warning: invalid box shadow "
+                        "property."));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "box-shadow: gray green .2em 20px .3em;", source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBoxShadowProperty));
+}
+
+TEST_F(ParserTest, InvalidBoxShadowWithNegativeBlurRadius) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:23: error: negative values of "
+                      "blur radius are illegal"));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:11: warning: invalid box shadow "
+                        "property."));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList("box-shadow: .2em 20px -10px;",
+                                        source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kBoxShadowProperty));
+}
+
+TEST_F(ParserTest, ParsesBoxShadowWithTwoLengths) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList("box-shadow: .2em 20px;",
                                         source_location_);
@@ -3638,7 +3868,7 @@
   EXPECT_FALSE(box_shadow->has_inset());
 }
 
-TEST_F(ParserTest, ParsesBoxShadowWith3LengthsAndColor) {
+TEST_F(ParserTest, ParsesBoxShadowWithThreeLengthsAndColor) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList("box-shadow: gray .2em 20px .3em;",
                                         source_location_);
@@ -3670,7 +3900,7 @@
   EXPECT_FALSE(box_shadow->has_inset());
 }
 
-TEST_F(ParserTest, ParsesBoxShadowWith4LengthsInsetAndColor) {
+TEST_F(ParserTest, ParsesBoxShadowWithFourLengthsInsetAndColor) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList(
           "box-shadow: .2em 20px .3em 0 "
@@ -5689,7 +5919,37 @@
             style->GetPropertyValue(cssom::kTextShadowProperty));
 }
 
-TEST_F(ParserTest, ParsesTextShadowWith2Lengths) {
+TEST_F(ParserTest, InvalidTextShadowWithTwoColors) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:19: error: color value declared "
+                      "twice in text shadow."));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:12: warning: invalid text "
+                        "shadow property."));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList(
+          "text-shadow: gray green .2em 20px .3em;", source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kTextShadowProperty));
+}
+
+TEST_F(ParserTest, InvalidTextShadowWithNegativeBlurRadius) {
+  EXPECT_CALL(parser_observer_,
+              OnError("[object ParserTest]:1:24: error: negative values of "
+                      "blur radius are illegal"));
+  EXPECT_CALL(parser_observer_,
+              OnWarning("[object ParserTest]:1:12: warning: invalid text "
+                        "shadow property."));
+
+  scoped_refptr<cssom::CSSDeclaredStyleData> style =
+      parser_.ParseStyleDeclarationList("text-shadow: .2em 20px -10px;",
+                                        source_location_);
+
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kTextShadowProperty));
+}
+
+TEST_F(ParserTest, ParsesTextShadowWithTwoLengths) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList("text-shadow: 0.04em 1px;",
                                         source_location_);
@@ -5717,7 +5977,7 @@
   EXPECT_FALSE(text_shadow->has_inset());
 }
 
-TEST_F(ParserTest, ParsesTextShadowWith3LengthsAndColor) {
+TEST_F(ParserTest, ParsesTextShadowWithThreeLengthsAndColor) {
   scoped_refptr<cssom::CSSDeclaredStyleData> style =
       parser_.ParseStyleDeclarationList("text-shadow: 0.04em 1px .2em #123;",
                                         source_location_);
@@ -7370,34 +7630,19 @@
       parser_.ParseStyleDeclarationList(
           "transition: 1s voodoo-magic; display: inline;", source_location_);
 
-  // Test transition-property was set properly.
-  scoped_refptr<cssom::PropertyKeyListValue> property_name_list =
-      dynamic_cast<cssom::PropertyKeyListValue*>(
-          style->GetPropertyValue(cssom::kTransitionPropertyProperty).get());
-  ASSERT_TRUE(property_name_list.get());
-  ASSERT_EQ(0, property_name_list->value().size());
+  // Test transition-property was not set.
+  EXPECT_EQ(cssom::KeywordValue::GetNone(),
+            style->GetPropertyValue(cssom::kTransitionPropertyProperty));
 
-  // Test transition-duration was set properly.
-  scoped_refptr<cssom::TimeListValue> duration_list =
-      dynamic_cast<cssom::TimeListValue*>(
-          style->GetPropertyValue(cssom::kTransitionDurationProperty).get());
-  ASSERT_TRUE(duration_list.get());
-  ASSERT_EQ(0, duration_list->value().size());
+  // Test transition-duration was not set.
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kTransitionDurationProperty));
 
-  // Test transition-timing-function was set properly.
-  scoped_refptr<cssom::TimingFunctionListValue> timing_function_list =
-      dynamic_cast<cssom::TimingFunctionListValue*>(
-          style->GetPropertyValue(cssom::kTransitionTimingFunctionProperty)
-              .get());
-  ASSERT_TRUE(timing_function_list.get());
-  ASSERT_EQ(0, timing_function_list->value().size());
+  // Test transition-timing-function was not set.
+  EXPECT_FALSE(
+      style->GetPropertyValue(cssom::kTransitionTimingFunctionProperty));
 
-  // Test transition-delay was set properly.
-  scoped_refptr<cssom::TimeListValue> delay_list =
-      dynamic_cast<cssom::TimeListValue*>(
-          style->GetPropertyValue(cssom::kTransitionDelayProperty).get());
-  ASSERT_TRUE(delay_list.get());
-  ASSERT_EQ(0, delay_list->value().size());
+  // Test transition-delay was not set.
+  EXPECT_FALSE(style->GetPropertyValue(cssom::kTransitionDelayProperty));
 
   // Test that despite the error, display inline was still set correctly.
   EXPECT_EQ(cssom::KeywordValue::GetInline(),
@@ -7414,34 +7659,20 @@
       parser_.ParseStyleDeclarationList("transition: 1s voodoo-magic 2s;",
                                         source_location_);
 
-  // Test transition-property was set properly.
-  scoped_refptr<cssom::PropertyKeyListValue> property_name_list =
-      dynamic_cast<cssom::PropertyKeyListValue*>(
-          style->GetPropertyValue(cssom::kTransitionPropertyProperty).get());
-  ASSERT_TRUE(property_name_list.get());
-  ASSERT_EQ(0, property_name_list->value().size());
+  // Test transition-property was not set.
+  EXPECT_EQ(cssom::KeywordValue::GetNone(),
+            style->GetPropertyValue(cssom::kTransitionPropertyProperty).get());
 
-  // Test transition-duration was set properly.
-  scoped_refptr<cssom::TimeListValue> duration_list =
-      dynamic_cast<cssom::TimeListValue*>(
-          style->GetPropertyValue(cssom::kTransitionDurationProperty).get());
-  ASSERT_TRUE(duration_list.get());
-  ASSERT_EQ(0, duration_list->value().size());
+  // Test transition-duration was not set.
+  EXPECT_FALSE(
+      style->GetPropertyValue(cssom::kTransitionDurationProperty).get());
 
-  // Test transition-timing-function was set properly.
-  scoped_refptr<cssom::TimingFunctionListValue> timing_function_list =
-      dynamic_cast<cssom::TimingFunctionListValue*>(
-          style->GetPropertyValue(cssom::kTransitionTimingFunctionProperty)
-              .get());
-  ASSERT_TRUE(timing_function_list.get());
-  ASSERT_EQ(0, timing_function_list->value().size());
+  // Test transition-timing-function was not set.
+  EXPECT_FALSE(
+      style->GetPropertyValue(cssom::kTransitionTimingFunctionProperty).get());
 
-  // Test transition-delay was set properly.
-  scoped_refptr<cssom::TimeListValue> delay_list =
-      dynamic_cast<cssom::TimeListValue*>(
-          style->GetPropertyValue(cssom::kTransitionDelayProperty).get());
-  ASSERT_TRUE(delay_list.get());
-  ASSERT_EQ(0, delay_list->value().size());
+  // Test transition-delay was not set.
+  ASSERT_FALSE(style->GetPropertyValue(cssom::kTransitionDelayProperty).get());
 }
 
 TEST_F(ParserTest,
@@ -8005,5 +8236,31 @@
   ASSERT_EQ(media_list->media_text(), ", ");
 }
 
+TEST_F(ParserTest, ParsesValidMediaQueryWithIntegers) {
+  scoped_refptr<cssom::MediaQuery> media_query =
+      parser_.ParseMediaQuery(
+                 "(color: 8) and (grid:0) and (color) and (scan: progressive)",
+                 source_location_)
+          .get();
+  ASSERT_TRUE(media_query.get());
+
+  // TODO: Update when media query serialization is implemented.
+  ASSERT_EQ(media_query->media_query(), "");
+  math::Size size;
+  EXPECT_TRUE(media_query->EvaluateConditionValue(size));
+}
+
+TEST_F(ParserTest, ParsesValidMediaListWithIntegers) {
+  scoped_refptr<cssom::MediaList> media_list =
+      parser_.ParseMediaList("(color: 0), (grid:0)", source_location_).get();
+  ASSERT_TRUE(media_list.get());
+  EXPECT_EQ(media_list->length(), 2);
+
+  // TODO: Update when media query serialization is implemented.
+  ASSERT_EQ(media_list->media_text(), ", ");
+  math::Size size;
+  EXPECT_TRUE(media_list->EvaluateConditionValue(size));
+}
+
 }  // namespace css_parser
 }  // namespace cobalt
diff --git a/src/cobalt/css_parser/scanner.cc b/src/cobalt/css_parser/scanner.cc
index 7d594d9..fadfebb 100644
--- a/src/cobalt/css_parser/scanner.cc
+++ b/src/cobalt/css_parser/scanner.cc
@@ -418,6 +418,10 @@
     // Return all prepended tokens before actual input.
     if (!prepended_tokens_.empty()) {
       Token prepended_token = prepended_tokens_.front();
+      if ((prepended_token == kMediaListEntryPointToken) ||
+          (prepended_token == kMediaQueryEntryPointToken)) {
+        parsing_mode_ = kMediaQueryMode;
+      }
       prepended_tokens_.pop_front();
       return prepended_token;
     }
diff --git a/src/cobalt/css_parser/shadow_property_parse_structures.cc b/src/cobalt/css_parser/shadow_property_parse_structures.cc
index a690d6d..e0baf60 100644
--- a/src/cobalt/css_parser/shadow_property_parse_structures.cc
+++ b/src/cobalt/css_parser/shadow_property_parse_structures.cc
@@ -20,6 +20,7 @@
 namespace css_parser {
 
 bool ShadowPropertyInfo::IsShadowPropertyValid(ShadowType type) {
+  if (error) return false;
   switch (type) {
     case kBoxShadow:
       //  https://www.w3.org/TR/css3-background/#box-shadow
diff --git a/src/cobalt/css_parser/shadow_property_parse_structures.h b/src/cobalt/css_parser/shadow_property_parse_structures.h
index 3075bda..4347ef6 100644
--- a/src/cobalt/css_parser/shadow_property_parse_structures.h
+++ b/src/cobalt/css_parser/shadow_property_parse_structures.h
@@ -35,10 +35,11 @@
 };
 
 struct ShadowPropertyInfo {
-  ShadowPropertyInfo() : has_inset(false) {}
+  ShadowPropertyInfo() : error(false), has_inset(false) {}
 
   bool IsShadowPropertyValid(ShadowType type);
 
+  bool error;
   std::vector<scoped_refptr<cssom::LengthValue> > length_vector;
   scoped_refptr<cssom::RGBAColorValue> color;
   bool has_inset;
diff --git a/src/cobalt/cssom/computed_style.cc b/src/cobalt/cssom/computed_style.cc
index ea15228..9d5d0c9 100644
--- a/src/cobalt/cssom/computed_style.cc
+++ b/src/cobalt/cssom/computed_style.cc
@@ -2701,7 +2701,9 @@
     return true;
   } else if (*value == KeywordValue::GetInitial()) {
     *value = GetPropertyInitialValue(key);
-    return true;
+    // If the initial value is current color, it still requires to do further
+    // processing.
+    return *value == KeywordValue::GetCurrentColor() ? false : true;
   } else {
     return false;
   }
diff --git a/src/cobalt/cssom/computed_style_test.cc b/src/cobalt/cssom/computed_style_test.cc
index 2637dfa..f9745eb 100644
--- a/src/cobalt/cssom/computed_style_test.cc
+++ b/src/cobalt/cssom/computed_style_test.cc
@@ -792,6 +792,27 @@
   EXPECT_EQ(kPixelsUnit, border_radius->unit());
 }
 
+TEST(PromoteToComputedStyle, BorderColorWithInitialValue) {
+  scoped_refptr<CSSComputedStyleData> computed_style(
+      new CSSComputedStyleData());
+  computed_style->set_border_bottom_color(KeywordValue::GetInitial());
+  computed_style->set_color(RGBAColorValue::GetAqua());
+
+  scoped_refptr<CSSComputedStyleData> parent_computed_style(
+      new CSSComputedStyleData());
+  scoped_refptr<CSSComputedStyleDeclaration> parent_computed_style_declaration(
+      CreateComputedStyleDeclaration(parent_computed_style));
+
+  PromoteToComputedStyle(computed_style, parent_computed_style_declaration,
+                         parent_computed_style, math::Size(), NULL);
+
+  scoped_refptr<RGBAColorValue> border_bottom_color =
+      dynamic_cast<RGBAColorValue*>(
+          computed_style->border_bottom_color().get());
+  ASSERT_TRUE(border_bottom_color);
+  EXPECT_EQ(0x00FFFFFF, border_bottom_color->value());
+}
+
 TEST(PromoteToComputedStyle, BorderColorWithCurrentColorValue) {
   scoped_refptr<CSSComputedStyleData> computed_style(
       new CSSComputedStyleData());
diff --git a/src/cobalt/cssom/list_value.h b/src/cobalt/cssom/list_value.h
index aeea7f3..df0a5a0 100644
--- a/src/cobalt/cssom/list_value.h
+++ b/src/cobalt/cssom/list_value.h
@@ -40,6 +40,7 @@
 
   explicit ListValue(scoped_ptr<Builder> value) : value_(value.Pass()) {
     DCHECK(value_.get());
+    DCHECK(!value_->empty());
   }
 
   const T& get_item_modulo_size(int index) const {
diff --git a/src/cobalt/cssom/media_feature.cc b/src/cobalt/cssom/media_feature.cc
index c54da9c..88db75c 100644
--- a/src/cobalt/cssom/media_feature.cc
+++ b/src/cobalt/cssom/media_feature.cc
@@ -123,7 +123,11 @@
         base::polymorphic_downcast<LengthValue*>(value_.get());
     // TODO: Support 'em' units for media features.
     // https://www.w3.org/TR/css3-mediaqueries/#units
-    DCHECK_EQ(kPixelsUnit, specified_value->unit());
+    if (kPixelsUnit != specified_value->unit()) {
+      DLOG(WARNING)
+          << "Media feature length value only supported in pixel units.";
+      return false;
+    }
 
     switch (operator_) {
       case kEquals:
diff --git a/src/cobalt/cssom/property_value_visitor_test.cc b/src/cobalt/cssom/property_value_visitor_test.cc
index 2884f13..953dd12 100644
--- a/src/cobalt/cssom/property_value_visitor_test.cc
+++ b/src/cobalt/cssom/property_value_visitor_test.cc
@@ -36,6 +36,7 @@
 #include "cobalt/cssom/ratio_value.h"
 #include "cobalt/cssom/resolution_value.h"
 #include "cobalt/cssom/rgba_color_value.h"
+#include "cobalt/cssom/rotate_function.h"
 #include "cobalt/cssom/shadow_value.h"
 #include "cobalt/cssom/string_value.h"
 #include "cobalt/cssom/time_list_value.h"
@@ -185,9 +186,11 @@
 }
 
 TEST(PropertyValueVisitorTest, VisitsPropertyKeyListValue) {
+  scoped_ptr<ListValue<PropertyKey>::Builder> builder(
+      new PropertyKeyListValue::Builder());
+  builder->push_back(kWidthProperty);
   scoped_refptr<PropertyKeyListValue> property_key_list_value =
-      new PropertyKeyListValue(
-          make_scoped_ptr(new PropertyKeyListValue::Builder()));
+      new PropertyKeyListValue(builder.Pass());
   MockPropertyValueVisitor mock_visitor;
   EXPECT_CALL(mock_visitor,
               VisitPropertyKeyList(property_key_list_value.get()));
@@ -195,8 +198,11 @@
 }
 
 TEST(PropertyValueVisitorTest, VisitsPropertyListValue) {
-  scoped_refptr<PropertyListValue> property_list_value = new PropertyListValue(
-      make_scoped_ptr(new ScopedRefListValue<PropertyValue>::Builder()));
+  scoped_ptr<ScopedRefListValue<PropertyValue>::Builder> builder(
+      new ScopedRefListValue<PropertyValue>::Builder());
+  builder->push_back(cssom::KeywordValue::GetNone());
+  scoped_refptr<PropertyListValue> property_list_value =
+      new PropertyListValue(builder.Pass());
   MockPropertyValueVisitor mock_visitor;
   EXPECT_CALL(mock_visitor, VisitPropertyList(property_list_value.get()));
   property_list_value->Accept(&mock_visitor);
@@ -252,17 +258,21 @@
 }
 
 TEST(PropertyValueVisitorTest, VisitsTimeListValue) {
+  scoped_ptr<TimeListValue::Builder> builder(new TimeListValue::Builder());
+  builder->push_back(base::TimeDelta());
   scoped_refptr<TimeListValue> time_list_value =
-      new TimeListValue(make_scoped_ptr(new TimeListValue::Builder()));
+      new TimeListValue(builder.Pass());
   MockPropertyValueVisitor mock_visitor;
   EXPECT_CALL(mock_visitor, VisitTimeList(time_list_value.get()));
   time_list_value->Accept(&mock_visitor);
 }
 
 TEST(PropertyValueVisitorTest, VisitsTimingFunctionListValue) {
+  scoped_ptr<TimingFunctionListValue::Builder> builder(
+      new TimingFunctionListValue::Builder());
+  builder->push_back(TimingFunction::GetLinear());
   scoped_refptr<TimingFunctionListValue> timing_function_list_value =
-      new TimingFunctionListValue(
-          make_scoped_ptr(new TimingFunctionListValue::Builder()));
+      new TimingFunctionListValue(builder.Pass());
   MockPropertyValueVisitor mock_visitor;
   EXPECT_CALL(mock_visitor,
               VisitTimingFunctionList(timing_function_list_value.get()));
@@ -270,8 +280,10 @@
 }
 
 TEST(PropertyValueVisitorTest, VisitsTransformListValue) {
+  TransformFunctionListValue::Builder builder;
+  builder.push_back(new RotateFunction(0.0f));
   scoped_refptr<TransformFunctionListValue> transform_list_value =
-      new TransformFunctionListValue(TransformFunctionListValue::Builder());
+      new TransformFunctionListValue(builder.Pass());
   MockPropertyValueVisitor mock_visitor;
   EXPECT_CALL(mock_visitor,
               VisitTransformFunctionList(transform_list_value.get()));
diff --git a/src/cobalt/cssom/scoped_list_value.h b/src/cobalt/cssom/scoped_list_value.h
index 044740e..48d004c 100644
--- a/src/cobalt/cssom/scoped_list_value.h
+++ b/src/cobalt/cssom/scoped_list_value.h
@@ -35,7 +35,9 @@
  public:
   typedef ScopedVector<T> Builder;
 
-  explicit ScopedListValue(Builder value) : value_(value.Pass()) {}
+  explicit ScopedListValue(Builder value) : value_(value.Pass()) {
+    DCHECK(!value_.empty());
+  }
 
   const T& get_item_modulo_size(int index) const {
     return *value_[index % value_.size()];
diff --git a/src/cobalt/cssom/scoped_ref_list_value.h b/src/cobalt/cssom/scoped_ref_list_value.h
index 9a06c8f..eb03137 100644
--- a/src/cobalt/cssom/scoped_ref_list_value.h
+++ b/src/cobalt/cssom/scoped_ref_list_value.h
@@ -40,6 +40,7 @@
   explicit ScopedRefListValue(scoped_ptr<Builder> value)
       : value_(value.Pass()) {
     DCHECK(value_.get());
+    DCHECK(!value_->empty());
   }
 
   const scoped_refptr<T>& get_item_modulo_size(int index) const {
diff --git a/src/cobalt/dom/comment_test.cc b/src/cobalt/dom/comment_test.cc
index e05b477..2b8773d 100644
--- a/src/cobalt/dom/comment_test.cc
+++ b/src/cobalt/dom/comment_test.cc
@@ -42,7 +42,7 @@
 
 CommentTest::CommentTest()
     : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, NULL, "") {
+                            NULL, NULL, NULL, "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
   document_ = new Document(&html_element_context_);
 }
diff --git a/src/cobalt/dom/document_test.cc b/src/cobalt/dom/document_test.cc
index c56714f..39e118d 100644
--- a/src/cobalt/dom/document_test.cc
+++ b/src/cobalt/dom/document_test.cc
@@ -66,7 +66,8 @@
     : css_parser_(css_parser::Parser::Create()),
       dom_stat_tracker_(new DomStatTracker("DocumentTest")),
       html_element_context_(NULL, css_parser_.get(), NULL, NULL, NULL, NULL,
-                            NULL, NULL, NULL, dom_stat_tracker_.get(), "") {
+                            NULL, NULL, NULL, NULL, dom_stat_tracker_.get(),
+                            "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
 }
 
diff --git a/src/cobalt/dom/document_type_test.cc b/src/cobalt/dom/document_type_test.cc
index f19fa27..1fc4b6a 100644
--- a/src/cobalt/dom/document_type_test.cc
+++ b/src/cobalt/dom/document_type_test.cc
@@ -27,7 +27,7 @@
  protected:
   DocumentTypeTest()
       : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                              NULL, NULL, ""),
+                              NULL, NULL, NULL, ""),
         document_(new Document(&html_element_context_)) {}
   ~DocumentTypeTest() OVERRIDE {}
 
diff --git a/src/cobalt/dom/dom_parser_test.cc b/src/cobalt/dom/dom_parser_test.cc
index 5d392e1..d3dd079 100644
--- a/src/cobalt/dom/dom_parser_test.cc
+++ b/src/cobalt/dom/dom_parser_test.cc
@@ -46,10 +46,11 @@
       dom_parser_parser_(new dom_parser::Parser()),
       html_element_context_(
           &fetcher_factory_, &stub_css_parser_, dom_parser_parser_.get(),
-          NULL /* web_media_player_factory */, &stub_script_runner_,
-          NULL /* media_source_registry */, NULL /* resource_provider */,
-          NULL /* image_cache */, NULL /* remote_typeface_cache */,
-          NULL /* dom_stat_tracker */, "" /* language */),
+          NULL /* can_play_type_handler */, NULL /* web_media_player_factory */,
+          &stub_script_runner_, NULL /* media_source_registry */,
+          NULL /* resource_provider */, NULL /* image_cache */,
+          NULL /* remote_typeface_cache */, NULL /* dom_stat_tracker */,
+          "" /* language */),
       dom_parser_(new DOMParser(&html_element_context_)) {}
 
 TEST_F(DOMParserTest, ParsesXML) {
diff --git a/src/cobalt/dom/dom_string_map_test.cc b/src/cobalt/dom/dom_string_map_test.cc
index 0851497..5faca86 100644
--- a/src/cobalt/dom/dom_string_map_test.cc
+++ b/src/cobalt/dom/dom_string_map_test.cc
@@ -45,7 +45,7 @@
 
 DOMStringMapTest::DOMStringMapTest()
     : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, NULL, ""),
+                            NULL, NULL, NULL, ""),
       document_(new Document(&html_element_context_)),
       element_(new Element(document_, base::Token("element"))),
       dom_string_map_(new DOMStringMap(element_)) {}
diff --git a/src/cobalt/dom/dom_token_list_test.cc b/src/cobalt/dom/dom_token_list_test.cc
index c763eb1..49c58dd 100644
--- a/src/cobalt/dom/dom_token_list_test.cc
+++ b/src/cobalt/dom/dom_token_list_test.cc
@@ -40,7 +40,7 @@
 
 DOMTokenListTest::DOMTokenListTest()
     : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, NULL, "") {
+                            NULL, NULL, NULL, "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
   document_ = new Document(&html_element_context_);
 }
diff --git a/src/cobalt/dom/element_test.cc b/src/cobalt/dom/element_test.cc
index affdd02..f2ea69d 100644
--- a/src/cobalt/dom/element_test.cc
+++ b/src/cobalt/dom/element_test.cc
@@ -61,7 +61,7 @@
       dom_parser_(new dom_parser::Parser()),
       dom_stat_tracker_(new DomStatTracker("ElementTest")),
       html_element_context_(NULL, css_parser_.get(), dom_parser_.get(), NULL,
-                            NULL, NULL, NULL, NULL, NULL,
+                            NULL, NULL, NULL, NULL, NULL, NULL,
                             dom_stat_tracker_.get(), "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
   document_ = new Document(&html_element_context_);
diff --git a/src/cobalt/dom/event_target.cc b/src/cobalt/dom/event_target.cc
index f8af5a2..87553ff 100644
--- a/src/cobalt/dom/event_target.cc
+++ b/src/cobalt/dom/event_target.cc
@@ -193,10 +193,10 @@
        iter != event_listener_infos_.end(); ++iter) {
     if ((*iter)->type == type &&
         (*iter)->listener.referenced_object().EqualTo(listener) &&
-        (*iter)->use_capture == use_capture) {
+        (*iter)->use_capture == use_capture &&
+        (*iter)->listener_type == listener_type) {
       // Attribute listeners should have already been removed.
       DCHECK_EQ(listener_type, EventListener::kNotAttribute);
-      DCHECK_EQ(listener_type, (*iter)->listener_type);
       return;
     }
   }
diff --git a/src/cobalt/dom/event_target_test.cc b/src/cobalt/dom/event_target_test.cc
index 57a092a..1a1ffe5 100644
--- a/src/cobalt/dom/event_target_test.cc
+++ b/src/cobalt/dom/event_target_test.cc
@@ -308,6 +308,58 @@
   EXPECT_TRUE(event_target->DispatchEvent(event, &exception_state));
 }
 
+TEST(EventTargetTest, AddSameListenerMultipleTimes) {
+  StrictMock<MockExceptionState> exception_state;
+  scoped_refptr<EventTarget> event_target = new EventTarget;
+  scoped_refptr<Event> event = new Event(base::Token("fired"));
+  scoped_ptr<MockEventListener> event_listener = MockEventListener::Create();
+  FakeScriptObject script_object(event_listener.get());
+
+  InSequence in_sequence;
+  event_listener->ExpectHandleEventCall(event, event_target);
+
+  // The same listener should only get added once.
+  event_target->AddEventListener("fired", script_object, false);
+  event_target->AddEventListener("fired", script_object, false);
+  event_target->AddEventListener("fired", script_object, false);
+  EXPECT_TRUE(event_target->DispatchEvent(event, &exception_state));
+}
+
+TEST(EventTargetTest, AddSameAttributeListenerMultipleTimes) {
+  StrictMock<MockExceptionState> exception_state;
+  scoped_refptr<EventTarget> event_target = new EventTarget;
+  scoped_refptr<Event> event = new Event(base::Token("fired"));
+  scoped_ptr<MockEventListener> event_listener = MockEventListener::Create();
+  FakeScriptObject script_object(event_listener.get());
+
+  InSequence in_sequence;
+  event_listener->ExpectHandleEventCall(event, event_target);
+
+  // The same listener should only get added once.
+  event_target->SetAttributeEventListener(base::Token("fired"), script_object);
+  event_target->SetAttributeEventListener(base::Token("fired"), script_object);
+  event_target->SetAttributeEventListener(base::Token("fired"), script_object);
+  EXPECT_TRUE(event_target->DispatchEvent(event, &exception_state));
+}
+
+TEST(EventTargetTest, SameEventListenerAsAttribute) {
+  StrictMock<MockExceptionState> exception_state;
+  scoped_refptr<EventTarget> event_target = new EventTarget;
+  scoped_refptr<Event> event = new Event(base::Token("fired"));
+  scoped_ptr<MockEventListener> event_listener = MockEventListener::Create();
+  FakeScriptObject script_object(event_listener.get());
+
+  InSequence in_sequence;
+  event_listener->ExpectHandleEventCall(event, event_target);
+  event_listener->ExpectHandleEventCall(event, event_target);
+
+  // The same script object can be registered as both an attribute and
+  // non-attribute listener. Both should be fired.
+  event_target->AddEventListener("fired", script_object, false);
+  event_target->SetAttributeEventListener(base::Token("fired"), script_object);
+  EXPECT_TRUE(event_target->DispatchEvent(event, &exception_state));
+}
+
 }  // namespace
 }  // namespace dom
 }  // namespace cobalt
diff --git a/src/cobalt/dom/html_element_context.cc b/src/cobalt/dom/html_element_context.cc
index f9363e0..25d74f7 100644
--- a/src/cobalt/dom/html_element_context.cc
+++ b/src/cobalt/dom/html_element_context.cc
@@ -23,7 +23,8 @@
 
 HTMLElementContext::HTMLElementContext(
     loader::FetcherFactory* fetcher_factory, cssom::CSSParser* css_parser,
-    Parser* dom_parser, media::WebMediaPlayerFactory* web_media_player_factory,
+    Parser* dom_parser, media::CanPlayTypeHandler* can_play_type_handler,
+    media::WebMediaPlayerFactory* web_media_player_factory,
     script::ScriptRunner* script_runner,
     MediaSource::Registry* media_source_registry,
     render_tree::ResourceProvider* resource_provider,
@@ -33,6 +34,7 @@
     : fetcher_factory_(fetcher_factory),
       css_parser_(css_parser),
       dom_parser_(dom_parser),
+      can_play_type_handler_(can_play_type_handler),
       web_media_player_factory_(web_media_player_factory),
       script_runner_(script_runner),
       media_source_registry_(media_source_registry),
diff --git a/src/cobalt/dom/html_element_context.h b/src/cobalt/dom/html_element_context.h
index b1c9847..642a4a0 100644
--- a/src/cobalt/dom/html_element_context.h
+++ b/src/cobalt/dom/html_element_context.h
@@ -28,6 +28,7 @@
 #include "cobalt/loader/fetcher_factory.h"
 #include "cobalt/loader/font/remote_typeface_cache.h"
 #include "cobalt/loader/image/image_cache.h"
+#include "cobalt/media/can_play_type_handler.h"
 #include "cobalt/media/web_media_player_factory.h"
 #include "cobalt/script/script_runner.h"
 
@@ -43,6 +44,7 @@
  public:
   HTMLElementContext(loader::FetcherFactory* fetcher_factory,
                      cssom::CSSParser* css_parser, Parser* dom_parser,
+                     media::CanPlayTypeHandler* can_play_type_handler,
                      media::WebMediaPlayerFactory* web_media_player_factory,
                      script::ScriptRunner* script_runner,
                      MediaSource::Registry* media_source_registry,
@@ -59,6 +61,9 @@
 
   Parser* dom_parser() { return dom_parser_; }
 
+  media::CanPlayTypeHandler* can_play_type_handler() {
+    return can_play_type_handler_;
+  }
   media::WebMediaPlayerFactory* web_media_player_factory() {
     return web_media_player_factory_;
   }
@@ -92,6 +97,7 @@
   loader::FetcherFactory* const fetcher_factory_;
   cssom::CSSParser* const css_parser_;
   Parser* const dom_parser_;
+  media::CanPlayTypeHandler* can_play_type_handler_;
   media::WebMediaPlayerFactory* const web_media_player_factory_;
   script::ScriptRunner* const script_runner_;
   MediaSource::Registry* const media_source_registry_;
diff --git a/src/cobalt/dom/html_element_factory_test.cc b/src/cobalt/dom/html_element_factory_test.cc
index 8008245..94b421f 100644
--- a/src/cobalt/dom/html_element_factory_test.cc
+++ b/src/cobalt/dom/html_element_factory_test.cc
@@ -55,6 +55,7 @@
         dom_stat_tracker_(new DomStatTracker("HTMLElementFactoryTest")),
         html_element_context_(
             &fetcher_factory_, &stub_css_parser_, dom_parser_.get(),
+            NULL /* can_play_type_handler */,
             NULL /* web_media_player_factory */, &stub_script_runner_,
             NULL /* media_source_registry */, NULL /* resource_provider */,
             NULL /* image_cache */, NULL /* remote_typeface_cache */,
diff --git a/src/cobalt/dom/html_element_test.cc b/src/cobalt/dom/html_element_test.cc
index 1e8bceb..4561437 100644
--- a/src/cobalt/dom/html_element_test.cc
+++ b/src/cobalt/dom/html_element_test.cc
@@ -110,7 +110,7 @@
   HTMLElementTest()
       : dom_stat_tracker_(new DomStatTracker("HTMLElementTest")),
         html_element_context_(NULL, &css_parser_, NULL, NULL, NULL, NULL, NULL,
-                              NULL, NULL, dom_stat_tracker_.get(), ""),
+                              NULL, NULL, NULL, dom_stat_tracker_.get(), ""),
         document_(new Document(&html_element_context_)) {}
   ~HTMLElementTest() OVERRIDE {}
 
diff --git a/src/cobalt/dom/html_media_element.cc b/src/cobalt/dom/html_media_element.cc
index 12a4e8e..4f1bb38 100644
--- a/src/cobalt/dom/html_media_element.cc
+++ b/src/cobalt/dom/html_media_element.cc
@@ -168,13 +168,15 @@
   LoadInternal();
 }
 
-std::string HTMLMediaElement::CanPlayType(const std::string& mime_type) const {
+std::string HTMLMediaElement::CanPlayType(const std::string& mime_type) {
   return CanPlayType(mime_type, "");
 }
 
 std::string HTMLMediaElement::CanPlayType(const std::string& mime_type,
-                                          const std::string& key_system) const {
-  std::string result = ::media::CanPlayType(mime_type, key_system);
+                                          const std::string& key_system) {
+  std::string result =
+      html_element_context()->can_play_type_handler()->CanPlayType(mime_type,
+                                                                   key_system);
   DLOG(INFO) << "HTMLMediaElement::canPlayType(" << mime_type << ", "
              << key_system << ") -> " << result;
   return result;
diff --git a/src/cobalt/dom/html_media_element.h b/src/cobalt/dom/html_media_element.h
index 823e006..300874f 100644
--- a/src/cobalt/dom/html_media_element.h
+++ b/src/cobalt/dom/html_media_element.h
@@ -69,9 +69,9 @@
 
   scoped_refptr<TimeRanges> buffered() const;
   void Load();
-  std::string CanPlayType(const std::string& mimeType) const;
+  std::string CanPlayType(const std::string& mimeType);
   std::string CanPlayType(const std::string& mimeType,
-                          const std::string& key_system) const;
+                          const std::string& key_system);
   void GenerateKeyRequest(
       const std::string& key_system,
       const base::optional<scoped_refptr<Uint8Array> >& init_data,
diff --git a/src/cobalt/dom/node_dispatch_event_test.cc b/src/cobalt/dom/node_dispatch_event_test.cc
index 5db9eaa..d3368ef 100644
--- a/src/cobalt/dom/node_dispatch_event_test.cc
+++ b/src/cobalt/dom/node_dispatch_event_test.cc
@@ -59,7 +59,7 @@
 
 NodeDispatchEventTest::NodeDispatchEventTest()
     : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, NULL, "") {
+                            NULL, NULL, NULL, "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
 
   document_ = new Document(&html_element_context_);
diff --git a/src/cobalt/dom/node_list_live_test.cc b/src/cobalt/dom/node_list_live_test.cc
index bf041b3..b8e6702 100644
--- a/src/cobalt/dom/node_list_live_test.cc
+++ b/src/cobalt/dom/node_list_live_test.cc
@@ -30,7 +30,7 @@
   NodeListLiveTest()
       : dom_stat_tracker_("NodeListLiveTest"),
         html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                              NULL, &dom_stat_tracker_, ""),
+                              NULL, NULL, &dom_stat_tracker_, ""),
         document_(new Document(&html_element_context_)) {}
 
   ~NodeListLiveTest() OVERRIDE {}
diff --git a/src/cobalt/dom/node_list_test.cc b/src/cobalt/dom/node_list_test.cc
index 999d442..a93339a 100644
--- a/src/cobalt/dom/node_list_test.cc
+++ b/src/cobalt/dom/node_list_test.cc
@@ -30,7 +30,7 @@
   NodeListTest()
       : dom_stat_tracker_(new DomStatTracker("NodeListTest")),
         html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                              NULL, dom_stat_tracker_.get(), ""),
+                              NULL, NULL, dom_stat_tracker_.get(), ""),
         document_(new Document(&html_element_context_)) {}
 
   ~NodeListTest() OVERRIDE {}
diff --git a/src/cobalt/dom/rule_matching_test.cc b/src/cobalt/dom/rule_matching_test.cc
index 3be7b17..2d1b118 100644
--- a/src/cobalt/dom/rule_matching_test.cc
+++ b/src/cobalt/dom/rule_matching_test.cc
@@ -45,7 +45,7 @@
         dom_parser_(new dom_parser::Parser()),
         dom_stat_tracker_(new DomStatTracker("RuleMatchingTest")),
         html_element_context_(NULL, css_parser_.get(), dom_parser_.get(), NULL,
-                              NULL, NULL, NULL, NULL, NULL,
+                              NULL, NULL, NULL, NULL, NULL, NULL,
                               dom_stat_tracker_.get(), ""),
         document_(new Document(&html_element_context_)),
         root_(document_->CreateElement("html")->AsHTMLElement()) {
diff --git a/src/cobalt/dom/serializer_test.cc b/src/cobalt/dom/serializer_test.cc
index 678cd45..ec16354 100644
--- a/src/cobalt/dom/serializer_test.cc
+++ b/src/cobalt/dom/serializer_test.cc
@@ -47,7 +47,7 @@
     : dom_parser_(new dom_parser::Parser()),
       dom_stat_tracker_(new DomStatTracker("SerializerTest")),
       html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, dom_stat_tracker_.get(), ""),
+                            NULL, NULL, dom_stat_tracker_.get(), ""),
       document_(new Document(&html_element_context_)),
       root_(new Element(document_, base::Token("root"))),
       source_location_(base::SourceLocation("[object SerializerTest]", 1, 1)) {}
diff --git a/src/cobalt/dom/text_test.cc b/src/cobalt/dom/text_test.cc
index 799c3dd..536b42f 100644
--- a/src/cobalt/dom/text_test.cc
+++ b/src/cobalt/dom/text_test.cc
@@ -41,7 +41,7 @@
 
 TextTest::TextTest()
     : html_element_context_(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                            NULL, NULL, "") {
+                            NULL, NULL, NULL, "") {
   EXPECT_TRUE(GlobalStats::GetInstance()->CheckNoLeaks());
   document_ = new Document(&html_element_context_);
 }
diff --git a/src/cobalt/dom/window.cc b/src/cobalt/dom/window.cc
index cdab450..e901752 100644
--- a/src/cobalt/dom/window.cc
+++ b/src/cobalt/dom/window.cc
@@ -66,6 +66,7 @@
                loader::image::ImageCache* image_cache,
                loader::font::RemoteTypefaceCache* remote_typeface_cache,
                LocalStorageDatabase* local_storage_database,
+               media::CanPlayTypeHandler* can_play_type_handler,
                media::WebMediaPlayerFactory* web_media_player_factory,
                script::ExecutionState* execution_state,
                script::ScriptRunner* script_runner,
@@ -83,9 +84,10 @@
     : width_(width),
       height_(height),
       html_element_context_(new HTMLElementContext(
-          fetcher_factory, css_parser, dom_parser, web_media_player_factory,
-          script_runner, media_source_registry, resource_provider, image_cache,
-          remote_typeface_cache, dom_stat_tracker, language)),
+          fetcher_factory, css_parser, dom_parser, can_play_type_handler,
+          web_media_player_factory, script_runner, media_source_registry,
+          resource_provider, image_cache, remote_typeface_cache,
+          dom_stat_tracker, language)),
       performance_(new Performance(new base::SystemMonotonicClock())),
       ALLOW_THIS_IN_INITIALIZER_LIST(document_(new Document(
           html_element_context_.get(),
@@ -214,23 +216,51 @@
   DLOG_IF(WARNING, timeout < 0)
       << "Window::SetTimeout received negative timeout: " << timeout;
   timeout = std::max(timeout, 0);
-  return window_timers_->SetTimeout(handler, timeout);
+
+  int return_value = 0;
+  if (window_timers_) {
+    return_value = window_timers_->SetTimeout(handler, timeout);
+  } else {
+    DLOG(WARNING) << "window_timers_ does not exist.  Already destroyed?";
+  }
+
+  return return_value;
 }
 
-void Window::ClearTimeout(int handle) { window_timers_->ClearTimeout(handle); }
+void Window::ClearTimeout(int handle) {
+  if (window_timers_) {
+    window_timers_->ClearTimeout(handle);
+  } else {
+    DLOG(WARNING) << "window_timers_ does not exist.  Already destroyed?";
+  }
+}
 
 int Window::SetInterval(const WindowTimers::TimerCallbackArg& handler,
                         int timeout) {
   DLOG_IF(WARNING, timeout < 0)
       << "Window::SetInterval received negative timeout: " << timeout;
   timeout = std::max(timeout, 0);
-  return window_timers_->SetInterval(handler, timeout);
+
+  int return_value = 0;
+  if (window_timers_) {
+    return_value = window_timers_->SetInterval(handler, timeout);
+  } else {
+    DLOG(WARNING) << "window_timers_ does not exist.  Already destroyed?";
+  }
+
+  return return_value;
 }
 
 void Window::ClearInterval(int handle) {
-  window_timers_->ClearInterval(handle);
+  if (window_timers_) {
+    window_timers_->ClearInterval(handle);
+  } else {
+    DLOG(WARNING) << "window_timers_ does not exist.  Already destroyed?";
+  }
 }
 
+void Window::DestroyTimers() { window_timers_.reset(); }
+
 scoped_refptr<Storage> Window::local_storage() const { return local_storage_; }
 
 scoped_refptr<Storage> Window::session_storage() const {
diff --git a/src/cobalt/dom/window.h b/src/cobalt/dom/window.h
index 196c987..2bb6c07 100644
--- a/src/cobalt/dom/window.h
+++ b/src/cobalt/dom/window.h
@@ -46,6 +46,7 @@
 #include "cobalt/loader/font/remote_typeface_cache.h"
 #include "cobalt/loader/image/image_cache.h"
 #include "cobalt/loader/loader.h"
+#include "cobalt/media/can_play_type_handler.h"
 #include "cobalt/media/web_media_player_factory.h"
 #include "cobalt/script/callback_function.h"
 #include "cobalt/script/environment_settings.h"
@@ -90,6 +91,7 @@
          loader::image::ImageCache* image_cache,
          loader::font::RemoteTypefaceCache* remote_typeface_cache,
          LocalStorageDatabase* local_storage_database,
+         media::CanPlayTypeHandler* can_play_type_handler,
          media::WebMediaPlayerFactory* web_media_player_factory,
          script::ExecutionState* execution_state,
          script::ScriptRunner* script_runner,
@@ -202,6 +204,8 @@
 
   void ClearInterval(int handle);
 
+  void DestroyTimers();
+
   // Web API: Storage (implements)
   scoped_refptr<Storage> local_storage() const;
   scoped_refptr<Storage> session_storage() const;
diff --git a/src/cobalt/dom/window_test.cc b/src/cobalt/dom/window_test.cc
index 926a308..2a5db90 100644
--- a/src/cobalt/dom/window_test.cc
+++ b/src/cobalt/dom/window_test.cc
@@ -54,8 +54,8 @@
         window_(new Window(
             1920, 1080, css_parser_.get(), dom_parser_.get(),
             fetcher_factory_.get(), NULL, NULL, NULL, &local_storage_database_,
-            stub_media_module_.get(), NULL, NULL, NULL, NULL, url_, "", "en-US",
-            base::Callback<void(const GURL &)>(),
+            stub_media_module_.get(), stub_media_module_.get(), NULL, NULL,
+            NULL, NULL, url_, "", "en-US", base::Callback<void(const GURL &)>(),
             base::Bind(&MockErrorCallback::Run,
                        base::Unretained(&mock_error_callback_)),
             NULL, network_bridge::PostSender(),
diff --git a/src/cobalt/dom/window_timers.cc b/src/cobalt/dom/window_timers.cc
index df784cd..54f19ff 100644
--- a/src/cobalt/dom/window_timers.cc
+++ b/src/cobalt/dom/window_timers.cc
@@ -27,6 +27,12 @@
 int WindowTimers::SetTimeout(const TimerCallbackArg& handler, int timeout) {
   int handle = GetFreeTimerHandle();
   DCHECK(handle);
+
+  if (handle == 0) {  // unable to get a free timer handle
+    // avoid accidentally overwriting existing timers
+    return 0;
+  }
+
   scoped_ptr<base::Timer> timer(new base::OneShotTimer<TimerInfo>());
   timer->Start(FROM_HERE, base::TimeDelta::FromMilliseconds(timeout),
                base::Bind(&WindowTimers::RunTimerCallback,
@@ -40,6 +46,12 @@
 int WindowTimers::SetInterval(const TimerCallbackArg& handler, int timeout) {
   int handle = GetFreeTimerHandle();
   DCHECK(handle);
+
+  if (handle == 0) {  // unable to get a free timer handle
+    // avoid accidentally overwriting existing timers
+    return 0;
+  }
+
   scoped_ptr<base::Timer> timer(new base::RepeatingTimer<TimerInfo>());
   timer->Start(FROM_HERE, base::TimeDelta::FromMilliseconds(timeout),
                base::Bind(&WindowTimers::RunTimerCallback,
@@ -50,6 +62,8 @@
 
 void WindowTimers::ClearInterval(int handle) { timers_.erase(handle); }
 
+void WindowTimers::ClearAllIntervalsAndTimeouts() { timers_.clear(); }
+
 int WindowTimers::GetFreeTimerHandle() {
   int next_timer_index = current_timer_index_;
   while (true) {
diff --git a/src/cobalt/dom/window_timers.h b/src/cobalt/dom/window_timers.h
index 412f613..aa63575 100644
--- a/src/cobalt/dom/window_timers.h
+++ b/src/cobalt/dom/window_timers.h
@@ -44,6 +44,8 @@
 
   void ClearInterval(int handle);
 
+  void ClearAllIntervalsAndTimeouts();
+
  private:
   class TimerInfo : public base::RefCounted<TimerInfo> {
    public:
diff --git a/src/cobalt/dom_parser/html_decoder_test.cc b/src/cobalt/dom_parser/html_decoder_test.cc
index a3c5a22..d9ca19a 100644
--- a/src/cobalt/dom_parser/html_decoder_test.cc
+++ b/src/cobalt/dom_parser/html_decoder_test.cc
@@ -64,10 +64,11 @@
     : fetcher_factory_(NULL /* network_module */),
       dom_parser_(new Parser()),
       dom_stat_tracker_(new dom::DomStatTracker("HTMLDecoderTest")),
-      html_element_context_(
-          &fetcher_factory_, &stub_css_parser_, dom_parser_.get(),
-          NULL /* web_media_player_factory */, &stub_script_runner_, NULL, NULL,
-          NULL, NULL, dom_stat_tracker_.get(), ""),
+      html_element_context_(&fetcher_factory_, &stub_css_parser_,
+                            dom_parser_.get(), NULL /* can_play_type_handler */,
+                            NULL /* web_media_player_factory */,
+                            &stub_script_runner_, NULL, NULL, NULL, NULL,
+                            dom_stat_tracker_.get(), ""),
       document_(
           new dom::Document(&html_element_context_, dom::Document::Options())),
       root_(new dom::Element(document_, base::Token("element"))),
diff --git a/src/cobalt/dom_parser/libxml_parser_wrapper.cc b/src/cobalt/dom_parser/libxml_parser_wrapper.cc
index b6e09a7..993e453 100644
--- a/src/cobalt/dom_parser/libxml_parser_wrapper.cc
+++ b/src/cobalt/dom_parser/libxml_parser_wrapper.cc
@@ -159,8 +159,17 @@
     element->SetAttribute(attributes[i].name.as_string(),
                           attributes[i].value.as_string());
   }
-  element->OnParserStartTag(GetSourceLocation());
-  node_stack_.top()->InsertBefore(element, reference_node_);
+
+  if (node_stack_.size() < kMaxStackDepth) {
+    element->OnParserStartTag(GetSourceLocation());
+    node_stack_.top()->InsertBefore(element, reference_node_);
+  } else {
+    if (!depth_limit_exceeded_) {
+      depth_limit_exceeded_ = true;
+      LOG(WARNING) << "Parser discarded deeply nested elements.";
+    }
+  }
+
   node_stack_.push(element);
 }
 
@@ -168,7 +177,11 @@
   while (!node_stack_.empty()) {
     scoped_refptr<dom::Element> element = node_stack_.top()->AsElement();
     node_stack_.pop();
-    element->OnParserEndTag();
+
+    if (node_stack_.size() < kMaxStackDepth) {
+      element->OnParserEndTag();
+    }
+
     if (element->node_name() == name) {
       return;
     }
diff --git a/src/cobalt/dom_parser/libxml_parser_wrapper.h b/src/cobalt/dom_parser/libxml_parser_wrapper.h
index 8114403..4f39651 100644
--- a/src/cobalt/dom_parser/libxml_parser_wrapper.h
+++ b/src/cobalt/dom_parser/libxml_parser_wrapper.h
@@ -78,6 +78,10 @@
   };
   typedef std::vector<ParserAttribute> ParserAttributeVector;
 
+  // This restricts the depth of the nodes in the DOM tree. All elements at a
+  // depth deeper than this will be discarded.
+  static const size_t kMaxStackDepth = 32;
+
   LibxmlParserWrapper(
       const scoped_refptr<dom::Document>& document,
       const scoped_refptr<dom::Node>& parent_node,
@@ -89,6 +93,7 @@
         reference_node_(reference_node),
         first_chunk_location_(first_chunk_location),
         error_callback_(error_callback),
+        depth_limit_exceeded_(false),
         issue_level_(kNoIssue) {}
   virtual ~LibxmlParserWrapper() {}
 
@@ -137,6 +142,7 @@
   const scoped_refptr<dom::Node> reference_node_;
   const base::SourceLocation first_chunk_location_;
   const base::Callback<void(const std::string&)> error_callback_;
+  bool depth_limit_exceeded_;
   IssueSeverity issue_level_;
 
   std::stack<scoped_refptr<dom::Node> > node_stack_;
diff --git a/src/cobalt/h5vcc/h5vcc_account_manager.cc b/src/cobalt/h5vcc/h5vcc_account_manager.cc
index 69dd9db..0d239fa 100644
--- a/src/cobalt/h5vcc/h5vcc_account_manager.cc
+++ b/src/cobalt/h5vcc/h5vcc_account_manager.cc
@@ -17,6 +17,7 @@
 #include "cobalt/h5vcc/h5vcc_account_manager.h"
 
 #include "base/memory/scoped_ptr.h"
+#include "starboard/ps4/application_linking.h"
 #include "starboard/user.h"
 
 namespace cobalt {
diff --git a/src/cobalt/layout/anonymous_block_box.cc b/src/cobalt/layout/anonymous_block_box.cc
index 281cc70..4be8d5f 100644
--- a/src/cobalt/layout/anonymous_block_box.cc
+++ b/src/cobalt/layout/anonymous_block_box.cc
@@ -150,46 +150,42 @@
   while (child_box_iterator != child_boxes().end()) {
     Box* child_box = *child_box_iterator;
 
-    if (child_box->IsAbsolutelyPositioned()) {
-      inline_formatting_context->BeginEstimateStaticPosition(child_box);
-    } else {
-      // Attempt to add the child box to the inline formatting context.
-      Box* child_box_before_wrap =
-          inline_formatting_context->TryAddChildAndMaybeWrap(child_box);
-      // If |child_box_before_wrap| is non-NULL, then trying to add the child
-      // box caused a line wrap to occur, and |child_box_before_wrap| is set to
-      // the last box that was successfully placed on the line. This can
-      // potentially be any of the child boxes previously added. Any boxes
-      // following the returned box, including ones that were previously
-      // added, still need to be added to the inline formatting context.
-      if (child_box_before_wrap) {
-        // Iterate backwards until the last box added to the line is found, and
-        // then increment the iterator, so that it is pointing at the location
-        // of the first box to add the next time through the loop.
-        while (*child_box_iterator != child_box_before_wrap) {
-          --child_box_iterator;
-        }
+    // Attempt to add the child box to the inline formatting context.
+    Box* child_box_before_wrap =
+        inline_formatting_context->TryAddChildAndMaybeWrap(child_box);
+    // If |child_box_before_wrap| is non-NULL, then trying to add the child
+    // box caused a line wrap to occur, and |child_box_before_wrap| is set to
+    // the last box that was successfully placed on the line. This can
+    // potentially be any of the child boxes previously added. Any boxes
+    // following the returned box, including ones that were previously
+    // added, still need to be added to the inline formatting context.
+    if (child_box_before_wrap) {
+      // Iterate backwards until the last box added to the line is found, and
+      // then increment the iterator, so that it is pointing at the location
+      // of the first box to add the next time through the loop.
+      while (*child_box_iterator != child_box_before_wrap) {
+        --child_box_iterator;
+      }
 
-        // If |child_box_before_wrap| has a split sibling, then this potentially
-        // means that a split occurred during the wrap, and a new box needs to
-        // be added to the container (this will also need to be the first box
-        // added to the inline formatting context).
-        //
-        // If the split sibling is from a previous split, then it would have
-        // already been added to the line and |child_box_iterator| should
-        // be currently pointing at it. If this is not the case, then we know
-        // that this is a new box produced during the wrap, and it must be
-        // added to the container. This will be the first box added during
-        // the next iteration of the loop.
-        Box* split_child_after_wrap = child_box_before_wrap->GetSplitSibling();
-        Boxes::const_iterator next_child_box_iterator = child_box_iterator + 1;
-        if (split_child_after_wrap &&
-            (next_child_box_iterator == child_boxes().end() ||
-             *next_child_box_iterator != split_child_after_wrap)) {
-          child_box_iterator =
-              InsertSplitSiblingOfDirectChild(child_box_iterator);
-          continue;
-        }
+      // If |child_box_before_wrap| has a split sibling, then this potentially
+      // means that a split occurred during the wrap, and a new box needs to
+      // be added to the container (this will also need to be the first box
+      // added to the inline formatting context).
+      //
+      // If the split sibling is from a previous split, then it would have
+      // already been added to the line and |child_box_iterator| should
+      // be currently pointing at it. If this is not the case, then we know
+      // that this is a new box produced during the wrap, and it must be
+      // added to the container. This will be the first box added during
+      // the next iteration of the loop.
+      Box* split_child_after_wrap = child_box_before_wrap->GetSplitSibling();
+      Boxes::const_iterator next_child_box_iterator = child_box_iterator + 1;
+      if (split_child_after_wrap &&
+          (next_child_box_iterator == child_boxes().end() ||
+           *next_child_box_iterator != split_child_after_wrap)) {
+        child_box_iterator =
+            InsertSplitSiblingOfDirectChild(child_box_iterator);
+        continue;
       }
     }
 
diff --git a/src/cobalt/layout/box.cc b/src/cobalt/layout/box.cc
index c8739ee..4a57476 100644
--- a/src/cobalt/layout/box.cc
+++ b/src/cobalt/layout/box.cc
@@ -989,6 +989,13 @@
   }
 }
 
+namespace {
+bool AllBorderSidesShareSameProperties(const Border& border) {
+  return border.left == border.top && border.left == border.right &&
+         border.left == border.bottom;
+}
+}  // namespace
+
 void Box::RenderAndAnimateBorder(
     const base::optional<RoundedCorners>& rounded_corners,
     CompositionNode::Builder* border_node_builder,
@@ -1004,6 +1011,14 @@
   SetupBorderNodeFromStyle(rounded_corners, computed_style(),
                            &rect_node_builder);
 
+  if (rounded_corners &&
+      !AllBorderSidesShareSameProperties(*rect_node_builder.border)) {
+    LOG(WARNING)
+        << "Cobalt does not support rounded corners borders whose edges do not "
+           "all share the same properties.";
+    return;
+  }
+
   scoped_refptr<RectNode> border_node(new RectNode(rect_node_builder.Pass()));
   border_node_builder->AddChild(border_node);
 
diff --git a/src/cobalt/layout/box_generator.cc b/src/cobalt/layout/box_generator.cc
index 99f2b2c..2cfb06b 100644
--- a/src/cobalt/layout/box_generator.cc
+++ b/src/cobalt/layout/box_generator.cc
@@ -26,6 +26,7 @@
 #include "cobalt/cssom/keyword_value.h"
 #include "cobalt/cssom/property_definitions.h"
 #include "cobalt/cssom/property_value_visitor.h"
+#include "cobalt/cssom/url_value.h"
 #include "cobalt/dom/html_br_element.h"
 #include "cobalt/dom/html_element.h"
 #include "cobalt/dom/html_video_element.h"
@@ -631,6 +632,12 @@
     is_element_generated_ = true;
   }
 
+  void VisitURL(cssom::URLValue* url_value) OVERRIDE {
+    // TODO: Implement support for 'content: url(foo)'.
+    DLOG(ERROR) << "Unsupported content property value: "
+                << url_value->ToString();
+  }
+
   void VisitKeyword(cssom::KeywordValue* keyword) OVERRIDE {
     switch (keyword->value()) {
       case cssom::KeywordValue::kNone:
diff --git a/src/cobalt/layout/inline_container_box.cc b/src/cobalt/layout/inline_container_box.cc
index 4ce8255..2215a46 100644
--- a/src/cobalt/layout/inline_container_box.cc
+++ b/src/cobalt/layout/inline_container_box.cc
@@ -109,12 +109,7 @@
 
   for (Boxes::const_iterator child_box_iterator = child_boxes().begin();
        child_box_iterator != child_boxes().end(); ++child_box_iterator) {
-    Box* child_box = *child_box_iterator;
-    if (child_box->IsAbsolutelyPositioned()) {
-      line_box.BeginEstimateStaticPosition(child_box);
-    } else {
-      line_box.BeginAddChildAndMaybeOverflow(child_box);
-    }
+    line_box.BeginAddChildAndMaybeOverflow(*child_box_iterator);
   }
   line_box.EndUpdates();
 
diff --git a/src/cobalt/layout/inline_formatting_context.cc b/src/cobalt/layout/inline_formatting_context.cc
index a1d4098..eb739e2 100644
--- a/src/cobalt/layout/inline_formatting_context.cc
+++ b/src/cobalt/layout/inline_formatting_context.cc
@@ -48,8 +48,6 @@
 InlineFormattingContext::~InlineFormattingContext() {}
 
 Box* InlineFormattingContext::TryAddChildAndMaybeWrap(Box* child_box) {
-  DCHECK(child_box->GetLevel() == Box::kInlineLevel);
-
   // When an inline box exceeds the width of a line box, it is split into
   // several boxes and these boxes are distributed across several line boxes.
   //   https://www.w3.org/TR/CSS21/visuren.html#inline-formatting
@@ -65,10 +63,6 @@
   return child_box_before_wrap;
 }
 
-void InlineFormattingContext::BeginEstimateStaticPosition(Box* child_box) {
-  line_box_->BeginEstimateStaticPosition(child_box);
-}
-
 void InlineFormattingContext::EndUpdates() {
   // Treat the end of child boxes almost as an explicit line break,
   // but don't create the new line box.
diff --git a/src/cobalt/layout/inline_formatting_context.h b/src/cobalt/layout/inline_formatting_context.h
index 1611dd2..d19cca5 100644
--- a/src/cobalt/layout/inline_formatting_context.h
+++ b/src/cobalt/layout/inline_formatting_context.h
@@ -79,10 +79,6 @@
   // child boxes. The used values will be undefined until |EndUpdates| is
   // called.
   Box* TryAddChildAndMaybeWrap(Box* child_box);
-  // Asynchronously estimates the static position of the given child box.
-  // In CSS 2.1 the static position is only defined for absolutely positioned
-  // boxes. The position is undefined until |EndUpdates| is called.
-  void BeginEstimateStaticPosition(Box* child_box);
   // Ensures that the calculation of used values for all previously seen child
   // boxes is completed.
   void EndUpdates();
diff --git a/src/cobalt/layout/line_box.cc b/src/cobalt/layout/line_box.cc
index 9012f31..7a72a16 100644
--- a/src/cobalt/layout/line_box.cc
+++ b/src/cobalt/layout/line_box.cc
@@ -55,6 +55,7 @@
       ellipsis_width_(ellipsis_width),
       has_overflowed_(false),
       at_end_(false),
+      num_absolutely_positioned_boxes_before_first_box_justifying_line_(0),
       shrink_to_fit_width_(indent_offset_),
       height_(0),
       baseline_offset_from_top_(0),
@@ -62,9 +63,13 @@
       placed_ellipsis_offset_(0) {}
 
 Box* LineBox::TryAddChildAndMaybeWrap(Box* child_box) {
-  DCHECK(!child_box->IsAbsolutelyPositioned());
   DCHECK(!at_end_);
 
+  if (child_box->IsAbsolutelyPositioned()) {
+    BeginEstimateStaticPositionForAbsolutelyPositionedChild(child_box);
+    return NULL;
+  }
+
   UpdateSizePreservingTrailingWhiteSpace(child_box);
 
   // If the line box hasn't already overflowed the line, then attempt to add it
@@ -131,52 +136,15 @@
 }
 
 void LineBox::BeginAddChildAndMaybeOverflow(Box* child_box) {
-  DCHECK(!child_box->IsAbsolutelyPositioned());
+  if (child_box->IsAbsolutelyPositioned()) {
+    BeginEstimateStaticPositionForAbsolutelyPositionedChild(child_box);
+    return;
+  }
 
   UpdateSizePreservingTrailingWhiteSpace(child_box);
   BeginAddChildInternal(child_box);
 }
 
-void LineBox::BeginEstimateStaticPosition(Box* child_box) {
-  DCHECK(child_box->IsAbsolutelyPositioned());
-
-  // The term "static position" (of an element) refers, roughly, to the position
-  // an element would have had in the normal flow. More precisely:
-  //
-  // The static-position containing block is the containing block of a
-  // hypothetical box that would have been the first box of the element if its
-  // specified 'position' value had been 'static'.
-  //
-  // The static position for 'left' is the distance from the left edge of the
-  // containing block to the left margin edge of a hypothetical box that would
-  // have been the first box of the element if its 'position' property had been
-  // 'static' and 'float' had been 'none'. The value is negative if the
-  // hypothetical box is to the left of the containing block.
-  //   https://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
-
-  // For the purposes of this section and the next, the term "static position"
-  // (of an element) refers, roughly, to the position an element would have had
-  // in the normal flow. More precisely, the static position for 'top' is the
-  // distance from the top edge of the containing block to the top margin edge
-  // of a hypothetical box that would have been the first box of the element if
-  // its specified 'position' value had been 'static'.
-  //   https://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-height
-
-  switch (child_box->GetLevel()) {
-    case Box::kInlineLevel:
-      // NOTE: This case is never reached due to a bug.
-      child_box->SetStaticPositionLeftFromParent(shrink_to_fit_width_);
-      break;
-    case Box::kBlockLevel:
-      child_box->SetStaticPositionLeftFromParent(LayoutUnit());
-      break;
-    default:
-      NOTREACHED();
-      break;
-  }
-  child_box->SetStaticPositionTopFromParent(LayoutUnit());
-}
-
 void LineBox::EndUpdates() {
   at_end_ = true;
 
@@ -186,6 +154,12 @@
     CollapseTrailingWhiteSpace();
   }
 
+  // Set the leading and trailing white space flags now. This ensures that the
+  // values returned by HasLeadingWhiteSpace() and HasTrailingWhiteSpace()
+  // remain valid even after bidi reversals.
+  has_leading_white_space_ = HasLeadingWhiteSpace();
+  has_trailing_white_space_ = HasTrailingWhiteSpace();
+
   ReverseChildBoxesByBidiLevels();
   UpdateChildBoxLeftPositions();
   SetLineBoxHeightFromChildBoxes();
@@ -194,15 +168,31 @@
 }
 
 bool LineBox::HasLeadingWhiteSpace() const {
-  return first_non_collapsed_child_box_index_ &&
-         child_boxes_[*first_non_collapsed_child_box_index_]
-             ->HasLeadingWhiteSpace();
+  // |has_leading_white_space_| should only ever be set by EndUpdates() after
+  // |at_end_| has been set to true;
+  DCHECK(at_end_ || !has_leading_white_space_);
+
+  // If |has_leading_white_space_| has been set, then use it. Otherwise, grab
+  // the leading white space state from the first non-collapsed child box.
+  return has_leading_white_space_
+             ? *has_leading_white_space_
+             : first_non_collapsed_child_box_index_ &&
+                   child_boxes_[*first_non_collapsed_child_box_index_]
+                       ->HasLeadingWhiteSpace();
 }
 
 bool LineBox::HasTrailingWhiteSpace() const {
-  return last_non_collapsed_child_box_index_ &&
-         child_boxes_[*last_non_collapsed_child_box_index_]
-             ->HasTrailingWhiteSpace();
+  // |has_trailing_white_space_| should only ever be set by EndUpdates() after
+  // |at_end_| has been set to true;
+  DCHECK(at_end_ || !has_trailing_white_space_);
+
+  // If |has_trailing_white_space_| has been set, then use it. Otherwise, grab
+  // the trailing white space state from the last non-collapsed child box.
+  return has_trailing_white_space_
+             ? *has_trailing_white_space_
+             : last_non_collapsed_child_box_index_ &&
+                   child_boxes_[*last_non_collapsed_child_box_index_]
+                       ->HasTrailingWhiteSpace();
 }
 
 bool LineBox::IsCollapsed() const {
@@ -215,7 +205,8 @@
 
 size_t LineBox::GetFirstBoxJustifyingLineExistenceIndex() const {
   return first_box_justifying_line_existence_index_.value_or(
-      child_boxes_.size());
+             child_boxes_.size()) +
+         num_absolutely_positioned_boxes_before_first_box_justifying_line_;
 }
 
 bool LineBox::IsEllipsisPlaced() const { return is_ellipsis_placed_; }
@@ -474,6 +465,49 @@
   return false;
 }
 
+void LineBox::BeginEstimateStaticPositionForAbsolutelyPositionedChild(
+    Box* child_box) {
+  if (!first_box_justifying_line_existence_index_) {
+    ++num_absolutely_positioned_boxes_before_first_box_justifying_line_;
+  }
+
+  // The term "static position" (of an element) refers, roughly, to the position
+  // an element would have had in the normal flow. More precisely:
+  //
+  // The static-position containing block is the containing block of a
+  // hypothetical box that would have been the first box of the element if its
+  // specified 'position' value had been 'static'.
+  //
+  // The static position for 'left' is the distance from the left edge of the
+  // containing block to the left margin edge of a hypothetical box that would
+  // have been the first box of the element if its 'position' property had been
+  // 'static' and 'float' had been 'none'. The value is negative if the
+  // hypothetical box is to the left of the containing block.
+  //   https://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-width
+
+  // For the purposes of this section and the next, the term "static position"
+  // (of an element) refers, roughly, to the position an element would have had
+  // in the normal flow. More precisely, the static position for 'top' is the
+  // distance from the top edge of the containing block to the top margin edge
+  // of a hypothetical box that would have been the first box of the element if
+  // its specified 'position' value had been 'static'.
+  //   https://www.w3.org/TR/CSS21/visudet.html#abs-non-replaced-height
+
+  switch (child_box->GetLevel()) {
+    case Box::kInlineLevel:
+      // NOTE: This case is never reached due to a bug.
+      child_box->SetStaticPositionLeftFromParent(shrink_to_fit_width_);
+      break;
+    case Box::kBlockLevel:
+      child_box->SetStaticPositionLeftFromParent(LayoutUnit());
+      break;
+    default:
+      NOTREACHED();
+      break;
+  }
+  child_box->SetStaticPositionTopFromParent(LayoutUnit());
+}
+
 void LineBox::BeginAddChildInternal(Box* child_box) {
   if (!first_box_justifying_line_existence_index_ &&
       child_box->JustifiesLineExistence()) {
diff --git a/src/cobalt/layout/line_box.h b/src/cobalt/layout/line_box.h
index a330f96..af97faa 100644
--- a/src/cobalt/layout/line_box.h
+++ b/src/cobalt/layout/line_box.h
@@ -84,10 +84,6 @@
   // Asynchronously adds the given child box to the line, ignoring any possible
   // overflow. The used values will be undefined until |EndUpdates| is called.
   void BeginAddChildAndMaybeOverflow(Box* child_box);
-  // Asynchronously estimates the static position of the given child box.
-  // In CSS 2.1 the static position is only defined for absolutely positioned
-  // boxes. The used values will be undefined until |EndUpdates| is called.
-  void BeginEstimateStaticPosition(Box* child_box);
   // Ensures that the calculation of used values for all previously seen child
   // boxes is completed.
   void EndUpdates();
@@ -108,6 +104,8 @@
   // treated as not existing for any other purpose.
   //   https://www.w3.org/TR/CSS21/visuren.html#inline-formatting
   bool LineExists() const;
+  // Returns the first box justifing the line's existence.
+  // NOTE: This includes absolutely positioned children.
   size_t GetFirstBoxJustifyingLineExistenceIndex() const;
 
   bool IsEllipsisPlaced() const;
@@ -147,6 +145,11 @@
   bool TryWrapChildrenAtLastOpportunity(
       WrapOpportunityPolicy wrap_opportunity_policy);
 
+  // Asynchronously estimates the static position of the given child box.
+  // In CSS 2.1 the static position is only defined for absolutely positioned
+  // boxes. The used values will be undefined until |EndUpdates| is called.
+  void BeginEstimateStaticPositionForAbsolutelyPositionedChild(Box* child_box);
+
   void BeginAddChildInternal(Box* child_box);
 
   void ReverseChildBoxesByBidiLevels();
@@ -183,10 +186,21 @@
   typedef std::vector<Box*> ChildBoxes;
   ChildBoxes child_boxes_;
 
+  int num_absolutely_positioned_boxes_before_first_box_justifying_line_;
+
+  // Accessing boxes indicated by these indices are only valid before
+  // EndUpdates() is called, because the positions of the boxes may change
+  // during bidirectional sorting.
   base::optional<size_t> first_box_justifying_line_existence_index_;
   base::optional<size_t> first_non_collapsed_child_box_index_;
   base::optional<size_t> last_non_collapsed_child_box_index_;
 
+  // These flags are set when EndUpdates() is called. This allows the leading
+  // and trailing white space state of the line to be accessible even after
+  // the boxes have been moved as a result of bidirectional sorting.
+  base::optional<bool> has_leading_white_space_;
+  base::optional<bool> has_trailing_white_space_;
+
   LayoutUnit shrink_to_fit_width_;
   LayoutUnit height_;
   LayoutUnit baseline_offset_from_top_;
diff --git a/src/cobalt/layout/replaced_box.cc b/src/cobalt/layout/replaced_box.cc
index 15f0d6a..d8a694c 100644
--- a/src/cobalt/layout/replaced_box.cc
+++ b/src/cobalt/layout/replaced_box.cc
@@ -420,20 +420,32 @@
               // Constraint: (w < min-width) and (h < min-height), where
               // (min-width/w > min-height/h)
               set_width(min_width);
-              set_height(std::min(*max_height,
-                                  min_width * (h.toFloat() / w.toFloat())));
+              LayoutUnit height = min_width * (h.toFloat() / w.toFloat());
+              if (max_height) {
+                set_height(std::min(*max_height, height));
+              } else {
+                set_height(height);
+              }
             } else {
               // Constraint: (w < min-width) and (h < min-height), where
               // (min-width/w <= min-height/h)
-              set_width(std::min(*max_width,
-                                 min_height * (w.toFloat() / h.toFloat())));
+              LayoutUnit width = min_height * (w.toFloat() / h.toFloat());
+              if (max_width) {
+                set_width(std::min(*max_width, width));
+              } else {
+                set_width(width);
+              }
               set_height(min_height);
             }
           } else {  // not h < min-height
             // Constraint: w < min-width
             set_width(min_width);
-            set_height(
-                std::min(min_width * (h.toFloat() / w.toFloat()), *max_height));
+            LayoutUnit height = min_width * (h.toFloat() / w.toFloat());
+            if (max_height) {
+              set_height(std::min(height, *max_height));
+            } else {
+              set_height(height);
+            }
           }
         }
       } else {  // not w < min_width
@@ -445,8 +457,12 @@
         } else {  // not h_greater_than_max_height
           if (h < min_height) {
             // Constraint: h < min-height
-            set_width(
-                std::min(min_height * (w.toFloat() / h.toFloat()), *max_width));
+            LayoutUnit width = min_height * (w.toFloat() / h.toFloat());
+            if (max_width) {
+              set_width(std::min(width, *max_width));
+            } else {
+              set_width(width);
+            }
             set_height(min_height);
           } else {  // not h < min_height
             // Constraint: none
diff --git a/src/cobalt/layout/used_style.cc b/src/cobalt/layout/used_style.cc
index b8ca707..02227e0 100644
--- a/src/cobalt/layout/used_style.cc
+++ b/src/cobalt/layout/used_style.cc
@@ -757,14 +757,23 @@
   }
 }
 
+// Compares ColorStops by position.
+bool ColorStopPositionComparator(const render_tree::ColorStop& x,
+                                 const render_tree::ColorStop& y) {
+  return x.position < y.position;
+}
+
 render_tree::ColorStopList ConvertToRenderTreeColorStopList(
     const cssom::ColorStopList& css_color_stop_list,
     float gradient_line_length) {
   render_tree::ColorStopList ret;
 
+  ret.reserve(css_color_stop_list.size());
+
   // The description of this process is defined here:
   //   https://www.w3.org/TR/css3-images/#color-stop-syntax
   float largest_position = 0.0f;
+  const float kMaxPositionSupported = 1.0f;
   for (size_t i = 0; i < css_color_stop_list.size(); ++i) {
     const cssom::ColorStop& css_color_stop = *css_color_stop_list[i];
 
@@ -791,6 +800,10 @@
 
       // Ensure that it is larger than all previous stop positions.
       render_tree_position = std::max(largest_position, render_tree_position);
+      DLOG_IF(WARNING, render_tree_position > kMaxPositionSupported)
+          << "Color stop's position which is larger than 1.0 is not supported";
+      render_tree_position =
+          std::min(render_tree_position, kMaxPositionSupported);
       largest_position = render_tree_position;
     } else {
       // If the position is not specified, fill it in as 0 if it is the first,
@@ -812,6 +825,11 @@
 
   InterpolateUnspecifiedColorStopPositions(&ret);
 
+  // According to the spec @ https://www.w3.org/TR/css3-images/#linear-gradients
+  // the color-stops can be in unsorted order.  The color-stops are sorted
+  // to make the rendering code easier to write and faster to execute.
+  std::sort(ret.begin(), ret.end(), ColorStopPositionComparator);
+
   return ret;
 }
 }  // namespace
diff --git a/src/cobalt/layout_tests/layout_tests.cc b/src/cobalt/layout_tests/layout_tests.cc
index 9ceb258..c2e63c0 100644
--- a/src/cobalt/layout_tests/layout_tests.cc
+++ b/src/cobalt/layout_tests/layout_tests.cc
@@ -89,21 +89,20 @@
   browser::WebModule::LayoutResults layout_results = SnapshotURL(
       GetParam().url, viewport_size, pixel_tester.GetResourceProvider());
 
-  render_tree::animations::AnimateNode* animated_node =
-      base::polymorphic_downcast<render_tree::animations::AnimateNode*>(
-          layout_results.render_tree.get());
+  scoped_refptr<render_tree::animations::AnimateNode> animate_node =
+      new render_tree::animations::AnimateNode(layout_results.render_tree);
+  scoped_refptr<render_tree::Node> animated_tree =
+      animate_node->Apply(layout_results.layout_time);
 
   bool results =
-      pixel_tester.TestTree(animated_node->Apply(layout_results.layout_time),
-                            GetParam().base_file_path);
+      pixel_tester.TestTree(animated_tree, GetParam().base_file_path);
   EXPECT_TRUE(results);
 
   if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kRebaseline) ||
       (!results &&
        CommandLine::ForCurrentProcess()->HasSwitch(
            switches::kRebaselineFailedTests))) {
-    pixel_tester.Rebaseline(layout_results.render_tree,
-                            GetParam().base_file_path);
+    pixel_tester.Rebaseline(animated_tree, GetParam().base_file_path);
   }
 }
 
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/layout_tests.txt b/src/cobalt/layout_tests/testdata/benchmarks/layout_tests.txt
new file mode 100644
index 0000000..e5af5b3
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/layout_tests.txt
@@ -0,0 +1 @@
+youtube-2015-q3-initial-layout:1920x1080, file:///cobalt/layout_tests/benchmarks/youtube-2015-q3/index.html
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/-9-kyTW8ZkZNDHQJ6FgpwQ/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/-9-kyTW8ZkZNDHQJ6FgpwQ/1.jpg
new file mode 100644
index 0000000..fc5fc1c
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/-9-kyTW8ZkZNDHQJ6FgpwQ/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/4R8DWoMoI7CAwX8_LjQHig/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/4R8DWoMoI7CAwX8_LjQHig/1.jpg
new file mode 100644
index 0000000..0b1dda7
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/4R8DWoMoI7CAwX8_LjQHig/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/Egdi0XIXXZ-qJOFPf4JSKw/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/Egdi0XIXXZ-qJOFPf4JSKw/1.jpg
new file mode 100644
index 0000000..5abfe0e
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/Egdi0XIXXZ-qJOFPf4JSKw/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/1.jpg
new file mode 100644
index 0000000..429bdae
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/OpNcN46UbXVtpKMrmU4Abg/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/OpNcN46UbXVtpKMrmU4Abg/1.jpg
new file mode 100644
index 0000000..861caa9
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/OpNcN46UbXVtpKMrmU4Abg/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/YfdidRxbB8Qhf0Nx7ioOYw/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/YfdidRxbB8Qhf0Nx7ioOYw/1.jpg
new file mode 100644
index 0000000..75357d6
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/YfdidRxbB8Qhf0Nx7ioOYw/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/i-g4cjqGV7jvU8aeSuj0jQ/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/i-g4cjqGV7jvU8aeSuj0jQ/1.jpg
new file mode 100644
index 0000000..e8b0b20
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/i-g4cjqGV7jvU8aeSuj0jQ/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/xAgnFbkxldX6YUEvdcNjnA/1.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/xAgnFbkxldX6YUEvdcNjnA/1.jpg
new file mode 100644
index 0000000..40edb65
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/i/xAgnFbkxldX6YUEvdcNjnA/1.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/0vEKItRNIb0/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/0vEKItRNIb0/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/0vEKItRNIb0/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/1dXVzBU5p-Q/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/1dXVzBU5p-Q/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/1dXVzBU5p-Q/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/2A07xMhKC6g/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/2A07xMhKC6g/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/2A07xMhKC6g/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/59_zMJRhFM0/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/59_zMJRhFM0/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/59_zMJRhFM0/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/8VstEBbwhnc/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/8VstEBbwhnc/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/8VstEBbwhnc/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/D-YPnDvTCmI/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/D-YPnDvTCmI/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/D-YPnDvTCmI/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/F50yjSws9gQ/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/F50yjSws9gQ/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/F50yjSws9gQ/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/GwzBLYGRj6c/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/GwzBLYGRj6c/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/GwzBLYGRj6c/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/LZoilVdo7Hw/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/LZoilVdo7Hw/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/LZoilVdo7Hw/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/M9WlASe5ThU/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/M9WlASe5ThU/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/M9WlASe5ThU/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/MODTYlzxY9U/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/MODTYlzxY9U/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/MODTYlzxY9U/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/RL7grUEo960/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/RL7grUEo960/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/RL7grUEo960/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/XilhAJZ2qxs/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/XilhAJZ2qxs/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/XilhAJZ2qxs/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/Z31LDqbhN8U/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/Z31LDqbhN8U/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/Z31LDqbhN8U/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/_TWbD3MKfMI/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/_TWbD3MKfMI/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/_TWbD3MKfMI/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/eOOyxSMI0aE/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/eOOyxSMI0aE/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/eOOyxSMI0aE/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/q14aPbvbvl8/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/q14aPbvbvl8/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/q14aPbvbvl8/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qkKRkfZYhlE/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qkKRkfZYhlE/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qkKRkfZYhlE/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qrZcKwcVwk8/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qrZcKwcVwk8/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/qrZcKwcVwk8/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rs-Ou-gjReQ/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rs-Ou-gjReQ/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rs-Ou-gjReQ/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rtzlT78OEks/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rtzlT78OEks/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/rtzlT78OEks/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/spC883rn6zk/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/spC883rn6zk/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/spC883rn6zk/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tCehxI5a1y0/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tCehxI5a1y0/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tCehxI5a1y0/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tnfPNYpi8rc/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tnfPNYpi8rc/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/tnfPNYpi8rc/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/vvFHyFW_jFc/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/vvFHyFW_jFc/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/vvFHyFW_jFc/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/wNRUzu4fTgw/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/wNRUzu4fTgw/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/wNRUzu4fTgw/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/x5ZxRObLLzE/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/x5ZxRObLLzE/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/x5ZxRObLLzE/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/zzmrTdAtEu4/hqdefault.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/zzmrTdAtEu4/hqdefault.jpg
new file mode 100644
index 0000000..e686f50
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/i.ytimg.com/vi/zzmrTdAtEu4/hqdefault.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/index.html b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/index.html
new file mode 100644
index 0000000..5d33c44
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/index.html
@@ -0,0 +1,1751 @@
+<html xmlns:yt="http://youtube.com"><head><meta charset="utf-8">
+    
+    
+    <title>YouTube TV</title>
+    
+  <style>#loader { height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; z-index: 0; background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAmwAAAEsCAYAAAB+Je/UAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAABVsSURBVFjD7dntcavAGYDRWwIlUIJKoARKoASVQAcqgRIogRJUAiVQArETPKN4LFsfC7sL5505kx9JrvXF7sPyb57nfwAApMuHAAAg2AAAEGwAAIINAADBBgCAYAMAEGwAAAg2AADBBgCAYAMAQLABAAg2AAAEGwAAgg0AQLABACDYAAAEGwAAgg0AAMEGACDYAAAQbAAAgg0AAMEGAIBgAwAQbAAACDYAAAQbAIBgAwBAsAEACDYAAAQbAACCDQBAsAEAINgAAAQbAACCDQAAwQYAINgAABBsAAAINgAAwQYAgGADABBsAAAINgAABBsAgGADAECwAQAINgAABBsAAIINAECwAQAg2AAAEGwAAIINAADBBgAg2AB4Qfmh+kX9oX3A5cPwgmne70wvfibtg+o/vrvS7xvBBrCd0w+b8U8beHcnAMbZmP+f8c5vpbvz2/r++zu5LhFswF59bXbNt83w+6ZpTI7z20lhLfQEG0BKipsTsF6AGfNr4PU3J3iF9UOwAaz9yPLy4WoPNuatuS7XkpM4wQYQRLmcDIz2WGNWmXG5xpy8CTaAl0Kts5cas+l0y7VnDRJsAL8qhJox0efixE2wAdxz/jDZK41JYj6vxdq6JNgAbk/VBvujMUlO77RNsAGcnKoZk/yMy7VqzRJswAE19kFjsnpE2li3BBsg1owx6Y9oE2yAWDPGiDYEGyDWjDGiTbAB3FXZ44zZ1Zysa4IN2Jfiw2R/M2ZXMy7XtjVOsAE70dvbjNnl9NY3wQbsQ21PM2bXU1nnBBuQv9F+ZszuH41a6wQbkLHGXmbMIaax3gk2wOmaMcYpG4INcLpmjHHKJtiA47nav4w51AzWPcEG5KWydxlzyCmtf4INyEdn3zLmkHOx/gk2IB+TfcuYQ85k/RNsQB5qe5Yxh57aOijYAI9DjTFpT2cdFGyAx6HGmLTHY1HBlrUhoC2Om9uAr9f373GoMeZYc7IeCrZcXTM7bg51SnL13R/KJdDvpt258WCPx3xWx5vWeijYcnUOeCGMK7/WU8DXevbduzF5YY5w4n6UqXxWhxxPVwRbtsrAF0OZSVw6Fj+OIuDvRrAJNsGW/1gXBZvHoiufXPWZnASSltpCL0IEmwn43SPYdvFYtF/xdU6BXuPFd34oF8EmQgSbuZnWuijYPBb9X1St8RpPAV9j7Ts/lJAbq89KsAm2/GewLgo2C/V6x81t4kFJukKOdUCwCbb8xz4g2LLWJH7cHGpx7HzXh3IKvNALNsEm2PYxpfVRsOWqCHghXBM+JWl814dSCzYRItjMRk+CEGyb6QNeDEXA11Ul+rpIXyvYRIhgMxs9CUKwZflYtE5w0x18x4fTCTYRItiMYBNsHoven0uCm8jZd3w4oTdVn5dgE2z7GDfwgs1j0WXGBCOy9P0ezlWwiRDBZgSbYPNYdP1AqhMLSPISegSbYBNs+5jJ+ijY9mAKdEE0AV7LJcFHtAg2wSbYBFv+Y40UbNnrAl0MfUKPtCrf6+FUFngRItjML1NYJwVb7kI9hnz3yLlw9I1gE2yCzST6G0Cw7eqx6CmBcOx8n248As0QUMjICmWyWQs2vwEE2zEfi7ZvvIZLoNdQ+z4PqU18swj1Po1gM6/N2Top2JxO/P+JxKuvYQz0Ggrfp2ATbEawmYAHCgi2pIQKplf+dhnob/e+R6fEgs0INiPYBNuexXwk2TjyZucbqmATbCbuDNZJwbYXp0AXxSXi6UjpexRsgs0INiPYBJvHon/PNaO/y35Mgs0INiPYBJvHouuddJURT/bYj9RHsAk2s5/rEMG2m8eizRN/swn0N0++P8Em2IxgM4JNsHks+vh0T/y9PsDfm3xvh1YeaKMwgs0INsHGf7UbB9S0cSCyP5VgM4LNeBIj2JxWrHdhhHoEW/veBJtgM4LNrPw7QLAl5xrgwjg/8HfOgS7CYsXPolgu8nYx/KBf/rvGgiDYBJtgM4JNsLGVECHVP/B3+o3+zrM+T/4uH8Y3X1ezckx+19wJyme8+sjgEuBvv/q+W8FmEgu26eZGrvqmWa6Xawaf27C81p/ex5fzzc3sJNgEG3k+Fv3r74S4uJsVgifkfL7HbvlM1/7e2ogL2rDB70WwhZnul833Ed2bv693pB5sn/+7+smbwy6h3+m0BNo7n1eIG961prW/CzaPRZ9fJEM9xgoRQqeNHnm0K5+4CTbBtsWm1Ub8HFINtuHNv1FFPp0aA9/8fqnntB4nCzbB5rHonbmsvMleE4mcZxfG0yzYBJtg20OwTctaGeK7LebtH5NOK4XaT08vUnhcKtgEm8eiLwTVEPni+1wc+4iPHdZYJI8abP2c/gi2/QXbdYWbr2LDsOlXPvFPac0VbILNY9EHplhx4znN+dzJ/jSho+2owZbSIxfBdoxgG1aMnWrn4RLzRLy3rws2j0Wfi5IQC9KYeaytEW2CTbAJtvWDrdtg7e0yulF89RFpjBns64LNY9H7060UFl2CC2GszUSwCTbBtk2wdRutvWs9Gk0h1mJGm2ATbB6LPnkSFuKEq450YrjGTIEerwg2wSbY1gu264qPQbe4uWzn9PaXi2ATbKT1WLT8ducYYwM8Jb6hh1hIjhps05z+CLa8g+2ycayFXrP6HR8KCDbBRsDHouebf6+OtPjkcApTz4ItVsQINsGWojGhE/w195itbrpGe7pg81j08cAKcQTePPn6q0w29XEWbIJNsAm2sI9FmwzeZ5vhtYhg2+Vj0Snw8fezd4vDnM/Us2ATbIJNsP1Pc5ATpWLDUzZ7umDzWPSBBbMI8O9cn3ztpzmv6WfBJtgEm2AL83TgnNF7vWR2LSLYdvtYtF1Oj+aNF6DQi0C3vIZqeT9toFPD2ykFm2ATbFkE22n5t9vlP8sV/saWTyP+OgWrllO/5uYmPKWDAcEm2AjwWPS6xM67c3rydY8BT75+W5zqgEf6jWATbIIt2WArls/g3toyBA636Y01K1SUDn/cxIZ6v9eMrkUE264fi44B/v8x7tj6Jxa2acO/J9gEm2DbNtjqB9ex6YWby9DXVhPgbzcPrmmh3u85o2sRwbbrx6LvzuWFxebdmZ489j8H+puC7TGVYBNsGwXbs+/7GjnY3j31Kp+8AX12rbx30yvYBBsBXCJvevWTrzfEI9jzC59TiMewp1mwCTbBlkqwvbr2NZHW3XGOE4pdIr9xwSbYDu8UccN75dQpxIlgMccJ23oWbIJNsKUSbK/+vocIJ3uf00dc64tIn7VgE2yscHo0b7QAvTvDHC9s21mwCTbBlnuwhQiYNsJ3/M5NZzOn/STHPi7YDqOLtOE9uwiUkTe2GIEq2ASbYEsv2KoIn3fM9/vuY9GzYBNshFFH2vCevUsNsZHXc7xj/WEWbIJNsO0h2NoIa24V8Xd2ffNvV5lciwi2LGw9wxwnLKs5XrCNgk2wCTbB9uJv/J2/V0b+vQs2wUZA/cab3TlSvJRvfEaXCAuLYBNsgi29YBvmvIKtSuD3LtgEG4GcN97syjlOvMTa1ASbYBNsgi3nYKtmwSbYSEK54UY3zvkEk2ATbIJNsMUOthiBKNgEGwkbN9roLgcOtkKwCTbBJtgOGGxjBtcigi0bl402umo+brBVs2ATbIJNsB0v2IYMrkUEWzbqDTa5KbNHkoJNsAk2wSbYBJtgIzlrTyfYBJtgE2yCTbAJNsFGuhfV5zSCTbAJNsEm2ASbYBNsxI+S36YQbIJNsAk2wSbYBJtgI/6FfW/6BIJJsAk2wSbYBJtgQ7DtwlpzFmyCTbAJNsEm2ASbYCOMtS6sUrAJNsEm2ATb5sF2Wv6Nd5wEm2AjPe0KF9Q1kdcl2ASbYBNsRwu2PR8ECDbBdmhrbJgXwSbYBJtgE2yCTbAJNsIpVrigTrNgE2yCTbAJNsEm2AQbQV0DXkxTQo9qBZtgE2yCTbAJNgTbbnQBL6ZOsAk2wSbYBJtgE2yCjfDOAS+mWrAJNsEm2ASbYBNsgo3wQm6a1SzYBJtgE2yCTbAJNsGGYBNsgk2wCTbBJtgQbIJNsAk2wSbYBJtgE2yCDcEm2ASbYBNsgk2wCTbBhmATbIJNsAk2wSbYEGyCTbAJNsEm2ASbYBNsgg3BJtgEm2ATbIJNsAk2wYZgE2wRg+3fnMcINsGWS7DlchMk2AQbgk2wCTbBJtgEm2BDsAk2wSbYBJtgE2yCTbAJNgSbYBNsgk2wCTbBJtgEG4JNsAk2wSbYBJtgE2w+BMEm2ASbYBNsgk2wCTbBhmATbIJNsAk2wXaUYLvarwWbYBNsgi3e5z0JNsEm2ATbBp8Ngk2wCTbBFmkzFWyCTbAJNgSbYBNsgk2wCTbBJtgEm2BDsAk2wSbYBJtgE2yCTbAh2ASbYBNsgk2wbRhFa13Tvf1asAk2wSbY4n3evWATbIJNsG3w20ewCTbBJtgif9aCTbAJNsGGYBNsgk2wCTbBJtgEm2ATbAi2PQZbIdgEm2ATbIJNsAk2BFvawZbDqV4KwXYWbIJNsAm2DfcXBJtgE2yCLfLvT7AJttyDbdpBsF0Fm2BDsD0zpzf+fifYBJtgE2yRTrxyD7a1RrAJNsGW4AVVRX4t7wbMKNgEm2DbRbBdMgu2046DrbRfCzbBts9gayIe6Q+zYHtUIdgEW8LB1kZYy6qIv7M+4WCzXws2wZZgsJUBXssl4oLTZRRsVQKLqWBLP9gu8zGDrY7web/7fq8Rf1+CTbBxsGALcdFfX/y7daRNNUawfZ5uTYJNsD1wLRUHDbYywuf97nd8ifRkYs3rebJXCzbSDbYQj+leWWy7AH+3ntMPtiLAo99QUTMKtmSDbQoQLbkG2xjgPb9yXfcR1/R3v+vTStfgYK8WbKQbbCHC6dnHOKFOnMo5TrDVG3++oaJmmNOePQXb+clYOyXw/t9dV/qIjwdfua5DhOIrN0Ehoqhe6RoUbIKNhIOtCfSantlwLgH+3rThwv5KoBZvbGCCLf9gOz3xOz4FXmtirSvFCzcoU6DHwK/+tssI63qI9btd6RrsZ3u1YCPZYCsDvabrgwtvE3lhCbHQjQ9s1teVFtTYp6mCLdzpy3WFWPuXwLryzDVWB/qbrwZbs/FNbxP5/W7xu0ewCbaVgu3VY/17IVP/cvd9CfgZNHPcO9PuzntsAz3uXSNq2jnt2VuwVXd+C9PKG2MqN4LdHydrdQJrWKgTpfqP1zAFjLVixWtQsAk2Eg+2S+CLflwWwnb5t9e4GywS+B7G5f21Gz5uFGzbBNsQMFzaG02gR4CpB9vt+282+AxirCX31pf2mzrwe21WvAbP9mrBRtrBVs55TZ/I95Bb1NSCbfNgiyGlYNvCu+tXbpFyXfEarGZ7tWAj6WD7t+EJUez3f+Rgq3b83gTbcYPt3RuR8aD7iGATbGQabLmEzPXN91kcONhOgu3hmQRbNtoA33eTyXtd+8a6mO3Vgo3kgy2XU7YqkQ0916gRbNu/nmd0gi3KujVlECtNRtcggk2wrbywlsvCler0gd7nNcJr7wJtLIJtu/e4dcBcIn/H777fNsK6WgS+RlPdP4oN1uacT5UFG4cLtq3u4l6ZMeAdcLfxax8CngTkGKu5Bts50ulJrsE2RIiec+DfYKqPRocN1ykEm2DL6M6/S2wj/7zzOyW8yP8215vQTCHYhjndSS3YtoqPJpFT1CrQb2vLaBtX+B2m9mh4q/VYsAk2Mgy21KIt9F1vueFj0CJwLO0txlMOtinSdZZ7sG0VbWs9DQh9g5jLzWU726cFG1kGWyqb+1qPKNZ+NNitdLr17vtuBVsSv7/il+trD8G2drQVS1iteapfH+RkTbAJNnYQbDGjbVr5fdYrvvbzio8jU37fewy2cYXfXvnHDcNegu2nU+ZQ+h1HTLHh+0v5UbBgQ7C9+Ohh2nDhuC6b2trvq19hcz89uaFtHTUnwRbktPSdR1zTyp9DSsH2dT2HfMS49U3ksNF69LVPjJGuv3K2Tws2sg+2r1OBte/6pl9Op9a6kw31aPTywElCCsH2b053/iX8/s4Brp9ho88htWC7Pa0q3rxeu4i/z27FqNliff1r7bVPCzZ2Emy372ONk6l3F/N3NoF3QuqZu+9Ugm2Y05yUg21efvfPbtinFyJjr8H2da03L1zrMU+efgq3OuDTixSux94eLdj4/zuoNpAykfdzfmOxGQMvfCEWzkdP26blRK184W+8+92HeK/tbEJs2MUvcdEGPL3d40w3n2P5y+d4TijUfnoP/fJdVw+sB+XNb6NP7L2EWlsQbGRygngbJN0Sc8O34HhkYYsdol/v47K8/q9F+bycmOT+XdV6IfgJ8eBj8DnezHV5L7lEe8ynNoIN4JfHwMYY8zXWRcEGJMrjOmPMvJwEWhMFG5Coi33KGPMxZ+uhYAPSVdmnjDEfc7IeCjYgbZO9yphDz2gdFGxA+jr7lTGHnot1ULAB6avtV8YcejwOFWxAJjwWNeaYM1r/BBvgsagxJu3xOFSwARk52beMOeSU1j/BBuRlsHcZc6gZrHuCDchPY/8y5lBTWfcEG5Cn0R5mzCFmtN4JNsApmzEm7Wmsd4INcMpmjEl3BuucYAPyV9nPjNn1VNY5wQbsQ29PM2aXc7G+CTZgPwqPRo3Z3VyXa9saJ9iAHTnZ34zZzUzLNW1tE2zADjX2OWN2MbX1TLABos0Yk+401jHBBog2Y4xYQ7ABiag+TPY/Y7KYz2v1ZN0SbMAxlR+u9kJjkp7rcq1aswQbcHCtPdGYJOfyobBGCTaA29O2wf5oTBIzfqisS4IN4J5KuBkTbablxNupmmADeDjcOvunMUINwQak73MDaT709lRjgs91ub6EmmADCBpv9YeLx6bGvDyfNz/nD6U1RbABbOW0RFy7PEL9DLnRnmzMf0/PhuUGp1muFWuGYANI8kSuWk4T2puTuS+TPd1kMtO3326//Ka/NMtvvXLdCzaAvStvNr0vzbeN8Uv/bQMVguZrxju/i/7Ob6n+4XdXuB4RbADpheFPznc2+HuGF007iqLf9E98ln99N4IKwQYAgGADABBsAAAINgAAwQYAgGADAECwAQAINgAABBsAAIINAECwAQAg2AAABBsAAIINAADBBgAg2AAAEGwAAIINAADBBgCAYAMAEGwAAAg2AAAEGwCAYAMAQLABAAg2AAAEGwAAgg0AQLABACDYAAAEmw8BAECwAQAg2AAABBsAAIINAADBBgAg2AAAEGwAAIINAADBBgCAYAMAEGwAAAg2AAB8CAAAgg0AAMEGACDYAAAQbAAACDYAAMEGAIBgAwAQbAAACDYAAAQbAIBgAwBAsAEA8OE/SZR9m3dtGpgAAAAASUVORK5CYII=); background-color: rgb(230, 45, 39); background-size: 60%; background-position: 50% 50%; background-repeat: no-repeat; }</style><style>.icon-cast_off::before { content: ""; }
+.icon-cast_on::before { content: ""; }
+.icon-mr_meh_android::before { content: ""; }
+.icon-settings-signin-android::before { content: ""; }
+.icon-settings-signout-android::before { content: ""; }
+.icon-rockandroll-back::before { content: ""; }
+.icon-hats-happy::before { content: ""; }
+.icon-hats-neutral::before { content: ""; }
+.icon-hats-sad::before { content: ""; }
+.icon-hats-very-happy::before { content: ""; }
+.icon-hats-very-sad::before { content: ""; }
+.icon-search-keyboard::before { content: ""; }
+.icon-multiaudio::before { content: ""; }
+.icon-settings-check::before { content: ""; }
+.icon-settings-uncheck::before { content: ""; }
+.icon-popular::before { content: ""; }
+.icon-airplane::before { content: ""; }
+.icon-back::before { content: ""; }
+.icon-check::before { content: ""; }
+.icon-chevron-single::before { content: ""; }
+.icon-delete::before { content: ""; }
+.icon-desktop-arrowkeys::before { content: ""; }
+.icon-desktop-delete::before { content: ""; }
+.icon-desktop-esc::before { content: ""; }
+.icon-desktop-g::before { content: ""; }
+.icon-desktop-s::before { content: ""; }
+.icon-dislike::before { content: ""; }
+.icon-double-chevron-right::before { content: ""; }
+.icon-edit::before { content: ""; }
+.icon-education::before { content: ""; }
+.icon-ellipsis::before { content: ""; }
+.icon-entertainment::before { content: ""; }
+.icon-exit::before { content: ""; }
+.icon-film::before { content: ""; }
+.icon-flag::before { content: ""; }
+.icon-gaming::before { content: ""; }
+.icon-guide-history::before { content: ""; }
+.icon-guide-my-subs::before { content: ""; }
+.icon-guide-purchases::before { content: ""; }
+.icon-guide-social::before { content: ""; }
+.icon-guide-what-to-watch::before { content: ""; }
+.icon-home::before { content: ""; }
+.icon-hourglass::before { content: ""; }
+.icon-key-delete::before { content: ""; }
+.icon-key-globe::before { content: ""; }
+.icon-key-space-sm::before { content: ""; }
+.icon-key-space::before { content: ""; }
+.icon-like::before { content: ""; }
+.icon-lips::before { content: ""; }
+.icon-logo-lozenge::before { content: ""; }
+.icon-lol::before { content: ""; }
+.icon-lozenge::before { content: ""; }
+.icon-mix::before { content: ""; }
+.icon-music::before { content: ""; }
+.icon-news::before { content: ""; }
+.icon-people::before { content: ""; }
+.icon-pets::before { content: ""; }
+.icon-player-3d::before { content: ""; }
+.icon-player-annotations::before { content: ""; }
+.icon-player-closedcaptions::before { content: ""; }
+.icon-player-ff::before { content: ""; }
+.icon-player-HD-circle::before { content: ""; }
+.icon-player-HD::before { content: ""; }
+.icon-player-info::before { content: ""; }
+.icon-player-instantreplay::before { content: ""; }
+.icon-player-less::before { content: ""; }
+.icon-player-more::before { content: ""; }
+.icon-player-mute::before { content: ""; }
+.icon-player-next::before { content: ""; }
+.icon-player-pause::before { content: ""; }
+.icon-player-play::before { content: ""; }
+.icon-player-prev::before { content: ""; }
+.icon-player-replay::before { content: ""; }
+.icon-player-rew::before { content: ""; }
+.icon-player-settings::before { content: ""; }
+.icon-player-share::before { content: ""; }
+.icon-player-size-fullscreen::before { content: ""; }
+.icon-player-size-medium::before { content: ""; }
+.icon-player-size-minimize::before { content: ""; }
+.icon-player-stop::before { content: ""; }
+.icon-player-subtitles::before { content: ""; }
+.icon-player-volume-45::before { content: ""; }
+.icon-player-volume-48::before { content: ""; }
+.icon-playlist::before { content: ""; }
+.icon-playstation-circle::before { content: ""; }
+.icon-playstation-square::before { content: ""; }
+.icon-playstation-triangle::before { content: ""; }
+.icon-playstation-x::before { content: ""; }
+.icon-privacy-link::before { content: ""; }
+.icon-privacy-locked::before { content: ""; }
+.icon-privacy-public::before { content: ""; }
+.icon-related::before { content: ""; }
+.icon-remoteque::before { content: ""; }
+.icon-reward::before { content: ""; }
+.icon-rocket::before { content: ""; }
+.icon-search-clear::before { content: ""; }
+.icon-search::before { content: ""; }
+.icon-settings-clear-cookies::before { content: ""; }
+.icon-settings-clear-history::before { content: ""; }
+.icon-settings-feedback::before { content: ""; }
+.icon-settings-help::before { content: ""; }
+.icon-settings-pair::before { content: ""; }
+.icon-settings-phone::before { content: ""; }
+.icon-settings-term::before { content: ""; }
+.icon-speechbubble::before { content: ""; }
+.icon-sports::before { content: ""; }
+.icon-star::before { content: ""; }
+.icon-trash::before { content: ""; }
+.icon-trends::before { content: ""; }
+.icon-tv-dpad::before { content: ""; }
+.icon-upload-arrow::before { content: ""; }
+.icon-upload::before { content: ""; }
+.icon-watch-later::before { content: ""; }
+.icon-wii-1::before { content: ""; }
+.icon-wii-2::before { content: ""; }
+.icon-wii-A::before { content: ""; }
+.icon-wii-B::before { content: ""; }
+.icon-wii-minus::before { content: ""; }
+.icon-wii-plus::before { content: ""; }
+.icon-wii-x::before { content: ""; }
+.icon-wii-y::before { content: ""; }
+.icon-youtube-logo::before { content: ""; }
+.icon-youtube-unlimited-logo::before { content: ""; }
+@font-face { font-family: 'Cutive Mono'; src: url(www.youtube.com/s/tv/fonts/CutiveMono-Regular.woff) format(woff); }
+@font-face { font-family: 'PT Mono'; src: url(www.youtube.com/s/tv/fonts/PTM55FT.woff) format(woff); }
+@font-face { font-family: 'PT Serif Caption'; src: url(www.youtube.com/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff) format(woff); }
+@font-face { font-family: 'PT Sans Caption'; src: url(www.youtube.com/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff) format(woff); }
+@font-face { font-family: Handlee; src: url(www.youtube.com/s/tv/fonts/Handlee-Regular.woff) format(woff); }
+@font-face { font-family: 'Dancing Script'; src: url(www.youtube.com/s/tv/fonts/DancingScript-Regular.woff) format(woff); }
+@font-face { font-family: 'Marcellus SC'; src: url(www.youtube.com/s/tv/fonts/MarcellusSC-Regular.woff) format(woff); }
+body, html { font-size: 100%; height: 100%; margin: auto; overflow: hidden; padding: 0px; -webkit-user-select: none; }
+input { font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; margin: 0px; padding: 0px; }
+body { background-color: rgb(28, 26, 26); }
+p, ul, li { border: 0px; margin: 0px; outline: none; padding: 0px; }
+ul { list-style: none; }
+.focused, :focus { outline: solid 0px; }
+.hidden { display: none !important; }
+.invisible { visibility: hidden; }
+ul.list li { display: inline; }
+ul.list.vertical li { display: block; }
+.device-plugin { height: 0px; margin: 0px; position: absolute; visibility: hidden; width: 0px; }
+#loader { }
+#leanback { height: 100%; }
+#app-markup { height: 100%; background-size: 100% 100%; }
+#background { bottom: 0px; left: 0px; position: absolute; overflow: hidden; right: 0px; top: 0px; background-size: 100% 100%; }
+.limited-memory.sets-ui #app-markup { background-color: rgb(40, 51, 55); }
+#app-markup.watch-state { background-color: rgb(0, 0, 0) !important; }
+.veryvibrant #app-markup.watch-state { background-image: none !important; }
+#playstation-buttons { display: none; position: absolute; }
+#spinner { position: absolute; top: 17.17em; width: 100%; }
+.browse-state .loading-indicator { display: none; }
+.browse-state .fallback-loading-indicator { display: block; }
+.opera #spinner { top: 20em; }
+.loading-indicator { height: 5.33em; margin: 0px auto; position: relative; width: 5.33em; }
+.dot { border-radius: 50%; height: 1.17em; position: absolute; width: 1.17em; background-color: rgb(203, 203, 203); }
+@-webkit-keyframes fade1 { 
+  0%,100% { opacity: 0; }
+  50% { opacity: 1; }
+}
+@-webkit-keyframes fade2 { 
+  0%,100% { opacity: 0.25; }
+  37.5% { opacity: 1; }
+  87.5% { opacity: 0; }
+}
+@-webkit-keyframes fade3 { 
+  0%,100% { opacity: 0.5; }
+  25% { opacity: 1; }
+  75% { opacity: 0; }
+}
+@-webkit-keyframes fade4 { 
+  0%,100% { opacity: 0.75; }
+  12.5% { opacity: 1; }
+  62.5% { opacity: 0; }
+}
+@-webkit-keyframes fade5 { 
+  0%,100% { opacity: 1; }
+  50% { opacity: 0; }
+}
+@-webkit-keyframes fade6 { 
+  0%,100% { opacity: 0.75; }
+  37.5% { opacity: 0; }
+  87.5% { opacity: 1; }
+}
+@-webkit-keyframes fade7 { 
+  0%,100% { opacity: 0.5; }
+  25% { opacity: 0; }
+  75% { opacity: 1; }
+}
+@-webkit-keyframes fade8 { 
+  0%,100% { opacity: 0.25; }
+  12.5% { opacity: 0; }
+  62.5% { opacity: 1; }
+}
+@keyframes fade1 { 
+  0%,100% { opacity: 0; }
+  50% { opacity: 1; }
+}
+@keyframes fade2 { 
+  0%,100% { opacity: 0.25; }
+  37.5% { opacity: 1; }
+  87.5% { opacity: 0; }
+}
+@keyframes fade3 { 
+  0%,100% { opacity: 0.5; }
+  25% { opacity: 1; }
+  75% { opacity: 0; }
+}
+@keyframes fade4 { 
+  0%,100% { opacity: 0.75; }
+  12.5% { opacity: 1; }
+  62.5% { opacity: 0; }
+}
+@keyframes fade5 { 
+  0%,100% { opacity: 1; }
+  50% { opacity: 0; }
+}
+@keyframes fade6 { 
+  0%,100% { opacity: 0.75; }
+  37.5% { opacity: 0; }
+  87.5% { opacity: 1; }
+}
+@keyframes fade7 { 
+  0%,100% { opacity: 0.5; }
+  25% { opacity: 0; }
+  75% { opacity: 1; }
+}
+@keyframes fade8 { 
+  0%,100% { opacity: 0.25; }
+  12.5% { opacity: 0; }
+  62.5% { opacity: 1; }
+}
+#dot1 { animation: fade8 0.72s ease infinite; left: 0px; top: 2.09em; }
+#dot2 { animation: fade7 0.72s ease infinite; left: 0.61em; top: 0.61em; }
+#dot3 { animation: fade6 0.72s ease infinite; left: 2.09em; top: 0px; }
+#dot4 { animation: fade5 0.72s ease infinite; right: 0.61em; top: 0.61em; }
+#dot5 { animation: fade4 0.72s ease infinite; right: 0px; top: 2.09em; }
+#dot6 { animation: fade3 0.72s ease infinite; bottom: 0.61em; right: 0.61em; }
+#dot7 { animation: fade2 0.72s ease infinite; bottom: 0px; left: 2.09em; }
+#dot8 { animation: fade1 0.72s ease infinite; bottom: 0.61em; left: 0.61em; }
+.spinner.transitions .dot { animation: initial !important; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/circle.png) 50% 50% / 100% no-repeat; }
+.spinner.transitions.spin .loading-indicator { transition: transform 25s linear; transform: rotate(-7200deg); }
+.transitions #dot1 { opacity: 1; }
+.transitions #dot2 { opacity: 0.875; }
+.transitions #dot3 { opacity: 0.75; }
+.transitions #dot4 { opacity: 0.625; }
+.transitions #dot5 { opacity: 0.5; }
+.transitions #dot6 { opacity: 0.375; }
+.transitions #dot7 { opacity: 0.25; }
+.transitions #dot8 { opacity: 0.125; }
+.fallback-loading-indicator { color: rgb(241, 241, 241); display: none; font-size: 1.8em; margin: 2px auto 0px; text-align: center; }
+.scrollbar { height: 100%; position: absolute; top: 0px; width: 0.1em; background-color: rgba(255, 255, 255, 0.0980392); }
+.scrollbar .handle { position: absolute; width: 0.1em; background-color: rgb(241, 241, 241); }
+.application-message { color: rgb(241, 241, 241); font-size: 1.8em; position: absolute; text-align: center; text-shadow: rgb(0, 0, 0) 0.04em 0.04em; top: 50%; width: 100%; }
+.debug-watermark { color: rgb(14, 2, 2); display: none; font-size: 100%; left: 0px; padding: 1em; position: absolute; bottom: 0px; width: 70%; background-color: rgba(235, 49, 3, 0.701961); }
+.debug-watermark.visible { display: block; }
+.debug-console { color: rgb(255, 255, 255); height: 95%; overflow: scroll; padding: 1em; position: absolute; right: 0px; top: 0px; width: 40em; z-index: 1; background: rgba(0, 0, 0, 0.901961); }
+#player-controls .button, #player-controls .toggle-button { font-family: youtube-icons; speak: none; }
+.fps { position: absolute; right: 0px; bottom: 0px; text-align: center; padding-top: 0.3em; width: 5em; height: 1.7em; z-index: 100; background-color: rgb(0, 255, 0); }
+#html5-player-messages { display: none; }
+#button-list > .icon-player-more::before { content: ""; }
+.icon-player-play.toggle-selected::before { content: ""; }
+#loader { z-index: 1000; }
+.sliding-highlighter, .pivot-sliding-highlighter { box-shadow: rgba(153, 153, 153, 0.298039) 0px 0px 60px; display: none; height: 26em; position: absolute; width: 24em; background: white; }
+#settings-items .sliding-highlighter { height: 26.2em; width: 24.2em; }
+.horizontal-list.focused .sliding-highlighter, .video-uploads.focused .sliding-highlighter, #settings-items.focused .sliding-highlighter { display: block; }
+.video-uploads .sliding-highlighter { height: 20em; width: 18em; }
+.carousel .item:hover { cursor: pointer; background-color: rgb(90, 90, 90); }
+.feed-title.preview { color: rgb(241, 241, 241); font-size: 1.3em; height: 1.3em; opacity: 0.7; padding-bottom: 0.6em; padding-left: 1.9em; }
+.feed-title .unread-count { font-size: 0.6em; margin-left: 0.5em; padding: 0.05em 0.3em; position: relative; top: -0.265em; background-color: rgba(187, 0, 0, 0.901961); }
+.prev-feed { height: 3.6em; left: 4%; position: absolute; top: 5%; }
+.next-feed { height: 2em; left: 4%; position: absolute; top: 84%; }
+.tile { color: rgb(102, 102, 102); height: 26em; list-style: none; overflow: hidden; position: absolute; width: 24em; background-color: rgb(0, 0, 0); }
+.tile-focus-target { height: 0px; width: 0px; }
+.tile-top { height: 50%; width: 100%; background-color: rgb(0, 0, 0); }
+.channel-top { height: 62%; margin: 5.25% 16%; width: 68%; }
+.channel-top .video-thumb, .tile-top .video-thumb { height: 100%; background-color: rgb(37, 37, 37); background-size: 100%; background-position: 50% 50%; background-repeat: no-repeat; }
+.browse-header-avatar.preloaded, .tile-top .video-thumb.preloaded { background: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png) 50% 50% / auto no-repeat rgb(37, 37, 37); }
+.auto-play-tile { overflow: visible; }
+.post-play-title { font-size: 1.4em; overflow: hidden; position: absolute; text-overflow: ellipsis; text-shadow: rgb(0, 0, 0) 0.08em 0.08em; top: -1.8em; width: 15.5em; }
+.auto-play-tile .video-tile { top: 0px; }
+.auto-play-tile .default-title, .auto-play-tile .next-up-title { color: rgb(204, 204, 204); }
+.post-play-countdown { display: none; }
+.countdown-active .post-play-countdown { color: rgb(255, 255, 255); display: block; font-size: 5em; position: relative; text-align: center; text-shadow: rgb(0, 0, 0) 0.06em 0.06em; top: 14%; }
+.playlist-tile.focused, .playlist-tile.focused:hover, .auto-play-tile.focused .video-tile, .auto-play-tile.focused:hover .video-tile, .recent-search-tile.focused, .recent-search-tile.focused:hover, .video-tile.focused, .video-tile.focused:hover { background-color: rgb(241, 241, 241); }
+.item .overlay { display: none; }
+.playlist-tile .overlay, .video-tile .overlay { display: block; height: 53%; margin-left: 56%; margin-top: -57.5%; opacity: 0.8; width: 45%; background: rgb(0, 0, 0); }
+.playlist-tile.focused .overlay, .video-tile.focused .overlay { color: rgb(241, 241, 241); }
+.playlist-tile .overlay strong { font-size: 1.75em; font-weight: normal; }
+.playlist-tile .overlay .count, .video-tile .overlay .count { font-size: 1.5em; line-height: 1.2em; padding-top: 1.7em; text-align: center; }
+.playlist-tile .overlay .icon, .video-tile .overlay .icon { font-family: youtube-icons; font-size: 3em; height: 50%; overflow: hidden; padding: 0.2em; text-align: center; }
+.tile-bottom { height: 50%; padding: 0.25em 0px 0px 1em; width: 23em; }
+.channel-bottom { height: 25%; margin-top: 2.65em; width: 100%; }
+.channel-bottom .title, .tile-bottom .title { color: rgb(153, 153, 153); font-size: 1.7em; height: 2.45em; line-height: 1.25em; margin: 0.6em 0.6em 0px 0px; overflow: hidden; text-align: left; white-space: normal; }
+.channel-bottom .title { height: 1.2em; margin: 0px; padding: 0px 0.6em; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
+.tile.selected.focused .tile-bottom { color: rgb(34, 34, 34); }
+.tile.selected.focused .channel-bottom .details, .tile.selected.focused .tile-bottom .details { color: rgb(153, 153, 153); }
+.tile.selected.focused .channel-bottom .title, .tile.selected.focused .tile-bottom .title { color: rgb(68, 68, 68); }
+.channel-tile .channel-top .decoration { margin-top: -19%; text-align: right; width: 97%; }
+.video-tile .tile-top .decoration { margin-top: -2em; text-align: right; width: 97.3%; }
+.channel-top .badge, .tile-top .badge, .tile-top .duration { border-radius: 0.1em; color: rgb(255, 255, 255); display: inline-block; font-size: 1.4em; padding: 0em 0.1em; background: rgba(0, 0, 0, 0.701961); }
+.tile-top .badge, .tile-top .duration { text-transform: uppercase; }
+.tile-top .live-badge { border: 0px; color: rgb(255, 255, 255); background-color: rgba(230, 33, 23, 0.8); }
+.playlist-tile:hover, .video-tile:hover { background-color: rgb(34, 34, 34); }
+.channel-tile .details, .playlist-tile .details, .recent-search-tile .details, .video-tile .details { color: rgb(153, 153, 153); font-size: 1.3em; font-weight: 300; height: 40%; overflow: hidden; padding: 0px; white-space: normal; word-break: break-all; }
+.channel-tile .details { text-align: center; }
+.playlist-tile .details, .recent-search-tile .details, .video-tile .details { margin: 0.7em 0em 0em; }
+.custom-playlist-image-tile .tile-top .video-thumb { background-size: 56.25%; background-position-x: 0%; background-repeat: no-repeat; }
+.playlist-tile.focused .details, .recent-search-tile.focused .details, .video-tile.focused .details { color: rgb(102, 102, 102); }
+.playlist-tile .details .by, .recent-search-tile .results, .video-tile .details .by { height: 1.4em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
+.playlist-tile .details .views, .video-tile .details .views { display: inline-block; padding-right: 1.5em; }
+.playlist-tile .details .views:empty, .video-tile .details .views:empty { display: none; }
+.action-tile { border: 2px solid rgba(255, 255, 255, 0.0980392); color: rgb(255, 255, 255); height: 26em; overflow: visible; }
+.action-tile.focused, .channel-tile.focused { color: rgb(34, 34, 34); background-color: rgb(255, 255, 255); }
+.action-tile .content { height: 26em; white-space: normal; }
+.video-tile .live-start-time { display: inline-block; vertical-align: middle; }
+.tile-top .count-overlay { font-size: 1.4em; height: 100%; position: absolute; right: 0px; text-align: center; top: 0px; width: 30%; background: rgba(0, 0, 0, 0.74902); }
+.tile-top .count-overlay .video-count { display: block; font-size: 2.2em; font-weight: bold; line-height: 0.8em; margin-top: 1.6em; }
+.action-tile .title { font-size: 2.4em; height: 24%; overflow: hidden; padding-top: 0.5em; text-align: center; text-overflow: ellipsis; text-transform: uppercase; white-space: normal; }
+.action-tile .long-title { font-size: 2em; text-align: center; white-space: normal; }
+.action-tile .description, .action-tile .remote-pair-text, .action-tile .remote-reset-help { color: rgb(255, 255, 255); font-size: 1.4em; opacity: 0; padding: 0.5em; text-align: center; white-space: normal; }
+.action-tile.focused .description, .action-tile.focused .remote-pair-text, .action-tile.focused .remote-reset-help, .action-tile.focused .sign-out-username { opacity: 1; }
+.action-tile .sign-out-username { font-size: 1.7em; margin: 1em auto; overflow: hidden; text-align: center; text-overflow: ellipsis; white-space: nowrap; width: 80%; }
+.action-tile .remote-count { font-size: 0.4em; position: absolute; top: 40%; width: 100%; }
+.action-tile .remote-standing { display: inline-block; font-size: 1.4em; margin: 0.2em auto; padding: 0.8em 0.4em 0.1em; }
+.action-tile .remote-reset-help { height: 2.7em; }
+.action-tile .status { font-size: 2em; text-align: center; }
+.row-playing { display: none; }
+.action-tile .large-action-icon { font-family: youtube-icons; font-size: 11em; margin-top: 0px; text-align: center; width: 100%; }
+.action-tile .sign-out-user-icon { border-radius: 20em; height: 9em; margin: 0px auto; width: 9em; background-size: cover; }
+.action-tile .search-tile .description { font-size: 1.4em; margin-top: 2em; position: inherit; text-align: center; }
+.large-action-icon.icon-guide-history { font-size: 8em; margin-top: 0.2em; }
+.toggle-tile .icon { margin-top: 0px; }
+.toggle-tile .content .title { height: 12%; white-space: nowrap; }
+.toggle-tile .label { font-size: 1.8em; max-height: 13%; text-align: center; width: 100%; }
+.selected .icon-search, .tile.selected .icon-search-clear { color: rgb(34, 34, 34); }
+.exp-densityBrowse .horizontal-list > .content { font-size: 100%; }
+.exp-densityBrowse .horizontal-list .no-content-message { display: none; }
+.exp-densityBrowse .horizontal-list .pivot-sliding-highlighter { border: 0.5em solid rgb(255, 255, 255); box-shadow: rgb(0, 0, 0) 0.083em 0.083em 0.75em 0.167em inset; height: 7.5em; margin-left: -0.4em; margin-top: -0.4em; pointer-events: none; width: 13.8em; background: transparent; }
+.exp-densityBrowse .horizontal-list.focused .pivot-sliding-highlighter { display: block; }
+.exp-densityBrowse .horizontal-list.focused.channel-selected .pivot-sliding-highlighter { border-radius: 50%; height: 7.5em; transform: translateX(3.2em); width: 7.5em; }
+.exp-densityBrowse .browse-sets .action-tile, .exp-densityBrowse .horizontal-list .channel-tile, .exp-densityBrowse .horizontal-list .video-tile { height: 14em; width: 14em; }
+.exp-densityBrowse .shelf .horizontal-list .channel-tile, .exp-densityBrowse .shelf .horizontal-list .video-tile, .exp-densityBrowse .shelf .horizontal-list .channel-tile.selected, .exp-densityBrowse .shelf .horizontal-list .video-tile.selected { opacity: 0.5; }
+.exp-densityBrowse .shelf.selected .horizontal-list .channel-tile, .exp-densityBrowse .shelf.selected .horizontal-list .video-tile, .exp-densityBrowse .horizontal-list .channel-tile, .exp-densityBrowse .horizontal-list .video-tile { opacity: 0.7; }
+.exp-densityBrowse .shelf.selected .horizontal-list .channel-tile.selected, .exp-densityBrowse .shelf.selected .horizontal-list .video-tile.selected, .exp-densityBrowse .horizontal-list .channel-tile.selected, .exp-densityBrowse .horizontal-list .video-tile.selected, .exp-densityBrowse .horizontal-list .auto-play-tile.selected .video-tile, .limited-animation .exp-densityBrowse .shelf .horizontal-list .channel-tile, .limited-animation .exp-densityBrowse .shelf .horizontal-list .video-tile, .limited-animation .exp-densityBrowse .shelf .horizontal-list .channel-tile.selected, .limited-animation .exp-densityBrowse .shelf .horizontal-list .video-tile.selected, .limited-animation .exp-densityBrowse .shelf.selected .horizontal-list .channel-tile, .limited-animation .exp-densityBrowse .shelf.selected .horizontal-list .video-tile, .limited-animation .exp-densityBrowse .horizontal-list .channel-tile, .limited-animation .exp-densityBrowse .horizontal-list .video-tile { opacity: 1; }
+.exp-densityBrowse .horizontal-list .tile-top { height: 7.83em; }
+.exp-densityBrowse .channel-top .badge, .exp-densityBrowse .tile-top .badge { font-size: 1em; padding: 0.2em; }
+.exp-densityBrowse .horizontal-list .tile-bottom, .exp-densityBrowse .horizontal-list .channel-bottom { height: 4.25em; margin-top: 0.83em; padding: 0px; width: 100%; }
+.exp-densityBrowse .shelf .horizontal-list .tile-bottom, .exp-densityBrowse .shelf .horizontal-list .channel-bottom { display: none; }
+.exp-densityBrowse .shelf.selected .horizontal-list .tile-bottom, .exp-densityBrowse .shelf.selected .horizontal-list .channel-bottom { display: block; }
+.exp-densityBrowse .browse-sets .action-tile .description, .exp-densityBrowse .horizontal-list .tile-bottom .title, .exp-densityBrowse .horizontal-list .channel-bottom .title { font-size: 1.16em; height: initial; line-height: 1.25em; margin: 0px; max-height: 2.5em; text-overflow: ellipsis; }
+.exp-densityBrowse .horizontal-list .channel-bottom .title { white-space: normal; }
+.exp-densityBrowse .horizontal-list .video-tile .details { color: rgb(205, 205, 205); font-size: 0.83em; height: initial; margin: 0.4em 0px; }
+.exp-densityBrowse .horizontal-list .video-tile .tile-top .decoration { display: none; line-height: 1em; margin-top: 0px; transform: translateY(-100%); width: 100%; }
+.exp-densityBrowse #search .tile-top .decoration, .exp-densityBrowse #post-play-list .tile-top .decoration, .exp-densityBrowse .shelf.selected .horizontal-list .tile-top .decoration { display: block; }
+.exp-densityBrowse .horizontal-list .video-tile .tile-top .badge { border-radius: 0px; }
+.exp-densityBrowse .horizontal-list .video-tile .tile-top .duration { font-size: 1em; font-weight: bold; padding: 0.5em; background: rgba(0, 0, 0, 0.498039); }
+.exp-densityBrowse .horizontal-list .channel-bottom .details { display: none; }
+.exp-densityBrowse .horizontal-list .video-tile .details .views, .exp-densityBrowse .horizontal-list .video-tile .details .age { display: inline-block; }
+.exp-densityBrowse .horizontal-list .video-tile .details .views { padding-right: 0.5em; }
+.sets-ui .exp-densityBrowse .horizontal-list .channel-tile.selected .channel-bottom > .title, .sets-ui .exp-densityBrowse .horizontal-list .auto-play-tile.selected .tile-bottom > .title, .sets-ui .exp-densityBrowse .horizontal-list .video-tile.selected .tile-bottom > .title { color: rgb(255, 255, 255); }
+.exp-densityBrowse .video-tile .overlay { height: 7.83em; margin-left: 60%; margin-top: -7.83em; width: 40%; }
+.exp-densityBrowse .video-tile .overlay .count { font-size: 1em; line-height: 1em; padding-top: 1.5em; }
+.exp-densityBrowse .video-tile .overlay .icon { font-size: 2em; padding: 0px; }
+.exp-densityBrowse .horizontal-list .channel-top { height: 7.83em; margin: 0px auto; width: 7.83em; }
+.exp-densityBrowse .horizontal-list .channel-top .video-thumb { border-radius: 50%; }
+.exp-densityBrowse .browse-sets .shelf > .title { font-size: 1em; margin-bottom: 0.9em; margin-top: 0px; }
+.exp-densityBrowse .browse-sets .shelf > .title .main { font-size: 1.5em; }
+.exp-densityBrowse .browse-sets .shelf > .title .annotation { font-size: 1em; }
+.exp-densityBrowse .browse-sets .shelf > .title { color: rgb(205, 205, 205); }
+.engaged.exp-densityBrowse .channel-tile .voice-command, .engaged.exp-densityBrowse .video-tile .voice-command { font-size: 1em; line-height: 1em; margin-top: -2em; }
+.limited-animation.sets-ui .exp-densityBrowse .video-tile:hover:not(.focused), .limited-animation.sets-ui .exp-densityBrowse .channel-tile:hover:not(.focused), .sets-ui .exp-densityBrowse .carousel .item:hover, .sets-ui .exp-densityBrowse .carousel .auto-play-tile:hover, .sets-ui .exp-densityBrowse .carousel .channel-tile:hover { opacity: 1; background-color: inherit !important; }
+.exp-densityBrowse .browse-sets .action-tile { border: none; }
+.exp-densityBrowse .browse-sets .action-tile .content { height: 7.83em; margin-bottom: 0.83em; }
+.exp-densityBrowse .browse-sets .action-tile .title { display: none; }
+.exp-densityBrowse .browse-sets .action-tile .large-action-icon { color: rgb(255, 255, 255); font-size: 6em; height: 1.3em; line-height: 1.3em; background-color: rgb(35, 35, 35); }
+.exp-densityBrowse .browse-sets .action-tile .description { opacity: inherit; padding: 0px; }
+.exp-densityBrowse .auto-play-tile { height: 14em; width: 14em; }
+.exp-densityBrowse .post-play-countdown { top: 7%; }
+.limited-animation .exp-densityBrowse .browse-content .list { margin-left: -7.5em; width: inherit; }
+.limited-animation .exp-densityBrowse .browse-content .shelf > .title { margin-left: 7.5em; }
+.limited-animation .exp-densityBrowse .browse-content .list .shelf:nth-child(1) { margin-bottom: 6.5em; }
+.limited-animation .exp-densityBrowse .browse-content .list .shelf { margin-bottom: -0.1em; }
+.limited-animation.sets-ui .exp-densityBrowse .channel-tile:not(.focused), .limited-animation.sets-ui .exp-densityBrowse .video-tile:not(.focused) { background-color: inherit; }
+.limited-animation .exp-densityBrowse .channel-tile.focused, .limited-animation .exp-densityBrowse .video-tile.focused { background-color: inherit; }
+.limited-animation .exp-densityBrowse .video-tile { margin-right: 0.5em; }
+.limited-animation .exp-densityBrowse .video-tile .overlay { height: 7.03em; margin-left: 8em; margin-top: -7.43em; width: 5.6em; }
+.limited-animation .exp-densityBrowse .video-tile .tile-top { height: 7.03em; padding: 0.4em; width: 13.2em; background: inherit; }
+.limited-animation .exp-densityBrowse .channel-tile { margin-right: 0.5em; }
+.limited-animation .exp-densityBrowse .channel-tile .channel-top { height: 6.83em; padding: 0.4em; width: 6.83em; }
+.limited-animation .exp-densityBrowse .video-tile.focused .tile-top { background: rgb(255, 255, 255); }
+.limited-animation .exp-densityBrowse .channel-tile.focused .channel-top { border-radius: 50%; background: rgb(255, 255, 255); }
+.limited-animation .exp-densityBrowse .search .placeholder-tile, .limited-animation .exp-densityBrowse .browse-content .list .placeholder-tile { height: 14em; margin-right: 0.5em; width: 14em; }
+#dialog.remote-reset-dialog > .title { font-size: 3em; padding-bottom: 0.5em; }
+#dialog.remote-reset-dialog .buttons { bottom: 0.5em; position: absolute; }
+#dialog.remote-reset-dialog { left: 0px; position: absolute; white-space: normal; }
+.remote-reset-dialog #dialog-view { color: rgb(170, 170, 170); font-size: 1.8em; padding-top: 0.5em; }
+.connection-instructions { padding-top: 0.5em; font-size: 2em; }
+.text-dialog .connection-instructions { font-size: 1.3em; }
+.browse-sets-state .login-dialog { margin-top: 5em; }
+#search .pairing .pairing-content > *, #dialog .pairing .pairing-content > * { display: inline-block; }
+#search .pairing .pairing-content .step2, #dialog .pairing .pairing-content .step2 { display: block; }
+#search .dial-upsell .connection-steps .no-dial-connect-step1, #search .manual-connect .connection-steps .with-dial-connect-step1 { display: none; }
+.connection-instructions .step1, .connection-instructions .step2, .qr-code .scan, .pairing .connected-header, .remote-reset-dialog .connected-header { color: rgb(170, 170, 170); font-size: 0.7em; }
+.connection-instructions .pair-url, .connection-instructions .pair-code { color: rgb(241, 241, 241); }
+.connection-instructions .step2 { margin-top: 2em; }
+.pairing .qr-code, .pairing .connected-list { display: inline-block; margin-left: 1em; vertical-align: top; }
+.pairing .dial-upsell { color: rgb(170, 170, 170); display: inline-block; font-size: 95%; overflow: hidden; padding-left: 2em; padding-top: 0.8em; text-align: initial; vertical-align: top; white-space: normal; width: 16em; }
+.pairing .cast-icon { display: inline-block; height: 1em; margin: 0.1em 0.3em; vertical-align: middle; width: 1em; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/cast_disconnected_blue.png) 50% 50% / contain no-repeat; }
+.pairing .qr-code .scan { margin-bottom: 0.5em; white-space: normal; width: 5em; }
+.pairing .qr-code img { height: 5.1em; width: 5.1em; }
+.pairing .icon-settings-pair, .login-dialog .icon-settings-pair { display: inline-block; font-style: normal; font-variant: normal; font-weight: normal; font-stretch: normal; font-size: 5em; line-height: normal; font-family: youtube-icons; height: 1em; margin-top: 0.1em; width: 1.4em; background-image: none; }
+.remote-reset-dialog .connected-header, .pairing .connected-header { margin-bottom: 0.3em; }
+.remote-reset-dialog .devices, .pairing .devices { list-style: none; font-size: 1.5em; color: rgb(241, 241, 241); }
+.remote-reset-dialog .devices > div, .pairing .devices > div { display: block; height: 1.5em; line-height: 1.5em; overflow: hidden; padding-left: 1.5em; text-overflow: ellipsis; white-space: nowrap; width: 11.5em; }
+.remote-reset-dialog .devices .connected::before { background-position: 0px 100%; }
+.remote-reset-dialog .devices .connected { color: rgb(241, 241, 241); }
+#search { bottom: 0px; color: rgb(241, 241, 241); left: 0px; overflow: hidden; position: absolute; right: 0px; text-align: center; top: 0px; }
+.watch-state #search { left: 0px; }
+#search > .controls { left: 8em; margin-right: 18em; position: absolute; right: 2.5em; text-align: left; top: 2.5em; }
+#search-text-box { font-size: 1.6em; height: 100%; margin: 0px auto; overflow: hidden; position: relative; background-color: rgb(225, 225, 225); }
+#search-text-box > .icon-search { display: none; }
+#search-input { border: none; color: rgb(17, 17, 17); height: 100%; padding-left: 0.5em; width: 100%; background: none; }
+#search-input:disabled { color: rgb(17, 17, 17); }
+#search-query { color: rgb(17, 17, 17); height: 100%; overflow: hidden; padding-left: 0.5em; padding-top: 0.3em; position: absolute; text-overflow: ellipsis; white-space: pre; width: 95%; }
+#search-suggestions { font-size: 1.2em; position: relative; display: inline-block; left: 0px; width: 100%; }
+.search-state #spinner { top: 26em; }
+#suggest-list { overflow: hidden; }
+#suggest-list > div { border-radius: 1px; color: rgb(225, 225, 225); display: inline-block; padding: 0.2em 0.5em; }
+#search-keyboard { font-size: 1em; text-align: left; width: 65%; }
+#search-suggestions, #search-keyboard, #letter-suggest { white-space: nowrap; }
+#search-keyboard, #letter-suggest { z-index: 1; }
+#keyboard-grid { display: inline-block; font-size: 1.6em; margin: 0px auto; overflow: hidden; text-align: left; }
+#keyboard-grid, #keyboard-spacebar { color: rgb(163, 163, 163); }
+#keyboard-grid .button { border-radius: 1px; display: inline-block; margin: 0.3em 0.6em 0.3em 0px; padding: 0px 0.1em; text-align: center; text-transform: uppercase; width: 1em; vertical-align: top; }
+#keyboard-grid .list { text-align: left; text-shadow: none; }
+#search-keyboard #keyboard-grid .icon-key-delete.button { font-family: youtube-icons; font-size: 0.7em; line-height: 1.2em; margin-left: 2.25em; padding: 0.25em; width: 2.25em; }
+#keyboard-spacebar { border-radius: 1px; display: inline-block; font-family: youtube-icons; font-size: 1.44em; margin: 0.1em 7em 0px 2.1em; padding: 0.1em; text-align: left; }
+#search-keyboard #keyboard-grid .clear-query-tile.button { font-size: 0.7em; margin-left: 2.25em; padding: 0.25em; text-transform: uppercase; width: auto; }
+#keyboard-grid .icon-key-globe { font-family: youtube-icons; margin: 0.25em 0px 0.25em 1.6em; padding: 0.1em; width: 1.2em; }
+#search-keyboard .button.focused { color: rgb(33, 33, 33); background-color: rgb(225, 225, 225); }
+#letter-suggest { font-size: 1.6em; position: fixed; text-align: center; width: 1.2em; }
+.letter-suggest-visible #keyboard-grid .list.selected .button.selected:not(.focused) { color: rgb(0, 0, 0); text-shadow: none; background-color: rgba(153, 153, 153, 0.85098); }
+#keyboard-grid .button.numbers-toggle-tile { font-size: 0.75em; padding: 0.22em; margin: 0.25em 0px 0px 2.1em; width: auto; }
+#search .pairing .icon-settings-pair { display: none; }
+#search .search-message { display: inline-block; margin-left: 2em; margin-top: 1.5em; vertical-align: top; white-space: normal; width: 50%; }
+#search .search-pairing { bottom: 0px; display: inline-block; left: 5em; padding: 2em 2.5em 4em; position: absolute; text-align: left; text-shadow: black -1px 1px 2px; width: 100%; background-color: rgba(0, 0, 0, 0.298039); }
+.limited-animation #search .search-pairing { background-color: rgb(0, 0, 0); }
+#search .search-pairing .search-img { display: inline-block; height: 11em; width: 11em; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/pair_promo.png); background-size: cover; }
+#search .search-pairing .title { font-size: 1.9em; }
+#search .search-pairing .connection-instructions { font-size: 1.6em; }
+#search .search-pairing .dial-upsell-content { color: rgb(170, 170, 170); }
+#search .search-pairing .manual-connect-content .connection-steps { padding: 0px; }
+#search .search-pairing .manual-connect-content .connection-steps .pair-code, #search .search-pairing .manual-connect-content .connection-steps .pair-url { display: block; }
+#search .search-pairing .manual-connect-content .connection-steps .step2 { margin-top: 1em; }
+#search .search-pairing .manual-connect-content .connection-steps .label, #search .search-pairing .manual-connect .dial-upsell-content, #search .search-pairing .dial-upsell .manual-connect-content { display: none; }
+#search .pairing .no-dial-connect-step1, #search .pairing .no-dial-connect-step2 { display: inline-block; }
+#search .pairing .no-dial-connect-step2 { margin-left: 2em; }
+#search .pairing .connection-steps { text-align: left; }
+#search .pairing .connected-list, #search .pairing .qr-code-wrapper { display: none; }
+#search.hide-input .search-pairing { margin-top: 8em; }
+#letter-suggest div { color: rgba(0, 0, 0, 0.8); height: 1.4em; text-shadow: none; background-color: rgba(153, 153, 153, 0.85098); }
+#letter-suggest .focused { color: rgb(241, 241, 241); }
+#transliteration-container { display: none; }
+#search-keyboard.transliterable #transliteration-container { display: block; }
+#transliteration .list { font-size: 2em; height: 1.2em; margin: 0px auto; overflow: hidden; padding: 0.2em 0px; text-align: center; width: 77%; }
+#transliteration .list > div { display: inline; padding: 0px 0.5em; position: relative; }
+#suggest-list > div.focused, #transliteration .list .focused { color: rgb(33, 33, 33); background-color: rgb(254, 254, 254); }
+#transliteration .button:hover { background-color: rgba(153, 153, 153, 0.4); }
+#transliteration .button:hover, #search-keyboard .button:hover { cursor: pointer; }
+#search .horizontal-list > .content { text-align: left; }
+.limited-animation.sets-ui #search .horizontal-list > .content { margin-left: -21.8em; width: 126em; }
+#search .horizontal-list { left: 7.5em; height: inherit; position: absolute; right: 0px; top: 38%; transform: translateY(7.5em); transition: opacity 0.25s, transform 0.25s; width: initial; }
+#search.input-collapsed .horizontal-list { transform: none !important; }
+#search-keyboard { transition: opacity 0.25s, transform 0.25s; transform-origin: 50% top 0px; }
+#search-keyboard.hidden { opacity: 0; transform: scaleY(0.5); display: block !important; }
+#search #search-text-entry { height: 2.4em; }
+#search #search-suggestions, #search #search-text-entry { padding-top: 0.25em; transform-origin: 50% top 0px; transition: opacity 0.25s, transform 0.25s; background-color: rgba(0, 0, 0, 0); }
+.limited-animation #search .horizontal-list, .limited-animation #search #search-suggestions, .limited-animation #search #search-text-entry, .limited-animation #search #search-keyboard { transition: none; }
+#search-text-entry { padding-bottom: 0.4em; }
+#search-text-entry, #text-box-background { height: 3em; }
+#keyboard-icon { display: none; font-family: youtube-icons; font-size: 1.2em; padding-bottom: 0.4em; text-align: center; vertical-align: bottom; width: 2em; }
+.input-collapsed #keyboard-icon { display: inline-block; }
+#search-text-entry .suggestions-container { white-space: nowrap; overflow: hidden; height: 2.4em; }
+.exp-densityBrowse #search .horizontal-list { font-size: 100%; height: 14em; top: 35%; transform: translateY(8em); }
+.limited-animation .exp-densityBrowse #search .horizontal-list .list { margin-left: -14em; }
+.exp-densityBrowse #search .horizontal-list .video-tile { height: 14em; }
+.exp-densityBrowse #search .horizontal-list .video-tile .details .views, .exp-densityBrowse #search .horizontal-list .video-tile .details .age { display: inline-block; }
+.exp-densityBrowse #search .horizontal-list .video-tile .details .views { padding-right: 0.5em; }
+.limited-animation.sets-ui .exp-densityBrowse #search .horizontal-list > .content { margin-left: 0px; width: inherit; }
+#player { height: 100%; width: 100%; }
+.watch-state #watch { display: block; }
+.veryvibrant #watch { height: 100%; background-color: rgb(0, 0, 0); }
+#player-facade { height: 100%; position: absolute; width: 100%; }
+#player-video { height: 100%; }
+#watch, .dialog-focused .standard-caption-window, #caption-window-99, .countdowntimer, .ytp-cued-icon, .ytp-fallback, .html5-context-menu, .html5-dialog-holder, .html5-endscreen, .html5-info-bar, .html5-modal-panel, .html5-player-chrome, .html5-show-video-info-template, .html5-storyboard, .html5-text-button, .html5-video-player .hid, .html5-ypc-module, .player-actions-container, .video-ad-status-bar, .video-annotations, .html5-watermark, .video-fallback-content, .video-ads, .title-card.hidden { display: none; }
+.html5-video-player { overflow: visible; }
+.html5-video-info-panel { color: rgb(241, 241, 241); display: none; margin: 20%; position: absolute; top: 0px; z-index: 1; background-color: rgba(0, 0, 0, 0.701961); }
+.html5-video-info-panel-close { display: none; }
+.html5-video-info-panel-content > div > div { display: inline-block; font-weight: bold; padding: 0px 0.5em; text-align: right; width: 10em; }
+.ad-video { width: 100%; height: 100%; }
+.ad-showing .video-ads { display: block; overflow: hidden; }
+.ad-interrupting.tag-pool-enabled .html5-main-video { position: absolute; left: -1px; top: -1px; overflow: hidden; width: 1px !important; height: 1px !important; }
+.html5-video-player .video-stream { position: absolute; top: 0px; left: 0px; display: block; }
+.opera .video-stream { height: 720px; width: 1280px; }
+.advertisement-info, .skip-ad-button { position: absolute; top: 9.5em; }
+.advertisement-info { left: 12.5%; text-align: left; width: 30%; overflow: hidden; }
+.advertisement-info-top { height: 3em; }
+.advertisement-avatar { width: 3em; height: 3em; display: inline-block; margin-right: 0.4em; background-size: contain; background-position: 100% 50%; background-repeat: no-repeat; }
+.advertisement-info-details { display: inline-block; vertical-align: top; width: 79%; }
+.advertisement-title, .advertisement-advertiser, .third-party { color: rgb(255, 255, 255); text-shadow: rgb(0, 0, 0) 2px 1px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
+.third-party { position: absolute; bottom: 0px; }
+.advertisement-title { font-size: 1.4em; line-height: 1em; height: 1.1em; }
+.advertisement-advertiser { font-size: 1.1em; line-height: 1.3em; height: 1.4em; }
+.advertisement-info .ad-badge { padding: 1px 5px; text-shadow: none; border-radius: 0.15em; font-size: 0.9em; text-transform: capitalize; background-color: rgb(230, 188, 39); }
+.skip-ad-button { right: 12.5%; border-radius: 0.15em; padding: 0.6em; background-color: rgba(0, 0, 0, 0.4); }
+.canskip.mdx-skip.skip-ad-button { height: 4em; width: 18em; }
+.canskip.mdx-skip .skip-button-text { font-size: 1.1em; height: 3em; left: 2em; line-height: 1.5em; position: absolute; top: 0.7em; width: 75%; }
+#transport-controls.ad-active .player-controls #button-list div.skip-ad-button .label, .skip-ad-button .label { font-size: 1.1em; padding: 0px 1.4em; height: 2.5em; line-height: 2.5em; border-radius: 0.12em; cursor: pointer; color: rgb(225, 225, 225); background-color: rgba(0, 0, 0, 0); }
+.skip-ad-button.canskip.mdx-skip .label { height: 3.7em; }
+#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip:hover .label, .skip-ad-button.canskip:hover .label { color: rgb(33, 33, 33); border-radius: 0.12em; background-color: rgb(255, 255, 255); }
+#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip.focused .label, .skip-ad-button.canskip.focused .label { color: rgb(33, 33, 33); border-radius: 0.12em; background-color: rgb(225, 225, 225); }
+.skip-ad-button .skip-symbol { display: none; font-family: youtube-icons; }
+.skip-ad-button.canskip .skip-symbol.icon-player-next { display: inline; font-size: 1.3em; margin-left: 0.5em; vertical-align: middle; }
+.exp-newMdxSkipButtonCast .canskip.mdx-skip.skip-ad-button .skip-symbol.icon-cast_on { display: inline; font-size: 2.5em; position: absolute; right: 0.7em; text-align: right; top: 0.5em; width: 25%; }
+.exp-newMdxSkipButtonPair .canskip.mdx-skip.skip-ad-button .skip-symbol.icon-settings-pair { display: inline; font-size: 4em; position: absolute; right: 0.4em; text-align: right; top: 0.3em; width: 25%; }
+.canskip.mdx-skip.skip-ad-button .skip-symbol.icon-player-next { display: none; }
+#player-controls { text-align: center; }
+#bottom-half { bottom: 0px; height: 50%; position: absolute; width: 100%; }
+#transport-controls { bottom: 0px; height: 100%; position: absolute; transition: transform 0.25s, opacity 0.25s; width: 100%; background: linear-gradient(rgba(0, 0, 0, 0), rgb(0, 0, 0)); }
+#transport-controls.hidden { opacity: 0; display: block !important; }
+.limited-animation #transport-controls.hidden { display: none !important; }
+#transport-controls, #transport-controls.focused { display: block; }
+.player-controls-widget { border: 0px; margin-top: 8.4em; }
+.fresh-transport-controls.seeking-forward .seeking-icon.icon-player-rew::before { content: ""; }
+.seeking-icon { bottom: 3em; color: rgb(255, 255, 255); display: none; position: absolute; left: 0px; margin: 0px auto; right: 0px; }
+.seeking-icon span { display: none; }
+.fresh-watch.watch-seeking .seeking-icon { display: block; }
+.fresh-watch .title-card { height: 35.9%; background: linear-gradient(rgba(0, 0, 0, 0.74902), transparent); }
+#transport-controls.fresh-transport-controls { background: linear-gradient(to top, rgb(0, 0, 0), transparent); }
+.fresh-watch .player-video-title { color: rgb(255, 255, 255); font-size: 1.936em; }
+.fresh-watch .player-meta .player-video-details { color: rgba(255, 255, 255, 0.701961); font-size: 1.455em; }
+.fresh-watch .pivot-shelf-list { margin-top: 14.5em; padding-left: 3.871em; }
+#fresh-rows-container { border: 0px; color: rgb(255, 255, 255); margin-top: 7.7em; }
+.fresh-transport-controls .storyboards { position: absolute; }
+.fresh-transport-controls .more-row, .fresh-transport-controls .main-row { margin-left: 5%; width: 95%; }
+.fresh-transport-controls .button span, .fresh-transport-controls .toggle-button span { display: none; font-family: roboto-regular; color: rgb(255, 255, 255); }
+.lang-case-sensitive .fresh-transport-controls span::first-letter { text-transform: uppercase; }
+.fresh-transport-controls .button.disabled:hover, .fresh-transport-controls .toggle-button.disabled:hover { background-color: transparent; }
+.fresh-transport-controls .button.disabled, .fresh-transport-controls .toggle-button.disabled { opacity: 0.45; }
+.fresh-transport-controls .button.focused, .fresh-transport-controls .toggle-button.focused, .fresh-transport-controls .button:hover, .fresh-transport-controls .toggle-button:hover { color: rgb(255, 255, 255); background-color: rgba(255, 255, 255, 0.498039); }
+.fresh-transport-controls .button, .fresh-transport-controls .toggle-button, .seeking-icon { border-radius: 4px; font-family: youtube-icons; font-size: 1.4em; height: 1em; padding: 0.55em; speak: none; text-align: center; width: 1em; }
+.fresh-transport-controls .button, .fresh-transport-controls .toggle-button { color: rgba(255, 255, 255, 0.701961); cursor: pointer; display: inline-block; position: relative; }
+.fresh-transport-controls #transport-more-button::before { display: inline-block; left: 19%; position: absolute; top: -9%; }
+.fresh-transport-controls #transport-more-button { font-size: 2em; height: 0.7em; margin-right: 1.452em; padding: 0.385em; width: 0.7em; }
+.fresh-transport-controls #transport-more-button span { color: rgb(255, 255, 255); display: inline-block; font-size: 0.485em; left: 4.5em; position: absolute; text-align: left; top: 1em; width: 15em; }
+.fresh-transport-controls #transport-more-button.top-row-active span { display: none; }
+.fresh-transport-controls #transport-more-options-list { display: inline-block; }
+.fresh-transport-controls .progress-bar { display: inline-block; height: 3em; left: 0px; padding: 0px; position: relative; top: 0px; width: 76.55%; }
+.fresh-transport-controls.live-playback #play-pause-button { margin-right: 1em; }
+.fresh-transport-controls.live-playback .progress-bar { width: 77.55%; }
+.fresh-transport-controls.live-playback .live-indicator { display: inline-block; left: 0px; margin-left: 1em; position: relative; top: 0px; }
+.fresh-transport-controls #player-time-elapsed, .fresh-transport-controls .player-time-total { color: rgb(255, 255, 255); display: inline-block; font-size: 1.3em; position: relative; text-align: center; top: 0px; width: 8%; }
+.fresh-transport-controls .more-row { margin-bottom: 5px; }
+.fresh-transport-controls .more-row .button, .fresh-transport-controls .more-row .toggle-button { margin-right: 2.075em; vertical-align: top; }
+.fresh-transport-controls .icon-like.toggle-selected, .fresh-transport-controls .icon-dislike.toggle-selected, .fresh-transport-controls .icon-player-closedcaptions.toggle-selected { color: rgb(39, 147, 230); }
+.fresh-transport-controls .icon-logo-lozenge.toggle-selected { color: rgb(255, 0, 0); }
+.fresh-transport-controls .more-row .button span, .fresh-transport-controls .more-row .toggle-button span { font-size: 0.692em; left: -3.45em; position: relative; top: -4.4em; width: 8.3em; }
+.fresh-transport-controls .more-row .button.focused span, .fresh-transport-controls .more-row .toggle-button.focused span, .fresh-transport-controls .more-row .button:hover span, .fresh-transport-controls .more-row .toggle-button:hover span { display: inline-block; }
+.fresh-transport-controls .progress-bar .progress-bar-line div { height: 0.242em; }
+.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-background { background-color: rgba(255, 255, 255, 0.45098); }
+.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-loaded { background-color: rgb(255, 255, 255); }
+.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-played { background-color: rgb(223, 35, 35); }
+.fresh-transport-controls .progress-bar.ad-active .progress-bar-played { background-color: rgb(231, 189, 0); }
+.ypc-playback .fresh-transport-controls .progress-bar-line .progress-bar-played { background-color: rgb(39, 147, 230); }
+.fresh-watch .ad-point-separator, .fresh-transport-controls .progress-bar .progress-bar-disc, .fresh-transport-controls.ad-active #player-time-elapsed, .fresh-transport-controls.ad-active .player-time-total { display: none; }
+.fresh-transport-controls.ad-active .progress-bar { padding-left: 1em; width: 88%; }
+.fresh-transport-controls.ad-active .more-row, .fresh-watch.watch-seeking .more-row { visibility: hidden; }
+.fresh-watch .skip-ad-button, .fresh-watch .advertisement-info { top: 6.7em; }
+.fresh-watch .advertisement-info { left: 5%; }
+.fresh-watch .advertisement-info .advertisement-info-top { height: 3.065em; position: relative; }
+.fresh-watch .skip-ad-button { border-radius: 4px; padding: 0px; right: 6%; z-index: 1; background-color: rgba(0, 0, 0, 0.498039); }
+.fresh-watch .skip-ad-button .label { color: rgb(255, 255, 255); font-size: 1.13em; height: 2.57em; line-height: 2.57em; padding: 0px 1.3em; }
+.fresh-watch .skip-ad-button .skip-symbol { font-size: 1.1em; }
+.fresh-watch .skip-ad-button.canskip:hover, .fresh-watch .skip-ad-button.canskip.focused { background-color: rgba(255, 255, 255, 0.498039); }
+.fresh-watch .skip-ad-button.canskip:hover .label, .fresh-watch .skip-ad-button.canskip.focused .label { color: rgb(255, 255, 255); background: none; }
+.fresh-watch .advertisement-info { color: rgb(255, 255, 255); }
+.fresh-watch .advertisement-info .advertisement-advertiser { font-size: 100%; height: 1.4em; line-height: 1.3em; }
+.fresh-watch .advertisement-info .advertisement-advertiser > span { vertical-align: bottom; }
+.fresh-watch .advertisement-info .advertisement-advertiser, .fresh-watch .advertisement-info .advertisement-title, .fresh-watch .advertisement-info .third-party { overflow: hidden; text-shadow: none; text-overflow: ellipsis; white-space: nowrap; }
+.fresh-watch .advertisement-info .third-party { bottom: 0px; position: absolute; vertical-align: top; width: 79%; }
+.fresh-watch .advertisement-info .third-party > span { vertical-align: middle; }
+.fresh-watch .advertisement-info .advertisement-title { font-size: 1.35em; font-weight: bold; line-height: 1em; height: 1.1em; padding-bottom: 1%; text-shadow: none; }
+.fresh-watch .advertisement-info .ad-badge { border-radius: 0.15em; font-size: 0.85em; font-weight: bold; padding: 1px 7px; text-shadow: none; text-transform: capitalize; background-color: rgb(231, 189, 0); }
+.fresh-watch .advertisement-info .remaining-duration, .fresh-watch .advertisement-info .ad-by { font-size: 1.13em; }
+.fresh-watch .advertisement-info .remaining-duration { padding: 0px 2%; }
+.fresh-watch .advertisement-info .advertisement-avatar { border-radius: 50%; display: inline-block; height: 3.065em; margin-right: 1.4em; width: 3.065em; background-size: contain; background-repeat: no-repeat; }
+.title-card { display: block; height: 25%; position: absolute; top: 0px; transition: transform 0.25s, opacity 0.25s; width: 100%; background: linear-gradient(rgba(0, 0, 0, 0.901961), rgba(0, 0, 0, 0.8), transparent); }
+.ypc-playback .title-card { height: 30%; }
+.title-card.hidden { opacity: 0; display: block !important; }
+.limited-animation .title-card.hidden { display: none !important; }
+.title-card .badges span { border: 1px solid rgb(221, 221, 221); border-radius: 2px; display: inline-block; font-size: 0.9em; margin-left: 1em; padding: 0px 0.5em; text-transform: uppercase; vertical-align: middle; }
+.title-card .badges span.live-badge { color: rgb(255, 255, 255); border: 0px; margin-left: 0px; background-color: rgba(230, 33, 23, 0.8); }
+.selected-title .views { margin-top: -0.6em; }
+.player-meta { color: rgb(241, 241, 241); margin: 2.6em 0px 0px 3.5em; white-space: nowrap; width: 90%; }
+.player-meta .user-details { position: absolute; right: 5%; }
+.player-meta .user-details > div { display: inline-block; vertical-align: top; }
+.player-meta .user-details .avatar { height: 4em; width: 4em; background-size: cover; }
+.player-meta .user-details .message { font-size: 80%; margin: 0.2em 1em 0px 1.1em; max-width: 50%; overflow: hidden; text-overflow: ellipsis; }
+.player-meta .player-video-text { display: inline-block; padding-left: 1.5em; width: 90%; }
+.player-meta .player-video-details { font-size: 1.5em; white-space: initial; }
+.player-meta .player-video-details > div { margin: 0.2em 1em 0px 0px; vertical-align: top; }
+.player-meta .player-video-details .username { max-width: 45%; overflow: hidden; text-overflow: ellipsis; }
+.player-meta .player-video-details .set-context { max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
+.player-meta .player-video-details .set-context, .player-meta .player-video-details .set-context-position, .player-meta .player-video-details .uploaded-date, .player-meta .player-video-details .view-count, .player-meta .player-video-details .badges, .player-meta .player-video-details .username { display: inline-block; }
+.player-video-avatar { border-radius: 50%; display: inline-block; height: 5.5em; vertical-align: top; width: 5.5em; background-size: contain; }
+.player-video-title { font-size: 2.4em; margin: -0.1em 0px 0px; overflow: hidden; text-overflow: ellipsis; }
+.quality-status { display: none; padding-top: 0.2em; }
+.title-tray-inflated .quality-status { display: inline-block; }
+.quality-status-hd-badge { border-radius: 2px; color: rgb(65, 65, 65); font-size: 0.6em; font-weight: bold; padding: 0.125em 0.5em; background: rgb(241, 241, 241); }
+.ypc-preview { display: none; }
+.ypc-playback .ypc-preview { display: block; }
+.player-controls #button-list .focused, .player-controls #button-list div:hover { border-radius: 0.05em; color: rgb(0, 0, 0); }
+.player-controls #button-list .focused { background-color: rgb(255, 255, 255); }
+.player-controls #button-list div:hover { background-color: rgb(157, 148, 149); }
+.player-controls #button-list .button, .player-controls #button-list .toggle-button { display: inline-block; font-size: 1.4em; height: 1.3em; margin: 1em; padding-bottom: 0.4em; padding-top: 0.8em; top: 0px; width: 2.3em; }
+.player-controls #button-list .button span, .player-controls #button-list .toggle-button span { font-family: roboto-regular; font-size: 0.7em; left: -10%; margin: 0.5em 0px 0px; width: 120%; height: 120%; }
+.player-controls #button-list .button.spacer { visibility: hidden; cursor: auto; }
+#transport-controls.focused .player-controls #button-list div { color: rgb(255, 255, 255); }
+#transport-controls.focused .player-controls #button-list .focused { color: rgb(34, 34, 34); }
+.player-controls #button-list div { color: rgb(170, 170, 170); cursor: pointer; vertical-align: middle; }
+#transport-controls.ad-active .player-controls #button-list div.disabled { visibility: hidden; }
+#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.disabled { visibility: visible; opacity: 1; }
+.player-controls #button-list div.disabled:hover { color: rgb(255, 255, 255); background-color: transparent; }
+.player-controls #button-list div.focused { opacity: 1; }
+.player-controls #button-list div.disabled { opacity: 0.2; }
+.player-controls #button-list .icon-player-closedcaptions.toggle-selected, .player-controls #button-list .icon-like.toggle-selected, .player-controls #button-list .icon-dislike.toggle-selected { color: rgb(39, 147, 230) !important; }
+.player-controls #button-list .icon-logo-lozenge.toggle-selected { color: rgb(255, 0, 0) !important; }
+#transport-controls .player-controls #button-list div.icon-player-more, #transport-controls .player-controls #button-list div.icon-player-less { color: rgb(133, 133, 133); }
+.player-controls .toggle-button span, .player-controls .button span, .player-controls .toggle-button.disabled span, .player-controls .button.disabled span { display: none; margin-top: 1em; color: rgb(255, 255, 255); font-size: 0.75em; padding: 0px; position: relative; text-align: center; top: 1em; width: 100%; }
+.lang-case-sensitive .player-controls .button span::first-letter, .lang-case-sensitive .player-controls .toggle-button span::first-letter { text-transform: uppercase; }
+#transport-controls.focused, .player-controls .toggle-button.focused span, .player-controls div:hover.toggle-button span, .player-controls .button.focused span, .player-controls div:hover.button span { display: block; }
+.player-seekbar { position: relative; }
+.progress-bar { height: 4em; left: 11%; position: absolute; top: -9em; width: 75%; padding: 0px 1.5%; }
+.progress-bar .progress-bar-playhead, .progress-bar .progress-bar-line { top: 2.5em; }
+.progress-bar .progress-bar-line { position: relative; width: 100%; }
+.progress-bar .progress-bar-line div { height: 2px; position: absolute; }
+.progress-bar .progress-bar-playhead { height: 2px; position: relative; width: 100%; }
+.progress-bar .progress-bar-line .progress-bar-background { width: 100%; background-color: rgb(91, 91, 91); }
+.progress-bar .progress-bar-line .progress-bar-played { background-color: rgb(227, 44, 41); }
+.progress-bar .progress-bar-line .progress-bar-loaded { background-color: rgb(153, 153, 153); }
+.ypc-playback .progress-bar-line .progress-bar-played { background-color: rgb(39, 147, 230); }
+.progress-bar .progress-bar-disc { border-radius: 50%; height: 0.6em; margin: -0.25em 0px 0px -0.25em; position: absolute; width: 0.6em; background-color: rgb(204, 204, 204); }
+.progress-bar .cue-range-markers { height: 100%; position: absolute; width: 100%; }
+.progress-bar-disc { pointer-events: none; }
+.ad-active .progress-bar .cue-range-markers { visibility: hidden; }
+.progress-bar .cue-range-markers .cue-range-marker { height: 2px; margin: 0px 0px 0px -0.1em; position: absolute; width: 0.2em; background-color: rgba(255, 255, 255, 0); }
+.progress-bar .cue-range-markers .ad-marker { background-color: rgb(230, 188, 39); }
+.progress-bar.ad-active .progress-bar-played { background-color: rgb(214, 203, 35); }
+#player-time-elapsed, .player-time-total, .live-indicator { color: rgba(255, 255, 255, 0.74902); font-size: 1.2em; position: absolute; top: -6em; width: 12%; }
+.limited-graphics #player-time-elapsed, .limited-graphics .player-time-total { color: rgb(255, 255, 255); }
+#player-time-elapsed { left: 0px; text-align: right; }
+.player-time-total, .live-indicator { right: 0px; text-align: left; }
+#transport-controls.ad-active #player-time-elapsed, #transport-controls.ad-active .player-time-total { display: none; }
+.live-indicator { display: none; font-size: 1.3em; position: absolute; top: -5.6em; width: 11.7%; }
+.live-playback .live-indicator { display: block; }
+.live-playback .player-time-total, .live-playback .elapsed-time, .fresh-transport-controls.live-playback .player-time-total, .fresh-transport-controls.live-playback #player-time-elapsed { display: none; }
+.live-playback .progress-bar-disc { background-color: rgb(230, 33, 23); }
+#watch .loading-indicator { top: 30%; }
+#transport-spacer:hover { background: none; }
+.html5-video-controls { position: absolute; width: 100%; height: 0px; bottom: 2em; transition: all 0.6s ease; }
+.ytp-player-content { position: absolute; bottom: 0px; height: 0px; left: 0px; right: 0px; }
+.html5-video-content { position: absolute; }
+.caption-window { position: absolute; pointer-events: none; }
+.standard-caption-window { position: absolute; white-space: normal; width: 80%; }
+.caption-window-transform { display: inline-block; line-height: 1.32em; }
+.html5-video-player .captions-text { position: relative; }
+.html5-video-player .caption-row { padding-bottom: 5px; padding-top: 5px; }
+.anchor-point-1 { transform: translate(-50%, 0px); }
+.anchor-point-2 { transform: translate(-100%, 0px); }
+.anchor-point-3 { transform: translate(0px, -50%); }
+.anchor-point-4 { transform: translate(-50%, -50%); }
+.anchor-point-5 { transform: translate(-100%, -50%); }
+.anchor-point-6 { transform: translate(0px, -100%); }
+.anchor-point-7 { transform: translate(-50%, -100%); }
+.anchor-point-8 { transform: translate(-100%, -100%); }
+.anchor-point-0, .anchor-point-1, .anchor-point-2 { padding-top: 3em; }
+.watch.transport-showing .anchor-point-0, .watch.transport-showing .anchor-point-1, .watch.transport-showing .anchor-point-2 { padding-top: 9em; }
+.anchor-point-0, .anchor-point-3, .anchor-point-6 { padding-left: 3em; }
+.anchor-point-2, .anchor-point-5, .anchor-point-8 { padding-right: 3em; }
+.anchor-point-6, .anchor-point-7, .anchor-point-8, .eureka .watch.transport-showing .anchor-point-6, .eureka .watch.transport-showing .anchor-point-7, .eureka .watch.transport-showing .anchor-point-8 { padding-bottom: 3em; }
+.watch.transport-showing .anchor-point-6, .watch.transport-showing .anchor-point-7, .watch.transport-showing .anchor-point-8 { padding-bottom: 15em; }
+.watch.pivot-focused .anchor-point-6 { padding-bottom: 17.5em; }
+.watch.pivot-focused .anchor-point-7, .watch.pivot-focused .anchor-point-8 { padding-bottom: 16em; }
+.watch .ytp-fresca-module, .search-focused .watch.message .ytp-fresca-module { display: none; }
+.watch.message .ytp-fresca-module { color: rgb(255, 255, 255); display: block; font-size: 2em; padding-left: 1.5em; position: absolute; top: 30%; width: 100%; background-color: rgba(0, 0, 0, 0.498039); }
+.watch.message .ytp-fresca-show-countdown { padding-bottom: 1.3em; }
+.ytp-fresca-countdown { font-size: 1.4em; }
+.pivot-shelf-list { margin-top: 12.5em; padding-left: 7em; transition: transform 0.25s, opacity 0.25s; transform: translateY(10em); }
+.pivot-shelf-list.hidden { opacity: 0; display: block !important; }
+.limited-animation .pivot-shelf-list.hidden, .forced-limited-animation.pivot-shelf-list.hidden { display: none !important; }
+.pivot-shelf-list.animate-in { transform: translateY(0px); }
+.pivot-shelf-list > .carousel { opacity: 0.5; transition: opacity 0.25s; }
+.limited-memory .pivot-shelf-list { opacity: 1; }
+.pivot-shelf-list .title-container { color: rgb(255, 255, 255); }
+.pivot-shelf .tile-title .author, .pivot-shelf .tile-title .view { color: rgb(225, 225, 225); }
+.pivot-shelf-list.focused, .post-play .pivot-shelf-list { height: 17.5em; margin-top: 2.5em; padding-top: 10em; transform: translateY(-7.5em); background: linear-gradient(rgba(0, 0, 0, 0), rgb(0, 0, 0)); }
+.post-play .pivot-shelf { opacity: 0.5; }
+.post-play .pivot-shelf-list.focused .pivot-shelf, .pivot-shelf-list.focused > .carousel { opacity: 1; }
+.pivot-shelf-list .focused.list { height: 0px; }
+.pivot-shelf-list .no-content-message { display: none; }
+.pivot-shelf-list.forced-limited-animation, .limited-animation .pivot-shelf-list, .limited-animation .pivot-shelf-list > .carousel { transition: none; }
+.pivot-shelf-list.forced-limited-animation .placeholder-tile, .limited-animation .pivot-shelf-list .placeholder-tile { height: 7.83em; width: 14em; }
+#pivot-post-play .pivot-video-tile, #pivot-post-play .placeholder-tile { height: 10.625em; width: 18.5em; }
+#pivot-post-play .tile-top { height: 10.625em; }
+.limited-animation #pivot-post-play .tile-top, #pivot-post-play.forced-limited-animation .tile-top { height: 9.825em; width: 17.7em; }
+.pivo`t-video-tile, .pivot-channel-tile { height: 7.83em; width: 14em; }
+.forced-limited-animation .pivot-video-tile, .forced-limited-animation .pivot-auto-play-tile, .forced-limited-animation .pivot-channel-tile, .pivot-shelf-list.forced-limited-animation .placeholder-tile, #pivot-post-play.forced-limited-animation .placeholder-tile, .limited-animation .pivot-video-tile, .limited-animation .pivot-auto-play-tile, .limited-animation .pivot-channel-tile, .limited-animation #pivot-post-play .placeholder-tile, .limited-animation .pivot-shelf-list .placeholder-tile { display: inline-block; margin-right: 0.5em; position: relative; vertical-align: bottom; background: none; }
+.forced-limited-animation .pivot-channel-tile, .limited-animation .pivot-channel-tile { border-radius: 100%; width: 10.625em; }
+.forced-limited-animation .pivot-video-tile.focused, .forced-limited-animation .pivot-auto-play-tile.focused .pivot-video-tile, .limited-animation .pivot-video-tile.focused, .limited-animation .pivot-auto-play-tile.focused .pivot-video-tile { background-color: rgb(255, 255, 255); }
+.pivot-video-tile .tile-top { height: 7.83em; }
+.forced-limited-animation .pivot-video-tile .tile-top, .limited-animation .pivot-video-tile .tile-top { height: 7.03em; padding: 0.4em; width: 13.2em; background-color: inherit; }
+.forced-limited-animation .pivot-video-tile.focused .tile-top, .limited-animation .pivot-video-tile.focused .tile-top { background-color: rgb(255, 255, 255); }
+.pivot-video-tile .tile-overlay { color: rgb(255, 255, 255); display: none; height: 100%; margin-top: -7.83em; text-align: center; width: 100%; background-color: rgba(0, 0, 0, 0.498039); }
+.forced-limited-animation .pivot-video-tile .tile-overlay, .limited-animation .pivot-video-tile .tile-overlay { margin-top: -7.03em; }
+#pivot-post-play .pivot-video-tile .tile-overlay { margin-top: -10.625em; }
+.limited-animation #pivot-post-play .pivot-video-tile .tile-overlay, #pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay { margin-top: -9.875em; }
+.pivot-video-tile.has-overlay .tile-overlay { display: block; }
+#pivot-post-play .pivot-video-tile.has-overlay .tile-overlay { opacity: 0; }
+#pivot-post-play.focused .pivot-video-tile.has-overlay .tile-overlay { opacity: 1; }
+.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .label { display: none; }
+.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .icon-player-play { font-size: 4em; }
+.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .icon-player-play::before { content: ""; }
+.pivot-video-tile .tile-overlay .icon { font-family: youtube-icons; font-size: 3em; padding-top: 0.5em; }
+.pivot-video-tile .tile-overlay .label { font-size: 1.2em; }
+#pivot-post-play .pivot-video-tile .tile-overlay { color: rgb(225, 225, 225); }
+#pivot-post-play .pivot-video-tile .tile-overlay .icon { font-size: 4.5em; padding-bottom: 0.15em; padding-top: 0.4em; }
+#pivot-post-play .pivot-video-tile .tile-overlay .label, #pivot-post-play .pivot-video-tile .tile-overlay .icon { opacity: 0; transition: opacity 0.25s; }
+#pivot-post-play.focused .pivot-video-tile .tile-overlay .label, #pivot-post-play.focused .pivot-video-tile .tile-overlay .icon { opacity: 1; }
+.limited-animation #pivot-post-play .pivot-video-tile .tile-overlay .label, .limited-animation #pivot-post-play .pivot-video-tile .tile-overlay .icon, #pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay .label, #pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay .icon { transition: none; }
+.pivot-video-tile .video-thumb { height: 100%; width: 100%; background-size: 100%; background-position: 50% 50%; background-repeat: no-repeat; }
+.pivot-video-tile .decoration { margin-top: -2.1em; text-align: right; }
+.pivot-video-tile .duration { font-size: 1em; font-weight: bold; padding: 0.5em; background-color: rgba(0, 0, 0, 0.701961); }
+.pivot-auto-play-tile { height: 10.625em; overflow: visible; width: 18.5em; background: none; }
+.forced-limited-animation .pivot-auto-play-tile, .limited-animation .pivot-auto-play-tile { height: 10.625em; width: 18.5em; }
+.pivot-auto-play-tile .post-play-countdown { display: block; font-size: 1.8em; margin-left: 10.8em; opacity: 0; pointer-events: none; position: absolute; text-align: left; text-shadow: none; top: 0px; width: 17.5em; }
+.pivot-auto-play-tile.countdown-active .post-play-countdown { opacity: 1; pointer-events: inherit; }
+.pivot-auto-play-tile .details, .pivot-auto-play-tile .title { color: rgb(255, 255, 255); opacity: 0; pointer-events: none; }
+.pivot-auto-play-tile.focused .details, .pivot-auto-play-tile.focused .title { opacity: 1; pointer-events: inherit; }
+.pivot-auto-play-tile .title { font-size: 1.4em; margin-left: 14em; max-height: 2.5em; overflow: hidden; position: absolute; top: 2.2em; width: 20em; }
+.pivot-auto-play-tile .details { font-size: 1.1em; margin-left: 17.8em; position: absolute; top: 6em; width: 37em; }
+.pivot-auto-play-tile .details, .pivot-auto-play-tile .title, .pivot-auto-play-tile .post-play-countdown { transition: opacity 0.25s; }
+.limited-animation .pivot-auto-play-tile .details, .limited-animation .pivot-auto-play-tile .title, .limited-animation .pivot-auto-play-tile .post-play-countdown { transition: none; }
+#pivot-post-play .pivot-auto-play-tile .pivot-video-tile { padding-left: 0px; padding-top: 0px; }
+#pivot-post-play #post-play-list .no-content-message { display: none; }
+.forced-limited-animation .pivot-horizontal-list, .limited-animation .pivot-horizontal-list { margin-left: -15em; }
+.pivot-horizontal-list.focused .pivot-sliding-highlighter, .post-play #post-play-list.focused .pivot-sliding-highlighter { display: block; }
+.pivot-horizontal-list .pivot-sliding-highlighter, .post-play .pivot-sliding-highlighter { border: 0.5em solid rgb(255, 255, 255); box-shadow: rgb(0, 0, 0) 0.083em 0.083em 0.75em 0.167em inset; height: 7.5em; margin-left: -0.4em; margin-top: -0.4em; pointer-events: none; width: 13.8em; background: transparent; }
+.pivot-shelf { position: absolute; width: 0px; }
+.forced-limited-animation .pivot-shelf, .limited-animation .pivot-shelf { opacity: 0.5; position: relative; }
+.forced-limited-animation .pivot-shelf.focused, .limited-animation .pivot-shelf.focused { opacity: 1; }
+.limited-memory.limited-animation .pivot-shelf { opacity: 1; }
+.pivot-shelf .title-container { margin-bottom: 1em; visibility: hidden; white-space: nowrap; }
+.pivot-shelf .title-container .icon { font-family: youtube-icons; vertical-align: middle; }
+.pivot-shelf .tile-title span { display: inline-block; overflow: hidden; text-overflow: ellipsis; }
+.pivot-shelf.focused .title-container { visibility: visible; }
+.pivot-shelf .tile-title, .pivot-shelf .shelf-title { margin-bottom: 0.3em; }
+.pivot-shelf .tile-title { height: 1.7em; }
+.pivot-shelf .tile-title .title { font-size: 1.3em; max-width: 30em; }
+.pivot-shelf .tile-title .author, .pivot-shelf .tile-title .view { margin-left: 0.3em; max-width: 20em; }
+.pivot-shelf .tile-title .author, .pivot-sliding-highlighter .select { display: none; }
+.pivot-shelf.has-author .tile-title .author { display: inline-block; }
+.forced-limited-animation .pivot-horizontal-list .list, .limited-animation .pivot-horizontal-list .list { width: 98em; }
+.forced-limited-animation .postplay-horizontal-list .list, .limited-animation .postplay-horizontal-list .list { margin-left: -13.4em; width: 98em; }
+.forced-limited-animation .pivot-channel-tile.focused .tile-top, .limited-animation .pivot-channel-tile.focused .tile-top { background-color: rgb(255, 255, 255); }
+.forced-limited-animation .pivot-channel-tile .tile-top, .limited-animation .pivot-channel-tile .tile-top { height: 6.83em; padding: 0.4em; width: 6.83em; }
+.pivot-channel-tile .tile-top { border-radius: 50%; height: 7.83em; margin: 0px auto; overflow: hidden; width: 7.83em; background: none; }
+.pivot-channel-tile .tile-top .video-thumb { background-color: rgba(0, 0, 0, 0); }
+.pivot-channel-tile .video-thumb { border-radius: 50%; }
+.pivot-shelf .pivot-horizontal-list.channel-selected .pivot-sliding-highlighter { border-radius: 50%; height: 7.5em; margin-left: -0.3em; margin-top: -0.3em; transform: translateX(3.2em); width: 7.5em; }
+.pivot-shelf.channel-selected .shelf-title { visibility: hidden; }
+.pivot-footer { height: 9em; }
+.pivot-button-list { padding-top: 4em; }
+.pivot-button-list .icon-button { display: inline-block; padding: 0.5em 1em; }
+.pivot-button-list .icon-button .icon { font-family: youtube-icons; margin-right: 0.3em; }
+.pivot-footer.focused .pivot-button-list .icon-button.selected { background-color: rgb(255, 255, 255); }
+.pivot-button-list .icon-button span { color: rgb(255, 255, 255); font-size: 1.5em; }
+.pivot-footer.focused .pivot-button-list .icon-button.selected span { color: rgb(0, 0, 0); }
+#pivot-post-play { padding-left: 6em; padding-top: 10em; }
+.limited-animation #pivot-post-play, #pivot-post-play.forced-limited-animation { padding-left: 0px; }
+#pivot-post-play #post-play-list { font-size: 1.1em; margin-left: 0.1em; }
+.forced-limited-animation .pivot-auto-play-tile, .limited-animation .pivot-auto-play-tile { padding-left: 0px; vertical-align: bottom; }
+#pivot-post-play.forced-limited-animation .pivot-video-tile, .limited-animation #pivot-post-play .pivot-video-tile { vertical-align: bottom; }
+.forced-limited-animation .pivot-auto-play-tile .pivot-video-tile, .limited-animation .pivot-auto-play-tile .pivot-video-tile { display: block; position: absolute; }
+#pivot-post-play .pivot-sliding-highlighter { border-width: 0.5em; height: 9.9em; margin-top: 0px; width: 18.4em; }
+.limited-animation.sets-ui .exp-densityBrowse .auto-play-tile:not(.focused) .video-tile, .limited-animation .exp-densityBrowse .auto-play-tile.focused .video-tile, .limited-animation .exp-densityBrowse .auto-play-tile { background-color: inherit; }
+.limited-animation .exp-densityBrowse .auto-play-tile.focused .tile-top { background: rgb(255, 255, 255); }
+.limited-animation .exp-densityBrowse .auto-play-tile .post-play-countdown { top: -2.67em; }
+.loki-video-source { color: rgb(255, 255, 255); font-size: 1.5em; left: 5em; position: absolute; top: 2.6em; }
+.loki-title-card { bottom: 0px; display: block; height: 25%; position: absolute; width: 100%; background: linear-gradient(to top, rgba(0, 0, 0, 0.901961) 0%, rgba(0, 0, 0, 0.6) 80%, transparent 100%); }
+.loki-title-card .loki-metadata { color: rgb(241, 241, 241); height: 100%; margin-bottom: 2.6em; margin-left: 8em; overflow: hidden; white-space: nowrap; width: 100%; }
+.loki-metadata #loki-progress-bar { display: block; height: 2em; left: 8em; padding: 0px; position: absolute; top: -4em; width: 80%; }
+#loki-progress-bar .progress-bar-playhead { display: none; }
+.loki-metadata .loki-video-avatar { display: inline-block; height: 8em; width: 8em; background-size: contain; }
+.loki-metadata .loki-video-text { display: inline-block; height: 100%; margin: 0px 5em 0px 3.5em; width: 80%; }
+.loki-video-text .loki-video-title { font-size: 2.4em; margin-top: -0.1em; overflow: hidden; text-overflow: ellipsis; width: 80%; }
+.loki-video-text .loki-channel-name { font-size: 1.5em; margin-top: 0.4em; overflow: hidden; text-overflow: ellipsis; width: 80%; }
+.loki-video-text .loki-video-description { line-height: 1.4em; margin-top: 0.4em; max-height: 4.2em; overflow: hidden; white-space: normal; width: 80%; }
+.toaster { color: rgb(170, 170, 170); font-size: 133%; position: absolute; top: 0px; width: 100%; }
+.toaster .list { margin-top: 0.8em; position: absolute; width: 100%; }
+.toaster .toast { min-height: 3.5em; overflow: hidden; position: relative; text-align: center; width: 100%; transition: all 0.6s ease; }
+.toaster .toast-container { border: 1px solid black; display: inline-block; margin: 0.2em 0px 1em; max-width: 60%; opacity: 1; padding: 0.5em 1em 0.6em; transition: all 0.3s ease; background-color: rgba(27, 25, 26, 0.8); }
+.toaster .toast.toast-removing .toast-container { opacity: 0; }
+.toaster .toast-container > div { display: inline-block; vertical-align: middle; }
+.toaster .toast-icon { height: 1.2em; width: 1.2em; background-size: 1.1em 1.1em; background-position: 50% 50%; background-repeat: no-repeat; }
+.device-toast .toast-container { padding: 0.7em; }
+.toaster .device-toast .toast-msg { padding-left: 0.8em; background-size: 1.1em 1.1em; background-position: 0% 50%; background-repeat: no-repeat; }
+.toaster .avatar { height: 2.6em; width: 2.6em; }
+.toaster .avatar > div { height: inherit; width: inherit; background-size: cover; background-position: 50% 50%; }
+.toaster .video-image > div { height: 100%; width: 100%; background-size: cover; background-position: 50% 50%; }
+.toast .update-playlist-toast { bottom: 0px; max-width: 14em; padding: 0.8em; position: fixed; right: 0px; text-align: left; }
+.update-playlist-toast .overlay { height: 55%; margin-left: 56%; margin-top: -55%; opacity: 0.8; width: 44%; background: rgb(0, 0, 0); }
+.update-playlist-toast .video-count { font-size: 2.3em; font-weight: normal; line-height: 1.2em; padding-top: 0.8em; text-align: center; }
+.update-playlist-toast .icon-playlist { font-family: youtube-icons; font-size: 2.2em; height: 50%; overflow: hidden; padding: 0.2em; text-align: center; }
+.update-playlist-toast .avatar { padding: 0.3em; }
+.update-playlist-toast .contrast-container { padding: 0.4em; background-color: rgba(0, 0, 0, 0.8); }
+.update-playlist-toast .tile-top { height: 7.7em; width: 14em; }
+.update-playlist-toast .toast-msg { font-size: 85%; padding-left: 0.6em; }
+.update-playlist-toast .truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 13.2em; }
+.update-playlist-toast .toast-msg.avatar { height: 2.1em; width: 10em; overflow: hidden; }
+.update-playlist-toast .toast-msg.truncate { white-space: normal; }
+.update-playlist-toast .toast-msg.no-user-avatar { font-size: 85%; margin-left: -2.2em; }
+.update-playlist-toast .wrapper > div { display: inline-block; vertical-align: middle; }
+.toaster .toast-icon { max-width: 100%; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/dial-sprite.png); background-size: 100%; }
+.toast-icon.avatar { background-image: none; }
+.toaster .android-phone-connected { background-position: 0px 0%; }
+.toaster .android-phone-disconnected { background-position: 0px 10.14%; }
+.toaster .android-tablet-connected { background-position: 0px 20.29%; }
+.toaster .android-tablet-disconnected { background-position: 0px 30.43%; }
+.toaster .ios-phone-connected { background-position: 0px 40.58%; }
+.toaster .ios-phone-disconnected { background-position: 0px 50.72%; }
+.toaster .ios-tablet-connected { background-position: 0px 60.87%; }
+.toaster .ios-tablet-disconnected { background-position: 0px 71%; }
+.toaster .laptop-connected { background-position: 0px 81.16%; }
+.toaster .laptop-disconnected { background-position: 0px 91.3%; }
+.toaster .remote-connected { background-size: 233.33%; background-position: 0px 100%; }
+.toaster .remote-disconnected { background-size: 233.33%; background-position: 0px 100%; }
+.toaster .toast-progress { border: 1px solid rgb(170, 170, 170); width: 10em; }
+.toaster .toast-progress .progress { height: 1em; background-color: rgb(102, 102, 102); }
+.toaster .volume-muted { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/volume_mute_pressed.png); }
+.toaster .volume-low { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/volume_0_pressed.png); }
+.toaster .volume-mid { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/volume_1_pressed.png); }
+.toaster .volume-high { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/volume_2_pressed.png); }
+.toaster .volume-toast .toast-msg { text-align: right; width: 1.2em; }
+.toaster .volume-toast .toast-container { transition-delay: 0.3s; }
+.toaster .volume-toast.toast-removing .toast-container { transition-delay: 0s; }
+.unlimited-welcome-toast .toast-container { box-shadow: rgb(0, 0, 0) 0em 0em 0.6em 0.02em; height: 6.5em; margin: 0em; padding: 0px; position: fixed; right: 0px; text-align: left; top: 0px; width: 24.5em; transform: translateX(0px); opacity: 1; transition: all 0.6s ease; }
+.unlimited-welcome-toast.toast-displaying .toast-container { opacity: 0; transform: translateX(18em); }
+.limited-animation .unlimited-welcome-toast .toast-container { opacity: 1; transition: none; transform: none; }
+.unlimited-toast-messages { position: absolute; padding-top: 2.1em; padding-left: 1.3em; width: 12em; }
+.unlimited-toast-msg-top { color: rgb(221, 221, 221); line-height: 1em; }
+.unlimited-toast-msg-bottom { padding-top: 0.5em; font-size: 0.7em; }
+.unlimited-toast-background { height: 100%; width: 9em; background-size: 100%; background-position: 0% 50%; background-repeat: no-repeat; }
+.unlimited-toast-logo { height: 100%; background-size: 100%; background-repeat: no-repeat; }
+#dialog { color: rgb(255, 255, 255); display: none; height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; }
+#error-markup #dialog { display: block; }
+#dialog.focused { display: block; }
+#dialog-wrapper { height: 30em; margin-top: 11.1em; padding: 1.3em 6em; position: relative; background-color: rgb(0, 0, 0); }
+#dialog.browse-sets #dialog-wrapper { height: 100%; margin-top: 0px; padding: 1.3em 10%; background-color: rgba(32, 32, 32, 0.498039); }
+#dialog .dialog-contents { background: 90% 30% no-repeat; }
+#dialog.browse-sets .dialog-contents .icon-simple-dialog { color: rgb(255, 255, 255); }
+#dialog .dialog-contents .dialog-large-icon { display: none; }
+#dialog.browse-sets .dialog-contents .dialog-large-icon { display: inline-block; font-family: youtube-icons; font-size: 10em; height: 2.5em; line-height: 2.5em; text-align: center; width: 35%; }
+#dialog.browse-sets .icon-simple-dialog .icon-dialog-content .extra-info { color: rgba(255, 255, 255, 0.74902); display: block; font-family: monospace; font-size: 1.5em; line-height: 1.4em; padding-top: 0.8em; }
+#dialog.browse-sets .icon-simple-dialog .icon-dialog-content .label { display: block; font-size: 1.8em; line-height: 1.1em; padding-top: 6.45em; }
+#dialog .dialog-contents .header .title { font-size: 2.5em; }
+#dialog.browse-sets.browse-sets-titled-dialog .dialog-contents .header { border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: rgba(255, 255, 255, 0.2); height: 3.4em; margin: 0px 1.5em; }
+#dialog.browse-sets.browse-sets-titled-dialog .dialog-contents .header .title { color: rgba(255, 255, 255, 0.498039); display: block; font-size: 1.3em; font-weight: 300; height: 3em; line-height: 3em; }
+#dialog.browse-sets .buttons { font-size: 1.8em; margin-right: 2%; margin-top: 0.8em; text-align: right; }
+#dialog.browse-sets .connection-steps { padding: 0px; }
+#dialog.browse-sets.exit .dialog-contents .header .title { display: block; padding: 1em 6.5em 3em; }
+#dialog.browse-sets .dialog-contents { height: 80%; margin-top: 5%; background-color: rgb(0, 0, 0); }
+#dialog.browse-sets.closed-captions .dialog-contents { height: 75%; }
+#dialog.browse-sets .dialog-cancel-button { text-align: center; }
+.video-overview .dialog-contents { font-size: 2em; }
+#dialog.qr-dialog .dialog-contents { color: rgb(204, 204, 204); font-size: 1.1em; overflow: hidden; padding-top: 4em; }
+#dialog.qr-dialog .dialog-contents .header .title { color: rgb(255, 255, 255); font-size: 2em; }
+#dialog .box { padding-top: 1.5em; }
+#dialog.qr-dialog a { color: rgb(255, 255, 255); display: block; font-size: 1.5em; }
+#dialog.qr-dialog .qr { height: 7em; margin: 0.2em 0px; width: 7em; background-size: 100%; }
+#dialog.qr-dialog .dialog-icon { display: block; background-size: 12em; }
+#dialog.help .dialog-icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-help.png); }
+#dialog.feedback .dialog-icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-feedback.png); }
+#dialog.system-error .dialog-icon { font-family: youtube-icons; font-size: 10em; margin-right: 0px; padding-right: 0.5em; padding-top: 0.5em; text-align: right; width: 2em; }
+#dialog.system-error .dialog-icon::before { content: ""; }
+#dialog.qr-dialog.browse-sets .dialog-icon { display: none; }
+#dialog .text-dialog { bottom: 1.5em; left: 0px; padding: 2em 20em 0px 6em; position: absolute; white-space: normal; }
+#dialog.text-dialog .dialog-contents .header .title { font-size: 3em; padding-bottom: 0.5em; }
+.text-dialog #dialog-view { color: rgb(170, 170, 170); padding-bottom: 1em; width: 90%; }
+.text-dialog #dialog-view .dialog-contents { font-size: 1.8em; }
+#dialog.browse-sets .icon-dialog-content { display: inline-block; height: 25em; vertical-align: top; width: 60%; }
+#dialog-view .url { color: rgb(255, 255, 255); font-size: 1.25em; padding-bottom: 0.8em; }
+#dialog-view .flag-claim .url { padding-bottom: 0.5em; }
+#dialog-view .reset-help { display: block; width: 25em; }
+#dialog.browse-sets .tos-dialog .icon-dialog-content { padding-top: 9em; }
+#dialog.browse-sets .tos-dialog .icon-dialog-content .subtitle { color: rgb(170, 170, 170); }
+#dialog.browse-sets .tos-dialog .icon-dialog-content .url { font-size: 2em; }
+#dialog.browse-sets.qr-dialog .dialog-contents { padding-top: 0px; }
+#dialog.browse-sets.qr-dialog .icon-dialog-content .link { margin-top: 5em; padding-top: 0px; }
+#dialog.browse-sets.qr-dialog .icon-dialog-content .qr-code-wrapper { margin-top: 2em; }
+#dialog.browse-sets.qr-dialog .icon-dialog-content .qr-code-wrapper .qr { border: 0.2em solid rgba(255, 255, 255, 0.0980392); padding: 0.5em; }
+#dialog .signed-out-dialog { font-size: 1.8em; }
+.connection-error, .connection-steps { display: inline-block; font-weight: 300; padding: 0px 1em 1em 2em; white-space: normal; }
+.connection-error { vertical-align: top; }
+.connection-error div { margin-bottom: 1em; }
+#dialog .login-dialog .activation-code { font-size: 1.3em; letter-spacing: 0.1em; line-height: 1.3em; }
+#dialog .sets-login-dialog .body-text { display: inline-block; height: 25em; vertical-align: top; width: 50%; }
+#dialog .sets-login-dialog .body-text .connection-instructions { font-size: 1.9em; margin-top: 3.5em; }
+#dialog .sets-login-dialog .standard-message, #dialog .sets-login-dialog .like-dislike-message, #dialog .sets-login-dialog .subscribe-message, #dialog .sets-login-dialog .upload-message, #dialog .sets-login-dialog .player-message { display: none; }
+#dialog.standard-login .sets-login-dialog .standard-message, #dialog.like-dislike-login .sets-login-dialog .like-dislike-message, #dialog.subscribe-login .sets-login-dialog .subscribe-message, #dialog.upload-login .sets-login-dialog .upload-message, #dialog.player-login .sets-login-dialog .player-message { display: block; }
+#dialog .pairing .qr-code-wrapper { display: inline-block; vertical-align: top; }
+#dialog .manual-connect-content .connection-steps { padding: 0px; }
+#dialog .manual-connect-content .connection-steps .label { color: rgb(170, 170, 170); font-size: 0.7em; margin-top: 1em; }
+#dialog .manual-connect-content .connection-steps .step1, #dialog .manual-connect-content .connection-steps .step2 { margin-top: 0.7em; }
+#dialog .manual-connect-content .connection-steps .pair-url, #dialog .manual-connect-content .connection-steps .pair-code { margin-left: 0.3em; }
+#dialog.browse-sets .manual-connect-content .connection-steps .label { font-size: 1.3em; }
+#dialog.browse-sets .manual-connect-content .connection-steps .step1, #dialog.browse-sets .manual-connect-content .connection-steps .step2 { display: inline-block; font-size: 1.3em; }
+#dialog.browse-sets .manual-connect-content .connection-steps .pair-url, #dialog.browse-sets .manual-connect-content .connection-steps .pair-code { display: inline-block; font-size: 1.3em; margin-left: 0.3em; }
+#dialog.browse-sets .pairing .connection-instructions { font-size: 1em; padding-top: 10em; }
+#dialog .manual-connect .dial-upsell-content { display: none; }
+#dialog .dial-upsell .manual-connect-content .connection-steps .no-dial-connect-step1, #dialog .manual-connect .manual-connect-content .connection-steps .with-dial-connect-step1 { display: none; }
+#dialog .manual-connect .manual-connect-content .connection-steps { font-size: 1.5em; }
+#dialog .manual-connect .manual-connect-content .connection-steps .label { display: none; }
+#dialog.browse-sets .dial-upsell .dial-upsell-content { font-size: 1.8em; white-space: normal; width: 80%; }
+#dialog.browse-sets .dial-upsell .dial-upsell-content .cast-icon { height: 1.3em; margin: 0px; width: 1.5em; }
+#dialog.browse-sets .dial-upsell .manual-connect-content { color: rgb(170, 170, 170); font-size: 1.4em; line-height: 1em; }
+#dialog.browse-sets .remote-reset-dialog .connected-list .connected-header { color: rgb(255, 255, 255); font-size: 1.5em; margin-top: 6em; }
+#dialog.browse-sets .remote-reset-dialog .connected-list .devices { display: inline-block; font-size: 1em; }
+#dialog.browse-sets .remote-reset-dialog .connected-list .devices > div { display: inline-block; font-size: 1em; padding-left: 0px; padding-right: 1.5em; width: 10em; }
+#dialog.browse-sets .remote-reset-dialog .reset-help { font-size: 1.5em; margin-top: 1em; }
+#dialog .logout-authenticated-info { padding: 2.5em 0px; }
+#dialog .login-user-icon { display: inline-block; height: 4em; margin: 2em 2em 0px 0px; width: 4em; background-size: cover; }
+#dialog.browse-sets .login-user-icon { margin: 0px 15%; border-radius: 20em; }
+#dialog .login-user-info { display: inline-block; margin-left: 1.7em; margin-top: -0.8em; font-size: 2em; font-weight: 300; width: 82%; }
+#dialog .login-user-info h3 { font-size: 2.2em; font-weight: normal; margin: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
+#dialog.browse-sets .logout-authenticated-info { padding: 0px; }
+#dialog.browse-sets .login-user-info { height: 13em; margin: 0px; width: 100%; }
+#dialog.browse-sets .login-user-info .display-name, #dialog.browse-sets .login-user-info .platform-container { display: none; }
+#dialog.browse-sets .login-user-info .signed-in-message { display: inline-block; width: 50%; }
+#dialog.browse-sets .login-user-info .signed-in-label strong { color: rgb(255, 255, 255); display: block; font-size: 2.5em; overflow: hidden; text-overflow: ellipsis; }
+#dialog.browse-sets .login-user-info .signed-in-label { color: rgb(170, 170, 170); font-size: 0.5em; margin-top: 10em; }
+#dialog.browse-sets .login-user-info .sign-out-label { margin-top: 1em; }
+#dialog .spinner { height: 10em; width: 10em; }
+#dialog .spinner .loading-indicator { height: 100%; width: 100%; background-size: contain; }
+#dialog .buttons { font-size: 3em; font-weight: 300; padding-top: 0.3em; }
+#dialog .buttons > div { color: rgb(0, 0, 0); cursor: pointer; display: inline-block; min-width: 2.4em; padding: 0px 0.3em; text-align: center; background-color: rgb(51, 51, 51); }
+#dialog.browse-sets .buttons .button { color: rgba(255, 255, 255, 0.498039); min-width: 3em; padding: 0.2em 0.8em; background-color: rgb(0, 0, 0); }
+#dialog.browse-sets .buttons .focused, #dialog.browse-sets .buttons .button.focused:hover { color: rgb(102, 102, 102); background-color: rgb(241, 241, 241); }
+#dialog .buttons .button:hover, #dialog.browse-sets .buttons .button:hover { background-color: rgb(102, 102, 102); }
+#dialog .buttons div { margin-left: 0.5em; }
+#dialog .buttons .focused, #dialog .buttons .focused:hover { color: rgb(102, 102, 102); background-color: rgb(241, 241, 241); }
+#dialog .whichOneIsThis-logout-dialog .logout-prompt { font-size: 1.7em; }
+#dialog .logout-prompt { margin-top: 6em; }
+.scrolling-text { font-size: 1.3em; height: 15em; margin-right: 1.1em; margin-top: 1em; overflow: hidden; }
+.scrolling-text h4 { margin: 0px; padding: 0px; }
+.scrolling-text > div { overflow: hidden; padding-bottom: 1em; }
+.flag-list-container { margin-top: 0.5em; }
+.flag-list .button { color: rgb(134, 134, 134); cursor: pointer; display: inline-block; font-size: 1.8em; padding: 0.4em; vertical-align: top; }
+.flag-list .button { width: 12em; }
+.flag-list .button:hover { background-color: rgb(68, 68, 68); }
+.flag-list .button.focused, .flag-list .button.focused:hover { color: rgb(103, 103, 103); background-color: rgb(255, 255, 255); }
+#flag-widget { font-weight: 300; }
+.flag-video { color: rgb(103, 103, 103); font-size: 1.8em; font-weight: 300; padding-top: 1em; width: 47%; }
+.flag-video .url { color: rgb(255, 255, 255); display: block; font-size: 1.6em; padding-top: 0.5em; }
+.flag-example { display: inline-block; height: 57%; position: absolute; right: 18%; top: 9%; width: 23%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/flag.png) 0px 0px / contain no-repeat; }
+.flag-claim .metadata { display: block; font-size: 1em; font-weight: 500; padding-top: 0.2em; white-space: normal; }
+.flag-claim .url { color: rgb(134, 134, 134); display: block; font-weight: 300; }
+.flag-claim { color: rgb(103, 103, 103); font-size: 1.6em; font-weight: 300; margin: 1em 0px 0px 2em; white-space: nowrap; }
+.flag-claim .copyright-infringment { display: inline-block; white-space: normal; width: 50%; }
+.flag-claim .privacy-invasion { display: inline-block; margin-left: 4%; vertical-align: top; white-space: normal; width: 40%; }
+.flag-claim .email { color: rgb(134, 134, 134); }
+.flag-claim .subtitle { font-size: 1.2em; font-weight: 500; }
+.player-error-dialog.player-error { color: rgb(170, 170, 170); font-size: 1.8em; padding: 1em 0px 8em 0em; }
+#dialog .scrollbar { height: 70%; margin-top: 5em; right: 5em; }
+#dialog .scrollbar .handle { height: 5em; }
+.paid-channel-info { font-size: 1.4em; padding-top: 1em; }
+.paid-channel-info .channel-url { font-weight: bold; }
+.status-dialog #dialog-wrapper { background-color: rgba(0, 0, 0, 0.498039); }
+.status-dialog .icon { display: inline-block; height: 11em; vertical-align: middle; width: 25%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/pairing-promo-combo.png) 50% 50% / contain no-repeat; }
+.status-dialog .info { display: inline-block; padding-left: 0.5em; vertical-align: middle; width: 70%; }
+.status-dialog .message { color: rgb(204, 204, 204); font-size: 2em; }
+.status-dialog #dialog-view { padding-top: 7em; }
+.dialog-focused #legend { bottom: 12%; display: block; }
+#legend.legend-for-dialog-closed-captions { bottom: 6%; }
+#dialog.confirm-cookies .dialog-contents .header .title { font-size: 3em; }
+#dialog.confirm-cookies #dialog-view { color: rgb(170, 170, 170); font-size: 1.8em; height: 8em; padding-top: 0.9em; }
+.single-pane-selector { padding-bottom: 1em; padding-top: 1em; white-space: nowrap; }
+.single-pane-selector .list { display: inline-block; margin-right: 0.5em; padding-left: 0.5em; padding-right: 0.5em; vertical-align: top; width: 94%; }
+.single-pane-selector .button .label { width: 90%; }
+.single-pane-selector .check-button.previously-selected .icon-check { display: inline-block; }
+.split-pane-selector { border-bottom-width: 0.1em; border-bottom-style: solid; border-bottom-color: rgba(255, 255, 255, 0.2); padding-bottom: 1em; padding-top: 1em; white-space: nowrap; }
+.check-button .icon-check { display: none; font-family: youtube-icons; }
+.single-pane-selector .labeled-value, .split-pane-selector .labeled-value { color: rgb(134, 134, 134); font-size: 1.4em; height: 2.8em; line-height: 1.5em; overflow: hidden; padding: 0px 1em; white-space: normal; }
+.single-pane-selector .labeled-value .value, .split-pane-selector .labeled-value .value { color: rgb(102, 102, 102); display: block; font-size: 0.7em; line-height: 1.4em; }
+.single-pane-selector .button, .split-pane-selector .button { color: rgb(134, 134, 134); cursor: pointer; font-size: 1.4em; height: 2.8em; line-height: 2.8em; overflow: hidden; padding: 0px 0.4em; white-space: normal; }
+.single-pane-selector .button .label, .split-pane-selector .button .label { display: inline-block; line-height: 1.3em; vertical-align: middle; }
+.single-pane-selector .subtitled-button, .split-pane-selector .subtitled-button { line-height: 1.5em; }
+.single-pane-selector .button.no-model, .split-pane-selector .button.no-model { visibility: hidden; }
+.split-pane-selector .list { display: inline-block; vertical-align: top; width: 47%; }
+.split-pane-selector .list:first-child { border-right-width: 0.1em; border-right-style: solid; border-right-color: rgba(255, 255, 255, 0.2); margin-right: 0.5em; padding-right: 0.5em; }
+.single-pane-selector .button:hover, .single-pane-selector .list:not(.focused) .button.selected, .split-pane-selector .button:hover, .split-pane-selector .list:not(.focused) .button.selected { color: rgb(255, 255, 255); background-color: rgb(68, 68, 68); }
+.single-pane-selector .button.focused, .single-pane-selector .button.focused:hover, .split-pane-selector .button.focused, .split-pane-selector .button.focused:hover { color: black; background-color: rgb(255, 255, 255); }
+.single-pane-selector .subtitled-button span.subtitle, .split-pane-selector .subtitled-button span.subtitle { color: rgb(102, 102, 102); display: block; font-size: 0.7em; line-height: 1.4em; }
+.color-button .preview { border: 2px solid rgb(0, 0, 0); color: rgb(134, 134, 134); display: inline-block; height: 1em; margin: 0px 0.2em 0.2em; vertical-align: middle; width: 1em; }
+.color-button .preview.rounded { border-radius: 50%; }
+.preview.black { border: 1px solid rgb(255, 255, 255); background-color: rgb(0, 0, 0); }
+.preview.red { background-color: rgb(255, 0, 0); }
+.preview.magenta { background-color: rgb(255, 0, 255); }
+.preview.blue { background-color: rgb(0, 0, 255); }
+.preview.cyan { background-color: rgb(0, 255, 255); }
+.preview.green { background-color: rgb(0, 255, 0); }
+.preview.yellow { background-color: rgb(255, 255, 0); }
+.preview.white { background-color: rgb(255, 255, 255); }
+.debug-dialog { font-size: 0.9em; }
+.debug-dialog span.label { font-weight: bold; }
+#dialog.browse-sets .video-upload-dialog-contents { display: inline-block; font-size: 1.6em; margin: 1em 3% 0px; text-align: left; vertical-align: top; width: 55%; }
+#dialog.browse-sets .modify-video .video-upload-dialog-contents { margin-top: 2em; text-align: center; }
+.video-upload-status .video-url { color: rgb(39, 147, 230); }
+.delete-video { padding-bottom: 6em; }
+.modify-video .list .button { color: rgb(132, 132, 132); display: inline-block; height: 8em; margin-right: 1em; text-align: center; width: 8em; background-size: 60% 60%; background-position: 50% 20%; background-repeat: no-repeat; }
+.modify-video .list .button.focused { color: rgb(40, 40, 40); background-color: rgb(255, 255, 255); }
+.modify-video .list .button span { display: block; font-size: 1.2em; margin: 4.6em 0.5em 0.5em; overflow: hidden; white-space: nowrap; }
+.modify-video .modify-edit-button { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_light.png); }
+.modify-video .modify-edit-button.focused { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_dark.png); }
+.modify-video .modify-delete-button { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_light.png); }
+.modify-video .modify-delete-button.focused { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_dark.png); }
+.delete-video-dialog .video-tile .details, .modify-video .video-tile .details { margin-top: -0.1em; }
+.browse-sets #modify-list .button { height: 7.5em; margin-right: 0.9em; width: 7.5em; }
+.browse-sets #modify-list .button span { font-size: 1.1em; margin-top: 5.2em; }
+.delete-video-dialog { margin-bottom: 14em; }
+.browse-sets .delete-video-dialog { margin-bottom: 1em; }
+.video-processing, .video-upload-error { font-size: 1.5em; }
+.video-upload-error .error-container { color: rgb(170, 170, 170); margin-top: 1em; }
+#dialog .buttons .upload-terms, #dialog .buttons .upload-terms:hover { color: rgb(85, 85, 85); display: block; font-size: 0.6em; margin-left: 1.5em; text-align: left; background-color: rgb(0, 0, 0); }
+.upload-progress { margin-bottom: 1em; width: 100%; }
+.upload-progress-value { text-align: left; width: 100%; }
+.upload-progress span { margin-left: -1em; position: relative; width: 4em; }
+.upload-progress .upload-progress-bar { width: 100%; background-color: rgb(170, 170, 170); }
+.upload-progress .upload-progress-bar .completed { height: 1em; background-color: rgb(39, 147, 230); }
+.privacy-button { cursor: pointer; position: relative; background: 0.4em 50% / 1.5em no-repeat; }
+.privacy-button .checkbox { height: 2em; left: 85%; position: absolute; top: 0px; width: 2em; background-size: 2em; background-position: 100% 50%; }
+.privacy-button.checked .checkbox { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-light.png); }
+.privacy-button.focused.checked .checkbox { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-dark.png); }
+.privacy-button .label .name { line-height: 1.5em; text-indent: 1.8em; background-size: 2em; background-position: 0px 0.5em; }
+.privacy-button .description { font-size: 0.6em; line-height: 0.8em; padding-left: 2.9em; }
+.privacy-button .name { font-size: 1em; line-height: 1.2em; padding-left: 1.7em; }
+.private-state, .video-tile .private { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-light.png); }
+.private-state.focused { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-dark.png); }
+.public-state, .video-tile .public { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-light.png); }
+.public-state.focused { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-dark.png); }
+.unlisted-state, .video-tile .unlisted { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-light.png); }
+.unlisted-state.focused { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-dark.png); }
+.video-tile .private, .video-tile .public, .video-tile .unlisted { min-height: 1.5em; min-width: 1.5em; padding-left: 1.5em; background-size: 1.5em; background-position: 0% 50%; background-repeat: no-repeat; }
+.video-privacy .button, .video-overview .button { display: inline-block; height: 2em; line-height: 2em; margin: 0.1em 0px; overflow: hidden; padding: 0.1em 0.5em; vertical-align: top; white-space: nowrap; width: 65%; }
+.video-privacy .button { width: 85%; }
+.video-overview .button:first-child { width: 20%; }
+.video-privacy .button.focused, .video-privacy .button:not(.disabled):hover, .video-overview .button.focused, .video-overview .button:not(.disabled):hover { color: rgb(103, 103, 103); background-color: rgb(255, 255, 255); }
+#dialog.browse-sets .video-privacy .button:nth-child(2) { width: 11em; }
+#dialog.browse-sets .video-uploads { margin: 3em 1em 2em; }
+#dialog.browse-sets .video-uploads .carousel { overflow: hidden; }
+#dialog.browse-sets .video-uploads .carousel .video-tile .details { text-align: left; }
+.video-overview .title-button { line-height: 1em; white-space: normal; }
+#dialog.browse-sets .video-overview .title-button .label { display: inline-block; line-height: 2em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 95%; }
+.video-overview .channel-button { line-height: 2em; overflow: hidden; text-indent: 1.8em; text-overflow: ellipsis; background-size: 1.5em; background-position: 0.35em 50%; background-repeat: no-repeat; }
+.video-uploads .carousel { height: 20em; position: relative; white-space: nowrap; }
+.video-tile-container { display: inline-block; margin-top: 1.7em; text-align: right; width: 35%; }
+.video-tile-container .video-tile { border: 0.1em solid rgba(255, 255, 255, 0.2); display: inline-block; height: 22em; position: static; text-align: left; width: 20em; }
+.video-tile-container .video-tile .tile-top { height: 51%; }
+.video-tile-container .video-tile .tile-bottom .details { height: inherit; }
+.video-uploads .carousel .video-tile { height: 20em; width: 18em; }
+.video-uploads .video-tile .decoration { top: 7em; }
+.video-tile-container .video-tile .tile-bottom, .video-uploads .video-tile .tile-bottom { width: initial; }
+.dialog.closed-captions #dialog-wrapper { margin-top: 5em; }
+#dialog.closed-captions-language-only #dialog-wrapper { padding: 1.6em 26%; }
+#dialog.closed-captions-language-only #options-list { display: none; }
+#legend.legend-for-dialog-closedCaptionsDialog { bottom: 24%; }
+#dialog.closed-captions-language-only ~ #legend { right: 29%; }
+.simple-dialog { margin: 3em; font-size: 1.6em; }
+.lang-ja_JP .connection-instructions .step1, .lang-ja_JP .connection-instructions .step2, .lang-ko_KR .connection-instructions .step1, .lang-ko_KR .connection-instructions .step2, .lang-zh_CN .connection-instructions .step1, .lang-zh_CN .connection-instructions .step2, .lang-zh_HK .connection-instructions .step1, .lang-zh_HK .connection-instructions .step2, .lang-zh_TW .connection-instructions .step1, .lang-zh_TW .connection-instructions .step2 { font-size: 0.8em; }
+.lang-de_DE .action-tile .content .title, .lang-el_GR .action-tile .content .title, .lang-es_ES .action-tile .content .title, .lang-es_MX .action-tile .content .title, .lang-fr_FR .action-tile .content .title, .lang-fr_CA .action-tile .content .title, .lang-ko_KR .action-tile .content .title, .lang-nl_NL .action-tile .content .title, .lang-pl_PL .action-tile .content .title, .lang-pt_BR .action-tile .content .title, .lang-pt_PT .action-tile .content .title, .lang-ru_RU .action-tile .content .title, .lang-uk_UA .action-tile .content .title { font-size: 2em; }
+.lang-it_IT .action-tile .content .title { font-size: 1.8em; }
+.lang-es_ES .action-tile .improve-yt-tile .title, .lang-fr_CA .action-tile .history-tile .title, .lang-fr_FR .action-tile .history-tile .title, .lang-de_DE .action-tile .terms-tile .title, .lang-fr_CA .action-tile .terms-tile .title, .lang-fr_FR .action-tile .terms-tile .title { font-size: 1.7em; }
+.lang-es_ES .action-tile .videoinfo-tile .title, .lang-es_MX .action-tile .videoinfo-tile .title, .lang-fr_CA .action-tile .videoinfo-tile .title, .lang-fr_FR .action-tile .videoinfo-tile .title, .lang-pt_BR .action-tile .videoinfo-tile .title { font-size: 1.5em; white-space: normal; }
+.lang-de_DE .action-tile .videoinfo-tile .title { font-size: 1.45em; padding-left: 0.5em; padding-right: 0.5em; white-space: normal; }
+.lang-es_ES .action-tile .videoinfo-tile .label, .lang-es_MX .action-tile .videoinfo-tile .label, .lang-fr_CA .action-tile .videoinfo-tile .label, .lang-fr_FR .action-tile .videoinfo-tile .label, .lang-pt_BR .action-tile .videoinfo-tile .label { padding-top: 0.6em; }
+.lang-de_DE .action-tile .videoinfo-tile .label { font-size: 1.6em; padding-top: 0.7em; }
+.lang-ja_JP .action-tile .terms-tile .title { font-size: 2em; }
+.lang-ja_JP #transliteration .list { font-size: 1.2em; }
+.lang-ja_JP #keyboard-grid { font-size: 1.5em; }
+.lang-ja_JP #keyboard-spacebar { margin-left: 5.5em; }
+.lang-zh_CN #search .horizontal-list, .lang-zh_HK #search .horizontal-list, .lang-zh_TW #search .horizontal-list, .lang-ja_JP #search .horizontal-list { transform: translateY(9.5em); }
+.lang-ko_KR #search .horizontal-list { transform: translateY(10.5em); }
+.lang-ko_KR #search-keyboard { font-size: 1.82em; }
+.lang-ko_KR #letter-suggest .button { width: 1em; }
+.lang-ko_KR #keyboard-grid, .lang-ru_RU #keyboard-grid, .lang-uk_UA #keyboard-grid { margin-top: 0.3em; }
+.lang-ko_KR #keyboard-grid.lang-ko .numbers-toggle-tile.button, .lang-ru_RU #keyboard-grid.lang-ru .numbers-toggle-tile.button, .lang-uk_UA #keyboard-grid.lang-ua .numbers-toggle-tile.button { font-size: 0.75em; }
+.lang-ko_KR #keyboard-grid .button, .lang-ru_RU #keyboard-grid .button, .lang-uk_UA #keyboard-grid .button { height: 1.2em; line-height: 1.1em; margin-top: 0.6em; }
+.lang-ko_KR #letter-suggest .button, .lang-ru_RU #letter-suggest .button, .lang-uk_UA #letter-suggest .button { height: 1.2em; line-height: 1.1em; width: 1.2em; }
+.lang-ko_KR .search-state #spinner, .lang-ru_RU .search-state #spinner, .lang-uk_UA .search-state #spinner, .lang-ja_JP .search-state #spinner { top: 25em; }
+.lang-ko_KR .search-state .application-message, .lang-ru_RU .search-state .application-message, .lang-uk_UA .search-state .application-message, .lang-ja_JP .search-state .application-message { top: 55%; }
+.lang-ru_RU #keyboard-grid.lang-ru .button, .lang-uk_UA #keyboard-grid.lang-ua .button, .lang-ko_KR #keyboard-grid, .lang-ko_KR #letter-suggest, .lang-ko_KR #keyboard-spacebar { font-size: 1em; }
+.lang-ru_RU #keyboard-spacebar, .lang-uk_UA #keyboard-spacebar { margin-left: 4.2em; }
+.lang-de_DE .countdown-ad-callout .time-left-label, .lang-de_DE .countdown-ad-callout .skip-time-label { font-size: 1.1em; }
+.lang-cs_CZ .action-tile .description, .lang-de_DE .action-tile .description, .lang-hi_IN .action-tile .description, .lang-pl_PL .action-tile .description, .lang-pt_BR .action-tile .description, .lang-pt_PT .action-tile .description, .lang-ru_RU .action-tile .description, .lang-uk_UA .action-tile .description { font-size: 1.3em; }
+.lang-de_DE .guide-button.footer .guide-button-title { width: 27.81em; }
+.lang-de_DE .guide-user-name { width: 13.5em; }
+.lang-nl_NL .guide-button.disabled .guide-button-title, .lang-de_DE .guide-button.disabled .guide-button-title, .lang-fr_FR .guide-button.disabled .guide-button-title, .lang-pt_PT .guide-button.disabled .guide-button-title { width: 13em; }
+.lang-tr_TR #search #keyboard-grid .button.clear-query-tile, .lang-tr_TR .action-tile .title, .lang-tr_TR .guide-button-icon, .lang-tr_TR #keyboard-grid .button, .lang-tr_TR .tile-top .badge, .lang-tr_TR .tile-top .duration, .lang-tr_TR .title-card .badges span .lang-tr_TR.lang-case-sensitive .player-controls .button span::first-letter, .lang-tr_TR.lang-case-sensitive .player-controls .toggle-button span::first-letter, .lang-tr_TR.lang-case-sensitive .snap-controls .speakable span::first-letter, .lang-tr_TR.lang-case-sensitive .voice-command::first-letter { text-transform: none; }
+.voice-command { display: none; }
+.lang-case-sensitive .voice-command::first-letter { text-transform: uppercase; }
+.engaged .voice-command { color: rgb(93, 194, 30); display: block; font-size: 1em; background-color: rgba(22, 22, 22, 0.701961); }
+.engaged .horizontal-list .carousel .voice-command { display: none; }
+.engaged .horizontal-list.focused .carousel .voice-command { display: block; }
+.engaged .pivot-video-tile .voice-command, .engaged .pivot-channel-tile .voice-command { display: none; }
+.engaged .pivot-video-tile.speakable .voice-command, .engaged .pivot-channel-tile.speakable .voice-command { display: block; }
+.engaged .video-tile .voice-command, .engaged .pivot-video-tile .voice-command, .engaged .pivot-channel-tile .voice-command, .engaged .playlist-tile .voice-command, .engaged .channel-tile .voice-command { bottom: 50%; font-size: 1.5em; margin-top: -2.17em; padding: 0.5em 0.9em; opacity: 0.999; }
+.engaged .video-tile.disabled .voice-command, .engaged .pivot-video-tile.disabled .voice-command, .engaged .pivot-channel-tile.disabled .voice-command { display: none; }
+.engagement-indicator { bottom: 0.8em; display: none; font-size: 1.5em; left: 1.8em; position: absolute; width: 16em; }
+.engaged .engagement-indicator { color: rgb(93, 194, 30); display: block; background-color: transparent; }
+.engagement-indicator .icon { display: inline-block; height: 2em; vertical-align: middle; width: 2em; background: 50% 50% no-repeat; }
+.engagement-indicator .stop-listening { padding: 0.5em; }
+.engagement-indicator .stop-listening .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-aaa-engaged.png); }
+.engagement-indicator .text { text-align: center; }
+.engagement-indicator .title { display: inline-block; font-size: 0.9em; }
+.browse-sets-state.engaged .engagement-indicator, .browse-state.engaged .engagement-indicator, .post-play-state.engaged .engagement-indicator, .post-play-state.engaged .engagement-indicator, .settings-state.engaged .engagement-indicator, .search-state.engaged .engagement-indicator { display: block; }
+.watch-state.engaged .engagement-indicator { display: block; height: 3em; left: 0px; margin-left: auto; margin-right: auto; right: 0px; text-align: center; top: 20%; }
+.watch-focused .engagement-indicator .stop-listening { background-color: rgba(22, 22, 22, 0.701961); }
+.sliding-highlighter .select, .engaged .legend-item, .engaged #dialog .speakable.button, .engaged .context-menu .speakable.button, .engaged .speakable.action-tile .title, .engaged .modify-video .speakable, .engaged .modify-video .speakable.focused { color: rgb(93, 194, 30); }
+.voice-footer { bottom: 0px; color: rgb(93, 194, 30); font-size: 1.5em; height: 3em; padding: 1em 0px 0.6em; position: absolute; text-align: center; width: 100%; background-color: rgba(22, 22, 22, 0.701961); }
+.voice-footer .list { font-size: 0.65em; margin: -1.3em auto auto; padding-top: 1em; width: 29em; }
+.voice-footer .component { display: inline-block; padding-right: 1em; }
+.engaged .voice-footer { color: rgb(93, 194, 30); }
+.engaged .voice-footer li { display: inline; padding: 0px 2%; }
+.engaged .player-controls .button span, .engaged .player-controls .toggle-button span { color: rgb(93, 194, 30); display: block; }
+.engaged .player-controls .button.disabled span, .engaged .player-controls .toggle-button.disabled span { display: none; }
+.engaged #transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip .label, .engaged .skip-ad-button.canskip .label { color: rgb(93, 194, 30); }
+.engaged .player-controls-widget { margin-top: 7.4em; }
+.engaged .player-controls .voice-command.transport { top: 1em; }
+.legend { bottom: 5.5%; color: rgb(241, 241, 241); position: absolute; right: 5.5%; text-shadow: rgb(0, 0, 0) 2px 2px 4px; display: none; background: radial-gradient(closest-side, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0.0980392) 60%, rgba(0, 0, 0, 0)); }
+.limited-memory .legend { background: none; }
+.legend-item { cursor: pointer; display: none; margin: 0px 0px 0px 0.5em; }
+.legend-item span { vertical-align: middle; }
+.legend-item .icon { display: block; height: 2.5em; margin: auto; max-width: 100%; text-align: center; width: 2.5em; background-size: 100%; }
+.legend-item.more > .icon.icon-player-more { background-size: 0px; }
+.legend-item.more > .icon::before { font-family: youtube-icons; color: rgb(255, 255, 255); font-size: 1.9em; margin: auto; position: relative; top: 0.2em; }
+.legend-item .title { display: block; font-size: 1.1em; margin-top: 0px; text-align: center; text-transform: none; }
+#legend.back .back, #legend.close-guide .close-guide, #legend.delete .delete, #legend.exit .exit, #legend.guide .guide, #legend.search .search, #legend.space .space, #legend.home .home, #legend.modify .modify, #legend.more .more, .reversed-keys #legend.back .reversed-back { display: inline-block; }
+.reversed-keys #legend.back .back { display: none; }
+.desktop .legend, .game-console .legend, .tv .legend { display: inline-block; }
+.veryvibrant .legend { font-size: 1.2em; }
+.desktop .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-desktop.png); }
+.game-console.sony .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-bbb.png); }
+.rockandroll #legend .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ccc.png); }
+.skip-ad-callout .icon, .tv .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ddd.png); }
+.veryvibrant .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-eee.png); }
+.veryvibrant #user-info-background { transform: translateZ(0px); }
+.veryvibrant #search .horizontal-list { top: 30%; transform: none; }
+.veryvibrant .search-state #spinner { top: 20em; }
+.sellingApples .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ggg.png); }
+.nothingHere .legend-item .icon { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-fff.png); }
+.desktop .legend-item.back .icon, .desktop .legend-item.exit .icon { background-size: 240%; background-position: 0px 47.4%; }
+.desktop .legend-item.search .icon { background-size: 240%; background-position: 0px 100%; }
+.desktop .legend-item.close-guide .icon, .desktop .legend-item.guide .icon, .desktop .legend-item.home .icon, .desktop .legend-item.space .icon { background-size: 240%; background-position: 0px 73.7%; }
+.desktop .skip-ad-callout .icon { width: 6.6em; background-size: 520%; background-position: 31% 67.5%; }
+.game-console.sony .legend-item .icon, .tv .legend-item .icon, .veryvibrant .legend-item .icon { height: 1.5em; position: relative; bottom: 0.5em; width: 1.5em; background-repeat: no-repeat; }
+.game-console.sony .legend-item.more > .icon::before, .tv .legend-item.more > .icon::before, .veryvibrant .legend-item.more > .icon::before { top: initial; }
+.game-console.microsoft .legend-item { margin-left: 1.4em; }
+.game-console.microsoft .legend-item.back .icon, .game-console.microsoft .legend-item.exit .icon, .game-console.microsoft .legend-item.reversed-back .icon { background-position: 0px 27.5%; }
+.game-console.microsoft .legend-item.search .icon, .game-console.microsoft .legend-item.space .icon { background-position: 0px 82%; }
+.game-console.microsoft .legend-item.close-guide .icon, .game-console.microsoft .legend-item.delete .icon, .game-console.microsoft .legend-item.guide .icon, .game-console.microsoft .legend-item.home .icon, .game-console.microsoft .legend-item.modify .icon { background-position: 0px 54.9%; }
+.rockandroll #legend .legend-item.back .icon, .rockandroll #legend .legend-item.exit .icon { background-position: 0px 105%; }
+.game-console.sony .legend-item.back .icon, .game-console.sony .legend-item.exit .icon { background-position: 0px 0%; }
+.game-console.sony .legend-item.reversed-back .icon { background-position: 0px 100%; }
+.game-console.sony .legend-item.search .icon, .game-console.sony .legend-item.space .icon { background-position: 0px 87.5%; }
+.game-console.sony .legend-item.close-guide .icon, .game-console.sony .legend-item.delete .icon, .game-console.sony .legend-item.guide .icon, .game-console.sony .legend-item.home .icon { background-position: 0px 75%; }
+.game-console.sony #dialog .logout-authenticated-info, .game-console.microsoft #dialog .logout-authenticated-info { padding-top: 0px; }
+.game-console.sony .action-tile .platform-container, .game-console.microsoft .action-tile .platform-container { margin: 1em; text-align: center; }
+.game-console.sony .login-user-info .platform-user-name, .game-console.sony .platform-user-name, .game-console.microsoft .login-user-info .platform-user-name, .game-console.microsoft .platform-user-name { vertical-align: middle; }
+.game-console.sony .login-user-info .platform-user-icon, .game-console.sony .platform-user-icon, .game-console.microsoft .platform-user-icon, .game-console.microsoft .login-user-info .platform-user-icon { display: inline-block; height: 3em; vertical-align: middle; width: 3em; background-size: cover; }
+.game-console.sony #dialog .login-user-info .platform-container > div, .game-console.microsoft #dialog .login-user-info .platform-container > div { font-size: 1em; }
+.veryvibrant .advertisement-callout, .veryvibrant .advertisement-info, .veryvibrant #leanback-player-container, .veryvibrant .skip-ad-button, .veryvibrant .title-card, .veryvibrant #watch, .veryvibrant .toaster { }
+.veryvibrant .pivot-shelf-list { opacity: 1; }
+.veryvibrant .legend-item.back .icon, .veryvibrant .legend-item.exit .icon { background-position: 0px 33.3%; }
+.veryvibrant .legend-item.search .icon { background-position: 0px 100%; }
+.veryvibrant .legend-item.close-guide .icon, .veryvibrant .legend-item.delete .icon, .veryvibrant .legend-item.guide .icon, .veryvibrant .legend-item.home .icon { background-position: 0px 66.7%; }
+.veryvibrant .qr-code-wrapper { display: none; }
+.veryvibrant #search .search-pairing { display: none; }
+.veryvibrant #search-suggestions { font-size: 1.6em; height: 1.6em; }
+.veryvibrant .search-state .application-message { top: 35%; }
+.tv .legend-item.guide .icon, .tv .legend-item.close-guide .icon, .tv .skip-ad-callout .icon { background-position: 0px 100%; }
+.lg .legend-item.back, .lg .legend-item.exit { cursor: pointer; }
+.tv .legend-item.back .icon, .tv .legend-item.exit .icon { background-position: 0% 0%; }
+.lg .legend-item.back .icon, .lg .legend-item.exit .icon { opacity: 0.8; }
+.lg .legend-item.back:hover .icon, .lg .legend-item.exit:hover .icon { opacity: 1; }
+body.samsung { background-color: transparent !important; }
+body.lg { background-image: url(tv:) !important; background-color: transparent !important; }
+body.limited-memory { background-color: rgb(17, 17, 17); }
+.limited-memory .bg, .eureka .bg { background-image: none; background-color: rgb(46, 46, 46); }
+.limited-animation .loading-indicator, .opera .loading-indicator, .lg .loading-indicator { display: none; }
+.limited-animation .fallback-loading-indicator, .opera .fallback-loading-indicator, .lg .fallback-loading-indicator { display: block; }
+.limited-animation .video-tile .video-thumb { opacity: 1; }
+.limited-memory .video-tile .video-thumb { background-size: cover; }
+.limited-memory .video-tile .video-thumb.preloaded { background-size: auto; }
+.rockandroll.limited-memory .video-tile .video-thumb { opacity: 1; background-size: 100%; }
+.limited-animation.playlist-tile .count-overlay { background-color: rgb(0, 0, 0); }
+.search .placeholder-tile, .settings .placeholder-tile, .limited-animation .browse-content .list .placeholder-tile { height: 24em; width: 20.75em; }
+.guide .placeholder-tile { width: 100%; height: 2em; }
+.limited-animation .action-tile, .limited-animation .channel-tile, .limited-animation .playlist-tile, .limited-animation .auto-play-tile, .limited-animation .recent-search-tile, .limited-animation .video-tile, .limited-animation .browse-content .list .placeholder-tile, .search .placeholder-tile, .settings .placeholder-tile, .shelf .placeholder-tile { display: inline-block; margin-right: 1.1em; position: relative; vertical-align: top; }
+.limited-animation .shelves { margin-top: 2.5%; }
+.limited-animation .playlist-tile .overlay, .limited-animation .video-tile .overlay, .limited-memory .playlist-tile .overlay, .limited-memory .video-tile .overlay { opacity: 1; }
+.limited-memory .auto-play-tile .video-tile { margin: 0px; }
+.limited-animation .auto-play-tile .post-play-countdown { top: -4em; }
+.limited-animation .hide-background.video-tile .video-thumb { opacity: 1; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png) !important; background-repeat: no-repeat; }
+.limited-animation .action-tile.focused .content { text-shadow: none; }
+.limited-animation .post-play-countdown { text-shadow: none; }
+.limited-animation #keyboard-grid .button.disabled, .limited-animation #keyboard-grid .button.focused, .limited-animation #letter-suggest .button { background-color: rgb(153, 153, 153); }
+.limited-animation #search #text-box-background, .limited-animation #search #search-text-entry { background-color: rgb(0, 0, 0); }
+.limited-animation #search-keyboard, .limited-animation #letter-suggest { text-shadow: none; }
+.limited-animation #search-keyboard .disabled, .limited-animation #letter-suggest .button { color: rgb(0, 0, 0); text-shadow: none; }
+.limited-animation #letter-suggest .button.focused, .limited-animation #search-keyboard .button.focused { color: rgb(33, 33, 33); background-color: rgb(225, 225, 225); }
+.limited-animation #transliteration .list .button { border-right-color: rgb(241, 241, 241); }
+.limited-animation #transliteration .list .button.focused { background-color: rgb(153, 153, 153); }
+.limited-animation .toaster .toast-container { background-color: rgb(27, 25, 26); }
+.limited-animation .title-card, .limited-memory.limited-animation.sets-ui .title-card { height: 20%; background: rgb(0, 0, 0); }
+.opera .focused, .opera :focus { outline: invert none medium; }
+.eureka #browse-sets, .eureka #dialog .buttons, .eureka .legend, .eureka #transport-controls { display: none; }
+#eureka-player-controls-container { display: none; position: absolute; top: 17em; width: 100%; }
+.eureka #eureka-player-controls-container { display: block; }
+.eureka .loading #eureka-player-controls-container { opacity: 0; }
+#eureka-player-controls { border-radius: 1em; height: 11.5em; margin: 0px auto; overflow: hidden; width: 11.5em; background-size: 100%; }
+.eureka #eureka-player-controls { opacity: 0; }
+@-webkit-keyframes showAndShrinkPause { 
+  0% { transform: scale(1.5); opacity: 0; }
+  100% { opacity: 0.7; }
+}
+@-webkit-keyframes hideAndGrowPlay { 
+  0% { opacity: 0.7; }
+  100% { transform: scale(1.5); opacity: 0; }
+}
+.eureka #watch.play #eureka-player-controls { animation: hideAndGrowPlay 0.25s linear 0s 1 normal none; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/player-play.png); }
+.eureka #watch.pause #eureka-player-controls { animation: showAndShrinkPause 0.25s linear 0s 1 normal none; opacity: 0.7; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/player-pause.png); }
+.sellingApples .action-tile, .sellingApples .legend-item.back, .sellingApples .legend-item.delete, .sellingApples .legend-item.exit, .sellingApples .legend-item.home, .sellingApples .legend-item.modify, .sellingApples .legend-item.reversed-back, .sellingApples .legend-item.search, .sellingApples .player-controls div, .sellingApples .auto-play-tile, .sellingApples .video-stream, .sellingApples .video-tile, .sellingApples #browse-search-bar, .sellingApples #guide.focused .guide-button, .sellingApples #player-controls .item, .sellingApples #snap-buttons > div { }
+.sellingApples #browse-sets { }
+.sellingApples #guide.focused .carousel { }
+.sellingApples .settings-shelf { }
+.sellingApples #transliteration .button:hover, .sellingApples #keyboard-grid .button:hover { cursor: default; background: none; }
+.search-hint { display: none; }
+.sellingApples .search-hint, .nothingHere .search-hint { color: rgb(107, 107, 107); display: block; font-size: 1.4em; line-height: 2em; }
+.context-menu-defocuser { height: 100%; left: 0px; position: absolute; top: 0px; width: 100%; background-color: rgba(0, 0, 0, 0.498039); }
+.context-menu-list { height: initial; left: 50%; padding-top: 2.5em; position: relative; top: 50%; transform: translate(-50%, -50%); width: 30%; background-color: rgb(0, 0, 0); }
+.context-menu-list .button { border-color: rgb(0, 0, 0); border-style: solid; border-width: 0.5em 1em; color: rgb(225, 225, 225); cursor: pointer; font-family: roboto-regular; font-size: 1.5em; height: auto; line-height: 2.5em; margin: 0px; text-align: left; text-indent: 1em; transition-duration: 200ms; transition-property: background-color, color; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
+.context-menu-list .button::before { font-family: youtube-icons; padding-right: 1em; }
+.context-menu-list .button.icon-platform-switch-users { border-style: solid; border-color: rgb(31, 31, 31); border-width: 2em 1em; height: initial; line-height: initial; margin-top: 1em; padding: 0.5em 0px 0.5em 3em; text-indent: 0px; background: url(www.youtube.com/s/tv/html5/f0d770f4/app-prod.css) 0.5em 50% / 2em 2em no-repeat rgb(31, 31, 31); }
+.context-menu-list .button.focused { color: rgb(0, 0, 0); background-color: rgb(225, 225, 225); }
+.call-to-cast { display: none; }
+.call-to-cast.focused { bottom: 0px; display: block; left: 0px; position: absolute; right: 0px; top: 0px; }
+.call-to-cast-text { color: rgb(241, 241, 241); font-weight: normal; text-shadow: rgb(0, 0, 0) 0.06em 0.06em; width: 38%; }
+h2.call-to-cast-text { font-size: 3.2em; margin-bottom: 0.3em; margin-top: 0px; padding-top: 1.5em; }
+h3.call-to-cast-text { font-size: 1.7em; }
+.call-to-cast .end-screen { display: none; height: 100%; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; }
+.call-to-cast .end-screen.active { display: block; }
+.call-to-cast .end-screen .call-to-cast-text { color: rgb(255, 255, 255); width: 40%; }
+.call-to-cast .end-screen .call-to-cast-text em { color: rgb(0, 144, 255); font-style: normal; }
+.call-to-cast .end-screen h2.call-to-cast-text { margin-bottom: 0.5em; padding-top: 2em; }
+.call-to-cast .end-screen h3.call-to-cast-text { line-height: 1.5em; }
+.call-to-cast .end-screen.left .call-to-cast-text { margin-left: 5%; }
+.call-to-cast .end-screen.right .call-to-cast-text { margin-left: 50%; }
+.call-to-cast .end-screen .yt-logo, .call-to-cast .end-screen .yt-kids-logo { bottom: 8%; height: 13.88%; position: fixed; width: 100%; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-yt-logo.png); background-size: contain; background-repeat: no-repeat; }
+.call-to-cast .end-screen.left .yt-logo, .call-to-cast .end-screen.left .yt-kids-logo { left: 4%; background-position: 0% 50%; }
+.call-to-cast .end-screen.right .yt-logo, .call-to-cast .end-screen.right .yt-kids-logo { right: 4%; background-position: 100% 50%; }
+.call-to-cast .end-screen .yt-kids-logo { height: 20%; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/yt-kids-logo.png); }
+.call-to-cast .end-screen.multi-user { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-multi-user.jpg); }
+.call-to-cast .end-screen.yt-mix { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-yt-mix.jpg); }
+.call-to-cast .end-screen.tv-queue { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-tv-queue.jpg); }
+.call-to-cast .end-screen.kids-promo { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-promo.jpg); }
+.call-to-cast .end-screen.kids-mother-goose { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-mother-goose.jpg); }
+.call-to-cast .end-screen.kids-rainbow { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-rainbow.jpg); }
+.call-to-cast .end-screen.kids-sesame { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-sesame.jpg); }
+.call-to-cast .end-screen.kids-talking-tom { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-talking-tom.jpg); }
+.call-to-cast .end-screen.kids-wonderquest { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-wonderquest.jpg); }
+.call-to-cast .THEME-cl.end-screen.kids-promo h2.call-to-cast-text { width: 80%; }
+.call-to-cast .THEME-k.end-screen h3.call-to-cast-text { font-size: 3em; line-height: 1.4em; margin-top: 0px; padding-top: 10%; padding-left: 5%; width: 45%; }
+.call-to-cast .end-screen.gaming-heart { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-gaming-heart.jpg); }
+.call-to-cast .THEME-g.end-screen h3.call-to-cast-text { font-size: 2.2em; padding-top: 0%; width: 100%; }
+.call-to-cast .end-screen.loki { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-loki.jpg); }
+.call-to-cast .THEME-up.end-screen h3.call-to-cast-text { font-size: 2.2em; margin-left: 0%; padding-top: 17em; text-align: center; width: 100%; }
+.call-to-cast .THEME-m.end-screen h2.call-to-cast-text { font-size: 2.2em; margin-bottom: 0px; text-align: center; width: 100%; }
+.call-to-cast .THEME-m.end-screen h3.call-to-cast-text { margin-top: 0px; text-align: center; width: 100%; }
+.call-to-cast .THEME-m.end-screen.music-ready { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg); }
+.call-to-cast .THEME-m.end-screen.music-ready .call-to-cast-logo { height: 60%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo.png) 50% 100% no-repeat; }
+.call-to-cast .THEME-m.end-screen.music-ready h2.call-to-cast-text { padding-top: 10%; }
+.call-to-cast .THEME-m.end-screen.music-party { height: 100%; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg); }
+.call-to-cast .THEME-m.end-screen.music-party .call-to-cast-logo { height: 55%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music-party-logo.png) 50% 100% no-repeat; }
+.call-to-cast .THEME-m.end-screen.music-party .footer { height: 10%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo-small.png) 50% 0% no-repeat; }
+.snap-controls { height: 90%; padding: 0.5em; position: relative; }
+.snapped.blurred #snap-buttons, .snapped.blurred #unsupported-mode, .snapped.blurred #ad-callout, .snapped.blurred .logo-container, .snapped.blurred .title-card, .snapped.blurred .up-next { opacity: 0.25 !important; }
+.snapped #dialog, .snapped #guide, .snapped #search, .snapped #settings, .snapped #title-tray, .snapped #transport-controls, .snapped .ad-showing .video-ads, .snapped .advertisement-info, .snapped .application-message, .snapped .browse, .snapped .browse-sets, .snapped .caption-window, .snapped .countdown-ad-callout, .snapped .html5-video-info-panel, .snapped .legend, .snapped .player-video-avatar, .snapped .quality-status, .snapped .skip-ad-button, .snapped .skip-ad-callout, .snapped .toaster, .snapped.blurred.browse-sets-state .title-card, .snapped.blurred.search-state .title-card, .snapped.blurred.settings-state .title-card, .snapped.dialog-focused #snap-progress-bar, .snapped.dialog-focused #watch { display: none !important; }
+.snapped .advertisement-tooltip { color: rgb(160, 160, 160); font-size: 0.4em; left: 0px; top: 0px; }
+.snapped .advertisement-tooltip .remaining_duration { color: rgb(113, 113, 113); }
+.snapped #ad-callout { left: 5%; top: 18%; }
+.snapped .debug-watermark { font-size: 0.2em; width: 100%; }
+#app-markup.snapped { background-color: rgb(35, 31, 32); }
+.snapped #background { display: none; }
+.snapped { font-size: 2em; }
+.snapped.watch-state .logo-container { opacity: inherit; }
+.snapped .icon-youtube-logo::before { content: ""; }
+.snap-controls .logo-container { display: inherit; height: 2.5em; left: 0px; position: absolute; right: 0px; top: 5%; background: url(www.youtube.com/s/tv/html5/f0d770f4/img/yt-logo-fullcolor.png) 50% 0% no-repeat; }
+.snapped .ad-video, .snapped .ad-created .video-stream { height: 270px !important; width: 480px !important; }
+.snapped .video-stream, .snapped .html5-video-content { max-height: 5.6em; transform: scale(0.9) !important; top: 4.4em !important; }
+.snapped .html5-video-controls { top: 9.8em !important; }
+.snapped .player-video-title { color: rgb(160, 160, 160); font-size: 0.7em; line-height: 1.1em; margin: 0px; max-height: 2.2em; white-space: normal; width: 12em; }
+.snapped .player-meta { left: 0px; margin: 0px; position: inherit; top: 0px; }
+.snapped .player-meta .player-video-text { padding-left: 0px; }
+.snapped .player-meta .player-video-details { color: rgb(113, 113, 113); font-size: 0.5em; line-height: 1.1em; }
+.snapped .player-meta .player-video-details > div { margin-left: 0px; }
+.snapped .player-video-details .uploaded-date, .snapped .player-video-details .set-context, .snapped .player-video-details .view-count { font-size: 0.9em; margin-top: 0px; }
+.watch-state.snapped #snap-progress-bar { display: block; }
+#snap-progress-bar { display: none; height: 0.1em; left: 0px; margin-top: 9.25em; padding: 0px; position: relative; top: 0px; width: 100%; background-position: 0% 0%; }
+#snap-progress-bar .progress-bar-disc, #snap-progress-bar .progress-bar-playhead { display: none; }
+#snap-progress-bar div { height: 5px; top: 0px; }
+.snapped .title-card { border: none; height: initial; padding-top: 0.3em; position: inherit; background: none; }
+#unsupported-mode { color: rgb(255, 255, 255); font-size: 0.9em; line-height: 1.2em; padding: 80% 1em 0px; width: 8em; }
+.snapped .loading-indicator { height: 5em; width: 5em; }
+.snapped #spinner { top: 19%; transform: scale(0.5); }
+.engaged.snapped .engagement-indicator { display: inline-block; left: 0px; margin-left: auto; margin-right: auto; position: absolute; right: 0px; text-align: center; font-size: 0.6em !important; top: 4.2em !important; }
+.engaged.snapped .engagement-indicator .stop-listening { background: transparent; }
+.snap-controls #snap-buttons { bottom: 0px; position: absolute; }
+.snap-controls #snap-buttons .focused, .snap-controls #snap-buttons :hover { border-radius: 0.15em; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); }
+.snap-controls #snap-buttons .button, .snap-controls #snap-buttons .toggle-button { display: inline-block; font-size: 0.8em; height: 1em; margin-left: 0.5em; padding: 1em; position: relative; text-align: center; top: 0px; width: 1em; }
+.snap-controls #snap-buttons div { color: rgb(255, 255, 255); cursor: pointer; vertical-align: middle; }
+.snap-controls #snap-buttons div.disabled:hover { color: rgb(255, 255, 255); background-color: transparent; }
+.snap-controls #snap-buttons div.focused { opacity: 1; }
+.snap-controls #snap-buttons div.disabled { opacity: 0.2; }
+.snap-controls .speakable span, .snap-controls .disabled span { display: none; }
+.engaged .snap-controls .speakable:not(.disabled) span { color: rgb(93, 194, 30); display: block; font-size: 0.6em; left: 0px; overflow: hidden; pointer-events: none; position: absolute; text-align: center; top: -1.5em; width: 100%; word-break: break-all; }
+.lang-case-sensitive .snap-controls .speakable span::first-letter { text-transform: uppercase; }
+.snap-controls .icon-player-play { font-family: youtube-icons; }
+.snap-controls .icon-mute, .snap-controls .icon-fullscreen { background-size: 3em; background-position: 50% 50%; background-repeat: no-repeat; }
+.snap-controls .icon-mute, .snap-controls .icon-mute.disabled { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-active.png); }
+.snap-controls .icon-mute.focused, .snap-controls .icon-mute:hover:not(.disabled) { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-onhover-active.png); }
+.snap-controls .icon-mute.toggle-selected { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-active.png); }
+.snap-controls .icon-mute.toggle-selected.focused, .snap-controls .icon-mute.toggle-selected:hover { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-onhover-active.png); }
+.snap-controls .icon-fullscreen { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-active.png); }
+.snap-controls .icon-fullscreen.focused, .snap-controls .icon-fullscreen:hover { background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-onhover-active.png); }
+.up-next { height: 3em; padding-top: 1em; }
+.up-next div { color: rgb(160, 160, 160); font-size: 0.6em; }
+.up-next .video-title { height: 1.2em; line-height: 1.2em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; }
+.up-next .video-thumb { display: inline-block; height: 100%; margin-top: 0.2em; max-height: 2.5em; vertical-align: top; width: 5em; background: 50% 50% / 100% no-repeat; }
+#browse-sets { height: 100%; left: 0px; overflow: hidden; position: absolute; right: 0px; background-color: rgb(34, 34, 34); }
+#browse-sets.no-background, .limited-memory #browse-sets { background-color: rgba(0, 0, 0, 0); }
+#browse-search-bar { cursor: pointer; height: 3em; left: 8em; margin-right: 18em; position: absolute; right: 2.5em; top: 2.5em; background-color: rgba(153, 153, 153, 0.2); }
+.limited-animation #browse-search-bar { background-color: rgb(79, 87, 90); }
+#browse-search-bar.focused, #browse-search-bar:hover { background: rgb(255, 255, 255); }
+#browse-search-bar .icon { color: rgba(255, 255, 255, 0.4); display: block; font-family: youtube-icons; font-size: 1.8em; margin: 0px; padding: 0.35em 0px 0px 0.5em; text-align: left; }
+.limited-animation #browse-search-bar .icon { color: rgb(225, 225, 225); }
+.youtube-logo-top { height: 3.4em; position: absolute; right: 9.5em; top: 2.3em; width: 8.4em; font-family: youtube-icons; }
+#browse-sets.has-header-content .youtube-logo-top { display: none; }
+.youtube-logo::before { color: rgba(153, 153, 153, 0.498039); display: block; font-size: 3.4em; }
+.youtube-unlimited-logo::before { color: rgba(153, 153, 153, 0.498039); display: none; font-size: 3.4em; position: relative; right: 0.5em; }
+.unlimited .youtube-logo::before { display: none; }
+.unlimited .youtube-unlimited-logo::before { display: block; }
+.limited-animation .youtube-unlimited-logo::before, .limited-animation .youtube-logo::before { color: rgb(79, 87, 90); }
+#browse-search-bar.focused .icon, #browse-search-bar:hover .icon { color: rgb(68, 68, 68); }
+#platform-user-icon { height: 4em; position: absolute; right: 3em; top: 2em; width: 4em; background-size: contain; background-position: 50% 50%; background-repeat: no-repeat; }
+#browse-header { height: 60%; position: relative; background-size: cover; background-position: 0px -8em; }
+.limited-memory.limited-animation #browse-header { background-size: contain; background-position: 6em 0px; background-repeat: no-repeat; }
+.no-background #browse-header { background-image: none !important; }
+.browse-sets #browse-header.collapsed { transform: translateY(-27%); }
+.limited-memory .browse-sets #browse-header.collapsed { top: -7em; transform: none; }
+#browse-header .title { color: rgb(225, 225, 225); display: inline-block; font-size: 2.25em; margin-bottom: -0.23em; overflow: hidden; text-overflow: ellipsis; transform-origin: left 50% 0px; white-space: nowrap; width: 23.7em; }
+#browse-header.one-button .title { width: 18.7em; }
+#browse-header.two-buttons .title { width: 14em; }
+#browse-header.collapsed .title { overflow: visible; transform: scale(0.8, 0.8) translateY(-5em) translateX(-1.5em); }
+.browse-header-gradient { height: 100%; width: 100%; background: linear-gradient(rgba(34, 34, 34, 0) 0%, rgba(34, 34, 34, 0) 15%, rgb(34, 34, 34) 100%); }
+.limited-memory .browse-header-gradient { display: none; }
+.no-background .browse-header-gradient { visibility: hidden; }
+.browse-header-metadata { left: 8em; position: absolute; transform: translateZ(0px); }
+.limited-memory.limited-animation .browse-header-metadata { top: 11.6em; }
+.limited-memory.limited-animation #browse-header.collapsed .browse-header-metadata { font-size: inherit; left: 8em; top: 11em; }
+.limited-memory.limited-animation #browse-header.collapsed .browse-header-metadata .browse-header-avatar { height: 4em; margin-right: 1em; width: 4em; }
+.browse-header-avatar { display: inline-block; height: 5em; margin-right: 1.3em; transform-origin: left 50% 0px; width: 5em; background-size: contain; }
+#browse-header.collapsed .browse-header-avatar { transform: scale(0.61, 0.61) translateY(-13.5em); }
+#browse-header.collapsed .browse-header-button-bar { transform: translateY(-6.25em); opacity: 0; }
+.browse-header-button-bar { border-radius: 0.15em; font-size: 1.1em; height: 2.4em; margin-bottom: -0.59em; padding: 0.59em; position: absolute; right: 3.5em; background: rgba(0, 0, 0, 0.4); }
+.limited-animation .browse-header-button-bar { background: rgb(31, 36, 38); }
+.limited-memory.limited-animation .browse-header-button-bar { top: 13em; }
+.browse-header-button-bar, .browse-header-metadata { bottom: 3.9em; }
+.browse-header-button-bar .button { border-radius: 0.12em; color: rgb(225, 225, 225); cursor: default; display: inline-block; height: 2.4em; min-width: 8.2em; overflow: hidden; padding-right: 1em; white-space: nowrap; }
+.browse-header-button-bar .button span { line-height: 2.4em; vertical-align: middle; }
+.browse-header-button-bar .button.focused, .browse-header-button-bar .button.focused:hover { color: rgb(33, 33, 33); background: rgb(225, 225, 225); }
+.browse-header-button-bar .button:hover { background-color: rgb(102, 102, 102); }
+.browse-header-button-bar .button .icon { display: inline-block; font-family: youtube-icons; height: 2.4em; margin: 0px 1em; }
+.browse-header-subscribe .icon::before { font-size: 2em; }
+.browse-header-subscribe.toggle-selected .icon::before { content: ""; font-size: 1em; }
+.browse-header-subscribe.toggle-selected.focused { color: rgb(206, 41, 45); }
+.browse-header-subscribe.disabled { background-color: rgba(0, 0, 0, 0); }
+.browse-content { height: 80%; left: 8em; position: absolute; top: 14.5%; width: 100%; }
+.browse-sets.collapsed .browse-content { transform: translateY(44%); }
+.limited-memory .browse-sets.collapsed .browse-content { top: 20em; transform: none; }
+#browse-header, .browse-header-avatar, .browse-header-button-bar, .browse-content, #browse-header .title { transform: translateZ(0px); transition: -webkit-transform 0.25s; }
+.browse-header-button-bar { transition: opacity 0.25s, transform 0.25s; }
+.limited-animation #browse-header, .limited-animation .browse-header-avatar, .limited-animation #browse-header.collapsed .browse-header-avatar, .limited-animation .browse-content, .limited-animation .browse-header-button-bar, .limited-animation #browse-header .title, .limited-animation .browse-content .shelves, .limited-animation .browse-header-metadata, .limited-animation .shelf #content-container, .limited-animation .shelves > .title, .limited-animation .shelf > .title, .limited-animation .horizontal-list > .content, .limited-animation .horizontal-list, .limited-animation .shelves .carousel { transition: none; transform: none; }
+.limited-animation #browse-header.collapsed .browse-header-metadata { font-size: 0.6em; left: 13.25em; top: 17.75em; }
+.limited-animation #browse-header.collapsed .browse-header-metadata .title { font-size: 3em; }
+.limited-memory #browse-header.collapsed .browse-header-metadata .title { font-size: 1.8em; }
+.limited-animation .browse-content .list { margin-left: -9.5em; width: 126em; }
+.limited-animation .browse-content .shelf > .title { margin-left: 6em; }
+.limited-animation.sets-ui .action-tile:not(.focused), .limited-animation.sets-ui .auto-play-tile:not(.focused) .video-tile, .limited-animation.sets-ui .channel-tile:not(.focused), .limited-animation.sets-ui .playlist-tile:not(.focused), .limited-animation.sets-ui .recent-search-tile:not(.focused), .limited-animation.sets-ui .video-tile:not(.focused), .rockandroll.limited-animation.sets-ui .action-tile:hover:not(.focused), .rockandroll.limited-animation.sets-ui .auto-play-tile:hover:not(.focused) .video-tile, .rockandroll.limited-animation.sets-ui .channel-tile:hover:not(.focused), .rockandroll.limited-animation.sets-ui .playlist-tile:hover:not(.focused), .rockandroll.limited-animation.sets-ui .video-tile:hover:not(.focused) { background-color: rgb(33, 33, 33); }
+.limited-animation.sets-ui .action-tile:hover:not(.focused), .limited-animation.sets-ui .auto-play-tile:hover:not(.focused) .video-tile, .limited-animation.sets-ui .channel-tile:hover:not(.focused), .limited-animation.sets-ui .playlist-tile:hover:not(.focused), .limited-animation.sets-ui .recent-search-tile:hover:not(.focused), .limited-animation.sets-ui .video-tile:hover:not(.focused) { background-color: rgb(65, 65, 65); }
+.browse-content .shelves { margin-left: 0em; transform: translateZ(0px); }
+.browse-content .shelves > .no-content-message, .browse-content .horizontal-list > .no-content-message { margin-left: -8em; }
+.shelves > .no-content-message, .horizontal-list > .no-content-message { display: none; position: absolute; top: 8em; width: 100%; }
+.shelves.no-content > .no-content-message, .horizontal-list.no-content > .no-content-message { display: block; }
+.shelves > .no-content-message .text, .horizontal-list > .no-content-message .text { color: rgb(241, 241, 241); font-size: 1.8em; text-align: center; text-shadow: rgb(0, 0, 0) 0.04em 0.04em; }
+.shelf { width: 100%; }
+.limited-animation .shelf { margin-bottom: 1.8em; }
+.carousel .shelf { position: absolute; }
+.shelf #content-container { transform: translateZ(0px); }
+.shelves > .title, .shelf > .title { color: rgb(153, 153, 153); font-size: 1.6em; margin-bottom: 1em; margin-top: 0.2em; transform: translateZ(0px); white-space: nowrap; }
+.shelves > .title, .shelf.selected > .title { color: rgb(255, 255, 255); }
+.shelf > .title .annotation { color: rgb(119, 119, 119); font-size: 70%; margin-left: 0.5em; }
+.shelf.selected > .title .annotation { color: rgb(221, 221, 221); }
+.horizontal-list.no-model, .shelf.no-model, .survey-shelf.no-model { display: none; }
+.shelf > .icon { display: none; }
+.horizontal-list > .content { font-size: 79%; height: 26em; opacity: 1; transform: translateZ(0px); }
+.horizontal-list.focused > .content { opacity: 1; }
+.horizontal-list, .shelves .carousel, .browse-header-metadata { transform: translateZ(0px); }
+.shelf0to0 { opacity: 1; transform: translateY(0%) scale(1); }
+@-webkit-keyframes shelf0to1-anim { 
+  0% { transform: translateY(0%); }
+  100% { transform: translateY(100%); }
+}
+.shelf0to1 { animation: shelf0to1-anim 200ms forwards; }
+@-webkit-keyframes shelf0to2-anim { 
+  0% { opacity: 1; transform: translateX(0%) translateY(0%) scale(1); }
+  100% { opacity: 0; transform: translateX(-2%) translateY(-11%) scale(0.75); }
+}
+.shelf0to2 { animation: shelf0to2-anim 200ms forwards; }
+@-webkit-keyframes shelf1to0-anim { 
+  0% { transform: translateX(0%) translateY(100%); }
+  100% { transform: translateX(0%) translateY(0%); }
+}
+.shelf1to0 { animation: shelf1to0-anim 200ms forwards; }
+.shelf1to1 { opacity: 1; transform: translateX(0%) translateY(100%) scale(1); }
+@-webkit-keyframes shelf1to2-anim { 
+  0% { transform: translateX(0%) translateY(100%); }
+  99% { transform: translateX(0%) translateY(200%); }
+  100% { opacity: 0; transform: translateX(-2%) translateY(-11%) scale(0.75); }
+}
+.shelf1to2 { animation: shelf1to2-anim 200ms forwards; }
+@-webkit-keyframes shelf2to0-anim { 
+  0% { opacity: 0; transform: translateX(-2%) translateY(-11%) scale(0.75); }
+  100% { opacity: 1; transform: translateX(0%) translateY(0%) scale(1); }
+}
+.shelf2to0 { animation: shelf2to0-anim 200ms forwards; }
+@-webkit-keyframes shelf2to1-anim { 
+  0% { opacity: 1; transform: translateX(0%) translateY(200%); }
+  100% { opacity: 1; transform: translateX(0%) translateY(100%); }
+}
+.shelf2to1 { animation: shelf2to1-anim 200ms forwards; }
+.shelf2to2 { opacity: 0; transform: translateX(-2%) translateY(-11%) scale(0.75); }
+.limited-memory .shelves .list .video-tile:nth-child(1) .video-thumb, .limited-memory .shelves .list .channel-tile:nth-child(1) .video-thumb, .limited-memory.sets-ui #search .horizontal-list .list .video-tile:nth-child(1) .video-thumb, .limited-memory.sets-ui #search .horizontal-list .list .channel-tile:nth-child(1) .video-thumb, .limited-memory.sets-ui #browse .list .video-tile:nth-child(1) .video-thumb, .limited-memory.sets-ui #browse .list .channel-tile:nth-child(1) .video-thumb, .limited-memory.sets-ui #browse .list .video-tile:last-child .video-thumb, .limited-memory.sets-ui #browse .list .channel-tile:last-child .video-thumb { background: none !important; }
+.survey-shelf { position: absolute; }
+.survey-shelf > .title { color: rgb(255, 255, 255); display: inline-block; font-size: 1.6em; margin-bottom: 1em; margin-top: 0.2em; }
+.survey-shelf .action-tile .content > .title { display: none; }
+.survey-shelf .horizontal-list > .content { font-size: 79%; height: 26em; }
+.survey-shelf .description { color: rgb(255, 255, 255); visibility: visible; }
+.survey-shelf .button { display: inline-block; margin-bottom: 1em; margin-left: 2em; }
+.survey-shelf .sliding-highlighter { height: 8em; width: 8em; }
+.survey-shelf .action-tile, .exp-densityBrowse .survey-shelf .action-tile { border: 0px; height: 8em; width: 8em; }
+.survey-shelf .action-tile .content { height: 8em; width: 8em; }
+.survey-shelf .action-tile .description { color: rgb(119, 119, 119); font-size: 1.2em; margin-top: -1.3em; opacity: 1; white-space: nowrap; }
+.exp-densityBrowse .survey-shelf.focused .action-tile .description { display: block; }
+.exp-densityBrowse .survey-shelf .action-tile .description { display: none; }
+.survey-shelf .action-tile .large-action-icon, .exp-densityBrowse .survey-shelf .action-tile .large-action-icon { font-size: 5em; margin-top: 0.26em; padding-right: 0.2em; background-color: transparent; }
+.survey-shelf .action-tile.selected .large-action-icon, .exp-densityBrowse .survey-shelf .action-tile.selected .large-action-icon { color: rgb(255, 255, 255); }
+.survey-shelf .action-tile.focused .large-action-icon, .exp-densityBrowse .survey-shelf .action-tile.focused .large-action-icon { color: rgb(34, 34, 34); }
+.survey-shelf .button.focused { border-radius: 0.1em; color: rgb(34, 34, 34); padding: 0.2em; background-color: rgb(255, 255, 255); }
+.survey-shelf .button { color: rgb(119, 119, 119); }
+.limited-animation .survey-shelf { margin-bottom: 5em; position: relative; }
+.limited-animation .survey-shelf > .title { margin-left: 6em; }
+.limited-animation .exp-densityBrowse .survey-shelf > .title { margin-left: 5em; }
+.limited-animation .survey-shelf .horizontal-list { margin-left: 17.5em; }
+.limited-animation .exp-densityBrowse .survey-shelf .horizontal-list { margin-left: 13.5em; }
+.limited-animation .exp-densityBrowse .survey-shelf .action-tile .large-action-icon { margin-top: 0.12em; }
+.limited-animation .exp-densityBrowse .survey-shelf .action-tile .description { display: block; }
+#guide { box-shadow: black 0.1em 0px 1em 0em; height: 100%; left: 0px; overflow: hidden; position: absolute; transform: translateX(-23em) translateZ(0px); transition: transform 400ms cubic-bezier(0.4, 0, 0.2, 1); width: 28em; }
+.limited-memory.limited-animation #guide { box-shadow: none; transform: none; }
+.limited-memory #guide.focused { border-right-style: none; }
+#guide.focused { transform: translateX(0px); }
+#guide:hover { background-color: rgba(255, 255, 255, 0.2); }
+.limited-animation #guide:hover { background: none; }
+.limited-animation #guide, .limited-animation #guide #user-info-background, .limited-animation .guide-carousel-background { transition: none; }
+.guide-carousel-background { height: 100%; left: 0em; position: absolute; top: 0em; width: 100%; transition: background-color 400ms; background-color: rgba(0, 0, 0, 0.2); }
+.limited-animation .guide-carousel-background, .limited-animation #guide #user-info-background { background-color: rgb(31, 36, 38); }
+.limited-animation #guide:hover .guide-carousel-background, .limited-animation #guide:hover #user-info-background { background-color: rgb(56, 65, 69); }
+.limited-animation.limited-memory .guide-carousel-background, .limited-animation.limited-memory #guide #user-info-background { background-color: rgb(223, 35, 35); }
+.limited-memory .guide-carousel-background, .limited-memory #guide #user-info-background, #guide .list { display: none; }
+.limited-memory #guide.focused .guide-carousel-background, .limited-memory #guide.focused.logged-in #user-info-background, #guide.focused .list { display: block; }
+.logged-in .guide-carousel-background { top: 8.5em; }
+#guide.focused .guide-carousel-background, #guide.focused:hover .guide-carousel-background { background-color: rgb(223, 35, 35); }
+.collapsed-guide, #guide.focused .collapsed-guide { display: none; }
+.collapsed-guide-icons { color: rgb(133, 136, 138); font-size: 1.6em; left: 15em; opacity: 1; position: absolute; top: 7.5em; }
+.collapsed-guide-icon { font-family: youtube-icons; margin-top: 1em; margin-bottom: 1em; text-align: center; width: 2em; }
+#guide .collapsed-guide-icons { transition: opacity 150ms 450ms; }
+.limited-memory .collapsed-guide-icons { left: 1em; }
+.limited-animation #guide .collapsed-guide-icons { transition: none; }
+#guide.focused .collapsed-guide-icons { opacity: 0; transition: none; }
+#guide .collapsed-guide-icon.icon-guide-my-subs { display: none; }
+#guide.logged-in .collapsed-guide-icon.icon-guide-my-subs { display: block; }
+#guide.logged-in .collapsed-guide-icon.icon-popular { display: none; }
+.collapsed-guide-icon.icon-music { font-size: 0.925em; padding-left: 0.0375em; }
+.limited-memory .collapsed-guide { border-right-width: 0.2em; border-right-style: solid; border-right-color: rgb(17, 17, 17); display: block; height: 100%; left: 0px; width: 6em; background-color: rgb(31, 36, 38); }
+#error-message { display: none; }
+#guide.error.focused #error-message { color: rgb(255, 255, 255); display: block; font-size: 2em; padding: 2em; position: absolute; text-align: center; top: 12em; }
+#guide .sliding-highlighter { display: none; width: 100%; height: 4.2em; opacity: 0; }
+#guide.focused .sliding-highlighter { opacity: 1; }
+#guide.focused .sliding-highlighter { display: block; }
+#guide.focused #user-info-background { visibility: visible; }
+#guide #user-info-background { transition: background-color 400ms; background-color: rgba(0, 0, 0, 0.2); }
+#guide.focused #user-info-background, #guide.focused:hover #user-info-background { background-color: rgb(147, 23, 23); }
+.logged-in #user-info-background { display: block; }
+#guide.focused .guide-user-text { visibility: visible; }
+#guide .carousel, #guide .list, #guide .sliding-highlighter { color: rgb(255, 255, 255); margin-top: 2em; }
+#guide.logged-in .carousel, #guide.logged-in .list, #guide.logged-in .sliding-highlighter { margin-top: 1em; }
+#guide .carousel.hidden { visibility: hidden; display: block !important; }
+#guide .list { position: relative; }
+.carousel .guide-button { position: absolute; }
+.list .guide-button { margin-bottom: 0.1em; }
+.guide-button { font-size: 1.6em; height: 1.83em; overflow: hidden; padding: 0.5em 0.27em 0.3em 2.9em; white-space: nowrap; }
+.guide-button:hover { cursor: pointer; padding-right: 1.78em; background: rgb(153, 0, 0); }
+.guide-button.selected:hover { background: transparent; }
+.guide-button.disabled:hover { cursor: inherit; padding-right: inherit; background: transparent; }
+.guide-button.disabled { padding-left: 2.1em; text-transform: uppercase; }
+.guide-button.disabled.footer { text-transform: none; }
+.guide-button-icon { color: rgb(239, 145, 145); display: inline-block; font-family: youtube-icons; font-size: 1.2em; margin-top: 0.2em; text-align: center; width: 1.8em; }
+.guide-button.disabled .guide-button-icon { display: none; }
+.guide-user-text, .guide-button-title { color: rgb(251, 218, 218); display: inline-block; line-height: 1.7em; overflow: hidden; padding-left: 0.5em; text-overflow: ellipsis; vertical-align: top; }
+.guide-button.disabled .guide-button-title { color: rgb(239, 145, 145); }
+.guide-user-text { visibility: hidden; margin-left: -0.4em; position: relative; top: 30%; text-overflow: ellipsis; width: 9.5em; }
+.guide-button-title { width: 11em; }
+.engaged .guide-button-title { width: 8em; }
+.guide-button.footer .guide-button-title { font-size: 75%; padding-top: 0.8em; width: 21.15em; }
+.guide-button-icon .image, #guide-user-avatar { height: 1em; width: 1em; background: 50% 50% / 100% no-repeat; }
+.guide-button-icon .image { box-shadow: rgb(239, 145, 145) 0px 0px 0px 1px; margin: 0px 0.4em; background-color: rgb(255, 255, 255); }
+.guide-button.focused .guide-button-icon .image { box-shadow: none; }
+.guide-button .image { display: none; }
+.guide-button.has-image .image { display: block; }
+#guide-user-avatar { border-radius: 50%; box-shadow: rgba(239, 145, 145, 0.4) 0px 0px 0px 0.05em, rgb(239, 145, 145) 0px 0px 0.05em; display: inline-block; font-size: 2.31em; margin: 0.2em 0.2em 0.2em 0.4em; }
+#guide-user-avatar, .guide-user-text, .guide-button-icon, .guide-button-title { transition: color 50ms 25ms; }
+.no-transition .guide-button .guide-button-icon, .no-transition .guide-button .guide-button-title, .limited-animation .guide-button .guide-button-icon, .limited-animation .guide-button .guide-button-title, .limited-animation #guide-user-avatar, .limited-animation .guide-user-text { transition: none; }
+.guide-button.focused .guide-button-icon, .guide-button.focused .guide-button-title { color: rgb(223, 35, 35); }
+.limited-animation .guide-button.focused { background-color: rgb(255, 255, 255); }
+.user-info-container { height: 2.6em; padding: 1.1em 0em 0em 1.8em; font-size: 1.6em; white-space: nowrap; }
+#user-info-background { display: none; height: 8.53em; position: relative; width: inherit; z-index: 1; }
+.sliding-highlighter .select { display: none; height: 2.9em; min-width: 3.5em; padding: 1.3em 0.6em 0em; position: absolute; right: 0px; text-align: center; background-color: rgba(0, 0, 0, 0.8); }
+.engaged .guide .sliding-highlighter .select { display: block; }
+.unlimited .guide-user-text { line-height: 1em; }
+.guide-user-unlimited { font-size: 0.8em; color: rgb(170, 136, 136); text-transform: uppercase; }
+#settings { height: 100%; overflow: visible; position: absolute; right: 0px; left: 4.5em; }
+.settings-shelf { height: 24em; margin-left: 3.5em; margin-top: 1em; position: absolute; top: 19%; width: 100%; }
+.settings-title { color: rgb(255, 255, 255); font-size: 1.2em; line-height: 3em; white-space: nowrap; }
+.limited-animation .settings .content .list { width: 130em; }
+.limited-animation #settings-items { margin-left: -17em; }
+.settings-horizontal-list > .content { font-size: 79%; }
+.settings-horizontal-list > .no-content-message { display: none; }
+.pointer-overlay { display: block; }
+.pointer-overlay .nav-arrow { cursor: pointer; display: none; height: 5em; opacity: 0.5; position: absolute; width: 5em; background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/motion-control-sprite.png); background-size: 100%; background-repeat: no-repeat; }
+.pointer-overlay.enabled .nav-arrow { display: block; }
+.pointer-overlay .nav-arrow:hover { opacity: 1; }
+.pointer-overlay .up-arrow { left: 45%; top: 18%; background-position: 0px 100%; }
+.pointer-overlay .down-arrow { bottom: 11%; left: 45%; background-position: 0px 0%; }
+.pointer-overlay .left-arrow { top: 50%; left: 5%; background-position: 0px 33.3%; }
+.settings-focused .pointer-overlay .left-arrow, .browse-sets-state .pointer-overlay .left-arrow, .search-state .pointer-overlay .left-arrow { left: 7%; }
+.pointer-overlay .right-arrow { top: 50%; right: 5%; background-position: 0px 66.7%; }
+#search.input-open + .pointer-overlay .up-arrow, .post-play-state .pointer-overlay .up-arrow, .post-play-state .pointer-overlay .down-arrow { display: none; }
+.watch-state .pointer-overlay .down-arrow { bottom: 2%; }
+.search-state.guide-focused .pointer-overlay .up-arrow { top: 20%; }
+@media screen and (aspect-ratio: 5/4) { 
+  #dialog.browse-sets #dialog-wrapper { padding: 1.3em 2em; }
+  .flag-list-container.flag-options-dialog { font-size: 0.875em; }
+}
+@media screen and (max-aspect-ratio: 4/3) { 
+  .player-controls #button-list { font-size: 0.875em; }
+  #transport-controls.ad-active .player-controls-widget .player-controls #button-list { font-size: 1em; }
+  .fresh-transport-controls .progress-bar { width: 70%; }
+  .fresh-transport-controls #player-time-elapsed, .fresh-transport-controls .player-time-total { font-size: 1.1em; width: 10%; }
+}
+@media screen and (aspect-ratio: 4/3) { 
+  #browse-header .title { width: 18.3em; }
+  #browse-header.one-button .title { width: 13.2em; }
+  #browse-header.two-buttons .title { width: 8.5em; }
+  .sets-ui .flag-list.grid { font-size: 0.8em; }
+  .flag-claim { font-size: 1.4em; }
+  #search .search-pairing { font-size: 0.7em; }
+  .sets-ui .debug-dialog { font-size: 0.8em; }
+  .voice-footer .list { padding-top: 0px; width: 16em; }
+}
+@media screen and (min-width: 3840px) { 
+  .player-controls { top: 21px; }
+}
+@media screen and (min-width: 1919px) { 
+  .opera .video-stream { height: 1080px; width: 1920px; }
+  .watch-video-tile, .watch-list .button { padding: 10px; }
+}
+@media screen and (max-height: 576px) and (max-width: 1024px) and (min-width: 640px) { 
+  .countdown-ad-callout { font-size: 1.3em; right: 10%; }
+  .opera .video-stream { height: 576px; width: 1024px; }
+  #keyboard-grid .button { width: 0.7em; }
+  #dialog-wrapper { padding-left: 4em; padding-right: 4em; }
+  .pairing { transform-origin: 0px 50% 0px; transform: scale(0.7); }
+  .browse-sets #browse-header.collapsed { transform: translateY(-19%); }
+}
+@media screen and (max-height: 480px) and (max-width: 720px) { 
+  .countdown-ad-callout { font-size: 0.9em; right: 5%; }
+  .skip-ad-callout { right: 3%; }
+  .opera .video-stream { height: 480px; }
+  #search .pairing .alternatives { margin: 0px 0px 0px 1em; }
+  #keyboard-grid .button { width: 0.8em; }
+  #search .pairing .search-message .title { margin-top: 0.7em; }
+  #dialog-view .pairing { font-size: 0.8em; margin-top: 2em; }
+  .watch-list .list { margin-left: -4em; }
+}
+@media screen and (max-height: 480px) and (max-width: 640px) { 
+  .opera .video-stream { height: 480px; width: 640px; }
+  #keyboard-grid .button { width: 0.7em; }
+  #dialog-view .reset-help { display: block; width: 27em; }
+  .watch-video-tile, .watch-list .button { padding: 4px; }
+  .browse-header-metadata { bottom: 3.9em; }
+  .browse-sets #browse-header.collapsed { transform: translateY(-27%); }
+  .voice-footer .list { font-size: 0.6em; margin-left: 35%; width: 35%; }
+  .engaged .engagement-indicator { display: inline-block; font-size: 1.3em; height: 3em; margin-bottom: 1.5em; }
+  .engaged .engagement-indicator .title { display: inline-block; }
+  .engagement-indicator .stop-listening .icon { display: inline-block; height: 3em; left: 0px; top: 0px; width: 15%; }
+}
+@media screen and (max-width: 1440px) and (min-height: 1080px) { 
+  .video-tile-container { transform: scale(0.7); transform-origin: right top 0px; }
+  .player-controls #button-list .button, .player-controls #button-list .toggle-button { margin-right: 0.2em; margin-left: 0.2em; }
+  .fresh-transport-controls .progress-bar { width: 59%; }
+  .fresh-transport-controls #player-time-elapsed, .fresh-transport-controls .player-time-total { font-size: 1em; width: 14%; }
+  .fresh-transport-controls .button, .fresh-transport-controls .toggle-button { font-size: 1.1em; }
+  .fresh-transport-controls #transport-more-button { font-size: 1.7em; }
+  #dialog-wrapper { padding: 1.3em 3em; }
+  .dialog-contents { font-size: 95%; }
+  #dialog-wrapper .connection-steps { padding: 0px; }
+  #dialog-wrapper .pairing .qr-code, #dialog-wrapper .pairing .connected-list { margin: 0.2em; }
+  .context-menu-list { left: 30%; right: 30%; }
+  .voice-footer .list { font-size: 0.65em; padding-left: 22em; padding-right: 18em; padding-top: 1.3em; }
+}
+.sets-ui .carousel .item, .sets-ui .carousel .channel-tile, .sets-ui .carousel .auto-play-tile { background-color: inherit !important; }
+.sets-ui .carousel .item:hover, .sets-ui .carousel .channel-tile:hover, .sets-ui .carousel .auto-play-tile:hover { background-color: rgba(255, 255, 255, 0.0980392) !important; }
+.sets-ui .tile .channel-bottom > .title, .sets-ui .tile .tile-bottom > .title { color: rgb(225, 225, 225); }
+.sets-ui .tile .channel-bottom > .details, .sets-ui .tile .tile-bottom > .details { color: rgb(100, 100, 100); }
+.sets-ui .tile.focused.selected .channel-bottom > .title, .sets-ui .tile.focused.selected .tile-bottom > .title { color: rgb(33, 33, 33); }
+.sets-ui .tile.focused.selected .channel-bottom > .details, .sets-ui .tile.focused.selected .tile-bottom > .details { color: rgb(141, 141, 141); }
+.sets-ui #transport-controls .player-controls #button-list div.icon-player-more, .sets-ui #transport-controls .player-controls #button-list div.icon-player-less { color: rgb(255, 255, 255); }
+.sets-ui #transport-controls .player-controls #button-list div.icon-player-more.focused, .sets-ui #transport-controls .player-controls #button-list div.icon-player-less.focused { color: rgb(34, 34, 34); }
+.sets-ui .settings-title { font-size: 1.5em; }
+.sets-ui .action-tile .title { font-size: 2.4em; margin-left: 0.1em; margin-right: 0.1em; }
+.sets-ui .flag-list.grid { margin: 3.25em; }
+.sets-ui .flag-list .list { text-align: left; }
+.sets-ui .flag-list .button { width: 14em; text-align: center; }
+.sets-ui .flag-example { top: 20%; }
+.sets-ui .flag-video { margin-left: 2em; text-align: left; }
+.sets-ui .flag-claim .privacy-invasion { margin: auto; width: 50%; }
+.sets-ui .authentication-error-dialog, .sets-ui .delete-video-error, .sets-ui .missing-channel-error, .sets-ui .server-unavailable, .sets-ui .network-error-dialog { margin-top: 1em; }
+.sets-ui .eureka-authorization-dialog .icon, .sets-ui .eureka-player-error-dialog .icon { margin-left: 3em; }
+.sets-ui .eureka-authorization-dialog .info, .sets-ui .eureka-player-error-dialog .info { width: 50%; }
+.sets-ui .debug-dialog { padding: 0px 1em; text-align: left; }
+.sets-ui .text-dialog #dialog-view { width: auto; }
+.sets-ui #dialog .platform-container { font-size: 0.6em; margin-bottom: 0.5em; }
+.sets-ui .paid-channel-dialog { margin: 1em; }
+.sets-ui #dialog .connection-instructions .icon-settings-pair { display: none; }
+.sets-ui .closed-captions-dialog { text-align: left; padding-left: 1em; }
+.sets-ui .delete-video-error, .sets-ui .paid-scope-dialog, .sets-ui .video-edit-error, .sets-ui .video-processing, .sets-ui .video-upload-error { margin: 3em; font-size: 1.6em; }
+.limited-animation .auto-play-tile.focused .video-tile { background-color: rgb(241, 241, 241); }
+.limited-animation.sets-ui .title-card { background: linear-gradient(rgba(0, 0, 0, 0.901961), rgba(0, 0, 0, 0.8), transparent); }
+.limited-animation.sets-ui #search #text-box-background, .limited-animation.sets-ui #search #search-text-entry { background-color: rgba(0, 0, 0, 0); }
+.sets-ui .scrolling-text { text-align: left; padding-left: 1em; height: 20em; }
+.sets-ui #dialog .scrollbar { right: 11em; }
+.sets-ui #dialog-view .reset-help { width: 20em; }
+.sets-ui #dialog.remote-reset-dialog .buttons { position: inherit; }
+.sets-ui #dialog.remote-reset-dialog .reset-help { height: 11em; padding-left: 1em; text-align: left; }
+.sets-ui #dialog.remote-reset-dialog .connected-list { margin-right: 2em; }
+.sets-ui .dialog-focused #legend { bottom: 17%; right: 16%; }
+.exp-densityFiveTiles .horizontal-list > .content { font-size: 59%; }
+.exp-densityFiveTiles .shelf > .title { font-size: 1.5em; margin-bottom: 0.75em; margin-top: 0px; }
+.exp-densityFiveTiles .channel-bottom .title, .exp-densityFiveTiles .tile-bottom .title { font-size: 1.75em; }
+.exp-densityFiveTiles .tile-bottom .details { font-size: 1.5em; height: 50%; margin: 0.2em 1em 0px 0px; }
+.exp-densityFiveTiles .channel-top .video-thumb { border-radius: 50%; }
+.limited-animation .exp-densityFiveTiles .browse-content .list { margin-left: -8em; width: 155em; }
+.exp-densityFourTiles .horizontal-list > .content { font-size: 67%; }
+.exp-densityFourTiles .shelf > .title { font-size: 1.5em; margin-bottom: 0.75em; margin-top: 0px; }
+.exp-densityFourTiles .channel-bottom .title, .exp-densityFourTiles .tile-bottom .title { font-size: 1.75em; }
+.exp-densityFourTiles .tile-bottom .details { font-size: 1.5em; height: 50%; margin: 0.2em 1em 0px 0px; }
+.limited-animation .exp-densityFourTiles .browse-content .list { margin-left: -8.5em; width: 155em; }
+.exp-densityFourTiles .channel-top .video-thumb { border-radius: 50%; }
+.exp-densityHideMetadata .shelf .horizontal-list .tile-bottom, .exp-densityHideMetadata .shelf .horizontal-list .channel-bottom { display: none; }
+.exp-densityHideMetadata .shelf.selected .horizontal-list .tile-bottom, .exp-densityHideMetadata .shelf.selected .horizontal-list .channel-bottom { display: block; }
+.exp-densityHideMetadata .horizontal-list .video-tile .tile-top .decoration { display: none; }
+.exp-densityHideMetadata #search .tile-top .decoration, .exp-densityHideMetadata #post-play-list .tile-top .decoration, .exp-densityHideMetadata .shelf.selected .horizontal-list .tile-top .decoration { display: block; }
+.exp-densityHideMetadata .shelf:not(.selected) .channel-tile .video-thumb { height: 70%; width: 70%; }
+.sets-ui .exp-densityHideMetadata .shelf:not(.selected) .carousel .item:hover, .sets-ui .exp-densityHideMetadata .shelf:not(.selected) .carousel .channel-tile:hover { background-color: inherit !important; }
+.limited-animation .exp-densityHideMetadata .browse-content .list .shelf:nth-child(1) { margin-bottom: 9.5em; }
+.limited-animation.sets-ui .exp-densityHideMetadata .channel-tile:not(.focused), .limited-animation.sets-ui .exp-densityHideMetadata .video-tile:not(.focused) { background-color: inherit; }
+.rockandroll.limited-animation.sets-ui .exp-densityHideMetadata .channel-tile:hover:not(.focused), .rockandroll.limited-animation.sets-ui .exp-densityHideMetadata .video-tile:hover:not(.focused) { background-color: inherit; }</style><style>@font-face { font-family: roboto-regular; src: url(www.youtube.com/s/tv/html5/misc/fonts/Roboto-Regular-20140804.ttf) format(truetype); }
+html { font-family: roboto-regular; }
+body { font-family: roboto-regular; }
+.button span { font-family: roboto-regular; }
+.toggle-button span { font-family: roboto-regular; }
+@font-face { font-family: youtube-icons; src: url(www.youtube.com/s/tv/html5/f0d770f4/img/icons.ttf) format(truetype); }</style><script>(function (resourcePaths) {
+    var imageContainer = document.createElement('div');
+    imageContainer.style.position = 'absolute';
+    imageContainer.style.left = '0px';
+    imageContainer.style.top = '0px';
+    imageContainer.style.visibility = 'hidden';
+
+    var pendingResourceCount = 0;
+    resourcePaths.forEach(function(resourcePath) {
+      console.log(resourcePath);
+      if (/\.(jpeg|jpg|png)$/i.test(resourcePath)) {
+        ++pendingResourceCount;
+        console.log(pendingResourceCount);
+        var imageElement = new Image();
+        imageElement.src = resourcePath;
+        imageContainer.appendChild(imageElement);
+      }
+    });
+  })(["www.youtube.com/s/tv/fonts/CutiveMono-Regular.woff","www.youtube.com/s/tv/fonts/PTM55FT.woff","www.youtube.com/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff","www.youtube.com/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff","www.youtube.com/s/tv/fonts/Handlee-Regular.woff","www.youtube.com/s/tv/fonts/DancingScript-Regular.woff","www.youtube.com/s/tv/fonts/MarcellusSC-Regular.woff","www.youtube.com/s/tv/html5/f0d770f4/img/circle.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png","www.youtube.com/s/tv/html5/f0d770f4/img/cast_disconnected_blue.png","www.youtube.com/s/tv/html5/f0d770f4/img/pair_promo.png","www.youtube.com/s/tv/html5/f0d770f4/img/dial-sprite.png","www.youtube.com/s/tv/html5/f0d770f4/img/volume_mute_pressed.png","www.youtube.com/s/tv/html5/f0d770f4/img/volume_0_pressed.png","www.youtube.com/s/tv/html5/f0d770f4/img/volume_1_pressed.png","www.youtube.com/s/tv/html5/f0d770f4/img/volume_2_pressed.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-help.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-feedback.png","www.youtube.com/s/tv/html5/f0d770f4/img/flag.png","www.youtube.com/s/tv/html5/f0d770f4/img/pairing-promo-combo.png","www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_light.png","www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_light.png","www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-light.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-light.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-light.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-light.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-dark.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-aaa-engaged.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-desktop.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-bbb.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ccc.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ddd.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-eee.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-fff.png","www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ggg.png","www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png","www.youtube.com/s/tv/html5/f0d770f4/img/player-play.png","www.youtube.com/s/tv/html5/f0d770f4/img/player-pause.png","www.youtube.com/s/tv/html5/f0d770f4/app-prod.css","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-yt-logo.png","www.youtube.com/s/tv/html5/f0d770f4/img/yt-kids-logo.png","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-multi-user.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-yt-mix.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-tv-queue.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-promo.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-mother-goose.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-rainbow.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-sesame.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-talking-tom.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-wonderquest.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-gaming-heart.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-loki.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo.png","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg","www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music-party-logo.png","www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo-small.png","www.youtube.com/s/tv/html5/f0d770f4/img/yt-logo-fullcolor.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-onhover-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-onhover-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-onhover-active.png","www.youtube.com/s/tv/html5/f0d770f4/img/motion-control-sprite.png","www.youtube.com/s/tv/html5/misc/fonts/Roboto-Regular-20140804.ttf","www.youtube.com/s/tv/html5/f0d770f4/img/icons.ttf","www.youtube.com/s/tv/html5/f0d770f4/img/default_bg.jpg","i.ytimg.com/vi/_TWbD3MKfMI/hqdefault.jpg","i.ytimg.com/vi/vvFHyFW_jFc/hqdefault.jpg","i.ytimg.com/vi/q14aPbvbvl8/hqdefault.jpg","i.ytimg.com/vi/M9WlASe5ThU/hqdefault.jpg","i.ytimg.com/vi/59_zMJRhFM0/hqdefault.jpg","i.ytimg.com/vi/tnfPNYpi8rc/hqdefault.jpg","i.ytimg.com/vi/F50yjSws9gQ/hqdefault.jpg","i.ytimg.com/vi/rs-Ou-gjReQ/hqdefault.jpg","i.ytimg.com/vi/x5ZxRObLLzE/hqdefault.jpg","i.ytimg.com/vi/LZoilVdo7Hw/hqdefault.jpg","i.ytimg.com/vi/0vEKItRNIb0/hqdefault.jpg","i.ytimg.com/vi/8VstEBbwhnc/hqdefault.jpg","i.ytimg.com/vi/qkKRkfZYhlE/hqdefault.jpg","i.ytimg.com/vi/MODTYlzxY9U/hqdefault.jpg","i.ytimg.com/vi/D-YPnDvTCmI/hqdefault.jpg","i.ytimg.com/vi/wNRUzu4fTgw/hqdefault.jpg","i.ytimg.com/vi/GwzBLYGRj6c/hqdefault.jpg","i.ytimg.com/vi/rtzlT78OEks/hqdefault.jpg","i.ytimg.com/vi/eOOyxSMI0aE/hqdefault.jpg","i.ytimg.com/vi/RL7grUEo960/hqdefault.jpg","i.ytimg.com/vi/2A07xMhKC6g/hqdefault.jpg","i.ytimg.com/vi/Z31LDqbhN8U/hqdefault.jpg","i.ytimg.com/vi/zzmrTdAtEu4/hqdefault.jpg","i.ytimg.com/vi/1dXVzBU5p-Q/hqdefault.jpg","i.ytimg.com/vi/spC883rn6zk/hqdefault.jpg","i.ytimg.com/vi/XilhAJZ2qxs/hqdefault.jpg","i.ytimg.com/vi/tCehxI5a1y0/hqdefault.jpg","i.ytimg.com/vi/qrZcKwcVwk8/hqdefault.jpg","i.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/1.jpg","i.ytimg.com/i/-9-kyTW8ZkZNDHQJ6FgpwQ/1.jpg","i.ytimg.com/i/Egdi0XIXXZ-qJOFPf4JSKw/1.jpg","i.ytimg.com/i/OpNcN46UbXVtpKMrmU4Abg/1.jpg","i.ytimg.com/i/YfdidRxbB8Qhf0Nx7ioOYw/1.jpg","i.ytimg.com/i/4R8DWoMoI7CAwX8_LjQHig/1.jpg","yt3.ggpht.com/-dL2jeHlm2Ok/AAAAAAAAAAI/AAAAAAAAAAA/ZCMMkRj-hrw/s88-c-k-no/photo.jpg","i.ytimg.com/i/xAgnFbkxldX6YUEvdcNjnA/1.jpg","i.ytimg.com/i/i-g4cjqGV7jvU8aeSuj0jQ/1.jpg"]);</script></head>
+  <body class="desktop sets-ui lang-en_US lang-case-sensitive" style="font-size: 150%;">
+    
+    <div id="leanback"><div id="app-markup" class="focused exp-autoOpenGuide exp-mdxIgnoreFlings exp-innertubeCountdown exp-enableSafetyModeRename exp-atomSubscriptionsMultirowShelves browse-sets-state guide-focused     application" tabindex="-1">  <div id="background" class="no-model background" tabindex="-1" style="background-image: url(www.youtube.com/s/tv/html5/f0d770f4/img/default_bg.jpg);"></div>  <div id="watch" class="no-model watch" tabindex="-1">  <div id="leanback-player-container"><div class="html5-video-player el-leanback ytp-no-controls" tabindex="-1" id="movie_player" data-version="//s.ytimg.com/yts/jsbin/html5player-new-en_GB-vflmdFuIW/html5player-new.js"><div class="html5-video-container"><video class="video-stream html5-main-video" style="width: 1920px; height: 1080px; left: 0px; top: -1080px; transform: none;"></video><div class="html5-video-content" style="width: 1920px; height: 1080px; left: 0px; top: 0px;"></div></div></div></div>  <div class="title-card no-model watch-title-tray" id="title-tray" tabindex="-1">  <div class="player-meta">    <div class="user-details hidden">      <div class="message">Added by </div>      <div class="avatar no-model image" data-image-url="{{addedByUserAvatarUrl}}" tabindex="-1"></div>    </div>    <div class="player-video-avatar no-model image" data-image-url="{{channelAvatarUrl}}" tabindex="-1"></div>    <div class="player-video-text">      <div class="player-video-title"></div>      <div class="player-video-details">        <div class="username"></div>        <div class="set-context hidden"></div>        <div class="set-context-position hidden">0 of 0</div>        <div class="uploaded-date"></div>        <div class="view-count"><span class="view-count-label"></span></div>        <div class="hidden no-model quality-status" tabindex="-1">  <div class="quality-status-hd-badge"></div></div>        <div id="badges" class="badges hidden">          <span class="live-badge">Live</span>        </div>        <div class="ypc-preview">Preview: This video requires payment to watch.</div>      </div>    </div>  </div></div>  <div id="eureka-player-controls-container">    <div id="eureka-player-controls"></div>  </div>  <div id="pivot-post-play" class="hidden no-model pivot-post-play" tabindex="-1">  <div id="post-play-list" class="no-model no-content postplay-horizontal-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div>  <div class="content"><div class="no-model carousel" tabindex="-1"></div><div class="hidden no-model pivot-sliding-highlighter" tabindex="-1">  <div class="select">Select</div></div></div></div></div>  <div id="bottom-half">    <div id="transport-controls" class="no-model transport-controls" tabindex="-1">  <div class="player-controls-widget">    <div id="player-controls" class="player-controls">      <div id="button-list" class=" list" data-model="{{buttonCollection}}" data-enable-sounds="false" tabindex="-1"><div class="icon-ellipsis button" tabindex="-1"><span class="label">more actions</span></div><div class="icon-home button" tabindex="-1"><span class="label">Go Home</span></div><div class="icon-player-prev button" tabindex="-1"><span class="label">skip backward</span></div><div class="icon-player-rew button" tabindex="-1"><span class="label">rewind</span></div><div class="selected icon-player-play toggle-button" tabindex="-1"><span>play</span></div><div class="icon-player-ff button" tabindex="-1"><span class="label">forward</span></div><div class="icon-player-next button" tabindex="-1"><span class="label">skip forward</span></div><div class="icon-player-closedcaptions toggle-button" tabindex="-1"><span>captions</span></div><div class="disabled spacer button" tabindex="-1"><span class="label"></span></div></div>    </div>    <div class="player-seekbar">      <div id="progress-bar" class=" progress-bar" tabindex="-1">  <div class="progress-bar-line">    <div class="progress-bar-background"></div>    <div class="progress-bar-loaded" style="width:0%"></div>    <div class="progress-bar-played" style="width:0%"></div>  </div>  <div class="progress-bar-playhead">    <div class="no-model cue-range-markers" tabindex="-1"></div>    <div class="progress-bar-disc" style="left:0%"></div>  </div></div>      <div id="player-time-elapsed" class="no-model elapsed-time" tabindex="-1">0:00</div>      <div class="player-time-total"></div>      <div class="live-indicator">Live</div>    </div>  </div></div>    <div class="hidden skip-ad-button" tabindex="-1">  <div class="label">    <span class="skip-button-text"></span>    <span class="skip-symbol icon-player-next"></span>    <span class="skip-symbol icon-settings-pair"></span>    <span class="skip-symbol icon-cast_on"></span>  </div></div>    <div class="hidden no-model advertisement-info" tabindex="-1">  <div class="advertisement-info-top">    <div class="youtube-hosted">      <div class="advertisement-avatar no-model image" data-image-url="{{advertiserAvatar}}" tabindex="-1"></div>      <div class="advertisement-info-details">        <div class="advertisement-title"></div>        <div class="advertisement-advertiser">          <span class="ad-badge">Ad</span>          <span class="remaining-duration"></span>          <span class="ad-point-separator">•</span>          <span class="ad-by">by </span>        </div>      </div>    </div>    <div class="third-party">      <span class="ad-badge">Ad</span>      <span class="ad-point-separator">•</span>      <span class="remaining-duration"></span>    </div>  </div></div>  <div class="no-model no-content pivot-shelf-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div><div class=" carousel" tabindex="-1"></div></div></div></div>  <div id="call-to-cast" class="no-model call-to-cast" tabindex="-1">  <div class="THEME-cl end-screen multi-user left">    <h2 class="call-to-cast-text">Everyone's connected.</h2>    <h3 class="call-to-cast-text">Friends and family can <em>join in</em> and add videos to your TV Queue.</h3>    <div class="yt-logo"></div>  </div>  <div class="THEME-cl end-screen yt-mix right">    <h2 class="call-to-cast-text">Find the perfect mix.</h2>    <h3 class="call-to-cast-text">Play a nonstop <em>YouTube Mix</em> inspired by your favorite artist or video.</h3>    <div class="yt-logo"></div>  </div>  <div class="THEME-cl end-screen kids-promo left">    <h2 class="call-to-cast-text">      Have the YouTube Kids app?    </h2>    <h3 class="call-to-cast-text">      Get the family <em>together</em> and watch your favorite videos on the big screen.    </h3>    <div class="yt-kids-logo"></div>  </div>  <div class="THEME-cl end-screen tv-queue left">    <h2 class="call-to-cast-text">What's up next?</h2>    <h3 class="call-to-cast-text">Browse and add videos to your <em>TV Queue</em> while your current video keeps playing.</h3>    <div class="yt-logo"></div>  </div>  <div class="THEME-k end-screen kids-mother-goose left">    <h3 class="call-to-cast-text">Tap a video to watch on your TV.</h3>  </div>  <div class="THEME-k end-screen kids-rainbow left">    <h3 class="call-to-cast-text">Tap a video to watch on your TV.</h3>  </div>  <div class="THEME-k end-screen kids-sesame left">    <h3 class="call-to-cast-text">Tap a video to watch on your TV.</h3>  </div>  <div class="THEME-k end-screen kids-talking-tom left">    <h3 class="call-to-cast-text">Tap a video to watch on your TV.</h3>  </div>  <div class="THEME-k end-screen kids-wonderquest left">    <h3 class="call-to-cast-text">Tap a video to watch on your TV.</h3>  </div>  <div class="THEME-g end-screen gaming-heart left">    <h3 class="call-to-cast-text"></h3>  </div>  <div class="THEME-up end-screen loki left">    <h3 class="call-to-cast-text">Pick a video, yo.</h3>  </div>  <div class="THEME-m end-screen music-ready">    <div class="call-to-cast-logo"></div>    <h2 class="call-to-cast-text">Ready to play</h2>    <h3 class="call-to-cast-text">Choose some music in YouTube Music and play it here</h3>  </div>  <div class="THEME-m end-screen music-party">    <div class="call-to-cast-logo"></div>    <h3 class="call-to-cast-text">Need a soundtrack for your party?</h3>    <h3 class="call-to-cast-text">Stream endless video or audio stations to match the mood.</h3>    <div class="footer"></div>  </div></div>  <div id="browse-sets" class="no-background browse-sets" tabindex="-1">  <div id="browse-search-bar" class="no-model icon-button" tabindex="-1">  <span class="icon icon-search"></span>  <span class="label"></span></div>  <div class="youtube-logo-top">    <div class="youtube-logo icon-youtube-logo"></div>    <div class="youtube-unlimited-logo icon-youtube-unlimited-logo"></div>  </div>  <div id="browse-header" class="hidden no-model collapsed two-buttons browse-header" tabindex="-1">  <div class="browse-header-gradient"></div>  <div class="browse-header-metadata">    <div class="browse-header-avatar no-model image" data-image-url="{{avatarImageURL}}" tabindex="-1"></div>    <div class="title"></div>  </div>  <div class="browse-header-button-bar no-model component" tabindex="-1">    <div class="button browse-header-trailer no-model icon-button" tabindex="-1">  <span class="icon icon-player-play"></span>  <span class="label"></span></div>    <div class="button browse-header-subscribe no-model subscribe-button" tabindex="-1">  <span class="icon icon-logo-lozenge"></span>  <span class="label"></span></div>  </div></div>  <div id="platform-user-icon" class="hidden no-model image" data-image-url="{{platformUserIcon}}" tabindex="-1"></div>  <div class="browse-content">    <div id="shelves" class=" shelves" tabindex="-1">  <div class="title"></div>  <div class="no-content-message">    <div class="text">No videos are available</div>  </div><div class=" carousel" tabindex="-1"><div class="selected shelf" tabindex="-1" style="height: 24em; opacity: 1; z-index: 1; transform: translateX(0%) translateY(0%) scale(1) translateZ(0px); transition: none 0s;">  <div class="icon "></div>  <div class="title">    <span class="main">Screen Rant</span>    <span class="annotation">Recommended channel</span>  </div>  <div class="content-container"><div class=" horizontal-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div>  <div class="content"><div class=" sliding-highlighter" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;">  <div class="select">Select</div></div><div class=" carousel" tabindex="-1"><div class="item tile selected video-tile" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/_TWbD3MKfMI/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:30</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">16,573,823 views</div>      <div class="age">3 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(107%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/vvFHyFW_jFc/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:06</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">11,425,149 views</div>      <div class="age">3 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(214%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/q14aPbvbvl8/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:25</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">8,454,555 views</div>      <div class="age">5 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(321%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/M9WlASe5ThU/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:24</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">3,804,435 views</div>      <div class="age">2 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(428%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/59_zMJRhFM0/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:14</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">487,432 views</div>      <div class="age">3 weeks ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(535%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/tnfPNYpi8rc/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">9:22</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">3,156,426 views</div>      <div class="age">7 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(642%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/F50yjSws9gQ/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">5:27</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">1,108,695 views</div>      <div class="age">3 weeks ago</div>    </div>  </div></div></div></div></div></div></div><div class=" shelf" tabindex="-1" style="height: 24em; opacity: 1; z-index: 2; transform: translateX(0%) translateY(106%) scale(1) translateZ(0px); transition: none 0s;">  <div class="icon "></div>  <div class="title">    <span class="main">FailArmy</span>    <span class="annotation">Recommended channel</span>  </div>  <div class="content-container"><div class=" horizontal-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div>  <div class="content"><div class=" sliding-highlighter" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;">  <div class="select">Select</div></div><div class=" carousel" tabindex="-1"><div class="item tile selected video-tile" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/rs-Ou-gjReQ/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:01</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">4,792,124 views</div>      <div class="age">1 month ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(107%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/x5ZxRObLLzE/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:49</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">5,144,308 views</div>      <div class="age">2 weeks ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(214%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/LZoilVdo7Hw/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">7:06</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">3,485,342 views</div>      <div class="age">3 weeks ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(321%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/0vEKItRNIb0/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:54</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">KidsCat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">3,469,457 views</div>      <div class="age">3 weeks ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(428%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/8VstEBbwhnc/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:52</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">4,334,756 views</div>      <div class="age">1 week ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(535%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/qkKRkfZYhlE/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:37</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">3,053,167 views</div>      <div class="age">2 weeks ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(642%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/MODTYlzxY9U/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:44</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">2,734,235 views</div>      <div class="age">1 week ago</div>    </div>  </div></div></div></div></div></div></div><div class=" shelf" tabindex="-1" style="height: 24em; opacity: 1; z-index: 3; transform: translateX(0%) translateY(212%) scale(1) translateZ(0px); transition: none 0s;">  <div class="icon "></div>  <div class="title">    <span class="main">Cyprien</span>    <span class="annotation">Recommended channel</span>  </div>  <div class="content-container"><div class=" horizontal-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div>  <div class="content"><div class=" sliding-highlighter" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;">  <div class="select">Select</div></div><div class=" carousel" tabindex="-1"><div class="item tile selected video-tile" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/D-YPnDvTCmI/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">5:02</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">byby Not a Cat</div>      <div class="views">9,832,315 views</div>      <div class="age">1 month ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(107%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/wNRUzu4fTgw/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">11:44</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">15,035,125 views</div>      <div class="age">8 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(214%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/GwzBLYGRj6c/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:32</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">10,769,981 views</div>      <div class="age">4 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(321%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/rtzlT78OEks/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:32</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">12,174,818 views</div>      <div class="age">4 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(428%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/eOOyxSMI0aE/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">6:32</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">11,402,149 views</div>      <div class="age">5 months ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(535%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/RL7grUEo960/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">4:50</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">27,077,657 views</div>      <div class="age">1 year ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(642%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/2A07xMhKC6g/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">5:55</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">11,230,070 views</div>      <div class="age">6 months ago</div>    </div>  </div></div></div></div></div></div></div><div class=" shelf" tabindex="-1" style="height: 24em; opacity: 1; z-index: 3; transform: translateX(0%) translateY(212%) scale(1) translateZ(0px); transition: none 0s;">  <div class="icon "></div>  <div class="title">    <span class="main">Recently Uploaded</span>    <span class="annotation">Recommended videos</span>  </div>  <div class="content-container"><div class=" horizontal-list" tabindex="-1">  <div class="no-content-message">    <div class="text">No videos are available</div>  </div>  <div class="content"><div class=" sliding-highlighter" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;">  <div class="select">Select</div></div><div class=" carousel" tabindex="-1"><div class="item tile selected video-tile" tabindex="-1" style="transform: translateX(0%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/Z31LDqbhN8U/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">10:23</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">23,123 views</div>      <div class="age">5 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(107%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/zzmrTdAtEu4/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">14:09</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">23,595 views</div>      <div class="age">3 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(214%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/1dXVzBU5p-Q/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">14:26</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">53,711 views</div>      <div class="age">6 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(321%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/spC883rn6zk/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">17:41</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">62,903 views</div>      <div class="age">5 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(428%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/XilhAJZ2qxs/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">11:46</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">37,470 views</div>      <div class="age">2 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(535%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/tCehxI5a1y0/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">10:28</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">9,132 views</div>      <div class="age">2 days ago</div>    </div>  </div></div><div class="item tile video-tile" tabindex="-1" style="transform: translateX(642%) translateZ(0px); transition: none 0s;"><div class="no-model tile-focus-target" tabindex="-1"></div>  <div class="tile-top">    <div class="video-thumb no-model image" data-image-url="{{model.imageUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/vi/qrZcKwcVwk8/hqdefault.jpg);"></div>    <div class="voice-command">Cat Video</div>    <div class="decoration">      <div class="live-badge badge hidden"></div>      <div class="text-badge badge hidden"></div>      <div class="duration">8:43</div>    </div>  </div>  <div class="overlay hidden">    <div class="count"><div><strong></strong></div>videos</div>    <div class="icon"></div>  </div>  <div class="tile-bottom">    <div class="title">Cat Video</div>    <div class="details">      <div class="by">by Not a Cat</div>      <div class="views">23,568 views</div>      <div class="age">3 days ago</div>    </div>  </div></div></div></div></div></div></div></div></div>  </div></div>  <div id="settings-placeholder"></div>  <div id="search" class="hidden no-model search" tabindex="-1">  <div class="youtube-logo-top">    <div class="youtube-logo icon-youtube-logo"></div>    <div class="youtube-unlimited-logo icon-youtube-unlimited-logo"></div>  </div>  <div class="controls">    <div id="text-box-background">      <div id="search-text-box">        <span class="icon-search"></span>        <input id="search-input" autocomplete="off" class="no-model component" title="search" placeholder="Search..." tabindex="-1">        <span id="search-query" class="hidden"></span>      </div>    </div>    <div id="search-text-entry">      <div class="suggestions-container">        <div id="keyboard-icon" class="icon-search-keyboard"></div>        <div id="search-suggestions" class=" suggestions" tabindex="-1">  <div id="suggest-list" class=" list" data-model="{{model.suggestions}}" data-catch-mouse-move="{{catchMouseMove}}" data-scroll-on-focus="true" tabindex="-1"></div></div>      </div>      <div id="search-keyboard" class=" keyboard" tabindex="-1">  <div id="transliteration-container">    <div id="transliteration" class="no-model transliteration" tabindex="-1">  <div class=" list" data-model="{{transliterations}}" tabindex="-1">  </div></div>  </div>  <div id="keyboard-grid" class=" grid" tabindex="-1">  <div class="selected list" data-catch-mouse-move="{{catchRowMouseMove}}" data-item-factory="{{itemFactory}}" data-item-name="{{itemName}}" data-is-vertical="false" data-loop="{{loopRows}}" data-consume-events="{{consumeEvents}}" data-rate-limit="{{rateLimit}}" tabindex="-1"><div class="selected button" tabindex="-1"><span class="label">a</span></div><div class=" button" tabindex="-1"><span class="label">b</span></div><div class=" button" tabindex="-1"><span class="label">c</span></div><div class=" button" tabindex="-1"><span class="label">d</span></div><div class=" button" tabindex="-1"><span class="label">e</span></div><div class=" button" tabindex="-1"><span class="label">f</span></div><div class=" button" tabindex="-1"><span class="label">g</span></div><div class="icon-key-delete button" tabindex="-1"><span class="label"></span></div></div><div class=" list" data-catch-mouse-move="{{catchRowMouseMove}}" data-item-factory="{{itemFactory}}" data-item-name="{{itemName}}" data-is-vertical="false" data-loop="{{loopRows}}" data-consume-events="{{consumeEvents}}" data-rate-limit="{{rateLimit}}" tabindex="-1"><div class="selected button" tabindex="-1"><span class="label">h</span></div><div class=" button" tabindex="-1"><span class="label">i</span></div><div class=" button" tabindex="-1"><span class="label">j</span></div><div class=" button" tabindex="-1"><span class="label">k</span></div><div class=" button" tabindex="-1"><span class="label">l</span></div><div class=" button" tabindex="-1"><span class="label">m</span></div><div class=" button" tabindex="-1"><span class="label">n</span></div><div class="clear-query-tile button" tabindex="-1"><span class="label">Clear</span></div></div><div class=" list" data-catch-mouse-move="{{catchRowMouseMove}}" data-item-factory="{{itemFactory}}" data-item-name="{{itemName}}" data-is-vertical="false" data-loop="{{loopRows}}" data-consume-events="{{consumeEvents}}" data-rate-limit="{{rateLimit}}" tabindex="-1"><div class="selected button" tabindex="-1"><span class="label">o</span></div><div class=" button" tabindex="-1"><span class="label">p</span></div><div class=" button" tabindex="-1"><span class="label">q</span></div><div class=" button" tabindex="-1"><span class="label">r</span></div><div class=" button" tabindex="-1"><span class="label">s</span></div><div class=" button" tabindex="-1"><span class="label">t</span></div><div class=" button" tabindex="-1"><span class="label">u</span></div><div class="numbers-toggle-tile button" tabindex="-1"><span class="label">&amp;123</span></div></div><div class=" list" data-catch-mouse-move="{{catchRowMouseMove}}" data-item-factory="{{itemFactory}}" data-item-name="{{itemName}}" data-is-vertical="false" data-loop="{{loopRows}}" data-consume-events="{{consumeEvents}}" data-rate-limit="{{rateLimit}}" tabindex="-1"><div class="selected button" tabindex="-1"><span class="label">v</span></div><div class=" button" tabindex="-1"><span class="label">w</span></div><div class=" button" tabindex="-1"><span class="label">x</span></div><div class=" button" tabindex="-1"><span class="label">y</span></div><div class=" button" tabindex="-1"><span class="label">z</span></div><div class=" button" tabindex="-1"><span class="label">-</span></div><div class=" button" tabindex="-1"><span class="label">'</span></div></div></div>  <div id="letter-suggest" class=" list" data-is-vertical="true" data-catch-mouse-move="true" data-model="{{letterSuggestions}}" tabindex="-1"></div>  <div>    <div id="keyboard-spacebar" class="icon-key-space button" tabindex="-1"><span class="label"></span></div>  </div></div>      <div class="search-hint">        Voice search is not supported.      </div>    </div>  </div>  <div class="search-pairing">    <div class="search-img"></div>    <div class="search-message">      <div class="title">Search Faster</div>      <div class="pairing no-model dial-upsell pairing-dialog" id="pairing" tabindex="-1">  <div class="dialog-large-icon icon-settings-pair"></div>  <div class="connection-instructions icon-dialog-content">    <div class="dial-upsell-content">      Connect one or more devices to the same Wi-Fi network and select <div class="cast-icon">&nbsp;</div>    </div>    <div class="manual-connect-content">      <div class="connection-steps">        <div class="with-dial-connect-step1">        <div class="step1">Or go to</div>        <div class="pair-url">youtube.com/pair</div>        </div>        <div class="no-dial-connect-step1">        <div class="step1">Go to</div>        <div class="pair-url">youtube.com/pair</div>        </div>        <div class="no-dial-connect-step2">        <div class="step2">and enter</div>        <div class="pair-code">Loading...</div>        </div>      </div>    </div>  </div></div>    </div>  </div>  <div id="results-placeholder"></div></div>  <div id="pointer-overlay" class="-overlay hidden"></div>  <div id="guide" class="focused guide" tabindex="-1">  <div id="user-info-background">    <div class="user-info-container">      <div id="guide-user-avatar" style="background-image: url()"></div>      <div class="guide-user-text">        <div class="guide-user-name"></div>        <div class="guide-user-unlimited"></div>      </div>    </div>  </div>  <div class="collapsed-guide"></div>  <div class="guide-carousel-background"></div>  <div class="collapsed-guide-icons">    <div class="collapsed-guide-icon icon-guide-what-to-watch"></div>    <div class="collapsed-guide-icon icon-guide-my-subs"></div>    <div class="collapsed-guide-icon icon-popular"></div>    <div class="collapsed-guide-icon icon-music"></div>    <div class="collapsed-guide-icon icon-ellipsis"></div>  </div>  <div id="error-message">Sorry, the rest of this Guide isn’t available right now.</div><div class=" sliding-highlighter" tabindex="-1" style="transform: translateY(200%) translateZ(0px); transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 200ms cubic-bezier(0.4, 0, 0.2, 1);">  <div class="select">Select</div></div><div class="focused carousel" tabindex="-1"><div class=" guide-button" tabindex="-1" style="transform: translateY(0%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon icon-people">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1"></div>  </div>  <div class="guide-button-title">Sign In</div></div><div class=" guide-button" tabindex="-1" style="transform: translateY(100%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon icon-search">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1"></div>  </div>  <div class="guide-button-title">Search</div></div><div class="focused selected guide-button" tabindex="-1" style="transform: translateY(200%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon icon-guide-what-to-watch">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1"></div>  </div>  <div class="guide-button-title">Home</div></div><div class=" guide-button" tabindex="-1" style="transform: translateY(300%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon icon-player-settings">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1"></div>  </div>  <div class="guide-button-title">Settings</div></div><div class="disabled guide-button" tabindex="-1" style="transform: translateY(400%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1"></div>  </div>  <div class="guide-button-title">Best of YouTube</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(500%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/1.jpg);"></div>  </div>  <div class="guide-button-title">Popular on YouTube</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(600%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/-9-kyTW8ZkZNDHQJ6FgpwQ/1.jpg);"></div>  </div>  <div class="guide-button-title">Music</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(700%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/Egdi0XIXXZ-qJOFPf4JSKw/1.jpg);"></div>  </div>  <div class="guide-button-title">Sports</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(800%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/OpNcN46UbXVtpKMrmU4Abg/1.jpg);"></div>  </div>  <div class="guide-button-title">Gaming</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(900%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/YfdidRxbB8Qhf0Nx7ioOYw/1.jpg);"></div>  </div>  <div class="guide-button-title">News</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(1000%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/4R8DWoMoI7CAwX8_LjQHig/1.jpg);"></div>  </div>  <div class="guide-button-title">Live</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(1100%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(yt3.ggpht.com/-dL2jeHlm2Ok/AAAAAAAAAAI/AAAAAAAAAAA/ZCMMkRj-hrw/s88-c-k-no/photo.jpg);"></div>  </div>  <div class="guide-button-title">Spotlight</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(1200%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/xAgnFbkxldX6YUEvdcNjnA/1.jpg);"></div>  </div>  <div class="guide-button-title">Film &amp; Animation</div></div><div class="has-image guide-button" tabindex="-1" style="transform: translateY(1300%) translateZ(0px); transition: none 0s;">  <div class="guide-button-icon ">    <div class="no-model image" data-image-url="{{model.iconUrl}}" tabindex="-1" style="background-image: url(i.ytimg.com/i/i-g4cjqGV7jvU8aeSuj0jQ/1.jpg);"></div>  </div>  <div class="guide-button-title">Entertainment</div></div></div></div>  <div class="no-model application-message" tabindex="-1"></div>  <div id="spinner" class="hidden no-model spinner" tabindex="-1">  <div class="fallback-loading-indicator">LOADING...</div>  <div class="loading-indicator">    <div class="dot" id="dot1"></div>    <div class="dot" id="dot2"></div>    <div class="dot" id="dot3"></div>    <div class="dot" id="dot4"></div>    <div class="dot" id="dot5"></div>    <div class="dot" id="dot6"></div>    <div class="dot" id="dot7"></div>    <div class="dot" id="dot8"></div>  </div></div>  <h1 class=" debug-watermark" tabindex="-1"></h1>  <div class="browse-sets no-model dialog" id="dialog" tabindex="-1">  <div id="dialog-wrapper">    <div class="dialog-icon"></div> <!-- Only used for flat UI -->    <div class="dialog-contents">      <div class="header">        <div class="title"></div>      </div>      <div class="no-model component" id="dialog-view" tabindex="-1"></div>      <div class="buttons">        <div id="dialog-cancel-button" class="no-model button" tabindex="-1"><span class="label"></span></div>        <div id="dialog-ok-button" class="no-model button" tabindex="-1"><span class="label"></span></div>      </div>    </div>  </div></div>  <div id="voice-footer-placeholder"></div>  <div id="legend" class="close-guide search legend" tabindex="-1">  <div class="more no-model legend-item" tabindex="-1">  <span class="icon icon-player-more"></span>  <span class="title">Show More</span></div>  <div class="back no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Go Back</span></div>  <div class="exit no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Exit</span></div>  <div class="reversed-back no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Go Back</span></div>  <div class="search no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Search</span></div>  <div class="space no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Space</span></div>  <div class="home no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Go Home</span></div>  <div class="modify no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Modify</span></div>  <div class="delete no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Delete</span></div>  <div class="guide no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Open Guide</span></div>  <div class="close-guide no-model legend-item" tabindex="-1">  <span class="icon "></span>  <span class="title">Close Guide</span></div></div>  <div class=" toaster" tabindex="-1">  <div class=" list" data-model="{{model}}" tabindex="-1"></div></div>  <div class="no-model engagement-indicator" tabindex="-1"></div>  <div class=" hidden" id="snap-controls" data-is-hidden="true"></div>  <div id="context-menu-placeholder" class="hidden"></div>  <div class="hidden no-model fps" tabindex="-1"></div></div></div>
+    
+    
+  
+
+<div id="window-resizer-tooltip"><a href="#" title="Edit settings"></a><span class="tooltipTitle">Window size: </span><span class="tooltipWidth" id="winWidth"></span> x <span class="tooltipHeight" id="winHeight"></span><br><span class="tooltipTitle">Viewport size: </span><span class="tooltipWidth" id="vpWidth"></span> x <span class="tooltipHeight" id="vpHeight"></span></div></body></html>
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/CutiveMono-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/CutiveMono-Regular.woff
new file mode 100644
index 0000000..6ab1ca1
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/CutiveMono-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/DancingScript-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/DancingScript-Regular.woff
new file mode 100644
index 0000000..71b2e76
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/DancingScript-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/Handlee-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/Handlee-Regular.woff
new file mode 100644
index 0000000..c8f2418
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/Handlee-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/MarcellusSC-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/MarcellusSC-Regular.woff
new file mode 100644
index 0000000..1740d4f
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/MarcellusSC-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PTM55FT.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PTM55FT.woff
new file mode 100644
index 0000000..e7e96d1
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PTM55FT.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff
new file mode 100644
index 0000000..c0e6a2f
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff
new file mode 100644
index 0000000..f5599f7
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/app-prod.css b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/app-prod.css
new file mode 100644
index 0000000..c78c202
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/app-prod.css
@@ -0,0 +1 @@
+.icon-cast_off:before{content:"\00e675"}.icon-cast_on:before{content:"\00e676"}.icon-mr_meh_android:before{content:"\00e677"}.icon-settings-signin-android:before{content:"\00e678"}.icon-settings-signout-android:before{content:"\00e679"}.icon-roku-back:before{content:"\00e674"}.icon-hats-happy:before{content:"\00e66f"}.icon-hats-neutral:before{content:"\00e670"}.icon-hats-sad:before{content:"\00e671"}.icon-hats-very-happy:before{content:"\00e672"}.icon-hats-very-sad:before{content:"\00e673"}.icon-search-keyboard:before{content:"\00e66e"}.icon-multiaudio:before{content:"\00e62d"}.icon-settings-check:before{content:"\00e66d"}.icon-settings-uncheck:before{content:"\00e659"}.icon-popular:before{content:"\00e66c"}.icon-airplane:before{content:"\00e600"}.icon-back:before{content:"\00e601"}.icon-check:before{content:"\00e602"}.icon-chevron-single:before{content:"\00e603"}.icon-delete:before{content:"\00e604"}.icon-desktop-arrowkeys:before{content:"\00e605"}.icon-desktop-delete:before{content:"\00e606"}.icon-desktop-esc:before{content:"\00e607"}.icon-desktop-g:before{content:"\00e608"}.icon-desktop-s:before{content:"\00e609"}.icon-dislike:before{content:"\00e60a"}.icon-double-chevron-right:before{content:"\00e60b"}.icon-edit:before{content:"\00e60c"}.icon-education:before{content:"\00e60d"}.icon-ellipsis:before{content:"\00e60e"}.icon-entertainment:before{content:"\00e60f"}.icon-exit:before{content:"\00e610"}.icon-film:before{content:"\00e611"}.icon-flag:before{content:"\00e612"}.icon-gaming:before{content:"\00e613"}.icon-guide-history:before{content:"\00e614"}.icon-guide-my-subs:before{content:"\00e615"}.icon-guide-purchases:before{content:"\00e616"}.icon-guide-social:before{content:"\00e617"}.icon-guide-what-to-watch:before{content:"\00e618"}.icon-home:before{content:"\00e619"}.icon-hourglass:before{content:"\00e61a"}.icon-key-delete:before{content:"\00e61b"}.icon-key-globe:before{content:"\00e61c"}.icon-key-space-sm:before{content:"\00e61d"}.icon-key-space:before{content:"\00e61e"}.icon-like:before{content:"\00e61f"}.icon-lips:before{content:"\00e620"}.icon-logo-lozenge:before{content:"\00e621"}.icon-lol:before{content:"\00e622"}.icon-lozenge:before{content:"\00e623"}.icon-mix:before{content:"\00e624"}.icon-music:before{content:"\00e625"}.icon-news:before{content:"\00e626"}.icon-people:before{content:"\00e627"}.icon-pets:before{content:"\00e628"}.icon-player-3d:before{content:"\00e629"}.icon-player-annotations:before{content:"\00e62a"}.icon-player-closedcaptions:before{content:"\00e62b"}.icon-player-ff:before{content:"\00e62c"}.icon-player-HD-circle:before{content:"\00e651"}.icon-player-HD:before{content:"\00e62e"}.icon-player-info:before{content:"\00e62f"}.icon-player-instantreplay:before{content:"\00e630"}.icon-player-less:before{content:"\00e631"}.icon-player-more:before{content:"\00e632"}.icon-player-mute:before{content:"\00e633"}.icon-player-next:before{content:"\00e634"}.icon-player-pause:before{content:"\00e635"}.icon-player-play:before{content:"\00e636"}.icon-player-prev:before{content:"\00e637"}.icon-player-replay:before{content:"\00e638"}.icon-player-rew:before{content:"\00e639"}.icon-player-settings:before{content:"\00e63a"}.icon-player-share:before{content:"\00e63b"}.icon-player-size-fullscreen:before{content:"\00e63c"}.icon-player-size-medium:before{content:"\00e63d"}.icon-player-size-minimize:before{content:"\00e63e"}.icon-player-stop:before{content:"\00e63f"}.icon-player-subtitles:before{content:"\00e640"}.icon-player-volume-45:before{content:"\00e641"}.icon-player-volume-48:before{content:"\00e642"}.icon-playlist:before{content:"\00e643"}.icon-playstation-circle:before{content:"\00e644"}.icon-playstation-square:before{content:"\00e645"}.icon-playstation-triangle:before{content:"\00e646"}.icon-playstation-x:before{content:"\00e647"}.icon-privacy-link:before{content:"\00e648"}.icon-privacy-locked:before{content:"\00e649"}.icon-privacy-public:before{content:"\00e64a"}.icon-related:before{content:"\00e64b"}.icon-remoteque:before{content:"\00e64c"}.icon-reward:before{content:"\00e64d"}.icon-rocket:before{content:"\00e64e"}.icon-search-clear:before{content:"\00e64f"}.icon-search:before{content:"\00e650"}.icon-settings-clear-cookies:before{content:"\00e652"}.icon-settings-clear-history:before{content:"\00e653"}.icon-settings-feedback:before{content:"\00e654"}.icon-settings-help:before{content:"\00e655"}.icon-settings-pair:before{content:"\00e656"}.icon-settings-phone:before{content:"\00e657"}.icon-settings-term:before{content:"\00e658"}.icon-speechbubble:before{content:"\00e65a"}.icon-sports:before{content:"\00e65b"}.icon-star:before{content:"\00e65c"}.icon-trash:before{content:"\00e65d"}.icon-trends:before{content:"\00e65e"}.icon-tv-dpad:before{content:"\00e65f"}.icon-upload-arrow:before{content:"\00e660"}.icon-upload:before{content:"\00e661"}.icon-watch-later:before{content:"\00e662"}.icon-wii-1:before{content:"\00e663"}.icon-wii-2:before{content:"\00e664"}.icon-wii-A:before{content:"\00e665"}.icon-wii-B:before{content:"\00e666"}.icon-wii-minus:before{content:"\00e667"}.icon-wii-plus:before{content:"\00e668"}.icon-wii-x:before{content:"\00e669"}.icon-wii-y:before{content:"\00e66a"}.icon-youtube-logo:before{content:"\00e66b"}.icon-youtube-unlimited-logo:before{content:"\00e67a"}@font-face{font-family:'Cutive Mono';src:url('/s/tv/fonts/CutiveMono-Regular.woff') format('woff')}@font-face{font-family:'PT Mono';src:url('/s/tv/fonts/PTM55FT.woff') format('woff')}@font-face{font-family:'PT Serif Caption';src:url('/s/tv/fonts/PT_Serif-Caption-Web-Regular.woff') format('woff')}@font-face{font-family:'PT Sans Caption';src:url('/s/tv/fonts/PT_Sans-Caption-Web-Regular.woff') format('woff')}@font-face{font-family:'Handlee';src:url('/s/tv/fonts/Handlee-Regular.woff') format('woff')}@font-face{font-family:'Dancing Script';src:url('/s/tv/fonts/DancingScript-Regular.woff') format('woff')}@font-face{font-family:'Marcellus SC';src:url('/s/tv/fonts/MarcellusSC-Regular.woff') format('woff')}body,html{font-size:100%;height:100%;margin:auto;overflow:hidden;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}input{font:inherit;margin:0;padding:0}body{background-color:#1c1a1a}p,ul,li{border:0;margin:0;outline:none;padding:0}ul{list-style:none}.focused,:focus{outline:0 solid}.hidden{display:none!important}.invisible{visibility:hidden}ul.list li{display:inline}ul.list.vertical li{display:block}.device-plugin{height:0;margin:0;position:absolute;visibility:hidden;width:0}#loader{}#leanback{height:100%}#app-markup{background-size:100% 100%;height:100%}#background{background-size:100% 100%;bottom:0;left:0;position:absolute;overflow:hidden;right:0;top:0}.limited-memory.sets-ui #app-markup{background-color:#283337}#app-markup.watch-state{background-color:#000!important}.wiiu #app-markup.watch-state{background-image:none!important}#playstation-buttons{display:none;position:absolute}#spinner{position:absolute;top:17.17em;width:100%}.browse-state .loading-indicator{display:none}.browse-state .fallback-loading-indicator{display:block}.opera #spinner{top:20em}.loading-indicator{height:5.33em;margin:0 auto;position:relative;width:5.33em}.dot{background-color:#cbcbcb;border-radius:50%;height:1.17em;position:absolute;width:1.17em}@-webkit-keyframes fade1{0%,100%{opacity:0}50%{opacity:1}}@-webkit-keyframes fade2{0%,100%{opacity:.25}37.5%{opacity:1}87.5%{opacity:0}}@-webkit-keyframes fade3{0%,100%{opacity:.5}25%{opacity:1}75%{opacity:0}}@-webkit-keyframes fade4{0%,100%{opacity:.75}12.5%{opacity:1}62.5%{opacity:0}}@-webkit-keyframes fade5{0%,100%{opacity:1}50%{opacity:0}}@-webkit-keyframes fade6{0%,100%{opacity:.75}37.5%{opacity:0}87.5%{opacity:1}}@-webkit-keyframes fade7{0%,100%{opacity:.5}25%{opacity:0}75%{opacity:1}}@-webkit-keyframes fade8{0%,100%{opacity:.25}12.5%{opacity:0}62.5%{opacity:1}}@-o-keyframes fade1{0%,100%{opacity:0}50%{opacity:1}}@-o-keyframes fade2{0%,100%{opacity:.25}37.5%{opacity:1}87.5%{opacity:0}}@-o-keyframes fade3{0%,100%{opacity:.5}25%{opacity:1}75%{opacity:0}}@-o-keyframes fade4{0%,100%{opacity:.75}12.5%{opacity:1}62.5%{opacity:0}}@-o-keyframes fade5{0%,100%{opacity:1}50%{opacity:0}}@-o-keyframes fade6{0%,100%{opacity:.75}37.5%{opacity:0}87.5%{opacity:1}}@-o-keyframes fade7{0%,100%{opacity:.5}25%{opacity:0}75%{opacity:1}}@-o-keyframes fade8{0%,100%{opacity:.25}12.5%{opacity:0}62.5%{opacity:1}}@keyframes fade1{0%,100%{opacity:0}50%{opacity:1}}@keyframes fade2{0%,100%{opacity:.25}37.5%{opacity:1}87.5%{opacity:0}}@keyframes fade3{0%,100%{opacity:.5}25%{opacity:1}75%{opacity:0}}@keyframes fade4{0%,100%{opacity:.75}12.5%{opacity:1}62.5%{opacity:0}}@keyframes fade5{0%,100%{opacity:1}50%{opacity:0}}@keyframes fade6{0%,100%{opacity:.75}37.5%{opacity:0}87.5%{opacity:1}}@keyframes fade7{0%,100%{opacity:.5}25%{opacity:0}75%{opacity:1}}@keyframes fade8{0%,100%{opacity:.25}12.5%{opacity:0}62.5%{opacity:1}}#dot1{-o-animation:fade8 .72s infinite ease;-webkit-animation:fade8 .72s infinite ease;animation:fade8 .72s infinite ease;left:0;top:2.09em}#dot2{-o-animation:fade7 .72s infinite ease;-webkit-animation:fade7 .72s infinite ease;animation:fade7 .72s infinite ease;left:.61em;top:.61em}#dot3{-o-animation:fade6 .72s infinite ease;-webkit-animation:fade6 .72s infinite ease;animation:fade6 .72s infinite ease;left:2.09em;top:0}#dot4{-o-animation:fade5 .72s infinite ease;-webkit-animation:fade5 .72s infinite ease;animation:fade5 .72s infinite ease;right:.61em;top:.61em}#dot5{-o-animation:fade4 .72s infinite ease;-webkit-animation:fade4 .72s infinite ease;animation:fade4 .72s infinite ease;right:0;top:2.09em}#dot6{-o-animation:fade3 .72s infinite ease;-webkit-animation:fade3 .72s infinite ease;animation:fade3 .72s infinite ease;bottom:.61em;right:.61em}#dot7{-o-animation:fade2 .72s infinite ease;-webkit-animation:fade2 .72s infinite ease;animation:fade2 .72s infinite ease;bottom:0;left:2.09em}#dot8{-o-animation:fade1 .72s infinite ease;-webkit-animation:fade1 .72s infinite ease;animation:fade1 .72s infinite ease;bottom:.61em;left:.61em}.spinner.transitions .dot{-o-animation:initial!important;-webkit-animation:initial!important;animation:initial!important;background:url(img/circle.png) no-repeat center;background-size:100%}.spinner.transitions.spin .loading-indicator{transition:transform 25s linear;transform:rotate(-7200deg)}.transitions #dot1{opacity:1}.transitions #dot2{opacity:0.875}.transitions #dot3{opacity:0.75}.transitions #dot4{opacity:0.625}.transitions #dot5{opacity:0.5}.transitions #dot6{opacity:0.375}.transitions #dot7{opacity:0.25}.transitions #dot8{opacity:0.125}.fallback-loading-indicator{color:#f1f1f1;display:none;font-size:1.8em;margin:2px auto 0 auto;text-align:center}.scrollbar{background-color:rgba(255,255,255,.1);height:100%;position:absolute;top:0;width:.1em}.scrollbar .handle{background-color:#f1f1f1;position:absolute;width:.1em}.application-message{color:#f1f1f1;font-size:1.8em;position:absolute;text-align:center;text-shadow:#000 .04em .04em;top:50%;width:100%}.debug-watermark{background-color:rgba(235,49,3,0.7);color:#0e0202;display:none;font-size:100%;left:0;padding:1em;position:absolute;bottom:0;width:70%}.debug-watermark.visible{display:block}.debug-console{background:rgba(0,0,0,.9);color:#fff;height:95%;overflow:scroll;padding:1em;position:absolute;right:0;top:0;width:40em;z-index:1}#player-controls .button,#player-controls .toggle-button{font-family:'youtube-icons';speak:none}.fps{position:absolute;right:0;bottom:0;text-align:center;padding-top:0.3em;width:5em;height:1.7em;background-color:#0f0;z-index:100}#html5-player-messages{display:none}#button-list>.icon-player-more:before{content:"\00e632"}.icon-player-play.toggle-selected:before{content:"\00e635"}#loader{z-index:1000}.sliding-highlighter,.pivot-sliding-highlighter{background:white;box-shadow:0 0 60px rgba(153,153,153,.3);display:none;height:26em;position:absolute;width:24em}#settings-items .sliding-highlighter{height:26.2em;width:24.2em}.horizontal-list.focused .sliding-highlighter,.video-uploads.focused .sliding-highlighter,#settings-items.focused .sliding-highlighter{display:block}.video-uploads .sliding-highlighter{height:20em;width:18em}.carousel .item:hover{background-color:#5a5a5a;cursor:pointer}.feed-title.preview{color:#f1f1f1;font-size:1.3em;height:1.3em;opacity:.7;padding-bottom:.6em;padding-left:1.9em}.feed-title .unread-count{background-color:rgba(187,0,0,.9);font-size:.6em;margin-left:.5em;padding:.05em .3em;position:relative;top:-0.265em}.prev-feed{height:3.6em;left:4%;position:absolute;top:5%}.next-feed{height:2em;left:4%;position:absolute;top:84%}.tile{background-color:#000;color:#666;height:26em;list-style:none;overflow:hidden;position:absolute;width:24em}.tile-focus-target{height:0;width:0}.tile-top{background-color:#000;height:50%;width:100%}.channel-top{height:62%;margin:5.25% 16%;width:68%}.channel-top .video-thumb,.tile-top .video-thumb{background-color:#252525;background-position:center;background-repeat:no-repeat;background-size:100%;height:100%}.browse-header-avatar.preloaded,.tile-top .video-thumb.preloaded{background:no-repeat center;background-color:#252525;background-image:url('img/icon-playbutton.png');background-size:auto}.auto-play-tile{overflow:visible}.post-play-title{font-size:1.4em;overflow:hidden;position:absolute;text-overflow:ellipsis;text-shadow:#000 .08em .08em;top:-1.8em;width:15.5em}.auto-play-tile .video-tile{top:0}.auto-play-tile .default-title,.auto-play-tile .next-up-title{color:#cccccc}.post-play-countdown{display:none}.countdown-active .post-play-countdown{color:#fff;display:block;font-size:5em;position:relative;text-align:center;text-shadow:#000 .06em .06em;top:14%}.playlist-tile.focused,.playlist-tile.focused:hover,.auto-play-tile.focused .video-tile,.auto-play-tile.focused:hover .video-tile,.recent-search-tile.focused,.recent-search-tile.focused:hover,.video-tile.focused,.video-tile.focused:hover{background-color:#f1f1f1}.item .overlay{display:none}.playlist-tile .overlay,.video-tile .overlay{background:#000;display:block;height:53%;margin-left:56%;margin-top:-57.5%;opacity:.8;width:45%}.playlist-tile.focused .overlay,.video-tile.focused .overlay{color:#f1f1f1}.playlist-tile .overlay strong{font-size:1.75em;font-weight:normal}.playlist-tile .overlay .count,.video-tile .overlay .count{font-size:1.5em;line-height:1.2em;padding-top:1.7em;text-align:center}.playlist-tile .overlay .icon,.video-tile .overlay .icon{font-family:'youtube-icons';font-size:3em;height:50%;overflow:hidden;padding:.2em;text-align:center}.tile-bottom{height:50%;padding:.25em 0 0 1em;width:23em}.channel-bottom{height:25%;margin-top:2.65em;width:100%}.channel-bottom .title,.tile-bottom .title{color:#999;font-size:1.7em;height:2.45em;line-height:1.25em;margin:.6em .6em 0 0;overflow:hidden;text-align:left;white-space:normal}.channel-bottom .title{height:1.2em;margin:0;padding:0 .6em;text-align:center;text-overflow:ellipsis;white-space:nowrap}.tile.selected.focused .tile-bottom{color:#222}.tile.selected.focused .channel-bottom .details,.tile.selected.focused .tile-bottom .details{color:#999}.tile.selected.focused .channel-bottom .title,.tile.selected.focused .tile-bottom .title{color:#444}.channel-tile .channel-top .decoration{margin-top:-19%;text-align:right;width:97%}.video-tile .tile-top .decoration{margin-top:-2em;text-align:right;width:97.3%}.channel-top .badge,.tile-top .badge,.tile-top .duration{background:rgba(0,0,0,.7);border-radius:0.1em;color:#fff;display:inline-block;font-size:1.4em;padding:0em .1em}.tile-top .badge,.tile-top .duration{text-transform:uppercase}.tile-top .live-badge{background-color:rgba(230,33,23,.8);border:0;color:#fff}.playlist-tile:hover,.video-tile:hover{background-color:#222}.channel-tile .details,.playlist-tile .details,.recent-search-tile .details,.video-tile .details{color:#999;font-size:1.3em;font-weight:300;height:40%;overflow:hidden;padding:0;white-space:normal;word-break:break-all}.channel-tile .details{text-align:center}.playlist-tile .details,.recent-search-tile .details,.video-tile .details{margin:.7em 0em 0em}.custom-playlist-image-tile .tile-top .video-thumb{background-position-x:0%;background-repeat:no-repeat;background-size:56.25%}.playlist-tile.focused .details,.recent-search-tile.focused .details,.video-tile.focused .details{color:#666}.playlist-tile .details .by,.recent-search-tile .results,.video-tile .details .by{height:1.4em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.playlist-tile .details .views,.video-tile .details .views{display:inline-block;padding-right:1.5em}.playlist-tile .details .views:empty,.video-tile .details .views:empty{display:none}.action-tile{border:2px rgba(255,255,255,0.1) solid;color:#fff;height:26em;overflow:visible}.action-tile.focused,.channel-tile.focused{background-color:#fff;color:#222}.action-tile .content{height:26em;white-space:normal}.video-tile .live-start-time{display:inline-block;vertical-align:middle}.tile-top .count-overlay{background:rgba(0,0,0,0.75);font-size:1.4em;height:100%;position:absolute;right:0;text-align:center;top:0;width:30%}.tile-top .count-overlay .video-count{display:block;font-size:2.2em;font-weight:bold;line-height:.8em;margin-top:1.6em}.action-tile .title{font-size:2.4em;height:24%;overflow:hidden;padding-top:0.5em;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:normal}.action-tile .long-title{font-size:2em;text-align:center;white-space:normal}.action-tile .description,.action-tile .remote-pair-text,.action-tile .remote-reset-help{color:#fff;font-size:1.4em;opacity:0;padding:0.5em;text-align:center;white-space:normal}.action-tile.focused .description,.action-tile.focused .remote-pair-text,.action-tile.focused .remote-reset-help,.action-tile.focused .sign-out-username{opacity:1}.action-tile .sign-out-username{font-size:1.7em;margin:1em auto;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:80%}.action-tile .remote-count{font-size:.4em;position:absolute;top:40%;width:100%}.action-tile .remote-standing{display:inline-block;font-size:1.4em;margin:.2em auto;padding:.8em .4em .1em}.action-tile .remote-reset-help{height:2.7em}.action-tile .status{font-size:2em;text-align:center}.row-playing{display:none}.action-tile .large-action-icon{font-family:'youtube-icons';font-size:11em;margin-top:0;text-align:center;width:100%}.action-tile .sign-out-user-icon{background-size:cover;border-radius:20em;height:9em;margin:0 auto;width:9em}.action-tile .search-tile .description{font-size:1.4em;margin-top:2em;position:inherit;text-align:center}.large-action-icon.icon-guide-history{font-size:8em;margin-top:0.2em}.toggle-tile .icon{margin-top:0}.toggle-tile .content .title{height:12%;white-space:nowrap}.toggle-tile .label{font-size:1.8em;max-height:13%;text-align:center;width:100%}.selected .icon-search,.tile.selected .icon-search-clear{color:#222}.exp-densityBrowse .horizontal-list>.content{font-size:100%}.exp-densityBrowse .horizontal-list .no-content-message{display:none}.exp-densityBrowse .horizontal-list .pivot-sliding-highlighter{background:transparent;border:.5em #fff solid;box-shadow:.083em .083em .75em .167em #000 inset;height:7.5em;margin-left:-.4em;margin-top:-.4em;pointer-events:none;width:13.8em}.exp-densityBrowse .horizontal-list.focused .pivot-sliding-highlighter{display:block}.exp-densityBrowse .horizontal-list.focused.channel-selected .pivot-sliding-highlighter{border-radius:50%;height:7.5em;-moz-transform:translateX(3.2em);-o-transform:translateX(3.2em);-webkit-transform:translateX(3.2em);transform:translateX(3.2em);width:7.5em}.exp-densityBrowse .browse-sets .action-tile,.exp-densityBrowse .horizontal-list .channel-tile,.exp-densityBrowse .horizontal-list .video-tile{height:14em;width:14em}.exp-densityBrowse .shelf .horizontal-list .channel-tile,.exp-densityBrowse .shelf .horizontal-list .video-tile,.exp-densityBrowse .shelf .horizontal-list .channel-tile.selected,.exp-densityBrowse .shelf .horizontal-list .video-tile.selected{opacity:.5}.exp-densityBrowse .shelf.selected .horizontal-list .channel-tile,.exp-densityBrowse .shelf.selected .horizontal-list .video-tile,.exp-densityBrowse .horizontal-list .channel-tile,.exp-densityBrowse .horizontal-list .video-tile{opacity:.7}.exp-densityBrowse .shelf.selected .horizontal-list .channel-tile.selected,.exp-densityBrowse .shelf.selected .horizontal-list .video-tile.selected,.exp-densityBrowse .horizontal-list .channel-tile.selected,.exp-densityBrowse .horizontal-list .video-tile.selected,.exp-densityBrowse .horizontal-list .auto-play-tile.selected .video-tile,.limited-animation .exp-densityBrowse .shelf .horizontal-list .channel-tile,.limited-animation .exp-densityBrowse .shelf .horizontal-list .video-tile,.limited-animation .exp-densityBrowse .shelf .horizontal-list .channel-tile.selected,.limited-animation .exp-densityBrowse .shelf .horizontal-list .video-tile.selected,.limited-animation .exp-densityBrowse .shelf.selected .horizontal-list .channel-tile,.limited-animation .exp-densityBrowse .shelf.selected .horizontal-list .video-tile,.limited-animation .exp-densityBrowse .horizontal-list .channel-tile,.limited-animation .exp-densityBrowse .horizontal-list .video-tile{opacity:1}.exp-densityBrowse .horizontal-list .tile-top{height:7.83em}.exp-densityBrowse .channel-top .badge,.exp-densityBrowse .tile-top .badge{font-size:1em;padding:.2em}.exp-densityBrowse .horizontal-list .tile-bottom,.exp-densityBrowse .horizontal-list .channel-bottom{height:4.25em;margin-top:.83em;padding:0;width:100%}.exp-densityBrowse .shelf .horizontal-list .tile-bottom,.exp-densityBrowse .shelf .horizontal-list .channel-bottom{display:none}.exp-densityBrowse .shelf.selected .horizontal-list .tile-bottom,.exp-densityBrowse .shelf.selected .horizontal-list .channel-bottom{display:block}.exp-densityBrowse .browse-sets .action-tile .description,.exp-densityBrowse .horizontal-list .tile-bottom .title,.exp-densityBrowse .horizontal-list .channel-bottom .title{font-size:1.16em;height:initial;line-height:1.25em;margin:0;max-height:2.5em;text-overflow:ellipsis}.exp-densityBrowse .horizontal-list .channel-bottom .title{white-space:normal}.exp-densityBrowse .horizontal-list .video-tile .details{color:#cdcdcd;font-size:.83em;height:initial;margin:.4em 0}.exp-densityBrowse .horizontal-list .video-tile .tile-top .decoration{display:none;line-height:1em;margin-top:0;-moz-transform:translateY(-100%);-o-transform:translateY(-100%);-webkit-transform:translateY(-100%);transform:translateY(-100%);width:100%}.exp-densityBrowse #search .tile-top .decoration,.exp-densityBrowse #post-play-list .tile-top .decoration,.exp-densityBrowse .shelf.selected .horizontal-list .tile-top .decoration{display:block}.exp-densityBrowse .horizontal-list .video-tile .tile-top .badge{border-radius:0}.exp-densityBrowse .horizontal-list .video-tile .tile-top .duration{background:rgba(0,0,0,.5);font-size:1em;font-weight:bold;padding:.5em}.exp-densityBrowse .horizontal-list .channel-bottom .details{display:none}.exp-densityBrowse .horizontal-list .video-tile .details .views,.exp-densityBrowse .horizontal-list .video-tile .details .age{display:inline-block}.exp-densityBrowse .horizontal-list .video-tile .details .views{padding-right:.5em}.sets-ui .exp-densityBrowse .horizontal-list .channel-tile.selected .channel-bottom>.title,.sets-ui .exp-densityBrowse .horizontal-list .auto-play-tile.selected .tile-bottom>.title,.sets-ui .exp-densityBrowse .horizontal-list .video-tile.selected .tile-bottom>.title{color:#fff}.exp-densityBrowse .video-tile .overlay{height:7.83em;margin-left:60%;margin-top:-7.83em;width:40%}.exp-densityBrowse .video-tile .overlay .count{font-size:1em;line-height:1em;padding-top:1.5em}.exp-densityBrowse .video-tile .overlay .icon{font-size:2em;padding:0}.exp-densityBrowse .horizontal-list .channel-top{height:7.83em;margin:0 auto;width:7.83em}.exp-densityBrowse .horizontal-list .channel-top .video-thumb{border-radius:50%}.exp-densityBrowse .browse-sets .shelf>.title{font-size:1em;margin-bottom:.9em;margin-top:0}.exp-densityBrowse .browse-sets .shelf>.title .main{font-size:1.5em}.exp-densityBrowse .browse-sets .shelf>.title .annotation{font-size:1em}.exp-densityBrowse .browse-sets .shelf>.title{color:#cdcdcd}.engaged.exp-densityBrowse .channel-tile .voice-command,.engaged.exp-densityBrowse .video-tile .voice-command{font-size:1em;line-height:1em;margin-top:-2em}.limited-animation.sets-ui .exp-densityBrowse .video-tile:hover:not(.focused),.limited-animation.sets-ui .exp-densityBrowse .channel-tile:hover:not(.focused),.sets-ui .exp-densityBrowse .carousel .item:hover,.sets-ui .exp-densityBrowse .carousel .auto-play-tile:hover,.sets-ui .exp-densityBrowse .carousel .channel-tile:hover{background-color:inherit!important;opacity:1}.exp-densityBrowse .browse-sets .action-tile{border:none}.exp-densityBrowse .browse-sets .action-tile .content{height:7.83em;margin-bottom:.83em}.exp-densityBrowse .browse-sets .action-tile .title{display:none}.exp-densityBrowse .browse-sets .action-tile .large-action-icon{background-color:#232323;color:#fff;font-size:6em;height:1.3em;line-height:1.3em}.exp-densityBrowse .browse-sets .action-tile .description{opacity:inherit;padding:0}.exp-densityBrowse .auto-play-tile{height:14em;width:14em}.exp-densityBrowse .post-play-countdown{top:7%}.limited-animation .exp-densityBrowse .browse-content .list{margin-left:-7.5em;width:inherit}.limited-animation .exp-densityBrowse .browse-content .shelf>.title{margin-left:7.5em}.limited-animation .exp-densityBrowse .browse-content .list .shelf:nth-child(1){margin-bottom:6.5em}.limited-animation .exp-densityBrowse .browse-content .list .shelf{margin-bottom:-.1em}.limited-animation.sets-ui .exp-densityBrowse .channel-tile:not(.focused),.limited-animation.sets-ui .exp-densityBrowse .video-tile:not(.focused){background-color:inherit}.limited-animation .exp-densityBrowse .channel-tile.focused,.limited-animation .exp-densityBrowse .video-tile.focused{background-color:inherit}.limited-animation .exp-densityBrowse .video-tile{margin-right:.5em}.limited-animation .exp-densityBrowse .video-tile .overlay{height:7.03em;margin-left:8em;margin-top:-7.43em;width:5.6em}.limited-animation .exp-densityBrowse .video-tile .tile-top{background:inherit;height:7.03em;padding:.4em;width:13.2em}.limited-animation .exp-densityBrowse .channel-tile{margin-right:.5em}.limited-animation .exp-densityBrowse .channel-tile .channel-top{height:6.83em;padding:.4em;width:6.83em}.limited-animation .exp-densityBrowse .video-tile.focused .tile-top{background:#fff}.limited-animation .exp-densityBrowse .channel-tile.focused .channel-top{background:#fff;border-radius:50%}.limited-animation .exp-densityBrowse .search .placeholder-tile,.limited-animation .exp-densityBrowse .browse-content .list .placeholder-tile{height:14em;margin-right:.5em;width:14em}#dialog.remote-reset-dialog>.title{font-size:3em;padding-bottom:.5em}#dialog.remote-reset-dialog .buttons{bottom:.5em;position:absolute}#dialog.remote-reset-dialog{left:0;position:absolute;white-space:normal}.remote-reset-dialog #dialog-view{color:#aaa;font-size:1.8em;padding-top:0.5em}.connection-instructions{padding-top:.5em;font-size:2em}.text-dialog .connection-instructions{font-size:1.3em}.browse-sets-state .login-dialog{margin-top:5em}#search .pairing .pairing-content>*,#dialog .pairing .pairing-content>*{display:inline-block}#search .pairing .pairing-content .step2,#dialog .pairing .pairing-content .step2{display:block}#search .dial-upsell .connection-steps .no-dial-connect-step1,#search .manual-connect .connection-steps .with-dial-connect-step1{display:none}.connection-instructions .step1,.connection-instructions .step2,.qr-code .scan,.pairing .connected-header,.remote-reset-dialog .connected-header{color:#aaa;font-size:.7em}.connection-instructions .pair-url,.connection-instructions .pair-code{color:#f1f1f1}.connection-instructions .step2{margin-top:2em}.pairing .qr-code,.pairing .connected-list{display:inline-block;margin-left:1em;vertical-align:top}.pairing .dial-upsell{color:#aaa;display:inline-block;font-size:95%;overflow:hidden;padding-left:2em;padding-top:0.8em;text-align:initial;vertical-align:top;white-space:normal;width:16em}.pairing .cast-icon{background:url(img/cast_disconnected_blue.png) no-repeat center;background-size:contain;display:inline-block;height:1em;margin:.1em .3em;vertical-align:middle;width:1em}.pairing .qr-code .scan{margin-bottom:.5em;white-space:normal;width:5em}.pairing .qr-code img{height:5.1em;width:5.1em}.pairing .icon-settings-pair,.login-dialog .icon-settings-pair{background-image:none;display:inline-block;font:5em 'youtube-icons';height:1em;margin-top:.1em;width:1.4em}.remote-reset-dialog .connected-header,.pairing .connected-header{margin-bottom:.3em}.remote-reset-dialog .devices,.pairing .devices{list-style:none;font-size:1.5em;color:#f1f1f1}.remote-reset-dialog .devices>div,.pairing .devices>div{display:block;height:1.5em;line-height:1.5em;overflow:hidden;padding-left:1.5em;text-overflow:ellipsis;white-space:nowrap;width:11.5em}.remote-reset-dialog .devices .connected:before{background-position:0 100%}.remote-reset-dialog .devices .connected{color:#f1f1f1}#search{bottom:0;color:#f1f1f1;left:0;overflow:hidden;position:absolute;right:0;text-align:center;top:0}.watch-state #search{left:0}#search>.controls{left:8em;margin-right:18em;position:absolute;right:2.5em;text-align:left;top:2.5em}#search-text-box{background-color:#e1e1e1;font-size:1.6em;height:100%;margin:0 auto;overflow:hidden;position:relative}#search-text-box>.icon-search{display:none}#search-input{background:none;border:none;color:#111;height:100%;padding-left:.5em;width:100%}#search-input:disabled{color:#111}#search-query{color:#111;height:100%;overflow:hidden;padding-left:.5em;padding-top:.3em;position:absolute;text-overflow:ellipsis;white-space:pre;width:95%}#search-suggestions{font-size:1.2em;position:relative;display:inline-block;left:0;width:100%}.search-state #spinner{top:26em}#suggest-list{overflow:hidden}#suggest-list>div{border-radius:1px;color:#e1e1e1;display:inline-block;padding:.2em .5em}#search-keyboard{font-size:1em;text-align:left;width:65%}#search-suggestions,#search-keyboard,#letter-suggest{white-space:nowrap}#search-keyboard,#letter-suggest{z-index:1}#keyboard-grid{display:inline-block;font-size:1.6em;margin:0 auto;overflow:hidden;text-align:left}#keyboard-grid,#keyboard-spacebar{color:#a3a3a3}#keyboard-grid .button{border-radius:1px;display:inline-block;margin:.3em .6em .3em 0;padding:0 .1em;text-align:center;text-transform:uppercase;width:1em;vertical-align:top}#keyboard-grid .list{text-align:left;text-shadow:none}#search-keyboard #keyboard-grid .icon-key-delete.button{font-family:'youtube-icons';font-size:.7em;line-height:1.2em;margin-left:2.25em;padding:.25em;width:2.25em}#keyboard-spacebar{border-radius:1px;display:inline-block;font-family:'youtube-icons';font-size:1.44em;margin:.1em 7em 0 2.1em;padding:.1em;text-align:left}#search-keyboard #keyboard-grid .clear-query-tile.button{font-size:.7em;margin-left:2.25em;padding:.25em;text-transform:uppercase;width:auto}#keyboard-grid .icon-key-globe{font-family:'youtube-icons';margin:.25em 0 .25em 1.6em;padding:.1em;width:1.2em}#search-keyboard .button.focused{background-color:#e1e1e1;color:#212121}#letter-suggest{font-size:1.6em;position:fixed;text-align:center;width:1.2em}.letter-suggest-visible #keyboard-grid .list.selected .button.selected:not(.focused){background-color:rgba(153,153,153,.85);color:#000;text-shadow:none}#keyboard-grid .button.numbers-toggle-tile{font-size:.75em;padding:.22em;margin:.25em 0 0 2.1em;width:auto}#search .pairing .icon-settings-pair{display:none}#search .search-message{display:inline-block;margin-left:2em;margin-top:1.5em;vertical-align:top;white-space:normal;width:50%}#search .search-pairing{background-color:rgba(0,0,0,.3);bottom:0;display:inline-block;left:5em;padding:2em 2.5em 4em;position:absolute;text-align:left;text-shadow:-1px 1px 2px black;width:100%}.limited-animation #search .search-pairing{background-color:#000}#search .search-pairing .search-img{background-image:url(img/pair_promo.png);background-size:cover;display:inline-block;height:11em;width:11em}#search .search-pairing .title{font-size:1.9em}#search .search-pairing .connection-instructions{font-size:1.6em}#search .search-pairing .dial-upsell-content{color:#aaa}#search .search-pairing .manual-connect-content .connection-steps{padding:0}#search .search-pairing .manual-connect-content .connection-steps .pair-code,#search .search-pairing .manual-connect-content .connection-steps .pair-url{display:block}#search .search-pairing .manual-connect-content .connection-steps .step2{margin-top:1em}#search .search-pairing .manual-connect-content .connection-steps .label,#search .search-pairing .manual-connect .dial-upsell-content,#search .search-pairing .dial-upsell .manual-connect-content{display:none}#search .pairing .no-dial-connect-step1,#search .pairing .no-dial-connect-step2{display:inline-block}#search .pairing .no-dial-connect-step2{margin-left:2em}#search .pairing .connection-steps{text-align:left}#search .pairing .connected-list,#search .pairing .qr-code-wrapper{display:none}#search.hide-input .search-pairing{margin-top:8em}#letter-suggest div{background-color:rgba(153,153,153,.85);color:rgba(0,0,0,.8);height:1.4em;text-shadow:none}#letter-suggest .focused{color:#f1f1f1}#transliteration-container{display:none}#search-keyboard.transliterable #transliteration-container{display:block}#transliteration .list{font-size:2em;height:1.2em;margin:0 auto;overflow:hidden;padding:.2em 0;text-align:center;width:77%}#transliteration .list>div{display:inline;padding:0 .5em;position:relative}#suggest-list>div.focused,#transliteration .list .focused{background-color:#fefefe;color:#212121}#transliteration .button:hover{background-color:rgba(153,153,153,.4)}#transliteration .button:hover,#search-keyboard .button:hover{cursor:pointer}#search .horizontal-list>.content{text-align:left}.limited-animation.sets-ui #search .horizontal-list>.content{margin-left:-21.8em;width:126em}#search .horizontal-list{left:7.5em;height:inherit;position:absolute;right:0;top:38%;-o-transform:translateY(7.5em);-webkit-transform:translateY(7.5em);transform:translateY(7.5em);-o-transition:opacity .25s -o-transform .25s;-webkit-transition:opacity .25s,-webkit-transform .25s;transition:opacity .25s,transform .25s;width:initial}#search.input-collapsed .horizontal-list{-o-transform:none!important;-webkit-transform:none!important;transform:none!important}#search-keyboard{-o-transition:opacity .25s -o-transform .25s;-webkit-transition:opacity .25s,-webkit-transform .25s;transition:opacity .25s,transform .25s;transform-origin:top}#search-keyboard.hidden{display:block!important;opacity:0;-o-transform:scaleY(.5);-webkit-transform:scaleY(.5);transform:scaleY(.5)}#search #search-text-entry{height:2.4em}#search #search-suggestions,#search #search-text-entry{background-color:rgba(0,0,0,0);padding-top:.25em;-o-transform-origin:top;-webkit-transform-origin:top;transform-origin:top;-o-transition:opacity .25s -o-transform .25s;-webkit-transition:opacity .25s,-webkit-transform .25s;transition:opacity .25s,transform .25s}.limited-animation #search .horizontal-list,.limited-animation #search #search-suggestions,.limited-animation #search #search-text-entry,.limited-animation #search #search-keyboard{-o-transition:none;-webkit-transition:none;transition:none}#search-text-entry{padding-bottom:.4em}#search-text-entry,#text-box-background{height:3em}#keyboard-icon{display:none;font-family:'youtube-icons';font-size:1.2em;padding-bottom:.4em;text-align:center;vertical-align:bottom;width:2em}.input-collapsed #keyboard-icon{display:inline-block}#search-text-entry .suggestions-container{white-space:nowrap;overflow:hidden;height:2.4em}.exp-densityBrowse #search .horizontal-list{font-size:100%;height:14em;top:35%;-moz-transform:translateY(8em);-o-transform:translateY(8em);-webkit-transform:translateY(8em);transform:translateY(8em)}.limited-animation .exp-densityBrowse #search .horizontal-list .list{margin-left:-14em}.exp-densityBrowse #search .horizontal-list .video-tile{height:14em}.exp-densityBrowse #search .horizontal-list .video-tile .details .views,.exp-densityBrowse #search .horizontal-list .video-tile .details .age{display:inline-block}.exp-densityBrowse #search .horizontal-list .video-tile .details .views{padding-right:.5em}.limited-animation.sets-ui .exp-densityBrowse #search .horizontal-list>.content{margin-left:0;width:inherit}#player{height:100%;width:100%}.watch-state #watch{display:block}.wiiu #watch{background-color:#000;height:100%}#player-facade{height:100%;position:absolute;width:100%}#player-video{height:100%}#watch,.dialog-focused .standard-caption-window,#caption-window-99,.countdowntimer,.ytp-cued-icon,.ytp-fallback,.html5-context-menu,.html5-dialog-holder,.html5-endscreen,.html5-info-bar,.html5-modal-panel,.html5-player-chrome,.html5-show-video-info-template,.html5-storyboard,.html5-text-button,.html5-video-player .hid,.html5-ypc-module,.player-actions-container,.video-ad-status-bar,.video-annotations,.html5-watermark,.video-fallback-content,.video-ads,.title-card.hidden{display:none}.html5-video-player{overflow:visible}.html5-video-info-panel{background-color:rgba(0,0,0,.7);color:#f1f1f1;display:none;margin:20%;position:absolute;top:0;z-index:1}.html5-video-info-panel-close{display:none}.html5-video-info-panel-content>div>div{display:inline-block;font-weight:bold;padding:0 .5em;text-align:right;width:10em}.ad-video{width:100%;height:100%}.ad-showing .video-ads{display:block;overflow:hidden}.ad-interrupting.tag-pool-enabled .html5-main-video{position:absolute;left:-1px;top:-1px;overflow:hidden;width:1px!important;height:1px!important}.html5-video-player .video-stream{position:absolute;top:0;left:0;display:block}.opera .video-stream{height:720px;width:1280px}.advertisement-info,.skip-ad-button{position:absolute;top:9.5em}.advertisement-info{left:12.5%;text-align:left;width:30%;overflow:hidden}.advertisement-info-top{height:3em}.advertisement-avatar{width:3em;height:3em;display:inline-block;margin-right:.4em;background-position:right center;background-repeat:no-repeat;background-size:contain}.advertisement-info-details{display:inline-block;vertical-align:top;width:79%}.advertisement-title,.advertisement-advertiser,.third-party{color:#fff;text-shadow:2px 1px #000;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.third-party{position:absolute;bottom:0}.advertisement-title{font-size:1.4em;line-height:1em;height:1.1em}.advertisement-advertiser{font-size:1.1em;line-height:1.3em;height:1.4em}.advertisement-info .ad-badge{background-color:#e6bc27;padding:1px 5px;text-shadow:none;border-radius:.15em;font-size:.9em;text-transform:capitalize}.skip-ad-button{right:12.5%;border-radius:.15em;background-color:rgba(0,0,0,.4);padding:.6em}.canskip.mdx-skip.skip-ad-button{height:4.0em;width:18em}.canskip.mdx-skip .skip-button-text{font-size:1.1em;height:3em;left:2.0em;line-height:1.5em;position:absolute;top:.7em;width:75%}#transport-controls.ad-active .player-controls #button-list div.skip-ad-button .label,.skip-ad-button .label{font-size:1.1em;padding:0 1.4em;height:2.5em;line-height:2.5em;border-radius:.12em;cursor:pointer;background-color:rgba(0,0,0,0);color:#e1e1e1}.skip-ad-button.canskip.mdx-skip .label{height:3.7em}#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip:hover .label,.skip-ad-button.canskip:hover .label{background-color:#fff;color:#212121;border-radius:.12em}#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip.focused .label,.skip-ad-button.canskip.focused .label{background-color:#e1e1e1;color:#212121;border-radius:.12em}.skip-ad-button .skip-symbol{display:none;font-family:'youtube-icons'}.skip-ad-button.canskip .skip-symbol.icon-player-next{display:inline;font-size:1.3em;margin-left:.5em;vertical-align:middle}.exp-newMdxSkipButtonCast .canskip.mdx-skip.skip-ad-button .skip-symbol.icon-cast_on{display:inline;font-size:2.5em;position:absolute;right:.7em;text-align:right;top:.5em;width:25%}.exp-newMdxSkipButtonPair .canskip.mdx-skip.skip-ad-button .skip-symbol.icon-settings-pair{display:inline;font-size:4em;position:absolute;right:.4em;text-align:right;top:.3em;width:25%}.canskip.mdx-skip.skip-ad-button .skip-symbol.icon-player-next{display:none}#player-controls{text-align:center}#bottom-half{bottom:0;height:50%;position:absolute;width:100%}#transport-controls{background:-o-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));background:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));bottom:0;height:100%;position:absolute;-o-transition:-o-transform .25s,opacity .25s;-webkit-transition:-webkit-transform .25s,opacity .25s;transition:transform .25s,opacity .25s;width:100%}#transport-controls.hidden{display:block!important;opacity:0}.limited-animation #transport-controls.hidden{display:none!important}#transport-controls,#transport-controls.focused{display:block}.player-controls-widget{border:0;margin-top:8.4em}.fresh-transport-controls.seeking-forward .seeking-icon.icon-player-rew:before{content:"\00e62c"}.seeking-icon{bottom:3em;color:#fff;display:none;position:absolute;left:0;margin:0 auto;right:0}.seeking-icon span{display:none}.fresh-watch.watch-seeking .seeking-icon{display:block}.fresh-watch .title-card{background:-webkit-linear-gradient(top,rgba(0,0,0,.75),transparent);background:-o-linear-gradient(top,rgba(0,0,0,.75),transparent);background:linear-gradient(to bottom,rgba(0,0,0,.75),transparent);height:35.9%}#transport-controls.fresh-transport-controls{background:-webkit-linear-gradient(bottom,#000,transparent);background:-o-linear-gradient(bottom,#000,transparent);background:linear-gradient(to top,#000,transparent)}.fresh-watch .player-video-title{color:rgba(255,255,255,1);font-size:1.936em}.fresh-watch .player-meta .player-video-details{color:rgba(255,255,255,0.7);font-size:1.455em}.fresh-watch .pivot-shelf-list{margin-top:14.5em;padding-left:3.871em}#fresh-rows-container{border:0;color:#fff;margin-top:7.7em}.fresh-transport-controls .storyboards{position:absolute}.fresh-transport-controls .more-row,.fresh-transport-controls .main-row{margin-left:5%;width:95%}.fresh-transport-controls .button span,.fresh-transport-controls .toggle-button span{display:none;font-family:'roboto-regular';color:rgba(255,255,255,1)}.lang-case-sensitive .fresh-transport-controls span:first-letter{text-transform:uppercase}.fresh-transport-controls .button.disabled:hover,.fresh-transport-controls .toggle-button.disabled:hover{background-color:transparent}.fresh-transport-controls .button.disabled,.fresh-transport-controls .toggle-button.disabled{opacity:.45}.fresh-transport-controls .button.focused,.fresh-transport-controls .toggle-button.focused,.fresh-transport-controls .button:hover,.fresh-transport-controls .toggle-button:hover{background-color:rgba(255,255,255,.5);color:#fff}.fresh-transport-controls .button,.fresh-transport-controls .toggle-button,.seeking-icon{border-radius:4px;font-family:'youtube-icons';font-size:1.4em;height:1em;padding:.55em;speak:none;text-align:center;width:1em}.fresh-transport-controls .button,.fresh-transport-controls .toggle-button{color:rgba(255,255,255,.7);cursor:pointer;display:inline-block;position:relative}.fresh-transport-controls #transport-more-button:before{display:inline-block;left:19%;position:absolute;top:-9%}.fresh-transport-controls #transport-more-button{font-size:2em;height:.7em;margin-right:1.452em;padding:.385em;width:.7em}.fresh-transport-controls #transport-more-button span{color:#fff;display:inline-block;font-size:.485em;left:4.5em;position:absolute;text-align:left;top:1em;width:15em}.fresh-transport-controls #transport-more-button.top-row-active span{display:none}.fresh-transport-controls #transport-more-options-list{display:inline-block}.fresh-transport-controls .progress-bar{display:inline-block;height:3em;left:0;padding:0;position:relative;top:0;width:76.55%}.fresh-transport-controls.live-playback #play-pause-button{margin-right:1em}.fresh-transport-controls.live-playback .progress-bar{width:77.55%}.fresh-transport-controls.live-playback .live-indicator{display:inline-block;left:0;margin-left:1em;position:relative;top:0}.fresh-transport-controls #player-time-elapsed,.fresh-transport-controls .player-time-total{color:rgba(255,255,255,1);display:inline-block;font-size:1.3em;position:relative;text-align:center;top:0;width:8%}.fresh-transport-controls .more-row{margin-bottom:5px}.fresh-transport-controls .more-row .button,.fresh-transport-controls .more-row .toggle-button{margin-right:2.075em;vertical-align:top}.fresh-transport-controls .icon-like.toggle-selected,.fresh-transport-controls .icon-dislike.toggle-selected,.fresh-transport-controls .icon-player-closedcaptions.toggle-selected{color:#2793e6}.fresh-transport-controls .icon-logo-lozenge.toggle-selected{color:#f00}.fresh-transport-controls .more-row .button span,.fresh-transport-controls .more-row .toggle-button span{font-size:.692em;left:-3.45em;position:relative;top:-4.4em;width:8.3em}.fresh-transport-controls .more-row .button.focused span,.fresh-transport-controls .more-row .toggle-button.focused span,.fresh-transport-controls .more-row .button:hover span,.fresh-transport-controls .more-row .toggle-button:hover span{display:inline-block}.fresh-transport-controls .progress-bar .progress-bar-line div{height:.242em}.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-background{background-color:rgba(255,255,255,0.45)}.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-loaded{background-color:#fff}.fresh-transport-controls .progress-bar .progress-bar-line .progress-bar-played{background-color:#df2323}.fresh-transport-controls .progress-bar.ad-active .progress-bar-played{background-color:#e7bd00}.ypc-playback .fresh-transport-controls .progress-bar-line .progress-bar-played{background-color:#2793e6}.fresh-watch .ad-point-separator,.fresh-transport-controls .progress-bar .progress-bar-disc,.fresh-transport-controls.ad-active #player-time-elapsed,.fresh-transport-controls.ad-active .player-time-total{display:none}.fresh-transport-controls.ad-active .progress-bar{padding-left:1em;width:88%}.fresh-transport-controls.ad-active .more-row,.fresh-watch.watch-seeking .more-row{visibility:hidden}.fresh-watch .skip-ad-button,.fresh-watch .advertisement-info{top:6.7em}.fresh-watch .advertisement-info{left:5%}.fresh-watch .advertisement-info .advertisement-info-top{height:3.065em;position:relative}.fresh-watch .skip-ad-button{border-radius:4px;background-color:rgba(0,0,0,.5);padding:0;right:6%;z-index:1}.fresh-watch .skip-ad-button .label{color:#fff;font-size:1.13em;height:2.57em;line-height:2.57em;padding:0 1.3em}.fresh-watch .skip-ad-button .skip-symbol{font-size:1.1em}.fresh-watch .skip-ad-button.canskip:hover,.fresh-watch .skip-ad-button.canskip.focused{background-color:rgba(255,255,255,.5)}.fresh-watch .skip-ad-button.canskip:hover .label,.fresh-watch .skip-ad-button.canskip.focused .label{background:none;color:#fff}.fresh-watch .advertisement-info{color:#fff}.fresh-watch .advertisement-info .advertisement-advertiser{font-size:100%;height:1.4em;line-height:1.3em}.fresh-watch .advertisement-info .advertisement-advertiser>span{vertical-align:bottom}.fresh-watch .advertisement-info .advertisement-advertiser,.fresh-watch .advertisement-info .advertisement-title,.fresh-watch .advertisement-info .third-party{overflow:hidden;text-shadow:none;text-overflow:ellipsis;white-space:nowrap}.fresh-watch .advertisement-info .third-party{bottom:0;position:absolute;vertical-align:top;width:79%}.fresh-watch .advertisement-info .third-party>span{vertical-align:middle}.fresh-watch .advertisement-info .advertisement-title{font-size:1.35em;font-weight:bold;line-height:1em;height:1.1em;padding-bottom:1%;text-shadow:none}.fresh-watch .advertisement-info .ad-badge{background-color:#e7bd00;border-radius:.15em;font-size:.85em;font-weight:bold;padding:1px 7px;text-shadow:none;text-transform:capitalize}.fresh-watch .advertisement-info .remaining-duration,.fresh-watch .advertisement-info .ad-by{font-size:1.13em}.fresh-watch .advertisement-info .remaining-duration{padding:0 2%}.fresh-watch .advertisement-info .advertisement-avatar{background-repeat:no-repeat;background-size:contain;border-radius:50%;display:inline-block;height:3.065em;margin-right:1.4em;width:3.065em}.title-card{background:-o-linear-gradient(top,rgba(0,0,0,.9),rgba(0,0,0,.8),transparent);background:-webkit-linear-gradient(top,rgba(0,0,0,.9),rgba(0,0,0,.8),transparent);background:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.8),transparent);display:block;height:25%;position:absolute;top:0;-o-transition:-o-transform .25s,opacity .25s;-webkit-transition:-webkit-transform .25s,opacity .25s;transition:transform .25s,opacity .25s;width:100%}.ypc-playback .title-card{height:30%}.title-card.hidden{display:block!important;opacity:0}.limited-animation .title-card.hidden{display:none!important}.title-card .badges span{border:1px solid #ddd;border-radius:2px;display:inline-block;font-size:.9em;margin-left:1em;padding:0 .5em 0;text-transform:uppercase;vertical-align:middle}.title-card .badges span.live-badge{color:#fff;border:0;background-color:rgba(230,33,23,.8);margin-left:0}.selected-title .views{margin-top:-.6em}.player-meta{color:#f1f1f1;margin:2.6em 0 0 3.5em;white-space:nowrap;width:90%}.player-meta .user-details{position:absolute;right:5%}.player-meta .user-details>div{display:inline-block;vertical-align:top}.player-meta .user-details .avatar{background-size:cover;height:4em;width:4em}.player-meta .user-details .message{font-size:80%;margin:.2em 1em 0 1.1em;max-width:50%;overflow:hidden;text-overflow:ellipsis}.player-meta .player-video-text{display:inline-block;padding-left:1.5em;width:90%}.player-meta .player-video-details{font-size:1.5em;white-space:initial}.player-meta .player-video-details>div{margin:.2em 1em 0 0;vertical-align:top}.player-meta .player-video-details .username{max-width:45%;overflow:hidden;text-overflow:ellipsis}.player-meta .player-video-details .set-context{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-meta .player-video-details .set-context,.player-meta .player-video-details .set-context-position,.player-meta .player-video-details .uploaded-date,.player-meta .player-video-details .view-count,.player-meta .player-video-details .badges,.player-meta .player-video-details .username{display:inline-block}.player-video-avatar{background-size:contain;border-radius:50%;display:inline-block;height:5.5em;vertical-align:top;width:5.5em}.player-video-title{font-size:2.4em;margin:-.1em 0 0 0;overflow:hidden;text-overflow:ellipsis}.quality-status{display:none;padding-top:.2em}.title-tray-inflated .quality-status{display:inline-block}.quality-status-hd-badge{background:#f1f1f1;border-radius:2px;color:#414141;font-size:.6em;font-weight:bold;padding:.125em .5em}.ypc-preview{display:none}.ypc-playback .ypc-preview{display:block}.player-controls #button-list .focused,.player-controls #button-list div:hover{-webkit-border-radius:.05em;color:#000}.player-controls #button-list .focused{background-color:#fff}.player-controls #button-list div:hover{background-color:#9d9495}.player-controls #button-list .button,.player-controls #button-list .toggle-button{display:inline-block;font-size:1.4em;height:1.3em;margin:1em 1em;padding-bottom:.4em;padding-top:.8em;top:0;width:2.3em}.player-controls #button-list .button span,.player-controls #button-list .toggle-button span{font-family:'roboto-regular';font-size:.7em;left:-10%;margin:.5em 0 0;width:120%;height:120%}.player-controls #button-list .button.spacer{visibility:hidden;cursor:auto}#transport-controls.focused .player-controls #button-list div{color:#fff}#transport-controls.focused .player-controls #button-list .focused{color:#222}.player-controls #button-list div{color:#aaa;cursor:pointer;vertical-align:middle}#transport-controls.ad-active .player-controls #button-list div.disabled{visibility:hidden}#transport-controls.ad-active .player-controls #button-list div.skip-ad-button.disabled{visibility:visible;opacity:1}.player-controls #button-list div.disabled:hover{background-color:transparent;color:#fff}.player-controls #button-list div.focused{opacity:1}.player-controls #button-list div.disabled{opacity:.2}.player-controls #button-list .icon-player-closedcaptions.toggle-selected,.player-controls #button-list .icon-like.toggle-selected,.player-controls #button-list .icon-dislike.toggle-selected{color:#2793e6!important}.player-controls #button-list .icon-logo-lozenge.toggle-selected{color:#f00!important}#transport-controls .player-controls #button-list div.icon-player-more,#transport-controls .player-controls #button-list div.icon-player-less{color:#858585}.player-controls .toggle-button span,.player-controls .button span,.player-controls .toggle-button.disabled span,.player-controls .button.disabled span{display:none;margin-top:1em;color:#fff;font-size:.75em;padding:0;position:relative;text-align:center;top:1em;width:100%}.lang-case-sensitive .player-controls .button span:first-letter,.lang-case-sensitive .player-controls .toggle-button span:first-letter{text-transform:uppercase}#transport-controls.focused,.player-controls .toggle-button.focused span,.player-controls div:hover.toggle-button span,.player-controls .button.focused span,.player-controls div:hover.button span{display:block}.player-seekbar{position:relative}.progress-bar{height:4em;left:11%;position:absolute;top:-9em;width:75%;padding:0 1.5%}.progress-bar .progress-bar-playhead,.progress-bar .progress-bar-line{top:2.5em}.progress-bar .progress-bar-line{position:relative;width:100%}.progress-bar .progress-bar-line div{height:2px;position:absolute}.progress-bar .progress-bar-playhead{height:2px;position:relative;width:100%}.progress-bar .progress-bar-line .progress-bar-background{width:100%;background-color:#5b5b5b}.progress-bar .progress-bar-line .progress-bar-played{background-color:#e32c29}.progress-bar .progress-bar-line .progress-bar-loaded{background-color:#999}.ypc-playback .progress-bar-line .progress-bar-played{background-color:#2793e6}.progress-bar .progress-bar-disc{background-color:#ccc;border-radius:50%;height:.6em;margin:-.25em 0 0 -.25em;position:absolute;width:.6em}.progress-bar .cue-range-markers{height:100%;position:absolute;width:100%}.progress-bar-disc{pointer-events:none}.ad-active .progress-bar .cue-range-markers{visibility:hidden}.progress-bar .cue-range-markers .cue-range-marker{background-color:rgba(255,255,255,0);height:2px;margin:0 0 0 -.1em;position:absolute;width:.2em}.progress-bar .cue-range-markers .ad-marker{background-color:#e6bc27}.progress-bar.ad-active .progress-bar-played{background-color:#d6cb23}#player-time-elapsed,.player-time-total,.live-indicator{color:rgba(255,255,255,.75);font-size:1.2em;position:absolute;top:-6em;width:12%}.limited-graphics #player-time-elapsed,.limited-graphics .player-time-total{color:#fff}#player-time-elapsed{left:0;text-align:right}.player-time-total,.live-indicator{right:0;text-align:left}#transport-controls.ad-active #player-time-elapsed,#transport-controls.ad-active .player-time-total{display:none}.live-indicator{display:none;font-size:1.3em;position:absolute;top:-5.6em;width:11.7%}.live-playback .live-indicator{display:block}.live-playback .player-time-total,.live-playback .elapsed-time,.fresh-transport-controls.live-playback .player-time-total,.fresh-transport-controls.live-playback #player-time-elapsed{display:none}.live-playback .progress-bar-disc{background-color:#e62117}#watch .loading-indicator{top:30%}#transport-spacer:hover{background:none}.html5-video-controls{position:absolute;width:100%;height:0;bottom:2em;-moz-transition:all .6s ease;-ms-transition:all .6s ease;-o-transition:all .6s ease;-webkit-transition:all .6s ease}.ytp-player-content{position:absolute;bottom:0;height:0;left:0;right:0}.html5-video-content{position:absolute}.caption-window{position:absolute;pointer-events:none}.standard-caption-window{position:absolute;white-space:normal;width:80%}.caption-window-transform{display:inline-block;line-height:1.32em}.html5-video-player .captions-text{position:relative}.html5-video-player .caption-row{padding-bottom:5px;padding-top:5px}.anchor-point-1{-moz-transform:translate(-50%,0);-ms-transform:translate(-50%,0);-o-transform:translate(-50%,0);-webkit-transform:translate(-50%,0);transform:translate(-50%,0)}.anchor-point-2{-moz-transform:translate(-100%,0);-ms-transform:translate(-100%,0);-o-transform:translate(-100%,0);-webkit-transform:translate(-100%,0);transform:translate(-100%,0)}.anchor-point-3{-moz-transform:translate(0,-50%);-ms-transform:translate(0,-50%);-o-transform:translate(0,-50%);-webkit-transform:translate(0,-50%);transform:translate(0,-50%)}.anchor-point-4{-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.anchor-point-5{-moz-transform:translate(-100%,-50%);-ms-transform:translate(-100%,-50%);-o-transform:translate(-100%,-50%);-webkit-transform:translate(-100%,-50%);transform:translate(-100%,-50%)}.anchor-point-6{-moz-transform:translate(0,-100%);-ms-transform:translate(0,-100%);-o-transform:translate(0,-100%);-webkit-transform:translate(0,-100%);transform:translate(0,-100%)}.anchor-point-7{-moz-transform:translate(-50%,-100%);-ms-transform:translate(-50%,-100%);-o-transform:translate(-50%,-100%);-webkit-transform:translate(-50%,-100%);transform:translate(-50%,-100%)}.anchor-point-8{-moz-transform:translate(-100%,-100%);-ms-transform:translate(-100%,-100%);-o-transform:translate(-100%,-100%);-webkit-transform:translate(-100%,-100%);transform:translate(-100%,-100%)}.anchor-point-0,.anchor-point-1,.anchor-point-2{padding-top:3em}.watch.transport-showing .anchor-point-0,.watch.transport-showing .anchor-point-1,.watch.transport-showing .anchor-point-2{padding-top:9em}.anchor-point-0,.anchor-point-3,.anchor-point-6{padding-left:3em}.anchor-point-2,.anchor-point-5,.anchor-point-8{padding-right:3em}.anchor-point-6,.anchor-point-7,.anchor-point-8,.eureka .watch.transport-showing .anchor-point-6,.eureka .watch.transport-showing .anchor-point-7,.eureka .watch.transport-showing .anchor-point-8{padding-bottom:3em}.watch.transport-showing .anchor-point-6,.watch.transport-showing .anchor-point-7,.watch.transport-showing .anchor-point-8{padding-bottom:15em}.watch.pivot-focused .anchor-point-6{padding-bottom:17.5em}.watch.pivot-focused .anchor-point-7,.watch.pivot-focused .anchor-point-8{padding-bottom:16em}.watch .ytp-fresca-module,.search-focused .watch.message .ytp-fresca-module{display:none}.watch.message .ytp-fresca-module{background-color:rgba(0,0,0,.5);color:#fff;display:block;font-size:2em;padding-left:1.5em;position:absolute;top:30%;width:100%}.watch.message .ytp-fresca-show-countdown{padding-bottom:1.3em}.ytp-fresca-countdown{font-size:1.4em}.pivot-shelf-list{margin-top:12.5em;padding-left:7em;-o-transition:-o-transform .25s,opacity .25s;-webkit-transition:-webkit-transform .25s,opacity .25s;transition:transform .25s,opacity .25s;-webkit-transform:translateZ(0);-o-transform:translateY(10em);-webkit-transform:translateY(10em);transform:translateY(10em)}.pivot-shelf-list.hidden{display:block!important;opacity:0}.limited-animation .pivot-shelf-list.hidden,.forced-limited-animation.pivot-shelf-list.hidden{display:none!important}.pivot-shelf-list.animate-in{-o-transform:translateY(0);-webkit-transform:translateY(0);transform:translateY(0)}.pivot-shelf-list>.carousel{opacity:.5;-o-transition:opacity .25s;-webkit-transition:opacity .25s;transition:opacity .25s}.limited-memory .pivot-shelf-list{opacity:1}.pivot-shelf-list .title-container{color:#fff}.pivot-shelf .tile-title .author,.pivot-shelf .tile-title .view{color:#e1e1e1}.pivot-shelf-list.focused,.post-play .pivot-shelf-list{background:-o-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));background:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,1));height:17.5em;margin-top:2.5em;padding-top:10em;-o-transform:translateY(-7.5em);-webkit-transform:translateY(-7.5em);transform:translateY(-7.5em)}.post-play .pivot-shelf{opacity:.5}.post-play .pivot-shelf-list.focused .pivot-shelf,.pivot-shelf-list.focused>.carousel{opacity:1}.pivot-shelf-list .focused.list{height:0}.pivot-shelf-list .no-content-message{display:none}.pivot-shelf-list.forced-limited-animation,.limited-animation .pivot-shelf-list,.limited-animation .pivot-shelf-list>.carousel{-o-transition:none;-webkit-transition:none;transition:none}.pivot-shelf-list.forced-limited-animation .placeholder-tile,.limited-animation .pivot-shelf-list .placeholder-tile{height:7.83em;width:14em}#pivot-post-play .pivot-video-tile,#pivot-post-play .placeholder-tile{height:10.625em;width:18.5em}#pivot-post-play .tile-top{height:10.625em}.limited-animation #pivot-post-play .tile-top,#pivot-post-play.forced-limited-animation .tile-top{height:9.825em;width:17.7em}.pivot-video-tile,.pivot-channel-tile{height:7.83em;width:14em}.forced-limited-animation .pivot-video-tile,.forced-limited-animation .pivot-auto-play-tile,.forced-limited-animation .pivot-channel-tile,.pivot-shelf-list.forced-limited-animation .placeholder-tile,#pivot-post-play.forced-limited-animation .placeholder-tile,.limited-animation .pivot-video-tile,.limited-animation .pivot-auto-play-tile,.limited-animation .pivot-channel-tile,.limited-animation #pivot-post-play .placeholder-tile,.limited-animation .pivot-shelf-list .placeholder-tile{background:none;display:inline-block;margin-right:.5em;position:relative;vertical-align:bottom}.forced-limited-animation .pivot-channel-tile,.limited-animation .pivot-channel-tile{border-radius:100%;width:10.625em}.forced-limited-animation .pivot-video-tile.focused,.forced-limited-animation .pivot-auto-play-tile.focused .pivot-video-tile,.limited-animation .pivot-video-tile.focused,.limited-animation .pivot-auto-play-tile.focused .pivot-video-tile{background-color:#fff}.pivot-video-tile .tile-top{height:7.83em}.forced-limited-animation .pivot-video-tile .tile-top,.limited-animation .pivot-video-tile .tile-top{background-color:inherit;height:7.03em;padding:.4em;width:13.2em}.forced-limited-animation .pivot-video-tile.focused .tile-top,.limited-animation .pivot-video-tile.focused .tile-top{background-color:#fff}.pivot-video-tile .tile-overlay{background-color:rgba(0,0,0,.5);color:#fff;display:none;height:100%;margin-top:-7.83em;text-align:center;width:100%}.forced-limited-animation .pivot-video-tile .tile-overlay,.limited-animation .pivot-video-tile .tile-overlay{margin-top:-7.03em}#pivot-post-play .pivot-video-tile .tile-overlay{margin-top:-10.625em}.limited-animation #pivot-post-play .pivot-video-tile .tile-overlay,#pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay{margin-top:-9.875em}.pivot-video-tile.has-overlay .tile-overlay{display:block}#pivot-post-play .pivot-video-tile.has-overlay .tile-overlay{opacity:0}#pivot-post-play.focused .pivot-video-tile.has-overlay .tile-overlay{opacity:1}.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .label{display:none}.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .icon-player-play{font-size:4em}.post-play .pivot-shelf-list .pivot-video-tile.has-overlay .icon-player-play:before{content:"\00e638"}.pivot-video-tile .tile-overlay .icon{font-family:'youtube-icons';font-size:3em;padding-top:.5em}.pivot-video-tile .tile-overlay .label{font-size:1.2em}#pivot-post-play .pivot-video-tile .tile-overlay{color:#e1e1e1}#pivot-post-play .pivot-video-tile .tile-overlay .icon{font-size:4.5em;padding-bottom:.15em;padding-top:.4em}#pivot-post-play .pivot-video-tile .tile-overlay .label,#pivot-post-play .pivot-video-tile .tile-overlay .icon{opacity:0;-o-transition:opacity .25s;-webkit-transition:opacity .25s;transition:opacity .25s}#pivot-post-play.focused .pivot-video-tile .tile-overlay .label,#pivot-post-play.focused .pivot-video-tile .tile-overlay .icon{opacity:1}.limited-animation #pivot-post-play .pivot-video-tile .tile-overlay .label,.limited-animation #pivot-post-play .pivot-video-tile .tile-overlay .icon,#pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay .label,#pivot-post-play.forced-limited-animation .pivot-video-tile .tile-overlay .icon{-o-transition:none;-webkit-transition:none;transition:none}.pivot-video-tile .video-thumb{background-position:center;background-repeat:no-repeat;background-size:100%;height:100%;width:100%}.pivot-video-tile .decoration{margin-top:-2.1em;text-align:right}.pivot-video-tile .duration{background-color:rgba(0,0,0,.7);font-size:1em;font-weight:bold;padding:.5em}.pivot-auto-play-tile{background:none;height:10.625em;overflow:visible;width:18.5em}.forced-limited-animation .pivot-auto-play-tile,.limited-animation .pivot-auto-play-tile{height:10.625em;width:18.5em}.pivot-auto-play-tile .post-play-countdown{display:block;font-size:1.8em;margin-left:10.8em;opacity:0;pointer-events:none;position:absolute;text-align:left;text-shadow:none;top:0;width:17.5em}.pivot-auto-play-tile.countdown-active .post-play-countdown{opacity:1;pointer-events:inherit}.pivot-auto-play-tile .details,.pivot-auto-play-tile .title{color:#fff;opacity:0;pointer-events:none}.pivot-auto-play-tile.focused .details,.pivot-auto-play-tile.focused .title{opacity:1;pointer-events:inherit}.pivot-auto-play-tile .title{font-size:1.4em;margin-left:14em;max-height:2.5em;overflow:hidden;position:absolute;top:2.2em;width:20em}.pivot-auto-play-tile .details{font-size:1.1em;margin-left:17.8em;position:absolute;top:6em;width:37em}.pivot-auto-play-tile .details,.pivot-auto-play-tile .title,.pivot-auto-play-tile .post-play-countdown{-o-transition:opacity .25s;-webkit-transition:opacity .25s;transition:opacity .25s}.limited-animation .pivot-auto-play-tile .details,.limited-animation .pivot-auto-play-tile .title,.limited-animation .pivot-auto-play-tile .post-play-countdown{-o-transition:opacity none;-webkit-transition:none;transition:none}#pivot-post-play .pivot-auto-play-tile .pivot-video-tile{padding-left:0;padding-top:0}#pivot-post-play #post-play-list .no-content-message{display:none}.forced-limited-animation .pivot-horizontal-list,.limited-animation .pivot-horizontal-list{margin-left:-15em}.pivot-horizontal-list.focused .pivot-sliding-highlighter,.post-play #post-play-list.focused .pivot-sliding-highlighter{display:block}.pivot-horizontal-list .pivot-sliding-highlighter,.post-play .pivot-sliding-highlighter{background:transparent;border:.5em #fff solid;box-shadow:.083em .083em .75em .167em #000 inset;height:7.5em;margin-left:-.4em;margin-top:-.4em;pointer-events:none;width:13.8em}.pivot-shelf{position:absolute;width:0}.forced-limited-animation .pivot-shelf,.limited-animation .pivot-shelf{opacity:.5;position:relative}.forced-limited-animation .pivot-shelf.focused,.limited-animation .pivot-shelf.focused{opacity:1}.limited-memory.limited-animation .pivot-shelf{opacity:1}.pivot-shelf .title-container{margin-bottom:1em;visibility:hidden;white-space:nowrap}.pivot-shelf .title-container .icon{font-family:'youtube-icons';vertical-align:middle}.pivot-shelf .tile-title span{display:inline-block;overflow:hidden;text-overflow:ellipsis}.pivot-shelf.focused .title-container{visibility:visible}.pivot-shelf .tile-title,.pivot-shelf .shelf-title{margin-bottom:.3em}.pivot-shelf .tile-title{height:1.7em}.pivot-shelf .tile-title .title{font-size:1.3em;max-width:30em}.pivot-shelf .tile-title .author,.pivot-shelf .tile-title .view{margin-left:.3em;max-width:20em}.pivot-shelf .tile-title .author,.pivot-sliding-highlighter .select{display:none}.pivot-shelf.has-author .tile-title .author{display:inline-block}.forced-limited-animation .pivot-horizontal-list .list,.limited-animation .pivot-horizontal-list .list{width:98em}.forced-limited-animation .postplay-horizontal-list .list,.limited-animation .postplay-horizontal-list .list{margin-left:-13.4em;width:98em}.forced-limited-animation .pivot-channel-tile.focused .tile-top,.limited-animation .pivot-channel-tile.focused .tile-top{background-color:#fff}.forced-limited-animation .pivot-channel-tile .tile-top,.limited-animation .pivot-channel-tile .tile-top{height:6.83em;padding:.4em;width:6.83em}.pivot-channel-tile .tile-top{background:none;border-radius:50%;height:7.83em;margin:0 auto;overflow:hidden;width:7.83em}.pivot-channel-tile .tile-top .video-thumb{background-color:rgba(0,0,0,0)}.pivot-channel-tile .video-thumb{border-radius:50%}.pivot-shelf .pivot-horizontal-list.channel-selected .pivot-sliding-highlighter{border-radius:50%;height:7.5em;margin-left:-.3em;margin-top:-.3em;-moz-transform:translateX(3.2em);-o-transform:translateX(3.2em);-webkit-transform:translateX(3.2em);transform:translateX(3.2em);width:7.5em}.pivot-shelf.channel-selected .shelf-title{visibility:hidden}.pivot-footer{height:9em}.pivot-button-list{padding-top:4em}.pivot-button-list .icon-button{display:inline-block;padding:.5em 1em}.pivot-button-list .icon-button .icon{font-family:'youtube-icons';margin-right:.3em}.pivot-footer.focused .pivot-button-list .icon-button.selected{background-color:#fff}.pivot-button-list .icon-button span{color:#fff;font-size:1.5em}.pivot-footer.focused .pivot-button-list .icon-button.selected span{color:#000}#pivot-post-play{padding-left:6em;padding-top:10em}.limited-animation #pivot-post-play,#pivot-post-play.forced-limited-animation{padding-left:0}#pivot-post-play #post-play-list{font-size:1.1em;margin-left:.1em}.forced-limited-animation .pivot-auto-play-tile,.limited-animation .pivot-auto-play-tile{padding-left:0;vertical-align:bottom}#pivot-post-play.forced-limited-animation .pivot-video-tile,.limited-animation #pivot-post-play .pivot-video-tile{vertical-align:bottom}.forced-limited-animation .pivot-auto-play-tile .pivot-video-tile,.limited-animation .pivot-auto-play-tile .pivot-video-tile{display:block;position:absolute}#pivot-post-play .pivot-sliding-highlighter{border-width:.5em;height:9.9em;margin-top:0;width:18.4em}.limited-animation.sets-ui .exp-densityBrowse .auto-play-tile:not(.focused) .video-tile,.limited-animation .exp-densityBrowse .auto-play-tile.focused .video-tile,.limited-animation .exp-densityBrowse .auto-play-tile{background-color:inherit}.limited-animation .exp-densityBrowse .auto-play-tile.focused .tile-top{background:#fff}.limited-animation .exp-densityBrowse .auto-play-tile .post-play-countdown{top:-2.67em}.loki-video-source{color:#fff;font-size:1.5em;left:5.0em;position:absolute;top:2.6em}.loki-title-card{background:-o-linear-gradient(bottom,rgba(0,0,0,.9) 0%,rgba(0,0,0,.6) 80%,transparent 100%);background:-webkit-linear-gradient(bottom,rgba(0,0,0,.9) 0%,rgba(0,0,0,.6) 80%,transparent 100%);background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.6) 80%,transparent 100%);bottom:0;display:block;height:25%;position:absolute;width:100%}.loki-title-card .loki-metadata{color:#f1f1f1;height:100%;margin-bottom:2.6em;margin-left:8.0em;overflow:hidden;white-space:nowrap;width:100%}.loki-metadata #loki-progress-bar{display:block;height:2.0em;left:8.0em;padding:0;position:absolute;top:-4.0em;width:80%}#loki-progress-bar .progress-bar-playhead{display:none}.loki-metadata .loki-video-avatar{background-size:contain;display:inline-block;height:8.0em;width:8.0em}.loki-metadata .loki-video-text{display:inline-block;height:100%;margin:0 5.0em 0 3.5em;width:80%}.loki-video-text .loki-video-title{font-size:2.4em;margin-top:-.1em;overflow:hidden;text-overflow:ellipsis;width:80%}.loki-video-text .loki-channel-name{font-size:1.5em;margin-top:.4em;overflow:hidden;text-overflow:ellipsis;width:80%}.loki-video-text .loki-video-description{line-height:1.4em;margin-top:.4em;max-height:4.2em;overflow:hidden;white-space:normal;width:80%}.toaster{color:#aaa;font-size:133%;position:absolute;top:0;width:100%}.toaster .list{margin-top:.8em;position:absolute;width:100%}.toaster .toast{min-height:3.5em;overflow:hidden;position:relative;text-align:center;width:100%;-moz-transition:all .6s ease;-ms-transition:all .6s ease;-o-transition:all .6s ease;-webkit-transition:all .6s ease}.toaster .toast-container{background-color:rgba(27,25,26,0.8);border:1px solid black;display:inline-block;margin:.2em 0 1em;max-width:60%;opacity:1;padding:.5em 1em .6em;-moz-transition:all .3s ease;-ms-transition:all .3s ease;-o-transition:all .3s ease;-webkit-transition:all .3s ease}.toaster .toast.toast-removing .toast-container{opacity:0}.toaster .toast-container>div{display:inline-block;vertical-align:middle}.toaster .toast-icon{background-position:center;background-repeat:no-repeat;background-size:1.1em 1.1em;height:1.2em;width:1.2em}.device-toast .toast-container{padding:0.7em}.toaster .device-toast .toast-msg{background-position:center left;background-repeat:no-repeat;background-size:1.1em 1.1em;padding-left:0.8em}.toaster .avatar{height:2.6em;width:2.6em}.toaster .avatar>div{background-position:center;background-size:cover;height:inherit;width:inherit}.toaster .video-image>div{background-position:center;background-size:cover;height:100%;width:100%}.toast .update-playlist-toast{bottom:0;max-width:14em;padding:0.8em;position:fixed;right:0;text-align:left}.update-playlist-toast .overlay{background:#000;height:55%;margin-left:56%;margin-top:-55%;opacity:.8;width:44%}.update-playlist-toast .video-count{font-size:2.3em;font-weight:normal;line-height:1.2em;padding-top:0.8em;text-align:center}.update-playlist-toast .icon-playlist{font-family:'youtube-icons';font-size:2.2em;height:50%;overflow:hidden;padding:.2em;text-align:center}.update-playlist-toast .avatar{padding:0.3em}.update-playlist-toast .contrast-container{background-color:rgba(0,0,0,0.8);padding:0.4em}.update-playlist-toast .tile-top{height:7.7em;width:14em}.update-playlist-toast .toast-msg{font-size:85%;padding-left:0.6em}.update-playlist-toast .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:13.2em}.update-playlist-toast .toast-msg.avatar{height:2.1em;width:10em;overflow:hidden}.update-playlist-toast .toast-msg.truncate{white-space:normal}.update-playlist-toast .toast-msg.no-user-avatar{font-size:85%;margin-left:-2.2em}.update-playlist-toast .wrapper>div{display:inline-block;vertical-align:middle}.toaster .toast-icon{background-image:url(img/dial-sprite.png);background-size:100%;max-width:100%}.toast-icon.avatar{background-image:none}.toaster .android-phone-connected{background-position:0 0%}.toaster .android-phone-disconnected{background-position:0 10.14%}.toaster .android-tablet-connected{background-position:0 20.29%}.toaster .android-tablet-disconnected{background-position:0 30.43%}.toaster .ios-phone-connected{background-position:0 40.58%}.toaster .ios-phone-disconnected{background-position:0 50.72%}.toaster .ios-tablet-connected{background-position:0 60.87%}.toaster .ios-tablet-disconnected{background-position:0 71.0%}.toaster .laptop-connected{background-position:0 81.16%}.toaster .laptop-disconnected{background-position:0 91.3%}.toaster .remote-connected{background-position:0 100%;background-size:233.33%}.toaster .remote-disconnected{background-position:0 100%;background-size:233.33%}.toaster .toast-progress{border:1px solid #aaa;width:10em}.toaster .toast-progress .progress{background-color:#666;height:1em}.toaster .volume-muted{background-image:url(img/volume_mute_pressed.png)}.toaster .volume-low{background-image:url(img/volume_0_pressed.png)}.toaster .volume-mid{background-image:url(img/volume_1_pressed.png)}.toaster .volume-high{background-image:url(img/volume_2_pressed.png)}.toaster .volume-toast .toast-msg{text-align:right;width:1.2em}.toaster .volume-toast .toast-container{-moz-transition-delay:.3s;-ms-transition-delay:.3s;-o-transition-delay:.3s;-webkit-transition-delay:.3s}.toaster .volume-toast.toast-removing .toast-container{-moz-transition-delay:0s;-ms-transition-delay:0s;-o-transition-delay:0s;-webkit-transition-delay:0s}.unlimited-welcome-toast .toast-container{box-shadow:0em 0em .6em .02em #000;height:6.5em;margin:0em;padding-right:1em;padding:0;position:fixed;right:0;text-align:left;top:0;width:24.5em;transform:translateX(0);opacity:1;-moz-transition:all .6s ease;-ms-transition:all .6s ease;-o-transition:all .6s ease;-webkit-transition:all .6s ease}.unlimited-welcome-toast.toast-displaying .toast-container{opacity:0;transform:translateX(18em)}.limited-animation .unlimited-welcome-toast .toast-container{opacity:1;-o-transition:none;-webkit-transition:none;transition:none;transform:none}.unlimited-toast-messages{position:absolute;padding-top:2.1em;padding-left:1.3em;width:12em}.unlimited-toast-msg-top{color:#ddd;line-height:1.0em}.unlimited-toast-msg-bottom{padding-top:0.5em;font-size:0.7em}.unlimited-toast-background{background-size:100%;background-position:left;background-repeat:no-repeat;height:100%;width:9em}.unlimited-toast-logo{background-size:100%;background-repeat:no-repeat;height:100%}#dialog{color:#fff;display:none;height:100%;left:0;position:absolute;top:0;width:100%}#error-markup #dialog{display:block}#dialog.focused{display:block}#dialog-wrapper{background-color:#000;height:30em;margin-top:11.1em;padding:1.3em 6em;position:relative}#dialog.browse-sets #dialog-wrapper{background-color:rgba(32,32,32,.5);height:100%;margin-top:0;padding:1.3em 10%}#dialog .dialog-contents{background:no-repeat 90% 30%}#dialog.browse-sets .dialog-contents .icon-simple-dialog{color:#fff}#dialog .dialog-contents .dialog-large-icon{display:none}#dialog.browse-sets .dialog-contents .dialog-large-icon{display:inline-block;font-family:'youtube-icons';font-size:10em;height:2.5em;line-height:2.5em;text-align:center;width:35%}#dialog.browse-sets .icon-simple-dialog .icon-dialog-content .extra-info{color:rgba(255,255,255,.75);display:block;font-family:monospace;font-size:1.5em;line-height:1.4em;padding-top:.8em}#dialog.browse-sets .icon-simple-dialog .icon-dialog-content .label{display:block;font-size:1.8em;line-height:1.1em;padding-top:6.45em}#dialog .dialog-contents .header .title{font-size:2.5em}#dialog.browse-sets.browse-sets-titled-dialog .dialog-contents .header{border-bottom:1px solid rgba(255,255,255,.2);height:3.4em;margin:0 1.5em}#dialog.browse-sets.browse-sets-titled-dialog .dialog-contents .header .title{color:rgba(255,255,255,.5);display:block;font-size:1.3em;font-weight:300;height:3em;line-height:3em}#dialog.browse-sets .buttons{font-size:1.8em;margin-right:2%;margin-top:.8em;text-align:right}#dialog.browse-sets .connection-steps{padding:0}#dialog.browse-sets.exit .dialog-contents .header .title{display:block;padding:1em 6.5em 3em 6.5em}#dialog.browse-sets .dialog-contents{background-color:#000;height:80%;margin-top:5%}#dialog.browse-sets.closed-captions .dialog-contents{height:75%}#dialog.browse-sets .dialog-cancel-button{text-align:center}.video-overview .dialog-contents{font-size:2em}#dialog.qr-dialog .dialog-contents{color:#ccc;font-size:1.1em;overflow:hidden;padding-top:4em}#dialog.qr-dialog .dialog-contents .header .title{color:#fff;font-size:2em}#dialog .box{padding-top:1.5em}#dialog.qr-dialog a{color:#fff;display:block;font-size:1.5em}#dialog.qr-dialog .qr{height:7em;margin:.2em 0;width:7em;background-size:100%}#dialog.qr-dialog .dialog-icon{display:block;background-size:12em}#dialog.help .dialog-icon{background-image:url(img/icon-help.png)}#dialog.feedback .dialog-icon{background-image:url(img/icon-feedback.png)}#dialog.system-error .dialog-icon{font-family:'youtube-icons';font-size:10em;margin-right:0;padding-right:.5em;padding-top:.5em;text-align:right;width:2em}#dialog.system-error .dialog-icon:before{content:"\00e656"}#dialog.qr-dialog.browse-sets .dialog-icon{display:none}#dialog .text-dialog{bottom:1.5em;left:0;padding:2em 20em 0 6em;position:absolute;white-space:normal}#dialog.text-dialog .dialog-contents .header .title{font-size:3em;padding-bottom:.5em}.text-dialog #dialog-view{color:#aaa;padding-bottom:1em;width:90%}.text-dialog #dialog-view .dialog-contents{font-size:1.8em}#dialog.browse-sets .icon-dialog-content{display:inline-block;height:25em;vertical-align:top;width:60%}#dialog-view .url{color:#fff;font-size:1.25em;padding-bottom:.8em}#dialog-view .flag-claim .url{padding-bottom:.5em}#dialog-view .reset-help{display:block;width:25em}#dialog.browse-sets .tos-dialog .icon-dialog-content{padding-top:9em}#dialog.browse-sets .tos-dialog .icon-dialog-content .subtitle{color:#aaa}#dialog.browse-sets .tos-dialog .icon-dialog-content .url{font-size:2em}#dialog.browse-sets.qr-dialog .dialog-contents{padding-top:0}#dialog.browse-sets.qr-dialog .icon-dialog-content .link{margin-top:5em;padding-top:0}#dialog.browse-sets.qr-dialog .icon-dialog-content .qr-code-wrapper{margin-top:2em}#dialog.browse-sets.qr-dialog .icon-dialog-content .qr-code-wrapper .qr{border:.2em rgba(255,255,255,.1) solid;padding:.5em}#dialog .signed-out-dialog{font-size:1.8em}.connection-error,.connection-steps{display:inline-block;font-weight:300;padding:0 1em 1em 2em;white-space:normal}.connection-error{vertical-align:top}.connection-error div{margin-bottom:1em}#dialog .login-dialog .activation-code{font-size:1.3em;letter-spacing:.1em;line-height:1.3em}#dialog .sets-login-dialog .body-text{display:inline-block;height:25em;vertical-align:top;width:50%}#dialog .sets-login-dialog .body-text .connection-instructions{font-size:1.9em;margin-top:3.5em}#dialog .sets-login-dialog .standard-message,#dialog .sets-login-dialog .like-dislike-message,#dialog .sets-login-dialog .subscribe-message,#dialog .sets-login-dialog .upload-message,#dialog .sets-login-dialog .player-message{display:none}#dialog.standard-login .sets-login-dialog .standard-message,#dialog.like-dislike-login .sets-login-dialog .like-dislike-message,#dialog.subscribe-login .sets-login-dialog .subscribe-message,#dialog.upload-login .sets-login-dialog .upload-message,#dialog.player-login .sets-login-dialog .player-message{display:block}#dialog .pairing .qr-code-wrapper{display:inline-block;vertical-align:top}#dialog .manual-connect-content .connection-steps{padding:0}#dialog .manual-connect-content .connection-steps .label{color:#aaa;font-size:.7em;margin-top:1em}#dialog .manual-connect-content .connection-steps .step1,#dialog .manual-connect-content .connection-steps .step2{margin-top:.7em}#dialog .manual-connect-content .connection-steps .pair-url,#dialog .manual-connect-content .connection-steps .pair-code{margin-left:.3em}#dialog.browse-sets .manual-connect-content .connection-steps .label{font-size:1.3em}#dialog.browse-sets .manual-connect-content .connection-steps .step1,#dialog.browse-sets .manual-connect-content .connection-steps .step2{display:inline-block;font-size:1.3em}#dialog.browse-sets .manual-connect-content .connection-steps .pair-url,#dialog.browse-sets .manual-connect-content .connection-steps .pair-code{display:inline-block;font-size:1.3em;margin-left:.3em}#dialog.browse-sets .pairing .connection-instructions{font-size:1em;padding-top:10em}#dialog .manual-connect .dial-upsell-content{display:none}#dialog .dial-upsell .manual-connect-content .connection-steps .no-dial-connect-step1,#dialog .manual-connect .manual-connect-content .connection-steps .with-dial-connect-step1{display:none}#dialog .manual-connect .manual-connect-content .connection-steps{font-size:1.5em}#dialog .manual-connect .manual-connect-content .connection-steps .label{display:none}#dialog.browse-sets .dial-upsell .dial-upsell-content{font-size:1.8em;white-space:normal;width:80%}#dialog.browse-sets .dial-upsell .dial-upsell-content .cast-icon{height:1.3em;margin:0;width:1.5em}#dialog.browse-sets .dial-upsell .manual-connect-content{color:#aaa;font-size:1.4em;line-height:1em}#dialog.browse-sets .remote-reset-dialog .connected-list .connected-header{color:#fff;font-size:1.5em;margin-top:6em}#dialog.browse-sets .remote-reset-dialog .connected-list .devices{display:inline-block;font-size:1em}#dialog.browse-sets .remote-reset-dialog .connected-list .devices>div{display:inline-block;font-size:1em;padding-left:0;padding-right:1.5em;width:10em}#dialog.browse-sets .remote-reset-dialog .reset-help{font-size:1.5em;margin-top:1em}#dialog .logout-authenticated-info{padding:2.5em 0}#dialog .login-user-icon{background-size:cover;display:inline-block;height:4em;margin:2em 2em 0 0;width:4em}#dialog.browse-sets .login-user-icon{margin:0 15%;border-radius:20em}#dialog .login-user-info{display:inline-block;margin-left:1.7em;margin-top:-.8em;font-size:2em;font-weight:300;width:82%}#dialog .login-user-info h3{font-size:2.2em;font-weight:normal;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#dialog.browse-sets .logout-authenticated-info{padding:0}#dialog.browse-sets .login-user-info{height:13em;margin:0;width:100%}#dialog.browse-sets .login-user-info .display-name,#dialog.browse-sets .login-user-info .platform-container{display:none}#dialog.browse-sets .login-user-info .signed-in-message{display:inline-block;width:50%}#dialog.browse-sets .login-user-info .signed-in-label strong{color:#fff;display:block;font-size:2.5em;overflow:hidden;text-overflow:ellipsis}#dialog.browse-sets .login-user-info .signed-in-label{color:#aaa;font-size:.5em;margin-top:10em}#dialog.browse-sets .login-user-info .sign-out-label{margin-top:1em}#dialog .spinner{height:10em;width:10em}#dialog .spinner .loading-indicator{background-size:contain;height:100%;width:100%}#dialog .buttons{font-size:3em;font-weight:300;padding-top:.3em}#dialog .buttons>div{background-color:#333;color:#000;cursor:pointer;display:inline-block;min-width:2.4em;padding:0 .3em;text-align:center}#dialog.browse-sets .buttons .button{background-color:#000;color:rgba(255,255,255,.5);min-width:3em;padding:.2em .8em}#dialog.browse-sets .buttons .focused,#dialog.browse-sets .buttons .button.focused:hover{background-color:#f1f1f1;color:#666}#dialog .buttons .button:hover,#dialog.browse-sets .buttons .button:hover{background-color:#666}#dialog .buttons div{margin-left:.5em}#dialog .buttons .focused,#dialog .buttons .focused:hover{background-color:#f1f1f1;color:#666}#dialog .ps4-logout-dialog .logout-prompt{font-size:1.7em}#dialog .logout-prompt{margin-top:6em}.scrolling-text{font-size:1.3em;height:15em;margin-right:1.1em;margin-top:1em;overflow:hidden}.scrolling-text h4{margin:0;padding:0}.scrolling-text>div{overflow:hidden;padding-bottom:1em}.flag-list-container{margin-top:.5em}.flag-list .button{color:#868686;cursor:pointer;display:inline-block;font-size:1.8em;padding:.4em;vertical-align:top}.flag-list .button{width:12em}.flag-list .button:hover{background-color:#444}.flag-list .button.focused,.flag-list .button.focused:hover{background-color:#fff;color:#676767}#flag-widget{font-weight:300}.flag-video{color:#676767;font-size:1.8em;font-weight:300;padding-top:1em;width:47%}.flag-video .url{color:#fff;display:block;font-size:1.6em;padding-top:.5em}.flag-example{background:url(img/flag.png) no-repeat 0 0;background-size:contain;display:inline-block;height:57%;position:absolute;right:18%;top:9%;width:23%}.flag-claim .metadata{display:block;font-size:1em;font-weight:500;padding-top:.2em;white-space:normal}.flag-claim .url{color:#868686;display:block;font-weight:300}.flag-claim{color:#676767;font-size:1.6em;font-weight:300;margin:1em 0 0 2em;white-space:nowrap}.flag-claim .copyright-infringment{display:inline-block;white-space:normal;width:50%}.flag-claim .privacy-invasion{display:inline-block;margin-left:4%;vertical-align:top;white-space:normal;width:40%}.flag-claim .email{color:#868686}.flag-claim .subtitle{font-size:1.2em;font-weight:500}.player-error-dialog.player-error{color:#aaa;font-size:1.8em;padding:1em 0 8em 0em}#dialog .scrollbar{height:70%;margin-top:5em;right:5em}#dialog .scrollbar .handle{height:5em}.paid-channel-info{font-size:1.4em;padding-top:1em}.paid-channel-info .channel-url{font-weight:bold}.status-dialog #dialog-wrapper{background-color:rgba(0,0,0,.5)}.status-dialog .icon{background:url(img/pairing-promo-combo.png) center center no-repeat;background-size:contain;display:inline-block;height:11em;vertical-align:middle;width:25%}.status-dialog .info{display:inline-block;padding-left:.5em;vertical-align:middle;width:70%}.status-dialog .message{color:#ccc;font-size:2em}.status-dialog #dialog-view{padding-top:7em}.dialog-focused #legend{bottom:12%;display:block}#legend.legend-for-dialog-closed-captions{bottom:6%}#dialog.confirm-cookies .dialog-contents .header .title{font-size:3em}#dialog.confirm-cookies #dialog-view{color:#aaa;font-size:1.8em;height:8em;padding-top:.9em}.single-pane-selector{padding-bottom:1em;padding-top:1em;white-space:nowrap}.single-pane-selector .list{display:inline-block;margin-right:.5em;padding-left:.5em;padding-right:.5em;vertical-align:top;width:94%}.single-pane-selector .button .label{width:90%}.single-pane-selector .check-button.previously-selected .icon-check{display:inline-block}.split-pane-selector{border-bottom:.1em solid rgba(255,255,255,.2);padding-bottom:1em;padding-top:1em;white-space:nowrap}.check-button .icon-check{display:none;font-family:youtube-icons}.single-pane-selector .labeled-value,.split-pane-selector .labeled-value{color:#868686;font-size:1.4em;height:2.8em;line-height:1.5em;overflow:hidden;padding:0 1em;white-space:normal}.single-pane-selector .labeled-value .value,.split-pane-selector .labeled-value .value{color:#666;display:block;font-size:.7em;line-height:1.4em}.single-pane-selector .button,.split-pane-selector .button{color:#868686;cursor:pointer;font-size:1.4em;height:2.8em;line-height:2.8em;overflow:hidden;padding:0 .4em;white-space:normal}.single-pane-selector .button .label,.split-pane-selector .button .label{display:inline-block;line-height:1.3em;vertical-align:middle}.single-pane-selector .subtitled-button,.split-pane-selector .subtitled-button{line-height:1.5em}.single-pane-selector .button.no-model,.split-pane-selector .button.no-model{visibility:hidden}.split-pane-selector .list{display:inline-block;vertical-align:top;width:47%}.split-pane-selector .list:first-child{border-right:.1em solid rgba(255,255,255,.2);margin-right:.5em;padding-right:.5em}.single-pane-selector .button:hover,.single-pane-selector .list:not(.focused) .button.selected,.split-pane-selector .button:hover,.split-pane-selector .list:not(.focused) .button.selected{background-color:#444;color:#fff}.single-pane-selector .button.focused,.single-pane-selector .button.focused:hover,.split-pane-selector .button.focused,.split-pane-selector .button.focused:hover{background-color:#fff;color:black}.single-pane-selector .subtitled-button span.subtitle,.split-pane-selector .subtitled-button span.subtitle{color:#666;display:block;font-size:.7em;line-height:1.4em}.color-button .preview{border-width:2px;border-color:#000;border-style:solid;color:#868686;display:inline-block;height:1em;margin:0 .2em .2em .2em;vertical-align:middle;width:1em}.color-button .preview.rounded{border-radius:50%}.preview.black{background-color:#000;border-width:1px;border-color:#fff;border-style:solid}.preview.red{background-color:#f00}.preview.magenta{background-color:#f0f}.preview.blue{background-color:#00f}.preview.cyan{background-color:#0ff}.preview.green{background-color:#0f0}.preview.yellow{background-color:#ff0}.preview.white{background-color:#fff}.debug-dialog{font-size:.9em}.debug-dialog span.label{font-weight:bold}#dialog.browse-sets .video-upload-dialog-contents{display:inline-block;font-size:1.6em;margin:1em 3% 0 3%;text-align:left;vertical-align:top;width:55%}#dialog.browse-sets .modify-video .video-upload-dialog-contents{margin-top:2em;text-align:center}.video-upload-status .video-url{color:#2793e6}.delete-video{padding-bottom:6em}.modify-video .list .button{background-position:50% 20%;background-repeat:no-repeat;background-size:60% 60%;color:#848484;display:inline-block;height:8em;margin-right:1em;text-align:center;width:8em}.modify-video .list .button.focused{background-color:#fff;color:#282828}.modify-video .list .button span{display:block;font-size:1.2em;margin:4.6em .5em .5em .5em;overflow:hidden;white-space:nowrap}.modify-video .modify-edit-button{background-image:url('img/edit_tile_light.png')}.modify-video .modify-edit-button.focused{background-image:url('img/edit_tile_dark.png')}.modify-video .modify-delete-button{background-image:url('img/trash_tile_light.png')}.modify-video .modify-delete-button.focused{background-image:url('img/trash_tile_dark.png')}.delete-video-dialog .video-tile .details,.modify-video .video-tile .details{margin-top:-.1em}.browse-sets #modify-list .button{height:7.5em;margin-right:.9em;width:7.5em}.browse-sets #modify-list .button span{font-size:1.1em;margin-top:5.2em}.delete-video-dialog{margin-bottom:14em}.browse-sets .delete-video-dialog{margin-bottom:1em}.video-processing,.video-upload-error{font-size:1.5em}.video-upload-error .error-container{color:#aaa;margin-top:1em}#dialog .buttons .upload-terms,#dialog .buttons .upload-terms:hover{background-color:#000;color:#555;display:block;font-size:.6em;margin-left:1.5em;text-align:left}.upload-progress{margin-bottom:1em;width:100%}.upload-progress-value{text-align:left;width:100%}.upload-progress span{margin-left:-1em;position:relative;width:4em}.upload-progress .upload-progress-bar{background-color:#aaa;width:100%}.upload-progress .upload-progress-bar .completed{background-color:#2793e6;height:1em}.privacy-button{background:.4em 50% no-repeat;background-size:1.5em;cursor:pointer;position:relative}.privacy-button .checkbox{background-position:100%;background-size:2em;height:2em;left:85%;position:absolute;top:0;width:2em}.privacy-button.checked .checkbox{background-image:url(img/icon-privacy-check-light.png)}.privacy-button.focused.checked .checkbox{background-image:url(img/icon-privacy-check-dark.png)}.privacy-button .label .name{background-position:0 .5em;background-size:2em;line-height:1.5em;text-indent:1.8em}.privacy-button .description{font-size:.6em;line-height:.8em;padding-left:2.9em}.privacy-button .name{font-size:1em;line-height:1.2em;padding-left:1.7em}.private-state,.video-tile .private{background-image:url(img/icon-privacy-private-light.png)}.private-state.focused{background-image:url(img/icon-privacy-private-dark.png)}.public-state,.video-tile .public{background-image:url(img/icon-privacy-public-light.png)}.public-state.focused{background-image:url(img/icon-privacy-public-dark.png)}.unlisted-state,.video-tile .unlisted{background-image:url(img/icon-privacy-unlisted-light.png)}.unlisted-state.focused{background-image:url(img/icon-privacy-unlisted-dark.png)}.video-tile .private,.video-tile .public,.video-tile .unlisted{background-position:left;background-repeat:no-repeat;background-size:1.5em;min-height:1.5em;min-width:1.5em;padding-left:1.5em}.video-privacy .button,.video-overview .button{display:inline-block;height:2em;line-height:2em;margin:.1em 0;overflow:hidden;padding:.1em .5em;vertical-align:top;white-space:nowrap;width:65%}.video-privacy .button{width:85%}.video-overview .button:first-child{width:20%}.video-privacy .button.focused,.video-privacy .button:not(.disabled):hover,.video-overview .button.focused,.video-overview .button:not(.disabled):hover{background-color:#fff;color:#676767}#dialog.browse-sets .video-privacy .button:nth-child(2){width:11em}#dialog.browse-sets .video-uploads{margin:3em 1em 2em}#dialog.browse-sets .video-uploads .carousel{overflow:hidden}#dialog.browse-sets .video-uploads .carousel .video-tile .details{text-align:left}.video-overview .title-button{line-height:1em;white-space:normal}#dialog.browse-sets .video-overview .title-button .label{display:inline-block;line-height:2em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:95%}.video-overview .channel-button{background-position:.35em 50%;background-repeat:no-repeat;background-size:1.5em;line-height:2em;overflow:hidden;text-indent:1.8em;text-overflow:ellipsis}.video-uploads .carousel{height:20em;position:relative;white-space:nowrap}.video-tile-container{display:inline-block;margin-top:1.7em;text-align:right;width:35%}.video-tile-container .video-tile{border:.1em rgba(255,255,255,.2) solid;display:inline-block;height:22em;position:static;text-align:left;width:20em}.video-tile-container .video-tile .tile-top{height:51%}.video-tile-container .video-tile .tile-bottom .details{height:inherit}.video-uploads .carousel .video-tile{height:20em;width:18em}.video-uploads .video-tile .decoration{top:7em}.video-tile-container .video-tile .tile-bottom,.video-uploads .video-tile .tile-bottom{width:initial}.dialog.closed-captions #dialog-wrapper{margin-top:5em}#dialog.closed-captions-language-only #dialog-wrapper{padding:1.6em 26%}#dialog.closed-captions-language-only #options-list{display:none}#legend.legend-for-dialog-closedCaptionsDialog{bottom:24%}#dialog.closed-captions-language-only~#legend{right:29%}.simple-dialog{margin:3em;font-size:1.6em}.lang-ja_JP .connection-instructions .step1,.lang-ja_JP .connection-instructions .step2,.lang-ko_KR .connection-instructions .step1,.lang-ko_KR .connection-instructions .step2,.lang-zh_CN .connection-instructions .step1,.lang-zh_CN .connection-instructions .step2,.lang-zh_HK .connection-instructions .step1,.lang-zh_HK .connection-instructions .step2,.lang-zh_TW .connection-instructions .step1,.lang-zh_TW .connection-instructions .step2{font-size:.8em}.lang-de_DE .action-tile .content .title,.lang-el_GR .action-tile .content .title,.lang-es_ES .action-tile .content .title,.lang-es_MX .action-tile .content .title,.lang-fr_FR .action-tile .content .title,.lang-fr_CA .action-tile .content .title,.lang-ko_KR .action-tile .content .title,.lang-nl_NL .action-tile .content .title,.lang-pl_PL .action-tile .content .title,.lang-pt_BR .action-tile .content .title,.lang-pt_PT .action-tile .content .title,.lang-ru_RU .action-tile .content .title,.lang-uk_UA .action-tile .content .title{font-size:2em}.lang-it_IT .action-tile .content .title{font-size:1.8em}.lang-es_ES .action-tile .improve-yt-tile .title,.lang-fr_CA .action-tile .history-tile .title,.lang-fr_FR .action-tile .history-tile .title,.lang-de_DE .action-tile .terms-tile .title,.lang-fr_CA .action-tile .terms-tile .title,.lang-fr_FR .action-tile .terms-tile .title{font-size:1.7em}.lang-es_ES .action-tile .videoinfo-tile .title,.lang-es_MX .action-tile .videoinfo-tile .title,.lang-fr_CA .action-tile .videoinfo-tile .title,.lang-fr_FR .action-tile .videoinfo-tile .title,.lang-pt_BR .action-tile .videoinfo-tile .title{font-size:1.5em;white-space:normal}.lang-de_DE .action-tile .videoinfo-tile .title{font-size:1.45em;padding-left:.5em;padding-right:.5em;white-space:normal}.lang-es_ES .action-tile .videoinfo-tile .label,.lang-es_MX .action-tile .videoinfo-tile .label,.lang-fr_CA .action-tile .videoinfo-tile .label,.lang-fr_FR .action-tile .videoinfo-tile .label,.lang-pt_BR .action-tile .videoinfo-tile .label{padding-top:.6em}.lang-de_DE .action-tile .videoinfo-tile .label{font-size:1.6em;padding-top:.7em}.lang-ja_JP .action-tile .terms-tile .title{font-size:2em}.lang-ja_JP #transliteration .list{font-size:1.2em}.lang-ja_JP #keyboard-grid{font-size:1.5em}.lang-ja_JP #keyboard-spacebar{margin-left:5.5em}.lang-zh_CN #search .horizontal-list,.lang-zh_HK #search .horizontal-list,.lang-zh_TW #search .horizontal-list,.lang-ja_JP #search .horizontal-list{-o-transform:translateY(9.5em);-webkit-transform:translateY(9.5em);transform:translateY(9.5em)}.lang-ko_KR #search .horizontal-list{-o-transform:translateY(10.5em);-webkit-transform:translateY(10.5em);transform:translateY(10.5em)}.lang-ko_KR #search-keyboard{font-size:1.82em}.lang-ko_KR #letter-suggest .button{width:1em}.lang-ko_KR #keyboard-grid,.lang-ru_RU #keyboard-grid,.lang-uk_UA #keyboard-grid{margin-top:0.3em}.lang-ko_KR #keyboard-grid.lang-ko .numbers-toggle-tile.button,.lang-ru_RU #keyboard-grid.lang-ru .numbers-toggle-tile.button,.lang-uk_UA #keyboard-grid.lang-ua .numbers-toggle-tile.button{font-size:0.75em}.lang-ko_KR #keyboard-grid .button,.lang-ru_RU #keyboard-grid .button,.lang-uk_UA #keyboard-grid .button{height:1.2em;line-height:1.1em;margin-top:0.6em}.lang-ko_KR #letter-suggest .button,.lang-ru_RU #letter-suggest .button,.lang-uk_UA #letter-suggest .button{height:1.2em;line-height:1.1em;width:1.2em}.lang-ko_KR .search-state #spinner,.lang-ru_RU .search-state #spinner,.lang-uk_UA .search-state #spinner,.lang-ja_JP .search-state #spinner{top:25em}.lang-ko_KR .search-state .application-message,.lang-ru_RU .search-state .application-message,.lang-uk_UA .search-state .application-message,.lang-ja_JP .search-state .application-message{top:55%}.lang-ru_RU #keyboard-grid.lang-ru .button,.lang-uk_UA #keyboard-grid.lang-ua .button,.lang-ko_KR #keyboard-grid,.lang-ko_KR #letter-suggest,.lang-ko_KR #keyboard-spacebar{font-size:1em}.lang-ru_RU #keyboard-spacebar,.lang-uk_UA #keyboard-spacebar{margin-left:4.2em}.lang-de_DE .countdown-ad-callout .time-left-label,.lang-de_DE .countdown-ad-callout .skip-time-label{font-size:1.1em}.lang-cs_CZ .action-tile .description,.lang-de_DE .action-tile .description,.lang-hi_IN .action-tile .description,.lang-pl_PL .action-tile .description,.lang-pt_BR .action-tile .description,.lang-pt_PT .action-tile .description,.lang-ru_RU .action-tile .description,.lang-uk_UA .action-tile .description{font-size:1.3em}.lang-de_DE .guide-button.footer .guide-button-title{width:27.81em}.lang-de_DE .guide-user-name{width:13.5em}.lang-nl_NL .guide-button.disabled .guide-button-title,.lang-de_DE .guide-button.disabled .guide-button-title,.lang-fr_FR .guide-button.disabled .guide-button-title,.lang-pt_PT .guide-button.disabled .guide-button-title{width:13em}.lang-tr_TR #search #keyboard-grid .button.clear-query-tile,.lang-tr_TR .action-tile .title,.lang-tr_TR .guide-button-icon,.lang-tr_TR #keyboard-grid .button,.lang-tr_TR .tile-top .badge,.lang-tr_TR .tile-top .duration,.lang-tr_TR .title-card .badges span .lang-tr_TR.lang-case-sensitive .player-controls .button span:first-letter,.lang-tr_TR.lang-case-sensitive .player-controls .toggle-button span:first-letter,.lang-tr_TR.lang-case-sensitive .snap-controls .speakable span:first-letter,.lang-tr_TR.lang-case-sensitive .voice-command:first-letter{text-transform:none}.voice-command{display:none}.lang-case-sensitive .voice-command:first-letter{text-transform:uppercase}.engaged .voice-command{background-color:rgba(22,22,22,.7);color:#5dc21e;display:block;font-size:1em}.engaged .horizontal-list .carousel .voice-command{display:none}.engaged .horizontal-list.focused .carousel .voice-command{display:block}.engaged .pivot-video-tile .voice-command,.engaged .pivot-channel-tile .voice-command{display:none}.engaged .pivot-video-tile.speakable .voice-command,.engaged .pivot-channel-tile.speakable .voice-command{display:block}.engaged .video-tile .voice-command,.engaged .pivot-video-tile .voice-command,.engaged .pivot-channel-tile .voice-command,.engaged .playlist-tile .voice-command,.engaged .channel-tile .voice-command{bottom:50%;font-size:1.5em;margin-top:-2.17em;padding:.5em .9em;opacity:0.999}.engaged .video-tile.disabled .voice-command,.engaged .pivot-video-tile.disabled .voice-command,.engaged .pivot-channel-tile.disabled .voice-command{display:none}.engagement-indicator{bottom:0.8em;display:none;font-size:1.5em;left:1.8em;position:absolute;width:16em}.engaged .engagement-indicator{background-color:transparent;color:#5dc21e;display:block}.engagement-indicator .icon{background:no-repeat center;display:inline-block;height:2em;vertical-align:middle;width:2em}.engagement-indicator .stop-listening{padding:.5em}.engagement-indicator .stop-listening .icon{background-image:url('img/icon-xboxone-engaged.png')}.engagement-indicator .text{text-align:center}.engagement-indicator .title{display:inline-block;font-size:0.9em}.browse-sets-state.engaged .engagement-indicator,.browse-state.engaged .engagement-indicator,.post-play-state.engaged .engagement-indicator,.post-play-state.engaged .engagement-indicator,.settings-state.engaged .engagement-indicator,.search-state.engaged .engagement-indicator{display:block}.watch-state.engaged .engagement-indicator{display:block;height:3em;left:0;margin-left:auto;margin-right:auto;right:0;text-align:center;top:20%}.watch-focused .engagement-indicator .stop-listening{background-color:rgba(22,22,22,.7)}.sliding-highlighter .select,.engaged .legend-item,.engaged #dialog .speakable.button,.engaged .context-menu .speakable.button,.engaged .speakable.action-tile .title,.engaged .modify-video .speakable,.engaged .modify-video .speakable.focused{color:#5dc21e}.voice-footer{background-color:rgba(22,22,22,.7);bottom:0;color:#5dc21e;font-size:1.5em;height:3em;padding:1em 0 0.6em 0;position:absolute;text-align:center;width:100%}.voice-footer .list{font-size:0.65em;margin:auto;margin-top:-1.3em;padding-top:1em;width:29em}.voice-footer .component{display:inline-block;padding-right:1em}.engaged .voice-footer{color:#5dc21e}.engaged .voice-footer li{display:inline;padding:0 2%}.engaged .player-controls .button span,.engaged .player-controls .toggle-button span{color:#5dc21e;display:block}.engaged .player-controls .button.disabled span,.engaged .player-controls .toggle-button.disabled span{display:none}.engaged #transport-controls.ad-active .player-controls #button-list div.skip-ad-button.canskip .label,.engaged .skip-ad-button.canskip .label{color:#5dc21e}.engaged .player-controls-widget{margin-top:7.4em}.engaged .player-controls .voice-command.transport{top:1em}.legend{bottom:5.5%;color:#f1f1f1;position:absolute;right:5.5%;text-shadow:2px 2px 4px #000;display:none;background:-webkit-radial-gradient(ellipse closest-side,rgba(0,0,0,0.2) 25%,rgba(0,0,0,0.1) 60%,rgba(0,0,0,0));background:-o-radial-gradient(ellipse closest-side,rgba(0,0,0,0.2) 25%,rgba(0,0,0,0.1) 60%,rgba(0,0,0,0));background:-moz-radial-gradient(ellipse closest-side,rgba(0,0,0,0.2) 25%,rgba(0,0,0,0.1) 60%,rgba(0,0,0,0));background:radial-gradient(ellipse closest-side,rgba(0,0,0,0.2) 25%,rgba(0,0,0,0.1) 60%,rgba(0,0,0,0))}.limited-memory .legend{background:none}.legend-item{cursor:pointer;display:none;margin:0 0 0 .5em}.legend-item span{vertical-align:middle}.legend-item .icon{background-size:100%;display:block;height:2.5em;margin:auto;max-width:100%;text-align:center;width:2.5em}.legend-item.more>.icon.icon-player-more{background-size:0}.legend-item.more>.icon:before{font-family:'youtube-icons';color:#fff;font-size:1.9em;margin:auto;position:relative;top:.2em}.legend-item .title{display:block;font-size:1.1em;margin-top:0;text-align:center;text-transform:none}#legend.back .back,#legend.close-guide .close-guide,#legend.delete .delete,#legend.exit .exit,#legend.guide .guide,#legend.search .search,#legend.space .space,#legend.home .home,#legend.modify .modify,#legend.more .more,.reversed-keys #legend.back .reversed-back{display:inline-block}.reversed-keys #legend.back .back{display:none}.desktop .legend,.game-console .legend,.tv .legend{display:inline-block}.wiiu .legend{font-size:1.2em}.desktop .legend-item .icon{background-image:url(img/legend-sprite-desktop.png)}.game-console.sony .legend-item .icon{background-image:url(img/legend-sprite-ps3.png)}.roku #legend .legend-item .icon{background-image:url(img/legend-sprite-roku.png)}.skip-ad-callout .icon,.tv .legend-item .icon{background-image:url(img/legend-sprite-tv.png)}.wiiu .legend-item .icon{background-image:url(img/legend-sprite-wiiu.png)}.wiiu #user-info-background{-webkit-transform:translateZ(0)}.wiiu #search .horizontal-list{top:30%;-webkit-transform:none;transform:none}.wiiu .search-state #spinner{top:20em}.xboxone .legend-item .icon{background-image:url(img/legend-sprite-xboxone.png)}.xbox360 .legend-item .icon{background-image:url(img/legend-sprite-xbox360.png)}.desktop .legend-item.back .icon,.desktop .legend-item.exit .icon{background-position:0 47.4%;background-size:240%}.desktop .legend-item.search .icon{background-position:0 100%;background-size:240%}.desktop .legend-item.close-guide .icon,.desktop .legend-item.guide .icon,.desktop .legend-item.home .icon,.desktop .legend-item.space .icon{background-position:0 73.7%;background-size:240%}.desktop .skip-ad-callout .icon{background-position:31% 67.5%;background-size:520%;width:6.6em}.game-console.sony .legend-item .icon,.tv .legend-item .icon,.wiiu .legend-item .icon{background-repeat:no-repeat;height:1.5em;position:relative;bottom:.5em;width:1.5em}.game-console.sony .legend-item.more>.icon:before,.tv .legend-item.more>.icon:before,.wiiu .legend-item.more>.icon:before{top:initial}.game-console.microsoft .legend-item{margin-left:1.4em}.game-console.microsoft .legend-item.back .icon,.game-console.microsoft .legend-item.exit .icon,.game-console.microsoft .legend-item.reversed-back .icon{background-position:0 27.5%}.game-console.microsoft .legend-item.search .icon,.game-console.microsoft .legend-item.space .icon{background-position:0 82%}.game-console.microsoft .legend-item.close-guide .icon,.game-console.microsoft .legend-item.delete .icon,.game-console.microsoft .legend-item.guide .icon,.game-console.microsoft .legend-item.home .icon,.game-console.microsoft .legend-item.modify .icon{background-position:0 54.9%}.roku #legend .legend-item.back .icon,.roku #legend .legend-item.exit .icon{background-position:0 105%}.game-console.sony .legend-item.back .icon,.game-console.sony .legend-item.exit .icon{background-position:0 0%}.game-console.sony .legend-item.reversed-back .icon{background-position:0 100%}.game-console.sony .legend-item.search .icon,.game-console.sony .legend-item.space .icon{background-position:0 87.5%}.game-console.sony .legend-item.close-guide .icon,.game-console.sony .legend-item.delete .icon,.game-console.sony .legend-item.guide .icon,.game-console.sony .legend-item.home .icon{background-position:0 75%}.game-console.sony #dialog .logout-authenticated-info,.game-console.microsoft #dialog .logout-authenticated-info{padding-top:0}.game-console.sony .action-tile .platform-container,.game-console.microsoft .action-tile .platform-container{margin:1em;text-align:center}.game-console.sony .login-user-info .platform-user-name,.game-console.sony .platform-user-name,.game-console.microsoft .login-user-info .platform-user-name,.game-console.microsoft .platform-user-name{vertical-align:middle}.game-console.sony .login-user-info .platform-user-icon,.game-console.sony .platform-user-icon,.game-console.microsoft .platform-user-icon,.game-console.microsoft .login-user-info .platform-user-icon{background-size:cover;display:inline-block;height:3em;vertical-align:middle;width:3em}.game-console.sony #dialog .login-user-info .platform-container>div,.game-console.microsoft #dialog .login-user-info .platform-container>div{font-size:1em}.wiiu .advertisement-callout,.wiiu .advertisement-info,.wiiu #leanback-player-container,.wiiu .skip-ad-button,.wiiu .title-card,.wiiu #watch,.wiiu .toaster{-h5vcc-target-screen:screen-all}.wiiu .pivot-shelf-list{opacity:1}.wiiu .legend-item.back .icon,.wiiu .legend-item.exit .icon{background-position:0 33.3%}.wiiu .legend-item.search .icon{background-position:0 100%}.wiiu .legend-item.close-guide .icon,.wiiu .legend-item.delete .icon,.wiiu .legend-item.guide .icon,.wiiu .legend-item.home .icon{background-position:0 66.7%}.wiiu .qr-code-wrapper{display:none}.wiiu #search .search-pairing{display:none}.wiiu #search-suggestions{font-size:1.6em;height:1.6em}.wiiu .search-state .application-message{top:35%}.tv .legend-item.guide .icon,.tv .legend-item.close-guide .icon,.tv .skip-ad-callout .icon{background-position:0 100%}.lg .legend-item.back,.lg .legend-item.exit{cursor:pointer}.tv .legend-item.back .icon,.tv .legend-item.exit .icon{background-position:0% 0%}.lg .legend-item.back .icon,.lg .legend-item.exit .icon{opacity:0.8}.lg .legend-item.back:hover .icon,.lg .legend-item.exit:hover .icon{opacity:1}body.samsung{background-color:transparent!important}body.lg{background-color:transparent!important;background-image:url(tv:)!important}body.limited-memory{background-color:#111}.limited-memory .bg,.eureka .bg{background-image:none;background-color:#2e2e2e}.limited-animation .loading-indicator,.opera .loading-indicator,.lg .loading-indicator{display:none}.limited-animation .fallback-loading-indicator,.opera .fallback-loading-indicator,.lg .fallback-loading-indicator{display:block}.limited-animation .video-tile .video-thumb{opacity:1}.limited-memory .video-tile .video-thumb{background-size:cover}.limited-memory .video-tile .video-thumb.preloaded{background-size:auto}.roku.limited-memory .video-tile .video-thumb{background-size:100%;opacity:1}.limited-animation.playlist-tile .count-overlay{background-color:#000}.search .placeholder-tile,.settings .placeholder-tile,.limited-animation .browse-content .list .placeholder-tile{height:24em;width:20.75em}.guide .placeholder-tile{width:100%;height:2em}.limited-animation .action-tile,.limited-animation .channel-tile,.limited-animation .playlist-tile,.limited-animation .auto-play-tile,.limited-animation .recent-search-tile,.limited-animation .video-tile,.limited-animation .browse-content .list .placeholder-tile,.search .placeholder-tile,.settings .placeholder-tile,.shelf .placeholder-tile{display:inline-block;margin-right:1.1em;position:relative;vertical-align:top}.limited-animation .shelves{margin-top:2.5%}.limited-animation .playlist-tile .overlay,.limited-animation .video-tile .overlay,.limited-memory .playlist-tile .overlay,.limited-memory .video-tile .overlay{opacity:1}.limited-memory .auto-play-tile .video-tile{margin:0}.limited-animation .auto-play-tile .post-play-countdown{top:-4em}.limited-animation .hide-background.video-tile .video-thumb{background-image:url(img/icon-playbutton.png)!important;background-repeat:no-repeat;opacity:1}.limited-animation .action-tile.focused .content{text-shadow:none}.limited-animation .post-play-countdown{text-shadow:none}.limited-animation #keyboard-grid .button.disabled,.limited-animation #keyboard-grid .button.focused,.limited-animation #letter-suggest .button{background-color:rgba(153,153,153,1)}.limited-animation #search #text-box-background,.limited-animation #search #search-text-entry{background-color:#000}.limited-animation #search-keyboard,.limited-animation #letter-suggest{text-shadow:none}.limited-animation #search-keyboard .disabled,.limited-animation #letter-suggest .button{color:#000;text-shadow:none}.limited-animation #letter-suggest .button.focused,.limited-animation #search-keyboard .button.focused{background-color:#e1e1e1;color:#212121}.limited-animation #transliteration .list .button{border-right-color:#f1f1f1}.limited-animation #transliteration .list .button.focused{background-color:rgba(153,153,153,1)}.limited-animation .toaster .toast-container{background-color:rgba(27,25,26,1)}.limited-animation .title-card,.limited-memory.limited-animation.sets-ui .title-card{background:#000;height:20%}.opera .focused,.opera :focus{outline:invert none medium}.eureka #browse-sets,.eureka #dialog .buttons,.eureka .legend,.eureka #transport-controls{display:none}#eureka-player-controls-container{display:none;position:absolute;top:17em;width:100%}.eureka #eureka-player-controls-container{display:block}.eureka .loading #eureka-player-controls-container{opacity:0}#eureka-player-controls{background-size:100%;border-radius:1em;height:11.5em;margin:0 auto;overflow:hidden;width:11.5em}.eureka #eureka-player-controls{opacity:0}@-webkit-keyframes showAndShrinkPause{from{-webkit-transform:scale(1.5);opacity:0}to{opacity:.7}}@-webkit-keyframes hideAndGrowPlay{from{opacity:.7}to{-webkit-transform:scale(1.5);opacity:0}}.eureka #watch.play #eureka-player-controls{background-image:url(img/player-play.png);-webkit-animation:hideAndGrowPlay linear 0.25s 0s 1 normal none}.eureka #watch.pause #eureka-player-controls{background-image:url(img/player-pause.png);-webkit-animation:showAndShrinkPause linear 0.25s 0s 1 normal none;opacity:.7}.xboxone .action-tile,.xboxone .legend-item.back,.xboxone .legend-item.delete,.xboxone .legend-item.exit,.xboxone .legend-item.home,.xboxone .legend-item.modify,.xboxone .legend-item.reversed-back,.xboxone .legend-item.search,.xboxone .player-controls div,.xboxone .auto-play-tile,.xboxone .video-stream,.xboxone .video-tile,.xboxone #browse-search-bar,.xboxone #guide.focused .guide-button,.xboxone #player-controls .item,.xboxone #snap-buttons>div{-h5vcc-gesturable:gesture-clickable}.xboxone #browse-sets{-h5vcc-gesturable:gesture-scroll-both}.xboxone #guide.focused .carousel{-h5vcc-gesturable:gesture-scroll-vertical}.xboxone .settings-shelf{-h5vcc-gesturable:gesture-scroll-horizontal}.xboxone #transliteration .button:hover,.xboxone #keyboard-grid .button:hover{background:none;cursor:default}.search-hint{display:none}.xboxone .search-hint,.xbox360 .search-hint{color:#6b6b6b;display:block;font-size:1.4em;line-height:2em}.context-menu-defocuser{background-color:rgba(0,0,0,0.5);height:100%;left:0;position:absolute;top:0;width:100%}.context-menu-list{background-color:#000;height:initial;left:50%;padding-top:2.5em;position:relative;top:50%;-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:30%}.context-menu-list .button{-h5vcc-gesturable:gesture-clickable;border:#000 solid;border-width:0.5em 1em 0.5em 1em;color:#e1e1e1;cursor:pointer;font-family:roboto-regular;font-size:1.5em;height:auto;line-height:2.5em;margin:0;text-align:left;text-indent:1em;transition-duration:200ms;transition-property:background-color,color;transition-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transition-duration:200ms;-webkit-transition-property:background-color,color;-webkit-transition-timing-function:cubic-bezier(0.4,0,0.2,1)}.context-menu-list .button:before{font-family:youtube-icons;padding-right:1em}.context-menu-list .button.icon-platform-switch-users{background:#1f1f1f url() no-repeat;background-position:0.5em center;background-size:2em 2em;border:solid #1f1f1f;border-width:2em 1em 2em 1em;height:initial;line-height:initial;margin-top:1em;padding:0.5em 0 0.5em 3em;text-indent:0}.context-menu-list .button.focused{background-color:#e1e1e1;color:#000}.call-to-cast{display:none}.call-to-cast.focused{bottom:0;display:block;left:0;position:absolute;right:0;top:0}.call-to-cast-text{color:#f1f1f1;font-weight:normal;text-shadow:#000 .06em .06em;width:38%}h2.call-to-cast-text{font-size:3.2em;margin-bottom:0.3em;margin-top:0;padding-top:1.5em}h3.call-to-cast-text{font-size:1.7em}.call-to-cast .end-screen{background-position:center center;background-repeat:no-repeat;background-size:cover;display:none;height:100%}.call-to-cast .end-screen.active{display:block}.call-to-cast .end-screen .call-to-cast-text{color:#fff;width:40%}.call-to-cast .end-screen .call-to-cast-text em{color:#0090ff;font-style:normal}.call-to-cast .end-screen h2.call-to-cast-text{margin-bottom:0.5em;padding-top:2em}.call-to-cast .end-screen h3.call-to-cast-text{line-height:1.5em}.call-to-cast .end-screen.left .call-to-cast-text{margin-left:5%}.call-to-cast .end-screen.right .call-to-cast-text{margin-left:50%}.call-to-cast .end-screen .yt-logo,.call-to-cast .end-screen .yt-kids-logo{background-image:url(img/call-to-cast-yt-logo.png);background-repeat:no-repeat;background-size:contain;bottom:8%;height:13.88%;position:fixed;width:100%}.call-to-cast .end-screen.left .yt-logo,.call-to-cast .end-screen.left .yt-kids-logo{background-position:left center;left:4%}.call-to-cast .end-screen.right .yt-logo,.call-to-cast .end-screen.right .yt-kids-logo{background-position:right center;right:4%}.call-to-cast .end-screen .yt-kids-logo{background-image:url(img/yt-kids-logo.png);height:20%}.call-to-cast .end-screen.multi-user{background-image:url(img/call-to-cast-end-screen-multi-user.jpg)}.call-to-cast .end-screen.yt-mix{background-image:url(img/call-to-cast-end-screen-yt-mix.jpg)}.call-to-cast .end-screen.tv-queue{background-image:url(img/call-to-cast-end-screen-tv-queue.jpg)}.call-to-cast .end-screen.kids-promo{background-image:url(img/call-to-cast-end-screen-kids-promo.jpg)}.call-to-cast .end-screen.kids-mother-goose{background-image:url(img/call-to-cast-end-screen-kids-mother-goose.jpg)}.call-to-cast .end-screen.kids-rainbow{background-image:url(img/call-to-cast-end-screen-kids-rainbow.jpg)}.call-to-cast .end-screen.kids-sesame{background-image:url(img/call-to-cast-end-screen-kids-sesame.jpg)}.call-to-cast .end-screen.kids-talking-tom{background-image:url(img/call-to-cast-end-screen-kids-talking-tom.jpg)}.call-to-cast .end-screen.kids-wonderquest{background-image:url(img/call-to-cast-end-screen-kids-wonderquest.jpg)}.call-to-cast .THEME-cl.end-screen.kids-promo h2.call-to-cast-text{width:80%}.call-to-cast .THEME-k.end-screen h3.call-to-cast-text{font-size:3em;line-height:1.4em;margin-top:0;padding-top:10%;padding-left:5%;width:45%}.call-to-cast .end-screen.gaming-heart{background-image:url(img/call-to-cast-end-screen-gaming-heart.jpg)}.call-to-cast .THEME-g.end-screen h3.call-to-cast-text{font-size:2.2em;padding-top:0%;width:100%}.call-to-cast .end-screen.loki{background-image:url(img/call-to-cast-end-screen-loki.jpg)}.call-to-cast .THEME-up.end-screen h3.call-to-cast-text{font-size:2.2em;margin-left:0%;padding-top:17em;text-align:center;width:100%}.call-to-cast .THEME-m.end-screen h2.call-to-cast-text{font-size:2.2em;margin-bottom:0;text-align:center;width:100%}.call-to-cast .THEME-m.end-screen h3.call-to-cast-text{margin-top:0;text-align:center;width:100%}.call-to-cast .THEME-m.end-screen.music-ready{background-image:url(img/call-to-cast-music.jpg)}.call-to-cast .THEME-m.end-screen.music-ready .call-to-cast-logo{background:url(img/yt-music-logo.png) no-repeat center bottom;height:60%}.call-to-cast .THEME-m.end-screen.music-ready h2.call-to-cast-text{padding-top:10%}.call-to-cast .THEME-m.end-screen.music-party{background-image:url(img/call-to-cast-music.jpg);height:100%}.call-to-cast .THEME-m.end-screen.music-party .call-to-cast-logo{background:url(img/call-to-cast-music-party-logo.png) no-repeat center bottom;height:55%}.call-to-cast .THEME-m.end-screen.music-party .footer{background:url(img/yt-music-logo-small.png) no-repeat center top;height:10%}.snap-controls{height:90%;padding:.5em;position:relative}.snapped.blurred #snap-buttons,.snapped.blurred #unsupported-mode,.snapped.blurred #ad-callout,.snapped.blurred .logo-container,.snapped.blurred .title-card,.snapped.blurred .up-next{opacity:.25!important}.snapped #dialog,.snapped #guide,.snapped #search,.snapped #settings,.snapped #title-tray,.snapped #transport-controls,.snapped .ad-showing .video-ads,.snapped .advertisement-info,.snapped .application-message,.snapped .browse,.snapped .browse-sets,.snapped .caption-window,.snapped .countdown-ad-callout,.snapped .html5-video-info-panel,.snapped .legend,.snapped .player-video-avatar,.snapped .quality-status,.snapped .skip-ad-button,.snapped .skip-ad-callout,.snapped .toaster,.snapped.blurred.browse-sets-state .title-card,.snapped.blurred.search-state .title-card,.snapped.blurred.settings-state .title-card,.snapped.dialog-focused #snap-progress-bar,.snapped.dialog-focused #watch{display:none!important}.snapped .advertisement-tooltip{color:#a0a0a0;font-size:.4em;left:0;top:0}.snapped .advertisement-tooltip .remaining_duration{color:#717171}.snapped #ad-callout{left:5%;top:18%}.snapped .debug-watermark{font-size:.2em;width:100%}#app-markup.snapped{background-color:#231f20}.snapped #background{display:none}.snapped{font-size:2em}.snapped.watch-state .logo-container{opacity:inherit}.snapped .icon-youtube-logo:before{content:''}.snap-controls .logo-container{background:url(img/yt-logo-fullcolor.png) no-repeat center top;display:inherit;height:2.5em;left:0;position:absolute;right:0;top:5%}.snapped .ad-video,.snapped .ad-created .video-stream{height:270px!important;width:480px!important}.snapped .video-stream,.snapped .html5-video-content{-webkit-transform:scale(.9)!important;max-height:5.6em;top:4.4em!important}.snapped .html5-video-controls{top:9.8em!important}.snapped .player-video-title{color:#a0a0a0;font-size:.7em;line-height:1.1em;margin:0;max-height:2.2em;white-space:normal;width:12em}.snapped .player-meta{left:0;margin:0;position:inherit;top:0}.snapped .player-meta .player-video-text{padding-left:0}.snapped .player-meta .player-video-details{color:#717171;font-size:.5em;line-height:1.1em}.snapped .player-meta .player-video-details>div{margin-left:0}.snapped .player-video-details .uploaded-date,.snapped .player-video-details .set-context,.snapped .player-video-details .view-count{font-size:.9em;margin-top:0}.watch-state.snapped #snap-progress-bar{display:block}#snap-progress-bar{background-position:top left;display:none;height:.1em;left:0;margin-top:9.25em;padding:0;position:relative;top:0;width:100%}#snap-progress-bar .progress-bar-disc,#snap-progress-bar .progress-bar-playhead{display:none}#snap-progress-bar div{height:5px;top:0}.snapped .title-card{background:none;border:none;height:initial;padding-top:.3em;position:inherit}#unsupported-mode{color:#fff;font-size:.9em;line-height:1.2em;padding:80% 1em 0;width:8em}.snap-controls .mute{background-image:url(img/icon-mute.png)}.snap-controls .mute.toggle-selected{background-image:url(img/icon-unmute.png)}.snap-controls .fullscreen{background-image:url(img/icon-fullscreen.png)}.snapped .loading-indicator{height:5em;width:5em}.snapped #spinner{top:19%;-o-transform:scale(.5);-webkit-transform:scale(.5);transform:scale(.5)}.engaged.snapped .engagement-indicator{display:inline-block;font-size:.6em!important;left:0;margin-left:auto;margin-right:auto;position:absolute;right:0;text-align:center;top:4.2em!important}.engaged.snapped .engagement-indicator .stop-listening{background:transparent}.snap-controls #snap-buttons{bottom:0;position:absolute}.snap-controls #snap-buttons .focused,.snap-controls #snap-buttons :hover{-webkit-border-radius:.15em;background-color:#fff;color:#000}.snap-controls #snap-buttons .button,.snap-controls #snap-buttons .toggle-button{display:inline-block;font-size:.8em;height:1em;margin-left:.5em;padding:1em;position:relative;text-align:center;top:0;width:1em}.snap-controls #snap-buttons div{color:#fff;cursor:pointer;vertical-align:middle}.snap-controls #snap-buttons div.disabled:hover{background-color:transparent;color:#fff}.snap-controls #snap-buttons div.focused{opacity:1}.snap-controls #snap-buttons div.disabled{opacity:.2}.snap-controls .speakable span,.snap-controls .disabled span{display:none}.engaged .snap-controls .speakable:not(.disabled) span{color:#5dc21e;display:block;font-size:.6em;left:0;overflow:hidden;pointer-events:none;position:absolute;text-align:center;top:-1.5em;width:100%;word-break:break-all}.lang-case-sensitive .snap-controls .speakable span:first-letter{text-transform:uppercase}.snap-controls .icon-player-play{font-family:'youtube-icons'}.snap-controls .icon-mute,.snap-controls .icon-fullscreen{background-position:center center;background-repeat:no-repeat;background-size:3em}.snap-controls .icon-mute,.snap-controls .icon-mute.disabled{background-image:url(img/button-unmute-active.png)}.snap-controls .icon-mute.focused,.snap-controls .icon-mute:hover:not(.disabled){background-image:url(img/button-unmute-onhover-active.png)}.snap-controls .icon-mute.toggle-selected{background-image:url(img/button-mute-active.png)}.snap-controls .icon-mute.toggle-selected.focused,.snap-controls .icon-mute.toggle-selected:hover{background-image:url(img/button-mute-onhover-active.png)}.snap-controls .icon-fullscreen{background-image:url(img/button-fullscreen-active.png)}.snap-controls .icon-fullscreen.focused,.snap-controls .icon-fullscreen:hover{background-image:url(img/button-fullscreen-onhover-active.png)}.up-next{height:3em;padding-top:1em}.up-next div{color:#a0a0a0;font-size:.6em}.up-next .video-title{height:1.2em;line-height:1.2em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.up-next .video-thumb{background:no-repeat center/100%;display:inline-block;height:100%;margin-top:.2em;max-height:2.5em;vertical-align:top;width:5em}#browse-sets{background-color:#222;height:100%;left:0;overflow:hidden;position:absolute;right:0}#browse-sets.no-background,.limited-memory #browse-sets{background-color:rgba(0,0,0,0)}#browse-search-bar{background-color:rgba(153,153,153,.2);cursor:pointer;height:3em;left:8em;margin-right:18em;position:absolute;right:2.5em;top:2.5em}.limited-animation #browse-search-bar{background-color:#4f575a}#browse-search-bar.focused,#browse-search-bar:hover{background:#fff}#browse-search-bar .icon{color:rgba(255,255,255,.4);display:block;font-family:'youtube-icons';font-size:1.8em;margin:0;padding:.35em 0 0 .5em;text-align:left}.limited-animation #browse-search-bar .icon{color:#e1e1e1}.youtube-logo-top{height:3.4em;position:absolute;right:9.5em;top:2.3em;width:8.4em;font-family:'youtube-icons'}#browse-sets.has-header-content .youtube-logo-top{display:none}.youtube-logo:before{color:rgba(153,153,153,.5);display:block;font-size:3.4em}.youtube-unlimited-logo:before{color:rgba(153,153,153,.5);display:none;font-size:3.4em;position:relative;right:.5em}.unlimited .youtube-logo:before{display:none}.unlimited .youtube-unlimited-logo:before{display:block}.limited-animation .youtube-unlimited-logo:before,.limited-animation .youtube-logo:before{color:#4f575a}#browse-search-bar.focused .icon,#browse-search-bar:hover .icon{color:#444}#platform-user-icon{background-position:center;background-repeat:no-repeat;background-size:contain;height:4em;position:absolute;right:3em;top:2em;width:4em}#browse-header{background-position:0 -8em;background-size:cover;height:60%;position:relative}.limited-memory.limited-animation #browse-header{background-position:6em 0;background-repeat:no-repeat;background-size:contain}.no-background #browse-header{background-image:none!important}.browse-sets #browse-header.collapsed{-o-transform:translateY(-27%);-webkit-transform:translateY(-27%);transform:translateY(-27%)}.limited-memory .browse-sets #browse-header.collapsed{top:-7em;-o-transform:none;-webkit-transform:none;transform:none}#browse-header .title{color:#e1e1e1;display:inline-block;font-size:2.25em;margin-bottom:-.23em;overflow:hidden;text-overflow:ellipsis;-o-transform-origin:left;-webkit-transform-origin:left;transform-origin:left;white-space:nowrap;width:23.7em}#browse-header.one-button .title{width:18.7em}#browse-header.two-buttons .title{width:14em}#browse-header.collapsed .title{overflow:visible;-o-transform:scale(.8,.8) translateY(-5em) translateX(-1.5em);-webkit-transform:scale(.8,.8) translateY(-5em) translateX(-1.5em);transform:scale(.8,.8) translateY(-5em) translateX(-1.5em)}.browse-header-gradient{background:-o-linear-gradient(top,rgba(34,34,34,0) 0%,rgba(34,34,34,0) 15%,rgba(34,34,34,1) 100%);background:-webkit-linear-gradient(top,rgba(34,34,34,0) 0%,rgba(34,34,34,0) 15%,rgba(34,34,34,1) 100%);background:linear-gradient(to bottom,rgba(34,34,34,0) 0%,rgba(34,34,34,0) 15%,rgba(34,34,34,1) 100%);height:100%;width:100%}.limited-memory .browse-header-gradient{display:none}.no-background .browse-header-gradient{visibility:hidden}.browse-header-metadata{left:8em;position:absolute;-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.limited-memory.limited-animation .browse-header-metadata{top:11.6em}.limited-memory.limited-animation #browse-header.collapsed .browse-header-metadata{font-size:inherit;left:8em;top:11em}.limited-memory.limited-animation #browse-header.collapsed .browse-header-metadata .browse-header-avatar{height:4em;margin-right:1em;width:4em}.browse-header-avatar{background-size:contain;display:inline-block;height:5em;margin-right:1.3em;-o-transform-origin:left;-webkit-transform-origin:left;transform-origin:left;width:5em}#browse-header.collapsed .browse-header-avatar{-o-transform:scale(.61,.61) translateY(-13.5em);-webkit-transform:scale(.61,.61) translateY(-13.5em);transform:scale(.61,.61) translateY(-13.5em)}#browse-header.collapsed .browse-header-button-bar{-o-transform:translateY(-6.25em);-webkit-transform:translateY(-6.25em);transform:translateY(-6.25em);opacity:0}.browse-header-button-bar{background:rgba(0,0,0,.4);border-radius:.15em;font-size:1.1em;height:2.4em;margin-bottom:-.59em;padding:.59em;position:absolute;right:3.5em}.limited-animation .browse-header-button-bar{background:#1f2426}.limited-memory.limited-animation .browse-header-button-bar{top:13em}.browse-header-button-bar,.browse-header-metadata{bottom:3.9em}.browse-header-button-bar .button{border-radius:.12em;color:#e1e1e1;cursor:default;display:inline-block;height:2.4em;min-width:8.2em;overflow:hidden;padding-right:1em;white-space:nowrap}.browse-header-button-bar .button span{line-height:2.4em;vertical-align:middle}.browse-header-button-bar .button.focused,.browse-header-button-bar .button.focused:hover{background:#e1e1e1;color:#212121}.browse-header-button-bar .button:hover{background-color:#666}.browse-header-button-bar .button .icon{display:inline-block;font-family:'youtube-icons';height:2.4em;margin:0 1em 0 1em}.browse-header-subscribe .icon:before{font-size:2em}.browse-header-subscribe.toggle-selected .icon:before{content:"\00e602";font-size:1em}.browse-header-subscribe.toggle-selected.focused{color:#ce292d}.browse-header-subscribe.disabled{background-color:rgba(0,0,0,0)}.browse-content{height:80%;left:8em;position:absolute;top:14.5%;width:100%}.browse-sets.collapsed .browse-content{-o-transform:translateY(44%);-webkit-transform:translateY(44%);transform:translateY(44%)}.limited-memory .browse-sets.collapsed .browse-content{top:20em;-o-transform:none;-webkit-transform:none;transform:none}#browse-header,.browse-header-avatar,.browse-header-button-bar,.browse-content,#browse-header .title{-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0);-o-transition:-o-transform .25s;-webkit-transition:-webkit-transform .25s;transition:-webkit-transform .25s}.browse-header-button-bar{-o-transition:opacity .25s -o-transform .25s;-webkit-transition:opacity .25s,-webkit-transform .25s;transition:opacity .25s,transform .25s}.limited-animation #browse-header,.limited-animation .browse-header-avatar,.limited-animation #browse-header.collapsed .browse-header-avatar,.limited-animation .browse-content,.limited-animation .browse-header-button-bar,.limited-animation #browse-header .title,.limited-animation .browse-content .shelves,.limited-animation .browse-header-metadata,.limited-animation .shelf #content-container,.limited-animation .shelves>.title,.limited-animation .shelf>.title,.limited-animation .horizontal-list>.content,.limited-animation .horizontal-list,.limited-animation .shelves .carousel{-o-transition:all 0;-webkit-transition:none;transition:none;-o-transform:none;-webkit-transform:none;transform:none}.limited-animation #browse-header.collapsed .browse-header-metadata{font-size:.6em;left:13.25em;top:17.75em}.limited-animation #browse-header.collapsed .browse-header-metadata .title{font-size:3em}.limited-memory #browse-header.collapsed .browse-header-metadata .title{font-size:1.8em}.limited-animation .browse-content .list{margin-left:-9.5em;width:126em}.limited-animation .browse-content .shelf>.title{margin-left:6em}.limited-animation.sets-ui .action-tile:not(.focused),.limited-animation.sets-ui .auto-play-tile:not(.focused) .video-tile,.limited-animation.sets-ui .channel-tile:not(.focused),.limited-animation.sets-ui .playlist-tile:not(.focused),.limited-animation.sets-ui .recent-search-tile:not(.focused),.limited-animation.sets-ui .video-tile:not(.focused),.roku.limited-animation.sets-ui .action-tile:hover:not(.focused),.roku.limited-animation.sets-ui .auto-play-tile:hover:not(.focused) .video-tile,.roku.limited-animation.sets-ui .channel-tile:hover:not(.focused),.roku.limited-animation.sets-ui .playlist-tile:hover:not(.focused),.roku.limited-animation.sets-ui .video-tile:hover:not(.focused){background-color:#212121}.limited-animation.sets-ui .action-tile:hover:not(.focused),.limited-animation.sets-ui .auto-play-tile:hover:not(.focused) .video-tile,.limited-animation.sets-ui .channel-tile:hover:not(.focused),.limited-animation.sets-ui .playlist-tile:hover:not(.focused),.limited-animation.sets-ui .recent-search-tile:hover:not(.focused),.limited-animation.sets-ui .video-tile:hover:not(.focused){background-color:#414141}.browse-content .shelves{margin-left:0em;-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.browse-content .shelves>.no-content-message,.browse-content .horizontal-list>.no-content-message{margin-left:-8em}.shelves>.no-content-message,.horizontal-list>.no-content-message{display:none;position:absolute;top:8em;width:100%}.shelves.no-content>.no-content-message,.horizontal-list.no-content>.no-content-message{display:block}.shelves>.no-content-message .text,.horizontal-list>.no-content-message .text{color:#f1f1f1;font-size:1.8em;text-align:center;text-shadow:#000 .04em .04em}.shelf{width:100%}.limited-animation .shelf{margin-bottom:1.8em}.carousel .shelf{position:absolute}.shelf #content-container{-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.shelves>.title,.shelf>.title{color:#999;font-size:1.6em;margin-bottom:1.0em;margin-top:.2em;-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0);white-space:nowrap}.shelves>.title,.shelf.selected>.title{color:#fff}.shelf>.title .annotation{color:#777;font-size:70%;margin-left:.5em}.shelf.selected>.title .annotation{color:#ddd}.horizontal-list.no-model,.shelf.no-model,.survey-shelf.no-model{display:none}.shelf>.icon{display:none}.horizontal-list>.content{font-size:79%;height:26em;opacity:1;-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.horizontal-list.focused>.content{opacity:1}.horizontal-list,.shelves .carousel,.browse-header-metadata{-o-transform:translateZ(0);-webkit-transform:translateZ(0);transform:translateZ(0)}.shelf0to0{opacity:1;-webkit-transform:translateY(0%) scale(1);-o-transform:translateY(0%) scale(1)}@-webkit-keyframes shelf0to1-anim{from{-webkit-transform:translateY(0%)}to{-webkit-transform:translateY(100%)}}@-o-keyframes shelf0to1-anim{from{-o-transform:translateY(0%)}to{-o-transform:translateY(100%)}}.shelf0to1{-webkit-animation:shelf0to1-anim 200ms forwards;-o-animation:shelf0to1-anim 200ms forwards}@-webkit-keyframes shelf0to2-anim{from{opacity:1;-webkit-transform:translateX(0%) translateY(0%) scale(1.0)}100%{opacity:0;-webkit-transform:translateX(-2%) translateY(-11%) scale(0.75)}}@-o-keyframes shelf0to2-anim{from{opacity:1;-o-transform:translateX(0%) translateY(0%) scale(1.0)}100%{opacity:0;-o-transform:translateX(-2%) translateY(-11%) scale(0.75)}}.shelf0to2{-webkit-animation:shelf0to2-anim 200ms forwards;-o-animation:shelf0to2-anim 200ms forwards}@-webkit-keyframes shelf1to0-anim{from{-webkit-transform:translateX(0%) translateY(100%)}to{-webkit-transform:translateX(0%) translateY(0%)}}@-o-keyframes shelf1to0-anim{from{-o-transform:translateX(0%) translateY(100%)}to{-o-transform:translateX(0%) translateY(0%)}}.shelf1to0{-webkit-animation:shelf1to0-anim 200ms forwards;-o-animation:shelf1to0-anim 200ms forwards}.shelf1to1{opacity:1;-webkit-transform:translateX(0%) translateY(100%) scale(1);-o-transform:translateX(0%) translateY(100%) scale(1)}@-webkit-keyframes shelf1to2-anim{from{-webkit-transform:translateX(0%) translateY(100%)}99%{-webkit-transform:translateX(0%) translateY(200%)}100%{opacity:0;-webkit-transform:translateX(-2%) translateY(-11%) scale(0.75)}}@-o-keyframes shelf1to2-anim{from{-o-transform:translateX(0%) translateY(100%)}99%{-o-transform:translateX(0%) translateY(200%)}100%{opacity:0;-o-transform:translateX(-2%) translateY(-11%) scale(0.75)}}.shelf1to2{-webkit-animation:shelf1to2-anim 200ms forwards;-o-animation:shelf1to2-anim 200ms forwards}@-webkit-keyframes shelf2to0-anim{from{opacity:0;-webkit-transform:translateX(-2%) translateY(-11%) scale(0.75)}to{opacity:1;-webkit-transform:translateX(0%) translateY(0%) scale(1.0)}}@-o-keyframes shelf2to0-anim{from{opacity:0;-o-transform:translateX(-2%) translateY(-11%) scale(0.75)}to{opacity:1;-o-transform:translateX(0%) translateY(0%) scale(1.0)}}.shelf2to0{-webkit-animation:shelf2to0-anim 200ms forwards;-o-animation:shelf2to0-anim 200ms forwards}@-webkit-keyframes shelf2to1-anim{from{opacity:1;-webkit-transform:translateX(0%) translateY(200%)}to{opacity:1;-webkit-transform:translateX(0%) translateY(100%)}}@-o-keyframes shelf2to1-anim{from{opacity:1;-o-transform:translateX(0%) translateY(200%)}to{opacity:1;-o-transform:translateX(0%) translateY(100%)}}.shelf2to1{-webkit-animation:shelf2to1-anim 200ms forwards;-o-animation:shelf2to1-anim 200ms forwards}.shelf2to2{opacity:0;-webkit-transform:translateX(-2%) translateY(-11%) scale(0.75);-o-transform:translateX(-2%) translateY(-11%) scale(0.75)}.limited-memory .shelves .list .video-tile:nth-child(1) .video-thumb,.limited-memory .shelves .list .channel-tile:nth-child(1) .video-thumb,.limited-memory.sets-ui #search .horizontal-list .list .video-tile:nth-child(1) .video-thumb,.limited-memory.sets-ui #search .horizontal-list .list .channel-tile:nth-child(1) .video-thumb,.limited-memory.sets-ui #browse .list .video-tile:nth-child(1) .video-thumb,.limited-memory.sets-ui #browse .list .channel-tile:nth-child(1) .video-thumb,.limited-memory.sets-ui #browse .list .video-tile:last-child .video-thumb,.limited-memory.sets-ui #browse .list .channel-tile:last-child .video-thumb{background:none!important}.survey-shelf{position:absolute}.survey-shelf>.title{color:#fff;display:inline-block;font-size:1.6em;margin-bottom:1.0em;margin-top:0.2em}.survey-shelf .action-tile .content>.title{display:none}.survey-shelf .horizontal-list>.content{font-size:79%;height:26em}.survey-shelf .description{color:#fff;visibility:visible}.survey-shelf .button{display:inline-block;margin-bottom:1em;margin-left:2em}.survey-shelf .sliding-highlighter{height:8em;width:8em}.survey-shelf .action-tile,.exp-densityBrowse .survey-shelf .action-tile{border:0;height:8em;width:8em}.survey-shelf .action-tile .content{height:8em;width:8em}.survey-shelf .action-tile .description{color:#777;font-size:1.2em;margin-top:-1.3em;opacity:1;white-space:nowrap}.exp-densityBrowse .survey-shelf.focused .action-tile .description{display:block}.exp-densityBrowse .survey-shelf .action-tile .description{display:none}.survey-shelf .action-tile .large-action-icon,.exp-densityBrowse .survey-shelf .action-tile .large-action-icon{background-color:transparent;font-size:5em;margin-top:.26em;padding-right:.2em}.survey-shelf .action-tile.selected .large-action-icon,.exp-densityBrowse .survey-shelf .action-tile.selected .large-action-icon{color:#fff}.survey-shelf .action-tile.focused .large-action-icon,.exp-densityBrowse .survey-shelf .action-tile.focused .large-action-icon{color:#222}.survey-shelf .button.focused{background-color:#fff;border-radius:.1em;color:#222;padding:.2em}.survey-shelf .button{color:#777}.limited-animation .survey-shelf{margin-bottom:5em;position:relative}.limited-animation .survey-shelf>.title{margin-left:6em}.limited-animation .exp-densityBrowse .survey-shelf>.title{margin-left:5em}.limited-animation .survey-shelf .horizontal-list{margin-left:17.5em}.limited-animation .exp-densityBrowse .survey-shelf .horizontal-list{margin-left:13.5em}.limited-animation .exp-densityBrowse .survey-shelf .action-tile .large-action-icon{margin-top:.12em}.limited-animation .exp-densityBrowse .survey-shelf .action-tile .description{display:block}#guide{box-shadow:.1em 0 1em 0em black;height:100%;left:0;overflow:hidden;position:absolute;-o-transform:translateX(-23em);-webkit-transform:translateX(-23em) translateZ(0);transform:translateX(-23em) translateZ(0);-o-transition:-o-transform 400ms cubic-bezier(0.4,0.0,0.2,1);-webkit-transition:-webkit-transform 400ms cubic-bezier(0.4,0.0,0.2,1);transition:transform 400ms cubic-bezier(0.4,0.0,0.2,1);width:28em}.limited-memory.limited-animation #guide{box-shadow:none;-o-transform:none;-webkit-transform:none;transform:none}.limited-memory #guide.focused{border-right:none}#guide.focused{-o-transform:translateX(0);-webkit-transform:translateX(0);transform:translateX(0)}#guide:hover{background-color:rgba(255,255,255,.2)}.limited-animation #guide:hover{background:none}.limited-animation #guide,.limited-animation #guide #user-info-background,.limited-animation .guide-carousel-background{-o-transition:none;-webkit-transition:none;transition:none}.guide-carousel-background{background-color:rgba(0,0,0,.2);height:100%;left:0em;position:absolute;top:0em;width:100%;-o-transition:background-color 400ms;-webkit-transition:background-color 400ms;transition:background-color 400ms}.limited-animation .guide-carousel-background,.limited-animation #guide #user-info-background{background-color:#1f2426}.limited-animation #guide:hover .guide-carousel-background,.limited-animation #guide:hover #user-info-background{background-color:#384145}.limited-animation.limited-memory .guide-carousel-background,.limited-animation.limited-memory #guide #user-info-background{background-color:#df2323}.limited-memory .guide-carousel-background,.limited-memory #guide #user-info-background,#guide .list{display:none}.limited-memory #guide.focused .guide-carousel-background,.limited-memory #guide.focused.logged-in #user-info-background,#guide.focused .list{display:block}.logged-in .guide-carousel-background{top:8.5em}#guide.focused .guide-carousel-background,#guide.focused:hover .guide-carousel-background{background-color:#df2323}.collapsed-guide,#guide.focused .collapsed-guide{display:none}.collapsed-guide-icons{color:#85888a;font-size:1.6em;left:15em;opacity:1;position:absolute;top:7.5em}.collapsed-guide-icon{font-family:'youtube-icons';margin-top:1em;margin-bottom:1em;text-align:center;width:2em}#guide .collapsed-guide-icons{-o-transition:opacity 150ms 450ms;-webkit-transition:opacity 150ms 450ms;transition:opacity 150ms 450ms}.limited-memory .collapsed-guide-icons{left:1em}.limited-animation #guide .collapsed-guide-icons{-o-transition:none;-webkit-transition:none;transition:none}#guide.focused .collapsed-guide-icons{opacity:0;-o-transition:none;-webkit-transition:none;transition:none}#guide .collapsed-guide-icon.icon-guide-my-subs{display:none}#guide.logged-in .collapsed-guide-icon.icon-guide-my-subs{display:block}#guide.logged-in .collapsed-guide-icon.icon-popular{display:none}.collapsed-guide-icon.icon-music{font-size:.925em;padding-left:.0375em}.limited-memory .collapsed-guide{background-color:#1f2426;border-right:.2em solid #111;display:block;height:100%;left:0;width:6em}#error-message{display:none}#guide.error.focused #error-message{color:#fff;display:block;font-size:2em;padding:2em;position:absolute;text-align:center;top:12em}#guide .sliding-highlighter{display:none;width:100%;height:4.2em;opacity:0}#guide.focused .sliding-highlighter{opacity:1}#guide.focused .sliding-highlighter{display:block}#guide.focused #user-info-background{visibility:visible}#guide #user-info-background{background-color:rgba(0,0,0,.2);-o-transition:background-color 400ms;-webkit-transition:background-color 400ms;transition:background-color 400ms}#guide.focused #user-info-background,#guide.focused:hover #user-info-background{background-color:#931717}.logged-in #user-info-background{display:block}#guide.focused .guide-user-text{visibility:visible}#guide .carousel,#guide .list,#guide .sliding-highlighter{color:#fff;margin-top:2em}#guide.logged-in .carousel,#guide.logged-in .list,#guide.logged-in .sliding-highlighter{margin-top:1em}#guide .carousel.hidden{display:block!important;visibility:hidden}#guide .list{position:relative}.carousel .guide-button{position:absolute}.list .guide-button{margin-bottom:.1em}.guide-button{font-size:1.6em;height:1.83em;overflow:hidden;padding:.5em .27em .3em 2.9em;white-space:nowrap}.guide-button:hover{background:#900;cursor:pointer;padding-right:1.78em}.guide-button.selected:hover{background:transparent}.guide-button.disabled:hover{background:transparent;cursor:inherit;padding-right:inherit}.guide-button.disabled{padding-left:2.1em;text-transform:uppercase}.guide-button.disabled.footer{text-transform:none}.guide-button-icon{color:#ef9191;display:inline-block;font-family:'youtube-icons';font-size:1.2em;margin-top:.2em;text-align:center;width:1.8em}.guide-button.disabled .guide-button-icon{display:none}.guide-user-text,.guide-button-title{color:#fbdada;display:inline-block;line-height:1.7em;overflow:hidden;padding-left:.5em;text-overflow:ellipsis;vertical-align:top}.guide-button.disabled .guide-button-title{color:#ef9191}.guide-user-text{visibility:hidden;margin-left:-0.4em;position:relative;top:30%;text-overflow:ellipsis;width:9.5em}.guide-button-title{width:11em}.engaged .guide-button-title{width:8em}.guide-button.footer .guide-button-title{font-size:75%;padding-top:.8em;width:21.15em}.guide-button-icon .image,#guide-user-avatar{background:no-repeat center;background-size:100%;height:1em;width:1em}.guide-button-icon .image{background-color:#fff;box-shadow:0 0 0 1px #ef9191;margin:0 .4em 0 .4em}.guide-button.focused .guide-button-icon .image{box-shadow:none}.guide-button .image{display:none}.guide-button.has-image .image{display:block}#guide-user-avatar{border-radius:50%;box-shadow:0 0 0 .05em rgba(239,145,145,.4),0 0 .05em #ef9191;display:inline-block;font-size:2.31em;margin:.2em .2em .2em .4em}#guide-user-avatar,.guide-user-text,.guide-button-icon,.guide-button-title{-o-transition:color 50ms;-webkit-transition:color 50ms;transition:color 50ms;transition-delay:25ms}.no-transition .guide-button .guide-button-icon,.no-transition .guide-button .guide-button-title,.limited-animation .guide-button .guide-button-icon,.limited-animation .guide-button .guide-button-title,.limited-animation #guide-user-avatar,.limited-animation .guide-user-text{-o-transition:none;-webkit-transition:none;transition:none}.guide-button.focused .guide-button-icon,.guide-button.focused .guide-button-title{color:#df2323}.limited-animation .guide-button.focused{background-color:#fff}.user-info-container{height:2.6em;padding:1.1em 0em 0em 1.8em;font-size:1.6em;white-space:nowrap}#user-info-background{display:none;height:8.53em;position:relative;width:inherit;z-index:1}.sliding-highlighter .select{background-color:rgba(0,0,0,0.8);display:none;height:2.9em;min-width:3.5em;padding:1.3em 0.6em 0em 0.6em;position:absolute;right:0;text-align:center}.engaged .guide .sliding-highlighter .select{display:block}.unlimited .guide-user-text{line-height:1.0em}.guide-user-unlimited{font-size:0.8em;color:#a88;text-transform:uppercase}#settings{height:100%;overflow:visible;position:absolute;right:0;left:4.5em}.settings-shelf{height:24em;margin-left:3.5em;margin-top:1em;position:absolute;top:19%;width:100%}.settings-title{color:#fff;font-size:1.2em;line-height:3em;white-space:nowrap}.limited-animation .settings .content .list{width:130em}.limited-animation #settings-items{margin-left:-17em}.settings-horizontal-list>.content{font-size:79%}.settings-horizontal-list>.no-content-message{display:none}.pointer-overlay{display:block}.pointer-overlay .nav-arrow{background-image:url(img/motion-control-sprite.png);background-repeat:no-repeat;background-size:100%;cursor:pointer;display:none;height:5em;opacity:.5;position:absolute;width:5em}.pointer-overlay.enabled .nav-arrow{display:block}.pointer-overlay .nav-arrow:hover{opacity:1}.pointer-overlay .up-arrow{background-position:0 100%;left:45%;top:18%}.pointer-overlay .down-arrow{background-position:0 0%;bottom:11%;left:45%}.pointer-overlay .left-arrow{background-position:0 33.3%;top:50%;left:5%}.settings-focused .pointer-overlay .left-arrow,.browse-sets-state .pointer-overlay .left-arrow,.search-state .pointer-overlay .left-arrow{left:7%}.pointer-overlay .right-arrow{background-position:0 66.7%;top:50%;right:5%}#search.input-open+.pointer-overlay .up-arrow,.post-play-state .pointer-overlay .up-arrow,.post-play-state .pointer-overlay .down-arrow{display:none}.watch-state .pointer-overlay .down-arrow{bottom:2%}.search-state.guide-focused .pointer-overlay .up-arrow{top:20%}@media screen and (aspect-ratio:5/4){#dialog.browse-sets #dialog-wrapper{padding:1.3em 2em}.flag-list-container.flag-options-dialog{font-size:.875em}}@media screen and (max-aspect-ratio:4/3){.player-controls #button-list{font-size:.875em}#transport-controls.ad-active .player-controls-widget .player-controls #button-list{font-size:1em}.fresh-transport-controls .progress-bar{width:70%}.fresh-transport-controls #player-time-elapsed,.fresh-transport-controls .player-time-total{font-size:1.1em;width:10%}}@media screen and (aspect-ratio:4/3){#browse-header .title{width:18.3em}#browse-header.one-button .title{width:13.2em}#browse-header.two-buttons .title{width:8.5em}.sets-ui .flag-list.grid{font-size:0.8em}.flag-claim{font-size:1.4em}#search .search-pairing{font-size:0.7em}.sets-ui .debug-dialog{font-size:0.8em}.voice-footer .list{padding-top:0;width:16em}}@media screen and (min-width:3840px){.player-controls{top:21px}}@media screen and (min-width:1919px){.opera .video-stream{height:1080px;width:1920px}.watch-video-tile,.watch-list .button{padding:10px}}@media screen and (min-width:640px) and (max-width:1024px) and (max-height:576px){.countdown-ad-callout{font-size:1.3em;right:10%}.opera .video-stream{height:576px;width:1024px}#keyboard-grid .button{width:.7em}#dialog-wrapper{padding-left:4em;padding-right:4em}.pairing{-moz-transform-origin:0 50%;-ms-transform-origin:0 50%;-o-transform-origin:0 50%;-webkit-transform-origin:0 50%;-moz-transform:scale(.7);-ms-transform:scale(.7);-o-transform:scale(.7);-webkit-transform:scale(.7)}.browse-sets #browse-header.collapsed{-o-transform:translateY(-19%);-webkit-transform:translateY(-19%);transform:translateY(-19%)}}@media screen and (max-width:720px) and (max-height:480px){.countdown-ad-callout{font-size:.9em;right:5%}.skip-ad-callout{right:3%}.opera .video-stream{height:480px;width:720}#search .pairing .alternatives{margin:0 0 0 1em}#keyboard-grid .button{width:.8em}#search .pairing .search-message .title{margin-top:0.7em}#dialog-view .pairing{font-size:0.8em;margin-top:2em}.watch-list .list{margin-left:-4em}}@media screen and (max-width:640px) and (max-height:480px){.opera .video-stream{height:480px;width:640px}#keyboard-grid .button{width:.7em}#dialog-view .reset-help{display:block;width:27em}.watch-video-tile,.watch-list .button{padding:4px}.browse-header-metadata{bottom:3.9em}.browse-sets #browse-header.collapsed{-o-transform:translateY(-27%);-webkit-transform:translateY(-27%);transform:translateY(-27%)}.voice-footer .list{font-size:.6em;margin-left:35%;padding-top:-3em;width:35%}.engaged .engagement-indicator{display:inline-block;font-size:1.3em;height:3em;margin-bottom:1.5em}.engaged .engagement-indicator .title{display:inline-block}.engagement-indicator .stop-listening .icon{display:inline-block;height:3em;left:0px;top:0px;width:15%}}@media screen and (min-height:1080px) and (max-width:1440px){.video-tile-container{-moz-transform:scale(.7);-ms-transform:scale(.7);-o-transform:scale(.7);-webkit-transform:scale(.7);transform:scale(.7);-moz-transform-origin:top right;-ms-transform-origin:top right;-o-transform-origin:top right;-webkit-transform-origin:top right;transform-origin:top right}.player-controls #button-list .button,.player-controls #button-list .toggle-button{margin-right:.2em;margin-left:.2em}.fresh-transport-controls .progress-bar{width:59%}.fresh-transport-controls #player-time-elapsed,.fresh-transport-controls .player-time-total{font-size:1em;width:14%}.fresh-transport-controls .button,.fresh-transport-controls .toggle-button{font-size:1.1em}.fresh-transport-controls #transport-more-button{font-size:1.7em}#dialog-wrapper{padding:1.3em 3em}.dialog-contents{font-size:95%}#dialog-wrapper .connection-steps{padding:0}#dialog-wrapper .pairing .qr-code,#dialog-wrapper .pairing .connected-list{margin:.2em}.context-menu-list{left:30%;right:30%}.voice-footer .list{font-size:0.65em;padding-left:22em;padding-right:18em;padding-top:1.3em}}.sets-ui .carousel .item,.sets-ui .carousel .channel-tile,.sets-ui .carousel .auto-play-tile{background-color:inherit!important}.sets-ui .carousel .item:hover,.sets-ui .carousel .channel-tile:hover,.sets-ui .carousel .auto-play-tile:hover{background-color:rgba(255,255,255,.1)!important}.sets-ui .tile .channel-bottom>.title,.sets-ui .tile .tile-bottom>.title{color:#e1e1e1}.sets-ui .tile .channel-bottom>.details,.sets-ui .tile .tile-bottom>.details{color:#646464}.sets-ui .tile.focused.selected .channel-bottom>.title,.sets-ui .tile.focused.selected .tile-bottom>.title{color:#212121}.sets-ui .tile.focused.selected .channel-bottom>.details,.sets-ui .tile.focused.selected .tile-bottom>.details{color:#8d8d8d}.sets-ui #transport-controls .player-controls #button-list div.icon-player-more,.sets-ui #transport-controls .player-controls #button-list div.icon-player-less{color:#fff}.sets-ui #transport-controls .player-controls #button-list div.icon-player-more.focused,.sets-ui #transport-controls .player-controls #button-list div.icon-player-less.focused{color:#222}.sets-ui .settings-title{font-size:1.5em}.sets-ui .action-tile .title{font-size:2.4em;margin-left:.1em;margin-right:.1em}.sets-ui .flag-list.grid{margin:3.25em}.sets-ui .flag-list .list{text-align:left}.sets-ui .flag-list .button{width:14em;text-align:center}.sets-ui .flag-example{top:20%}.sets-ui .flag-video{margin-left:2em;text-align:left}.sets-ui .flag-claim .privacy-invasion{margin:auto;width:50%}.sets-ui .authentication-error-dialog,.sets-ui .delete-video-error,.sets-ui .missing-channel-error,.sets-ui .server-unavailable,.sets-ui .network-error-dialog{margin-top:1em}.sets-ui .eureka-authorization-dialog .icon,.sets-ui .eureka-player-error-dialog .icon{margin-left:3em}.sets-ui .eureka-authorization-dialog .info,.sets-ui .eureka-player-error-dialog .info{width:50%}.sets-ui .debug-dialog{padding:0 1em;text-align:left}.sets-ui .text-dialog #dialog-view{width:auto}.sets-ui #dialog .platform-container{font-size:.6em;margin-bottom:.5em}.sets-ui .paid-channel-dialog{margin:1em}.sets-ui #dialog .connection-instructions .icon-settings-pair{display:none}.sets-ui .closed-captions-dialog{text-align:left;padding-left:1em}.sets-ui .delete-video-error,.sets-ui .paid-scope-dialog,.sets-ui .video-edit-error,.sets-ui .video-processing,.sets-ui .video-upload-error{margin:3em;font-size:1.6em}.limited-animation .auto-play-tile.focused .video-tile{background-color:#f1f1f1}.limited-animation.sets-ui .title-card{background:-o-linear-gradient(top,rgba(0,0,0,0.9),rgba(0,0,0,0.8),transparent);background:-webkit-linear-gradient(top,rgba(0,0,0,0.9),rgba(0,0,0,0.8),transparent);background:linear-gradient(to bottom,rgba(0,0,0,0.9),rgba(0,0,0,0.8),transparent)}.limited-animation.sets-ui #search #text-box-background,.limited-animation.sets-ui #search #search-text-entry{background-color:rgba(0,0,0,0)}.sets-ui .scrolling-text{text-align:left;padding-left:1em;height:20em}.sets-ui #dialog .scrollbar{right:11em}.sets-ui #dialog-view .reset-help{width:20em}.sets-ui #dialog.remote-reset-dialog .buttons{position:inherit}.sets-ui #dialog.remote-reset-dialog .reset-help{height:11em;padding-left:1em;text-align:left}.sets-ui #dialog.remote-reset-dialog .connected-list{margin-right:2em}.sets-ui .dialog-focused #legend{bottom:17%;right:16%}.exp-densityFiveTiles .horizontal-list>.content{font-size:59%}.exp-densityFiveTiles .shelf>.title{font-size:1.5em;margin-bottom:.75em;margin-top:0}.exp-densityFiveTiles .channel-bottom .title,.exp-densityFiveTiles .tile-bottom .title{font-size:1.75em}.exp-densityFiveTiles .tile-bottom .details{font-size:1.5em;height:50%;margin:.2em 1em 0 0}.exp-densityFiveTiles .channel-top .video-thumb{border-radius:50%}.limited-animation .exp-densityFiveTiles .browse-content .list{margin-left:-8em;width:155em}.exp-densityFourTiles .horizontal-list>.content{font-size:67%}.exp-densityFourTiles .shelf>.title{font-size:1.5em;margin-bottom:.75em;margin-top:0}.exp-densityFourTiles .channel-bottom .title,.exp-densityFourTiles .tile-bottom .title{font-size:1.75em}.exp-densityFourTiles .tile-bottom .details{font-size:1.5em;height:50%;margin:.2em 1em 0 0}.limited-animation .exp-densityFourTiles .browse-content .list{margin-left:-8.5em;width:155em}.exp-densityFourTiles .channel-top .video-thumb{border-radius:50%}.exp-densityHideMetadata .shelf .horizontal-list .tile-bottom,.exp-densityHideMetadata .shelf .horizontal-list .channel-bottom{display:none}.exp-densityHideMetadata .shelf.selected .horizontal-list .tile-bottom,.exp-densityHideMetadata .shelf.selected .horizontal-list .channel-bottom{display:block}.exp-densityHideMetadata .horizontal-list .video-tile .tile-top .decoration{display:none}.exp-densityHideMetadata #search .tile-top .decoration,.exp-densityHideMetadata #post-play-list .tile-top .decoration,.exp-densityHideMetadata .shelf.selected .horizontal-list .tile-top .decoration{display:block}.exp-densityHideMetadata .shelf:not(.selected) .channel-tile .video-thumb{height:70%;width:70%}.sets-ui .exp-densityHideMetadata .shelf:not(.selected) .carousel .item:hover,.sets-ui .exp-densityHideMetadata .shelf:not(.selected) .carousel .channel-tile:hover{background-color:inherit!important}.limited-animation .exp-densityHideMetadata .browse-content .list .shelf:nth-child(1){margin-bottom:9.5em}.limited-animation.sets-ui .exp-densityHideMetadata .channel-tile:not(.focused),.limited-animation.sets-ui .exp-densityHideMetadata .video-tile:not(.focused){background-color:inherit}.roku.limited-animation.sets-ui .exp-densityHideMetadata .channel-tile:hover:not(.focused),.roku.limited-animation.sets-ui .exp-densityHideMetadata .video-tile:hover:not(.focused){background-color:inherit}
\ No newline at end of file
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-active.png
new file mode 100644
index 0000000..14a8c41
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-onhover-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-onhover-active.png
new file mode 100644
index 0000000..79b4fbb
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-fullscreen-onhover-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-active.png
new file mode 100644
index 0000000..1022073
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-onhover-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-onhover-active.png
new file mode 100644
index 0000000..a1cb606
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-mute-onhover-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-active.png
new file mode 100644
index 0000000..6e017dc
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-onhover-active.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-onhover-active.png
new file mode 100644
index 0000000..2efdf75
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/button-unmute-onhover-active.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-gaming-heart.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-gaming-heart.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-gaming-heart.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-mother-goose.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-mother-goose.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-mother-goose.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-promo.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-promo.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-promo.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-rainbow.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-rainbow.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-rainbow.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-sesame.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-sesame.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-sesame.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-talking-tom.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-talking-tom.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-talking-tom.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-wonderquest.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-wonderquest.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-kids-wonderquest.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-loki.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-loki.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-loki.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-multi-user.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-multi-user.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-multi-user.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-tv-queue.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-tv-queue.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-tv-queue.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-yt-mix.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-yt-mix.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-end-screen-yt-mix.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music-party-logo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music-party-logo.png
new file mode 100644
index 0000000..bae7f19
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music-party-logo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg
new file mode 100644
index 0000000..4cf9844
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-music.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-yt-logo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-yt-logo.png
new file mode 100644
index 0000000..fdd416d
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/call-to-cast-yt-logo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/cast_disconnected_blue.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/cast_disconnected_blue.png
new file mode 100644
index 0000000..da20b33
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/cast_disconnected_blue.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/circle.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/circle.png
new file mode 100644
index 0000000..9222c60
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/circle.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/default_bg.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/default_bg.jpg
new file mode 100644
index 0000000..a55be3c
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/default_bg.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/dial-sprite.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/dial-sprite.png
new file mode 100644
index 0000000..6c86373
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/dial-sprite.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_dark.png
new file mode 100644
index 0000000..fbafd90
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_light.png
new file mode 100644
index 0000000..1bbade8
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/edit_tile_light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/flag.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/flag.png
new file mode 100644
index 0000000..0f17309
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/flag.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-aaa-engaged.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-aaa-engaged.png
new file mode 100644
index 0000000..35a3db2
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-aaa-engaged.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-feedback.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-feedback.png
new file mode 100644
index 0000000..426b4b3
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-feedback.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-fullscreen.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-fullscreen.png
new file mode 100644
index 0000000..c708e76
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-fullscreen.png
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html lang=en>
+  <meta charset=utf-8>
+  <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
+  <title>Error 404 (Not Found)!!1</title>
+  <style>
+    *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
+  </style>
+  <a href=//www.google.com/><span id=logo aria-label=Google></span></a>
+  <p><b>404.</b> <ins>That’s an error.</ins>
+  <p>The requested URL <code>/s/tv/html5/f0d770f4/img/icon-fullscreen.png</code> was not found on this server.  <ins>That’s all we know.</ins>
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-help.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-help.png
new file mode 100644
index 0000000..21839e2
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-help.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-mute.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-mute.png
new file mode 100644
index 0000000..999078d
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-mute.png
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html lang=en>
+  <meta charset=utf-8>
+  <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
+  <title>Error 404 (Not Found)!!1</title>
+  <style>
+    *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
+  </style>
+  <a href=//www.google.com/><span id=logo aria-label=Google></span></a>
+  <p><b>404.</b> <ins>That’s an error.</ins>
+  <p>The requested URL <code>/s/tv/html5/f0d770f4/img/icon-mute.png</code> was not found on this server.  <ins>That’s all we know.</ins>
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png
new file mode 100644
index 0000000..8ac546c
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-playbutton.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-dark.png
new file mode 100644
index 0000000..e6f1240
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-light.png
new file mode 100644
index 0000000..b39bd87
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-check-light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-dark.png
new file mode 100644
index 0000000..2a16694
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-light.png
new file mode 100644
index 0000000..c7b3d38
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-private-light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-dark.png
new file mode 100644
index 0000000..87b0492
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-light.png
new file mode 100644
index 0000000..42faaa1
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-public-light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-dark.png
new file mode 100644
index 0000000..248782d
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-light.png
new file mode 100644
index 0000000..9f37410
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-privacy-unlisted-light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-unmute.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-unmute.png
new file mode 100644
index 0000000..70da26b
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icon-unmute.png
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html lang=en>
+  <meta charset=utf-8>
+  <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
+  <title>Error 404 (Not Found)!!1</title>
+  <style>
+    *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
+  </style>
+  <a href=//www.google.com/><span id=logo aria-label=Google></span></a>
+  <p><b>404.</b> <ins>That’s an error.</ins>
+  <p>The requested URL <code>/s/tv/html5/f0d770f4/img/icon-unmute.png</code> was not found on this server.  <ins>That’s all we know.</ins>
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icons.ttf b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icons.ttf
new file mode 100644
index 0000000..929a78f
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/icons.ttf
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-bbb.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-bbb.png
new file mode 100644
index 0000000..ea9e5b8
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-bbb.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ccc.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ccc.png
new file mode 100644
index 0000000..7727e8c
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ccc.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ddd.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ddd.png
new file mode 100644
index 0000000..f6b0382
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ddd.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-desktop.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-desktop.png
new file mode 100644
index 0000000..99979f0
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-desktop.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-eee.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-eee.png
new file mode 100644
index 0000000..1d2930b
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-eee.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-fff.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-fff.png
new file mode 100644
index 0000000..056ccf9
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-fff.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ggg.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ggg.png
new file mode 100644
index 0000000..8d846cb
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/legend-sprite-ggg.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/motion-control-sprite.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/motion-control-sprite.png
new file mode 100644
index 0000000..0ecee6d
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/motion-control-sprite.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pair_promo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pair_promo.png
new file mode 100644
index 0000000..7bbb8ba
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pair_promo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pairing-promo-combo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pairing-promo-combo.png
new file mode 100644
index 0000000..7442d55
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/pairing-promo-combo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-pause.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-pause.png
new file mode 100644
index 0000000..afab54d
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-pause.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-play.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-play.png
new file mode 100644
index 0000000..bdd2471
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/player-play.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_dark.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_dark.png
new file mode 100644
index 0000000..495f00f
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_dark.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_light.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_light.png
new file mode 100644
index 0000000..049ef34
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/trash_tile_light.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_0_pressed.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_0_pressed.png
new file mode 100644
index 0000000..7abd5c6
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_0_pressed.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_1_pressed.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_1_pressed.png
new file mode 100644
index 0000000..d283c5a
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_1_pressed.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_2_pressed.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_2_pressed.png
new file mode 100644
index 0000000..8eb2ac0
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_2_pressed.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_mute_pressed.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_mute_pressed.png
new file mode 100644
index 0000000..b867b7f
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/volume_mute_pressed.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-kids-logo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-kids-logo.png
new file mode 100644
index 0000000..2de9041
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-kids-logo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-logo-fullcolor.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-logo-fullcolor.png
new file mode 100644
index 0000000..1fa0d1a
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-logo-fullcolor.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo-small.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo-small.png
new file mode 100644
index 0000000..e73e0fc
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo-small.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo.png b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo.png
new file mode 100644
index 0000000..8e60577
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/f0d770f4/img/yt-music-logo.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/misc/fonts/Roboto-Regular-20140804.ttf b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/misc/fonts/Roboto-Regular-20140804.ttf
new file mode 100644
index 0000000..0e58508
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/www.youtube.com/s/tv/html5/misc/fonts/Roboto-Regular-20140804.ttf
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/yt3.ggpht.com/-dL2jeHlm2Ok/AAAAAAAAAAI/AAAAAAAAAAA/ZCMMkRj-hrw/s88-c-k-no/photo.jpg b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/yt3.ggpht.com/-dL2jeHlm2Ok/AAAAAAAAAAI/AAAAAAAAAAA/ZCMMkRj-hrw/s88-c-k-no/photo.jpg
new file mode 100644
index 0000000..56b34fe
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/benchmarks/youtube-2015-q3/yt3.ggpht.com/-dL2jeHlm2Ok/AAAAAAAAAAI/AAAAAAAAAAA/ZCMMkRj-hrw/s88-c-k-no/photo.jpg
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements-expected.png b/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements-expected.png
new file mode 100644
index 0000000..0a80611
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements-expected.png
Binary files differ
diff --git a/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements.html b/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements.html
new file mode 100644
index 0000000..bc583e3
--- /dev/null
+++ b/src/cobalt/layout_tests/testdata/cobalt/1000-nested-elements.html
@@ -0,0 +1,1020 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <style>
+    body {
+      background-color: white;
+      font-family: Roboto;
+      font-size: 30px;
+    }
+  </style>
+</head>
+<body>
+
+  <!-- 1000 nested <span>s, closing tags are implied. -->
+  <!-- Cobalt should only attach 29 <span>s, since there're the document, <html>
+  and <body> in the stack, given that max depth is 32. -->
+
+  <span>1
+  <span>2
+  <span>3
+  <span>4
+  <span>5
+  <span>6
+  <span>7
+  <span>8
+  <span>9
+  <span>10
+  <span>11
+  <span>12
+  <span>13
+  <span>14
+  <span>15
+  <span>16
+  <span>17
+  <span>18
+  <span>19
+  <span>20
+  <span>21
+  <span>22
+  <span>23
+  <span>24
+  <span>25
+  <span>26
+  <span>27
+  <span>28
+  <span>29
+  <span>30
+  <span>31
+  <span>32
+  <span>33
+  <span>34
+  <span>35
+  <span>36
+  <span>37
+  <span>38
+  <span>39
+  <span>40
+  <span>41
+  <span>42
+  <span>43
+  <span>44
+  <span>45
+  <span>46
+  <span>47
+  <span>48
+  <span>49
+  <span>50
+  <span>51
+  <span>52
+  <span>53
+  <span>54
+  <span>55
+  <span>56
+  <span>57
+  <span>58
+  <span>59
+  <span>60
+  <span>61
+  <span>62
+  <span>63
+  <span>64
+  <span>65
+  <span>66
+  <span>67
+  <span>68
+  <span>69
+  <span>70
+  <span>71
+  <span>72
+  <span>73
+  <span>74
+  <span>75
+  <span>76
+  <span>77
+  <span>78
+  <span>79
+  <span>80
+  <span>81
+  <span>82
+  <span>83
+  <span>84
+  <span>85
+  <span>86
+  <span>87
+  <span>88
+  <span>89
+  <span>90
+  <span>91
+  <span>92
+  <span>93
+  <span>94
+  <span>95
+  <span>96
+  <span>97
+  <span>98
+  <span>99
+  <span>100
+  <span>101
+  <span>102
+  <span>103
+  <span>104
+  <span>105
+  <span>106
+  <span>107
+  <span>108
+  <span>109
+  <span>110
+  <span>111
+  <span>112
+  <span>113
+  <span>114
+  <span>115
+  <span>116
+  <span>117
+  <span>118
+  <span>119
+  <span>120
+  <span>121
+  <span>122
+  <span>123
+  <span>124
+  <span>125
+  <span>126
+  <span>127
+  <span>128
+  <span>129
+  <span>130
+  <span>131
+  <span>132
+  <span>133
+  <span>134
+  <span>135
+  <span>136
+  <span>137
+  <span>138
+  <span>139
+  <span>140
+  <span>141
+  <span>142
+  <span>143
+  <span>144
+  <span>145
+  <span>146
+  <span>147
+  <span>148
+  <span>149
+  <span>150
+  <span>151
+  <span>152
+  <span>153
+  <span>154
+  <span>155
+  <span>156
+  <span>157
+  <span>158
+  <span>159
+  <span>160
+  <span>161
+  <span>162
+  <span>163
+  <span>164
+  <span>165
+  <span>166
+  <span>167
+  <span>168
+  <span>169
+  <span>170
+  <span>171
+  <span>172
+  <span>173
+  <span>174
+  <span>175
+  <span>176
+  <span>177
+  <span>178
+  <span>179
+  <span>180
+  <span>181
+  <span>182
+  <span>183
+  <span>184
+  <span>185
+  <span>186
+  <span>187
+  <span>188
+  <span>189
+  <span>190
+  <span>191
+  <span>192
+  <span>193
+  <span>194
+  <span>195
+  <span>196
+  <span>197
+  <span>198
+  <span>199
+  <span>200
+  <span>201
+  <span>202
+  <span>203
+  <span>204
+  <span>205
+  <span>206
+  <span>207
+  <span>208
+  <span>209
+  <span>210
+  <span>211
+  <span>212
+  <span>213
+  <span>214
+  <span>215
+  <span>216
+  <span>217
+  <span>218
+  <span>219
+  <span>220
+  <span>221
+  <span>222
+  <span>223
+  <span>224
+  <span>225
+  <span>226
+  <span>227
+  <span>228
+  <span>229
+  <span>230
+  <span>231
+  <span>232
+  <span>233
+  <span>234
+  <span>235
+  <span>236
+  <span>237
+  <span>238
+  <span>239
+  <span>240
+  <span>241
+  <span>242
+  <span>243
+  <span>244
+  <span>245
+  <span>246
+  <span>247
+  <span>248
+  <span>249
+  <span>250
+  <span>251
+  <span>252
+  <span>253
+  <span>254
+  <span>255
+  <span>256
+  <span>257
+  <span>258
+  <span>259
+  <span>260
+  <span>261
+  <span>262
+  <span>263
+  <span>264
+  <span>265
+  <span>266
+  <span>267
+  <span>268
+  <span>269
+  <span>270
+  <span>271
+  <span>272
+  <span>273
+  <span>274
+  <span>275
+  <span>276
+  <span>277
+  <span>278
+  <span>279
+  <span>280
+  <span>281
+  <span>282
+  <span>283
+  <span>284
+  <span>285
+  <span>286
+  <span>287
+  <span>288
+  <span>289
+  <span>290
+  <span>291
+  <span>292
+  <span>293
+  <span>294
+  <span>295
+  <span>296
+  <span>297
+  <span>298
+  <span>299
+  <span>300
+  <span>301
+  <span>302
+  <span>303
+  <span>304
+  <span>305
+  <span>306
+  <span>307
+  <span>308
+  <span>309
+  <span>310
+  <span>311
+  <span>312
+  <span>313
+  <span>314
+  <span>315
+  <span>316
+  <span>317
+  <span>318
+  <span>319
+  <span>320
+  <span>321
+  <span>322
+  <span>323
+  <span>324
+  <span>325
+  <span>326
+  <span>327
+  <span>328
+  <span>329
+  <span>330
+  <span>331
+  <span>332
+  <span>333
+  <span>334
+  <span>335
+  <span>336
+  <span>337
+  <span>338
+  <span>339
+  <span>340
+  <span>341
+  <span>342
+  <span>343
+  <span>344
+  <span>345
+  <span>346
+  <span>347
+  <span>348
+  <span>349
+  <span>350
+  <span>351
+  <span>352
+  <span>353
+  <span>354
+  <span>355
+  <span>356
+  <span>357
+  <span>358
+  <span>359
+  <span>360
+  <span>361
+  <span>362
+  <span>363
+  <span>364
+  <span>365
+  <span>366
+  <span>367
+  <span>368
+  <span>369
+  <span>370
+  <span>371
+  <span>372
+  <span>373
+  <span>374
+  <span>375
+  <span>376
+  <span>377
+  <span>378
+  <span>379
+  <span>380
+  <span>381
+  <span>382
+  <span>383
+  <span>384
+  <span>385
+  <span>386
+  <span>387
+  <span>388
+  <span>389
+  <span>390
+  <span>391
+  <span>392
+  <span>393
+  <span>394
+  <span>395
+  <span>396
+  <span>397
+  <span>398
+  <span>399
+  <span>400
+  <span>401
+  <span>402
+  <span>403
+  <span>404
+  <span>405
+  <span>406
+  <span>407
+  <span>408
+  <span>409
+  <span>410
+  <span>411
+  <span>412
+  <span>413
+  <span>414
+  <span>415
+  <span>416
+  <span>417
+  <span>418
+  <span>419
+  <span>420
+  <span>421
+  <span>422
+  <span>423
+  <span>424
+  <span>425
+  <span>426
+  <span>427
+  <span>428
+  <span>429
+  <span>430
+  <span>431
+  <span>432
+  <span>433
+  <span>434
+  <span>435
+  <span>436
+  <span>437
+  <span>438
+  <span>439
+  <span>440
+  <span>441
+  <span>442
+  <span>443
+  <span>444
+  <span>445
+  <span>446
+  <span>447
+  <span>448
+  <span>449
+  <span>450
+  <span>451
+  <span>452
+  <span>453
+  <span>454
+  <span>455
+  <span>456
+  <span>457
+  <span>458
+  <span>459
+  <span>460
+  <span>461
+  <span>462
+  <span>463
+  <span>464
+  <span>465
+  <span>466
+  <span>467
+  <span>468
+  <span>469
+  <span>470
+  <span>471
+  <span>472
+  <span>473
+  <span>474
+  <span>475
+  <span>476
+  <span>477
+  <span>478
+  <span>479
+  <span>480
+  <span>481
+  <span>482
+  <span>483
+  <span>484
+  <span>485
+  <span>486
+  <span>487
+  <span>488
+  <span>489
+  <span>490
+  <span>491
+  <span>492
+  <span>493
+  <span>494
+  <span>495
+  <span>496
+  <span>497
+  <span>498
+  <span>499
+  <span>500
+  <span>501
+  <span>502
+  <span>503
+  <span>504
+  <span>505
+  <span>506
+  <span>507
+  <span>508
+  <span>509
+  <span>510
+  <span>511
+  <span>512
+  <span>513
+  <span>514
+  <span>515
+  <span>516
+  <span>517
+  <span>518
+  <span>519
+  <span>520
+  <span>521
+  <span>522
+  <span>523
+  <span>524
+  <span>525
+  <span>526
+  <span>527
+  <span>528
+  <span>529
+  <span>530
+  <span>531
+  <span>532
+  <span>533
+  <span>534
+  <span>535
+  <span>536
+  <span>537
+  <span>538
+  <span>539
+  <span>540
+  <span>541
+  <span>542
+  <span>543
+  <span>544
+  <span>545
+  <span>546
+  <span>547
+  <span>548
+  <span>549
+  <span>550
+  <span>551
+  <span>552
+  <span>553
+  <span>554
+  <span>555
+  <span>556
+  <span>557
+  <span>558
+  <span>559
+  <span>560
+  <span>561
+  <span>562
+  <span>563
+  <span>564
+  <span>565
+  <span>566
+  <span>567
+  <span>568
+  <span>569
+  <span>570
+  <span>571
+  <span>572
+  <span>573
+  <span>574
+  <span>575
+  <span>576
+  <span>577
+  <span>578
+  <span>579
+  <span>580
+  <span>581
+  <span>582
+  <span>583
+  <span>584
+  <span>585
+  <span>586
+  <span>587
+  <span>588
+  <span>589
+  <span>590
+  <span>591
+  <span>592
+  <span>593
+  <span>594
+  <span>595
+  <span>596
+  <span>597
+  <span>598
+  <span>599
+  <span>600
+  <span>601
+  <span>602
+  <span>603
+  <span>604
+  <span>605
+  <span>606
+  <span>607
+  <span>608
+  <span>609
+  <span>610
+  <span>611
+  <span>612
+  <span>613
+  <span>614
+  <span>615
+  <span>616
+  <span>617
+  <span>618
+  <span>619
+  <span>620
+  <span>621
+  <span>622
+  <span>623
+  <span>624
+  <span>625
+  <span>626
+  <span>627
+  <span>628
+  <span>629
+  <span>630
+  <span>631
+  <span>632
+  <span>633
+  <span>634
+  <span>635
+  <span>636
+  <span>637
+  <span>638
+  <span>639
+  <span>640
+  <span>641
+  <span>642
+  <span>643
+  <span>644
+  <span>645
+  <span>646
+  <span>647
+  <span>648
+  <span>649
+  <span>650
+  <span>651
+  <span>652
+  <span>653
+  <span>654
+  <span>655
+  <span>656
+  <span>657
+  <span>658
+  <span>659
+  <span>660
+  <span>661
+  <span>662
+  <span>663
+  <span>664
+  <span>665
+  <span>666
+  <span>667
+  <span>668
+  <span>669
+  <span>670
+  <span>671
+  <span>672
+  <span>673
+  <span>674
+  <span>675
+  <span>676
+  <span>677
+  <span>678
+  <span>679
+  <span>680
+  <span>681
+  <span>682
+  <span>683
+  <span>684
+  <span>685
+  <span>686
+  <span>687
+  <span>688
+  <span>689
+  <span>690
+  <span>691
+  <span>692
+  <span>693
+  <span>694
+  <span>695
+  <span>696
+  <span>697
+  <span>698
+  <span>699
+  <span>700
+  <span>701
+  <span>702
+  <span>703
+  <span>704
+  <span>705
+  <span>706
+  <span>707
+  <span>708
+  <span>709
+  <span>710
+  <span>711
+  <span>712
+  <span>713
+  <span>714
+  <span>715
+  <span>716
+  <span>717
+  <span>718
+  <span>719
+  <span>720
+  <span>721
+  <span>722
+  <span>723
+  <span>724
+  <span>725
+  <span>726
+  <span>727
+  <span>728
+  <span>729
+  <span>730
+  <span>731
+  <span>732
+  <span>733
+  <span>734
+  <span>735
+  <span>736
+  <span>737
+  <span>738
+  <span>739
+  <span>740
+  <span>741
+  <span>742
+  <span>743
+  <span>744
+  <span>745
+  <span>746
+  <span>747
+  <span>748
+  <span>749
+  <span>750
+  <span>751
+  <span>752
+  <span>753
+  <span>754
+  <span>755
+  <span>756
+  <span>757
+  <span>758
+  <span>759
+  <span>760
+  <span>761
+  <span>762
+  <span>763
+  <span>764
+  <span>765
+  <span>766
+  <span>767
+  <span>768
+  <span>769
+  <span>770
+  <span>771
+  <span>772
+  <span>773
+  <span>774
+  <span>775
+  <span>776
+  <span>777
+  <span>778
+  <span>779
+  <span>780
+  <span>781
+  <span>782
+  <span>783
+  <span>784
+  <span>785
+  <span>786
+  <span>787
+  <span>788
+  <span>789
+  <span>790
+  <span>791
+  <span>792
+  <span>793
+  <span>794
+  <span>795
+  <span>796
+  <span>797
+  <span>798
+  <span>799
+  <span>800
+  <span>801
+  <span>802
+  <span>803
+  <span>804
+  <span>805
+  <span>806
+  <span>807
+  <span>808
+  <span>809
+  <span>810
+  <span>811
+  <span>812
+  <span>813
+  <span>814
+  <span>815
+  <span>816
+  <span>817
+  <span>818
+  <span>819
+  <span>820
+  <span>821
+  <span>822
+  <span>823
+  <span>824
+  <span>825
+  <span>826
+  <span>827
+  <span>828
+  <span>829
+  <span>830
+  <span>831
+  <span>832
+  <span>833
+  <span>834
+  <span>835
+  <span>836
+  <span>837
+  <span>838
+  <span>839
+  <span>840
+  <span>841
+  <span>842
+  <span>843
+  <span>844
+  <span>845
+  <span>846
+  <span>847
+  <span>848
+  <span>849
+  <span>850
+  <span>851
+  <span>852
+  <span>853
+  <span>854
+  <span>855
+  <span>856
+  <span>857
+  <span>858
+  <span>859
+  <span>860
+  <span>861
+  <span>862
+  <span>863
+  <span>864
+  <span>865
+  <span>866
+  <span>867
+  <span>868
+  <span>869
+  <span>870
+  <span>871
+  <span>872
+  <span>873
+  <span>874
+  <span>875
+  <span>876
+  <span>877
+  <span>878
+  <span>879
+  <span>880
+  <span>881
+  <span>882
+  <span>883
+  <span>884
+  <span>885
+  <span>886
+  <span>887
+  <span>888
+  <span>889
+  <span>890
+  <span>891
+  <span>892
+  <span>893
+  <span>894
+  <span>895
+  <span>896
+  <span>897
+  <span>898
+  <span>899
+  <span>900
+  <span>901
+  <span>902
+  <span>903
+  <span>904
+  <span>905
+  <span>906
+  <span>907
+  <span>908
+  <span>909
+  <span>910
+  <span>911
+  <span>912
+  <span>913
+  <span>914
+  <span>915
+  <span>916
+  <span>917
+  <span>918
+  <span>919
+  <span>920
+  <span>921
+  <span>922
+  <span>923
+  <span>924
+  <span>925
+  <span>926
+  <span>927
+  <span>928
+  <span>929
+  <span>930
+  <span>931
+  <span>932
+  <span>933
+  <span>934
+  <span>935
+  <span>936
+  <span>937
+  <span>938
+  <span>939
+  <span>940
+  <span>941
+  <span>942
+  <span>943
+  <span>944
+  <span>945
+  <span>946
+  <span>947
+  <span>948
+  <span>949
+  <span>950
+  <span>951
+  <span>952
+  <span>953
+  <span>954
+  <span>955
+  <span>956
+  <span>957
+  <span>958
+  <span>959
+  <span>960
+  <span>961
+  <span>962
+  <span>963
+  <span>964
+  <span>965
+  <span>966
+  <span>967
+  <span>968
+  <span>969
+  <span>970
+  <span>971
+  <span>972
+  <span>973
+  <span>974
+  <span>975
+  <span>976
+  <span>977
+  <span>978
+  <span>979
+  <span>980
+  <span>981
+  <span>982
+  <span>983
+  <span>984
+  <span>985
+  <span>986
+  <span>987
+  <span>988
+  <span>989
+  <span>990
+  <span>991
+  <span>992
+  <span>993
+  <span>994
+  <span>995
+  <span>996
+  <span>997
+  <span>998
+  <span>999
+  <span>1000
+
+</body>
+</html>
diff --git a/src/cobalt/layout_tests/testdata/cobalt/layout_tests.txt b/src/cobalt/layout_tests/testdata/cobalt/layout_tests.txt
index 7ada83e..93e5eda 100644
--- a/src/cobalt/layout_tests/testdata/cobalt/layout_tests.txt
+++ b/src/cobalt/layout_tests/testdata/cobalt/layout_tests.txt
@@ -1,3 +1,4 @@
+1000-nested-elements
 block-and-inline-block-display
 changing-css-text-triggers-layout
 cobalt-oxide, file:///cobalt/browser/testdata/cobalt-oxide/cobalt-oxide.html
diff --git a/src/cobalt/media/can_play_type_handler.h b/src/cobalt/media/can_play_type_handler.h
new file mode 100644
index 0000000..7fdf060
--- /dev/null
+++ b/src/cobalt/media/can_play_type_handler.h
@@ -0,0 +1,41 @@
+/*
+ * Copyright 2016 Google Inc. All Rights Reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef COBALT_MEDIA_CAN_PLAY_TYPE_HANDLER_H_
+#define COBALT_MEDIA_CAN_PLAY_TYPE_HANDLER_H_
+
+#include <string>
+
+namespace cobalt {
+namespace media {
+
+class CanPlayTypeHandler {
+ public:
+  virtual std::string CanPlayType(const std::string& mime_type,
+                                  const std::string& key_system) = 0;
+
+ protected:
+  CanPlayTypeHandler() {}
+  ~CanPlayTypeHandler() {}
+
+ private:
+  DISALLOW_COPY_AND_ASSIGN(CanPlayTypeHandler);
+};
+
+}  // namespace media
+}  // namespace cobalt
+
+#endif  // COBALT_MEDIA_CAN_PLAY_TYPE_HANDLER_H_
diff --git a/src/cobalt/media/media.gyp b/src/cobalt/media/media.gyp
index a61b8a8..0713216 100644
--- a/src/cobalt/media/media.gyp
+++ b/src/cobalt/media/media.gyp
@@ -21,6 +21,7 @@
       'target_name': 'media',
       'type': 'static_library',
       'sources': [
+        'can_play_type_handler.h',
         'fetcher_buffered_data_source.cc',
         'fetcher_buffered_data_source.h',
         'media_module.h',
diff --git a/src/cobalt/media/media_module.h b/src/cobalt/media/media_module.h
index 933b214..c055bd6 100644
--- a/src/cobalt/media/media_module.h
+++ b/src/cobalt/media/media_module.h
@@ -26,6 +26,7 @@
 #include "base/memory/scoped_ptr.h"
 #include "cobalt/base/user_log.h"
 #include "cobalt/math/size.h"
+#include "cobalt/media/can_play_type_handler.h"
 #include "cobalt/media/web_media_player_factory.h"
 #include "cobalt/render_tree/image.h"
 #include "cobalt/render_tree/resource_provider.h"
@@ -38,17 +39,20 @@
 namespace media {
 
 // TODO: Collapse MediaModule into ShellMediaPlatform.
-class MediaModule : public WebMediaPlayerFactory,
+class MediaModule : public CanPlayTypeHandler,
+                    public WebMediaPlayerFactory,
                     public ::media::WebMediaPlayerDelegate {
  public:
   struct Options {
     Options()
         : use_audio_decoder_stub(false),
           use_null_audio_streamer(false),
-          use_video_decoder_stub(false) {}
+          use_video_decoder_stub(false),
+          disable_webm_vp9(false) {}
     bool use_audio_decoder_stub;
     bool use_null_audio_streamer;
     bool use_video_decoder_stub;
+    bool disable_webm_vp9;
   };
 
   typedef ::media::WebMediaPlayer WebMediaPlayer;
diff --git a/src/cobalt/media/media_module_starboard.cc b/src/cobalt/media/media_module_starboard.cc
index e8c2368..5e388a1 100644
--- a/src/cobalt/media/media_module_starboard.cc
+++ b/src/cobalt/media/media_module_starboard.cc
@@ -30,6 +30,7 @@
 #include "media/filters/shell_raw_video_decoder_stub.h"
 #include "media/filters/shell_video_decoder_impl.h"
 #include "media/player/web_media_player_impl.h"
+#include "starboard/media.h"
 
 namespace cobalt {
 namespace media {
@@ -45,6 +46,21 @@
                        const Options& options)
       : options_(options), media_platform_(resource_provider) {}
 
+  std::string CanPlayType(const std::string& mime_type,
+                          const std::string& key_system) OVERRIDE {
+    SbMediaSupportType type =
+        SbMediaCanPlayMimeAndKeySystem(mime_type.c_str(), key_system.c_str());
+    switch (type) {
+      case kSbMediaSupportTypeNotSupported:
+        return "";
+      case kSbMediaSupportTypeMaybe:
+        return "maybe";
+      case kSbMediaSupportTypeProbably:
+        return "probably";
+    }
+    NOTREACHED();
+    return "";
+  }
   scoped_ptr<WebMediaPlayer> CreateWebMediaPlayer(
       ::media::WebMediaPlayerClient* client) OVERRIDE {
     scoped_ptr<MessageLoopFactory> message_loop_factory(new MessageLoopFactory);
diff --git a/src/cobalt/media/media_module_stub.cc b/src/cobalt/media/media_module_stub.cc
index e2ddcfd..90813e1 100644
--- a/src/cobalt/media/media_module_stub.cc
+++ b/src/cobalt/media/media_module_stub.cc
@@ -16,6 +16,8 @@
 
 #include "cobalt/media/media_module_stub.h"
 
+#include <string>
+
 #include "base/compiler_specific.h"
 
 namespace cobalt {
@@ -95,6 +97,13 @@
 
 using ::media::WebMediaPlayer;
 
+std::string MediaModuleStub::CanPlayType(const std::string& mime_type,
+                                         const std::string& key_system) {
+  UNREFERENCED_PARAMETER(mime_type);
+  UNREFERENCED_PARAMETER(key_system);
+  return "";  // Cannot play.
+}
+
 scoped_ptr<WebMediaPlayer> MediaModuleStub::CreateWebMediaPlayer(
     ::media::WebMediaPlayerClient* client) {
   UNREFERENCED_PARAMETER(client);
diff --git a/src/cobalt/media/media_module_stub.h b/src/cobalt/media/media_module_stub.h
index 7be421c..a9b1036 100644
--- a/src/cobalt/media/media_module_stub.h
+++ b/src/cobalt/media/media_module_stub.h
@@ -17,6 +17,8 @@
 #ifndef COBALT_MEDIA_MEDIA_MODULE_STUB_H_
 #define COBALT_MEDIA_MEDIA_MODULE_STUB_H_
 
+#include <string>
+
 #include "cobalt/media/media_module.h"
 
 namespace cobalt {
@@ -26,6 +28,8 @@
  public:
   MediaModuleStub() {}
 
+  std::string CanPlayType(const std::string& mime_type,
+                          const std::string& key_system) OVERRIDE;
   scoped_ptr<WebMediaPlayer> CreateWebMediaPlayer(
       ::media::WebMediaPlayerClient* client) OVERRIDE;
 };
diff --git a/src/cobalt/renderer/rasterizer/skia/software_resource_provider.cc b/src/cobalt/renderer/rasterizer/skia/software_resource_provider.cc
index ee59b76..04ca7c1 100644
--- a/src/cobalt/renderer/rasterizer/skia/software_resource_provider.cc
+++ b/src/cobalt/renderer/rasterizer/skia/software_resource_provider.cc
@@ -28,7 +28,6 @@
 #include "third_party/skia/include/core/SkData.h"
 #include "third_party/skia/include/core/SkStream.h"
 #include "third_party/skia/include/core/SkTypeface.h"
-#include "third_party/skia/include/ports/SkFontMgr.h"
 
 using cobalt::render_tree::ImageData;
 
diff --git a/src/cobalt/script/mozjs/conversion_helpers.h b/src/cobalt/script/mozjs/conversion_helpers.h
index cf0206e..5aa53ed 100644
--- a/src/cobalt/script/mozjs/conversion_helpers.h
+++ b/src/cobalt/script/mozjs/conversion_helpers.h
@@ -34,6 +34,7 @@
 #include "cobalt/script/mozjs/union_type_conversion_forward.h"
 #include "third_party/mozjs/js/src/jsapi.h"
 #include "third_party/mozjs/js/src/jsproxy.h"
+#include "third_party/mozjs/js/src/jsstr.h"
 
 namespace cobalt {
 namespace script {
@@ -72,9 +73,21 @@
 // std::string -> JSValue
 inline void ToJSValue(JSContext* context, const std::string& in_string,
                       JS::MutableHandleValue out_value) {
+  size_t length = in_string.length();
+  jschar* inflated_buffer =
+      js::InflateUTF8String(context, in_string.c_str(), &length);
+  DCHECK(inflated_buffer);
+
+  if (!inflated_buffer) {
+    LOG(ERROR) << "Failed to inflate UTF8 string.";
+    out_value.setNull();
+    return;
+  }
+
   JS::RootedString rooted_string(
-      context,
-      JS_NewStringCopyN(context, in_string.c_str(), in_string.length()));
+      context, JS_NewUCStringCopyN(context, inflated_buffer, length));
+  js_free(inflated_buffer);
+
   out_value.set(JS::StringValue(rooted_string));
 }
 
@@ -380,7 +393,7 @@
   DCHECK_EQ(conversion_flags & ~kConversionFlagsObject, 0)
       << "Unexpected conversion flags found.";
   JS::RootedObject js_object(context);
-  if (value.isNull()) {
+  if (value.isNull() || value.isUndefined()) {
     if (!(conversion_flags & kConversionFlagNullable)) {
       exception_state->SetSimpleException(ExceptionState::kTypeError,
                                           kNotNullableType);
diff --git a/src/cobalt/script/mozjs/mozjs_global_object_proxy.cc b/src/cobalt/script/mozjs/mozjs_global_object_proxy.cc
index c56be2c..d25e1b7 100644
--- a/src/cobalt/script/mozjs/mozjs_global_object_proxy.cc
+++ b/src/cobalt/script/mozjs/mozjs_global_object_proxy.cc
@@ -208,9 +208,19 @@
   last_error_message_ = &error_message;
   JS::RootedObject global_object(
       context_, js::GetProxyTargetObject(global_object_proxy_));
-  bool success = JS_EvaluateScript(
-      context_, global_object, script.c_str(), script.size(),
-      location.file_path.c_str(), location.line_number, result_value.address());
+
+  size_t length = script.size();
+  jschar* inflated_buffer =
+      js::InflateUTF8String(context_, script.c_str(), &length);
+  DCHECK(inflated_buffer);
+  bool success = false;
+  if (inflated_buffer) {
+    success = JS_EvaluateUCScript(context_, global_object, inflated_buffer,
+                                  length, location.file_path.c_str(),
+                                  location.line_number, result_value.address());
+    js_free(inflated_buffer);
+  }
+
   if (out_result_utf8) {
     if (success) {
       MozjsExceptionState exception_state(context_);
diff --git a/src/cobalt/script/mozjs/util/exception_helpers.cc b/src/cobalt/script/mozjs/util/exception_helpers.cc
index 1c4b8ad..030f45a 100644
--- a/src/cobalt/script/mozjs/util/exception_helpers.cc
+++ b/src/cobalt/script/mozjs/util/exception_helpers.cc
@@ -46,10 +46,15 @@
     if (stack_trace[i].fun) {
       JS::RootedString rooted_string(context,
                                      JS_GetFunctionId(stack_trace[i].fun));
-      JS::RootedValue rooted_value(context, STRING_TO_JSVAL(rooted_string));
-      MozjsExceptionState exception_state(context);
-      FromJSValue(context, rooted_value, kNoConversionFlags, &exception_state,
-                  &sf.function_name);
+      if (rooted_string) {
+        JS::RootedValue rooted_value(context, STRING_TO_JSVAL(rooted_string));
+        MozjsExceptionState exception_state(context);
+        FromJSValue(context, rooted_value, kNoConversionFlags, &exception_state,
+                    &sf.function_name);
+      } else {
+        // anonymous function
+        sf.function_name = "(anonymous function)";
+      }
     }
     if (stack_trace[i].script) {
       sf.source_url = stack_trace[i].script->filename();
diff --git a/src/cobalt/system_window/starboard/system_window.cc b/src/cobalt/system_window/starboard/system_window.cc
index 111cf8b..7cd1178 100644
--- a/src/cobalt/system_window/starboard/system_window.cc
+++ b/src/cobalt/system_window/starboard/system_window.cc
@@ -35,8 +35,19 @@
 }  // namespace
 
 SystemWindowStarboard::SystemWindowStarboard(
+    base::EventDispatcher* event_dispatcher)
+    : SystemWindow(event_dispatcher),
+      window_(kSbWindowInvalid),
+      key_down_(false) {
+  window_ = SbWindowCreate(NULL);
+  DCHECK(SbWindowIsValid(window_));
+  DCHECK(!g_the_window) << "TODO: Support multiple SystemWindows.";
+  g_the_window = this;
+}
+
+SystemWindowStarboard::SystemWindowStarboard(
     base::EventDispatcher* event_dispatcher, const math::Size& window_size)
-    : SystemWindow(event_dispatcher, window_size),
+    : SystemWindow(event_dispatcher),
       window_(kSbWindowInvalid),
       key_down_(false) {
   SbWindowOptions options;
@@ -57,6 +68,12 @@
   SbWindowDestroy(window_);
 }
 
+math::Size SystemWindowStarboard::GetWindowSize() const {
+  SbWindowSize window_size;
+  SbWindowGetSize(window_, &window_size);
+  return math::Size(window_size.width, window_size.height);
+}
+
 SbWindow SystemWindowStarboard::GetSbWindow() { return window_; }
 
 void* SystemWindowStarboard::GetWindowHandle() {
@@ -140,9 +157,15 @@
 }
 
 scoped_ptr<SystemWindow> CreateSystemWindow(
-    base::EventDispatcher* event_dispatcher, const math::Size& window_size) {
-  return scoped_ptr<SystemWindow>(
-      new SystemWindowStarboard(event_dispatcher, window_size));
+    base::EventDispatcher* event_dispatcher,
+    const base::optional<math::Size>& window_size) {
+  if (window_size) {
+    return scoped_ptr<SystemWindow>(
+        new SystemWindowStarboard(event_dispatcher, *window_size));
+  } else {
+    return scoped_ptr<SystemWindow>(
+        new SystemWindowStarboard(event_dispatcher));
+  }
 }
 
 // Returns true if the event was handled.
diff --git a/src/cobalt/system_window/starboard/system_window.h b/src/cobalt/system_window/starboard/system_window.h
index efc6caa..7d6a76e 100644
--- a/src/cobalt/system_window/starboard/system_window.h
+++ b/src/cobalt/system_window/starboard/system_window.h
@@ -30,10 +30,13 @@
 
 class SystemWindowStarboard : public SystemWindow {
  public:
-  explicit SystemWindowStarboard(base::EventDispatcher* event_dispatcher,
-                                 const math::Size& window_size);
+  explicit SystemWindowStarboard(base::EventDispatcher* event_dispatcher);
+  SystemWindowStarboard(base::EventDispatcher* event_dispatcher,
+                        const math::Size& window_size);
   ~SystemWindowStarboard() OVERRIDE;
 
+  math::Size GetWindowSize() const OVERRIDE;
+
   // Returns a handle to the Starboard window object.
   SbWindow GetSbWindow();
 
diff --git a/src/cobalt/system_window/system_window.h b/src/cobalt/system_window/system_window.h
index 4054bc0..4695652 100644
--- a/src/cobalt/system_window/system_window.h
+++ b/src/cobalt/system_window/system_window.h
@@ -21,6 +21,7 @@
 
 #include "base/callback.h"
 #include "base/memory/scoped_ptr.h"
+#include "base/optional.h"
 #include "cobalt/base/event_dispatcher.h"
 #include "cobalt/math/size.h"
 
@@ -63,29 +64,32 @@
     DialogCallback callback;
   };
 
-  SystemWindow(base::EventDispatcher* event_dispatcher,
-               const math::Size& window_size)
-      : event_dispatcher_(event_dispatcher), window_size_(window_size) {}
+  explicit SystemWindow(base::EventDispatcher* event_dispatcher)
+      : event_dispatcher_(event_dispatcher) {}
   virtual ~SystemWindow();
 
   // Launches a system dialog.
   virtual void ShowDialog(const DialogOptions& options);
 
-  base::EventDispatcher* event_dispatcher() const { return event_dispatcher_; }
+  // Returns the dimensions of the window.
+  virtual math::Size GetWindowSize() const = 0;
 
-  const math::Size& window_size() const { return window_size_; }
+  base::EventDispatcher* event_dispatcher() const { return event_dispatcher_; }
 
  private:
   base::EventDispatcher* event_dispatcher_;
-  const math::Size window_size_;
 };
 
 // The implementation of this function should be platform specific, and will
 // create and return a platform-specific system window object. The system
 // window object routes callbacks for user input and provides the information
 // necessary to create a display render target for a graphics system.
-scoped_ptr<SystemWindow> CreateSystemWindow(base::EventDispatcher*,
-                                            const math::Size& window_size);
+// Explicitly setting a window size will result in the system attempting to
+// accommmodate the preferred size, but not all systems may be able to
+// fulfill the request.  |window_size| can be left blank to let the system
+// choose a default window size.
+scoped_ptr<SystemWindow> CreateSystemWindow(
+    base::EventDispatcher*, const base::optional<math::Size>& window_size);
 
 }  // namespace system_window
 }  // namespace cobalt
diff --git a/src/cobalt/system_window/win/system_window.cc b/src/cobalt/system_window/win/system_window.cc
index 4fc1029..09e4217 100644
--- a/src/cobalt/system_window/win/system_window.cc
+++ b/src/cobalt/system_window/win/system_window.cc
@@ -68,12 +68,22 @@
 }
 }  // namespace
 
-SystemWindowWin::SystemWindowWin(base::EventDispatcher* event_dispatcher,
-                                 const math::Size& window_size)
-    : SystemWindow(event_dispatcher, window_size),
+SystemWindowWin::SystemWindowWin(base::EventDispatcher* event_dispatcher)
+    : SystemWindow(event_dispatcher),
       thread(kThreadName),
       window_initialized(true, false),
-      window_handle_(NULL) {
+      window_handle_(NULL),
+      window_size_(math::Size(1920, 1080)) {
+  StartWindow();
+}
+
+SystemWindowWin::SystemWindowWin(base::EventDispatcher* event_dispatcher,
+                                 const math::Size& window_size)
+    : SystemWindow(event_dispatcher),
+      thread(kThreadName),
+      window_initialized(true, false),
+      window_handle_(NULL),
+      window_size_(window_size) {
   StartWindow();
 }
 
@@ -160,8 +170,8 @@
   window_handle_ = CreateWindowEx(
       WS_EX_APPWINDOW | WS_EX_WINDOWEDGE, kClassName, kWindowTitle,
       WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_OVERLAPPEDWINDOW, 0, 0,
-      window_size().width(), window_size().height(), NULL, NULL,
-      module_instance, NULL);
+      window_size_.width(), window_size_.height(), NULL, NULL, module_instance,
+      NULL);
   CHECK(window_handle_);
 
   ShowWindow(window_handle_, SW_SHOW);
@@ -181,9 +191,14 @@
 }
 
 scoped_ptr<SystemWindow> CreateSystemWindow(
-    base::EventDispatcher* event_dispatcher, const math::Size& window_size) {
-  return scoped_ptr<SystemWindow>(
-      new SystemWindowWin(event_dispatcher, window_size));
+    base::EventDispatcher* event_dispatcher,
+    const base::optional<math::Size>& window_size) {
+  if (window_size) {
+    return scoped_ptr<SystemWindow>(
+        new SystemWindowWin(event_dispatcher, *window_size));
+  } else {
+    return scoped_ptr<SystemWindow>(new SystemWindowWin(event_dispatcher));
+  }
 }
 
 }  // namespace system_window
diff --git a/src/cobalt/system_window/win/system_window.h b/src/cobalt/system_window/win/system_window.h
index 7025f00..69ac4e5 100644
--- a/src/cobalt/system_window/win/system_window.h
+++ b/src/cobalt/system_window/win/system_window.h
@@ -34,11 +34,14 @@
 // received and processed.
 class SystemWindowWin : public SystemWindow {
  public:
-  explicit SystemWindowWin(base::EventDispatcher* event_dispatcher,
-                           const math::Size& window_size);
+  explicit SystemWindowWin(base::EventDispatcher* event_dispatcher);
+  SystemWindowWin(base::EventDispatcher* event_dispatcher,
+                  const math::Size& window_size);
 
   ~SystemWindowWin() OVERRIDE;
 
+  math::Size GetWindowSize() const OVERRIDE { return window_size_; }
+
   HWND window_handle() const { return window_handle_; }
 
  protected:
@@ -56,6 +59,7 @@
   base::Thread thread;
   base::WaitableEvent window_initialized;
   HWND window_handle_;
+  math::Size window_size_;
 };
 
 }  // namespace system_window
diff --git a/src/cobalt/web_animations/animation.cc b/src/cobalt/web_animations/animation.cc
index 258854d..0c8a578 100644
--- a/src/cobalt/web_animations/animation.cc
+++ b/src/cobalt/web_animations/animation.cc
@@ -26,7 +26,9 @@
     : effect_(effect) {
   const KeyframeEffectReadOnly* keyframe_effect =
       base::polymorphic_downcast<const KeyframeEffectReadOnly*>(effect.get());
-  keyframe_effect->target()->Register(this);
+  if (keyframe_effect) {
+    keyframe_effect->target()->Register(this);
+  }
   set_timeline(timeline);
 }
 
@@ -34,17 +36,22 @@
   if (timeline_) {
     timeline_->Deregister(this);
   }
-  timeline->Register(this);
+
+  if (timeline) {
+    timeline->Register(this);
+  }
+
   timeline_ = timeline;
 }
 
 // https://www.w3.org/TR/2015/WD-web-animations-1-20150707/#playing-an-animation-section
 void Animation::Play() {
   // This is currently a simplified version of steps 8.2.
-  DCHECK(timeline_);
-  DCHECK(timeline_->current_time());
-  if (!data_.start_time()) {
-    set_start_time(timeline_->current_time());
+  if (timeline_) {
+    DCHECK(timeline_->current_time());
+    if (!data_.start_time()) {
+      set_start_time(timeline_->current_time());
+    }
   }
 
   UpdatePendingTasks();
@@ -103,7 +110,9 @@
   if (timeline_) {
     timeline_->Deregister(this);
   }
-  keyframe_effect->target()->Deregister(this);
+  if (keyframe_effect) {
+    keyframe_effect->target()->Deregister(this);
+  }
 }
 
 void Animation::UpdatePendingTasks() {
@@ -114,17 +123,24 @@
     // the "after phase".
     on_enter_after_phase_.reset();
   } else {
+    if (!effect_) {
+      return;
+    }
+
     base::TimeDelta local_time =
         base::TimeDelta::FromMillisecondsD(*local_time_in_ms);
+
     base::TimeDelta time_to_after_phase =
         effect_->timing()->data().time_until_after_phase(local_time);
     if (time_to_after_phase >= base::TimeDelta() &&
         time_to_after_phase != base::TimeDelta::Max()) {
       // Setup the "upon entering the after phase" event to fire at the
       // specified timeline time.
-      on_enter_after_phase_ = timeline_->QueueTask(
-          *data_.start_time() + time_to_after_phase,
-          base::Bind(&Animation::OnEnterAfterPhase, base::Unretained(this)));
+      if (timeline_) {
+        on_enter_after_phase_ = timeline_->QueueTask(
+            *data_.start_time() + time_to_after_phase,
+            base::Bind(&Animation::OnEnterAfterPhase, base::Unretained(this)));
+      }
     } else {
       // We are already in the after phase, so clear this task.
       on_enter_after_phase_.reset();
diff --git a/src/cobalt/webdriver/get_element_text_test.cc b/src/cobalt/webdriver/get_element_text_test.cc
index 07f2ce3..fd9881b 100644
--- a/src/cobalt/webdriver/get_element_text_test.cc
+++ b/src/cobalt/webdriver/get_element_text_test.cc
@@ -43,7 +43,8 @@
       : css_parser_(css_parser::Parser::Create()),
         dom_stat_tracker_(new dom::DomStatTracker("GetElementTextTest")),
         html_element_context_(NULL, css_parser_.get(), NULL, NULL, NULL, NULL,
-                              NULL, NULL, NULL, dom_stat_tracker_.get(), "") {}
+                              NULL, NULL, NULL, NULL, dom_stat_tracker_.get(),
+                              "") {}
 
   void SetUp() OVERRIDE {
     dom::Document::Options options;
diff --git a/src/cobalt/webdriver/is_displayed_test.cc b/src/cobalt/webdriver/is_displayed_test.cc
index 1b613f3..8953ec5 100644
--- a/src/cobalt/webdriver/is_displayed_test.cc
+++ b/src/cobalt/webdriver/is_displayed_test.cc
@@ -58,6 +58,7 @@
         dom_stat_tracker_(new dom::DomStatTracker("IsDisplayedTest")),
         html_element_context_(
             &fetcher_factory_, css_parser_.get(), dom_parser_.get(),
+            NULL /* can_play_type_handler  */,
             NULL /* web_media_player_factory */, &script_runner_,
             NULL /* media_source_registry */, resource_provider_stub_.get(),
             image_cache_.get(), NULL /* remote_font_cache */,
diff --git a/src/media/base/sbplayer_pipeline.cc b/src/media/base/sbplayer_pipeline.cc
index 7248c25..edc8565 100644
--- a/src/media/base/sbplayer_pipeline.cc
+++ b/src/media/base/sbplayer_pipeline.cc
@@ -582,8 +582,12 @@
   DCHECK(message_loop_->BelongsToCurrentThread());
 
   if (status == PIPELINE_OK) {
-    DCHECK(!audio_read_in_progress_);
-    DCHECK(!video_read_in_progress_);
+    if (audio_read_in_progress_ || video_read_in_progress_) {
+      message_loop_->PostTask(
+          FROM_HERE,
+          base::Bind(&SbPlayerPipeline::OnDemuxerSeeked, this, status));
+      return;
+    }
     ++ticket_;
     SbPlayerSeek(player_, seek_time_, ticket_);
   }
diff --git a/src/media/mp4/mp4_stream_parser.cc b/src/media/mp4/mp4_stream_parser.cc
index dbbc07b..a001872 100644
--- a/src/media/mp4/mp4_stream_parser.cc
+++ b/src/media/mp4/mp4_stream_parser.cc
@@ -502,10 +502,6 @@
     StreamParserBuffer::CopyFrom(&frame_buf[0], frame_buf.size(),
                                  runs_->is_keyframe());
 #endif
-  if (!stream_buf) {
-    DLOG(WARNING) << "Failed to create StreamParserBuffer";
-    return false;
-  }
 
   if (decrypt_config)
     stream_buf->SetDecryptConfig(decrypt_config.Pass());
diff --git a/src/media/player/can_play_type.cc b/src/media/player/can_play_type.cc
index 5dc1883..d3880ae 100644
--- a/src/media/player/can_play_type.cc
+++ b/src/media/player/can_play_type.cc
@@ -24,32 +24,9 @@
 #include "media/audio/shell_audio_streamer.h"
 #include "media/player/crypto/key_systems.h"
 #include "media/player/mime_util.h"
-#if defined(OS_STARBOARD)
-#include "starboard/media.h"
-#endif  // defined(OS_STARBOARD)
 
 namespace media {
 
-#if defined(OS_STARBOARD)
-
-std::string CanPlayType(const std::string& content_type,
-                        const std::string& key_system) {
-  SbMediaSupportType type =
-      SbMediaCanPlayMimeAndKeySystem(content_type.c_str(), key_system.c_str());
-  switch (type) {
-    case kSbMediaSupportTypeNotSupported:
-      return "";
-    case kSbMediaSupportTypeMaybe:
-      return "maybe";
-    case kSbMediaSupportTypeProbably:
-      return "probably";
-  }
-  NOTREACHED();
-  return "";
-}
-
-#else  // defined(OS_STARBOARD)
-
 namespace {
 
 bool ContainsAAC51(const std::vector<std::string>& codecs) {
@@ -177,6 +154,4 @@
   return kProbably;
 }
 
-#endif  // defined(OS_STARBOARD)
-
 }  // namespace media
diff --git a/src/media/webm/webm_cluster_parser.cc b/src/media/webm/webm_cluster_parser.cc
index 035963e..1bb9042 100644
--- a/src/media/webm/webm_cluster_parser.cc
+++ b/src/media/webm/webm_cluster_parser.cc
@@ -311,11 +311,6 @@
       StreamParserBuffer::CopyFrom(data, size, is_keyframe);
 #endif  // defined(__LB_SHELL__) || defined(COBALT)
 
-  if (!buffer) {
-    DLOG(WARNING) << "Failed to create StreamParserBuffer";
-    return false;
-  }
-
   // Every encrypted Block has a signal byte and IV prepended to it. Current
   // encrypted WebM request for comments specification is here
   // http://wiki.webmproject.org/encryption/webm-encryption-rfc
@@ -379,21 +374,24 @@
     buffer = StreamParserBuffer::CopyFrom(data + data_offset,
                                           size - data_offset, is_keyframe);
 #endif  // defined(__LB_SHELL__) || defined(COBALT)
-    if (!buffer) {
-      DLOG(WARNING) << "Failed to create StreamParserBuffer";
-      return false;
-    }
 
     // TODO(fgalligan): Revisit if DecryptConfig needs to be set on unencrypted
     // frames after the CDM API is finalized.
     // Unencrypted frames of potentially encrypted streams currently set
     // DecryptConfig.
-    buffer->SetDecryptConfig(scoped_ptr<DecryptConfig>(
-        new DecryptConfig(encryption_key_id, counter_block,
-#if !defined(__LB_SHELL__) && !defined(COBALT)
-                          data_offset,
-#endif  // !defined(__LB_SHELL__) && !defined(COBALT)
-                          subsample_entries)));
+    if (buffer) {
+      buffer->SetDecryptConfig(scoped_ptr<DecryptConfig>(
+          new DecryptConfig(encryption_key_id, counter_block,
+  #if !defined(__LB_SHELL__) && !defined(COBALT)
+                            data_offset,
+  #endif  // !defined(__LB_SHELL__) && !defined(COBALT)
+                            subsample_entries)));
+    }
+  }
+
+  if (!buffer) {
+    DLOG(WARNING) << "Failed to create StreamParserBuffer";
+    return false;
   }
 
   buffer->SetTimestamp(timestamp);
diff --git a/src/net/http/http_stream_factory.cc b/src/net/http/http_stream_factory.cc
index db13935..139083d 100644
--- a/src/net/http/http_stream_factory.cc
+++ b/src/net/http/http_stream_factory.cc
@@ -81,7 +81,7 @@
   if (protocol == ALTERNATE_PROTOCOL_BROKEN) {
     // This warning is not important for LbShell so we are going to disable it
     // since it produces considerable console spam
-#if !defined(__LB_SHELL__)
+#if !defined(__LB_SHELL__) && !defined(COBALT)
     // Currently, we only recognize the npn-spdy protocol.
     DLOG(WARNING) << kAlternateProtocolHeader
                   << " header has unrecognized protocol: "
diff --git a/src/starboard/client_porting/poem/string_poem.h b/src/starboard/client_porting/poem/string_poem.h
index 93cbcd2..1d9ee57 100644
--- a/src/starboard/client_porting/poem/string_poem.h
+++ b/src/starboard/client_porting/poem/string_poem.h
@@ -94,7 +94,7 @@
 #if defined(POEM_FULL_EMULATION) && (POEM_FULL_EMULATION)
 
 #define strlen(s) SbStringGetLength(s)
-#define strcpy(o, s) SbStringCopyUnsafe(dst, src)
+#define strcpy(o, s) SbStringCopyUnsafe(o, s)
 #define strncpy(o, s, ds) SbStringCopy(o, s, ds)
 #define strcat(o, s) PoemConcatUnsafe(o, s)
 #define strncat(o, s, ds) PoemConcat(o, s, ds)
diff --git a/src/starboard/event.h b/src/starboard/event.h
index 5c1db49..c602259 100644
--- a/src/starboard/event.h
+++ b/src/starboard/event.h
@@ -68,8 +68,8 @@
 
   // A navigational link has come from the system, and the application should
   // consider handling it by navigating to the corresponding application
-  // location. The contents of the link are application-specific.
-  // SbEventLinkData is passed as the data argument.
+  // location. The data argument is an application-specific, null-terminated
+  // string.
   kSbEventTypeLink,
 
   // The beginning of a vertical sync has been detected. This event is very
@@ -114,16 +114,6 @@
 // An ID that can be used to refer to a scheduled event.
 typedef uint32_t SbEventId;
 
-// Event data for kSbEventTypeLink and kSbEventTypeStart events.
-typedef struct SbEventLinkData {
-  // A buffer of data comprising the link information. The format of this data
-  // will be platform-specific.
-  const void* link_data;
-
-  // The number of bytes of data provided in link_data.
-  int link_data_size;
-} SbEventLinkData;
-
 // Event data for kSbEventTypeStart events.
 typedef struct SbEventStartData {
   // The command-line argument values (argv).
@@ -132,8 +122,8 @@
   // The command-line argument count (argc).
   int argument_count;
 
-  // The startup link data, if any.
-  SbEventLinkData link_data;
+  // The startup link, if any.
+  const char* link;
 } SbEventStartData;
 
 #define kSbEventIdInvalid (SbEventId)0
diff --git a/src/starboard/linux/shared/system_has_capability.cc b/src/starboard/linux/shared/system_has_capability.cc
index 2cad7c4..8503ef4 100644
--- a/src/starboard/linux/shared/system_has_capability.cc
+++ b/src/starboard/linux/shared/system_has_capability.cc
@@ -20,6 +20,8 @@
   switch (capability_id) {
     case kSbSystemCapabilityReversedEnterAndBack:
       return false;
+    case kSbSystemCapabilityCanQueryGPUMemoryStats:
+      return false;
   }
 
   SB_DLOG(WARNING) << "Unrecognized capability: " << capability_id;
diff --git a/src/starboard/linux/x64directfb/starboard_platform.gyp b/src/starboard/linux/x64directfb/starboard_platform.gyp
index bea20b6..9d95ec2 100644
--- a/src/starboard/linux/x64directfb/starboard_platform.gyp
+++ b/src/starboard/linux/x64directfb/starboard_platform.gyp
@@ -141,7 +141,8 @@
         '<(DEPTH)/starboard/shared/linux/socket_get_local_interface_address.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_random_data.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_stack.cc',
-        '<(DEPTH)/starboard/shared/linux/system_get_total_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_total_cpu_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_used_cpu_memory.cc',
         '<(DEPTH)/starboard/shared/linux/system_is_debugger_attached.cc',
         '<(DEPTH)/starboard/shared/linux/system_symbolize.cc',
         '<(DEPTH)/starboard/shared/linux/thread_get_id.cc',
@@ -305,6 +306,8 @@
         '<(DEPTH)/starboard/shared/stub/system_clear_platform_error.cc',
         '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
         '<(DEPTH)/starboard/shared/stub/system_raise_platform_error.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
       ],
       'include_dirs': [
         '/usr/include/directfb',
diff --git a/src/starboard/linux/x64x11/starboard_platform.gyp b/src/starboard/linux/x64x11/starboard_platform.gyp
index 3200d13..932e00e 100644
--- a/src/starboard/linux/x64x11/starboard_platform.gyp
+++ b/src/starboard/linux/x64x11/starboard_platform.gyp
@@ -104,7 +104,8 @@
         '<(DEPTH)/starboard/shared/linux/socket_get_local_interface_address.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_random_data.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_stack.cc',
-        '<(DEPTH)/starboard/shared/linux/system_get_total_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_total_cpu_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_used_cpu_memory.cc',
         '<(DEPTH)/starboard/shared/linux/system_is_debugger_attached.cc',
         '<(DEPTH)/starboard/shared/linux/system_symbolize.cc',
         '<(DEPTH)/starboard/shared/linux/thread_get_id.cc',
@@ -196,8 +197,8 @@
         '<(DEPTH)/starboard/shared/pthread/thread_join.cc',
         '<(DEPTH)/starboard/shared/pthread/thread_set_local_value.cc',
         '<(DEPTH)/starboard/shared/pthread/thread_yield.cc',
-        '<(DEPTH)/starboard/shared/signal/crash_signals_sigaction.cc',
         '<(DEPTH)/starboard/shared/signal/crash_signals.h',
+        '<(DEPTH)/starboard/shared/signal/crash_signals_sigaction.cc',
         '<(DEPTH)/starboard/shared/starboard/application.cc',
         '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_create.cc',
         '<(DEPTH)/starboard/shared/starboard/audio_sink/audio_sink_destroy.cc',
@@ -264,6 +265,8 @@
         '<(DEPTH)/starboard/shared/stub/drm_update_session.cc',
         '<(DEPTH)/starboard/shared/stub/media_is_supported.cc',
         '<(DEPTH)/starboard/shared/stub/system_clear_platform_error.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
         '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
         '<(DEPTH)/starboard/shared/stub/system_raise_platform_error.cc',
         '<(DEPTH)/starboard/shared/x11/application_x11.cc',
diff --git a/src/starboard/nplb/memory_map_test.cc b/src/starboard/nplb/memory_map_test.cc
index 7d84c50..53ccd50 100644
--- a/src/starboard/nplb/memory_map_test.cc
+++ b/src/starboard/nplb/memory_map_test.cc
@@ -50,9 +50,9 @@
 
 TEST(SbMemoryMapTest, DoesNotLeak) {
   // Map 4x the amount of system memory (sequentially, not at once).
-  int64_t bytes_mapped = SbSystemGetTotalMemory() / 4;
+  int64_t bytes_mapped = SbSystemGetTotalCPUMemory() / 4;
   for (int64_t total_bytes_mapped = 0;
-       total_bytes_mapped < SbSystemGetTotalMemory() * 4;
+       total_bytes_mapped < SbSystemGetTotalCPUMemory() * 4;
        total_bytes_mapped += bytes_mapped) {
     void* memory = SbMemoryMap(bytes_mapped, kSbMemoryMapProtectWrite, "test");
     ASSERT_NE(kFailed, memory);
diff --git a/src/starboard/nplb/nplb.gyp b/src/starboard/nplb/nplb.gyp
index ff62b59..5b66821 100644
--- a/src/starboard/nplb/nplb.gyp
+++ b/src/starboard/nplb/nplb.gyp
@@ -24,12 +24,12 @@
         'atomic_test.cc',
         'audio_sink_create_test.cc',
         'audio_sink_destroy_test.cc',
+        'audio_sink_get_max_channels_test.cc',
+        'audio_sink_get_nearest_supported_sample_frequency_test.cc',
         'audio_sink_helpers.cc',
         'audio_sink_helpers.h',
         'audio_sink_is_audio_frame_storage_type_supported_test.cc',
         'audio_sink_is_audio_sample_type_supported_test.cc',
-        'audio_sink_get_max_channels_test.cc',
-        'audio_sink_get_nearest_supported_sample_frequency_test.cc',
         'audio_sink_test.cc',
         'blitter_blit_rect_to_rect_test.cc',
         'blitter_blit_rect_to_rect_tiled_test.cc',
@@ -189,7 +189,10 @@
         'system_get_random_data_test.cc',
         'system_get_random_uint64_test.cc',
         'system_get_stack_test.cc',
-        'system_get_total_memory_test.cc',
+        'system_get_total_cpu_memory_test.cc',
+        'system_get_total_gpu_memory_test.cc',
+        'system_get_used_cpu_memory_test.cc',
+        'system_get_used_gpu_memory_test.cc',
         'system_has_capability_test.cc',
         'system_hide_splash_screen_test.cc',
         'system_is_debugger_attached_test.cc',
diff --git a/src/starboard/nplb/string_parse_double_test.cc b/src/starboard/nplb/string_parse_double_test.cc
index 1197167..600931a 100644
--- a/src/starboard/nplb/string_parse_double_test.cc
+++ b/src/starboard/nplb/string_parse_double_test.cc
@@ -166,7 +166,9 @@
   EXPECT_EQ(kDouble + 7, end);
 }
 
-TEST(SbStringParseDoubleTest, Small) {
+// Some platforms do not support denormals
+// Denormal support is unnecessary for Cobalt as of Sep 7, 2016
+TEST(SbStringParseDoubleTest, DISABLED_Small) {
   const char kDouble[] = "1e-310";
   const double kExpected = DBL_MIN;
   char* end = NULL;
@@ -176,7 +178,9 @@
   EXPECT_EQ(kDouble + 6, end);
 }
 
-TEST(SbStringParseDoubleTest, SmallNeg) {
+// Some platforms do not support denormals
+// Denormal support is unnecessary for Cobalt as of Sep 7, 2016
+TEST(SbStringParseDoubleTest, DISABLED_SmallNeg) {
   const char kDouble[] = "-1e-310";
   const double kExpected = -DBL_MIN;
   char* end = NULL;
diff --git a/src/starboard/nplb/system_get_total_memory_test.cc b/src/starboard/nplb/system_get_total_cpu_memory_test.cc
similarity index 82%
rename from src/starboard/nplb/system_get_total_memory_test.cc
rename to src/starboard/nplb/system_get_total_cpu_memory_test.cc
index e9b1762..591fd6f 100644
--- a/src/starboard/nplb/system_get_total_memory_test.cc
+++ b/src/starboard/nplb/system_get_total_cpu_memory_test.cc
@@ -1,4 +1,4 @@
-// Copyright 2015 Google Inc. All Rights Reserved.
+// Copyright 2016 Google Inc. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -19,9 +19,9 @@
 namespace nplb {
 namespace {
 
-TEST(SbSystemGetTotalMemoryTest, SunnyDay) {
+TEST(SbSystemGetTotalCPUMemoryTest, SunnyDay) {
   // We are currently expecting this number to be over 80 megabytes.
-  EXPECT_LE(SB_INT64_C(80) * 1024 * 1024, SbSystemGetTotalMemory());
+  EXPECT_LE(SB_INT64_C(80) * 1024 * 1024, SbSystemGetTotalCPUMemory());
 }
 
 }  // namespace
diff --git a/src/starboard/nplb/system_get_total_memory_test.cc b/src/starboard/nplb/system_get_total_gpu_memory_test.cc
similarity index 69%
copy from src/starboard/nplb/system_get_total_memory_test.cc
copy to src/starboard/nplb/system_get_total_gpu_memory_test.cc
index e9b1762..0cd7d9b 100644
--- a/src/starboard/nplb/system_get_total_memory_test.cc
+++ b/src/starboard/nplb/system_get_total_gpu_memory_test.cc
@@ -1,4 +1,4 @@
-// Copyright 2015 Google Inc. All Rights Reserved.
+// Copyright 2016 Google Inc. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -19,9 +19,12 @@
 namespace nplb {
 namespace {
 
-TEST(SbSystemGetTotalMemoryTest, SunnyDay) {
-  // We are currently expecting this number to be over 80 megabytes.
-  EXPECT_LE(SB_INT64_C(80) * 1024 * 1024, SbSystemGetTotalMemory());
+TEST(SbSystemGetTotalGPUMemoryTest, SunnyDay) {
+  if (SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats)) {
+    // If we claim to have GPU memory reporting capabilities, then this value
+    // should be larger than 0.
+    EXPECT_LT(0, SbSystemGetTotalCPUMemory());
+  }
 }
 
 }  // namespace
diff --git a/src/starboard/nplb/system_get_total_memory_test.cc b/src/starboard/nplb/system_get_used_cpu_memory_test.cc
similarity index 75%
copy from src/starboard/nplb/system_get_total_memory_test.cc
copy to src/starboard/nplb/system_get_used_cpu_memory_test.cc
index e9b1762..35f0301 100644
--- a/src/starboard/nplb/system_get_total_memory_test.cc
+++ b/src/starboard/nplb/system_get_used_cpu_memory_test.cc
@@ -1,4 +1,4 @@
-// Copyright 2015 Google Inc. All Rights Reserved.
+// Copyright 2016 Google Inc. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -19,9 +19,10 @@
 namespace nplb {
 namespace {
 
-TEST(SbSystemGetTotalMemoryTest, SunnyDay) {
-  // We are currently expecting this number to be over 80 megabytes.
-  EXPECT_LE(SB_INT64_C(80) * 1024 * 1024, SbSystemGetTotalMemory());
+TEST(SbSystemGetUsedCPUMemoryTest, SunnyDay) {
+  // We expect this number to be larger than 0, since at least this test is
+  // resident in process memory.
+  EXPECT_LT(0, SbSystemGetUsedCPUMemory());
 }
 
 }  // namespace
diff --git a/src/starboard/nplb/system_get_total_memory_test.cc b/src/starboard/nplb/system_get_used_gpu_memory_test.cc
similarity index 76%
copy from src/starboard/nplb/system_get_total_memory_test.cc
copy to src/starboard/nplb/system_get_used_gpu_memory_test.cc
index e9b1762..45c5d3e 100644
--- a/src/starboard/nplb/system_get_total_memory_test.cc
+++ b/src/starboard/nplb/system_get_used_gpu_memory_test.cc
@@ -1,4 +1,4 @@
-// Copyright 2015 Google Inc. All Rights Reserved.
+// Copyright 2016 Google Inc. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -19,9 +19,10 @@
 namespace nplb {
 namespace {
 
-TEST(SbSystemGetTotalMemoryTest, SunnyDay) {
-  // We are currently expecting this number to be over 80 megabytes.
-  EXPECT_LE(SB_INT64_C(80) * 1024 * 1024, SbSystemGetTotalMemory());
+TEST(SbSystemGetUsedGPUMemoryTest, SunnyDay) {
+  if (SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats)) {
+    EXPECT_LE(0, SbSystemGetUsedGPUMemory());
+  }
 }
 
 }  // namespace
diff --git a/src/starboard/nplb/system_has_capability_test.cc b/src/starboard/nplb/system_has_capability_test.cc
index 64382a4..6711150 100644
--- a/src/starboard/nplb/system_has_capability_test.cc
+++ b/src/starboard/nplb/system_has_capability_test.cc
@@ -26,11 +26,18 @@
   // Ensure that this doesn't crash, but we don't know if it should legitimately
   // be true or false.
   SbSystemHasCapability(kSbSystemCapabilityReversedEnterAndBack);
+  SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats);
 }
 
 TEST(SbSystemHasCapabilityTest, SunnyDayNoChange) {
-  bool a = SbSystemHasCapability(kSbSystemCapabilityReversedEnterAndBack);
+  bool a;
+
+  a = SbSystemHasCapability(kSbSystemCapabilityReversedEnterAndBack);
   EXPECT_EQ(a, SbSystemHasCapability(kSbSystemCapabilityReversedEnterAndBack));
+
+  a = SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats);
+  EXPECT_EQ(a,
+            SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats));
 }
 
 TEST(SbSystemHasCapabilityTest, RainyDayNoSuchCapability) {
diff --git a/src/starboard/raspi/1/starboard_platform.gyp b/src/starboard/raspi/1/starboard_platform.gyp
index e66dd31..d1b864c 100644
--- a/src/starboard/raspi/1/starboard_platform.gyp
+++ b/src/starboard/raspi/1/starboard_platform.gyp
@@ -111,7 +111,8 @@
         '<(DEPTH)/starboard/shared/linux/socket_get_local_interface_address.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_random_data.cc',
         '<(DEPTH)/starboard/shared/linux/system_get_stack.cc',
-        '<(DEPTH)/starboard/shared/linux/system_get_total_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_total_cpu_memory.cc',
+        '<(DEPTH)/starboard/shared/linux/system_get_used_cpu_memory.cc',
         '<(DEPTH)/starboard/shared/linux/system_is_debugger_attached.cc',
         '<(DEPTH)/starboard/shared/linux/system_symbolize.cc',
         '<(DEPTH)/starboard/shared/linux/thread_get_id.cc',
@@ -271,6 +272,8 @@
         '<(DEPTH)/starboard/shared/stub/drm_update_session.cc',
         '<(DEPTH)/starboard/shared/stub/media_is_supported.cc',
         '<(DEPTH)/starboard/shared/stub/system_clear_platform_error.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
         '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
         '<(DEPTH)/starboard/shared/stub/system_raise_platform_error.cc',
       ],
diff --git a/src/starboard/shared/linux/system_get_total_memory.cc b/src/starboard/shared/linux/system_get_total_cpu_memory.cc
similarity index 90%
rename from src/starboard/shared/linux/system_get_total_memory.cc
rename to src/starboard/shared/linux/system_get_total_cpu_memory.cc
index 5d2dfa9..53e4ab4 100644
--- a/src/starboard/shared/linux/system_get_total_memory.cc
+++ b/src/starboard/shared/linux/system_get_total_cpu_memory.cc
@@ -1,4 +1,4 @@
-// Copyright 2015 Google Inc. All Rights Reserved.
+// Copyright 2016 Google Inc. All Rights Reserved.
 //
 // Licensed under the Apache License, Version 2.0 (the "License");
 // you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@
 
 #include "starboard/log.h"
 
-int64_t SbSystemGetTotalMemory() {
+int64_t SbSystemGetTotalCPUMemory() {
   long pages = sysconf(_SC_PHYS_PAGES);     // NOLINT[runtime/int]
   long page_size = sysconf(_SC_PAGE_SIZE);  // NOLINT[runtime/int]
   if (pages == -1 || page_size == -1) {
diff --git a/src/starboard/shared/linux/system_get_used_cpu_memory.cc b/src/starboard/shared/linux/system_get_used_cpu_memory.cc
new file mode 100644
index 0000000..57c2b17
--- /dev/null
+++ b/src/starboard/shared/linux/system_get_used_cpu_memory.cc
@@ -0,0 +1,118 @@
+// Copyright 2016 Google Inc. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "starboard/system.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/sysinfo.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include "starboard/file.h"
+#include "starboard/log.h"
+#include "starboard/string.h"
+
+// We find the current amount of used memory on Linux by opening
+// '/proc/self/status' and scan the file for its "VmRSS" entry.  Essentially,
+// we need to parse a buffer that has the following format:
+//
+// xxxxxx:       45327 kB
+// yyyyyy:          23 kB
+// VmRSS:        87432 kB
+// zzzzzz:        3213 kB
+// ...
+//
+// And here, we would want to return the value 87432 * 1024.
+// See http://man7.org/linux/man-pages/man5/proc.5.html for more details.
+
+// Searches for the value of VmRSS and returns it.  Will modify |buffer| in
+// order to do so quickly and easily.
+int64_t SearchForVmRSSValue(char* buffer, size_t length) {
+  // Search for the string ""VmRSS:".
+  const char kSearchString[] = "\nVmRSS:";
+  enum State {
+    // We are currently searching for kSearchString
+    kSearchingForSearchString,
+    // We found the search string and are advancing through spaces/tabs until
+    // we see a number.
+    kAdvancingSpacesToNumber,
+    // We found the number and are now searching for the end of it.
+    kFindingEndOfNumber,
+  };
+  State state = kSearchingForSearchString;
+  const char* number_start = NULL;
+  for (size_t i = 0; i < length - sizeof(kSearchString); ++i) {
+    if (state == kSearchingForSearchString) {
+      if (SbStringCompare(&buffer[i], kSearchString,
+                          sizeof(kSearchString) - 1) == 0) {
+        // Advance until we find a number.
+        state = kAdvancingSpacesToNumber;
+        i += sizeof(kSearchString) - 2;
+      }
+    } else if (state == kAdvancingSpacesToNumber) {
+      if (buffer[i] >= '0' && buffer[i] <= '9') {
+        // We found the start of the number, record where that is and then
+        // continue searching for the end of the number.
+        number_start = &buffer[i];
+        state = kFindingEndOfNumber;
+      }
+    } else {
+      SB_DCHECK(state == kFindingEndOfNumber);
+      if (buffer[i] < '0' || buffer[i] > '9') {
+        // Drop a null at the end of the number so that we can call atoi() on
+        // it and return.
+        buffer[i] = '\0';
+        return SbStringAToI(number_start);
+      }
+    }
+  }
+
+  SB_LOG(ERROR) << "Could not find 'VmRSS:' in /proc/self/status.";
+  return 0;
+}
+
+int64_t SbSystemGetUsedCPUMemory() {
+  // Read our process' current physical memory usage from /proc/self/status.
+  // This requires a bit of parsing through the output to find the value for
+  // the "VmRSS" field which indicates used physical memory.
+  starboard::ScopedFile status_file("/proc/self/status",
+                                    kSbFileOpenOnly | kSbFileRead);
+  if (!status_file.IsValid()) {
+    SB_LOG(ERROR)
+        << "Error opening /proc/self/status in order to query self memory "
+           "usage.";
+    return 0;
+  }
+
+  // Read the entire file into memory.
+  const int kBufferSize = 2048;
+  char buffer[kBufferSize];
+  int remaining = kBufferSize;
+  char* output_pointer = buffer;
+  do {
+    int result = status_file.Read(output_pointer, remaining);
+    if (result <= 0)
+      break;
+
+    remaining -= result;
+    output_pointer += result;
+  } while (remaining);
+
+  // Return the result, multiplied by 1024 because it is given in kilobytes.
+  return SearchForVmRSSValue(buffer,
+                             static_cast<size_t>(output_pointer - buffer)) *
+         1024;
+}
diff --git a/src/starboard/shared/posix/socket_receive_from.cc b/src/starboard/shared/posix/socket_receive_from.cc
index e5d4747..6acea4c 100644
--- a/src/starboard/shared/posix/socket_receive_from.cc
+++ b/src/starboard/shared/posix/socket_receive_from.cc
@@ -58,7 +58,8 @@
       return static_cast<int>(bytes_read);
     }
 
-    if (errno != EAGAIN && errno != EWOULDBLOCK) {
+    if (errno != EAGAIN && errno != EWOULDBLOCK &&
+        socket->error != sbposix::TranslateSocketErrno(errno)) {
       SB_DLOG(ERROR) << "recv failed, errno = " << errno;
     }
     socket->error = sbposix::TranslateSocketErrno(errno);
@@ -81,7 +82,8 @@
       return static_cast<int>(bytes_read);
     }
 
-    if (errno != EAGAIN && errno != EWOULDBLOCK) {
+    if (errno != EAGAIN && errno != EWOULDBLOCK &&
+        socket->error != sbposix::TranslateSocketErrno(errno)) {
       SB_DLOG(ERROR) << "recvfrom failed, errno = " << errno;
     }
     socket->error = sbposix::TranslateSocketErrno(errno);
diff --git a/src/starboard/shared/starboard/application.cc b/src/starboard/shared/starboard/application.cc
index 7904ece..1482b1a 100644
--- a/src/starboard/shared/starboard/application.cc
+++ b/src/starboard/shared/starboard/application.cc
@@ -43,8 +43,7 @@
   SbEventStartData start_data;
   start_data.argument_values = argv;
   start_data.argument_count = argc;
-  start_data.link_data.link_data = NULL;
-  start_data.link_data.link_data_size = 0;
+  start_data.link = NULL;
   Dispatch(kSbEventTypeStart, &start_data, NULL);
 }
 
diff --git a/src/starboard/shared/stub/system_get_total_memory.cc b/src/starboard/shared/stub/system_get_total_cpu_memory.cc
similarity index 94%
rename from src/starboard/shared/stub/system_get_total_memory.cc
rename to src/starboard/shared/stub/system_get_total_cpu_memory.cc
index 8fb7b53..534b5c4 100644
--- a/src/starboard/shared/stub/system_get_total_memory.cc
+++ b/src/starboard/shared/stub/system_get_total_cpu_memory.cc
@@ -14,6 +14,6 @@
 
 #include "starboard/system.h"
 
-int64_t SbSystemGetTotalMemory() {
+int64_t SbSystemGetTotalCPUMemory() {
   return 0;
 }
diff --git a/src/starboard/shared/stub/system_get_total_memory.cc b/src/starboard/shared/stub/system_get_total_gpu_memory.cc
similarity index 94%
copy from src/starboard/shared/stub/system_get_total_memory.cc
copy to src/starboard/shared/stub/system_get_total_gpu_memory.cc
index 8fb7b53..93d35a1 100644
--- a/src/starboard/shared/stub/system_get_total_memory.cc
+++ b/src/starboard/shared/stub/system_get_total_gpu_memory.cc
@@ -14,6 +14,6 @@
 
 #include "starboard/system.h"
 
-int64_t SbSystemGetTotalMemory() {
+int64_t SbSystemGetTotalGPUMemory() {
   return 0;
 }
diff --git a/src/starboard/shared/stub/system_get_total_memory.cc b/src/starboard/shared/stub/system_get_used_cpu_memory.cc
similarity index 94%
copy from src/starboard/shared/stub/system_get_total_memory.cc
copy to src/starboard/shared/stub/system_get_used_cpu_memory.cc
index 8fb7b53..4849b4e 100644
--- a/src/starboard/shared/stub/system_get_total_memory.cc
+++ b/src/starboard/shared/stub/system_get_used_cpu_memory.cc
@@ -14,6 +14,6 @@
 
 #include "starboard/system.h"
 
-int64_t SbSystemGetTotalMemory() {
+int64_t SbSystemGetUsedCPUMemory() {
   return 0;
 }
diff --git a/src/starboard/shared/stub/system_get_total_memory.cc b/src/starboard/shared/stub/system_get_used_gpu_memory.cc
similarity index 94%
copy from src/starboard/shared/stub/system_get_total_memory.cc
copy to src/starboard/shared/stub/system_get_used_gpu_memory.cc
index 8fb7b53..6e19b85 100644
--- a/src/starboard/shared/stub/system_get_total_memory.cc
+++ b/src/starboard/shared/stub/system_get_used_gpu_memory.cc
@@ -14,6 +14,6 @@
 
 #include "starboard/system.h"
 
-int64_t SbSystemGetTotalMemory() {
+int64_t SbSystemGetUsedGPUMemory() {
   return 0;
 }
diff --git a/src/starboard/stub/starboard_platform.gyp b/src/starboard/stub/starboard_platform.gyp
index 21054dc..e07af31 100644
--- a/src/starboard/stub/starboard_platform.gyp
+++ b/src/starboard/stub/starboard_platform.gyp
@@ -184,7 +184,10 @@
         '<(DEPTH)/starboard/shared/stub/system_get_random_data.cc',
         '<(DEPTH)/starboard/shared/stub/system_get_random_uint64.cc',
         '<(DEPTH)/starboard/shared/stub/system_get_stack.cc',
-        '<(DEPTH)/starboard/shared/stub/system_get_total_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_total_cpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_total_gpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_used_cpu_memory.cc',
+        '<(DEPTH)/starboard/shared/stub/system_get_used_gpu_memory.cc',
         '<(DEPTH)/starboard/shared/stub/system_has_capability.cc',
         '<(DEPTH)/starboard/shared/stub/system_hide_splash_screen.cc',
         '<(DEPTH)/starboard/shared/stub/system_is_debugger_attached.cc',
diff --git a/src/starboard/system.h b/src/starboard/system.h
index 957719a..c52a4e1 100644
--- a/src/starboard/system.h
+++ b/src/starboard/system.h
@@ -142,6 +142,12 @@
 typedef enum SbSystemCapabilityId {
   // Whether this system has reversed Enter and Back keys.
   kSbSystemCapabilityReversedEnterAndBack,
+
+  // Whether this system has the ability to report on GPU memory usage.
+  // If (and only if) a system has this capcability will
+  // SbSystemGetTotalGPUMemory() and SbSystemGetUsedGPUMemory() be valid to
+  // call.
+  kSbSystemCapabilityCanQueryGPUMemoryStats,
 } SbSystemCapabilityId;
 
 // Enumeration of possible values for the |type| parameter passed to  the
@@ -241,10 +247,27 @@
 // sandboxed limit.
 SB_EXPORT int SbSystemGetNumberOfProcessors();
 
-// Gets the total memory potentially available to this application. If the
-// process is sandboxed to a maximum allowable limit, it will return the lesser
-// of the physical and sandbox limits.
-SB_EXPORT int64_t SbSystemGetTotalMemory();
+// Gets the total CPU memory (in bytes) potentially available to this
+// application. If the process is sandboxed to a maximum allowable limit, it
+// will return the lesser of the physical and sandbox limits.
+SB_EXPORT int64_t SbSystemGetTotalCPUMemory();
+
+// Returns the total physical CPU memory (in bytes) used by this application.
+// This value should always be less than (or in particularly exciting
+// situations, equal to) SbSystemGetTotalCPUMemory().
+SB_EXPORT int64_t SbSystemGetUsedCPUMemory();
+
+// Returns the total GPU memory available (in bytes) for use by this
+// application.
+// This function may only be called if true is the return value for calls to
+// SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats).
+SB_EXPORT int64_t SbSystemGetTotalGPUMemory();
+
+// Returns the current amount of GPU memory (in bytes) that is currently being
+// used by this application.
+// This function may only be called if true is the return value for calls to
+// SbSystemHasCapability(kSbSystemCapabilityCanQueryGPUMemoryStats).
+SB_EXPORT int64_t SbSystemGetUsedGPUMemory();
 
 // Returns the type of the device.
 SB_EXPORT SbSystemDeviceType SbSystemGetDeviceType();
diff --git a/src/starboard/user.h b/src/starboard/user.h
index bf9a5d4..04443ee 100644
--- a/src/starboard/user.h
+++ b/src/starboard/user.h
@@ -108,55 +108,6 @@
                                  SbUserPropertyId property_id,
                                  char* out_value,
                                  int value_size);
-
-#if SB_HAS(USER_APPLICATION_LINKING_SUPPORT)
-// Initiates a process to link |user| with a per-application authentication
-// token. On success, |out_token| is populated with the authentication token
-// and |out_expiry| is set to the number of seconds until the token expires. An
-// expiration of 0 indicates that the token never expires.
-// This call will block until the linking process is complete, which may involve
-// user input.
-// After this call completes successfully, subsequent calls to
-// SbUserRequestAuthenticationToken will return valid tokens.
-// Returns false if |user| is invalid, |token_results| is NULL,
-// |token_results.token_buffer| is NULL or if the token is larger than
-// |token_results.token_buffer_size|.
-// Returns true if process to link the token succeeded, and false if the process
-// failed for any reason including user cancellation.
-SB_EXPORT bool SbUserRequestApplicationLinking(
-    SbUser user,
-    SbUserApplicationTokenResults* token_results);
-
-// Remove the link between |user| and the per-application authentication token.
-// This call will block until the linking process is complete, which may involve
-// user input.
-// After this call completes successfully, subsequent calls to
-// SbUserRequestAuthenticationToken will fail.
-// Returns false if |user| is invalid.
-// Returns true if the process to unlink the token succeeded. Returns false if
-// the process failed for any reason including user cancellation.
-SB_EXPORT bool SbUserRequestApplicationUnlinking(SbUser user);
-
-// Requests a new per-application authentication token. On success, |out_token|
-// is populated with the authentication token and |out_expiry| is set to the
-// number of seconds until the token expires. An expiration of 0 indicates that
-// the token never expires.
-// This call will block until the token has been received.
-// Returns false if |user| is invalid, |out_token| or |out_expiration| are NULL,
-// or if the token is larger than |out_token_size|.
-// Returns false if the user account is not linked with an application. In this
-// case, SbUserRequestApplicationLinking should be called.
-// Returns true if process to link the token succeeded, and false if the process
-// failed for any reason including user cancellation.
-SB_EXPORT bool SbUserRequestAuthenticationToken(
-    SbUser user,
-    SbUserApplicationTokenResults* token_results);
-
-// Gets the maximum size of an authentication token as returned by
-// SbUserRequestApplicationLinking and SbUserRequestAuthenticationToken.
-SB_EXPORT size_t SbUserMaxAuthenticationTokenSizeInBytes();
-#endif  // SB_HAS(USER_APPLICATION_LINKING_SUPPORT)
-
 #ifdef __cplusplus
 }  // extern "C"
 #endif
diff --git a/src/third_party/WebKit/Source/WTF/wtf/RAMSize.cpp b/src/third_party/WebKit/Source/WTF/wtf/RAMSize.cpp
index 5a4c3b8..97f3c55 100644
--- a/src/third_party/WebKit/Source/WTF/wtf/RAMSize.cpp
+++ b/src/third_party/WebKit/Source/WTF/wtf/RAMSize.cpp
@@ -98,7 +98,7 @@
         return ramSizeGuess;
     return mst.st_size;
 #elif OS(STARBOARD)
-    return SbSystemGetTotalMemory();
+    return SbSystemGetTotalCPUMemory();
 #endif
 }
 
diff --git a/src/third_party/mozjs/js/src/shell/js.cpp b/src/third_party/mozjs/js/src/shell/js.cpp
index cc11b09..7b1cf6b 100644
--- a/src/third_party/mozjs/js/src/shell/js.cpp
+++ b/src/third_party/mozjs/js/src/shell/js.cpp
@@ -80,6 +80,15 @@
 #include "TraceLogging.h"
 #endif
 
+#if defined(DEBUG) && defined(STARBOARD)
+// On Starboard platforms, DEBUG will get #undef'd when we #include zlib.h
+#define STARBOARD_DEBUG
+#endif
+
+#ifdef USE_ZLIB
+#include "zlib.h"
+#endif
+
 using namespace js;
 using namespace js::cli;
 
@@ -172,7 +181,7 @@
 static bool compileOnly = false;
 static bool fuzzingSafe = false;
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
 static bool OOM_printAllocationCount = false;
 #endif
 
@@ -1684,7 +1693,7 @@
     return true;
 }
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
 
 static void
 UpdateSwitchTableBounds(JSContext *cx, HandleScript script, unsigned offset,
@@ -3172,7 +3181,7 @@
     ParseNode *pn = parser.parse(NULL);
     if (!pn)
         return false;
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
     DumpParseTree(pn);
     fputc('\n', stderr);
 #endif
@@ -3510,7 +3519,7 @@
         return false;
     }
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
     cx->stackIterAssertionEnabled = JSVAL_TO_BOOLEAN(JS_ARGV(cx, vp)[0]);
 #endif
 
@@ -3649,7 +3658,7 @@
 "throwError()",
 "  Throw an error from JS_ReportError."),
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
     JS_FN_HELP("disassemble", DisassembleToString, 1, 0,
 "disassemble([fun])",
 "  Return the disassembly for the given function."),
@@ -3751,7 +3760,7 @@
 "  Create object with resolve hook that copies properties\n"
 "  from src. If proto is omitted, use Object.prototype."),
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
     JS_FN_HELP("arrayInfo", js_ArrayInfo, 1, 0,
 "arrayInfo(a1, a2, ...)",
 "  Report statistics about arrays."),
@@ -4531,7 +4540,7 @@
 static JSBool
 dom_genericMethod(JSContext *cx, unsigned argc, JS::Value *vp);
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
 static JSClass *GetDomClass();
 #endif
 
@@ -4622,7 +4631,7 @@
     JSCLASS_NO_INTERNAL_MEMBERS
 };
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
 static JSClass *GetDomClass() {
     return &dom_class;
 }
@@ -5245,7 +5254,7 @@
         || !op.addBoolOption('a', "always-mjit", "No-op (still used by fuzzers)")
         || !op.addBoolOption('D', "dump-bytecode", "Dump bytecode with exec count for all scripts")
         || !op.addBoolOption('b', "print-timing", "Print sub-ms runtime for each file that's run")
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
         || !op.addBoolOption('O', "print-alloc", "Print the number of allocations at exit")
 #endif
         || !op.addOptionalStringArg("script", "A script to execute (after all options)")
@@ -5325,7 +5334,7 @@
     if (op.getHelpOption())
         return EXIT_SUCCESS;
 
-#ifdef DEBUG
+#if defined(DEBUG) || defined(STARBOARD_DEBUG)
     /*
      * Process OOM options as early as possible so that we can observe as many
      * allocations as possible.
@@ -5376,7 +5385,7 @@
 
     result = Shell(cx, &op, envp);
 
-#ifdef DEBUG
+#if defined(DEBUG) && !defined(JS_USE_CUSTOM_ALLOCATOR)
     if (OOM_printAllocationCount)
         printf("OOM max count: %u\n", OOM_counter);
 #endif
