Merge branch 'wip-MDL-55127_master' of https://github.com/dg711/moodle
authorDan Poltawski <dan@moodle.com>
Tue, 23 Aug 2016 10:12:46 +0000 (11:12 +0100)
committerDan Poltawski <dan@moodle.com>
Tue, 23 Aug 2016 10:12:46 +0000 (11:12 +0100)
73 files changed:
admin/settings/security.php
admin/settings/server.php
backup/util/dbops/restore_dbops.class.php
blocks/rss_client/templates/feed.mustache
blog/rsslib.php
lang/en/admin.php
lib/accesslib.php
lib/behat/behat_base.php
lib/behat/lib.php
lib/classes/session/manager.php
lib/classes/task/stats_cron_task.php
lib/db/install.xml
lib/db/tasks.php
lib/db/upgrade.php
lib/sessionlib.php
lib/setup.php
lib/statslib.php
lib/testing/classes/util.php
lib/tests/accesslib_test.php
lib/tests/behat/behat_hooks.php
lib/tests/sessionlib_test.php
lib/tests/statslib_test.php
lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-debug.js
lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-min.js
lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception.js
lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-debug.js
lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-min.js
lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception.js
lib/yui/src/notification/js/ajaxexception.js
lib/yui/src/notification/js/exception.js
mod/choice/mod_form.php
mod/forum/classes/subscriptions.php
mod/forum/index.php
mod/forum/tests/subscriptions_test.php
mod/lesson/backup/moodle2/restore_lesson_activity_task.class.php
mod/lesson/backup/moodle2/restore_lesson_stepslib.php
mod/quiz/edit_rest.php
mod/scorm/backup/moodle1/lib.php
mod/scorm/backup/moodle2/backup_scorm_stepslib.php
mod/scorm/backup/moodle2/restore_scorm_stepslib.php
mod/scorm/classes/external.php
mod/scorm/db/install.xml
mod/scorm/db/upgrade.php
mod/scorm/lang/en/scorm.php
mod/scorm/lib.php
mod/scorm/mod_form.php
mod/scorm/tests/behat/completion_condition_require_status.feature [new file with mode: 0644]
mod/scorm/tests/externallib_test.php
mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip [new file with mode: 0644]
mod/scorm/tests/packages/readme_moodle.txt
mod/scorm/version.php
mod/wiki/create_form.php
mod/wiki/lib.php
mod/wiki/locallib.php
mod/wiki/pagelib.php
mod/workshop/form/accumulative/assessment_form.php
mod/workshop/form/accumulative/lang/en/deprecated.txt [new file with mode: 0644]
mod/workshop/form/accumulative/lang/en/workshopform_accumulative.php
mod/workshop/form/comments/assessment_form.php
mod/workshop/form/comments/lang/en/deprecated.txt [new file with mode: 0644]
mod/workshop/form/comments/lang/en/workshopform_comments.php
mod/workshop/form/numerrors/assessment_form.php
mod/workshop/form/numerrors/lang/en/deprecated.txt [new file with mode: 0644]
mod/workshop/form/numerrors/lang/en/workshopform_numerrors.php
mod/workshop/lang/en/deprecated.txt [new file with mode: 0644]
mod/workshop/lang/en/workshop.php
question/category_class.php
question/tests/generator/lib.php
report/security/lang/en/report_security.php
report/security/locallib.php
theme/bootstrapbase/less/moodle/core.less
theme/bootstrapbase/style/moodle.css
version.php

index 00c9429..946abbd 100644 (file)
@@ -109,7 +109,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
     // "httpsecurity" settingpage
     $temp = new admin_settingpage('httpsecurity', new lang_string('httpsecurity', 'admin'));
     $temp->add(new admin_setting_configcheckbox('loginhttps', new lang_string('loginhttps', 'admin'), new lang_string('configloginhttps', 'admin'), 0));
-    $temp->add(new admin_setting_configcheckbox('cookiesecure', new lang_string('cookiesecure', 'admin'), new lang_string('configcookiesecure', 'admin'), 0));
+    $temp->add(new admin_setting_configcheckbox('cookiesecure', new lang_string('cookiesecure', 'admin'), new lang_string('configcookiesecure', 'admin'), 1));
     $temp->add(new admin_setting_configcheckbox('cookiehttponly', new lang_string('cookiehttponly', 'admin'), new lang_string('configcookiehttponly', 'admin'), 0));
     $temp->add(new admin_setting_configcheckbox('allowframembedding', new lang_string('allowframembedding', 'admin'), new lang_string('allowframembedding_help', 'admin'), 0));
     $temp->add(new admin_setting_configcheckbox('loginpasswordautocomplete', new lang_string('loginpasswordautocomplete', 'admin'), new lang_string('loginpasswordautocomplete_help', 'admin'), 0));
index 548031b..8ef94a7 100644 (file)
@@ -79,7 +79,6 @@ $temp->add(new admin_setting_configselect('statsmaxruntime', new lang_string('st
                                                                                                                                                             60*60*7 => '7 '.new lang_string('hours'),
                                                                                                                                                             60*60*8 => '8 '.new lang_string('hours') )));
 $temp->add(new admin_setting_configtext('statsruntimedays', new lang_string('statsruntimedays', 'admin'), new lang_string('configstatsruntimedays', 'admin'), 31, PARAM_INT));
-$temp->add(new admin_setting_configtime('statsruntimestarthour', 'statsruntimestartminute', new lang_string('statsruntimestart', 'admin'), new lang_string('configstatsruntimestart', 'admin'), array('h' => 0, 'm' => 0)));
 $temp->add(new admin_setting_configtext('statsuserthreshold', new lang_string('statsuserthreshold', 'admin'), new lang_string('configstatsuserthreshold', 'admin'), 0, PARAM_INT));
 $ADMIN->add('server', $temp);
 
index 6d48d36..a4c7075 100644 (file)
@@ -795,7 +795,7 @@ abstract class restore_dbops {
                      // Prepare the query
                      list($stamp_sql, $stamp_params) = $DB->get_in_or_equal($stamps);
                      list($context_sql, $context_params) = $DB->get_in_or_equal($contexts);
-                     $sql = "SELECT contextid
+                     $sql = "SELECT DISTINCT contextid
                                FROM {question_categories}
                               WHERE stamp $stamp_sql
                                 AND contextid $context_sql";
index ad9ae3e..a69f3e8 100644 (file)
@@ -66,7 +66,7 @@
 
 {{$title}}
     {{#title}}
-        <div class="title">{{feedtitle}}</div>
+        <div class="title">{{title}}</div>
     {{/title}}
 {{/title}}
 
index 366c5cd..760a0ea 100644 (file)
@@ -22,6 +22,8 @@
  * @copyright  2010 Andrew Davis
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
+defined('MOODLE_INTERNAL') || die();
+
 require_once($CFG->dirroot.'/lib/rsslib.php');
 require_once($CFG->dirroot .'/blog/lib.php');
 
index 3011ae5..aa197d7 100644 (file)
@@ -151,7 +151,7 @@ $string['configbloglevel'] = 'This setting allows you to restrict the level to w
 $string['configcalendarcustomexport'] = 'Enable custom date range export of calendar';
 $string['configcalendarexportsalt'] = 'This random text is used for improving of security of authentication tokens used for exporting of calendars. Please note that all current tokens are invalidated if you change this hash salt.';
 $string['configcookiehttponly'] = 'Enables new PHP 5.2.0 feature - browsers are instructed to send cookie with real http requests only, cookies should not be accessible by scripting languages. This is not supported in all browsers and it may not be fully compatible with current code. It helps to prevent some types of XSS attacks.';
-$string['configcookiesecure'] = 'If server is accepting only https connections it is recommended to enable sending of secure cookies. If enabled please make sure that web server is not accepting http:// or set up permanent redirection to https:// address. When <em>wwwroot</em> address does not start with https:// this setting is turned off automatically.';
+$string['configcookiesecure'] = 'If server is accepting only https connections it is recommended to enable sending of secure cookies. If enabled please make sure that web server is not accepting http:// or set up permanent redirection to https:// address and ideally send HSTS headers. When <em>wwwroot</em> address does not start with https:// this setting is ignored.';
 $string['configcountry'] = 'If you set a country here, then this country will be selected by default on new user accounts.  To force users to choose a country, just leave this unset.';
 $string['configcourseoverviewfilesext'] = 'A comma-separated list of allowed course summary files extensions.';
 $string['configcourseoverviewfileslimit'] = 'The maximum number of files that can be attached to a course summary.';
index a2c4eb8..19033df 100644 (file)
@@ -4208,15 +4208,32 @@ function get_role_users($roleid, context $context, $parent = false, $fields = ''
     // Adding the fields from $sort that are not present in $fields.
     $sortarray = preg_split('/,\s*/', $sort);
     $fieldsarray = preg_split('/,\s*/', $fields);
+
+    // Discarding aliases from the fields.
+    $fieldnames = array();
+    foreach ($fieldsarray as $key => $field) {
+        list($fieldnames[$key]) = explode(' ', $field);
+    }
+
     $addedfields = array();
     foreach ($sortarray as $sortfield) {
         // Throw away any additional arguments to the sort (e.g. ASC/DESC).
-        list ($sortfield) = explode(' ', $sortfield);
-        if (!in_array($sortfield, $fieldsarray)) {
+        list($sortfield) = explode(' ', $sortfield);
+        list($tableprefix) = explode('.', $sortfield);
+        $fieldpresent = false;
+        foreach ($fieldnames as $fieldname) {
+            if ($fieldname === $sortfield || $fieldname === $tableprefix.'.*') {
+                $fieldpresent = true;
+                break;
+            }
+        }
+
+        if (!$fieldpresent) {
             $fieldsarray[] = $sortfield;
             $addedfields[] = $sortfield;
         }
     }
+
     $fields = implode(', ', $fieldsarray);
     if (!empty($addedfields)) {
         $addedfields = implode(', ', $addedfields);
index 5276703..3fd7d2b 100644 (file)
@@ -764,6 +764,17 @@ class behat_base extends Behat\MinkExtension\Context\RawMinkContext {
             // Joined xpath expression. Most of the time there will be no exceptions, so this pre-check
             // is faster than to send the 4 xpath queries for each step.
             if (!$this->getSession()->getDriver()->find($joinedxpath)) {
+                // Check if we have recorded any errors in driver process.
+                $phperrors = behat_get_shutdown_process_errors();
+                if (!empty($phperrors)) {
+                    foreach ($phperrors as $error) {
+                        $errnostring = behat_get_error_string($error['type']);
+                        $msgs[] = $errnostring . ": " .$error['message'] . " at " . $error['file'] . ": " . $error['line'];
+                    }
+                    $msg = "PHP errors found:\n" . implode("\n", $msgs);
+                    throw new \Exception(htmlentities($msg));
+                }
+
                 return;
             }
 
@@ -776,8 +787,20 @@ class behat_base extends Behat\MinkExtension\Context\RawMinkContext {
                 if (empty($errorinfoboxes)) {
                     $errorinfoboxes = $this->getSession()->getPage()->findAll('css', 'div.notifytiny');
                 }
-                $errorinfo = $this->get_debug_text($errorinfoboxes[0]->getHtml()) . "\n" .
-                    $this->get_debug_text($errorinfoboxes[1]->getHtml());
+
+                // If errorinfoboxes is empty, try find ajax/JS exception in dialogue.
+                if (empty($errorinfoboxes)) {
+                    $errorinfoboxes = $this->getSession()->getPage()->findAll('css', 'div.moodle-exception-message');
+
+                    // If ajax/JS exception.
+                    if ($errorinfoboxes) {
+                        $errorinfo = $this->get_debug_text($errorinfoboxes[0]->getHtml());
+                    }
+
+                } else {
+                    $errorinfo = $this->get_debug_text($errorinfoboxes[0]->getHtml()) . "\n" .
+                        $this->get_debug_text($errorinfoboxes[1]->getHtml());
+                }
 
                 $msg = "Moodle exception: " . $errormsg->getText() . "\n" . $errorinfo;
                 throw new \Exception(html_entity_decode($msg));
index 201831f..fa1a7ff 100644 (file)
@@ -84,6 +84,36 @@ function behat_error($errorcode, $text = '') {
     testing_error($errorcode, $text);
 }
 
+/**
+ * Return logical error string.
+ *
+ * @param int $errtype php error type.
+ * @return string string which will be returned.
+ */
+function behat_get_error_string($errtype) {
+    switch ($errtype) {
+        case E_USER_ERROR:
+            $errnostr = 'Fatal error';
+            break;
+        case E_WARNING:
+        case E_USER_WARNING:
+            $errnostr = 'Warning';
+            break;
+        case E_NOTICE:
+        case E_USER_NOTICE:
+        case E_STRICT:
+            $errnostr = 'Notice';
+            break;
+        case E_RECOVERABLE_ERROR:
+            $errnostr = 'Catchable';
+            break;
+        default:
+            $errnostr = 'Unknown error type';
+    }
+
+    return $errnostr;
+}
+
 /**
  * PHP errors handler to use when running behat tests.
  *
@@ -121,35 +151,57 @@ function behat_error_handler($errno, $errstr, $errfile, $errline, $errcontext) {
     // Using the default one in case there is a fatal catchable error.
     default_error_handler($errno, $errstr, $errfile, $errline, $errcontext);
 
-    switch ($errno) {
-        case E_USER_ERROR:
-            $errnostr = 'Fatal error';
-            break;
-        case E_WARNING:
-        case E_USER_WARNING:
-            $errnostr = 'Warning';
-            break;
-        case E_NOTICE:
-        case E_USER_NOTICE:
-        case E_STRICT:
-            $errnostr = 'Notice';
-            break;
-        case E_RECOVERABLE_ERROR:
-            $errnostr = 'Catchable';
-            break;
-        default:
-            $errnostr = 'Unknown error type';
-    }
+    $errnostr = behat_get_error_string($errno);
 
-    // Wrapping the output.
-    echo '<div class="phpdebugmessage" data-rel="phpdebugmessage">' . PHP_EOL;
-    echo "$errnostr: $errstr in $errfile on line $errline" . PHP_EOL;
-    echo '</div>';
+    // If ajax script then throw exception, so the calling api catch it and show it on web page.
+    if (defined('AJAX_SCRIPT')) {
+        throw new Exception("$errnostr: $errstr in $errfile on line $errline");
+    } else {
+        // Wrapping the output.
+        echo '<div class="phpdebugmessage" data-rel="phpdebugmessage">' . PHP_EOL;
+        echo "$errnostr: $errstr in $errfile on line $errline" . PHP_EOL;
+        echo '</div>';
+    }
 
     // Also use the internal error handler so we keep the usual behaviour.
     return false;
 }
 
+/**
+ * Before shutdown save last error entries, so we can fail the test.
+ */
+function behat_shutdown_function() {
+    global $DB;
+
+    // If any error found, then save it.
+    if ($error = error_get_last()) {
+        // Ignore E_WARNING, as they might come via ( @ )suppression and might lead to false failure.
+        if (isset($error['type']) && !($error['type'] & E_WARNING)) {
+            $errors = behat_get_shutdown_process_errors();
+
+            $errors[] = $error;
+            $errorstosave = json_encode($errors);
+
+            set_config('process_errors', $errorstosave, 'tool_behat');
+        }
+    }
+}
+
+/**
+ * Return php errors save which were save during shutdown.
+ *
+ * @return array
+ */
+function behat_get_shutdown_process_errors() {
+    $phperrors = get_config('tool_behat', 'process_errors');
+
+    if (!empty($phperrors)) {
+        return json_decode($phperrors, true);
+    } else {
+        return array();
+    }
+}
+
 /**
  * Restrict the config.php settings allowed.
  *
index 85499a0..4d0386b 100644 (file)
@@ -191,9 +191,7 @@ class manager {
     protected static function prepare_cookies() {
         global $CFG;
 
-        if (!isset($CFG->cookiesecure) or (!is_https() and empty($CFG->sslproxy))) {
-            $CFG->cookiesecure = 0;
-        }
+        $cookiesecure = is_moodle_cookie_secure();
 
         if (!isset($CFG->cookiehttponly)) {
             $CFG->cookiehttponly = 0;
@@ -254,7 +252,7 @@ class manager {
 
         // Set configuration.
         session_name($sessionname);
-        session_set_cookie_params(0, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $CFG->cookiesecure, $CFG->cookiehttponly);
+        session_set_cookie_params(0, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $cookiesecure, $CFG->cookiehttponly);
         ini_set('session.use_trans_sid', '0');
         ini_set('session.use_only_cookies', '1');
         ini_set('session.hash_function', '0');        // For now MD5 - we do not have room for sha-1 in sessions table.
index 5ce0791..f9f5465 100644 (file)
@@ -44,28 +44,19 @@ class stats_cron_task extends scheduled_task {
     public function execute() {
         global $CFG;
 
-        $timenow = time();
         // Run stats as at the end because they are known to take very long time on large sites.
         if (!empty($CFG->enablestats) and empty($CFG->disablestatsprocessing)) {
             require_once($CFG->dirroot.'/lib/statslib.php');
-            // Check we're not before our runtime.
-            $timetocheck = stats_get_base_daily() + $CFG->statsruntimestarthour * 60 * 60 + $CFG->statsruntimestartminute * 60;
-
-            if ($timenow > $timetocheck) {
-                // Process configured number of days as max (defaulting to 31).
-                $maxdays = empty($CFG->statsruntimedays) ? 31 : abs($CFG->statsruntimedays);
-                if (stats_cron_daily($maxdays)) {
-                    if (stats_cron_weekly()) {
-                        if (stats_cron_monthly()) {
-                            stats_clean_old();
-                        }
+            // Process configured number of days as max (defaulting to 31).
+            $maxdays = empty($CFG->statsruntimedays) ? 31 : abs($CFG->statsruntimedays);
+            if (stats_cron_daily($maxdays)) {
+                if (stats_cron_weekly()) {
+                    if (stats_cron_monthly()) {
+                        stats_clean_old();
                     }
                 }
-                \core_php_time_limit::raise();
-            } else {
-                mtrace('Next stats run after:'. userdate($timetocheck));
             }
+            \core_php_time_limit::raise();
         }
     }
-
 }
index 3dbd8f4..51265b0 100644 (file)
       </KEYS>
       <INDEXES>
         <INDEX NAME="contextid" UNIQUE="false" FIELDS="contextid" COMMENT="links to context table"/>
+        <INDEX NAME="contextidstamp" UNIQUE="true" FIELDS="contextid, stamp"/>
       </INDEXES>
     </TABLE>
     <TABLE NAME="question" COMMENT="The questions themselves">
index 49863b8..f7296c5 100644 (file)
@@ -306,7 +306,7 @@ $tasks = array(
         'classname' => 'core\task\stats_cron_task',
         'blocking' => 0,
         'minute' => '0',
-        'hour' => '*',
+        'hour' => '0',
         'day' => '*',
         'dayofweek' => '*',
         'month' => '*'
index 3476d07..c413aa6 100644 (file)
@@ -2083,5 +2083,99 @@ function xmldb_main_upgrade($oldversion) {
         upgrade_main_savepoint(true, 2016081700.00);
     }
 
+    if ($oldversion < 2016081700.02) {
+        // Default schedule values.
+        $hour = 0;
+        $minute = 0;
+
+        // Get the old settings.
+        if (isset($CFG->statsruntimestarthour)) {
+            $hour = $CFG->statsruntimestarthour;
+        }
+        if (isset($CFG->statsruntimestartminute)) {
+            $minute = $CFG->statsruntimestartminute;
+        }
+
+        // Retrieve the scheduled task record first.
+        $stattask = $DB->get_record('task_scheduled', array('component' => 'moodle', 'classname' => '\core\task\stats_cron_task'));
+
+        // Don't touch customised scheduling.
+        if ($stattask && !$stattask->customised) {
+
+            $nextruntime = mktime($hour, $minute, 0, date('m'), date('d'), date('Y'));
+            if ($nextruntime < $stattask->lastruntime) {
+                // Add 24 hours to the next run time.
+                $newtime = new DateTime();
+                $newtime->setTimestamp($nextruntime);
+                $newtime->add(new DateInterval('P1D'));
+                $nextruntime = $newtime->getTimestamp();
+            }
+            $stattask->nextruntime = $nextruntime;
+            $stattask->minute = $minute;
+            $stattask->hour = $hour;
+            $stattask->customised = 1;
+            $DB->update_record('task_scheduled', $stattask);
+        }
+        // These settings are no longer used.
+        unset_config('statsruntimestarthour');
+        unset_config('statsruntimestartminute');
+        unset_config('statslastexecution');
+
+        upgrade_main_savepoint(true, 2016081700.02);
+    }
+
+    if ($oldversion < 2016082200.00) {
+        // An upgrade step to remove any duplicate stamps, within the same context, in the question_categories table, and to
+        // add a unique index to (contextid, stamp) to avoid future stamp duplication. See MDL-54864.
+
+        // Extend the execution time limit of the script to 2 hours.
+        upgrade_set_timeout(7200);
+
+        // This SQL fetches the id of those records which have duplicate stamps within the same context.
+        // This doesn't return the original record within the context, from which the duplicate stamps were likely created.
+        $fromclause = "FROM (
+                        SELECT min(id) AS minid, contextid, stamp
+                            FROM {question_categories}
+                            GROUP BY contextid, stamp
+                        ) minid
+                        JOIN {question_categories} qc
+                            ON qc.contextid = minid.contextid AND qc.stamp = minid.stamp AND qc.id > minid.minid";
+
+        // Get the total record count - used for the progress bar.
+        $countduplicatessql = "SELECT count(qc.id) $fromclause";
+        $total = $DB->count_records_sql($countduplicatessql);
+
+        // Get the records themselves.
+        $getduplicatessql = "SELECT qc.id $fromclause ORDER BY minid";
+        $rs = $DB->get_recordset_sql($getduplicatessql);
+
+        // For each duplicate, update the stamp to a new random value.
+        $i = 0;
+        $pbar = new progress_bar('updatequestioncategorystamp', 500, true);
+        foreach ($rs as $record) {
+            // Generate a new, unique stamp and update the record.
+            do {
+                $newstamp = make_unique_id_code();
+            } while (isset($usedstamps[$newstamp]));
+            $usedstamps[$newstamp] = 1;
+            $DB->set_field('question_categories', 'stamp', $newstamp, array('id' => $record->id));
+
+            // Update progress.
+            $i++;
+            $pbar->update($i, $total, "Updating duplicate question category stamp - $i/$total.");
+        }
+        unset($usedstamps);
+
+        // The uniqueness of each (contextid, stamp) pair is now guaranteed, so add the unique index to stop future duplicates.
+        $table = new xmldb_table('question_categories');
+        $index = new xmldb_index('contextidstamp', XMLDB_INDEX_UNIQUE, array('contextid', 'stamp'));
+        if (!$dbman->index_exists($table, $index)) {
+            $dbman->add_index($table, $index);
+        }
+
+        // Savepoint reached.
+        upgrade_main_savepoint(true, 2016082200.00);
+    }
+
     return true;
 }
index e60462f..03fc861 100644 (file)
@@ -86,6 +86,25 @@ function require_sesskey() {
     }
 }
 
+/**
+ * Determine wether the secure flag should be set on cookies
+ * @return bool
+ */
+function is_moodle_cookie_secure() {
+    global $CFG;
+
+    if (!isset($CFG->cookiesecure)) {
+        return false;
+    }
+    if (!empty($CFG->loginhttps)) {
+        return false;
+    }
+    if (!is_https() and empty($CFG->sslproxy)) {
+        return false;
+    }
+    return !empty($CFG->cookiesecure);
+}
+
 /**
  * Sets a moodle cookie with a weakly encrypted username
  *
@@ -111,12 +130,14 @@ function set_moodle_cookie($username) {
 
     $cookiename = 'MOODLEID1_'.$CFG->sessioncookie;
 
-    // delete old cookie
-    setcookie($cookiename, '', time() - HOURSECS, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $CFG->cookiesecure, $CFG->cookiehttponly);
+    $cookiesecure = is_moodle_cookie_secure();
+
+    // Delete old cookie.
+    setcookie($cookiename, '', time() - HOURSECS, $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $cookiesecure, $CFG->cookiehttponly);
 
     if ($username !== '') {
-        // set username cookie for 60 days
-        setcookie($cookiename, rc4encrypt($username), time()+(DAYSECS*60), $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $CFG->cookiesecure, $CFG->cookiehttponly);
+        // Set username cookie for 60 days.
+        setcookie($cookiename, rc4encrypt($username), time() + (DAYSECS * 60), $CFG->sessioncookiepath, $CFG->sessioncookiedomain, $cookiesecure, $CFG->cookiehttponly);
     }
 }
 
index 2972b6b..4026d1b 100644 (file)
@@ -1038,6 +1038,12 @@ if (isset($CFG->maintenance_later) and $CFG->maintenance_later <= time()) {
     }
 }
 
+// Add behat_shutdown_function to shutdown manager, so we can capture php errors,
+// but not necessary for behat CLI command as it's being captured by behat process.
+if (defined('BEHAT_SITE_RUNNING') && !defined('BEHAT_TEST')) {
+    core_shutdown_manager::register_function('behat_shutdown_function');
+}
+
 // note: we can not block non utf-8 installations here, because empty mysql database
 // might be converted to utf-8 in admin/index.php during installation
 
index 23fa555..a414fae 100644 (file)
@@ -138,22 +138,6 @@ function stats_cron_daily($maxdays=1) {
         set_config('statslastdaily', $timestart);
     }
 
-    // calculate scheduled time
-    $scheduledtime = stats_get_base_daily() + $CFG->statsruntimestarthour*60*60 + $CFG->statsruntimestartminute*60;
-
-    // Note: This will work fine for sites running cron each 4 hours or less (hopefully, 99.99% of sites). MDL-16709
-    // check to make sure we're due to run, at least 20 hours after last run
-    if (isset($CFG->statslastexecution) && ((time() - 20*60*60) < $CFG->statslastexecution)) {
-        mtrace("...preventing stats to run, last execution was less than 20 hours ago.");
-        return false;
-    // also check that we are a max of 4 hours after scheduled time, stats won't run after that
-    } else if (time() > $scheduledtime + 4*60*60) {
-        mtrace("...preventing stats to run, more than 4 hours since scheduled time.");
-        return false;
-    } else {
-        set_config('statslastexecution', time()); /// Grab this execution as last one
-    }
-
     $nextmidnight = stats_get_next_day_start($timestart);
 
     // are there any days that need to be processed?
@@ -161,7 +145,6 @@ function stats_cron_daily($maxdays=1) {
         return true; // everything ok and up-to-date
     }
 
-
     $timeout = empty($CFG->statsmaxruntime) ? 60*60*24 : $CFG->statsmaxruntime;
 
     if (!set_cron_lock('statsrunning', $now + $timeout)) {
@@ -1041,13 +1024,10 @@ function stats_get_base_monthly($time=0) {
  */
 function stats_get_next_day_start($time) {
     $next = stats_get_base_daily($time);
-    $next = $next + 60*60*26;
-    $next = stats_get_base_daily($next);
-    if ($next <= $time) {
-        //DST trouble - prevent infinite loops
-        $next = $next + 60*60*24;
-    }
-    return $next;
+    $nextdate = new DateTime();
+    $nextdate->setTimestamp($next);
+    $nextdate->add(new DateInterval('P1D'));
+    return $nextdate->getTimestamp();
 }
 
 /**
@@ -1057,13 +1037,10 @@ function stats_get_next_day_start($time) {
  */
 function stats_get_next_week_start($time) {
     $next = stats_get_base_weekly($time);
-    $next = $next + 60*60*24*9;
-    $next = stats_get_base_weekly($next);
-    if ($next <= $time) {
-        //DST trouble - prevent infinite loops
-        $next = $next + 60*60*24*7;
-    }
-    return $next;
+    $nextdate = new DateTime();
+    $nextdate->setTimestamp($next);
+    $nextdate->add(new DateInterval('P1W'));
+    return $nextdate->getTimestamp();
 }
 
 /**
@@ -1073,13 +1050,10 @@ function stats_get_next_week_start($time) {
  */
 function stats_get_next_month_start($time) {
     $next = stats_get_base_monthly($time);
-    $next = $next + 60*60*24*33;
-    $next = stats_get_base_monthly($next);
-    if ($next <= $time) {
-        //DST trouble - prevent infinite loops
-        $next = $next + 60*60*24*31;
-    }
-    return $next;
+    $nextdate = new DateTime();
+    $nextdate->setTimestamp($next);
+    $nextdate->add(new DateInterval('P1M'));
+    return $nextdate->getTimestamp();
 }
 
 /**
index a5b8b7c..1fa55b9 100644 (file)
@@ -939,12 +939,23 @@ abstract class testing_util {
         self::$tableupdated = array();
     }
 
+    /**
+     * Delete tablesupdatedbyscenario file. This should be called before suite,
+     * to ensure full db reset.
+     */
+    public static function clean_tables_updated_by_scenario_list() {
+        $tablesupdatedfile = self::get_tables_updated_by_scenario_list_path();
+        if (file_exists($tablesupdatedfile)) {
+            unlink($tablesupdatedfile);
+        }
+    }
+
     /**
      * Returns the path to the file which holds list of tables updated in scenario.
      * @return string
      */
     protected final static function get_tables_updated_by_scenario_list_path() {
-        return self::get_dataroot() . '/tablesupdatedbyscenario.txt';
+        return self::get_dataroot() . '/tablesupdatedbyscenario.json';
     }
 
     /**
index e3a2f99..04686f6 100644 (file)
@@ -1453,6 +1453,22 @@ class core_accesslib_testcase extends advanced_testcase {
         $this->assertObjectHasAttribute('lastname', $users[$user3->id]);
         $this->assertObjectHasAttribute('firstname', $users[$user3->id]);
 
+        $users = get_role_users($teacherrole->id, $coursecontext, false, 'u.*');
+        $this->assertDebuggingNotCalled();
+        $this->assertCount(2, $users);
+
+        $users = get_role_users($teacherrole->id, $coursecontext, false, 'u.id AS id_alias');
+        $this->assertDebuggingCalled('get_role_users() adding u.lastname, u.firstname to the query result because they were required by $sort but missing in $fields');
+        $this->assertCount(2, $users);
+        $this->assertArrayHasKey($user1->id, $users);
+        $this->assertObjectHasAttribute('id_alias', $users[$user1->id]);
+        $this->assertObjectHasAttribute('lastname', $users[$user1->id]);
+        $this->assertObjectHasAttribute('firstname', $users[$user1->id]);
+        $this->assertArrayHasKey($user3->id, $users);
+        $this->assertObjectHasAttribute('id_alias', $users[$user3->id]);
+        $this->assertObjectHasAttribute('lastname', $users[$user3->id]);
+        $this->assertObjectHasAttribute('firstname', $users[$user3->id]);
+
         $users = get_role_users($teacherrole->id, $coursecontext, false, 'u.id, u.email, u.idnumber', 'u.idnumber', null, $group->id);
         $this->assertCount(1, $users);
         $this->assertArrayHasKey($user3->id, $users);
index dfaf9f6..1f25c1a 100644 (file)
@@ -153,6 +153,7 @@ class behat_hooks extends behat_base {
 
         // Reset all data, before checking for check_server_status.
         // If not done, then it can return apache error, while running tests.
+        behat_util::clean_tables_updated_by_scenario_list();
         behat_util::reset_all_data();
 
         // Check if server is running and using same version for cli and apache.
index 6879ae5..a5e9eb5 100644 (file)
@@ -154,6 +154,110 @@ class core_sessionlib_testcase extends advanced_testcase {
         $this->assertSame($GLOBALS['USER'], $USER);
     }
 
+    /**
+     * Test provided for secure cookie
+     *
+     * @return array of config and secure result
+     */
+    public function moodle_cookie_secure_provider() {
+        return array(
+            array(
+                // Non ssl, not set.
+                'config' => array(
+                    'wwwroot'       => 'http://example.com',
+                    'httpswwwroot'  => 'http://example.com',
+                    'sslproxy'      => null,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => null,
+                ),
+                'secure' => false,
+            ),
+            array(
+                // Non ssl, off and ignored.
+                'config' => array(
+                    'wwwroot'       => 'http://example.com',
+                    'httpswwwroot'  => 'http://example.com',
+                    'sslproxy'      => null,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => false,
+                ),
+                'secure' => false,
+            ),
+            array(
+                // Non ssl, on and ignored.
+                'config' => array(
+                    'wwwroot'       => 'http://example.com',
+                    'httpswwwroot'  => 'http://example.com',
+                    'sslproxy'      => null,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => true,
+                ),
+                'secure' => false,
+            ),
+            array(
+                // SSL via proxy, off.
+                'config' => array(
+                    'wwwroot'       => 'http://example.com',
+                    'httpswwwroot'  => 'http://example.com',
+                    'sslproxy'      => true,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => false,
+                ),
+                'secure' => false,
+            ),
+            array(
+                // SSL via proxy, on.
+                'config' => array(
+                    'wwwroot'       => 'http://example.com',
+                    'httpswwwroot'  => 'http://example.com',
+                    'sslproxy'      => true,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => true,
+                ),
+                'secure' => true,
+            ),
+            array(
+                // SSL and off.
+                'config' => array(
+                    'wwwroot'       => 'https://example.com',
+                    'httpswwwroot'  => 'https://example.com',
+                    'sslproxy'      => null,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => false,
+                ),
+                'secure' => false,
+            ),
+            array(
+                // SSL and on.
+                'config' => array(
+                    'wwwroot'       => 'https://example.com',
+                    'httpswwwroot'  => 'https://example.com',
+                    'sslproxy'      => null,
+                    'loginhttps'    => null,
+                    'cookiesecure'  => true,
+                ),
+                'secure' => true,
+            ),
+        );
+    }
+
+    /**
+     * Test for secure cookie
+     *
+     * @dataProvider moodle_cookie_secure_provider
+     *
+     * @param array $config Array of key value config settings
+     * @param bool $secure Wether cookies should be secure or not
+     */
+    public function test_is_moodle_cookie_secure($config, $secure) {
+
+        $this->resetAfterTest();
+        foreach ($config as $key => $value) {
+            set_config($key, $value);
+        }
+        $this->assertEquals($secure, is_moodle_cookie_secure());
+    }
+
     public function test_sesskey() {
         global $USER;
         $this->resetAfterTest();
index aa7a251..66089a4 100644 (file)
@@ -61,7 +61,6 @@ class core_statslib_testcase extends advanced_testcase {
         core_date::set_default_server_timezone();
         $CFG->statsfirstrun           = 'all';
         $CFG->statslastdaily          = 0;
-        $CFG->statslastexecution      = 0;
 
         // Figure out the broken day start so I can figure out when to the start time should be.
         $time   = time();
@@ -74,9 +73,6 @@ class core_statslib_testcase extends advanced_testcase {
 
         $shour  = intval(($time - $stime) / (60*60));
 
-        $CFG->statsruntimestarthour   = $shour;
-        $CFG->statsruntimestartminute = 0;
-
         if ($DB->record_exists('user', array('username' => 'user1'))) {
             return;
         }
@@ -392,6 +388,22 @@ class core_statslib_testcase extends advanced_testcase {
     public function test_statslib_get_next_day_start() {
         $this->setTimezone(0);
         $this->assertEquals(1272758400, stats_get_next_day_start(1272686410));
+
+        // Try setting timezone to some place in the US.
+        $this->setTimezone('America/New_York', 'America/New_York');
+        // Then set the time for midnight before daylight savings.
+        // 1425790800 is midnight in New York (2015-03-08) Daylight saving will occur in 2 hours time.
+        // 1425873600 is midnight the next day.
+        $this->assertEquals(1425873600, stats_get_next_day_start(1425790800));
+        $this->assertEquals(23, ((1425873600 - 1425790800) / 60 ) / 60);
+        // Then set the time for midnight before daylight savings ends.
+        // 1446350400 is midnight in New York (2015-11-01) Daylight saving will finish in 2 hours time.
+        // 1446440400 is midnight the next day.
+        $this->assertEquals(1446440400, stats_get_next_day_start(1446350400));
+        $this->assertEquals(25, ((1446440400 - 1446350400) / 60 ) / 60);
+        // The next day should be normal.
+        $this->assertEquals(1446526800, stats_get_next_day_start(1446440400));
+        $this->assertEquals(24, ((1446526800 - 1446440400) / 60 ) / 60);
     }
 
     /**
index efbf363..be34b85 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-debug.js and b/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-debug.js differ
index 22a7bcc..11bcd12 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-min.js and b/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception-min.js differ
index efbf363..be34b85 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception.js and b/lib/yui/build/moodle-core-notification-ajaxexception/moodle-core-notification-ajaxexception.js differ
index 91546f3..25f79ae 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-debug.js and b/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-debug.js differ
index 4fb70e3..bb94ef7 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-min.js and b/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception-min.js differ
index 91546f3..25f79ae 100644 (file)
Binary files a/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception.js and b/lib/yui/build/moodle-core-notification-exception/moodle-core-notification-exception.js differ
index 39fa89e..230f228 100644 (file)
@@ -34,7 +34,7 @@ Y.extend(AJAXEXCEPTION, M.core.notification.info, {
         this.setStdModContent(Y.WidgetStdMod.HEADER,
                 '<h1 id="moodle-dialogue-' + this.get('COUNT') + '-header-text">' + Y.Escape.html(config.name) + '</h1>',
                 Y.WidgetStdMod.REPLACE);
-        content = Y.Node.create('<div class="moodle-ajaxexception"></div>')
+        content = Y.Node.create('<div class="moodle-ajaxexception" data-rel="fatalerror"></div>')
                 .append(Y.Node.create('<div class="moodle-exception-message">' + Y.Escape.html(this.get('error')) + '</div>'))
                 .append(Y.Node.create('<div class="moodle-exception-param hidden param-debuginfo"><label>URL:</label> ' +
                         this.get('reproductionlink') + '</div>'))
index 7c5fdc4..a1b5842 100644 (file)
@@ -50,7 +50,7 @@ Y.extend(EXCEPTION, M.core.notification.info, {
         this.setStdModContent(Y.WidgetStdMod.HEADER,
                 '<h1 id="moodle-dialogue-' + config.COUNT + '-header-text">' + Y.Escape.html(config.name) + '</h1>',
                 Y.WidgetStdMod.REPLACE);
-        content = Y.Node.create('<div class="moodle-exception"></div>')
+        content = Y.Node.create('<div class="moodle-exception" data-rel="fatalerror"></div>')
                 .append(Y.Node.create('<div class="moodle-exception-message">' + Y.Escape.html(this.get('message')) + '</div>'))
                 .append(Y.Node.create('<div class="moodle-exception-param hidden param-filename"><label>File:</label> ' +
                         Y.Escape.html(this.get('fileName')) + '</div>'))
index 8256390..512c051 100644 (file)
@@ -34,6 +34,12 @@ class mod_choice_mod_form extends moodleform_mod {
         $mform->addElement('selectyesno', 'allowupdate', get_string("allowupdate", "choice"));
 
         $mform->addElement('selectyesno', 'allowmultiple', get_string('allowmultiple', 'choice'));
+        if ($this->_instance) {
+            if ($DB->count_records('choice_answers', array('choiceid' => $this->_instance)) > 0) {
+                // Prevent user from toggeling the number of allowed answers once there are submissions.
+                $mform->freeze('allowmultiple');
+            }
+        }
 
         $mform->addElement('selectyesno', 'limitanswers', get_string('limitanswers', 'choice'));
         $mform->addHelpButton('limitanswers', 'limitanswers', 'choice');
index d0672f3..8f7aa2f 100644 (file)
@@ -164,7 +164,8 @@ class subscriptions {
      * @return bool
      */
     public static function is_subscribable($forum) {
-        return (!\mod_forum\subscriptions::is_forcesubscribed($forum) &&
+        return (isloggedin() && !isguestuser() &&
+                !\mod_forum\subscriptions::is_forcesubscribed($forum) &&
                 !\mod_forum\subscriptions::subscription_disabled($forum));
     }
 
index 1534ae9..d3405eb 100644 (file)
@@ -29,7 +29,7 @@ require_once($CFG->libdir . '/rsslib.php');
 $id = optional_param('id', 0, PARAM_INT);                   // Course id
 $subscribe = optional_param('subscribe', null, PARAM_INT);  // Subscribe/Unsubscribe all forums
 
-$url = new moodle_url('/mod/forum/index.php', array('id'=>$id));
+$url = new moodle_url('/mod/forum/index.php', array('id' => $id));
 if ($subscribe !== null) {
     require_sesskey();
     $url->param('subscribe', $subscribe);
@@ -37,7 +37,7 @@ if ($subscribe !== null) {
 $PAGE->set_url($url);
 
 if ($id) {
-    if (! $course = $DB->get_record('course', array('id' => $id))) {
+    if (!$course = $DB->get_record('course', array('id' => $id))) {
         print_error('invalidcourseid');
     }
 } else {
@@ -77,18 +77,6 @@ $stremaildigest  = get_string('emaildigest');
 
 $searchform = forum_search_form($course);
 
-// Retrieve the list of forum digest options for later.
-$digestoptions = forum_get_user_digest_options();
-$digestoptions_selector = new single_select(new moodle_url('/mod/forum/maildigest.php',
-    array(
-        'backtoindex' => 1,
-    )),
-    'maildigest',
-    $digestoptions,
-    null,
-    '');
-$digestoptions_selector->method = 'post';
-
 // Start of the table for General Forums
 
 $generaltable = new html_table();
@@ -108,22 +96,6 @@ if ($usetracking = forum_tp_can_track_forums()) {
 // Fill the subscription cache for this course and user combination.
 \mod_forum\subscriptions::fill_subscription_cache_for_course($course->id, $USER->id);
 
-$can_subscribe = is_enrolled($coursecontext);
-if ($can_subscribe) {
-    $generaltable->head[] = $strsubscribed;
-    $generaltable->align[] = 'center';
-
-    $generaltable->head[] = $stremaildigest . ' ' . $OUTPUT->help_icon('emaildigesttype', 'mod_forum');
-    $generaltable->align[] = 'center';
-}
-
-if ($show_rss = (($can_subscribe || $course->id == SITEID) &&
-                 isset($CFG->enablerssfeeds) && isset($CFG->forum_enablerssfeeds) &&
-                 $CFG->enablerssfeeds && $CFG->forum_enablerssfeeds)) {
-    $generaltable->head[] = $strrss;
-    $generaltable->align[] = 'center';
-}
-
 $usesections = course_format_uses_sections($course->format);
 
 $table = new html_table();
@@ -143,8 +115,9 @@ $forums = $DB->get_records_sql("
 $generalforums  = array();
 $learningforums = array();
 $modinfo = get_fast_modinfo($course);
+$showsubscriptioncolumns = false;
 
-foreach ($modinfo->get_instances_of('forum') as $forumid=>$cm) {
+foreach ($modinfo->get_instances_of('forum') as $forumid => $cm) {
     if (!$cm->uservisible or !isset($forums[$forumid])) {
         continue;
     }
@@ -152,14 +125,23 @@ foreach ($modinfo->get_instances_of('forum') as $forumid=>$cm) {
     $forum = $forums[$forumid];
 
     if (!$context = context_module::instance($cm->id, IGNORE_MISSING)) {
-        continue;   // Shouldn't happen
+        // Shouldn't happen.
+        continue;
     }
 
     if (!has_capability('mod/forum:viewdiscussion', $context)) {
+        // User can't view this one - skip it.
         continue;
     }
 
-    // fill two type array - order in modinfo is the same as in course
+    // Determine whether subscription options should be displayed.
+    $forum->cansubscribe = mod_forum\subscriptions::is_subscribable($forum);
+    $forum->cansubscribe = $forum->cansubscribe || has_capability('mod/forum:managesubscriptions', $context);
+    $forum->issubscribed = mod_forum\subscriptions::is_subscribed($USER->id, $forum, null, $cm);
+
+    $showsubscriptioncolumns = $showsubscriptioncolumns || $forum->issubscribed || $forum->cansubscribe;
+
+    // Fill two type array - order in modinfo is the same as in course.
     if ($forum->type == 'news' or $forum->type == 'social') {
         $generalforums[$forum->id] = $forum;
 
@@ -171,9 +153,27 @@ foreach ($modinfo->get_instances_of('forum') as $forumid=>$cm) {
     }
 }
 
+if ($showsubscriptioncolumns) {
+    // The user can subscribe to at least one forum.
+    $generaltable->head[] = $strsubscribed;
+    $generaltable->align[] = 'center';
+
+    $generaltable->head[] = $stremaildigest . ' ' . $OUTPUT->help_icon('emaildigesttype', 'mod_forum');
+    $generaltable->align[] = 'center';
+
+}
+
+if ($show_rss = (($showsubscriptioncolumns || $course->id == SITEID) &&
+                 isset($CFG->enablerssfeeds) && isset($CFG->forum_enablerssfeeds) &&
+                 $CFG->enablerssfeeds && $CFG->forum_enablerssfeeds)) {
+    $generaltable->head[] = $strrss;
+    $generaltable->align[] = 'center';
+}
+
+
 // Do course wide subscribe/unsubscribe if requested
 if (!is_null($subscribe)) {
-    if (isguestuser() or !$can_subscribe) {
+    if (isguestuser() or !$showsubscriptioncolumns) {
         // There should not be any links leading to this place, just redirect.
         redirect(
                 new moodle_url('/mod/forum/index.php', array('id' => $id)),
@@ -183,7 +183,7 @@ if (!is_null($subscribe)) {
             );
     }
     // Can proceed now, the user is not guest and is enrolled
-    foreach ($modinfo->get_instances_of('forum') as $forumid=>$cm) {
+    foreach ($modinfo->get_instances_of('forum') as $forumid => $cm) {
         $forum = $forums[$forumid];
         $modcontext = context_module::instance($cm->id);
         $cansub = false;
@@ -225,9 +225,8 @@ if (!is_null($subscribe)) {
     }
 }
 
-/// First, let's process the general forums and build up a display
-
 if ($generalforums) {
+    // Process general forums.
     foreach ($generalforums as $forum) {
         $cm      = $modinfo->instances['forum'][$forum->id];
         $context = context_module::instance($cm->id);
@@ -260,9 +259,9 @@ if ($generalforums) {
                             'sesskey' => sesskey(),
                         ));
                     if (!isset($untracked[$forum->id])) {
-                        $trackedlink = $OUTPUT->single_button($aurl, $stryes, 'post', array('title'=>$strnotrackforum));
+                        $trackedlink = $OUTPUT->single_button($aurl, $stryes, 'post', array('title' => $strnotrackforum));
                     } else {
-                        $trackedlink = $OUTPUT->single_button($aurl, $strno, 'post', array('title'=>$strtrackforum));
+                        $trackedlink = $OUTPUT->single_button($aurl, $strno, 'post', array('title' => $strtrackforum));
                     }
                 }
             }
@@ -285,21 +284,14 @@ if ($generalforums) {
             $row[] = $trackedlink;    // Tracking.
         }
 
-        if ($can_subscribe) {
+        if ($showsubscriptioncolumns) {
             $row[] = forum_get_subscribe_link($forum, $context, array('subscribed' => $stryes,
-                    'unsubscribed' => $strno, 'forcesubscribed' => $stryes,
-                    'cantsubscribe' => '-'), false, false, true);
-
-            $digestoptions_selector->url->param('id', $forum->id);
-            if ($forum->maildigest === null) {
-                $digestoptions_selector->selected = -1;
-            } else {
-                $digestoptions_selector->selected = $forum->maildigest;
-            }
-            $row[] = $OUTPUT->render($digestoptions_selector);
+                'unsubscribed' => $strno, 'forcesubscribed' => $stryes,
+                'cantsubscribe' => '-'), false, false, true);
+            $row[] = forum_index_get_forum_subscription_selector($forum);
         }
 
-        //If this forum has RSS activated, calculate it
+        // If this forum has RSS activated, calculate it.
         if ($show_rss) {
             if ($forum->rsstype and $forum->rssarticles) {
                 //Calculate the tooltip text
@@ -339,7 +331,7 @@ if ($usetracking) {
     $learningtable->align[] = 'center';
 }
 
-if ($can_subscribe) {
+if ($showsubscriptioncolumns) {
     $learningtable->head[] = $strsubscribed;
     $learningtable->align[] = 'center';
 
@@ -347,15 +339,14 @@ if ($can_subscribe) {
     $learningtable->align[] = 'center';
 }
 
-if ($show_rss = (($can_subscribe || $course->id == SITEID) &&
+if ($show_rss = (($showsubscriptioncolumns || $course->id == SITEID) &&
                  isset($CFG->enablerssfeeds) && isset($CFG->forum_enablerssfeeds) &&
                  $CFG->enablerssfeeds && $CFG->forum_enablerssfeeds)) {
     $learningtable->head[] = $strrss;
     $learningtable->align[] = 'center';
 }
 
-/// Now let's process the learning forums
-
+// Now let's process the learning forums.
 if ($course->id != SITEID) {    // Only real courses have learning forums
     // 'format_.'$course->format only applicable when not SITEID (format_site is not a format)
     $strsectionname  = get_string('sectionname', 'format_'.$course->format);
@@ -393,11 +384,11 @@ if ($course->id != SITEID) {    // Only real courses have learning forums
                     } else if ($forum->trackingtype === FORUM_TRACKING_OFF || ($USER->trackforums == 0)) {
                         $trackedlink = '-';
                     } else {
-                        $aurl = new moodle_url('/mod/forum/settracking.php', array('id'=>$forum->id));
+                        $aurl = new moodle_url('/mod/forum/settracking.php', array('id' => $forum->id));
                         if (!isset($untracked[$forum->id])) {
-                            $trackedlink = $OUTPUT->single_button($aurl, $stryes, 'post', array('title'=>$strnotrackforum));
+                            $trackedlink = $OUTPUT->single_button($aurl, $stryes, 'post', array('title' => $strnotrackforum));
                         } else {
-                            $trackedlink = $OUTPUT->single_button($aurl, $strno, 'post', array('title'=>$strtrackforum));
+                            $trackedlink = $OUTPUT->single_button($aurl, $strno, 'post', array('title' => $strtrackforum));
                         }
                     }
                 }
@@ -431,18 +422,11 @@ if ($course->id != SITEID) {    // Only real courses have learning forums
                 $row[] = $trackedlink;    // Tracking.
             }
 
-            if ($can_subscribe) {
+            if ($showsubscriptioncolumns) {
                 $row[] = forum_get_subscribe_link($forum, $context, array('subscribed' => $stryes,
                     'unsubscribed' => $strno, 'forcesubscribed' => $stryes,
                     'cantsubscribe' => '-'), false, false, true);
-
-                $digestoptions_selector->url->param('id', $forum->id);
-                if ($forum->maildigest === null) {
-                    $digestoptions_selector->selected = -1;
-                } else {
-                    $digestoptions_selector->selected = $forum->maildigest;
-                }
-                $row[] = $OUTPUT->render($digestoptions_selector);
+                $row[] = forum_index_get_forum_subscription_selector($forum);
             }
 
             //If this forum has RSS activated, calculate it
@@ -466,25 +450,34 @@ if ($course->id != SITEID) {    // Only real courses have learning forums
     }
 }
 
-
-/// Output the page
+// Output the page.
 $PAGE->navbar->add($strforums);
 $PAGE->set_title("$course->shortname: $strforums");
 $PAGE->set_heading($course->fullname);
 $PAGE->set_button($searchform);
 echo $OUTPUT->header();
 
-// Show the subscribe all options only to non-guest, enrolled users
-if (!isguestuser() && isloggedin() && $can_subscribe) {
+if (!isguestuser() && isloggedin() && $showsubscriptioncolumns) {
+    // Show the subscribe all options only to non-guest, enrolled users.
     echo $OUTPUT->box_start('subscription');
-    echo html_writer::tag('div',
-        html_writer::link(new moodle_url('/mod/forum/index.php', array('id'=>$course->id, 'subscribe'=>1, 'sesskey'=>sesskey())),
-            get_string('allsubscribe', 'forum')),
-        array('class'=>'helplink'));
-    echo html_writer::tag('div',
-        html_writer::link(new moodle_url('/mod/forum/index.php', array('id'=>$course->id, 'subscribe'=>0, 'sesskey'=>sesskey())),
-            get_string('allunsubscribe', 'forum')),
-        array('class'=>'helplink'));
+
+    $subscriptionlink = new moodle_url('/mod/forum/index.php', [
+        'id'        => $course->id,
+        'sesskey'   => sesskey(),
+    ]);
+
+    // Subscribe all.
+    $subscriptionlink->param('subscribe', 1);
+    echo html_writer::tag('div', html_writer::link($subscriptionlink, get_string('allsubscribe', 'forum')), [
+            'class' => 'helplink',
+        ]);
+
+    // Unsubscribe all.
+    $subscriptionlink->param('subscribe', 0);
+    echo html_writer::tag('div', html_writer::link($subscriptionlink, get_string('allunsubscribe', 'forum')), [
+            'class' => 'helplink',
+        ]);
+
     echo $OUTPUT->box_end();
     echo $OUTPUT->box('&nbsp;', 'clearer');
 }
@@ -501,3 +494,29 @@ if ($learningforums) {
 
 echo $OUTPUT->footer();
 
+/**
+ * Get the content of the forum subscription options for this forum.
+ *
+ * @param   stdClass    $forum      The forum to return options for
+ * @return  string
+ */
+function forum_index_get_forum_subscription_selector($forum) {
+    global $OUTPUT;
+
+    if ($forum->cansubscribe || $forum->issubscribed) {
+        $digestoptionsselector = new single_select(new moodle_url('/mod/forum/maildigest.php', [
+                'id'            => $forum->id,
+                'backtoindex'   => 1,
+            ]),
+            'maildigest',
+            forum_get_user_digest_options(),
+            $forum->maildigest !== null ? $forum->maildigest : -1,
+            '');
+        $digestoptionsselector->method = 'post';
+
+        return $OUTPUT->render($digestoptionsselector);
+    } else {
+        // This user can subscribe to some forums. Add the empty fields.
+        return '';
+    }
+};
index cdd98ac..f435f00 100644 (file)
@@ -106,6 +106,12 @@ class mod_forum_subscriptions_testcase extends advanced_testcase {
         $options = array('course' => $course->id);
         $forum = $this->getDataGenerator()->create_module('forum', $options);
 
+        // Create a user enrolled in the course as a student.
+        list($user) = $this->helper_create_users($course, 1);
+
+        // Must be logged in as the current user.
+        $this->setUser($user);
+
         \mod_forum\subscriptions::set_subscription_mode($forum->id, FORUM_FORCESUBSCRIBE);
         $forum = $DB->get_record('forum', array('id' => $forum->id));
         $this->assertEquals(FORUM_FORCESUBSCRIBE, \mod_forum\subscriptions::get_subscription_mode($forum));
@@ -1318,4 +1324,100 @@ class mod_forum_subscriptions_testcase extends advanced_testcase {
         $this->assertGreaterThan($suppliedcmcount, $calculatedcmcount);
     }
 
+    public function is_subscribable_forums() {
+        return [
+            [
+                'forcesubscribe' => FORUM_DISALLOWSUBSCRIBE,
+            ],
+            [
+                'forcesubscribe' => FORUM_CHOOSESUBSCRIBE,
+            ],
+            [
+                'forcesubscribe' => FORUM_INITIALSUBSCRIBE,
+            ],
+            [
+                'forcesubscribe' => FORUM_FORCESUBSCRIBE,
+            ],
+        ];
+    }
+
+    public function is_subscribable_provider() {
+        $data = [];
+        foreach ($this->is_subscribable_forums() as $forum) {
+            $data[] = [$forum];
+        }
+
+        return $data;
+    }
+
+    /**
+     * @dataProvider is_subscribable_provider
+     */
+    public function test_is_subscribable_logged_out($options) {
+        $this->resetAfterTest(true);
+
+        // Create a course, with a forum.
+        $course = $this->getDataGenerator()->create_course();
+        $options['course'] = $course->id;
+        $forum = $this->getDataGenerator()->create_module('forum', $options);
+
+        $this->assertFalse(\mod_forum\subscriptions::is_subscribable($forum));
+    }
+
+    /**
+     * @dataProvider is_subscribable_provider
+     */
+    public function test_is_subscribable_is_guest($options) {
+        global $DB;
+        $this->resetAfterTest(true);
+
+        $guest = $DB->get_record('user', array('username'=>'guest'));
+        $this->setUser($guest);
+
+        // Create a course, with a forum.
+        $course = $this->getDataGenerator()->create_course();
+        $options['course'] = $course->id;
+        $forum = $this->getDataGenerator()->create_module('forum', $options);
+
+        $this->assertFalse(\mod_forum\subscriptions::is_subscribable($forum));
+    }
+
+    public function is_subscribable_loggedin_provider() {
+        return [
+            [
+                ['forcesubscribe' => FORUM_DISALLOWSUBSCRIBE],
+                false,
+            ],
+            [
+                ['forcesubscribe' => FORUM_CHOOSESUBSCRIBE],
+                true,
+            ],
+            [
+                ['forcesubscribe' => FORUM_INITIALSUBSCRIBE],
+                true,
+            ],
+            [
+                ['forcesubscribe' => FORUM_FORCESUBSCRIBE],
+                false,
+            ],
+        ];
+    }
+
+    /**
+     * @dataProvider is_subscribable_loggedin_provider
+     */
+    public function test_is_subscribable_loggedin($options, $expect) {
+        $this->resetAfterTest(true);
+
+        // Create a course, with a forum.
+        $course = $this->getDataGenerator()->create_course();
+        $options['course'] = $course->id;
+        $forum = $this->getDataGenerator()->create_module('forum', $options);
+
+        $user = $this->getDataGenerator()->create_user();
+        $this->getDataGenerator()->enrol_user($user->id, $course->id);
+        $this->setUser($user);
+
+        $this->assertEquals($expect, \mod_forum\subscriptions::is_subscribable($forum));
+    }
 }
index 3f4f8a1..099dea0 100644 (file)
@@ -119,4 +119,43 @@ class restore_lesson_activity_task extends restore_activity_task {
 
         return $rules;
     }
+
+
+    /**
+     * Re-map the dependency and activitylink information
+     * If a depency or activitylink has no mapping in the backup data then it could either be a duplication of a
+     * lesson, or a backup/restore of a single lesson. We have no way to determine which and whether this is the
+     * same site and/or course. Therefore we try and retrieve a mapping, but fallback to the original value if one
+     * was not found. We then test to see whether the value found is valid for the course being restored into.
+     */
+    public function after_restore() {
+        global $DB;
+
+        $lesson = $DB->get_record('lesson', array('id' => $this->get_activityid()), 'id, course, dependency, activitylink');
+        $updaterequired = false;
+
+        if (!empty($lesson->dependency)) {
+            $updaterequired = true;
+            if ($newitem = restore_dbops::get_backup_ids_record($this->get_restoreid(), 'lesson', $lesson->dependency)) {
+                $lesson->dependency = $newitem->newitemid;
+            }
+            if (!$DB->record_exists('lesson', array('id' => $lesson->dependency, 'course' => $lesson->course))) {
+                $lesson->dependency = 0;
+            }
+        }
+
+        if (!empty($lesson->activitylink)) {
+            $updaterequired = true;
+            if ($newitem = restore_dbops::get_backup_ids_record($this->get_restoreid(), 'course_module', $lesson->activitylink)) {
+                $lesson->activitylink = $newitem->newitemid;
+            }
+            if (!$DB->record_exists('course_modules', array('id' => $lesson->activitylink, 'course' => $lesson->course))) {
+                $lesson->activitylink = 0;
+            }
+        }
+
+        if ($updaterequired) {
+            $DB->update_record('lesson', $lesson);
+        }
+    }
 }
index 38a33a4..1edbf1c 100644 (file)
@@ -330,32 +330,5 @@ class restore_lesson_activity_structure_step extends restore_activity_structure_
         }
 
         $DB->execute($sql);
-
-        // Re-map the dependency and activitylink information
-        // If a depency or activitylink has no mapping in the backup data then it could either be a duplication of a
-        // lesson, or a backup/restore of a single lesson. We have no way to determine which and whether this is the
-        // same site and/or course. Therefore we try and retrieve a mapping, but fallback to the original value if one
-        // was not found. We then test to see whether the value found is valid for the course being restored into.
-        $lesson = $DB->get_record('lesson', array('id' => $this->task->get_activityid()), 'id, course, dependency, activitylink');
-        $updaterequired = false;
-        if (!empty($lesson->dependency)) {
-            $updaterequired = true;
-            $lesson->dependency = $this->get_mappingid('lesson', $lesson->dependency, $lesson->dependency);
-            if (!$DB->record_exists('lesson', array('id' => $lesson->dependency, 'course' => $lesson->course))) {
-                $lesson->dependency = 0;
-            }
-        }
-
-        if (!empty($lesson->activitylink)) {
-            $updaterequired = true;
-            $lesson->activitylink = $this->get_mappingid('course_module', $lesson->activitylink, $lesson->activitylink);
-            if (!$DB->record_exists('course_modules', array('id' => $lesson->activitylink, 'course' => $lesson->course))) {
-                $lesson->activitylink = 0;
-            }
-        }
-
-        if ($updaterequired) {
-            $DB->update_record('lesson', $lesson);
-        }
     }
 }
index a1a1585..6ad7fc2 100644 (file)
@@ -76,10 +76,10 @@ switch($requestmethod) {
         switch ($class) {
             case 'section':
                 $table = 'quiz_sections';
+                $section = $structure->get_section_by_id($id);
                 switch ($field) {
                     case 'getsectiontitle':
                         require_capability('mod/quiz:manage', $modcontext);
-                        $section = $structure->get_section_by_id($id);
                         echo json_encode(array('instancesection' => $section->heading));
                         break;
                     case 'updatesectiontitle':
index df3c78e..77bbda6 100644 (file)
@@ -66,6 +66,7 @@ class moodle1_mod_scorm_handler extends moodle1_mod_handler {
                         'timeopen' => '0',
                         'timeclose' => '0',
                         'introformat' => '0',
+                        'completionstatusallscos' => 0,
                     ),
                     'renamefields' => array(
                         'summary' => 'intro'
index 452a53f..1995b41 100644 (file)
@@ -46,7 +46,7 @@ class backup_scorm_activity_structure_step extends backup_activity_structure_ste
             'auto', 'popup', 'options', 'width',
             'height', 'timeopen', 'timeclose', 'timemodified',
             'completionstatusrequired', 'completionscorerequired',
-            'displayactivityname'));
+            'completionstatusallscos', 'displayactivityname'));
 
         $scoes = new backup_nested_element('scoes');
 
index 4678037..02b620c 100644 (file)
@@ -68,7 +68,9 @@ class restore_scorm_activity_structure_step extends restore_activity_structure_s
         if (!isset($data->displayactivityname)) {
             $data->displayactivityname = true;
         }
-
+        if (!isset($data->completionstatusallscos)) {
+            $data->completionstatusallscos = false;
+        }
         // insert the scorm record
         $newitemid = $DB->insert_record('scorm', $data);
         // immediately after inserting "activity" record, call this
index d41122f..72a00c2 100644 (file)
@@ -731,7 +731,8 @@ class mod_scorm_external extends external_api {
                     if (has_capability('moodle/course:manageactivities', $context)) {
 
                         $additionalfields = array('updatefreq', 'options', 'completionstatusrequired', 'completionscorerequired',
-                                                    'autocommit', 'timemodified', 'section', 'visible', 'groupmode', 'groupingid');
+                                                  'completionstatusallscos', 'autocommit', 'timemodified', 'section', 'visible',
+                                                  'groupmode', 'groupingid');
                         $viewablefields = array_merge($viewablefields, $additionalfields);
 
                     }
@@ -818,6 +819,7 @@ class mod_scorm_external extends external_api {
                             'completionstatusrequired' => new external_value(PARAM_INT, 'Status passed/completed required?',
                                                                                 VALUE_OPTIONAL),
                             'completionscorerequired' => new external_value(PARAM_INT, 'Minimum score required', VALUE_OPTIONAL),
+                            'completionstatusallscos' => new external_value(PARAM_INT, 'Require all scos to return completion status', VALUE_OPTIONAL),
                             'autocommit' => new external_value(PARAM_BOOL, 'Save track data automatically?', VALUE_OPTIONAL),
                             'timemodified' => new external_value(PARAM_INT, 'Time of last modification', VALUE_OPTIONAL),
                             'section' => new external_value(PARAM_INT, 'Course section id', VALUE_OPTIONAL),
index 0aed27f..07252be 100644 (file)
@@ -45,6 +45,7 @@
         <FIELD NAME="timemodified" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
         <FIELD NAME="completionstatusrequired" TYPE="int" LENGTH="1" NOTNULL="false" SEQUENCE="false"/>
         <FIELD NAME="completionscorerequired" TYPE="int" LENGTH="2" NOTNULL="false" SEQUENCE="false"/>
+        <FIELD NAME="completionstatusallscos" TYPE="int" LENGTH="1" NOTNULL="false" SEQUENCE="false"/>
         <FIELD NAME="displayactivityname" TYPE="int" LENGTH="4" NOTNULL="true" DEFAULT="1" SEQUENCE="false"/>
         <FIELD NAME="autocommit" TYPE="int" LENGTH="1" NOTNULL="true" DEFAULT="0" SEQUENCE="false"/>
       </FIELDS>
index f08a1e3..9502961 100644 (file)
@@ -108,5 +108,17 @@ function xmldb_scorm_upgrade($oldversion) {
     // Moodle v3.1.0 release upgrade line.
     // Put any upgrade step following this.
 
+    // MDL-44712 improve multi-sco activity completion.
+    if ($oldversion < 2016080900) {
+        $table = new xmldb_table('scorm');
+
+        $field = new xmldb_field('completionstatusallscos', XMLDB_TYPE_INTEGER, '1', null, null, null, null, 'completionscorerequired');
+        if (!$dbman->field_exists($table, $field)) {
+            $dbman->add_field($table, $field);
+        }
+
+        upgrade_mod_savepoint(true, 2016080900, 'scorm');
+    }
+
     return true;
 }
index 8b2d014..35a3349 100644 (file)
@@ -83,6 +83,8 @@ $string['completionscorerequired'] = 'Require minimum score';
 $string['completionscorerequired_help'] = 'Enabling this setting will require a user to have at least the minimum score entered to be marked complete in this SCORM activity, as well as any other Activity Completion requirements.';
 $string['completionstatus_passed'] = 'Passed';
 $string['completionstatus_completed'] = 'Completed';
+$string['completionstatusallscos'] = 'Require all scos to return completion status';
+$string['completionstatusallscos_help'] = 'Some SCORM packages contain multiple components or "scos" - when this is enabled all scos within the package must return the relevant lesson_status for this activity to be flagged complete.';
 $string['completionstatusrequired'] = 'Require status';
 $string['completionstatusrequired_help'] = 'Checking one or more statuses will require a user to achieve at least one of the checked statuses in order to be marked complete in this SCORM activity, as well as any other Activity Completion requirements.';
 $string['confirmloosetracks'] = 'WARNING: The package seems to be changed or modified. If the package structure is changed, some users tracks may be lost during update process.';
@@ -413,3 +415,4 @@ Notes on handling of multiple attempts:
 $string['whatgradedesc'] = 'Whether the highest, average (mean), first or last completed attempt is recorded in the gradebook if multiple attempts are allowed.';
 $string['width'] = 'Width';
 $string['window'] = 'Window';
+$string['youmustselectastatus'] = 'You must select a status to require';
index db9b026..f2c1d9f 100644 (file)
@@ -102,6 +102,9 @@ function scorm_add_instance($scorm, $mform=null) {
     if (empty($scorm->timeclose)) {
         $scorm->timeclose = 0;
     }
+    if (empty($scorm->completionstatusallscos)) {
+        $scorm->completionstatusallscos = 0;
+    }
     $cmid       = $scorm->coursemodule;
     $cmidnumber = $scorm->cmidnumber;
     $courseid   = $scorm->course;
@@ -192,6 +195,9 @@ function scorm_update_instance($scorm, $mform=null) {
     if (empty($scorm->timeclose)) {
         $scorm->timeclose = 0;
     }
+    if (empty($scorm->completionstatusallscos)) {
+        $scorm->completionstatusallscos = 0;
+    }
 
     $cmid       = $scorm->coursemodule;
     $cmidnumber = $scorm->cmidnumber;
@@ -1210,6 +1216,7 @@ function scorm_get_completion_state($course, $cm, $userid, $type) {
             "
             SELECT
                 id,
+                scoid,
                 element,
                 value
             FROM
@@ -1240,23 +1247,32 @@ function scorm_get_completion_state($course, $cm, $userid, $type) {
         // Get status.
         $statuses = array_flip(scorm_status_options());
         $nstatus = 0;
-
+        // Check any track for these values.
+        $scostatus = array();
         foreach ($tracks as $track) {
             if (!in_array($track->element, array('cmi.core.lesson_status', 'cmi.completion_status', 'cmi.success_status'))) {
                 continue;
             }
-
             if (array_key_exists($track->value, $statuses)) {
+                $scostatus[$track->scoid] = true;
                 $nstatus |= $statuses[$track->value];
             }
         }
 
-        if ($scorm->completionstatusrequired & $nstatus) {
+        if (!empty($scorm->completionstatusallscos)) {
+            // Iterate over all scos and make sure each has a lesson_status.
+            $scos = $DB->get_records('scorm_scoes', array('scorm' => $scorm->id, 'scormtype' => 'sco'));
+            foreach ($scos as $sco) {
+                if (empty($scostatus[$sco->id])) {
+                    return completion_info::aggregate_completion_states($type, $result, false);
+                }
+            }
+            return completion_info::aggregate_completion_states($type, $result, true);
+        } else if ($scorm->completionstatusrequired & $nstatus) {
             return completion_info::aggregate_completion_states($type, $result, true);
         } else {
             return completion_info::aggregate_completion_states($type, $result, false);
         }
-
     }
 
     // Check for score.
index 4b00473..5f6e5b0 100644 (file)
@@ -448,6 +448,17 @@ class mod_scorm_mod_form extends moodleform_mod {
                 $errors['timeclose'] = get_string('closebeforeopen', 'scorm');
             }
         }
+        if (!empty($data['completionstatusallscos'])) {
+            $requirestatus = false;
+            foreach (scorm_status_options(true) as $key => $value) {
+                if (!empty($data['completionstatusrequired'][$key])) {
+                    $requirestatus = true;
+                }
+            }
+            if (!$requirestatus) {
+                $errors['completionstatusallscos'] = get_string('youmustselectastatus', 'scorm');
+            }
+        }
 
         return $errors;
     }
@@ -513,6 +524,12 @@ class mod_scorm_mod_form extends moodleform_mod {
         }
         $mform->addHelpButton($firstkey, 'completionstatusrequired', 'scorm');
 
+        $mform->addElement('checkbox', 'completionstatusallscos', get_string('completionstatusallscos', 'scorm'));
+        $mform->setType('completionstatusallscos', PARAM_BOOL);
+        $mform->addHelpButton('completionstatusallscos', 'completionstatusallscos', 'scorm');
+        $mform->setDefault('completionstatusallscos', 0);
+        $items[] = 'completionstatusallscos';
+
         return $items;
     }
 
diff --git a/mod/scorm/tests/behat/completion_condition_require_status.feature b/mod/scorm/tests/behat/completion_condition_require_status.feature
new file mode 100644 (file)
index 0000000..084e231
--- /dev/null
@@ -0,0 +1,187 @@
+@mod @mod_scorm @_file_upload @_switch_frame
+Feature: Scorm multi-sco completion
+  In order to let students access a scorm package
+  As a teacher
+  I need to add scorm activity to a course
+  Background:
+    Given the following "users" exist:
+      | username | firstname | lastname | email |
+      | teacher1 | Teacher | 1 | teacher1@example.com |
+      | student1 | Student | 1 | student1@example.com |
+    And the following "courses" exist:
+      | fullname | shortname | category |
+      | Course 1 | C1 | 0 |
+    And the following "course enrolments" exist:
+      | user | course | role |
+      | teacher1 | C1 | editingteacher |
+      | student1 | C1 | student |
+
+  @javascript
+  Scenario: Test completion with a single sco completion.
+    When I log in as "teacher1"
+    And I follow "Course 1"
+    And I turn editing mode on
+    And I click on "Edit settings" "link" in the "Administration" "block"
+    And I set the following fields to these values:
+      | Enable completion tracking | Yes |
+    And I press "Save and display"
+    And I add a "SCORM package" to section "1"
+    And I set the following fields to these values:
+      | Name | Basic Multi-sco SCORM package |
+      | Description | Description |
+      | Completion tracking | Show activity as complete when conditions are met |
+      | Require all scos to return completion status | 0 |
+    And I set the field "Completed" to "1"
+    And I upload "mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip" file to "Package file" filemanager
+    And I click on "Save and display" "button"
+    Then I should see "Basic Multi-sco SCORM package"
+    And I log out
+    And I log in as "student1"
+    And I follow "Course 1"
+    And I follow "Basic Multi-sco SCORM package"
+    And I should see "Normal"
+    And I press "Enter"
+    And I switch to "scorm_object" iframe
+    And I should see "Play of the game"
+    And I switch to the main frame
+    And I follow "Exit activity"
+    Then I should see "Basic Multi-sco SCORM package"
+    And I log out
+    And I log in as "teacher1"
+    And I follow "Course 1"
+    Then "Student 1" user has completed "Basic Multi-sco SCORM package" activity
+
+  @javascript
+  Scenario: Test completion with all scos
+    When I log in as "teacher1"
+    And I follow "Course 1"
+    And I turn editing mode on
+    And I click on "Edit settings" "link" in the "Administration" "block"
+    And I set the following fields to these values:
+      | Enable completion tracking | Yes |
+    And I press "Save and display"
+    And I add a "SCORM package" to section "1"
+    And I set the following fields to these values:
+      | Name | ADV Multi-sco SCORM package |
+      | Description | Description |
+      | Completion tracking | Show activity as complete when conditions are met |
+      | Require all scos to return completion status | 1 |
+    And I set the field "Completed" to "1"
+    And I upload "mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip" file to "Package file" filemanager
+    And I click on "Save and display" "button"
+    Then I should see "ADV Multi-sco SCORM package"
+    And I log out
+    And I log in as "student1"
+    And I follow "Course 1"
+    And I follow "ADV Multi-sco SCORM package"
+    And I should see "Normal"
+    And I press "Enter"
+    And I switch to "scorm_object" iframe
+    And I should see "Play of the game"
+    And I switch to the main frame
+    And I follow "Exit activity"
+    Then I should see "ADV Multi-sco SCORM package"
+    And I log out
+    And I log in as "teacher1"
+    And I follow "Course 1"
+    Then "Student 1" user has not completed "ADV Multi-sco SCORM package" activity
+    And I log out
+    And I log in as "student1"
+    And I follow "Course 1"
+    And I follow "ADV Multi-sco SCORM package"
+    And I should see "Normal"
+    And I press "Enter"
+    And I switch to "scorm_object" iframe
+    And I should see "Play of the game"
+
+    And I switch to the main frame
+    And I click on "Par?" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Par"
+
+    And I switch to the main frame
+    And I click on "Keeping Score" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Scoring"
+
+    And I switch to the main frame
+    And I click on "Other Scoring Systems" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Other Scoring Systems"
+
+    And I switch to the main frame
+    And I click on "The Rules of Golf" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "The Rules of Golf"
+
+    And I switch to the main frame
+    And I click on "Playing Golf Quiz" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Knowledge Check"
+
+    And I switch to the main frame
+    And I click on "Taking Care of the Course" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Etiquette - Care For the Course"
+
+    And I switch to the main frame
+    And I click on "Avoiding Distraction" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Etiquette - Avoiding Distraction"
+
+    And I switch to the main frame
+    And I click on "Playing Politely" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Etiquette - Playing the Game"
+
+    And I switch to the main frame
+    And I click on "Etiquette Quiz" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Knowledge Check"
+
+    And I switch to the main frame
+    And I click on "Handicapping Overview" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Handicapping"
+
+    And I switch to the main frame
+    And I click on "Calculating a Handicap" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Calculating a Handicap"
+
+    And I switch to the main frame
+    And I click on "Calculating a Handicapped Score" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Calculating a Score"
+
+    And I switch to the main frame
+    And I click on "Handicapping Example" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Calculating a Score"
+
+    And I switch to the main frame
+    And I click on "Handicapping Quiz" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Knowledge Check"
+
+    And I switch to the main frame
+    And I click on "How to Have Fun Playing Golf" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "How to Have Fun Golfing"
+
+    And I switch to the main frame
+    And I click on "How to Make Friends Playing Golf" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "How to Make Friends on the Golf Course"
+
+    And I switch to the main frame
+    And I click on "Having Fun Quiz" "list_item"
+    And I switch to "scorm_object" iframe
+    And I should see "Knowledge Check"
+    And I switch to the main frame
+    And I follow "Exit activity"
+    Then I should see "ADV Multi-sco SCORM package"
+    And I log out
+    And I log in as "teacher1"
+    And I follow "Course 1"
+    And "Student 1" user has completed "ADV Multi-sco SCORM package" activity
\ No newline at end of file
index f081ae9..645241e 100644 (file)
@@ -770,8 +770,8 @@ class mod_scorm_external_testcase extends externallib_advanced_testcase {
         self::setUser($teacher);
 
         $additionalfields = array('updatefreq', 'timemodified', 'options',
-                                    'completionstatusrequired', 'completionscorerequired', 'autocommit',
-                                    'section', 'visible', 'groupmode', 'groupingid');
+                                    'completionstatusrequired', 'completionscorerequired', 'completionstatusallscos',
+                                    'autocommit', 'section', 'visible', 'groupmode', 'groupingid');
 
         foreach ($additionalfields as $field) {
             $fieldtype = $returndescription->keys['scorms']->content->keys[$field]->type;
diff --git a/mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip b/mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip
new file mode 100644 (file)
index 0000000..2f03d5b
Binary files /dev/null and b/mod/scorm/tests/packages/RuntimeMinimumCalls_SCORM12.zip differ
index a2f338d..0d0c003 100644 (file)
@@ -1,33 +1,20 @@
-Description of singlesco_scorm12.zip package
+Description of test packages
 ============================================
 
-singlesco_scorm12.zip is a simple Scorm 1.2 package used to run tests related with
-Moodle's scorm features; this package was downloaded from http://scorm.com/ website,
-the website disclaimer states that *Content on this site is licensed under a Creative
-Commons Attribution 3.0 License*.
+Sample Packages downloaded from http://scorm.com/scorm-explained/technical-scorm/golf-examples/
 
+* singlescobasic.zip - Single SCO with basic runtime calls. SCORM 1.2.
+* singlesco_scorm12.zip - Single SCO content packaging example. SCORM 1.2.
+* RuntimeMinimumCalls_SCORM12.zip - Multi-SCO packaging example. SCORM 1.2.
 
-Original source
-===============
+These packages were downloaded from http://scorm.com/ website,  the website
+disclaimer states that *Content on this site is licensed under a Creative
+Commons Attribution 3.0 License*. http://creativecommons.org/licenses/by/3.0/
 
-http://scorm.com
 
-http://scorm.com/scorm-explained/technical-scorm/golf-examples/
-
-
-Changes
-=======
-
-No changes were made to the original source contents.
-
-
-License
-=======
-
-http://creativecommons.org/licenses/by/3.0/
-
-
-Moodle commit history
-=====================
-
-MDL-43743
+Other test packages
+* badscorm.zip - contains a fake imsmanifest.xml inside a directory, used for validation check.
+* invalid.zip - zip file with an single html file, no SCORM config files, used for validation check.
+* validscorm.zip - non functional package with an imsmanifest.xml, used for validation check.
+* validaicc.zip - non functional package with AICC config files, used for validation check.
+* complexscorm.zip - copied from: https://github.com/jleyva/scorm-debugger
index ac22997..8576a41 100644 (file)
@@ -24,7 +24,7 @@
 
 defined('MOODLE_INTERNAL') || die();
 
-$plugin->version   = 2016052300;    // The current module version (Date: YYYYMMDDXX).
+$plugin->version   = 2016080900;    // The current module version (Date: YYYYMMDDXX).
 $plugin->requires  = 2016051900;    // Requires this Moodle version.
 $plugin->component = 'mod_scorm';   // Full name of the plugin (used for diagnostics).
 $plugin->cron      = 300;
index 422b6e6..d990a12 100644 (file)
@@ -24,6 +24,8 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
+defined('MOODLE_INTERNAL') || die();
+
 require_once($CFG->libdir.'/formslib.php');
 
 class mod_wiki_create_form extends moodleform {
index a2def6c..7c45245 100644 (file)
@@ -34,6 +34,8 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
+defined('MOODLE_INTERNAL') || die();
+
 /**
  * Given an object containing all the necessary data,
  * (defined by the form in mod.html) this function
index b8f0eab..6be0de1 100644 (file)
@@ -32,6 +32,8 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
+defined('MOODLE_INTERNAL') || die();
+
 require_once($CFG->dirroot . '/mod/wiki/lib.php');
 require_once($CFG->dirroot . '/mod/wiki/parser/parser.php');
 require_once($CFG->libdir . '/filelib.php');
index 660f92e..87e0e5d 100644 (file)
@@ -33,6 +33,8 @@
  * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
+defined('MOODLE_INTERNAL') || die();
+
 require_once($CFG->dirroot . '/mod/wiki/edit_form.php');
 
 /**
index fac7243..95f6132 100644 (file)
@@ -75,14 +75,14 @@ class workshop_accumulative_assessment_form extends workshop_assessment_form {
             $mform->addElement('html', $desc);
 
             // grade for this aspect
-            $label = get_string('dimensiongrade', 'workshopform_accumulative');
+            $label = get_string('dimensiongradefor', 'workshopform_accumulative', $dimtitle);
             $options = make_grades_menu($fields->{'grade__idx_' . $i});
             $options = array('-1' => get_string('choosedots')) + $options;
             $mform->addElement('select', 'grade__idx_' . $i, $label, $options);
             $mform->addRule(array('grade__idx_' . $i, 'minusone') , get_string('mustchoosegrade', 'workshopform_accumulative'), 'compare', 'gt');
 
             // comment
-            $label = get_string('dimensioncomment', 'workshopform_accumulative');
+            $label = get_string('dimensioncommentfor', 'workshopform_accumulative', $dimtitle);
             //$mform->addElement('editor', 'peercomment__idx_' . $i, $label, null, array('maxfiles' => 0));
             $mform->addElement('textarea', 'peercomment__idx_' . $i, $label, array('cols' => 60, 'rows' => 5));
         }
diff --git a/mod/workshop/form/accumulative/lang/en/deprecated.txt b/mod/workshop/form/accumulative/lang/en/deprecated.txt
new file mode 100644 (file)
index 0000000..a7d55aa
--- /dev/null
@@ -0,0 +1,2 @@
+dimensioncomment,workshopform_accumulative
+dimensiongrade,workshopform_accumulative
index 41a26e5..31ab57f 100644 (file)
@@ -26,9 +26,9 @@
 $string['absent'] = 'Absent';
 $string['addmoredimensions'] = 'Blanks for {$a} more aspects';
 $string['correct'] = 'Correct';
-$string['dimensioncomment'] = 'Comment';
+$string['dimensioncommentfor'] = 'Comment for {$a}';
 $string['dimensiondescription'] = 'Description';
-$string['dimensiongrade'] = 'Grade';
+$string['dimensiongradefor'] = 'Grade for {$a}';
 $string['dimensionmaxgrade'] = 'Best possible grade / Scale to use';
 $string['dimensionnumber'] = 'Aspect {$a}';
 $string['dimensionweight'] = 'Weight';
@@ -47,3 +47,7 @@ $string['scalename4'] = 'Excellent/Very poor (4 point)';
 $string['scalename5'] = 'Excellent/Very poor (5 point)';
 $string['scalename6'] = 'Excellent/Very poor (7 point)';
 $string['verypoor'] = 'Very poor';
+
+// Deprecated since Moodle 3.1.
+$string['dimensioncomment'] = 'Comment';
+$string['dimensiongrade'] = 'Grade';
index b752146..d53753f 100644 (file)
@@ -69,7 +69,7 @@ class workshop_comments_assessment_form extends workshop_assessment_form {
             $mform->addElement('html', $desc);
 
             // comment
-            $label = get_string('dimensioncomment', 'workshopform_comments');
+            $label = get_string('dimensioncommentfor', 'workshopform_comments', $dimtitle);
             //$mform->addElement('editor', 'peercomment__idx_' . $i, $label, null, array('maxfiles' => 0));
             $mform->addElement('textarea', 'peercomment__idx_' . $i, $label, array('cols' => 60, 'rows' => 10));
             $mform->addRule('peercomment__idx_' . $i, null, 'required', null, 'client');
diff --git a/mod/workshop/form/comments/lang/en/deprecated.txt b/mod/workshop/form/comments/lang/en/deprecated.txt
new file mode 100644 (file)
index 0000000..a680205
--- /dev/null
@@ -0,0 +1 @@
+dimensioncomment,workshopform_comments
index c331288..fb11fbe 100644 (file)
  */
 
 $string['addmoredimensions'] = 'Blanks for {$a} more aspects';
-$string['dimensioncomment'] = 'Comment';
+$string['dimensioncommentfor'] = 'Comment for {$a}';
 $string['dimensiondescription'] = 'Description';
 $string['dimensionnumber'] = 'Aspect {$a}';
 $string['pluginname'] = 'Comments';
+
+// Deprecated since Moodle 3.1.
+$string['dimensioncomment'] = 'Comment';
index 2c04cb1..77a7eda 100644 (file)
@@ -73,11 +73,11 @@ class workshop_numerrors_assessment_form extends workshop_assessment_form {
             $mform->addGroup(array(
                 $mform->createElement('radio', 'grade__idx_' . $i, '', $fields->{'grade0__idx_'.$i}, -1),
                 $mform->createElement('radio', 'grade__idx_' . $i, '', $fields->{'grade1__idx_'.$i}, 1),
-            ), 'group_grade__idx_' . $i, get_string('yourassessment', 'workshop'), '<br />', false);
+            ), 'group_grade__idx_' . $i, get_string('yourassessmentfor', 'workshop', $dimtitle), '<br />', false);
             $mform->addRule('group_grade__idx_' . $i, get_string('required'), 'required');
 
             // comment
-            $label = get_string('dimensioncomment', 'workshopform_numerrors');
+            $label = get_string('dimensioncommentfor', 'workshopform_numerrors', $dimtitle);
             $mform->addElement('textarea', 'peercomment__idx_' . $i, $label, array('cols' => 60, 'rows' => 5));
         }
         $this->set_data($current);
diff --git a/mod/workshop/form/numerrors/lang/en/deprecated.txt b/mod/workshop/form/numerrors/lang/en/deprecated.txt
new file mode 100644 (file)
index 0000000..c078309
--- /dev/null
@@ -0,0 +1 @@
+dimensioncomment,workshopform_numerrors
index a37c407..55fd534 100644 (file)
@@ -26,7 +26,7 @@
 $string['addmoredimensions'] = 'Blanks for {$a} more assertions';
 $string['configgrade0'] = 'The default word describing the negative assessment of an assertion.';
 $string['configgrade1'] = 'The default word describing the positive assessment of an assertion.';
-$string['dimensioncomment'] = 'Comment';
+$string['dimensioncommentfor'] = 'Comment for {$a}';
 $string['dimensiondescription'] = 'Description';
 $string['dimensiongrade'] = 'Grade';
 $string['dimensionnumber'] = 'Assertion {$a}';
@@ -40,3 +40,6 @@ $string['maperror'] = 'Weighted number of errors is less than or equals';
 $string['mapgrade'] = 'Grade for submission';
 $string['percents'] = '{$a} %';
 $string['pluginname'] = 'Number of errors';
+
+// Deprecated since Moodle 3.1.
+$string['dimensioncomment'] = 'Comment';
diff --git a/mod/workshop/lang/en/deprecated.txt b/mod/workshop/lang/en/deprecated.txt
new file mode 100644 (file)
index 0000000..e00292c
--- /dev/null
@@ -0,0 +1 @@
+yourassessment,mod_workshop
index 02644c0..996a83e 100644 (file)
@@ -347,6 +347,9 @@ $string['workshop:viewauthornames'] = 'View author names';
 $string['workshop:viewauthorpublished'] = 'View authors of published submissions';
 $string['workshop:viewpublishedsubmissions'] = 'View published submissions';
 $string['workshop:viewreviewernames'] = 'View reviewer names';
-$string['yourassessment'] = 'Your assessment';
+$string['yourassessmentfor'] = 'Your assessment for {$a}';
 $string['yourgrades'] = 'Your grades';
 $string['yoursubmission'] = 'Your submission';
+
+// Deprecated since Moodle 3.1.
+$string['yourassessment'] = 'Your assessment';
index 1cb06af..9594db0 100644 (file)
@@ -454,10 +454,16 @@ class question_category_object {
         $fromcontext = context::instance_by_id($oldcat->contextid);
         require_capability('moodle/question:managecategory', $fromcontext);
 
-        // If moving to another context, check permissions some more.
+        // If moving to another context, check permissions some more, and confirm contextid,stamp uniqueness.
+        $newstamprequired = false;
         if ($oldcat->contextid != $tocontextid) {
             $tocontext = context::instance_by_id($tocontextid);
             require_capability('moodle/question:managecategory', $tocontext);
+
+            // Confirm stamp uniqueness in the new context. If the stamp already exists, generate a new one.
+            if ($DB->record_exists('question_categories', array('contextid' => $tocontextid, 'stamp' => $oldcat->stamp))) {
+                $newstamprequired = true;
+            }
         }
 
         // Update the category record.
@@ -468,6 +474,9 @@ class question_category_object {
         $cat->infoformat = $newinfoformat;
         $cat->parent = $parentid;
         $cat->contextid = $tocontextid;
+        if ($newstamprequired) {
+            $cat->stamp = make_unique_id_code();
+        }
         $DB->update_record('question_categories', $cat);
 
         // If the category name has changed, rename any random questions in that category.
index 1fc91b2..0b8a0e5 100644 (file)
@@ -50,7 +50,7 @@ class core_question_generator extends component_generator_base {
             'contextid'  => context_system::instance()->id,
             'info'       => '',
             'infoformat' => FORMAT_HTML,
-            'stamp'      => '',
+            'stamp'      => make_unique_id_code(),
             'parent'     => 0,
             'sortorder'  => 999,
         );
index b08e19e..7d9c0a6 100644 (file)
@@ -31,7 +31,7 @@ Please note that this measure does not improve security of the server significan
 $string['check_configrw_name'] = 'Writable config.php';
 $string['check_configrw_ok'] = 'config.php can not be modified by PHP scripts.';
 $string['check_configrw_warning'] = 'PHP scripts may modify config.php.';
-$string['check_cookiesecure_details'] = '<p>If you enable https communication it is recommended that you also enable secure cookies. You should also add permanent redirection from http to https.</p>';
+$string['check_cookiesecure_details'] = '<p>If you enable https communication it is recommended that you also enable secure cookies. You should also add permanent redirection from http to https. Ideally also serve HSTS headers well.</p>';
 $string['check_cookiesecure_error'] = 'Please enable secure cookies';
 $string['check_cookiesecure_name'] = 'Secure cookies';
 $string['check_cookiesecure_ok'] = 'Secure cookies enabled.';
index 0add8e7..2839adb 100644 (file)
@@ -394,7 +394,7 @@ function report_security_check_cookiesecure($detailed=false) {
     $result->status  = null;
     $result->link    = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=httpsecurity\">".get_string('httpsecurity', 'admin').'</a>';
 
-    if (empty($CFG->cookiesecure)) {
+    if (!is_moodle_cookie_secure()) {
         $result->status = REPORT_SECURITY_SERIOUS;
         $result->info   = get_string('check_cookiesecure_error', 'report_security');
     } else {
index 07e5cc9..f3e6490 100644 (file)
@@ -2676,6 +2676,23 @@ h3.sectionname .inplaceeditable.inplaceeditingon .editinstructions {
 /** Chart output HTML table */
 .chart-output-htmltable {
     width: 100%;
+    text-align: right;
+    th {
+        width: 20%;
+    }
+    td {
+        width: 80%;
+    }
+}
+.dir-rtl .chart-output-htmltable {
+    width: 100%;
+    text-align: left;
+    th {
+        width: 20%;
+    }
+    td {
+        width: 80%;
+    }
 }
 
 /** Chart area. */
index 077bdea..2090609 100644 (file)
@@ -1,4 +1,4 @@
-.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post,.jsenabled.docked-region-side-post #block-region-side-post,.jsenabled.docked-region-side-pre #block-region-side-pre{display:none}.content-only #region-main.span9,.empty-region-side-post #region-bs-main-and-pre.span9,.empty-region-side-pre #region-bs-main-and-post.span9,.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-post #region-bs-main-and-pre.span9,.jsenabled.docked-region-side-post #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-pre #region-bs-main-and-post.span9{width:100%}.empty-region-side-pre #region-bs-main-and-pre.span9 #region-main,.jsenabled.docked-region-side-pre #region-bs-main-and-pre.span9 #region-main{float:none;width:100%}.empty-region-side-pre #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-pre #region-bs-main-and-post.span9 #region-main.span8{float:right}.content-only #region-main-box,.content-only #region-main{width:100%}.empty-region-side-pre.used-region-side-post #region-main{width:100%}.empty-region-side-post.used-region-side-pre #region-main-box{width:100%}.jsenabled.docked-region-side-pre.empty-region-side-pre.used-region-side-post #region-main{width:100%}.jsenabled.docked-region-side-post.empty-region-side-post.used-region-side-pre #region-main-box{width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8,.jsenabled.docked-region-side-post.used-region-side-pre #region-main.span8{width:74.46808511%;*width:74.41489362%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4,.jsenabled.docked-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.40425532%;*width:23.35106383%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{list-style:none;margin:0;padding:0}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.highlight{background:#d9edf7}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.pagelayout-mydashboard.jsenabled .collapsibleregioncaption{cursor:pointer}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.collapsible-actions{display:none;text-align:right}.dir-rtl .collapsible-actions{text-align:left}.jsenabled .collapsible-actions{display:block}.collapsible-actions .collapseexpand{padding-left:20px;background:url([[pix:t/collapsed]]) 2px center no-repeat}.dir-rtl .collapsible-actions .collapseexpand{padding-right:20px;padding-left:0;background:url([[pix:t/collapsed_rtl]]) right center no-repeat}.collapsible-actions .collapse-all,.dir-rtl .collapsible-actions .collapse-all{background-image:url([[pix:t/expanded]])}.yui-overlay .yui-widget-bd{background-color:#FFEE69;border:1px solid #A6982B;border-top-color:#D4C237;color:#000000;left:0;padding:2px 5px;position:relative;top:0;z-index:1}.clearer{background:transparent;border-width:0;clear:both;display:block;height:1px;margin:0;padding:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage{font-weight:bold}img.resize{height:1em;width:1em}.block img.resize,.breadcrumb img.resize{height:.9em;width:.8em}img.icon{height:16px;vertical-align:text-bottom;width:16px;padding-right:6px}.dir-rtl img.icon{padding-left:6px;padding-right:0}img.iconsmall{height:12px;margin-right:3px;vertical-align:middle;width:12px}img.iconhelp,.helplink img{height:16px;padding-left:3px;vertical-align:text-bottom;width:16px}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle;padding:4px}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{height:24px;width:24px;vertical-align:middle}img.iconsort{vertical-align:text-bottom;padding-left:.3em;margin-bottom:.15em}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{height:17px;vertical-align:middle;width:50px}img.iconkbhelp{height:17px;width:49px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-left:3px;padding-right:0}.boxaligncenter{margin-left:auto;margin-right:auto}.boxalignright{margin-left:auto;margin-right:0}.boxalignleft{margin-left:0;margin-right:auto}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-left:auto;margin-right:auto}table.flexible .emptyrow{display:none}img.emoticon{vertical-align:middle;width:15px;height:15px}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{vertical-align:text-bottom;margin:0 .3em}.no-overflow{overflow:auto;padding-bottom:1px}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-weight:normal;font-size:1em}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{text-align:right;padding-right:4px}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{height:16px;width:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{margin:0;padding:0;width:90%}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px;display:inline-block}.groupselector label{display:inline-block}.dataformatselector{margin:1em 0}.dataformatselector label{display:inline-block;margin:0 5px 10px 0;line-height:30px;vertical-align:top}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{margin:5px;padding:10px;text-align:center}.loginbox .loginpanel .desc{margin:0;padding:0;margin-bottom:5px;margin-top:15px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-left:0;margin-right:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;text-align:right;width:49%;white-space:nowrap}.loginbox .loginform .form-input{float:right;width:50%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{width:48%;border:0;margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;float:left;margin-left:2.76243%;min-height:30px;margin-bottom:-2000px;padding-bottom:2000px}.dir-rtl .loginbox.twocolumns .loginpanel,.dir-rtl .loginbox.twocolumns .signuppanel{float:right}.loginbox .potentialidp .smallicon{vertical-align:text-bottom;margin:0 .3em}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{font-size:12px;display:none;margin:0;padding:0}.comment-ctrl h5{margin:0;padding:5px}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area textarea.fullwidth{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{font-size:11px;overflow:auto;list-style:none;padding:0;margin:0}.comment-list li{margin:2px;list-style:none;margin-bottom:5px;clear:both;padding:.3em;position:relative}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{width:20px;float:left}.dir-rtl .comment-message .picture{float:right}.comment-message .text{margin:0;padding:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;left:0;right:auto;margin:.3em}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}img.user-image{height:100px;width:100px}#tag-search-box{text-align:center;margin:10px auto}.path-tag .tag-index-items .tagarea{border:1px solid #E3E3E3;border-radius:4px;padding:10px;margin-top:10px}.path-tag .tag-index-items .tagarea h3{display:block;padding:3px 0 10px 0;margin:0;font-size:1.1em;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase;word-wrap:break-word;border-bottom:solid 1px #E3E3E3;margin-bottom:10px}.path-tag .tagarea .controls,.path-tag .tagarea .taggeditems{*zoom:1}.path-tag .tagarea .controls:before,.path-tag .tagarea .taggeditems:before,.path-tag .tagarea .controls:after,.path-tag .tagarea .taggeditems:after{display:table;content:"";line-height:0}.path-tag .tagarea .controls:after,.path-tag .tagarea .taggeditems:after{clear:both}.path-tag .tagarea .controls,.path-tag .tag-backtoallitems{text-align:center}.path-tag .tagarea .controls .gotopage.nextpage{float:right}.path-tag .tagarea .controls .gotopage.prevpage{float:left}.path-tag .tagarea .controls .exclusivemode{display:inline-block}.dir-rtl.path-tag .tagarea .controls .gotopage.nextpage{float:left}.dir-rtl.path-tag .tagarea .controls .gotopage.prevpage{float:right}.path-tag .tagarea .controls.controls-bottom{margin-top:5px}.path-tag .tagarea .controls .gotopage.nextpage::after{padding-right:5px;padding-left:5px;content:"»"}.path-tag .tagarea .controls .gotopage.prevpage::before{padding-right:5px;padding-left:5px;content:"«"}span.flagged-tag,tr.flagged-tag,span.flagged-tag a,tr.flagged-tag a{color:#b94a48}.tag-management-table td,.tag-management-table th{vertical-align:middle;padding:4px}.tag-management-table .inplaceeditable.inplaceeditingon input{width:150px}.path-admin-tag .addstandardtags{float:right}.path-admin-tag .addstandardtags img{margin:0 5px}.dir-rtl.path-admin-tag .addstandardtags{float:left}.path-tag .tag-relatedtags{padding-top:10px}.path-tag .tag-management-box{text-align:right}.path-tag .tag-index-toc{padding:10px;text-align:center}.path-tag .tag-index-toc li,.path-tag .tag-management-box li{margin-left:5px;margin-right:5px}.path-tag .tag-management-box li a.edittag{background-image:url([[pix:moodle|i/settings]])}.path-tag .tag-management-box li a.flagasinappropriate{background-image:url([[pix:moodle|i/flagged]])}.path-tag .tag-management-box li a.removefrommyinterests{background-image:url([[pix:moodle|t/delete]])}.path-tag .tag-management-box li a.addtomyinterests{background-image:url([[pix:moodle|t/add]])}.path-tag .tag-management-box li a{background-repeat:no-repeat;background-position:left;padding-left:17px}.tag_feed.media-list .media .itemimage{float:left}.dir-rtl .tag_feed.media-list .media .itemimage{float:right}.tag_feed.media-list .media .itemimage img{height:35px;width:35px}.tag_feed.media-list .media .media-body{padding-right:10px;padding-left:10px}.tag_feed .media .muted a{color:#999}.tag_cloud{text-align:center}.tag_cloud .inline-list li{padding:0 .2em}.tag_cloud .tag_overflow{margin-top:1em;font-style:italic}.tag_cloud .s20{font-size:2.7em}.tag_cloud .s19{font-size:2.6em}.tag_cloud .s18{font-size:2.5em}.tag_cloud .s17{font-size:2.4em}.tag_cloud .s16{font-size:2.3em}.tag_cloud .s15{font-size:2.2em}.tag_cloud .s14{font-size:2.1em}.tag_cloud .s13{font-size:2em}.tag_cloud .s12{font-size:1.9em}.tag_cloud .s11{font-size:1.8em}.tag_cloud .s10{font-size:1.7em}.tag_cloud .s9{font-size:1.6em}.tag_cloud .s8{font-size:1.5em}.tag_cloud .s7{font-size:1.4em}.tag_cloud .s6{font-size:1.3em}.tag_cloud .s5{font-size:1.2em}.tag_cloud .s4{font-size:1.1em}.tag_cloud .s3{font-size:1em}.tag_cloud .s2{font-size:.9em}.tag_cloud .s1{font-size:.8em}.tag_cloud .s0{font-size:.7em}.tag_list ul{display:inline}.tag_list.hideoverlimit .overlimit{display:none}.tag_list .tagmorelink{display:none}.tag_list.hideoverlimit .tagmorelink{display:inline}.tag_list.hideoverlimit .taglesslink{display:none}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{border:1px solid #000;background-color:#FFF;display:none}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-repeat:no-repeat;background-position:100%}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{white-space:nowrap;padding-right:16px}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;margin:2px -3px;margin-left:10px;display:none;border-width:0;z-index:1010}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment tr{vertical-align:top}.userenrolment td{padding:0;height:41px}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield{margin-left:40px}.userenrolment .col_userdetails .subfield_picture{float:left;margin-left:0}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles,.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_role .role,.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_role .role a,.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole,.userenrolment .col_group .addgroup{float:right;padding:3px;margin:3px}.userenrolment .col_role .addrole>a:hover,.userenrolment .col_group .addgroup>a:hover{border-bottom:1px solid #666}.userenrolment .col_role .addrole img,.userenrolment .col_group .addgroup img{vertical-align:baseline}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline;margin-right:0}#page-enrol-users #filterform{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;display:inline-block}#page-enrol-users #filterform blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}#page-enrol-users #filterform .fitem{display:inline-block;line-height:40px;margin-right:.3em;white-space:nowrap}#page-enrol-users #filterform .fitem label{display:inline;line-height:20px;padding-right:.3em}#page-enrol-users #filterform .fitem :before,#page-enrol-users #filterform .fitem :after{display:inline}#page-enrol-users #filterform div,#page-enrol-users #filterform fieldset{display:inline;float:none;clear:none;width:auto;margin:0}#page-enrol-users #filterform select,#page-enrol-users #filterform .ftext input{width:7em}#page-enrol-users #filterform input,#page-enrol-users #filterform select{margin-bottom:0}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}#page-enrol-users .user-enroller-panel .uep-search-results .cohort .details{width:237px}.dir-rtl#page-enrol-users .col_userdetails .subfield{margin-right:40px;margin-left:5px}.dir-rtl#page-enrol-users .col_userdetails .subfield_picture{float:right;margin-right:0}.dir-rtl#page-enrol-users .enrol_user_buttons{float:left}.dir-rtl#page-enrol-users .enrol_user_buttons .enrolusersbutton{margin-left:0;margin-right:1em}.dir-rtl#page-enrol-users .enrol_user_buttons .enrolusersbutton div{margin-left:0}.dir-rtl#page-enrol-users #filterform .fitem{margin-right:0;margin-left:.3em}.dir-rtl#page-enrol-users #filterform .fitem label{padding-right:0;padding-left:.3em}.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .count,.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .picture,.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .details{float:right}.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .options .enrol{float:left}#page-enrol-users .enrol-users-page-action input{margin-left:0}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right;margin-right:1%}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{background-color:#CCC;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-outer{display:table}.mod-indent{display:table-cell}.label .mod-indent{float:left;padding-top:20px}.mod-indent-1{width:30px}.mod-indent-2{width:60px}.mod-indent-3{width:90px}.mod-indent-4{width:120px}.mod-indent-5{width:150px}.mod-indent-6{width:180px}.mod-indent-7{width:210px}.mod-indent-8{width:240px}.mod-indent-9{width:270px}.mod-indent-10{width:300px}.mod-indent-11{width:330px}.mod-indent-12{width:360px}.mod-indent-13{width:390px}.mod-indent-14{width:420px}.mod-indent-15{width:450px}.mod-indent-16{width:480px}.mod-indent-huge{width:480px}.resourcecontent .mediaplugin_mp3 object{height:25px;width:600px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{height:15px;width:300px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}body#page-lib-editor-tinymce-plugins-moodlemedia-preview{padding:0;margin:0;min-width:0;background:none}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat;cursor:pointer}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{white-space:nowrap;text-align:center}.initialbar a,.initialbar strong{padding-left:3px;padding-right:3px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-base .moodle-dialogue-fullscreen{left:0;top:0;right:0;bottom:-50px;position:fixed}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{overflow:auto}.moodle-dialogue-base .moodle-dialogue-fullscreen .closebutton{width:28px;height:16px;background-size:100%}.moodle-dialogue-base .moodle-dialogue{padding:0;margin:0;background:none;border:none;z-index:600;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd.yui3-widget-hd{margin:0;padding:5px;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;border-bottom:1px solid #bbb;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0);filter:0}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{margin:0;padding:0;display:inline;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{width:25px;height:15px;float:right;vertical-align:middle;display:inline-block;cursor:pointer;padding:0;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{left:0;right:auto}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;line-height:2em;color:#555;font-size:12px}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{overflow:auto;position:absolute;top:0;bottom:50px;left:0;right:0;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{border:1px solid #ccc;background-color:#fff}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{color:navy;font-size:11.9px}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{color:#b94a48;font-size:11.9px}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{color:#333;font-size:90%;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;text-align:right;background-color:#FFF;font-size:12px}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;margin:0;padding:4px 1em}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-left:25px;margin-bottom:4px;padding-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{opacity:.75;filter:alpha(opacity=75);width:100%;height:100%;top:0;left:0;background-color:white;text-align:center;padding:10% 0}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip .moodle-dialogue-bd{overflow:auto}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#F2F2F2;-webkit-border-bottom-right-radius:10px;-moz-border-radius-bottomright:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;-moz-border-radius-bottomleft:10px;border-bottom-left-radius:10px}.choosercontainer #chooseform .submitbuttons{padding:.7em 0;text-align:center}@media (max-height:639px){.ios.safari .choosercontainer #chooseform .submitbuttons{padding:45px 0}}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #BBBBBB}.jschooser .choosercontainer #chooseform .alloptions{overflow-x:hidden;overflow-y:auto;max-width:20.3em;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.jschooser .choosercontainer #chooseform .alloptions .option input[type=radio]{display:inline-block}.jschooser .choosercontainer #chooseform .alloptions .option .modicon{display:inline-block}.jschooser .choosercontainer #chooseform .alloptions .option .typename{display:inline-block;width:65%}.dir-rtl.jschooser .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{margin-bottom:0;padding:0 1.6em 0 1.6em}.choosercontainer #chooseform .moduletypetitle{text-transform:uppercase;padding-top:1.2em;padding-bottom:.4em}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.chooserdialogue-course-modchooser .choosercontainer #chooseform .option span.modicon img.icon,.chooserdialogue-course-modchooser .choosercontainer #chooseform .nonoption span.modicon img.icon{height:24px;width:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #FFFFFF}.choosercontainer #chooseform .nonoption{padding-left:2.7em;padding-top:.3em;padding-bottom:.1em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{margin-bottom:0;padding:0 1.6em 0 3.2em}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jschooser .choosercontainer #chooseform .instruction,.jschooser .choosercontainer #chooseform .typesummary{display:none;position:absolute;top:0;right:0;bottom:0;left:20.3em;margin:0;padding:1.6em;background-color:#fff;overflow-x:hidden;overflow-y:auto;line-height:2em}.dir-rtl.jschooser .choosercontainer #chooseform .instruction,.dir-rtl.jschooser .choosercontainer #chooseform .typesummary{left:0;right:18.5em;border-right:1px solid grey}.jschooser .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-bottom:25px;padding-right:10px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;margin:15px 0;padding:1px 19px 14px;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;cursor:pointer;bottom:-1px;right:-1px;padding:3px 7px;font-size:12px;font-weight:bold;background-color:whiteSmoke;border:1px solid #ddd;color:#9DA0A4;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{margin:15px 0;padding:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{cursor:pointer;border-bottom:1px solid;border-color:#E1E1E8;border-left:1px solid #E1E1E8;border-right:1px solid #E1E1E8;background-color:#F7F7F9;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;padding:6px;top:50%;left:50%;min-height:34px;float:left;width:150px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}.dir-rtl table.collection .name,.dir-rtl table.collection .criteria,.dir-rtl table.collection .description{text-align:right}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{padding:0 3px;float:right}div.criteria-description{padding:10px 15px;margin:5px 0;background:none repeat scroll 0 0 #f9f9f9;border:1px solid #EEE}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;padding-top:1em;text-align:center;vertical-align:top;width:150px}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{width:100px;height:100px;left:10px;top:0;z-index:1}.badges li .badge-actions{position:relative}.badges li .expireimage{width:100px;height:100px;left:25px;top:0;position:absolute;z-index:10;opacity:.85}#badge-image{background-color:transparent;padding:0;position:relative;min-width:100px;width:20%;display:inline-block;vertical-align:top;margin-top:17px}#badge-image .expireimage{width:100px;height:100px;left:0;top:0;opacity:.85;filter:alpha(opacity=85);position:absolute;z-index:10}#badge-image .singlebutton{padding-top:5px}#badge-image .singlebutton input{margin-left:0}.dir-rtl #badge-image{float:right}.dir-rtl #badge-image .expireimage{left:41px}#badge-details{display:inline-block;width:79%}#badge-overview dl,#badge-details dl{margin:0}#badge-overview dl dt,#badge-details dl dt,#badge-overview dl dd,#badge-details dl dd{vertical-align:top;padding:3px 0}#badge-overview dl dt,#badge-details dl dt{clear:both;display:inline-block;width:20%;min-width:100px}#badge-overview dl dd,#badge-details dl dd{display:inline-block;width:79%;margin-left:1%}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}.connecting{color:#8a6d3b}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{margin:.3em 0;padding:.5em 0;width:100%}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}#issued-badge-table .activatebadge{display:inline-block}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.statusbox{text-align:center;margin-bottom:5px;padding:5px}.statusbox .activatebadge{display:inline-block}.statusbox .activatebadge input[type=submit]{margin:3px}.activatebadge{margin:0;text-align:left;vertical-align:middle}.dir-rtl .activatebadge{text-align:right}img#persona_signin{cursor:pointer}.addcourse{float:right}.invisiblefieldset{display:inline;margin:0;padding:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.page-context-header{overflow:hidden}.page-context-header .page-header-image,.page-context-header .page-header-headings{display:block;position:relative}.page-context-header .page-header-image{margin-bottom:1em}.page-context-header .page-header-headings{margin-top:30px;margin-bottom:10px}.page-context-header .page-header-headings h1{display:block}.page-context-header .page-header-headings,.page-context-header .header-button-group{position:relative;line-height:24px;vertical-align:middle}.page-context-header .header-button-group{display:block}.page-context-header .header-button-group a{position:relative;top:-0.4em}.dir-ltr .page-context-header .page-header-image{float:left;margin-right:1em}.dir-ltr .page-context-header .header-button-group{float:left}.dir-rtl .page-context-header .page-header-image{float:right;margin-left:1em}.dir-rtl .page-context-header .header-button-group{float:right}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.section_action_menu .moodle-actionmenu ul.menubar{margin:0}.section_action_menu .moodle-actionmenu ul.menu{margin:0 10px 10px 0}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu{display:block;margin-left:4px;padding-left:4px;padding-right:4px}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .iconsmall,.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .smallicon{margin:4px 4px 4px 0;padding:8px 4px 0 2px;vertical-align:text-bottom}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-top:8px;margin-left:2px;border-top-color:#777}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret:hover,.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret:active{border-top-color:#555}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.jsenabled.dir-rtl .moodle-actionmenu[data-enhance] .toggle-display.textmenu{margin-left:initial;margin-right:4px}.jsenabled.dir-rtl .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-left:initial;margin-right:2px}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{display:block;position:absolute;text-align:left;background-color:#fff;border:1px solid rgba(0,0,0,0.2);z-index:1000;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;color:#333;padding:2px 1em 2px 28px}.moodle-actionmenu[data-enhanced].show .menu a:hover{color:#fff;background-color:#0070a8}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall,.moodle-actionmenu[data-enhanced].show .menu .smallicon{margin:4px 4px 4px -24px;padding:4px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{bottom:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{bottom:100%;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{bottom:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{bottom:100%;right:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show.nowrap-items .menu>li{white-space:nowrap}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{text-align:right;left:0;right:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu a{padding:2px 28px 2px 1em}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall,.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .smallicon{margin-right:-24px;margin-left:4px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}a.disabled:hover,a.disabled{text-decoration:none;cursor:default;font-style:italic;color:#808080}body.lockscroll{height:100%;overflow:hidden}.dir-rtl ul{margin-left:0;margin-right:25px}.progressbar_container{max-width:500px;margin:0 auto}.ie10 .yui3-calendar-header-label{display:inline-block}dd:before,dd:after{display:block;content:" "}dd:after{clear:both}.nav-tabs>.active>a[href],.nav-tabs>.active>a[href]:hover,.nav-tabs>.active>a[href]:focus{cursor:pointer}.inplaceeditable.inplaceeditingon{position:relative}.inplaceeditable.inplaceeditingon .editinstructions{margin-top:-30px;font-weight:normal;margin-right:0;margin-left:0;left:0;right:auto;white-space:nowrap}.inplaceeditable.inplaceeditingon input{width:330px;height:16px;vertical-align:text-bottom;margin-bottom:0}.inplaceeditable.inplaceeditingon select{margin-bottom:0}.inplaceeditable .quickediticon img{opacity:.2}.inplaceeditable .quickeditlink{color:inherit;text-decoration:inherit}.inplaceeditable:hover .quickeditlink .quickediticon img,.inplaceeditable .quickeditlink:focus .quickediticon img{opacity:1}.inplaceeditable.inplaceeditable-toggle .quickediticon{display:none}.dir-rtl .inplaceeditable.inplaceeditingon .editinstructions{right:0;left:auto}h3.sectionname .inplaceeditable.inplaceeditingon .editinstructions{margin-top:-20px}.chart-output-htmltable{width:100%}.chart-area .chart-table-data{display:none}.chart-area .chart-table-expand{text-align:right}.chart-area .chart-table.accesshide .chart-table-expand{display:none}.chart-area .chart-table.accesshide .chart-table-data{display:block}.dir-rtl .chart-area .chart-table-expand{text-align:left}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-left:auto;margin-right:auto}.path-admin .admintable .leftalign{text-align:left}.dir-rtl.path-admin .admintable .leftalign{text-align:right}.environmenttable p.warn{background-color:#fcf8e3;color:#8a6d3b}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-left:10px;padding-right:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#8a6d3b}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok,#page-admin-report-backups-index .backup-notyetrun{color:#468847}#page-admin-report-backups-index .backup-warning{color:#8a6d3b}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{margin:0;padding:.3em}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{text-align:center;margin-bottom:1em}.path-admin-roles .capabilitysearchui{text-align:left;margin-left:auto;margin-right:auto}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#f5f5f5;border:1px solid #ddd}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .adminerror{margin:auto;padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:#8a6d3b;width:60%;min-width:220px}#page-admin-index .adminerror{background-color:#f2dede;border-color:#eed3d7;color:#b94a48}#page-admin-index .releasenoteslink{background-color:#d9edf7;border-color:#bce8f1;color:#3a87ad}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{text-align:center;margin-bottom:1em}#page-admin-report-courseoverview-index .graph{text-align:center;margin-bottom:1em}#page-admin-lang .translator{border-width:1px;border-style:solid}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{vertical-align:top;padding:.2em .3em}.path-admin .roleassigntable p{text-align:left;margin:.2em 0}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{text-align:left;font-weight:normal}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{text-align:center;padding:0;min-width:3.5em}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;white-space:nowrap;font-weight:normal}.path-admin .rolecap label{display:block;text-align:center;padding:.5em;margin:0}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-left:auto;margin-right:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-left:.3em;padding-right:0}#trustedhosts .generaltable{margin-left:auto;margin-right:auto;width:500px}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{width:640px;display:inline}.form-item .form-setting .form-htmlarea .htmlarea{width:640px;display:block}.form-item .form-setting .form-multicheckbox ul{list-style:none;padding:0;margin:7px 0 0 0}.form-item .form-setting .defaultsnext{margin-right:.5em;display:inline}.dir-rtl .form-item .form-setting .defaultsnext{margin-left:.5em;margin-right:0}.form-item .form-setting .locked-checkbox{margin-right:.2em;margin-left:.5em;display:inline}.dir-rtl .form-item .form-setting .locked-checkbox{margin-right:.5em;margin-left:.2em;display:inline}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid #000;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid #000;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;height:102px;width:410px;margin-bottom:10px}.admin_colourpicker .loadingicon{vertical-align:middle;margin-left:auto}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{border:1px solid #000;margin-left:301px}.admin_colourpicker .currentcolour{border:1px solid #000;margin-left:301px;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release{background-color:#d9edf7}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release{background-color:#f2dede}#page-admin-plugins #plugins-overview-panel .info{display:inline-block;margin-right:1em}#page-admin-plugins .checkforupdates{margin:10px 0}#page-admin-plugins .checkforupdates .singlebutton{margin:5px 0;padding:0}#page-admin-plugins .checkforupdates .singlebutton div,#page-admin-plugins .checkforupdates .singlebutton input{margin:0 3px 0 0}#page-admin-plugins .updateavailableinstallall{margin:5px 0;padding:0}#page-admin-plugins .updateavailableinstallall div,#page-admin-plugins .updateavailableinstallall input{margin:0 3px 5px 0}#page-admin-plugins #plugins-control-panel .status-missing td{background-color:#f2dede}#page-admin-plugins #plugins-control-panel .pluginname .displayname img.icon{padding-top:0;padding-bottom:0}#page-admin-plugins #plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999;margin-left:22px}#page-admin-plugins #plugins-control-panel .version .versionnumber{font-size:11.9px;color:#999}#page-admin-plugins #plugins-control-panel .uninstall a{color:#b94a48}#page-admin-plugins #plugins-control-panel .notes .label{margin-right:3px}#page-admin-plugins #plugins-control-panel .notes .requiredby{font-size:11.9px;color:#999}#plugins-check-page .page-description{color:#999}#plugins-check-page .checkforupdates .singlebutton{margin:5px 0;padding:0}#plugins-check-page .checkforupdates .singlebutton div,#plugins-check-page .checkforupdates .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check-info .actions>div{display:inline-block;margin-right:1em}#plugins-check-page #plugins-check-info .actions .singlebutton{margin:5px 0;padding:0}#plugins-check-page #plugins-check-info .actions .singlebutton div,#plugins-check-page #plugins-check-info .actions .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check .requires-ok{color:#999}#plugins-check-page #plugins-check .status-missing td,#plugins-check-page #plugins-check .status-downgrade td{background-color:#f2dede}#plugins-check-page #plugins-check .displayname .pluginicon{margin-right:5px;width:16px}#plugins-check-page #plugins-check .displayname .plugindir{color:#999;font-size:11.9px}#plugins-check-page #plugins-check .requires ul{margin-left:13px}#plugins-check-page #plugins-check .status .actionbutton{margin:5px 0;padding:0}#plugins-check-page #plugins-check .status .actionbutton input{margin:0}#plugins-check-page .plugins-check-dependencies-actions>div{display:inline-block;margin-right:1em}#plugins-check-page .plugins-check-dependencies-actions .singlebutton{margin:5px 0;padding:0}#plugins-check-page .plugins-check-dependencies-actions .singlebutton div,#plugins-check-page .plugins-check-dependencies-actions .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check-available-dependencies .displayname .component{font-size:11.9px;color:#999}#plugins-check-page #plugins-check-available-dependencies .info .actions>div{display:inline-block;margin-right:1em}#plugins-check-page #plugins-check-available-dependencies .info .actions .dependencyinstall{display:block;margin:5px 0;padding:0}#plugins-check-page #plugins-check-available-dependencies .info .actions .dependencyinstall input{margin:0}#plugins-check-page .pluginupdateinfo,#plugins-control-panel .pluginupdateinfo{background-color:#d9edf7;padding:5px;margin:10px 0;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-check-page .pluginupdateinfo.maturity50,#plugins-control-panel .pluginupdateinfo.maturity50{background-color:#f2dede}#plugins-check-page .pluginupdateinfo.maturity100,#plugins-control-panel .pluginupdateinfo.maturity100,#plugins-check-page .pluginupdateinfo.maturity150,#plugins-control-panel .pluginupdateinfo.maturity150{background-color:#fcf8e3}#plugins-check-page .pluginupdateinfo .info,#plugins-control-panel .pluginupdateinfo .info{display:inline-block}#plugins-check-page .pluginupdateinfo .separator:after,#plugins-control-panel .pluginupdateinfo .separator:after{content:" | "}#plugins-check-page .pluginupdateinfo .singlebutton,#plugins-control-panel .pluginupdateinfo .singlebutton{margin:5px 0;padding:0}#plugins-check-page .pluginupdateinfo .singlebutton div,#plugins-control-panel .pluginupdateinfo .singlebutton div,#plugins-check-page .pluginupdateinfo .singlebutton input,#plugins-control-panel .pluginupdateinfo .singlebutton input{margin:0 3px 0 0}.plugins-management-confirm-buttons>div{display:inline-block;margin:1em 1em 1em 0}.plugins-management-confirm-buttons .continue{padding:0}.plugins-management-confirm-buttons .continue div,.plugins-management-confirm-buttons .continue input{margin:0}.uninstalldeleteconfirmexternal{background-color:#fcf8e3;padding:.5em 1em;margin:5px 0 10px 0}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator:after{content:" | "}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .deletedhostinfo{background-color:#f2dede;border:2px solid #eed3d7;padding:4px;margin-bottom:5px}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}.maintenancewarning{padding:3px 1em;text-align:center;position:fixed;bottom:0;right:0;overflow:hidden;z-index:1}.maintenancewarning.error{color:#b94a48;background-color:#f2dede;border:2px solid #eed3d7;font-weight:bold}.maintenancewarning.warning{color:#8a6d3b;background-color:#fcf8e3;border:2px solid #fbeed5}#adminsettings .form-overridden{color:#3a87ad;background-color:#d9edf7}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendartable{width:100%}.path-calendar .calendartable th,.path-calendar .calendartable td{width:14%;vertical-align:top;text-align:center;border:0}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{text-align:center;width:76%}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .filters table{border-collapse:separate;border-spacing:2px;width:100%}.path-calendar .cal_courses_flt{float:left}.path-calendar .cal_courses_flt label{margin-right:.45em}.path-calendar .maincalendar{vertical-align:top;padding:0}.path-calendar .maincalendar .bottom{text-align:center;padding:5px 0 0 0}.path-calendar .maincalendar .heightcontainer{height:100%;position:relative}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{list-style-type:none;margin-top:4px}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .calendar_event_course,.path-calendar .maincalendar .calendar_event_global,.path-calendar .maincalendar .calendar_event_group,.path-calendar .maincalendar .calendar_event_user{border-width:1px 1px 1px 12px;border-style:solid}.path-calendar .maincalendar .calendar_event_course{border-color:#ffd3bd}.path-calendar .maincalendar .calendar_event_global{border-color:#d6f8cd}.path-calendar .maincalendar .calendar_event_group{border-color:#fee7ae}.path-calendar .maincalendar .calendar_event_user{border-color:#dce7ec}.path-calendar .maincalendar .calendar-event-panel{background-color:#eee;border:2px solid #eee}.path-calendar .maincalendar .calendar-event-panel .yui3-overlay-content{padding:19px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.path-calendar .maincalendar .calendar-controls .current{font-family:inherit;font-weight:bold;color:inherit;font-size:25px;line-height:1.2}.path-calendar .maincalendar .calendartable td,.path-calendar .maincalendar .calendartable li{padding:5px}.path-calendar .maincalendar .calendartable li{padding-left:10px;text-align:left}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.path-calendar .maincalendar .eventlist{margin:0}.path-calendar .maincalendar .eventlist .event{width:92%;border-spacing:0;border-collapse:separate;position:relative;padding:20px 4%;margin-bottom:20px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);list-style-type:none}.path-calendar .maincalendar .eventlist .event>img{padding-top:3px;float:left}.path-calendar .maincalendar .eventlist .event .name{font-size:17.5px;font-weight:200;line-height:24px;float:left;margin:0}.path-calendar .maincalendar .eventlist .event .name,.path-calendar .maincalendar .eventlist .event .course{margin-bottom:5px}.path-calendar .maincalendar .eventlist .event .date{float:right}.path-calendar .maincalendar .eventlist .event .course,.path-calendar .maincalendar .eventlist .event .subscription{float:left;clear:left}.path-calendar .maincalendar .eventlist .event .side{width:22px}.path-calendar .maincalendar .eventlist .event .description{background-color:#fff;padding:5px;clear:both}.path-calendar .maincalendar .eventlist .event .description .commands{position:absolute;right:0;top:0;margin:3px}.path-calendar .maincalendar .eventlist .event .commands{position:absolute;top:2px;right:2px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.dir-rtl.path-calendar .cal_courses_flt{float:right}.dir-rtl.path-calendar .cal_courses_flt label{margin-left:.45em;margin-right:0}.dir-rtl.path-calendar .maincalendar .calendar_event_course,.dir-rtl.path-calendar .maincalendar .calendar_event_global,.dir-rtl.path-calendar .maincalendar .calendar_event_group,.dir-rtl.path-calendar .maincalendar .calendar_event_user{border-left-width:1px;border-right-width:12px}.dir-rtl.path-calendar .maincalendar .calendar-controls .next{text-align:left}.dir-rtl.path-calendar .maincalendar .calendar-controls .previous{text-align:right}.dir-rtl.path-calendar .maincalendar .calendartable td,.dir-rtl.path-calendar .maincalendar .calendartable li{text-align:right}.dir-rtl.path-calendar .maincalendar .calendartable li{padding-right:10px;padding-left:5px}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event>img{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .name{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .date{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .description .commands{right:inherit;left:0}.dir-rtl.path-calendar .maincalendar .eventlist .event .course,.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription{float:right;clear:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .commands{left:2px;right:inherit}#page-calendar-export .indent{padding-left:20px}.block .minicalendar{max-width:280px;margin:0 auto;width:100%}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em;text-align:center}.block .minicalendar td.weekend{color:#999}.block .minicalendar td a{width:100%;height:100%;display:block}.block .minicalendar td.duration_global{border-top:1px solid #d6f8cd;border-bottom:1px solid #d6f8cd}.block .minicalendar td.duration_global.duration_finish{background-color:#d6f8cd}.block .minicalendar td.duration_course{border-top:1px solid #ffd3bd;border-bottom:1px solid #ffd3bd}.block .minicalendar td.duration_course.duration_finish{background-color:#ffd3bd}.block .minicalendar td.duration_group{border-top:1px solid #fee7ae;border-bottom:1px solid #fee7ae}.block .minicalendar td.duration_group.duration_finish{background-color:#fee7ae}.block .minicalendar td.duration_user{border-top:1px solid #dce7ec;border-bottom:1px solid #dce7ec}.block .minicalendar td.duration_user.duration_finish{background-color:#dce7ec}.block .minicalendar caption{font-size:inherit;font-weight:inherit;line-height:inherit;text-align:center}.block .calendar-event-panel{background-color:#eee;border:1px solid #eee}.block .calendar-event-panel .yui3-overlay-content{padding:19px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.block .calendar-event-panel .yui3-overlay-content h2.eventtitle{line-height:1.2;font-size:18px}.block .calendar-event-panel .yui3-overlay-content .eventcontent img{padding-right:5px}.block .calendar-controls .previous,.block .calendar-controls .current,.block .calendar-controls .next{display:block;float:left}.block .calendar-controls .previous{text-align:left;width:12%}.block .calendar-controls .current{text-align:center;width:76%}.block .calendar-controls .next{text-align:right;width:12%}.block .calendar_filters ul{list-style:none;margin:0}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.block .content h3.eventskey{margin-top:.5em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.dir-rtl .block .calendar-event-panel .yui3-overlay-content .eventcontent img{padding-right:0;padding-left:5px}.ical-link{font-size:10px;font-weight:bold;background-color:#f60;padding:0 5px;color:#fff;border-top:1px solid #f93;border-left:1px solid #f93;border-bottom:1px solid #013;border-right:1px solid #013}.ical-link:hover,.ical-link:active,.ical-link:focus,.ical-link:visited{color:#fff;text-decoration:none}@media (min-width:768px){#page-calender-view .container-fluid{min-width:1024px}}.section_add_menus{text-align:right;clear:both}.section-modchooser{clear:both}.dir-rtl .section_add_menus{text-align:left;clear:both}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-weight:normal;font-style:italic}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.sitetopic ul.section{margin:0}.course-content ul.section{margin:1em}.section .side.left{float:left}.section .side.right{float:right}.section .spinner{height:16px;width:16px}.section .activity .spinner{left:100%;position:absolute;vertical-align:text-bottom}.section .activity .editing_move{position:absolute;left:0;top:0}.section .activity .mod-indent-outer{padding-left:32px}.section .activity .actions{position:absolute;right:0;top:0}.section .activity .contentwithoutlink,.section .activity .activityinstance{min-width:40%;display:table-cell;padding-right:4px;min-height:2em}.section .activity .contentwithoutlink .dimmed img.activityicon,.section .activity .activityinstance .dimmed img.activityicon{opacity:.5;filter:alpha(opacity=50)}.section .label .contentwithoutlink,.section .label .activityinstance{padding-right:32px;display:block;height:inherit}.section .label .mod-indent-outer{padding-left:24px;display:block}.section .filler{width:16px;height:16px;padding:.3em;display:inline-block}.section .activity.editor_displayed a.editing_title,.section .activity.editor_displayed .moodle-actionmenu{display:none}.section .activity.editor_displayed div.activityinstance{padding-right:initial}.section .activity.editor_displayed div.activityinstance input{margin-bottom:initial;padding-top:initial;padding-bottom:initial;vertical-align:text-bottom}.dir-rtl .section .side.left{float:right}.dir-rtl .section .side.right{float:left}.dir-rtl .section .activity .spinner{left:auto;right:100%}.dir-rtl .section .activity .mod-indent-outer{padding-left:initial;padding-right:32px}.dir-rtl .section .activity .actions{left:0;right:auto}.dir-rtl .section .activity .contentwithoutlink,.dir-rtl .section .activity .activityinstance{padding-left:4px;padding-right:initial}.dir-rtl .section .activity .editing_move{left:auto;right:0}.dir-rtl .section .activity.editor_displayed div.activityinstance{padding-left:initial}.activity img.activityicon{margin-right:6px;vertical-align:text-bottom}.dir-rtl .section .activity img.activityicon{margin-left:6px;margin-right:0}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .contentwithoutlink,.editing .section .activity .activityinstance{padding-right:200px}.dir-rtl.editing .section .activity .contentwithoutlink,.dir-rtl.editing .section .activity .activityinstance{padding-left:200px;padding-right:0}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{white-space:nowrap;display:inline}.section .activity.modtype_label.label{font-weight:normal;padding:.2em}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-left:0;margin-right:30px}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{border:1px solid #ddd;margin-top:5px;list-style:none}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{color:#999;font-size:11.9px;margin:3px;white-space:nowrap;display:inline-block}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{font-weight:bold;font-size:108%;clear:both}.course-content .single-section .section-navigation .mdl-left{font-weight:normal;float:left;margin-right:1em}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{font-weight:normal;float:right;margin-left:1em}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{border-bottom:2px solid #ddd;margin-top:0}.course-content ul li.section.hidden .sectionname>span,.course-content ul li.section.hidden .content>div,.course-content ul li.section.hidden .activity .activityinstance{opacity:.5}.course-content ul li.section.hidden .sectionname>span,.course-content ul li.section.hidden .activity .activityinstance{margin-left:10px;margin-right:10px}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{margin-right:20px;margin-left:20px;padding:0}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.course-content li.section ul{list-style:disc}.course-content li.section ul ul{list-style:circle}.course-content li.section ul ul ul{list-style:square}.course-content li.section li.activity ul{list-style:disc}.course-content li.section li.activity ul ul{list-style:circle}.course-content li.section li.activity ul ul ul{list-style:square}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{display:block;float:right;height:20px;position:relative}#page-site-index .subscribelink{text-align:right}#site-news-forum h2,#frontpage-course-list h2,#frontpage-category-names h2,#frontpage-category-combo h2{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative;padding:0 16px 0 0}.dir-rtl.path-site li.activity>div,.dir-rtl.path-course-view li.activity>div{position:relative;padding:0 0 0 16px}.path-course-view li.activity span.autocompletion img{vertical-align:text-bottom}.path-course-view li.activity form.togglecompletion img{max-width:none}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;position:absolute;right:22px;top:3px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{text-align:center;clear:both}.section img.movetarget{height:16px;width:80px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;margin-top:-22px;margin-left:30px;line-height:16px;font-size:11.9px;padding:.1em .4em;background-color:#d9edf7;color:#3a87ad;text-decoration:none;z-index:9999;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc;border:1px solid #bce8f1}#dndupload-status{position:fixed;left:0;width:40%;margin:0 30%;padding:6px;border:1px solid #bce8f1;text-align:center;background:#d9edf7;color:#3a87ad;z-index:1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.dndupload-preview{color:#909090;border:1px dashed #909090;list-style:none;margin-top:.2em;padding:.3em}.dndupload-preview img.icon{vertical-align:text-bottom;padding:0}.dndupload-progress-outer{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));background-image:-webkit-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-o-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:linear-gradient(to bottom, #f5f5f5, #f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.dndupload-progress-inner{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top, #149bdf, #0480be);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));background-image:-webkit-linear-gradient(top, #149bdf, #0480be);background-image:-o-linear-gradient(top, #149bdf, #0480be);background-image:linear-gradient(to bottom, #149bdf, #0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:5px}.coursebox>.info>.coursename a{display:block;background-image:url([[pix:moodle|i/course]]);background-repeat:no-repeat;padding-left:21px;background-position:left .2em}.dir-rtl .coursebox>.info>.coursename a{padding-left:0;padding-right:21px;background-position:right .2em}.coursebox>.info>.coursename,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;clear:left}.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{width:40%}.dir-rtl .coursebox>.info>.coursename,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.coursebox>.info>h3.coursename{margin:5px;line-height:1}.coursebox>.info>.coursename{margin:5px;padding:0}.coursebox .content .teachers li{list-style-type:none;padding:0;margin:0}.coursebox .enrolmenticons{padding:3px 0;float:right}.coursebox .moreinfo{padding:3px 0;float:right}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{text-align:right;clear:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{margin:3px 5px;padding:0}.coursebox.remotehost>.info>.categoryname a{background-image:url([[pix:moodle|i/mnethost]])}.dir-rtl .coursebox>.info>.categoryname a{padding-left:0;padding-right:21px;background-position:center right}.dir-rtl .coursebox>.info>.categoryname,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{text-align:left;clear:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{border:1px solid #ddd;padding:5px}.courses .coursebox.even{background-color:#f9f9f9}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#f5f5f5}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{margin-bottom:5px;text-align:right;float:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_empty]]);background-repeat:no-repeat;padding:2px 18px;margin:3px;background-position:center left}.dir-rtl .course_category_tree .category>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info>.categoryname{background-image:url([[pix:moodle|t/expanded]]);cursor:pointer}.course_category_tree .category.with_children.collapsed>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;min-height:0;padding:0;margin:3px 0;margin-bottom:3px;clear:both}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{background:none;border:none;margin:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-left:0;padding-right:16px}.course_category_tree .subcategories>.paging,.courses>.paging{margin:0;padding:5px;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:5px}#page-course-index-category .categorypicker{text-align:center;margin:10px 0 20px}.section .summary .iconsmall,.section .activity .iconsmall{width:16px;height:16px}.section .editing_title .iconsmall{width:12px;height:12px;margin:8px 8px 0 0;padding:4px 8px 0 0;vertical-align:text-bottom}.section .moodle-actionmenu .iconsmall{max-width:none !important;width:16px;height:16px;padding:4px;vertical-align:text-bottom}.section .moodle-actionmenu[data-enhanced] .menu img{width:12px;height:12px}.dir-rtl .section .editing_title .iconsmall{margin:8px 0 0 8px;padding:4px 0 0 8px}#course-category-listings{background-color:transparent;margin-bottom:200px}#course-category-listings.columns-2>#course-listing>div{position:relative;left:-1px}#course-category-listings.columns-3>#course-listing>div{height:100%}#course-category-listings>div>div{min-height:300px}#course-category-listings>div>div>ul.ml>li:first-child>div{border-top:0}#course-category-listings h3{margin:0;padding:.4rem .6rem .3rem}#course-category-listings h4{margin:1rem 0 0;padding:.6rem 1rem .5rem}#course-category-listings .moodle-actionmenu{white-space:nowrap}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display img{width:auto}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display.textmenu{padding-right:4px}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-top:12px}#course-category-listings .listing-actions{text-align:center;padding:.4rem .3rem .3rem;line-height:2.2em}#course-category-listings .listing-actions>a,#course-category-listings .listing-actions>.moodle-actionmenu{display:inline-block}#course-category-listings .listing-actions>.moodle-actionmenu .menu a{padding-left:1rem}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced]) li{line-height:normal}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a{color:inherit;display:inline-block}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a>img{display:none}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a .caret{display:none}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menu .menu-action-text{display:inline-block}#course-category-listings ul.ml{list-style:none;margin:1rem 0}#course-category-listings ul.ml ul.ml{margin:0}#course-category-listings li{line-height:2.2em}#course-category-listings li>div:hover{background-color:#f5f5f5}#course-category-listings li .tree-icon{margin:2px 6px 0 0;width:12px;vertical-align:inherit}#course-category-listings li[data-selected='1']>div{background-color:#f9f9f9}#course-category-listings li[data-selected='1']>div:hover{background-color:#f5f5f5}#course-category-listings li .tree-icon{margin-left:0}#course-category-listings li li .tree-icon{margin-left:1em}#course-category-listings li li li .tree-icon{margin-left:2em}#course-category-listings li li li li .tree-icon{margin-left:3em}#course-category-listings li li li li li .tree-icon{margin-left:4em}#course-category-listings li li li li li li .tree-icon{margin-left:4.5em}#course-category-listings li li li li li li li .tree-icon{margin-left:5em}#course-category-listings li li li li li li li li .tree-icon{margin-left:5.5em}#course-category-listings .item-actions{margin-right:1em;display:inline-block;display:initial}#course-category-listings .item-actions>a img,#course-category-listings .item-actions .menubar img{margin:0 4px;height:12px;padding:0;vertical-align:inherit}#course-category-listings .item-actions.show .menu li{line-height:20px}#course-category-listings .item-actions.show .menu img{width:12px;max-width:none}#course-category-listings .item-actions .menu-action-text{vertical-align:inherit}#course-category-listings .listitem>div>.float-left{float:left}#course-category-listings .listitem>div>.float-right{float:right;text-align:right}#course-category-listings .listitem>div .item-actions .action-show{display:none}#course-category-listings .listitem>div .item-actions .action-hide{display:inline}#course-category-listings .listitem>div .without-actions{color:#333}#course-category-listings .listitem>div .idnumber{color:#a1a1a8;margin-right:2em}#course-category-listings .listitem[data-visible="0"]{color:#999}#course-category-listings .listitem[data-visible="0"]>div>a{color:#999}#course-category-listings .listitem[data-visible="0"]>div .item-actions .action-show{display:inline}#course-category-listings .listitem[data-visible="0"]>div .item-actions .action-hide{display:none}#course-category-listings .listitem.highlight{background-color:transparent}#course-category-listings .listitem.highlight>div,#course-category-listings .listitem.highlight>div:hover,#course-category-listings .listitem.highlight[data-selected='1']>div{background-color:#f5f5f5}#course-category-listings #course-listing .listitem .categoryname{display:inline-block;margin-left:1em;color:#a1a1a8}#course-category-listings #course-listing .listitem .coursename{display:inline-block}#course-category-listings #course-listing .listitem>div{padding-left:1rem}#course-category-listings #course-listing>.firstpage .listitem:first-child>div .item-actions .action-moveup,#course-category-listings #course-listing>.lastpage .listitem:last-child>div .item-actions .action-movedown{display:none}#course-category-listings #course-listing .bulk-action-checkbox{margin:-2px 6px 0 0}#course-category-listings #category-listing .listitem.collapsed>ul.ml{display:none}#course-category-listings #category-listing .listitem>div>.ba-checkbox{width:2.2em;text-align:center;margin:-1px .5em 0 0;padding-top:2px}#course-category-listings #category-listing .listitem.highlight>div>.ba-checkbox{background-color:#f5f5f5}#course-category-listings #category-listing .listitem[data-selected='1']>div>.ba-checkbox{margin:0 .5em 0 0;padding:0;background-color:inherit}#course-category-listings #category-listing .listitem:first-child>div .item-actions .action-moveup,#course-category-listings #category-listing .listitem:last-child>div .item-actions .action-movedown{display:none}#course-category-listings #category-listing .course-count{color:#a1a1a8;margin-right:2rem;min-width:3.5em;display:inline-block}#course-category-listings #category-listing .course-count .smallicon{width:12px;margin-left:4px;vertical-align:inherit}#course-category-listings #category-listing .bulk-action-checkbox{margin-right:-3px}#course-category-listings #category-listing .category-listing>ul>.listitem:first-child{position:relative}#course-category-listings #category-listing .category-bulk-actions{margin:0 .5em .5em;position:relative}#course-category-listings .detail-pair{border-bottom:1px solid #ddd;margin:0 1rem}#course-category-listings .detail-pair>*{display:inline-block;line-height:2.2rem}#course-category-listings .detail-pair .pair-key{font-weight:bold;vertical-align:top}#course-category-listings .detail-pair .pair-key span{margin-right:1rem;display:block}#course-category-listings .detail-pair .pair-value select{max-width:100%}#course-category-listings .bulk-actions .detail-pair>*{display:block;width:100%}#course-category-listings .listing-pagination{text-align:center}#course-category-listings .listing-pagination .yui3-button{background-color:#fff;border:0;margin:.4rem .2rem .45rem;font-size:10.4px}#course-category-listings .listing-pagination .yui3-button.active-page{background-color:#e6e6e6}#course-category-listings .listing-pagination-totals{text-align:center}#course-category-listings .listing-pagination-totals.dimmed{color:#999;margin:.4rem 1rem .45rem}#course-category-listings .select-a-category .notifymessage,#course-category-listings .select-a-category .alert{margin:1em}#course-category-listings #course-listing .listitem .drag-handle{display:none}.jsenabled #course-category-listings #course-listing .listitem .drag-handle{display:inline-block;margin:0 6px 0 0;cursor:pointer}.dir-rtl #course-category-listings #category-listing,.dir-rtl #course-category-listings #course-listing{float:right;margin-left:0}.dir-rtl #course-category-listings .listitem>div>.float-left{float:right}.dir-rtl #course-category-listings .listitem>div>.float-right{float:left;text-align:left}.dir-rtl #course-category-listings li .tree-icon{margin:2px 0 0 6px}.dir-rtl #course-category-listings li .tree-icon{margin-right:0}.dir-rtl #course-category-listings li li .tree-icon{margin-right:1em}.dir-rtl #course-category-listings li li li .tree-icon{margin-right:2em}.dir-rtl #course-category-listings li li li li .tree-icon{margin-right:3em}.dir-rtl #course-category-listings li li li li li .tree-icon{margin-right:4em}.dir-rtl #course-category-listings li li li li li li .tree-icon{margin-right:4.5em}.dir-rtl #course-category-listings li li li li li li li .tree-icon{margin-right:5em}.dir-rtl #course-category-listings li li li li li li li li .tree-icon{margin-right:5.5em}.dir-rtl #course-category-listings #category-listing .listitem>div{margin-right:.5em;margin-left:0}.dir-rtl #course-category-listings #category-listing .listitem>div>.ba-checkbox{margin:-1px 0 0 .5em}.dir-rtl #course-category-listings #category-listing .listitem[data-selected='1']>div>.ba-checkbox{margin:0 0 0 .5em}.dir-rtl #course-category-listings #category-listing .course-count{margin-left:2rem}.dir-rtl #course-category-listings #category-listing .course-count .smallicon{margin-left:0;margin-right:4px}.dir-rtl #course-category-listings #category-listing .bulk-action-checkbox{margin-left:-3px;margin-right:0}.dir-rtl #course-category-listings #course-listing{padding-right:24px}.dir-rtl #course-category-listings #course-listing .listitem .idnumber{color:#a1a1a8;padding-right:2em}.dir-rtl #course-category-listings #course-listing .listitem .categoryname{display:inline-block;margin-right:1em;margin-left:0}.dir-rtl #course-category-listings #course-listing .listitem .drag-handle{margin:0 6px 0 6px}.dir-rtl #course-category-listings #course-listing .listitem>div{padding-left:1rem}.dir-rtl #course-category-listings #course-listing .bulk-action-checkbox{vertical-align:middle;margin:-2px 0 0 6px}.dir-rtl #course-category-listings .detail-pair>*{float:right;margin-right:0}.dir-rtl #course-category-listings .detail-pair .pair-key span{margin-right:0;margin-left:0}.dir-rtl #course-category-listings .detail-pair .pair-value{margin-right:.5em}.coursecat-management-header{vertical-align:middle}.coursecat-management-header h2{display:inline-block;text-align:left}.coursecat-management-header>div{display:inline-block;float:right;line-height:40px}.coursecat-management-header>div>div{margin-left:1em;margin:10px 0;display:inline-block}.coursecat-management-header select{max-width:300px;cursor:pointer;padding:.4em .5em .45em 1em;vertical-align:baseline;white-space:nowrap}.coursecat-management-header .view-mode-selector .moodle-actionmenu{white-space:nowrap;display:inline-block}.coursecat-management-header .view-mode-selector .moodle-actionmenu[data-enhanced].show .menu a{padding-left:1em}.dir-rtl .coursecat-management-header h2{text-align:right}.dir-rtl .coursecat-management-header>div{float:left;margin-right:1em;margin-left:0}.course-being-dragged-proxy{border:0;color:#0070a8;vertical-align:middle;padding:0 0 0 4em}.course-being-dragged{opacity:.5;filter:alpha(opacity=50)}@media (min-width:1200px) and (max-width:1600px){#course-category-listings.columns-3{background-color:transparent;border:0}#course-category-listings.columns-3 #category-listing,#course-category-listings.columns-3 #course-listing{width:50%}#course-category-listings.columns-3 #category-listing>div,#course-category-listings.columns-3 #course-listing>div,#course-category-listings.columns-3 #course-detail>div{background-color:transparent}#course-category-listings.columns-3 #course-detail{width:100%;margin-top:1em}}@media (max-width:1199px){#course-category-listings.columns-2,#course-category-listings.columns-3{background-color:transparent;border:0}#course-category-listings.columns-2 #category-listing,#course-category-listings.columns-3 #category-listing,#course-category-listings.columns-2 #course-listing,#course-category-listings.columns-3 #course-listing,#course-category-listings.columns-2 #course-detail,#course-category-listings.columns-3 #course-detail{width:100%;margin:0 0 1em}#course-category-listings.columns-2 #category-listing>div,#course-category-listings.columns-3 #category-listing>div,#course-category-listings.columns-2 #course-listing>div,#course-category-listings.columns-3 #course-listing>div,#course-category-listings.columns-2 #course-detail>div,#course-category-listings.columns-3 #course-detail>div{background-color:transparent}}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{height:100%;width:100%;display:table-cell;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:none}#filesskin .yui3-panel-content{padding-bottom:20px;background:#F2F2F2;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;border:1px solid #fff;display:inline-block;*display:inline;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;border-bottom:1px solid #BBBBBB;padding:5px;text-align:center;font-size:12px;color:#333;letter-spacing:1px;text-shadow:1px 1px 1px #fff;filter:dropshadow(color=#FFFFFF, offx=1, offy=1);background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0)}.fp-panel-button{background:#fff;padding:3px 20px 2px 20px;text-align:center;margin:10px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;display:inline-block;*display:inline;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.moodle-dialogue h3{font-size:14px;margin:0;line-height:20px}.moodle-dialogue-base .filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{width:859px;background:#FFFFFF;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid #CCCCCC;position:relative}.file-picker .fp-repo-area{width:180px;overflow:auto;display:inline-block;*display:inline;*zoom:1;float:left;height:525px;border-right:1px solid #BBBBBB}.dir-rtl .file-picker .fp-repo-area{border-left:1px solid #BBBBBB;border-right:none;float:right}.file-picker .fp-repo-items{float:none;width:auto;margin-left:181px}.moodle-dialogue-fullscreen .file-picker .fp-repo-items{margin-left:0;margin-right:0;float:left}.dir-rtl .file-picker .fp-repo-items{margin-left:0;margin-right:181px}.dir-rtl .moodle-dialogue-fullscreen .file-picker .fp-repo-items{margin-left:0;margin-right:0;float:right}.file-picker .fp-navbar{background:#F2F2F2;border-bottom:1px solid #BBBBBB;min-height:40px;overflow:hidden}.file-picker .fp-navbar .fp-viewbar{margin:4px}.file-picker .fp-content{background:#FFFFFF;clear:none;overflow:auto;height:452px}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%}.file-picker .fp-content-loading{height:100%;width:100%;display:table;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:4px}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{text-align:right;display:block;border-top:none}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{list-style-type:none;padding:0;float:left;width:100%;margin:0}.dir-rtl .file-picker .fp-list{text-align:right;float:left}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#F2F2F2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px;width:16px;height:16px}.fp-toolbar{float:left}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.dir-rtl .fp-toolbar div.disabled,.fp-toolbar .disabled{display:none}.fp-toolbar div{display:block;float:left;margin-right:4px}.dir-rtl .fp-toolbar div{display:block;float:right;margin-left:4px;margin-right:0}.fp-toolbar img{vertical-align:-15%;margin-right:5px}.fp-toolbar .fp-tb-search{width:235px;height:27px}.fp-toolbar .fp-tb-search input{background:#FFFFFF url('[[pix:a/search]]') no-repeat 7px 7px;padding:2px 6px 1px 27px;width:200px;height:27px;border:1px solid #BBBBBB}.fp-viewbar{float:right;height:30px;border:1px solid #CCC;border-bottom:1px solid #B3B3B3;border-radius:4px;background:white}.fp-repo-items fp-viewbar{margin:4px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left}.fp-viewbar a{width:30px;height:30px;border-right:1px solid #CCC;display:block;float:left}.fp-viewbar a.checked:hover,.fp-viewbar a:hover{background-image:radial-gradient(ellipse at center, #ffffff 60%, #dfdfdf 100%);background-color:#ebebeb}.fp-viewbar a.checked,.fp-viewbar a:active{background-image:radial-gradient(ellipse at center, #ffffff 40%, #dfdfdf 100%);background-color:#dfdfdf}.fp-viewbar a.fp-vb-icons{border-radius:4px 0 0 4px}.fp-viewbar a.fp-vb-tree{border-right:0;border-radius:0 4px 4px 0}.fp-viewbar a img{margin:7px}.fp-viewbar.disabled a{opacity:.45;background:none;cursor:default}.file-picker .fp-clear-left{clear:left}.dir-rtl .fp-vb-details a:hover{background:none;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:none;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:none;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:none;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0;width:27px;height:12px;margin-left:4px}.dir-rtl .fp-pathbar .fp-path-folder{background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top;width:auto;height:12px;margin-left:4px}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;*zoom:1;float:right;margin-left:32px}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{float:left;text-align:center;position:relative;margin:10px 10px 35px}.fp-iconview .fp-thumbnail{min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #FFFFFF;display:block}.fp-iconview .fp-thumbnail img{border:1px solid #ddd;padding:3px;vertical-align:middle;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{height:33px;word-wrap:break-word;overflow:hidden;position:absolute}.fp-iconview .fp-filename-field:hover{overflow:visible;z-index:1000}.fp-iconview .fp-filename-field .fp-filename{background:#FFFFFF;padding-top:5px;padding-bottom:12px;min-width:112px}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{border:0 solid #BBBBBB;width:100%}#filesskin .file-picker .yui3-datatable-header{background:#FFFFFF;border-bottom:1px solid #CCCCCC;border-left:0 solid #FFFFFF;color:#555555}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#F6F6F6;border-left:0 solid #F6F6F6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#FFFFFF;border-left:0 solid #FFFFFF}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat;width:17px;height:22px}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat;width:17px;height:22px}.file-picker .ygtvtm,.filemanager .ygtvtm{background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvtmh,.filemanager .ygtvtmh{background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvtp,.filemanager .ygtvtp{background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat;width:13px;height:22px;cursor:pointer}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat;width:17px;height:22px}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvlmh,.filemanager .ygtvlmh{background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvlp,.filemanager .ygtvlp{background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat;width:16px;height:22px}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat;width:17px;height:32px}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{background-color:transparent;cursor:pointer;margin-left:2px;text-decoration:none}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#EEEEEE}.fp-filename-icon{margin-top:10px;display:block;position:relative}.fp-icon{float:left;margin-top:-7px;width:24px;height:24px;margin-right:10px;text-align:center;line-height:24px}.dir-rtl .fp-icon{float:right;margin-left:10px;margin-right:0}.fp-icon img{max-height:24px;max-width:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-left:10px;padding-right:0}.file-picker .fp-login-form{height:100%;width:100%;display:table}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{text-align:center;margin-top:3em}.file-picker .fp-login-form .fp-login-input label{text-align:right;display:block}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{height:100%;width:100%;display:table}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{padding:40px 20px 10px 20px;min-width:200px;max-width:500px;max-height:300px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{height:100%;width:100%;display:table;text-align:center}.file-picker .fp-content-error .fp-error{height:100%;width:100%;display:table-cell;vertical-align:middle;padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;text-align:center;height:100px;padding-top:50px}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{text-align:center;margin-top:20px}.fp-select .fp-hr{clear:both;height:1px;background-color:#FFFFFF;border-bottom:1px solid #BBBBBB;width:auto;margin:10px 0}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;clear:both;padding:1px 20px 0}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;line-height:110px;text-align:center;margin:10px 20px 0 0;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{border:1px solid #DDDDDD;padding:3px;vertical-align:middle;margin:10px}.fp-select .fp-fileinfo{display:inline-block;*display:inline;*zoom:1;margin-top:10px}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.fp-select .fp-size.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .fp-img-downloading{display:none;padding-top:7px}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.filemanager .fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#F2F2F2;border:1px solid #BBBBBB;border-bottom:none}.filemanager-toolbar{padding:4px;overflow:hidden}.fp-pathbar{border-top:1px solid #BBBBBB;padding:5px 8px 1px;min-height:20px}.file-picker .fp-toolbar{padding:4px}.fp-toolbar .fp-btn-add,.fp-toolbar .fp-btn-download,.fp-toolbar .fp-btn-mkdir,.fp-toolbar .fp-tb-help,.fp-toolbar .fp-tb-manage,.fp-toolbar .fp-tb-logout,.fp-toolbar .fp-tb-refresh{border:1px solid #CCC;border-bottom:1px solid #B3B3B3;border-radius:4px;background:white;width:30px;height:30px}.fp-toolbar a:hover{background-image:radial-gradient(ellipse at center, #ffffff 60%, #dfdfdf 100%);background-color:#ebebeb}.fp-toolbar a:active{background-image:radial-gradient(ellipse at center, #ffffff 40%, #dfdfdf 100%);background-color:#dfdfdf}.fp-btn-add a,.fp-btn-download a,.fp-btn-mkdir a,.fp-tb-help a,.fp-tb-manage a,.fp-tb-logout a,.fp-tb-refresh a{display:block;width:30px;height:30px;border-radius:4px}.fp-btn-add img,.fp-btn-download img,.fp-btn-mkdir img,.fp-tb-help img,.fp-tb-manage img,.fp-tb-logout img,.fp-tb-refresh img{margin:7px}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{background:#FFFFFF;clear:both;overflow:auto;border:1px solid #BBBBBB;min-height:140px;position:relative}.filemanager .fp-content{overflow:auto;max-height:472px;min-height:157px}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#EBEBE4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;height:100%;width:100%;top:0;left:0}.fp-iconview .fp-reficons2{position:absolute;height:100%;width:100%;top:0;left:0}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{border:0 solid #BBBBBB;width:100%}.filemanager .yui3-datatable-header{background:#FFFFFF !important;border-bottom:1px solid #CCCCCC !important;border-left:0 solid #FFFFFF !important;color:#555555 !important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#F6F6F6 !important;border-left:0 solid #F6F6F6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#FFFFFF !important;border-left:0 solid #FFFFFF}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0;height:100%;width:100%;position:absolute;top:8px;left:17px;z-index:1000}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0;height:100%;width:100%;position:absolute;top:9px;left:-6px;z-index:1001}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{display:block;position:absolute;right:7px;bottom:5px}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{display:inline;position:absolute;left:14px;margin-right:-20px;top:6px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{left:7px;right:inherit}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{left:inherit;right:16px;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{display:block;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #BBBBBB;padding-top:85px;text-align:center}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{background:#FFFFFF;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #fb7979;padding-top:85px;text-align:center;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{background:#FFFFFF;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #6c8cd3;padding-top:85px;text-align:center}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat;width:100%;height:80px;position:absolute;top:5px}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{padding:10px;display:none}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain,.filemanager.fp-select .fp-file-setmain-help{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain,.filemanager.fp-select.fp-cansetmain .fp-file-setmain-help{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{background:#F9F9F9;border:1px solid #BBBBBB;padding:8px 7px;margin:0;max-width:265px;max-height:75px;overflow:auto}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{text-align:left;margin:20px}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{padding:0 10px;min-width:200px;max-width:340px;max-height:300px;overflow:auto;line-height:22px;margin:40px 20px 20px;font-size:12px}.file-picker div.bd{text-align:left}.dir-rtl .filemanager .fp-restrictions{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .file-picker .fp-toolbar .fp-tb-search input{background-position:208px 7px;padding:2px 30px 1px 3px}.dir-rtl .file-picker .fp-toolbar div{float:right;margin-left:4px}.fp-formset{max-width:500px;padding:10px}.fp-formset input[type="file"]{line-height:inherit}.fp-forminset{max-width:400px;padding:0 10px}.fp-forminset .control-group.control-radio{margin-bottom:0}.fp-forminset .control-group label.control-label{width:105px}.fp-forminset .control-group label.control-radio{float:right;text-align:left;width:215px}.fp-forminset .control-group .controls{margin-left:125px}.fp-forminset .control-group .controls select{width:100%}.fp-forminset .control-group .controls.control-radio input{margin-top:3px}.fp-forminset .fp-select-buttons{float:none}.fp-forminset input[type="text"]{width:228px}.fp-fileinfo .fp-value{display:inline-block;padding-left:5px}.dir-rtl .fp-forminset{max-width:400px}.dir-rtl .fp-forminset .control-group label.control-label{float:right;text-align:left}.dir-rtl .fp-forminset .control-group label.control-radio{float:left;text-align:right;width:215px}.dir-rtl .fp-forminset .control-group .controls{margin-left:0;margin-right:125px}.dir-rtl .fp-forminset .fp-select-buttons{float:left}.dir-rtl .fp-forminset input[type="text"]{width:228px}.dir-rtl .fp-fileinfo .fp-value{display:inline-block;padding-right:5px}.dir-rtl .fp-select .fp-thumbnail{margin:10px 0 0 0}.dir-rtl .filepicker .fp-formset label{float:right;text-align:left}.dir-rtl .filepicker .fp-formset .controls{margin-left:0;text-align:right}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold;clear:both;word-wrap:break-word}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-weight:bold;font-size:1.1em}.message .time{color:#999}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message{overflow:hidden}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{max-width:380px;margin:0 auto;width:auto}@media screen and (min-width:1000px){.message .contactselector{float:left;padding:0 8px 0 0}}.message .contactselector .singleselect{width:240px}.message .contactselector .paging{z-index:1;position:relative}.message .contactselector #message_participants{max-width:240px}.message .contactselector .message-contacts{list-style-type:none;margin:0}.message .contactselector .message-contacts li{clear:both;position:relative;min-height:23px;padding:2px}.message .contactselector .message-contacts li:nth-child(odd){background:rgba(120,120,255,0.1)}.message .contactselector .message-contacts li>div{display:block;height:100%}.message .contactselector .message-contacts li>div>*{vertical-align:middle;display:inline-block}.message .contactselector .message-contacts li>div.pix{position:relative;float:left}.message .contactselector .message-contacts li>div.link{white-space:nowrap;width:60px;position:relative;float:right;text-align:right}.message .contactselector .message-contacts li>div.contact{position:relative;word-break:break-all}.message .contactselector .message-contacts li>div.contact a{line-height:22px}.dir-ltr .message .message-contacts li{text-align:left}.dir-ltr .message .message-contacts li>div.pix{float:left}.dir-ltr .message .message-contacts li>div.link{float:right;text-align:right}.dir-ltr .message .message-contacts li>div.contact{margin:0 60px 0 24px}.dir-ltr .message .message-contacts li>div.contact.nolinks{margin:0 0 0 24px}.dir-rtl .message .message-contacts li{text-align:right}.dir-rtl .message .message-contacts li>div.pix{float:right}.dir-rtl .message .message-contacts li>div.link{float:left;text-align:left}.dir-rtl .message .message-contacts li>div.contact{margin:0 24px 0 60px}.dir-rtl .message .message-contacts li>div.contact.nolinks{margin:0 24px 0 0}@media screen and (min-width:1000px){.dir-rtl .message .contactselector{float:right}}.message .messagearea{float:none;overflow:hidden;min-height:200px;min-width:300px}@media screen and (min-width:1000px){.message .messagearea{border-left:1px solid #ddd;padding:0 8px}}@media screen and (max-width:1000px){.message .messagearea{width:100%}}#message_user_pictures{text-align:center}.dir-rtl #message_user_pictures{direction:rtl}.message .messagearea .messagehistorytype{clear:both;padding-bottom:20px}.message .messagearea .messagehistory .user{vertical-align:top;width:45%;min-width:100px;display:inline-block}.message .messagearea .messagehistory .user>div{text-align:center}.message .messagearea .messagehistory .between{display:inline-block;width:16px;margin:0 1%;padding-top:40px}@media screen and (max-width:320px){.message .messagearea{min-width:0}.message .messagearea .messagehistory .user{max-width:70px;min-width:0}.message .messagearea .messagehistory .user .userpicture{width:50px;height:auto}}@media screen and (min-width:800px){.message .messagearea .messagehistory .between{margin:0 3%}.message .messagearea .messagehistory .user{width:32%}}@media screen and (min-width:1200px){.message .messagearea .messagehistory .user{width:25%}}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{margin-bottom:10px;width:50%;float:left;position:relative;clear:both}.dir-rtl .message .messagearea .messagehistory .left{float:right}.message .messagearea .messagehistory .right{margin-bottom:10px;width:50%;float:right;position:relative;clear:both}.dir-rtl .message .messagearea .messagehistory .right{float:left}.message .messagearea .messagehistory .notification{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;margin-bottom:0;margin-top:5px}.message .messagearea .messagehistory .notification blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.dir-ltr .message .messagearea .messagehistory .message{margin-right:20px}.dir-ltr .message .messagearea .messagehistory .right .message{margin-left:20px}.dir-rtl .message .messagearea .messagehistory .message{margin-left:20px}.dir-rtl .message .messagearea .messagehistory .right .message{margin-right:20px}.message .messagearea .messagehistory .messageactive{background-color:#f5f5f5}.message .messagearea .messagehistory .messagecontent .deleteicon{width:20px;position:absolute;top:-2px}.dir-ltr .message .messagearea .messagehistory .messagecontent .deleteicon{right:0}.dir-rtl .message .messagearea .messagehistory .messagecontent .deleteicon{left:0}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%;box-sizing:border-box}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{text-align:left;width:100%}.message .messagearea .messagerecent .singlemessage{border-bottom:1px solid #ddd;padding:10px}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-left:.45em;padding-right:0}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;margin:0 1em;position:fixed;bottom:0;right:0}#newmessageoverlay blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}#newmessageoverlay #usermessage{padding:10px}#page-user-action_redir #edit-messagebody{width:auto}.core_message-messenger-sendmessage-hidden{display:none}.core_message-messenger-sendmessage .message-actions{position:relative}.core_message-messenger-sendmessage .message-area{height:240px;max-height:100%;position:relative;margin-bottom:10px}.core_message-messenger-sendmessage .message-input{width:100%;height:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.core_message-messenger-sendmessage .message-send{margin:0;float:right}.core_message-messenger-sendmessage .message-notice-area{display:table;position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.core_message-messenger-sendmessage .message-notice{display:table-cell;vertical-align:middle;text-align:center}.core_message-messenger-sendmessage .message-notice>div{background:#eee;padding:5px;font-size:12px}.core_message-messenger-sendmessage .message-footer{margin-top:3px;line-height:20px}.core_message-messenger-sendmessage .message-history{position:absolute;bottom:0}.dir-rtl .core_message-messenger-sendmessage .message-send{float:left}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:none}#qtypechoicecontainer.yui-panel .hd{color:#333;letter-spacing:1px;text-shadow:1px 1px 1px #fff;-webkit-border-top-right-radius:10px;-moz-border-radius-topright:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;-moz-border-radius-topleft:10px;border-top-left-radius:10px;border:1px solid #ccc;border-bottom:1px solid #bbb;background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#F2F2F2;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid #ccc;border-top:0 none;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#qtypechoicecontainer #chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;border-bottom:1px solid #bbb;padding:.24em 0}#chooseqtype .alloptions{overflow-x:hidden;overflow-y:auto;max-height:400px;max-height:calc(85vh);max-height:60vh;width:60%}#chooseqtype .qtypeoption{margin-bottom:0;padding:.3em .3em .3em 1.6em}#chooseqtype .qtypeoption img{vertical-align:text-bottom;padding-left:1em;padding-right:.5em}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{display:none;position:absolute;top:0;right:0;bottom:0;left:60%;margin:0;overflow-x:hidden;padding:1.5em 1.6em;background-color:#fff;overflow-y:auto}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{text-align:left;font-weight:normal}#categoryquestions .checkbox{padding-left:5px}#categoryquestions .checkbox input[type="checkbox"]{margin-left:0;float:none}#categoryquestions img.iconsmall{padding:0}#categoryquestions .iconcol{padding:3px}#categoryquestions label{margin:0}#page-mod-quiz-edit div.questionbankwindow div.header{margin:0}#page-mod-quiz-edit div.questionbankwindow.block{padding:0}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-left:.3em;margin-right:.3em}body.path-question-type .fitem_fgroup .accesshide{font:inherit;left:0;position:static;padding-right:.3em}.que{clear:left;text-align:left;margin:0 auto 1.8em auto}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h3.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{font-size:.8em;margin-top:.7em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:#8a6d3b}.que .formulation{background-color:#d9edf7;border-color:#bce8f1;color:#3a87ad;color:#333}.formulation input[type="text"],.formulation select{width:auto;vertical-align:baseline}.path-mod-quiz input[size]{width:auto}.que .comment{background-color:#dff0d8;border-color:#d6e9c6;color:#468847}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-left:3px;padding-right:0}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-left:0;border-right:1px solid grey}#page-mod-quiz-edit .box.generalbox.questionbank{padding:.5em}#page-mod-quiz-edit .questionbank .categorypagingbarcontainer,#page-mod-quiz-edit .questionbank .categoryquestionscontainer,#page-mod-quiz-edit .questionbank .choosecategory{padding:0}#page-mod-quiz-edit .questionbank .choosecategory select{width:100%}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{background:transparent}#page-mod-quiz-edit #categoryquestions>thead{background:#FFF}#page-mod-quiz-edit #categoryquestions>tbody>tr:nth-of-type(even){background:#e4e4e4}#page-mod-quiz-edit .questionbankwindow div.header{color:#444;text-shadow:none;padding:3px;-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;margin:0 -10px 0 -10px;padding:2px 10px 2px 10px;background:transparent}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#0070a8}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#003d5c}#page-mod-quiz-edit .createnewquestion{padding:.3em 0}#page-mod-quiz-edit .createnewquestion div,#page-mod-quiz-edit .createnewquestion input{margin:0}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{background-color:transparent;padding:1.5em}#page-mod-quiz-edit .categoryinfo{background-color:transparent;border-bottom:none}#page-mod-quiz-edit .createnewquestion .singlebutton input{margin-bottom:0}#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{background-color:transparent;margin:0;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer .paging{padding:0 .3em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{margin-top:-0.5em;padding-bottom:0;border:none;background-color:#fff;position:static;width:12.1em;float:right;margin-right:60px}#page-mod-quiz-edit.dir-rtl div.question div.content div.points{float:left;margin-left:60px;margin-right:0}#page-mod-quiz-edit div.question div.content div.points br{display:none}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;overflow:hidden}#page-mod-quiz-edit div.questionbank .categoryinfo{padding:.3em 0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer{padding:0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong{display:block}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer hr,#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer br{display:none}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong{margin-left:-0.3em}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong label{margin-left:.3em}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer input{margin-left:0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer input+input{margin-left:5px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;overflow:hidden}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#0070a8}.que.shortanswer .answer{padding:0}.que label{display:inline}body.path-question-type .mform fieldset.hidden{padding:0;margin:.7em 0 0}.userprofile .fullprofilelink{text-align:center;margin:10px}.userprofile .page-context-header{margin-bottom:10px}.userprofile .description{margin-top:10px;margin-bottom:30px}.userprofile .profile_tree{-webkit-column-count:2;-moz-column-count:2;column-count:2;-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px}.userprofile .profile_tree section{display:inline-block;width:100%;border:1px solid #ddd;border-radius:4px;padding:0 15px;margin-bottom:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.userprofile .profile_tree section h3{font-size:18px;line-height:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;content:"";line-height:0}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{margin:8px;width:115px;height:160px;text-align:center;float:left;clear:none}#page-user-profile .node_category ul,.path-user .node_category ul{margin-left:0;margin-right:0;list-style:none}#page-user-profile .node_category li,.path-user .node_category li{margin-top:5px}#page-user-profile .node_category .editprofile,.path-user .node_category .editprofile,#page-user-profile .node_category .viewmore,.path-user .node_category .viewmore{text-align:right}.dir-rtl .user-box{float:right}.dir-rtl .userprofile .node_category .editprofile,.dir-rtl .userprofile .node_category .viewmore{text-align:left}.dir-rtl .userprofile dl dd{margin-left:0;margin-right:10px}@media (max-width:480px){.userprofile .profile_tree{-webkit-column-count:1;-moz-column-count:1;column-count:1;-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px}}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{vertical-align:middle;text-align:left;padding:4px}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls .right{text-align:right}.userlist table.controls .groupselector{margin-bottom:0;margin-top:0}.userlist table.controls .groupselector label{display:block}.userinfobox{width:100%;border:1px solid;border-collapse:separate;padding:10px}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{text-align:right;white-space:nowrap;vertical-align:top;font-weight:bold}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{padding:10px;width:100px;vertical-align:top}.course-participation #showall{text-align:center;margin:10px 0}#user-policy .noticebox{text-align:center;margin-left:auto;margin-right:auto;margin-bottom:10px;width:80%;height:250px}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{text-align:center;margin-left:auto;margin-right:auto}#page-course-view-weeks .messagebox{text-align:center;margin-left:auto;margin-right:auto}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}.profileeditor>.singleselect{margin:0 .5em 0 0}.profileeditor>.singlebutton{display:inline-block;margin:0 0 0 .5em}.profileeditor>.singlebutton div,.profileeditor>.singlebutton input{margin:0}.dir-rtl .profileeditor>.singleselect{margin:0 0 0 .5em}.dir-rtl .profileeditor>.singlebutton{margin:0 .5em 0 0}#groupeditform .groups,#groupeditform .members{min-width:175px;width:49%;float:left;text-align:left}#groupeditform .groups select,#groupeditform .members select{min-width:175px}.dir-rtl #groupeditform .groups,.dir-rtl #groupeditform .members{float:right;text-align:right}.preferences-group ul{list-style:none;margin-left:0;margin-right:0}.dir-rtl .preferences-group{float:right}.search-results .result{margin-left:0;margin-right:0}.dir-rtl .search-results .result{margin-right:15px;margin-left:0}.search-results .result .result-content{margin:7px 0}.search-results .result .filename{font-style:italic}.search-input-wrapper{margin:0 5px 0 2px;overflow:hidden;float:right;height:100%;width:16px;transition:width .5s ease,left .5s ease}.search-input-wrapper>div{float:left;margin:10px 0 9px 0}.dir-rtl .search-input-wrapper{margin:0 2px 0 5px;float:left}.dir-rtl .search-input-wrapper>div{float:right}.dir-rtl .search-input-wrapper>form{margin:5px 25px 5px 0}.search-input-wrapper>form{opacity:0;margin:5px 0 5px 25px;transition:opacity .5s ease-in-out}.search-input-wrapper>form>input{margin:0}.search-input-wrapper form.expanded{opacity:1}.search-input-wrapper.expanded{width:160px}.dir-rtl .navbar .search-input-wrapper>form{margin:5px 25px 5px 0}.navbar .search-input-wrapper>form{margin:5px 0 5px 25px}.search-areas-actions>div{display:inline-block}/*!
+.layout-option-noheader #page-header,.layout-option-nonavbar #page-navbar,.layout-option-nofooter #page-footer,.layout-option-nocourseheader .course-content-header,.layout-option-nocoursefooter .course-content-footer{display:none}.empty-region-side-pre #block-region-side-pre,.empty-region-side-post #block-region-side-post,.jsenabled.docked-region-side-post #block-region-side-post,.jsenabled.docked-region-side-pre #block-region-side-pre{display:none}.content-only #region-main.span9,.empty-region-side-post #region-bs-main-and-pre.span9,.empty-region-side-pre #region-bs-main-and-post.span9,.empty-region-side-post #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-post #region-bs-main-and-pre.span9,.jsenabled.docked-region-side-post #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-pre #region-bs-main-and-post.span9{width:100%}.empty-region-side-pre #region-bs-main-and-pre.span9 #region-main,.jsenabled.docked-region-side-pre #region-bs-main-and-pre.span9 #region-main{float:none;width:100%}.empty-region-side-pre #region-bs-main-and-post.span9 #region-main.span8,.jsenabled.docked-region-side-pre #region-bs-main-and-post.span9 #region-main.span8{float:right}.content-only #region-main-box,.content-only #region-main{width:100%}.empty-region-side-pre.used-region-side-post #region-main{width:100%}.empty-region-side-post.used-region-side-pre #region-main-box{width:100%}.jsenabled.docked-region-side-pre.empty-region-side-pre.used-region-side-post #region-main{width:100%}.jsenabled.docked-region-side-post.empty-region-side-post.used-region-side-pre #region-main-box{width:100%}.empty-region-side-post.used-region-side-pre #region-main.span8,.jsenabled.docked-region-side-post.used-region-side-pre #region-main.span8{width:74.46808511%;*width:74.41489362%}.empty-region-side-post.used-region-side-pre #block-region-side-pre.span4,.jsenabled.docked-region-side-post.used-region-side-pre #block-region-side-pre.span4{width:23.40425532%;*width:23.35106383%}.dir-ltr,.mdl-left,.dir-rtl .mdl-right{text-align:left}.dir-rtl,.mdl-right,.dir-rtl .mdl-left{text-align:right}#add,#remove,.centerpara,.mdl-align{text-align:center}a.dimmed,a.dimmed:link,a.dimmed:visited,a.dimmed_text,a.dimmed_text:link,a.dimmed_text:visited,.dimmed_text,.dimmed_text a,.dimmed_text a:link,.dimmed_text a:visited,.usersuspended,.usersuspended a,.usersuspended a:link,.usersuspended a:visited,.dimmed_category,.dimmed_category a{color:#999}.activity.label .dimmed_text{opacity:.5;filter:alpha(opacity=50)}.unlist,.unlist li,.inline-list,.inline-list li,.block .list,.block .list li,.section li.activity,.section li.movehere,.tabtree li{list-style:none;margin:0;padding:0}.inline,.inline-list li{display:inline}.notifytiny{font-size:10.5px}.notifytiny li,.notifytiny td{font-size:100%}.red,.notifyproblem{color:#b94a48}.green,.notifysuccess{color:#468847}.highlight{background:#d9edf7}.reportlink{text-align:right}a.autolink.glossary:hover{cursor:help}.collapsibleregioncaption{white-space:nowrap}.pagelayout-mydashboard.jsenabled .collapsibleregioncaption{cursor:pointer}.collapsibleregioncaption img{vertical-align:middle}.jsenabled .hiddenifjs{display:none}.visibleifjs{display:none}.jsenabled .visibleifjs{display:inline}.jsenabled .collapsibleregion{overflow:hidden}.jsenabled .collapsed .collapsibleregioninner{visibility:hidden}.collapsible-actions{display:none;text-align:right}.dir-rtl .collapsible-actions{text-align:left}.jsenabled .collapsible-actions{display:block}.collapsible-actions .collapseexpand{padding-left:20px;background:url([[pix:t/collapsed]]) 2px center no-repeat}.dir-rtl .collapsible-actions .collapseexpand{padding-right:20px;padding-left:0;background:url([[pix:t/collapsed_rtl]]) right center no-repeat}.collapsible-actions .collapse-all,.dir-rtl .collapsible-actions .collapse-all{background-image:url([[pix:t/expanded]])}.yui-overlay .yui-widget-bd{background-color:#FFEE69;border:1px solid #A6982B;border-top-color:#D4C237;color:#000000;left:0;padding:2px 5px;position:relative;top:0;z-index:1}.clearer{background:transparent;border-width:0;clear:both;display:block;height:1px;margin:0;padding:0}.bold,.warning,.errorbox .title,.pagingbar .title,.pagingbar .thispage{font-weight:bold}img.resize{height:1em;width:1em}.block img.resize,.breadcrumb img.resize{height:.9em;width:.8em}img.icon{height:16px;vertical-align:text-bottom;width:16px;padding-right:6px}.dir-rtl img.icon{padding-left:6px;padding-right:0}img.iconsmall{height:12px;margin-right:3px;vertical-align:middle;width:12px}img.iconhelp,.helplink img{height:16px;padding-left:3px;vertical-align:text-bottom;width:16px}h1 img.iconhelp,h1 img.icon,h2 img.iconhelp,h2 img.icon,h3 img.iconhelp,h3 img.icon,h4 img.iconhelp,h4 img.icon,h5 img.iconhelp,h5 img.icon,h6 img.iconhelp,h6 img.icon{vertical-align:middle;padding:4px}.dir-rtl img.iconhelp,.dir-rtl .helplink img{padding-right:3px;padding-left:0}img.iconlarge{height:24px;width:24px;vertical-align:middle}img.iconsort{vertical-align:text-bottom;padding-left:.3em;margin-bottom:.15em}.dir-rtl img.iconsort{padding-right:.3em;padding-left:0}img.icontoggle{height:17px;vertical-align:middle;width:50px}img.iconkbhelp{height:17px;width:49px}img.icon-pre,.dir-rtl img.icon-post{padding-right:3px;padding-left:0}img.icon-post,.dir-rtl img.icon-pre{padding-left:3px;padding-right:0}.boxaligncenter{margin-left:auto;margin-right:auto}.boxalignright{margin-left:auto;margin-right:0}.boxalignleft{margin-left:0;margin-right:auto}.boxwidthnarrow{width:30%}.boxwidthnormal{width:50%}.boxwidthwide{width:80%}.headermain{font-weight:bold}#maincontent{display:block;height:1px;overflow:hidden}img.uihint{cursor:help}#addmembersform table{margin-left:auto;margin-right:auto}table.flexible .emptyrow{display:none}img.emoticon{vertical-align:middle;width:15px;height:15px}form.popupform,form.popupform div{display:inline}.arrow_button input{overflow:hidden}.action-icon img.smallicon{vertical-align:text-bottom;margin:0 .3em}.no-overflow{overflow:auto;padding-bottom:1px}.pagelayout-report .no-overflow{overflow:visible}.no-overflow>.generaltable{margin-bottom:0}.accesshide{position:absolute;left:-10000px;font-weight:normal;font-size:1em}.dir-rtl .accesshide{top:-30000px;left:auto}span.hide,div.hide{display:none}a.skip-block,a.skip{position:absolute;top:-1000em;font-size:.85em;text-decoration:none}a.skip-block:focus,a.skip-block:active,a.skip:focus,a.skip:active{position:static;display:block}.skip-block-to{display:block;height:1px;overflow:hidden}.addbloglink{text-align:center}.blog_entry .audience{text-align:right;padding-right:4px}.blog_entry .tags{margin-top:15px}.blog_entry .tags .action-icon img.smallicon{height:16px;width:16px}.blog_entry .content{margin-left:43px}#page-group-index #groupeditform{text-align:center}#doc-contents h1{margin:1em 0 0 0}#doc-contents ul{margin:0;padding:0;width:90%}#doc-contents ul li{list-style-type:none}.groupmanagementtable td{vertical-align:top}.groupmanagementtable #existingcell,.groupmanagementtable #potentialcell{width:42%}.groupmanagementtable #buttonscell{width:16%}.groupmanagementtable #buttonscell p.arrow_button input{width:auto;min-width:80%;margin:0 auto}.groupmanagementtable #removeselect_wrapper,.groupmanagementtable #addselect_wrapper{width:100%}.groupmanagementtable #removeselect_wrapper label,.groupmanagementtable #addselect_wrapper label{font-weight:normal}.dir-rtl .groupmanagementtable p{text-align:right}#group-usersummary{width:14em}.groupselector{margin-top:3px;margin-bottom:3px;display:inline-block}.groupselector label{display:inline-block}.dataformatselector{margin:1em 0}.dataformatselector label{display:inline-block;margin:0 5px 10px 0;line-height:30px;vertical-align:top}.loginbox{margin:15px;overflow:visible}.loginbox.twocolumns{margin:15px}.loginbox h2,.loginbox .subcontent{margin:5px;padding:10px;text-align:center}.loginbox .loginpanel .desc{margin:0;padding:0;margin-bottom:5px;margin-top:15px}.loginbox .signuppanel .subcontent{text-align:left}.dir-rtl .loginbox .signuppanel .subcontent{text-align:right}.loginbox .loginsub{margin-left:0;margin-right:0}.loginbox .guestsub,.loginbox .forgotsub,.loginbox .potentialidps{margin:5px 12%}.loginbox .potentialidps .potentialidplist{margin-left:40%}.loginbox .potentialidps .potentialidplist div{text-align:left}.loginbox .loginform{margin-top:1em;text-align:left}.loginbox .loginform .form-label{float:left;text-align:right;width:49%;white-space:nowrap}.loginbox .loginform .form-input{float:right;width:50%}.loginbox .loginform .form-input input{width:6em}.loginbox .signupform{margin-top:1em;text-align:center}.loginbox.twocolumns .loginpanel,.loginbox.twocolumns .signuppanel{width:48%;border:0;margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;float:left;margin-left:2.76243%;min-height:30px;margin-bottom:-2000px;padding-bottom:2000px}.dir-rtl .loginbox.twocolumns .loginpanel,.dir-rtl .loginbox.twocolumns .signuppanel{float:right}.loginbox .potentialidp .smallicon{vertical-align:text-bottom;margin:0 .3em}.notepost{margin-bottom:1em}.notepost .userpicture{float:left;margin-right:5px}.notepost .content,.notepost .footer{clear:both}.notesgroup{margin-left:20px}.path-my .coursebox .overview{margin:15px 30px 10px 30px}.path-my .coursebox .info{float:none;margin:0}.mod_introbox{padding:10px}table.mod_index{width:100%}.comment-ctrl{font-size:12px;display:none;margin:0;padding:0}.comment-ctrl h5{margin:0;padding:5px}.comment-area{max-width:400px;padding:5px}.comment-area textarea{width:100%;overflow:auto}.comment-area textarea.fullwidth{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.comment-area .fd{text-align:right}.comment-meta span{color:gray}.comment-link img{vertical-align:text-bottom}.comment-list{font-size:11px;overflow:auto;list-style:none;padding:0;margin:0}.comment-list li{margin:2px;list-style:none;margin-bottom:5px;clear:both;padding:.3em;position:relative}.comment-list li.first{display:none}.comment-paging{text-align:center}.comment-paging .pageno{padding:2px}.comment-paging .curpage{border:1px solid #CCC}.comment-message .picture{width:20px;float:left}.dir-rtl .comment-message .picture{float:right}.comment-message .text{margin:0;padding:0}.comment-message .text p{padding:0;margin:0 18px 0 0}.comment-delete{position:absolute;top:0;right:0;margin:.3em}.dir-rtl .comment-delete{position:absolute;left:0;right:auto;margin:.3em}.comment-report-selectall{display:none}.comment-link{display:none}.jsenabled .comment-link{display:block}.jsenabled .showcommentsnonjs{display:none}.jsenabled .comment-report-selectall{display:inline}.completion-expired{background:#f2dede}.completion-expected{font-size:10.5px}.completion-sortchoice,.completion-identifyfield{font-size:10.5px;vertical-align:bottom}.completion-progresscell{text-align:right}.completion-expired .completion-expected{font-weight:bold}img.user-image{height:100px;width:100px}#tag-search-box{text-align:center;margin:10px auto}.path-tag .tag-index-items .tagarea{border:1px solid #E3E3E3;border-radius:4px;padding:10px;margin-top:10px}.path-tag .tag-index-items .tagarea h3{display:block;padding:3px 0 10px 0;margin:0;font-size:1.1em;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase;word-wrap:break-word;border-bottom:solid 1px #E3E3E3;margin-bottom:10px}.path-tag .tagarea .controls,.path-tag .tagarea .taggeditems{*zoom:1}.path-tag .tagarea .controls:before,.path-tag .tagarea .taggeditems:before,.path-tag .tagarea .controls:after,.path-tag .tagarea .taggeditems:after{display:table;content:"";line-height:0}.path-tag .tagarea .controls:after,.path-tag .tagarea .taggeditems:after{clear:both}.path-tag .tagarea .controls,.path-tag .tag-backtoallitems{text-align:center}.path-tag .tagarea .controls .gotopage.nextpage{float:right}.path-tag .tagarea .controls .gotopage.prevpage{float:left}.path-tag .tagarea .controls .exclusivemode{display:inline-block}.dir-rtl.path-tag .tagarea .controls .gotopage.nextpage{float:left}.dir-rtl.path-tag .tagarea .controls .gotopage.prevpage{float:right}.path-tag .tagarea .controls.controls-bottom{margin-top:5px}.path-tag .tagarea .controls .gotopage.nextpage::after{padding-right:5px;padding-left:5px;content:"»"}.path-tag .tagarea .controls .gotopage.prevpage::before{padding-right:5px;padding-left:5px;content:"«"}span.flagged-tag,tr.flagged-tag,span.flagged-tag a,tr.flagged-tag a{color:#b94a48}.tag-management-table td,.tag-management-table th{vertical-align:middle;padding:4px}.tag-management-table .inplaceeditable.inplaceeditingon input{width:150px}.path-admin-tag .addstandardtags{float:right}.path-admin-tag .addstandardtags img{margin:0 5px}.dir-rtl.path-admin-tag .addstandardtags{float:left}.path-tag .tag-relatedtags{padding-top:10px}.path-tag .tag-management-box{text-align:right}.path-tag .tag-index-toc{padding:10px;text-align:center}.path-tag .tag-index-toc li,.path-tag .tag-management-box li{margin-left:5px;margin-right:5px}.path-tag .tag-management-box li a.edittag{background-image:url([[pix:moodle|i/settings]])}.path-tag .tag-management-box li a.flagasinappropriate{background-image:url([[pix:moodle|i/flagged]])}.path-tag .tag-management-box li a.removefrommyinterests{background-image:url([[pix:moodle|t/delete]])}.path-tag .tag-management-box li a.addtomyinterests{background-image:url([[pix:moodle|t/add]])}.path-tag .tag-management-box li a{background-repeat:no-repeat;background-position:left;padding-left:17px}.tag_feed.media-list .media .itemimage{float:left}.dir-rtl .tag_feed.media-list .media .itemimage{float:right}.tag_feed.media-list .media .itemimage img{height:35px;width:35px}.tag_feed.media-list .media .media-body{padding-right:10px;padding-left:10px}.tag_feed .media .muted a{color:#999}.tag_cloud{text-align:center}.tag_cloud .inline-list li{padding:0 .2em}.tag_cloud .tag_overflow{margin-top:1em;font-style:italic}.tag_cloud .s20{font-size:2.7em}.tag_cloud .s19{font-size:2.6em}.tag_cloud .s18{font-size:2.5em}.tag_cloud .s17{font-size:2.4em}.tag_cloud .s16{font-size:2.3em}.tag_cloud .s15{font-size:2.2em}.tag_cloud .s14{font-size:2.1em}.tag_cloud .s13{font-size:2em}.tag_cloud .s12{font-size:1.9em}.tag_cloud .s11{font-size:1.8em}.tag_cloud .s10{font-size:1.7em}.tag_cloud .s9{font-size:1.6em}.tag_cloud .s8{font-size:1.5em}.tag_cloud .s7{font-size:1.4em}.tag_cloud .s6{font-size:1.3em}.tag_cloud .s5{font-size:1.2em}.tag_cloud .s4{font-size:1.1em}.tag_cloud .s3{font-size:1em}.tag_cloud .s2{font-size:.9em}.tag_cloud .s1{font-size:.8em}.tag_cloud .s0{font-size:.7em}.tag_list ul{display:inline}.tag_list.hideoverlimit .overlimit{display:none}.tag_list .tagmorelink{display:none}.tag_list.hideoverlimit .tagmorelink{display:inline}.tag_list.hideoverlimit .taglesslink{display:none}#webservice-doc-generator td{text-align:left;border:0 solid black}.smartselect{position:absolute}.smartselect .smartselect_mask{background-color:#fff}.smartselect ul{padding:0;margin:0}.smartselect ul li{list-style:none}.smartselect .smartselect_menu{margin-right:5px}.safari .smartselect .smartselect_menu{margin-left:2px}.smartselect .smartselect_menu,.smartselect .smartselect_submenu{border:1px solid #000;background-color:#FFF;display:none}.smartselect .smartselect_menu.visible,.smartselect .smartselect_submenu.visible{display:block}.smartselect .smartselect_menu_content ul li{position:relative;padding:2px 5px}.smartselect .smartselect_menu_content ul li a{color:#333;text-decoration:none}.smartselect .smartselect_menu_content ul li a.selectable{color:inherit}.smartselect .smartselect_submenuitem{background-image:url([[pix:moodle|t/collapsed]]);background-repeat:no-repeat;background-position:100%}.smartselect.spanningmenu .smartselect_submenu{position:absolute;top:-1px;left:100%}.smartselect.spanningmenu .smartselect_submenu a{white-space:nowrap;padding-right:16px}.smartselect.spanningmenu .smartselect_menu_content ul li a.selectable:hover{text-decoration:underline}.smartselect.compactmenu .smartselect_submenu{position:relative;margin:2px -3px;margin-left:10px;display:none;border-width:0;z-index:1010}.smartselect.compactmenu .smartselect_submenu.visible{display:block}.smartselect.compactmenu .smartselect_menu{z-index:1000;overflow:hidden}.smartselect.compactmenu .smartselect_submenu .smartselect_submenu{z-index:1020}.smartselect.compactmenu .smartselect_submenuitem:hover>.smartselect_menuitem_label{font-weight:bold}#page-admin-registration-register .registration_textfield{width:300px}.userenrolment{width:100%;border-collapse:collapse}.userenrolment tr{vertical-align:top}.userenrolment td{padding:0;height:41px}.userenrolment .subfield{margin-right:5px}.userenrolment .col_userdetails .subfield{margin-left:40px}.userenrolment .col_userdetails .subfield_picture{float:left;margin-left:0}.userenrolment .col_lastseen{width:150px}.userenrolment .col_role{width:262px}.userenrolment .col_role .roles,.userenrolment .col_group .groups{margin-right:30px}.userenrolment .col_role .role,.userenrolment .col_group .group{float:left;padding:3px;margin:3px;white-space:nowrap}.userenrolment .col_role .role a,.userenrolment .col_group .group a{margin-left:3px;cursor:pointer}.userenrolment .col_role .addrole,.userenrolment .col_group .addgroup{float:right;padding:3px;margin:3px}.userenrolment .col_role .addrole>a:hover,.userenrolment .col_group .addgroup>a:hover{border-bottom:1px solid #666}.userenrolment .col_role .addrole img,.userenrolment .col_group .addgroup img{vertical-align:baseline}.dir-rtl .userenrolment .col_role .role{float:right}.userenrolment .hasAllRoles .col_role .addrole{display:none}.userenrolment .col_enrol .enrolment{float:left;padding:3px;margin:3px}.userenrolment .col_enrol .enrolment a{float:right;margin-left:3px}#page-enrol-users .enrol_user_buttons{float:right}#page-enrol-users .enrol_user_buttons .enrolusersbutton{display:inline}#page-enrol-users .enrol_user_buttons .enrolusersbutton div,#page-enrol-users .enrol_user_buttons .enrolusersbutton form{display:inline;margin-right:0}#page-enrol-users #filterform{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;display:inline-block}#page-enrol-users #filterform blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}#page-enrol-users #filterform .fitem{display:inline-block;line-height:40px;margin-right:.3em;white-space:nowrap}#page-enrol-users #filterform .fitem label{display:inline;line-height:20px;padding-right:.3em}#page-enrol-users #filterform .fitem :before,#page-enrol-users #filterform .fitem :after{display:inline}#page-enrol-users #filterform div,#page-enrol-users #filterform fieldset{display:inline;float:none;clear:none;width:auto;margin:0}#page-enrol-users #filterform select,#page-enrol-users #filterform .ftext input{width:7em}#page-enrol-users #filterform input,#page-enrol-users #filterform select{margin-bottom:0}#page-enrol-users .user-enroller-panel .uep-search-results .user .details{width:237px}#page-enrol-users .user-enroller-panel .uep-search-results .cohort .details{width:237px}.dir-rtl#page-enrol-users .col_userdetails .subfield{margin-right:40px;margin-left:5px}.dir-rtl#page-enrol-users .col_userdetails .subfield_picture{float:right;margin-right:0}.dir-rtl#page-enrol-users .enrol_user_buttons{float:left}.dir-rtl#page-enrol-users .enrol_user_buttons .enrolusersbutton{margin-left:0;margin-right:1em}.dir-rtl#page-enrol-users .enrol_user_buttons .enrolusersbutton div{margin-left:0}.dir-rtl#page-enrol-users #filterform .fitem{margin-right:0;margin-left:.3em}.dir-rtl#page-enrol-users #filterform .fitem label{padding-right:0;padding-left:.3em}.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .count,.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .picture,.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .details{float:right}.dir-rtl#page-enrol-users .user-enroller-panel .uep-search-results .user .options .enrol{float:left}#page-enrol-users .enrol-users-page-action input{margin-left:0}.dir-rtl .headermain{float:right}.dir-rtl .headermenu{float:left}.dir-rtl .loginbox .loginform .form-label{float:right;text-align:left}.dir-rtl .loginbox .loginform .form-input{text-align:right;margin-right:1%}.dir-rtl .yui3-menu-hidden{left:0}#page-admin-roles-define.dir-rtl #rolesform .felement{margin-right:180px}#page-message-edit.dir-rtl table.generaltable th.c0{text-align:right}.corelightbox{background-color:#CCC;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center}.corelightbox img{position:fixed;top:50%;left:50%}.mod-indent-outer{display:table}.mod-indent{display:table-cell}.label .mod-indent{float:left;padding-top:20px}.mod-indent-1{width:30px}.mod-indent-2{width:60px}.mod-indent-3{width:90px}.mod-indent-4{width:120px}.mod-indent-5{width:150px}.mod-indent-6{width:180px}.mod-indent-7{width:210px}.mod-indent-8{width:240px}.mod-indent-9{width:270px}.mod-indent-10{width:300px}.mod-indent-11{width:330px}.mod-indent-12{width:360px}.mod-indent-13{width:390px}.mod-indent-14{width:420px}.mod-indent-15{width:450px}.mod-indent-16{width:480px}.mod-indent-huge{width:480px}.resourcecontent .mediaplugin_mp3 object{height:25px;width:600px}.resourcecontent audio.mediaplugin_html5audio{width:600px}.resourceimage{max-width:100%}.mediaplugin_mp3 object{height:15px;width:300px}audio.mediaplugin_html5audio{width:300px}.core_media_preview.pagelayout-embedded #content{padding:0}.core_media_preview.pagelayout-embedded #maincontent{height:0}body#page-lib-editor-tinymce-plugins-moodlemedia-preview{padding:0;margin:0;min-width:0;background:none}.dir-rtl .ygtvtn,.dir-rtl .ygtvtm,.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh,.dir-rtl .ygtvtp,.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh,.dir-rtl .ygtvln,.dir-rtl .ygtvlm,.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh,.dir-rtl .ygtvlp,.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh,.dir-rtl .ygtvdepthcell,.dir-rtl .ygtvok,.dir-rtl .ygtvok:hover,.dir-rtl .ygtvcancel,.dir-rtl .ygtvcancel:hover{width:18px;height:22px;background-image:url([[pix:theme|yui2-treeview-sprite-rtl]]);background-repeat:no-repeat;cursor:pointer}.dir-rtl .ygtvtn{background-position:0 -5600px}.dir-rtl .ygtvtm{background-position:0 -4000px}.dir-rtl .ygtvtmh,.dir-rtl .ygtvtmhh{background-position:0 -4800px}.dir-rtl .ygtvtp{background-position:0 -6400px}.dir-rtl .ygtvtph,.dir-rtl .ygtvtphh{background-position:0 -7200px}.dir-rtl .ygtvln{background-position:0 -1600px}.dir-rtl .ygtvlm{background-position:0 0}.dir-rtl .ygtvlmh,.dir-rtl .ygtvlmhh{background-position:0 -800px}.dir-rtl .ygtvlp{background-position:0 -2400px}.dir-rtl .ygtvlph,.dir-rtl .ygtvlphh{background-position:0 -3200px}.dir-rtl .ygtvdepthcell{background-position:0 -8000px}.dir-rtl .ygtvok{background-position:0 -8800px}.dir-rtl .ygtvok:hover{background-position:0 -8844px}.dir-rtl .ygtvcancel{background-position:0 -8822px}.dir-rtl .ygtvcancel:hover{background-position:0 -8866px}.dir-rtl.yui-skin-sam .yui-panel .hd{text-align:right}.dir-rtl .yui-skin-sam .yui-layout .yui-layout-unit div.yui-layout-bd{text-align:right}.dir-rtl .clearlooks2.ie9 .mceAlert .mceMiddle span,.dir-rtl .clearlooks2 .mceConfirm .mceMiddle span{top:44px}.dir-rtl .o2k7Skin table,.dir-rtl .o2k7Skin tbody,.dir-rtl .o2k7Skin a,.dir-rtl .o2k7Skin img,.dir-rtl .o2k7Skin tr,.dir-rtl .o2k7Skin div,.dir-rtl .o2k7Skin td,.dir-rtl .o2k7Skin iframe,.dir-rtl .o2k7Skin span,.dir-rtl .o2k7Skin *,.dir-rtl .o2k7Skin .mceText,.dir-rtl .o2k7Skin .mceListBox .mceText{text-align:right}.path-rating .ratingtable{width:100%;margin-bottom:1em}.path-rating .ratingtable th.rating{width:100%}.path-rating .ratingtable td.rating,.path-rating .ratingtable td.time{white-space:nowrap;text-align:center}.initialbar a,.initialbar strong{padding-left:3px;padding-right:3px}.moodle-dialogue-base .moodle-dialogue-lightbox{background-color:#AAA}.moodle-dialogue-base .hidden,.moodle-dialogue-base .moodle-dialogue-hidden{display:none}.no-scrolling{overflow:hidden}.moodle-dialogue-base .moodle-dialogue-fullscreen{left:0;top:0;right:0;bottom:-50px;position:fixed}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{overflow:auto}.moodle-dialogue-base .moodle-dialogue-fullscreen .closebutton{width:28px;height:16px;background-size:100%}.moodle-dialogue-base .moodle-dialogue{padding:0;margin:0;background:none;border:none;z-index:600;outline:#000 dotted 0}.moodle-dialogue-base .moodle-dialogue-wrap{margin-top:-3px;margin-left:-3px;background-color:#fff;border:1px solid #ccc;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd.yui3-widget-hd{margin:0;padding:5px;font-size:12px;font-weight:normal;letter-spacing:1px;color:#333;text-align:center;text-shadow:1px 1px 1px #fff;-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;border-bottom:1px solid #bbb;background:#ccc;background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0);filter:0}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd h1{margin:0;padding:0;display:inline;font-size:100%;font-weight:bold}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{padding:5px}.moodle-dialogue-base .closebutton{width:25px;height:15px;float:right;vertical-align:middle;display:inline-block;cursor:pointer;padding:0;background-image:url([[pix:theme|sprite]]);background-repeat:no-repeat;border-style:none}.dir-rtl .moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-hd .yui3-widget-buttons{left:0;right:auto}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-bd{padding:1em;line-height:2em;color:#555;font-size:12px}.moodle-dialogue-base .moodle-dialogue-wrap .moodle-dialogue-content{padding:0;background:#FFF}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd{padding:10px;font-size:16px}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-content{overflow:auto;position:absolute;top:0;bottom:50px;left:0;right:0;margin:0;border:0}.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-hd,.moodle-dialogue-base .moodle-dialogue-fullscreen .moodle-dialogue-wrap{border-radius:0}.moodle-dialogue-confirm .confirmation-dialogue{text-align:center}.moodle-dialogue-confirm .confirmation-dialogue input{text-align:center}.moodle-dialogue-exception .moodle-exception-message{text-align:center}.moodle-dialogue-exception .moodle-exception-param label{font-weight:bold}.moodle-dialogue-exception .param-stacktrace label{background-color:#EEE;border:1px solid #ccc;border-bottom-width:0}.moodle-dialogue-exception .param-stacktrace pre{border:1px solid #ccc;background-color:#fff}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{color:navy;font-size:11.9px}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{color:#b94a48;font-size:11.9px}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{color:#333;font-size:90%;border-bottom:1px solid #eee}.moodle-dialogue-base .moodle-dialogue .moodle-dialogue-content .moodle-dialogue-ft{padding:0;margin:.7em 1em;text-align:right;background-color:#FFF;font-size:12px}.moodle-dialogue-confirm .confirmation-message{margin:.5em 1em}.moodle-dialogue-confirm .confirmation-dialogue input{min-width:80px}.moodle-dialogue-exception .moodle-exception-message{margin:1em}.moodle-dialogue-exception .moodle-exception-param{margin-bottom:.5em}.moodle-dialogue-exception .moodle-exception-param label{width:150px}.moodle-dialogue-exception .param-stacktrace label{display:block;margin:0;padding:4px 1em}.moodle-dialogue-exception .param-stacktrace pre{display:block;height:200px;overflow:auto}.moodle-dialogue-exception .param-stacktrace .stacktrace-file{display:inline-block;margin:4px 0}.moodle-dialogue-exception .param-stacktrace .stacktrace-line{display:inline-block;width:50px;margin:4px 1em}.moodle-dialogue-exception .param-stacktrace .stacktrace-call{padding-left:25px;margin-bottom:4px;padding-bottom:4px}.moodle-dialogue .moodle-dialogue-bd .content-lightbox{opacity:.75;filter:alpha(opacity=75);width:100%;height:100%;top:0;left:0;background-color:white;text-align:center;padding:10% 0}.moodle-dialogue .tooltiptext{max-height:300px}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip{z-index:3001}.moodle-dialogue-base .moodle-dialogue.moodle-dialogue-tooltip .moodle-dialogue-bd{overflow:auto}#page-question-edit.dir-rtl a.container-close{right:auto;left:6px}.chooserdialoguebody,.choosertitle{display:none}.moodle-dialogue.chooserdialogue .moodle-dialogue-content .moodle-dialogue-ft{margin:0}.chooserdialogue .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0;background:#F2F2F2;-webkit-border-bottom-right-radius:10px;-moz-border-radius-bottomright:10px;border-bottom-right-radius:10px;-webkit-border-bottom-left-radius:10px;-moz-border-radius-bottomleft:10px;border-bottom-left-radius:10px}.choosercontainer #chooseform .submitbuttons{padding:.7em 0;text-align:center}@media (max-height:639px){.ios.safari .choosercontainer #chooseform .submitbuttons{padding:45px 0}}.choosercontainer #chooseform .submitbuttons input{min-width:100px;margin:0 .5em}.choosercontainer #chooseform .options{position:relative;border-bottom:1px solid #BBBBBB}.jschooser .choosercontainer #chooseform .alloptions{overflow-x:hidden;overflow-y:auto;max-width:20.3em;-webkit-box-shadow:inset 0 0 30px 0 #ccc;-moz-box-shadow:inset 0 0 30px 0 #ccc;box-shadow:inset 0 0 30px 0 #ccc}.jschooser .choosercontainer #chooseform .alloptions .option input[type=radio]{display:inline-block}.jschooser .choosercontainer #chooseform .alloptions .option .modicon{display:inline-block}.jschooser .choosercontainer #chooseform .alloptions .option .typename{display:inline-block;width:65%}.dir-rtl.jschooser .choosercontainer #chooseform .alloptions{max-width:18.3em}.choosercontainer #chooseform .moduletypetitle,.choosercontainer #chooseform .option,.choosercontainer #chooseform .nonoption{margin-bottom:0;padding:0 1.6em 0 1.6em}.choosercontainer #chooseform .moduletypetitle{text-transform:uppercase;padding-top:1.2em;padding-bottom:.4em}.choosercontainer #chooseform .option .typename,.choosercontainer #chooseform .option span.modicon img.icon,.choosercontainer #chooseform .nonoption .typename,.choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 0 0 .5em}.dir-rtl .choosercontainer #chooseform .option .typename,.dir-rtl .choosercontainer #chooseform .option span.modicon img.icon,.dir-rtl .choosercontainer #chooseform .nonoption .typename,.dir-rtl .choosercontainer #chooseform .nonoption span.modicon img.icon{padding:0 .5em 0 0}.chooserdialogue-course-modchooser .choosercontainer #chooseform .option span.modicon img.icon,.chooserdialogue-course-modchooser .choosercontainer #chooseform .nonoption span.modicon img.icon{height:24px;width:24px}.choosercontainer #chooseform .option input[type=radio],.choosercontainer #chooseform .option span.typename,.choosercontainer #chooseform .option span.modicon{vertical-align:middle}.choosercontainer #chooseform .option label{display:block;padding:.3em 0 .1em 0;border-bottom:1px solid #FFFFFF}.choosercontainer #chooseform .nonoption{padding-left:2.7em;padding-top:.3em;padding-bottom:.1em}.dir-rtl .choosercontainer #chooseform .nonoption{padding-right:2.7em;padding-left:0}.choosercontainer #chooseform .subtype{margin-bottom:0;padding:0 1.6em 0 3.2em}.dir-rtl .choosercontainer #chooseform .subtype{padding:0 3.2em 0 1.6em}.choosercontainer #chooseform .subtype .typename{margin:0 0 0 .2em}.dir-rtl .choosercontainer #chooseform .subtype .typename{margin:0 .2em 0 0}.jschooser .choosercontainer #chooseform .instruction,.jschooser .choosercontainer #chooseform .typesummary{display:none;position:absolute;top:0;right:0;bottom:0;left:20.3em;margin:0;padding:1.6em;background-color:#fff;overflow-x:hidden;overflow-y:auto;line-height:2em}.dir-rtl.jschooser .choosercontainer #chooseform .instruction,.dir-rtl.jschooser .choosercontainer #chooseform .typesummary{left:0;right:18.5em;border-right:1px solid grey}.jschooser .choosercontainer #chooseform .instruction,.choosercontainer #chooseform .selected .typesummary{display:block}.choosercontainer #chooseform .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}.section-modchooser-link img.smallicon{padding:3px}.formlistingradio{padding-bottom:25px;padding-right:10px}.formlistinginputradio{float:left}.formlistingmain{min-height:225px}.formlisting{position:relative;margin:15px 0;padding:1px 19px 14px;background-color:white;border:1px solid #DDD;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingmore{position:absolute;cursor:pointer;bottom:-1px;right:-1px;padding:3px 7px;font-size:12px;font-weight:bold;background-color:whiteSmoke;border:1px solid #ddd;color:#9DA0A4;-webkit-border-radius:4px 0 4px 0;-moz-border-radius:4px 0 4px 0;border-radius:4px 0 4px 0}.formlistingall{margin:15px 0;padding:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.formlistingrow{cursor:pointer;border-bottom:1px solid;border-color:#E1E1E8;border-left:1px solid #E1E1E8;border-right:1px solid #E1E1E8;background-color:#F7F7F9;-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;padding:6px;top:50%;left:50%;min-height:34px;float:left;width:150px}body.jsenabled .formlistingradio{display:none}body.jsenabled .formlisting{display:block}table.collection{width:100%;margin-bottom:20px;border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}table.collection th,table.collection td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}table.collection th{font-weight:bold}table.collection thead th{vertical-align:bottom}table.collection caption+thead tr:first-child th,table.collection caption+thead tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+thead tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection thead:first-child tr:first-child td{border-top:0}table.collection tbody+tbody{border-top:2px solid #ddd}table.collection .table{background-color:#fff}table.collection th,table.collection td{border-left:1px solid #ddd}table.collection caption+thead tr:first-child th,table.collection caption+tbody tr:first-child th,table.collection caption+tbody tr:first-child td,table.collection colgroup+thead tr:first-child th,table.collection colgroup+tbody tr:first-child th,table.collection colgroup+tbody tr:first-child td,table.collection thead:first-child tr:first-child th,table.collection tbody:first-child tr:first-child th,table.collection tbody:first-child tr:first-child td{border-top:0}table.collection thead:first-child tr:first-child>th:first-child,table.collection tbody:first-child tr:first-child>td:first-child,table.collection tbody:first-child tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}table.collection thead:first-child tr:first-child>th:last-child,table.collection tbody:first-child tr:first-child>td:last-child,table.collection tbody:first-child tr:first-child>th:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}table.collection thead:last-child tr:last-child>th:first-child,table.collection tbody:last-child tr:last-child>td:first-child,table.collection tbody:last-child tr:last-child>th:first-child,table.collection tfoot:last-child tr:last-child>td:first-child,table.collection tfoot:last-child tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}table.collection thead:last-child tr:last-child>th:last-child,table.collection tbody:last-child tr:last-child>td:last-child,table.collection tbody:last-child tr:last-child>th:last-child,table.collection tfoot:last-child tr:last-child>td:last-child,table.collection tfoot:last-child tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px}table.collection tfoot+tbody:last-child tr:last-child td:first-child{-webkit-border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0}table.collection tfoot+tbody:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:0;-moz-border-radius-bottomright:0;border-bottom-right-radius:0}table.collection caption+thead tr:first-child th:first-child,table.collection caption+tbody tr:first-child td:first-child,table.collection colgroup+thead tr:first-child th:first-child,table.collection colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}table.collection caption+thead tr:first-child th:last-child,table.collection caption+tbody tr:first-child td:last-child,table.collection colgroup+thead tr:first-child th:last-child,table.collection colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px}table.collection tbody>tr:nth-child(odd)>td,table.collection tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}table.collection .name{text-align:left;vertical-align:middle}table.collection .awards{width:10%;text-align:center;vertical-align:middle}table.collection .criteria{width:40%;text-align:left;vertical-align:top}table.collection .badgeimage,table.collection .status{width:15%;text-align:center;vertical-align:middle}table.collection .description{width:25%;text-align:left}.dir-rtl table.collection .name,.dir-rtl table.collection .criteria,.dir-rtl table.collection .description{text-align:right}table.collection .actions{width:11em;text-align:center;vertical-align:middle}a.criteria-action{padding:0 3px;float:right}div.criteria-description{padding:10px 15px;margin:5px 0;background:none repeat scroll 0 0 #f9f9f9;border:1px solid #EEE}ul.badges{margin:0;list-style:none}.badges li{position:relative;display:inline-block;padding-top:1em;text-align:center;vertical-align:top;width:150px}.badges li .badge-name{display:block;padding:5px}.badges li>img{position:absolute}.badges li .badge-image{width:100px;height:100px;left:10px;top:0;z-index:1}.badges li .badge-actions{position:relative}.badges li .expireimage{width:100px;height:100px;left:25px;top:0;position:absolute;z-index:10;opacity:.85}#badge-image{background-color:transparent;padding:0;position:relative;min-width:100px;width:20%;display:inline-block;vertical-align:top;margin-top:17px}#badge-image .expireimage{width:100px;height:100px;left:0;top:0;opacity:.85;filter:alpha(opacity=85);position:absolute;z-index:10}#badge-image .singlebutton{padding-top:5px}#badge-image .singlebutton input{margin-left:0}.dir-rtl #badge-image{float:right}.dir-rtl #badge-image .expireimage{left:41px}#badge-details{display:inline-block;width:79%}#badge-overview dl,#badge-details dl{margin:0}#badge-overview dl dt,#badge-details dl dt,#badge-overview dl dd,#badge-details dl dd{vertical-align:top;padding:3px 0}#badge-overview dl dt,#badge-details dl dt{clear:both;display:inline-block;width:20%;min-width:100px}#badge-overview dl dd,#badge-details dl dd{display:inline-block;width:79%;margin-left:1%}.badge-profile{vertical-align:top}.connected{color:#468847}.notconnected{color:#b94a48}.connecting{color:#8a6d3b}#page-badges-award .recipienttable tr td{vertical-align:top}#page-badges-award .recipienttable tr td.actions .actionbutton{margin:.3em 0;padding:.5em 0;width:100%}#page-badges-award .recipienttable tr td.existing,#page-badges-award .recipienttable tr td.potential{width:42%}#issued-badge-table .activatebadge{display:inline-block}.statusbox.active{background-color:#dff0d8}.statusbox.inactive{background-color:#fcf8e3}.statusbox{text-align:center;margin-bottom:5px;padding:5px}.statusbox .activatebadge{display:inline-block}.statusbox .activatebadge input[type=submit]{margin:3px}.activatebadge{margin:0;text-align:left;vertical-align:middle}.dir-rtl .activatebadge{text-align:right}img#persona_signin{cursor:pointer}.addcourse{float:right}.invisiblefieldset{display:inline;margin:0;padding:0;border-width:0}.breadcrumb-nav{float:left;margin-bottom:10px}.dir-rtl .breadcrumb-nav{float:right}.breadcrumb-button .singlebutton div{margin-right:0}.breadcrumb-nav .breadcrumb{margin:0}.page-context-header{overflow:hidden}.page-context-header .page-header-image,.page-context-header .page-header-headings{display:block;position:relative}.page-context-header .page-header-image{margin-bottom:1em}.page-context-header .page-header-headings{margin-top:30px;margin-bottom:10px}.page-context-header .page-header-headings h1{display:block}.page-context-header .page-header-headings,.page-context-header .header-button-group{position:relative;line-height:24px;vertical-align:middle}.page-context-header .header-button-group{display:block}.page-context-header .header-button-group a{position:relative;top:-0.4em}.dir-ltr .page-context-header .page-header-image{float:left;margin-right:1em}.dir-ltr .page-context-header .header-button-group{float:left}.dir-rtl .page-context-header .page-header-image{float:right;margin-left:1em}.dir-rtl .page-context-header .header-button-group{float:right}.moodle-actionmenu,.moodle-actionmenu>ul,.moodle-actionmenu>ul>li{display:inline-block}.moodle-actionmenu ul{padding:0;margin:0;list-style-type:none}.section_action_menu .moodle-actionmenu ul.menubar{margin:0}.section_action_menu .moodle-actionmenu ul.menu{margin:0 10px 10px 0}.moodle-actionmenu .toggle-display,.moodle-actionmenu .menu-action-text{display:none}.jsenabled .moodle-actionmenu[data-enhance]{display:block}.jsenabled .moodle-actionmenu[data-enhance] .menu{display:none}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display{display:inline;opacity:.5;filter:alpha(opacity=50)}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu{display:block;margin-left:4px;padding-left:4px;padding-right:4px}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .iconsmall,.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .smallicon{margin:4px 4px 4px 0;padding:8px 4px 0 2px;vertical-align:text-bottom}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-top:8px;margin-left:2px;border-top-color:#777}.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret:hover,.jsenabled .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret:active{border-top-color:#555}.jsenabled .moodle-actionmenu[data-enhanced] .toggle-display{opacity:1;filter:alpha(opacity=100)}.jsenabled .moodle-actionmenu[data-enhanced] .menu-action-text{display:inline}.jsenabled.dir-rtl .moodle-actionmenu[data-enhance] .toggle-display.textmenu{margin-left:initial;margin-right:4px}.jsenabled.dir-rtl .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-left:initial;margin-right:2px}.moodle-actionmenu[data-enhanced].show{position:relative}.moodle-actionmenu[data-enhanced].show .menu{display:block;position:absolute;text-align:left;background-color:#fff;border:1px solid rgba(0,0,0,0.2);z-index:1000;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}.moodle-actionmenu[data-enhanced].show .menu a{display:block;color:#333;padding:2px 1em 2px 28px}.moodle-actionmenu[data-enhanced].show .menu a:hover{color:#fff;background-color:#0070a8}.moodle-actionmenu[data-enhanced].show .menu a:first-child{-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px}.moodle-actionmenu[data-enhanced].show .menu a:last-child{-webkit-border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px;border-bottom-left-radius:4px}.moodle-actionmenu[data-enhanced].show .menu a.hidden{display:none}.moodle-actionmenu[data-enhanced].show .menu img{vertical-align:middle}.moodle-actionmenu[data-enhanced].show .menu .iconsmall,.moodle-actionmenu[data-enhanced].show .menu .smallicon{margin:4px 4px 4px -24px;padding:4px}.moodle-actionmenu[data-enhanced].show .menu>li{display:block}.moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{top:100%;left:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{top:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{bottom:100%;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-br-bl{bottom:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-br{top:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tr-br{top:100%;right:0;margin-top:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-br{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-br{bottom:100%;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{top:0;left:0}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{top:0;right:100%;margin-right:4px}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{bottom:100%;left:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show .menu.align-br-tl{bottom:100%;right:100%}.moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{top:0;left:100%;margin-left:4px}.moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{top:0;right:0}.moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{bottom:100%;left:100%}.moodle-actionmenu[data-enhanced].show .menu.align-br-tr{bottom:100%;right:0;margin-bottom:4px}.moodle-actionmenu[data-enhanced].show.nowrap-items .menu>li{white-space:nowrap}.block .moodle-actionmenu{text-align:right}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu{text-align:right;left:0;right:auto}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu a{padding:2px 28px 2px 1em}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .iconsmall,.dir-rtl .moodle-actionmenu[data-enhanced].show .menu .smallicon{margin-right:-24px;margin-left:4px}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-bl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-bl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-bl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-br{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-br{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-br{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tl{left:auto;right:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tl{right:auto;left:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tl-tr{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-tr-tr{right:auto;left:0}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-bl-tr{left:auto;right:100%}.dir-rtl .moodle-actionmenu[data-enhanced].show .menu.align-br-tr{right:auto;left:0}.dir-rtl .block .moodle-actionmenu{text-align:right}ul.dragdrop-keyboard-drag li{list-style-type:none}.block-control-actions .moodle-core-dragdrop-draghandle img{width:12px;height:12px}a.disabled:hover,a.disabled{text-decoration:none;cursor:default;font-style:italic;color:#808080}body.lockscroll{height:100%;overflow:hidden}.dir-rtl ul{margin-left:0;margin-right:25px}.progressbar_container{max-width:500px;margin:0 auto}.ie10 .yui3-calendar-header-label{display:inline-block}dd:before,dd:after{display:block;content:" "}dd:after{clear:both}.nav-tabs>.active>a[href],.nav-tabs>.active>a[href]:hover,.nav-tabs>.active>a[href]:focus{cursor:pointer}.inplaceeditable.inplaceeditingon{position:relative}.inplaceeditable.inplaceeditingon .editinstructions{margin-top:-30px;font-weight:normal;margin-right:0;margin-left:0;left:0;right:auto;white-space:nowrap}.inplaceeditable.inplaceeditingon input{width:330px;height:16px;vertical-align:text-bottom;margin-bottom:0}.inplaceeditable.inplaceeditingon select{margin-bottom:0}.inplaceeditable .quickediticon img{opacity:.2}.inplaceeditable .quickeditlink{color:inherit;text-decoration:inherit}.inplaceeditable:hover .quickeditlink .quickediticon img,.inplaceeditable .quickeditlink:focus .quickediticon img{opacity:1}.inplaceeditable.inplaceeditable-toggle .quickediticon{display:none}.dir-rtl .inplaceeditable.inplaceeditingon .editinstructions{right:0;left:auto}h3.sectionname .inplaceeditable.inplaceeditingon .editinstructions{margin-top:-20px}.chart-output-htmltable{width:100%;text-align:right}.chart-output-htmltable th{width:20%}.chart-output-htmltable td{width:80%}.dir-rtl .chart-output-htmltable{width:100%;text-align:left}.dir-rtl .chart-output-htmltable th{width:20%}.dir-rtl .chart-output-htmltable td{width:80%}.chart-area .chart-table-data{display:none}.chart-area .chart-table-expand{text-align:right}.chart-area .chart-table.accesshide .chart-table-expand{display:none}.chart-area .chart-table.accesshide .chart-table-data{display:block}.dir-rtl .chart-area .chart-table-expand{text-align:left}.formtable tbody th{font-weight:normal;text-align:right}.path-admin #assignrole{width:60%;margin-left:auto;margin-right:auto}.path-admin .admintable .leftalign{text-align:left}.dir-rtl.path-admin .admintable .leftalign{text-align:right}.environmenttable p.warn{background-color:#fcf8e3;color:#8a6d3b}.environmenttable .error,.environmenttable span.warn,.environmenttable .ok{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.environmenttable .error:empty,.environmenttable span.warn:empty,.environmenttable .ok:empty{display:none}.environmenttable .error-important,.environmenttable span.warn-important,.environmenttable .ok-important{background-color:#b94a48}.environmenttable .error-important[href],.environmenttable span.warn-important[href],.environmenttable .ok-important[href]{background-color:#953b39}.environmenttable .error-warning,.environmenttable span.warn-warning,.environmenttable .ok-warning{background-color:#f89406}.environmenttable .error-warning[href],.environmenttable span.warn-warning[href],.environmenttable .ok-warning[href]{background-color:#c67605}.environmenttable .error-success,.environmenttable span.warn-success,.environmenttable .ok-success{background-color:#468847}.environmenttable .error-success[href],.environmenttable span.warn-success[href],.environmenttable .ok-success[href]{background-color:#356635}.environmenttable .error-info,.environmenttable span.warn-info,.environmenttable .ok-info{background-color:#3a87ad}.environmenttable .error-info[href],.environmenttable span.warn-info[href],.environmenttable .ok-info[href]{background-color:#2d6987}.environmenttable .error-inverse,.environmenttable span.warn-inverse,.environmenttable .ok-inverse{background-color:#333}.environmenttable .error-inverse[href],.environmenttable span.warn-inverse[href],.environmenttable .ok-inverse[href]{background-color:#1a1a1a}.environmenttable .error{background-color:#b94a48}.environmenttable span.warn{background-color:#f89406}.environmenttable .ok{background-color:#468847}.path-admin .admintable.environmenttable .name,.path-admin .admintable.environmenttable .info,.path-admin #assignrole .admintable .role,.path-admin #assignrole .admintable .userrole,.path-admin #assignrole .admintable .roleholder{white-space:nowrap}.path-admin .incompatibleblockstable td.c0{font-weight:bold}#page-admin-course-category .addcategory{padding:10px}#page-admin-course-index .editcourse{margin:20px auto}#page-admin-course-index .editcourse th,#page-admin-course-index .editcourse td{padding-left:10px;padding-right:10px}.timewarninghidden{display:none}.statusok,.statuswarning,.statusserious,.statuscritical{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.statusok:empty,.statuswarning:empty,.statusserious:empty,.statuscritical:empty{display:none}.statusok-important,.statuswarning-important,.statusserious-important,.statuscritical-important{background-color:#b94a48}.statusok-important[href],.statuswarning-important[href],.statusserious-important[href],.statuscritical-important[href]{background-color:#953b39}.statusok-warning,.statuswarning-warning,.statusserious-warning,.statuscritical-warning{background-color:#f89406}.statusok-warning[href],.statuswarning-warning[href],.statusserious-warning[href],.statuscritical-warning[href]{background-color:#c67605}.statusok-success,.statuswarning-success,.statusserious-success,.statuscritical-success{background-color:#468847}.statusok-success[href],.statuswarning-success[href],.statusserious-success[href],.statuscritical-success[href]{background-color:#356635}.statusok-info,.statuswarning-info,.statusserious-info,.statuscritical-info{background-color:#3a87ad}.statusok-info[href],.statuswarning-info[href],.statusserious-info[href],.statuscritical-info[href]{background-color:#2d6987}.statusok-inverse,.statuswarning-inverse,.statusserious-inverse,.statuscritical-inverse{background-color:#333}.statusok-inverse[href],.statuswarning-inverse[href],.statusserious-inverse[href],.statuscritical-inverse[href]{background-color:#1a1a1a}.statusok{background-color:#468847}.statuswarning{background-color:#8a6d3b}.statusserious{background-color:#f89406}.statuscritical{background-color:#b94a48}#page-admin-report-capability-index #capabilitysearch{width:30em}#page-admin-report-backups-index .backup-error,#page-admin-report-backups-index .backup-unfinished{color:#b94a48}#page-admin-report-backups-index .backup-skipped,#page-admin-report-backups-index .backup-ok,#page-admin-report-backups-index .backup-notyetrun{color:#468847}#page-admin-report-backups-index .backup-warning{color:#8a6d3b}#page-admin-qtypes .disabled,#page-admin-qbehaviours .disabled{color:#999}#page-admin-qtypes #qtypes div,#page-admin-qtypes #qtypes form,#page-admin-qbehaviours #qbehaviours div,#page-admin-qbehaviours #qbehaviours form{display:inline}#page-admin-qtypes #qtypes img.spacer,#page-admin-qbehaviours #qbehaviours img.spacer{width:16px}img.iconsmall{margin:0;padding:.3em}#page-admin-qbehaviours .cell.c3,#page-admin-qtypes .cell.c3{font-size:10.5px}#page-admin-lang .generalbox,#page-admin-course-index .singlebutton,#page-admin-course-index .addcategory,#page-course-index .buttons,#page-course-index-category .buttons,#page-admin-course-category .addcategory,#page-admin-stickyblocks .generalbox,#page-admin-maintenance .buttons,#page-admin-course-index .buttons,#page-admin-course-category .buttons,#page-admin-index .copyright,#page-admin-index .copyrightnotice,#page-admin-index .adminerror .singlebutton,#page-admin-index .adminwarning .singlebutton,#page-admin-index #layout-table .singlebutton{text-align:center;margin-bottom:1em}.path-admin-roles .capabilitysearchui{text-align:left;margin-left:auto;margin-right:auto}#page-admin-roles-define .topfields{margin:1em 0 2em}#page-admin-roles-define .capdefault{background-color:#f5f5f5;border:1px solid #ddd}#page-filter-manage .backlink,.path-admin-roles .backlink{margin-top:1em}#page-admin-roles-explain #chooseuser h3,#page-admin-roles-usersroles .contextname{margin-top:0}#page-admin-roles-explain #chooseusersubmit{margin-top:0;text-align:center}#page-admin-roles-usersroles p{margin:0}#page-admin-roles-override .cell.c1,#page-admin-roles-assign .cell.c3,#page-admin-roles-assign .cell.c1{padding-top:.75em}#page-admin-roles-override .overridenotice,#page-admin-roles-define .definenotice{margin:1em 10% 2em 10%;text-align:left}#notice{width:60%;min-width:220px;margin:auto}#page-admin-index .releasenoteslink,#page-admin-index .adminwarning,#page-admin-index .adminerror{margin:auto;padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:#8a6d3b;width:60%;min-width:220px}#page-admin-index .adminerror{background-color:#f2dede;border-color:#eed3d7;color:#b94a48}#page-admin-index .releasenoteslink{background-color:#d9edf7;border-color:#bce8f1;color:#3a87ad}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo span{display:block}#page-admin-index .updateplugin div{margin-bottom:.5em}#page-admin-index .updateplugin .updatepluginconfirmexternal{padding:1em;background-color:#f2dede;border:1px solid #eed3d7}#page-admin-user-user_bulk #users .fgroup{white-space:nowrap}#page-admin-report-stats-index .graph{text-align:center;margin-bottom:1em}#page-admin-report-courseoverview-index .graph{text-align:center;margin-bottom:1em}#page-admin-lang .translator{border-width:1px;border-style:solid}.path-admin .roleassigntable{width:100%}.path-admin .roleassigntable td{vertical-align:top;padding:.2em .3em}.path-admin .roleassigntable p{text-align:left;margin:.2em 0}.path-admin .roleassigntable #existingcell,.path-admin .roleassigntable #potentialcell{width:42%}.path-admin .roleassigntable #existingcell p>label:first-child,.path-admin .roleassigntable #potentialcell p>label:first-child{font-weight:bold}.path-admin .roleassigntable #buttonscell{width:16%}.path-admin .roleassigntable #buttonscell #assignoptions{font-size:10.5px}.path-admin .roleassigntable #removeselect_wrapper,.path-admin .roleassigntable #addselect_wrapper{width:100%}.path-admin table.rolecap tr.rolecap th{text-align:left;font-weight:normal}.path-admin.dir-rtl table.rolecap tr.rolecap th{text-align:right}.path-admin .rolecap .hiddenrow{display:none}.path-admin #defineroletable .rolecap .inherit,.path-admin #defineroletable .rolecap .allow,.path-admin #defineroletable .rolecap .prevent,.path-admin #defineroletable .rolecap .prohibit{text-align:center;padding:0;min-width:3.5em}.path-admin .rolecap .cap-name,.path-admin .rolecap .note{display:block;font-size:10.5px;white-space:nowrap;font-weight:normal}.path-admin .rolecap label{display:block;text-align:center;padding:.5em;margin:0}.plugincheckwrapper{width:100%}.environmentbox{margin-top:1em}#mnetconfig table{margin-left:auto;margin-right:auto}.environmenttable .cell{padding:.15em .5em}.environmenttable img.iconhelp{padding-right:.3em}.dir-rtl .environmenttable img.iconhelp{padding-left:.3em;padding-right:0}#trustedhosts .generaltable{margin-left:auto;margin-right:auto;width:500px}#trustedhosts .standard{width:auto}#adminsettings legend{display:none}#adminsettings fieldset.error{margin:.2em 0 .5em 0}#adminsettings fieldset.error legend{display:block}.dir-rtl #admin-spelllanguagelist textarea,#page-admin-setting-editorsettingstinymce.dir-rtl .form-textarea textarea{text-align:left;direction:ltr}.adminsettingsflags{float:right}.dir-rtl .adminsettingsflags{float:left}.adminsettingsflags label{margin-right:7px}.dir-rtl .adminsettingsflags label{margin-left:7px}.form-description{clear:right}.dir-rtl .form-description{clear:left}.form-item .form-setting .form-htmlarea{width:640px;display:inline}.form-item .form-setting .form-htmlarea .htmlarea{width:640px;display:block}.form-item .form-setting .form-multicheckbox ul{list-style:none;padding:0;margin:7px 0 0 0}.form-item .form-setting .defaultsnext{margin-right:.5em;display:inline}.dir-rtl .form-item .form-setting .defaultsnext{margin-left:.5em;margin-right:0}.form-item .form-setting .locked-checkbox{margin-right:.2em;margin-left:.5em;display:inline}.dir-rtl .form-item .form-setting .locked-checkbox{margin-right:.5em;margin-left:.2em;display:inline}.form-item .form-setting .form-password .unmask,.form-item .form-setting .form-defaultinfo{display:inline-block}.form-item .pathok,.form-item .patherror{margin-left:.5em}#admin-emoticons td input{width:8em}#admin-emoticons td.c0 input{width:4em}#adminthemeselector .selectedtheme td.c0{border:1px solid #000;border-right-width:0}#adminthemeselector .selectedtheme td.c1{border:1px solid #000;border-left-width:0}.admin_colourpicker,.admin_colourpicker_preview{display:none}.jsenabled .admin_colourpicker_preview{display:inline}.jsenabled .admin_colourpicker{display:block;height:102px;width:410px;margin-bottom:10px}.admin_colourpicker .loadingicon{vertical-align:middle;margin-left:auto}.admin_colourpicker .colourdialogue{float:left;border:1px solid #000}.admin_colourpicker .previewcolour{border:1px solid #000;margin-left:301px}.admin_colourpicker .currentcolour{border:1px solid #000;margin-left:301px;border-top-width:0}.dir-rtl .form-item .form-setting,.dir-rtl .form-item .form-label,.dir-rtl .form-item .form-description,.dir-rtl.path-admin .roleassigntable p{text-align:right}#page-admin-index #notice .checkforupdates{text-align:center}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity200 .info.release{background-color:#d9edf7}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity100 .info.release,#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity150 .info.release{background-color:#fcf8e3}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo.maturity50 .info.release{background-color:#f2dede}#page-admin-plugins #plugins-overview-panel .info{display:inline-block;margin-right:1em}#page-admin-plugins .checkforupdates{margin:10px 0}#page-admin-plugins .checkforupdates .singlebutton{margin:5px 0;padding:0}#page-admin-plugins .checkforupdates .singlebutton div,#page-admin-plugins .checkforupdates .singlebutton input{margin:0 3px 0 0}#page-admin-plugins .updateavailableinstallall{margin:5px 0;padding:0}#page-admin-plugins .updateavailableinstallall div,#page-admin-plugins .updateavailableinstallall input{margin:0 3px 5px 0}#page-admin-plugins #plugins-control-panel .status-missing td{background-color:#f2dede}#page-admin-plugins #plugins-control-panel .pluginname .displayname img.icon{padding-top:0;padding-bottom:0}#page-admin-plugins #plugins-control-panel .pluginname .componentname{font-size:11.9px;color:#999;margin-left:22px}#page-admin-plugins #plugins-control-panel .version .versionnumber{font-size:11.9px;color:#999}#page-admin-plugins #plugins-control-panel .uninstall a{color:#b94a48}#page-admin-plugins #plugins-control-panel .notes .label{margin-right:3px}#page-admin-plugins #plugins-control-panel .notes .requiredby{font-size:11.9px;color:#999}#plugins-check-page .page-description{color:#999}#plugins-check-page .checkforupdates .singlebutton{margin:5px 0;padding:0}#plugins-check-page .checkforupdates .singlebutton div,#plugins-check-page .checkforupdates .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check-info .actions>div{display:inline-block;margin-right:1em}#plugins-check-page #plugins-check-info .actions .singlebutton{margin:5px 0;padding:0}#plugins-check-page #plugins-check-info .actions .singlebutton div,#plugins-check-page #plugins-check-info .actions .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check .requires-ok{color:#999}#plugins-check-page #plugins-check .status-missing td,#plugins-check-page #plugins-check .status-downgrade td{background-color:#f2dede}#plugins-check-page #plugins-check .displayname .pluginicon{margin-right:5px;width:16px}#plugins-check-page #plugins-check .displayname .plugindir{color:#999;font-size:11.9px}#plugins-check-page #plugins-check .requires ul{margin-left:13px}#plugins-check-page #plugins-check .status .actionbutton{margin:5px 0;padding:0}#plugins-check-page #plugins-check .status .actionbutton input{margin:0}#plugins-check-page .plugins-check-dependencies-actions>div{display:inline-block;margin-right:1em}#plugins-check-page .plugins-check-dependencies-actions .singlebutton{margin:5px 0;padding:0}#plugins-check-page .plugins-check-dependencies-actions .singlebutton div,#plugins-check-page .plugins-check-dependencies-actions .singlebutton input{margin:0 3px 0 0}#plugins-check-page #plugins-check-available-dependencies .displayname .component{font-size:11.9px;color:#999}#plugins-check-page #plugins-check-available-dependencies .info .actions>div{display:inline-block;margin-right:1em}#plugins-check-page #plugins-check-available-dependencies .info .actions .dependencyinstall{display:block;margin:5px 0;padding:0}#plugins-check-page #plugins-check-available-dependencies .info .actions .dependencyinstall input{margin:0}#plugins-check-page .pluginupdateinfo,#plugins-control-panel .pluginupdateinfo{background-color:#d9edf7;padding:5px;margin:10px 0;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}#plugins-check-page .pluginupdateinfo.maturity50,#plugins-control-panel .pluginupdateinfo.maturity50{background-color:#f2dede}#plugins-check-page .pluginupdateinfo.maturity100,#plugins-control-panel .pluginupdateinfo.maturity100,#plugins-check-page .pluginupdateinfo.maturity150,#plugins-control-panel .pluginupdateinfo.maturity150{background-color:#fcf8e3}#plugins-check-page .pluginupdateinfo .info,#plugins-control-panel .pluginupdateinfo .info{display:inline-block}#plugins-check-page .pluginupdateinfo .separator:after,#plugins-control-panel .pluginupdateinfo .separator:after{content:" | "}#plugins-check-page .pluginupdateinfo .singlebutton,#plugins-control-panel .pluginupdateinfo .singlebutton{margin:5px 0;padding:0}#plugins-check-page .pluginupdateinfo .singlebutton div,#plugins-control-panel .pluginupdateinfo .singlebutton div,#plugins-check-page .pluginupdateinfo .singlebutton input,#plugins-control-panel .pluginupdateinfo .singlebutton input{margin:0 3px 0 0}.plugins-management-confirm-buttons>div{display:inline-block;margin:1em 1em 1em 0}.plugins-management-confirm-buttons .continue{padding:0}.plugins-management-confirm-buttons .continue div,.plugins-management-confirm-buttons .continue input{margin:0}.uninstalldeleteconfirmexternal{background-color:#fcf8e3;padding:.5em 1em;margin:5px 0 10px 0}#page-admin-index .upgradepluginsinfo{text-align:center}#page-admin-index .adminwarning.availableupdatesinfo .moodleupdateinfo .separator:after{content:" | "}.dir-rtl #plugins-check .pluginupdateinfo{text-align:center;direction:ltr}.dir-rtl #plugins-check .requires-ok{text-align:left;direction:ltr}#page-admin-mnet-peers .box.deletedhosts{margin-bottom:1em;font-size:11.9px}#page-admin-mnet-peers .mform .deletedhostinfo{background-color:#f2dede;border:2px solid #eed3d7;padding:4px;margin-bottom:5px}#core-cache-plugin-summaries table,#core-cache-store-summaries table{width:100%}#core-cache-lock-summary table,#core-cache-definition-summaries table,#core-cache-mode-mappings table{margin:0 auto}#core-cache-store-summaries .default-store td{font-style:italic}#core-cache-rescan-definitions,#core-cache-mode-mappings .edit-link,#core-cache-lock-summary .new-instance{margin-top:.5em;text-align:center}.tinymcesubplugins img.icon{padding-top:0;padding-bottom:0}.maintenancewarning{padding:3px 1em;text-align:center;position:fixed;bottom:0;right:0;overflow:hidden;z-index:1}.maintenancewarning.error{color:#b94a48;background-color:#f2dede;border:2px solid #eed3d7;font-weight:bold}.maintenancewarning.warning{color:#8a6d3b;background-color:#fcf8e3;border:2px solid #fbeed5}#adminsettings .form-overridden{color:#3a87ad;background-color:#d9edf7}.calendar_event_course{background-color:#ffd3bd}.calendar_event_global{background-color:#d6f8cd}.calendar_event_group{background-color:#fee7ae}.calendar_event_user{background-color:#dce7ec}.path-calendar .calendartable{width:100%}.path-calendar .calendartable th,.path-calendar .calendartable td{width:14%;vertical-align:top;text-align:center;border:0}.path-calendar .calendar-controls .previous,.path-calendar .calendar-controls .next,.path-calendar .calendar-controls .current{display:block;float:left;width:12%}.path-calendar .calendar-controls .previous{text-align:left}.path-calendar .calendar-controls .current{text-align:center;width:76%}.path-calendar .calendar-controls .next{text-align:right}.path-calendar .filters table{border-collapse:separate;border-spacing:2px;width:100%}.path-calendar .cal_courses_flt{float:left}.path-calendar .cal_courses_flt label{margin-right:.45em}.path-calendar .maincalendar{vertical-align:top;padding:0}.path-calendar .maincalendar .bottom{text-align:center;padding:5px 0 0 0}.path-calendar .maincalendar .heightcontainer{height:100%;position:relative}.path-calendar .maincalendar .calendarmonth{width:98%;margin:10px auto}.path-calendar .maincalendar .calendarmonth ul{margin:0}.path-calendar .maincalendar .calendarmonth ul li{list-style-type:none;margin-top:4px}.path-calendar .maincalendar .calendarmonth td{height:5em}.path-calendar .maincalendar .calendar-controls .previous,.path-calendar .maincalendar .calendar-controls .next{width:30%}.path-calendar .maincalendar .calendar-controls .current{width:39.95%}.path-calendar .maincalendar .controls{width:98%;margin:10px auto}.path-calendar .maincalendar .calendar_event_course,.path-calendar .maincalendar .calendar_event_global,.path-calendar .maincalendar .calendar_event_group,.path-calendar .maincalendar .calendar_event_user{border-width:1px 1px 1px 12px;border-style:solid}.path-calendar .maincalendar .calendar_event_course{border-color:#ffd3bd}.path-calendar .maincalendar .calendar_event_global{border-color:#d6f8cd}.path-calendar .maincalendar .calendar_event_group{border-color:#fee7ae}.path-calendar .maincalendar .calendar_event_user{border-color:#dce7ec}.path-calendar .maincalendar .calendar-event-panel{background-color:#eee;border:2px solid #eee}.path-calendar .maincalendar .calendar-event-panel .yui3-overlay-content{padding:19px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.path-calendar .maincalendar .calendar-controls .current{font-family:inherit;font-weight:bold;color:inherit;font-size:25px;line-height:1.2}.path-calendar .maincalendar .calendartable td,.path-calendar .maincalendar .calendartable li{padding:5px}.path-calendar .maincalendar .calendartable li{padding-left:10px;text-align:left}.path-calendar .maincalendar .header{overflow:hidden}.path-calendar .maincalendar .header .buttons{float:right}.path-calendar .maincalendar .eventlist{margin:0}.path-calendar .maincalendar .eventlist .event{width:92%;border-spacing:0;border-collapse:separate;position:relative;padding:20px 4%;margin-bottom:20px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);list-style-type:none}.path-calendar .maincalendar .eventlist .event>img{padding-top:3px;float:left}.path-calendar .maincalendar .eventlist .event .name{font-size:17.5px;font-weight:200;line-height:24px;float:left;margin:0}.path-calendar .maincalendar .eventlist .event .name,.path-calendar .maincalendar .eventlist .event .course{margin-bottom:5px}.path-calendar .maincalendar .eventlist .event .date{float:right}.path-calendar .maincalendar .eventlist .event .course,.path-calendar .maincalendar .eventlist .event .subscription{float:left;clear:left}.path-calendar .maincalendar .eventlist .event .side{width:22px}.path-calendar .maincalendar .eventlist .event .description{background-color:#fff;padding:5px;clear:both}.path-calendar .maincalendar .eventlist .event .description .commands{position:absolute;right:0;top:0;margin:3px}.path-calendar .maincalendar .eventlist .event .commands{position:absolute;top:2px;right:2px}.path-calendar .maincalendar .eventlist .event .commands a{margin:0 3px}.dir-rtl.path-calendar .cal_courses_flt{float:right}.dir-rtl.path-calendar .cal_courses_flt label{margin-left:.45em;margin-right:0}.dir-rtl.path-calendar .maincalendar .calendar_event_course,.dir-rtl.path-calendar .maincalendar .calendar_event_global,.dir-rtl.path-calendar .maincalendar .calendar_event_group,.dir-rtl.path-calendar .maincalendar .calendar_event_user{border-left-width:1px;border-right-width:12px}.dir-rtl.path-calendar .maincalendar .calendar-controls .next{text-align:left}.dir-rtl.path-calendar .maincalendar .calendar-controls .previous{text-align:right}.dir-rtl.path-calendar .maincalendar .calendartable td,.dir-rtl.path-calendar .maincalendar .calendartable li{text-align:right}.dir-rtl.path-calendar .maincalendar .calendartable li{padding-right:10px;padding-left:5px}.dir-rtl.path-calendar .maincalendar .header .buttons{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event>img{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .name{float:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .date{float:left}.dir-rtl.path-calendar .maincalendar .eventlist .event .description .commands{right:inherit;left:0}.dir-rtl.path-calendar .maincalendar .eventlist .event .course,.dir-rtl.path-calendar .maincalendar .eventlist .event .subscription{float:right;clear:right}.dir-rtl.path-calendar .maincalendar .eventlist .event .commands{left:2px;right:inherit}#page-calendar-export .indent{padding-left:20px}.block .minicalendar{max-width:280px;margin:0 auto;width:100%}.block .minicalendar th,.block .minicalendar td{padding:2px;font-size:.8em;text-align:center}.block .minicalendar td.weekend{color:#999}.block .minicalendar td a{width:100%;height:100%;display:block}.block .minicalendar td.duration_global{border-top:1px solid #d6f8cd;border-bottom:1px solid #d6f8cd}.block .minicalendar td.duration_global.duration_finish{background-color:#d6f8cd}.block .minicalendar td.duration_course{border-top:1px solid #ffd3bd;border-bottom:1px solid #ffd3bd}.block .minicalendar td.duration_course.duration_finish{background-color:#ffd3bd}.block .minicalendar td.duration_group{border-top:1px solid #fee7ae;border-bottom:1px solid #fee7ae}.block .minicalendar td.duration_group.duration_finish{background-color:#fee7ae}.block .minicalendar td.duration_user{border-top:1px solid #dce7ec;border-bottom:1px solid #dce7ec}.block .minicalendar td.duration_user.duration_finish{background-color:#dce7ec}.block .minicalendar caption{font-size:inherit;font-weight:inherit;line-height:inherit;text-align:center}.block .calendar-event-panel{background-color:#eee;border:1px solid #eee}.block .calendar-event-panel .yui3-overlay-content{padding:19px;background-color:#fdfdfd;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.block .calendar-event-panel .yui3-overlay-content h2.eventtitle{line-height:1.2;font-size:18px}.block .calendar-event-panel .yui3-overlay-content .eventcontent img{padding-right:5px}.block .calendar-controls .previous,.block .calendar-controls .current,.block .calendar-controls .next{display:block;float:left}.block .calendar-controls .previous{text-align:left;width:12%}.block .calendar-controls .current{text-align:center;width:76%}.block .calendar-controls .next{text-align:right;width:12%}.block .calendar_filters ul{list-style:none;margin:0}.block .calendar_filters li{margin-bottom:.2em}.block .calendar_filters li span img{padding:0 .2em}.block .calendar_filters .eventname{padding-left:.2em}.block .content h3.eventskey{margin-top:.5em}.dir-rtl .block .calendar_filters .eventname{padding-right:.2em;padding-left:0}.dir-rtl .block .calendar-event-panel .yui3-overlay-content .eventcontent img{padding-right:0;padding-left:5px}.ical-link{font-size:10px;font-weight:bold;background-color:#f60;padding:0 5px;color:#fff;border-top:1px solid #f93;border-left:1px solid #f93;border-bottom:1px solid #013;border-right:1px solid #013}.ical-link:hover,.ical-link:active,.ical-link:focus,.ical-link:visited{color:#fff;text-decoration:none}@media (min-width:768px){#page-calender-view .container-fluid{min-width:1024px}}.section_add_menus{text-align:right;clear:both}.section-modchooser{clear:both}.dir-rtl .section_add_menus{text-align:left;clear:both}.section_add_menus .horizontal div,.section_add_menus .horizontal form{display:inline}.section_add_menus optgroup{font-weight:normal;font-style:italic}.section_add_menus .urlselect{margin-left:.4em}.dir-rtl .section_add_menus .urlselect{margin-right:.4em;margin-left:0}.section_add_menus .urlselect select{margin-left:.2em}.dir-rtl .section_add_menus .urlselect select{margin-right:.2em;margin-left:0}.section_add_menus .urlselect img.iconhelp{padding:0;margin:0;vertical-align:text-bottom}.sitetopic ul.section{margin:0}.course-content ul.section{margin:1em}.section .side.left{float:left}.section .side.right{float:right}.section .spinner{height:16px;width:16px}.section .activity .spinner{left:100%;position:absolute;vertical-align:text-bottom}.section .activity .editing_move{position:absolute;left:0;top:0}.section .activity .mod-indent-outer{padding-left:32px}.section .activity .actions{position:absolute;right:0;top:0}.section .activity .contentwithoutlink,.section .activity .activityinstance{min-width:40%;display:table-cell;padding-right:4px;min-height:2em}.section .activity .contentwithoutlink .dimmed img.activityicon,.section .activity .activityinstance .dimmed img.activityicon{opacity:.5;filter:alpha(opacity=50)}.section .label .contentwithoutlink,.section .label .activityinstance{padding-right:32px;display:block;height:inherit}.section .label .mod-indent-outer{padding-left:24px;display:block}.section .filler{width:16px;height:16px;padding:.3em;display:inline-block}.section .activity.editor_displayed a.editing_title,.section .activity.editor_displayed .moodle-actionmenu{display:none}.section .activity.editor_displayed div.activityinstance{padding-right:initial}.section .activity.editor_displayed div.activityinstance input{margin-bottom:initial;padding-top:initial;padding-bottom:initial;vertical-align:text-bottom}.dir-rtl .section .side.left{float:right}.dir-rtl .section .side.right{float:left}.dir-rtl .section .activity .spinner{left:auto;right:100%}.dir-rtl .section .activity .mod-indent-outer{padding-left:initial;padding-right:32px}.dir-rtl .section .activity .actions{left:0;right:auto}.dir-rtl .section .activity .contentwithoutlink,.dir-rtl .section .activity .activityinstance{padding-left:4px;padding-right:initial}.dir-rtl .section .activity .editing_move{left:auto;right:0}.dir-rtl .section .activity.editor_displayed div.activityinstance{padding-left:initial}.activity img.activityicon{margin-right:6px;vertical-align:text-bottom}.dir-rtl .section .activity img.activityicon{margin-left:6px;margin-right:0}.section .activity .activityinstance,.section .activity .activityinstance div{display:inline-block}.editing .section .activity .contentwithoutlink,.editing .section .activity .activityinstance{padding-right:200px}.dir-rtl.editing .section .activity .contentwithoutlink,.dir-rtl.editing .section .activity .activityinstance{padding-left:200px;padding-right:0}.editing_show+.editing_assign,.editing_hide+.editing_assign{margin-left:20px}.section .activity .commands{white-space:nowrap;display:inline}.section .activity.modtype_label.label{font-weight:normal;padding:.2em}.section li.activity{padding:.2em;clear:both}.section .activity .activityinstance .groupinglabel{padding-left:30px}.dir-rtl .section .activity .activityinstance .groupinglabel{padding-right:30px}.section .activity .availabilityinfo,.section .activity .contentafterlink{margin-top:.5em;margin-left:30px}.dir-rtl .section .activity .availabilityinfo,.dir-rtl .section .activity .contentafterlink{margin-left:0;margin-right:30px}.section .activity .contentafterlink p{margin:.5em 0}.editing .section .activity:hover,.editing .section .activity.action-menu-shown{background-color:#eee}.course-content .current{background-color:#d9edf7}.course-content .section-summary{border:1px solid #ddd;margin-top:5px;list-style:none}.course-content .section-summary .section-title{margin:2px 5px 10px 5px}.course-content .section-summary .summarytext{margin:2px 5px 2px 5px}.course-content .section-summary .section-summary-activities .activity-count{color:#999;font-size:11.9px;margin:3px;white-space:nowrap;display:inline-block}.course-content .section-summary .summary{margin-top:5px}.course-content .single-section{margin-top:1em}.course-content .single-section .section-navigation{display:block;padding:.5em;margin-bottom:-0.5em}.course-content .single-section .section-navigation .title{font-weight:bold;font-size:108%;clear:both}.course-content .single-section .section-navigation .mdl-left{font-weight:normal;float:left;margin-right:1em}.dir-rtl .course-content .single-section .section-navigation .mdl-left{float:right}.course-content .single-section .section-navigation .mdl-left .larrow{margin-right:.1em}.course-content .single-section .section-navigation .mdl-right{font-weight:normal;float:right;margin-left:1em}.dir-rtl .course-content .single-section .section-navigation .mdl-right{float:left}.course-content .single-section .section-navigation .mdl-right .rarrow{margin-left:.1em}.course-content .single-section .section-navigation .mdl-bottom{margin-top:0}.course-content ul li.section.main{border-bottom:2px solid #ddd;margin-top:0}.course-content ul li.section.hidden .sectionname>span,.course-content ul li.section.hidden .content>div,.course-content ul li.section.hidden .activity .activityinstance{opacity:.5}.course-content ul li.section.hidden .sectionname>span,.course-content ul li.section.hidden .activity .activityinstance{margin-left:10px;margin-right:10px}.course-content ul.topics li.section .content,.course-content ul.weeks li.section .content{margin-right:20px;margin-left:20px;padding:0}.course-content{margin-top:0}.course-content ul.topics li.section{padding-bottom:20px}.course-content ul.topics li.section .summary{margin-left:25px}.course-content li.section ul{list-style:disc}.course-content li.section ul ul{list-style:circle}.course-content li.section ul ul ul{list-style:square}.course-content li.section li.activity ul{list-style:disc}.course-content li.section li.activity ul ul{list-style:circle}.course-content li.section li.activity ul ul ul{list-style:square}.path-course-view .completionprogress{margin-left:25px}.path-course-view .completionprogress{display:block;float:right;height:20px;position:relative}#page-site-index .subscribelink{text-align:right}#site-news-forum h2,#frontpage-course-list h2,#frontpage-category-names h2,#frontpage-category-combo h2{margin-bottom:9px}.path-course-view a.reduce-sections{padding-left:.2em}.path-course-view .subscribelink{text-align:right}.path-course-view .unread{margin-left:30px}.dir-rtl.path-course-view .unread{margin-right:30px}.path-course-view .block.drag .header{cursor:move}.path-course-view .completionprogress{text-align:right}.dir-rtl.path-course-view .completionprogress{text-align:left}.path-course-view .single-section .completionprogress{margin-right:5px}.path-course-view .section .summary{line-height:normal}.path-site li.activity>div,.path-course-view li.activity>div{position:relative;padding:0 16px 0 0}.dir-rtl.path-site li.activity>div,.dir-rtl.path-course-view li.activity>div{position:relative;padding:0 0 0 16px}.path-course-view li.activity span.autocompletion img{vertical-align:text-bottom}.path-course-view li.activity form.togglecompletion img{max-width:none}.path-course-view li.activity form.togglecompletion .ajaxworking{width:16px;height:16px;position:absolute;right:22px;top:3px;background:url([[pix:i/ajaxloader]]) no-repeat}.dir-rtl.path-course-view .completionprogress{float:none}.dir-rtl.path-course-view li.activity form.togglecompletion .ajaxworking{right:-22px}li.section.hidden span.commands a.editing_hide,li.section.hidden span.commands a.editing_show{cursor:default}ul.weeks h3.sectionname{white-space:nowrap}.editing ul.weeks h3.sectionname{white-space:normal}.single-section h3.sectionname{text-align:center;clear:both}.section img.movetarget{height:16px;width:80px}input.titleeditor{width:330px;vertical-align:text-bottom}span.editinstructions{position:absolute;top:0;margin-top:-22px;margin-left:30px;line-height:16px;font-size:11.9px;padding:.1em .4em;background-color:#d9edf7;color:#3a87ad;text-decoration:none;z-index:9999;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc;border:1px solid #bce8f1}#dndupload-status{position:fixed;left:0;width:40%;margin:0 30%;padding:6px;border:1px solid #bce8f1;text-align:center;background:#d9edf7;color:#3a87ad;z-index:1;-webkit-box-shadow:2px 2px 5px 1px #ccc;-moz-box-shadow:2px 2px 5px 1px #ccc;box-shadow:2px 2px 5px 1px #ccc;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.dndupload-preview{color:#909090;border:1px dashed #909090;list-style:none;margin-top:.2em;padding:.3em}.dndupload-preview img.icon{vertical-align:text-bottom;padding:0}.dndupload-progress-outer{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f7f7f7;background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));background-image:-webkit-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-o-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:linear-gradient(to bottom, #f5f5f5, #f9f9f9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.dndupload-progress-inner{width:0;height:100%;color:#fff;float:left;font-size:12px;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top, #149bdf, #0480be);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));background-image:-webkit-linear-gradient(top, #149bdf, #0480be);background-image:-o-linear-gradient(top, #149bdf, #0480be);background-image:linear-gradient(to bottom, #149bdf, #0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.dndupload-hidden{display:none}#page-course-pending .singlebutton,#page-course-index .singlebutton,#page-course-index-category .singlebutton,#page-course-editsection .singlebutton{text-align:center}#page-admin-course-manage #movecourses td img{margin:0 .22em;vertical-align:text-bottom}#page-admin-course-manage #movecourses td img.icon{padding:0}#coursesearch{margin-top:1em;text-align:center}#page-course-pending .pendingcourserequests{margin-bottom:1em}#page-course-pending .pendingcourserequests .singlebutton{display:inline}#page-course-pending .pendingcourserequests .cell{padding:0 5px}#page-course-pending .pendingcourserequests .cell.c6{white-space:nowrap}.coursebox{margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:5px}.coursebox>.info>.coursename a{display:block;background-image:url([[pix:moodle|i/course]]);background-repeat:no-repeat;padding-left:21px;background-position:left .2em}.dir-rtl .coursebox>.info>.coursename a{padding-left:0;padding-right:21px;background-position:right .2em}.coursebox>.info>.coursename,.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{float:left;clear:left}.coursebox .content .teachers,.coursebox .content .courseimage,.coursebox .content .coursefile{width:40%}.dir-rtl .coursebox>.info>.coursename,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.coursebox>.info>h3.coursename{margin:5px;line-height:1}.coursebox>.info>.coursename{margin:5px;padding:0}.coursebox .content .teachers li{list-style-type:none;padding:0;margin:0}.coursebox .enrolmenticons{padding:3px 0;float:right}.coursebox .moreinfo{padding:3px 0;float:right}.coursebox .enrolmenticons img,.coursebox .moreinfo img{margin:0 .2em}.coursebox .content{clear:both}.coursebox .content .summary,.coursebox .content .coursecat{float:right;width:55%}.coursebox .content .coursecat{text-align:right;clear:right}.coursebox.remotecoursebox .remotecourseinfo{float:left;width:40%}.coursebox .content .courseimage img{max-width:100px;max-height:100px}.coursebox .content .coursecat,.coursebox .content .summary,.coursebox .content .courseimage,.coursebox .content .coursefile,.coursebox .content .teachers,.coursebox.remotecoursebox .remotecourseinfo{margin:3px 5px;padding:0}.coursebox.remotehost>.info>.categoryname a{background-image:url([[pix:moodle|i/mnethost]])}.dir-rtl .coursebox>.info>.categoryname a{padding-left:0;padding-right:21px;background-position:center right}.dir-rtl .coursebox>.info>.categoryname,.dir-rtl .coursebox .teachers,.dir-rtl .coursebox .content .courseimage,.dir-rtl .coursebox .content .coursefile{float:right;clear:right}.dir-rtl .coursebox .enrolmenticons,.dir-rtl .coursebox .moreinfo{float:left}.dir-rtl .coursebox .summary,.dir-rtl .coursebox .coursecat{float:left}.dir-rtl .coursebox .coursecat{text-align:left;clear:left}.coursebox.collapsed{margin-bottom:0}.coursebox.collapsed>.content{display:none}.courses .coursebox.collapsed{border:1px solid #ddd;padding:5px}.courses .coursebox.even{background-color:#f9f9f9}.courses .coursebox:hover,.course_category_tree .courses>.paging.paging-morelink:hover{background-color:#f5f5f5}.course_category_tree .category .numberofcourse{font-size:11.9px}.course_category_tree .controls{visibility:hidden}.course_category_tree .controls div{display:inline;cursor:pointer}.jsenabled .course_category_tree .controls{visibility:visible}.course_category_tree .controls{margin-bottom:5px;text-align:right;float:right}.course_category_tree .controls div{padding-right:2em;font-size:75%}.course_category_tree .category>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_empty]]);background-repeat:no-repeat;padding:2px 18px;margin:3px;background-position:center left}.dir-rtl .course_category_tree .category>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_empty_rtl]]);background-position:center right}.course_category_tree .category.with_children>.info>.categoryname{background-image:url([[pix:moodle|t/expanded]]);cursor:pointer}.course_category_tree .category.with_children.collapsed>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed]])}.dir-rtl .course_category_tree .category.with_children.collapsed>.info>.categoryname{background-image:url([[pix:moodle|t/collapsed_rtl]])}.course_category_tree .category.collapsed>.content{display:none}.course_category_tree .category>.info{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;min-height:0;padding:0;margin:3px 0;margin-bottom:3px;clear:both}.course_category_tree .category>.info blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.course_category_tree.frontpage-category-names .category>.info{background:none;border:none;margin:0}.course_category_tree .category>.content{padding-left:16px}.dir-rtl .course_category_tree .category>.content{padding-left:0;padding-right:16px}.course_category_tree .subcategories>.paging,.courses>.paging{margin:0;padding:5px;text-align:center}.courses>.paging.paging-morelink,.course_category_tree .subcategories>.paging.paging-morelink{text-align:left}.course_category_tree .paging.paging-morelink a{font-size:11.9px}.dir-rtl .courses>.paging.paging-morelink,.dir-rtl .course_category_tree .paging.paging-morelink{text-align:right}#page-course-index-category .generalbox.info{margin-bottom:15px;border:1px dotted #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:5px}#page-course-index-category .categorypicker{text-align:center;margin:10px 0 20px}.section .summary .iconsmall,.section .activity .iconsmall{width:16px;height:16px}.section .editing_title .iconsmall{width:12px;height:12px;margin:8px 8px 0 0;padding:4px 8px 0 0;vertical-align:text-bottom}.section .moodle-actionmenu .iconsmall{max-width:none !important;width:16px;height:16px;padding:4px;vertical-align:text-bottom}.section .moodle-actionmenu[data-enhanced] .menu img{width:12px;height:12px}.dir-rtl .section .editing_title .iconsmall{margin:8px 0 0 8px;padding:4px 0 0 8px}#course-category-listings{background-color:transparent;margin-bottom:200px}#course-category-listings.columns-2>#course-listing>div{position:relative;left:-1px}#course-category-listings.columns-3>#course-listing>div{height:100%}#course-category-listings>div>div{min-height:300px}#course-category-listings>div>div>ul.ml>li:first-child>div{border-top:0}#course-category-listings h3{margin:0;padding:.4rem .6rem .3rem}#course-category-listings h4{margin:1rem 0 0;padding:.6rem 1rem .5rem}#course-category-listings .moodle-actionmenu{white-space:nowrap}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display img{width:auto}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display.textmenu{padding-right:4px}#course-category-listings .moodle-actionmenu[data-enhance] .toggle-display.textmenu .caret{margin-top:12px}#course-category-listings .listing-actions{text-align:center;padding:.4rem .3rem .3rem;line-height:2.2em}#course-category-listings .listing-actions>a,#course-category-listings .listing-actions>.moodle-actionmenu{display:inline-block}#course-category-listings .listing-actions>.moodle-actionmenu .menu a{padding-left:1rem}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced]) li{line-height:normal}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a{color:inherit;display:inline-block}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a>img{display:none}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menubar a .caret{display:none}#course-category-listings .listing-actions .moodle-actionmenu:not([data-enhanced])>.menu .menu-action-text{display:inline-block}#course-category-listings ul.ml{list-style:none;margin:1rem 0}#course-category-listings ul.ml ul.ml{margin:0}#course-category-listings li{line-height:2.2em}#course-category-listings li>div:hover{background-color:#f5f5f5}#course-category-listings li .tree-icon{margin:2px 6px 0 0;width:12px;vertical-align:inherit}#course-category-listings li[data-selected='1']>div{background-color:#f9f9f9}#course-category-listings li[data-selected='1']>div:hover{background-color:#f5f5f5}#course-category-listings li .tree-icon{margin-left:0}#course-category-listings li li .tree-icon{margin-left:1em}#course-category-listings li li li .tree-icon{margin-left:2em}#course-category-listings li li li li .tree-icon{margin-left:3em}#course-category-listings li li li li li .tree-icon{margin-left:4em}#course-category-listings li li li li li li .tree-icon{margin-left:4.5em}#course-category-listings li li li li li li li .tree-icon{margin-left:5em}#course-category-listings li li li li li li li li .tree-icon{margin-left:5.5em}#course-category-listings .item-actions{margin-right:1em;display:inline-block;display:initial}#course-category-listings .item-actions>a img,#course-category-listings .item-actions .menubar img{margin:0 4px;height:12px;padding:0;vertical-align:inherit}#course-category-listings .item-actions.show .menu li{line-height:20px}#course-category-listings .item-actions.show .menu img{width:12px;max-width:none}#course-category-listings .item-actions .menu-action-text{vertical-align:inherit}#course-category-listings .listitem>div>.float-left{float:left}#course-category-listings .listitem>div>.float-right{float:right;text-align:right}#course-category-listings .listitem>div .item-actions .action-show{display:none}#course-category-listings .listitem>div .item-actions .action-hide{display:inline}#course-category-listings .listitem>div .without-actions{color:#333}#course-category-listings .listitem>div .idnumber{color:#a1a1a8;margin-right:2em}#course-category-listings .listitem[data-visible="0"]{color:#999}#course-category-listings .listitem[data-visible="0"]>div>a{color:#999}#course-category-listings .listitem[data-visible="0"]>div .item-actions .action-show{display:inline}#course-category-listings .listitem[data-visible="0"]>div .item-actions .action-hide{display:none}#course-category-listings .listitem.highlight{background-color:transparent}#course-category-listings .listitem.highlight>div,#course-category-listings .listitem.highlight>div:hover,#course-category-listings .listitem.highlight[data-selected='1']>div{background-color:#f5f5f5}#course-category-listings #course-listing .listitem .categoryname{display:inline-block;margin-left:1em;color:#a1a1a8}#course-category-listings #course-listing .listitem .coursename{display:inline-block}#course-category-listings #course-listing .listitem>div{padding-left:1rem}#course-category-listings #course-listing>.firstpage .listitem:first-child>div .item-actions .action-moveup,#course-category-listings #course-listing>.lastpage .listitem:last-child>div .item-actions .action-movedown{display:none}#course-category-listings #course-listing .bulk-action-checkbox{margin:-2px 6px 0 0}#course-category-listings #category-listing .listitem.collapsed>ul.ml{display:none}#course-category-listings #category-listing .listitem>div>.ba-checkbox{width:2.2em;text-align:center;margin:-1px .5em 0 0;padding-top:2px}#course-category-listings #category-listing .listitem.highlight>div>.ba-checkbox{background-color:#f5f5f5}#course-category-listings #category-listing .listitem[data-selected='1']>div>.ba-checkbox{margin:0 .5em 0 0;padding:0;background-color:inherit}#course-category-listings #category-listing .listitem:first-child>div .item-actions .action-moveup,#course-category-listings #category-listing .listitem:last-child>div .item-actions .action-movedown{display:none}#course-category-listings #category-listing .course-count{color:#a1a1a8;margin-right:2rem;min-width:3.5em;display:inline-block}#course-category-listings #category-listing .course-count .smallicon{width:12px;margin-left:4px;vertical-align:inherit}#course-category-listings #category-listing .bulk-action-checkbox{margin-right:-3px}#course-category-listings #category-listing .category-listing>ul>.listitem:first-child{position:relative}#course-category-listings #category-listing .category-bulk-actions{margin:0 .5em .5em;position:relative}#course-category-listings .detail-pair{border-bottom:1px solid #ddd;margin:0 1rem}#course-category-listings .detail-pair>*{display:inline-block;line-height:2.2rem}#course-category-listings .detail-pair .pair-key{font-weight:bold;vertical-align:top}#course-category-listings .detail-pair .pair-key span{margin-right:1rem;display:block}#course-category-listings .detail-pair .pair-value select{max-width:100%}#course-category-listings .bulk-actions .detail-pair>*{display:block;width:100%}#course-category-listings .listing-pagination{text-align:center}#course-category-listings .listing-pagination .yui3-button{background-color:#fff;border:0;margin:.4rem .2rem .45rem;font-size:10.4px}#course-category-listings .listing-pagination .yui3-button.active-page{background-color:#e6e6e6}#course-category-listings .listing-pagination-totals{text-align:center}#course-category-listings .listing-pagination-totals.dimmed{color:#999;margin:.4rem 1rem .45rem}#course-category-listings .select-a-category .notifymessage,#course-category-listings .select-a-category .alert{margin:1em}#course-category-listings #course-listing .listitem .drag-handle{display:none}.jsenabled #course-category-listings #course-listing .listitem .drag-handle{display:inline-block;margin:0 6px 0 0;cursor:pointer}.dir-rtl #course-category-listings #category-listing,.dir-rtl #course-category-listings #course-listing{float:right;margin-left:0}.dir-rtl #course-category-listings .listitem>div>.float-left{float:right}.dir-rtl #course-category-listings .listitem>div>.float-right{float:left;text-align:left}.dir-rtl #course-category-listings li .tree-icon{margin:2px 0 0 6px}.dir-rtl #course-category-listings li .tree-icon{margin-right:0}.dir-rtl #course-category-listings li li .tree-icon{margin-right:1em}.dir-rtl #course-category-listings li li li .tree-icon{margin-right:2em}.dir-rtl #course-category-listings li li li li .tree-icon{margin-right:3em}.dir-rtl #course-category-listings li li li li li .tree-icon{margin-right:4em}.dir-rtl #course-category-listings li li li li li li .tree-icon{margin-right:4.5em}.dir-rtl #course-category-listings li li li li li li li .tree-icon{margin-right:5em}.dir-rtl #course-category-listings li li li li li li li li .tree-icon{margin-right:5.5em}.dir-rtl #course-category-listings #category-listing .listitem>div{margin-right:.5em;margin-left:0}.dir-rtl #course-category-listings #category-listing .listitem>div>.ba-checkbox{margin:-1px 0 0 .5em}.dir-rtl #course-category-listings #category-listing .listitem[data-selected='1']>div>.ba-checkbox{margin:0 0 0 .5em}.dir-rtl #course-category-listings #category-listing .course-count{margin-left:2rem}.dir-rtl #course-category-listings #category-listing .course-count .smallicon{margin-left:0;margin-right:4px}.dir-rtl #course-category-listings #category-listing .bulk-action-checkbox{margin-left:-3px;margin-right:0}.dir-rtl #course-category-listings #course-listing{padding-right:24px}.dir-rtl #course-category-listings #course-listing .listitem .idnumber{color:#a1a1a8;padding-right:2em}.dir-rtl #course-category-listings #course-listing .listitem .categoryname{display:inline-block;margin-right:1em;margin-left:0}.dir-rtl #course-category-listings #course-listing .listitem .drag-handle{margin:0 6px 0 6px}.dir-rtl #course-category-listings #course-listing .listitem>div{padding-left:1rem}.dir-rtl #course-category-listings #course-listing .bulk-action-checkbox{vertical-align:middle;margin:-2px 0 0 6px}.dir-rtl #course-category-listings .detail-pair>*{float:right;margin-right:0}.dir-rtl #course-category-listings .detail-pair .pair-key span{margin-right:0;margin-left:0}.dir-rtl #course-category-listings .detail-pair .pair-value{margin-right:.5em}.coursecat-management-header{vertical-align:middle}.coursecat-management-header h2{display:inline-block;text-align:left}.coursecat-management-header>div{display:inline-block;float:right;line-height:40px}.coursecat-management-header>div>div{margin-left:1em;margin:10px 0;display:inline-block}.coursecat-management-header select{max-width:300px;cursor:pointer;padding:.4em .5em .45em 1em;vertical-align:baseline;white-space:nowrap}.coursecat-management-header .view-mode-selector .moodle-actionmenu{white-space:nowrap;display:inline-block}.coursecat-management-header .view-mode-selector .moodle-actionmenu[data-enhanced].show .menu a{padding-left:1em}.dir-rtl .coursecat-management-header h2{text-align:right}.dir-rtl .coursecat-management-header>div{float:left;margin-right:1em;margin-left:0}.course-being-dragged-proxy{border:0;color:#0070a8;vertical-align:middle;padding:0 0 0 4em}.course-being-dragged{opacity:.5;filter:alpha(opacity=50)}@media (min-width:1200px) and (max-width:1600px){#course-category-listings.columns-3{background-color:transparent;border:0}#course-category-listings.columns-3 #category-listing,#course-category-listings.columns-3 #course-listing{width:50%}#course-category-listings.columns-3 #category-listing>div,#course-category-listings.columns-3 #course-listing>div,#course-category-listings.columns-3 #course-detail>div{background-color:transparent}#course-category-listings.columns-3 #course-detail{width:100%;margin-top:1em}}@media (max-width:1199px){#course-category-listings.columns-2,#course-category-listings.columns-3{background-color:transparent;border:0}#course-category-listings.columns-2 #category-listing,#course-category-listings.columns-3 #category-listing,#course-category-listings.columns-2 #course-listing,#course-category-listings.columns-3 #course-listing,#course-category-listings.columns-2 #course-detail,#course-category-listings.columns-3 #course-detail{width:100%;margin:0 0 1em}#course-category-listings.columns-2 #category-listing>div,#course-category-listings.columns-3 #category-listing>div,#course-category-listings.columns-2 #course-listing>div,#course-category-listings.columns-3 #course-listing>div,#course-category-listings.columns-2 #course-detail>div,#course-category-listings.columns-3 #course-detail>div{background-color:transparent}}.filemanager,.filepicker,.file-picker{font-size:11px}.filemanager a,.file-picker a,.filemanager a:hover,.file-picker a:hover{color:#555555;text-decoration:none}.filemanager input[type="text"],.file-picker input[type="text"]{width:265px}.filemanager .fp-license td,.file-picker .fp-setlicense td{max-width:265px}.filemanager .fp-license select,.file-picker .fp-setlicense select{max-width:100%}.fp-content-center{height:100%;width:100%;display:table-cell;vertical-align:middle}.fp-content-hidden{visibility:hidden}.yui3-panel-focused{outline:none}#filesskin .yui3-panel-content{padding-bottom:20px;background:#F2F2F2;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;border:1px solid #fff;display:inline-block;*display:inline;*zoom:1;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#filesskin .yui3-widget-hd{-webkit-border-radius:10px 10px 0 0;-moz-border-radius:10px 10px 0 0;border-radius:10px 10px 0 0;border-bottom:1px solid #BBBBBB;padding:5px;text-align:center;font-size:12px;color:#333;letter-spacing:1px;text-shadow:1px 1px 1px #fff;filter:dropshadow(color=#FFFFFF, offx=1, offy=1);background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0)}.fp-panel-button{background:#fff;padding:3px 20px 2px 20px;text-align:center;margin:10px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;display:inline-block;*display:inline;*zoom:1;-webkit-box-shadow:2px 2px 3px .1px #999;-moz-box-shadow:2px 2px 3px .1px #999;box-shadow:2px 2px 3px .1px #999}.moodle-dialogue h3{font-size:14px;margin:0;line-height:20px}.moodle-dialogue-base .filepicker .moodle-dialogue-wrap .moodle-dialogue-bd{padding:0}#filesskin .file-picker.fp-generallayout{width:859px;background:#FFFFFF;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid #CCCCCC;position:relative}.file-picker .fp-repo-area{width:180px;overflow:auto;display:inline-block;*display:inline;*zoom:1;float:left;height:525px;border-right:1px solid #BBBBBB}.dir-rtl .file-picker .fp-repo-area{border-left:1px solid #BBBBBB;border-right:none;float:right}.file-picker .fp-repo-items{float:none;width:auto;margin-left:181px}.moodle-dialogue-fullscreen .file-picker .fp-repo-items{margin-left:0;margin-right:0;float:left}.dir-rtl .file-picker .fp-repo-items{margin-left:0;margin-right:181px}.dir-rtl .moodle-dialogue-fullscreen .file-picker .fp-repo-items{margin-left:0;margin-right:0;float:right}.file-picker .fp-navbar{background:#F2F2F2;border-bottom:1px solid #BBBBBB;min-height:40px;overflow:hidden}.file-picker .fp-navbar .fp-viewbar{margin:4px}.file-picker .fp-content{background:#FFFFFF;clear:none;overflow:auto;height:452px}.filepicker.moodle-dialogue-fullscreen .file-picker .fp-content{width:100%}.file-picker .fp-content-loading{height:100%;width:100%;display:table;text-align:center}.file-picker .fp-content .fp-object-container{width:98%;height:98%}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-toolbar{padding:4px}.dir-rtl .file-picker .fp-list{text-align:right}.dir-rtl .file-picker .fp-repo-name{display:inline}.dir-rtl .file-picker .fp-pathbar{text-align:right;display:block;border-top:none}.dir-rtl .file-picker div.bd{text-align:right}.dir-rtl #filemenu .yuimenuitemlabel{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .filemanager-toolbar a{padding:0}.file-picker .fp-list{list-style-type:none;padding:0;float:left;width:100%;margin:0}.dir-rtl .file-picker .fp-list{text-align:right;float:left}.file-picker .fp-list .fp-repo a{display:block;padding:.5em .7em}.file-picker .fp-list .fp-repo.active{background:#F2F2F2}.file-picker .fp-list .fp-repo-icon{padding:0 7px 0 5px;width:16px;height:16px}.fp-toolbar{float:left}.dir-rtl .fp-toolbar{float:right}.fp-toolbar.empty{display:none}.dir-rtl .fp-toolbar div.disabled,.fp-toolbar .disabled{display:none}.fp-toolbar div{display:block;float:left;margin-right:4px}.dir-rtl .fp-toolbar div{display:block;float:right;margin-left:4px;margin-right:0}.fp-toolbar img{vertical-align:-15%;margin-right:5px}.fp-toolbar .fp-tb-search{width:235px;height:27px}.fp-toolbar .fp-tb-search input{background:#FFFFFF url('[[pix:a/search]]') no-repeat 7px 7px;padding:2px 6px 1px 27px;width:200px;height:27px;border:1px solid #BBBBBB}.fp-viewbar{float:right;height:30px;border:1px solid #CCC;border-bottom:1px solid #B3B3B3;border-radius:4px;background:white}.fp-repo-items fp-viewbar{margin:4px}.dir-rtl .fp-toolbar img{vertical-align:-35%}.dir-rtl .fp-viewbar{float:left}.fp-viewbar a{width:30px;height:30px;border-right:1px solid #CCC;display:block;float:left}.fp-viewbar a.checked:hover,.fp-viewbar a:hover{background-image:radial-gradient(ellipse at center, #ffffff 60%, #dfdfdf 100%);background-color:#ebebeb}.fp-viewbar a.checked,.fp-viewbar a:active{background-image:radial-gradient(ellipse at center, #ffffff 40%, #dfdfdf 100%);background-color:#dfdfdf}.fp-viewbar a.fp-vb-icons{border-radius:4px 0 0 4px}.fp-viewbar a.fp-vb-tree{border-right:0;border-radius:0 4px 4px 0}.fp-viewbar a img{margin:7px}.fp-viewbar.disabled a{opacity:.45;background:none;cursor:default}.file-picker .fp-clear-left{clear:left}.dir-rtl .fp-vb-details a:hover{background:none;border:20px solid black}.dir-rtl .fp-vb-details.checked a:hover{background:none;border:40px solid black}.dir-rtl .fp-vb-tree a:hover{background:none;border:30px solid black}.dir-rtl .fp-vb-tree.checked a:hover{background:none;border:50px solid black}.file-picker .fp-pathbar{display:table-row}.fp-pathbar.empty{display:none}.fp-pathbar .fp-path-folder{background:url('[[pix:theme|fp/path_folder]]') no-repeat 0 0;width:27px;height:12px;margin-left:4px}.dir-rtl .fp-pathbar .fp-path-folder{background:url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top;width:auto;height:12px;margin-left:4px}.dir-rtl .fp-pathbar span{display:inline-block;*display:inline;*zoom:1;float:right;margin-left:32px}.fp-pathbar .fp-path-folder-name{margin-left:32px;line-height:20px}.dir-rtl .fp-pathbar .fp-path-folder-name{margin-right:32px;line-height:20px}.fp-iconview .fp-file{float:left;text-align:center;position:relative;margin:10px 10px 35px}.fp-iconview .fp-thumbnail{min-width:110px;min-height:110px;line-height:110px;text-align:center;border:1px solid #FFFFFF;display:block}.fp-iconview .fp-thumbnail img{border:1px solid #ddd;padding:3px;vertical-align:middle;-webkit-box-shadow:1px 1px 2px 0 #ccc;-moz-box-shadow:1px 1px 2px 0 #ccc;box-shadow:1px 1px 2px 0 #ccc}.fp-iconview .fp-thumbnail:hover{background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-iconview .fp-filename-field{height:33px;word-wrap:break-word;overflow:hidden;position:absolute}.fp-iconview .fp-filename-field:hover{overflow:visible;z-index:1000}.fp-iconview .fp-filename-field .fp-filename{background:#FFFFFF;padding-top:5px;padding-bottom:12px;min-width:112px}.dir-rtl .fp-iconview .fp-file{float:right}.file-picker .yui3-datatable table{border:0 solid #BBBBBB;width:100%}#filesskin .file-picker .yui3-datatable-header{background:#FFFFFF;border-bottom:1px solid #CCCCCC;border-left:0 solid #FFFFFF;color:#555555}#filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell{background-color:#F6F6F6;border-left:0 solid #F6F6F6}#filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell{background-color:#FFFFFF;border-left:0 solid #FFFFFF}.dir-rtl .file-picker .yui3-datatable-header{text-align:right}.file-picker .ygtvtn,.filemanager .ygtvtn{background:url('[[pix:moodle|y/tn]]') 0 0 no-repeat;width:17px;height:22px}.dir-rtl .filemanager .ygtvtn,.dir-rtl .file-picker .ygtvtn{background:url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat;width:17px;height:22px}.file-picker .ygtvtm,.filemanager .ygtvtm{background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvtmh,.filemanager .ygtvtmh{background:url('[[pix:moodle|y/tm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvtp,.filemanager .ygtvtp{background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvtp,.dir-rtl .filemanager .ygtvtp{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvtph,.filemanager .ygtvtph{background:url('[[pix:moodle|y/tp]]') 0 10px no-repeat;width:13px;height:22px;cursor:pointer}.dir-rtl .file-picker .ygtvtph,.dir-rtl .filemanager .ygtvtph{background:url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat}.file-picker .ygtvln,.filemanager .ygtvln{background:url('[[pix:moodle|y/ln]]') 0 0 no-repeat;width:17px;height:22px}.dir-rtl .file-picker .ygtvln,.dir-rtl .filemanager .ygtvln{background:url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat}.file-picker .ygtvlm,.filemanager .ygtvlm{background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvlmh,.filemanager .ygtvlmh{background:url('[[pix:moodle|y/lm]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.file-picker .ygtvlp,.filemanager .ygtvlp{background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvlp,.dir-rtl .filemanager .ygtvlp{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvlph,.filemanager .ygtvlph{background:url('[[pix:moodle|y/lp]]') 0 10px no-repeat;width:13px;height:12px;cursor:pointer}.dir-rtl .file-picker .ygtvlph,.dir-rtl .filemanager .ygtvlph{background:url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat}.file-picker .ygtvloading,.filemanager .ygtvloading{background:transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat;width:16px;height:22px}.file-picker .ygtvdepthcell,.filemanager .ygtvdepthcell{background:url('[[pix:moodle|y/vline]]') 0 0 no-repeat;width:17px;height:32px}.file-picker .ygtvblankdepthcell,.filemanager .ygtvblankdepthcell{width:17px;height:22px}a.ygtvspacer:hover{color:transparent;text-decoration:none}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{background-color:transparent;cursor:pointer;margin-left:2px;text-decoration:none}.file-picker .ygtvfocus,.filemanager .ygtvfocus{background-color:#EEEEEE}.fp-filename-icon{margin-top:10px;display:block;position:relative}.fp-icon{float:left;margin-top:-7px;width:24px;height:24px;margin-right:10px;text-align:center;line-height:24px}.dir-rtl .fp-icon{float:right;margin-left:10px;margin-right:0}.fp-icon img{max-height:24px;max-width:24px;vertical-align:middle}.fp-filename{padding-right:10px}.dir-rtl .fp-filename{padding-left:10px;padding-right:0}.file-picker .fp-login-form{height:100%;width:100%;display:table}.file-picker .fp-login-form table{margin:0 auto}.file-picker .fp-login-form p{text-align:center;margin-top:3em}.file-picker .fp-login-form .fp-login-input label{text-align:right;display:block}.file-picker .fp-login-form .fp-login-input .input{text-align:left}.file-picker .fp-login-form input[type="checkbox"]{width:15px;height:15px}.file-picker .fp-upload-form{height:100%;width:100%;display:table}.file-picker .fp-upload-form table{margin:0 auto}.file-picker.fp-dlg{text-align:center}.file-picker.fp-dlg .fp-dlg-text{padding:30px 20px 10px;font-size:12px}.file-picker.fp-dlg .fp-dlg-buttons{margin:0 20px}.file-picker.fp-msg{text-align:center}.file-picker.fp-msg .fp-msg-text{padding:40px 20px 10px 20px;min-width:200px;max-width:500px;max-height:300px;overflow:auto;font-size:12px}.file-picker.fp-msg.fp-msg-error .fp-msg-text{padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-content-error{height:100%;width:100%;display:table;text-align:center}.file-picker .fp-content-error .fp-error{height:100%;width:100%;display:table-cell;vertical-align:middle;padding:40px 20px 10px 20px;font-size:12px}.file-picker .fp-nextpage{clear:both}.file-picker .fp-nextpage .fp-nextpage-loading{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-link{display:none}.file-picker .fp-nextpage.loading .fp-nextpage-loading{display:block;text-align:center;height:100px;padding-top:50px}.fp-select form{padding:20px 20px 0}.fp-select .fp-select-loading{text-align:center;margin-top:20px}.fp-select .fp-hr{clear:both;height:1px;background-color:#FFFFFF;border-bottom:1px solid #BBBBBB;width:auto;margin:10px 0}.fp-select table{padding:0 0 10px}.fp-select table .mdl-right{min-width:84px}.fp-select .fp-reflist .mdl-right{vertical-align:top}.fp-select .fp-select-buttons{float:right}.fp-select .fp-info{display:block;clear:both;padding:1px 20px 0}.fp-select .fp-thumbnail{float:left;min-width:110px;min-height:110px;line-height:110px;text-align:center;margin:10px 20px 0 0;background:#fff;border:1px solid #ddd;-webkit-box-shadow:inset 0 0 10px 0 #ccc;-moz-box-shadow:inset 0 0 10px 0 #ccc;box-shadow:inset 0 0 10px 0 #ccc}.fp-select .fp-thumbnail img{border:1px solid #DDDDDD;padding:3px;vertical-align:middle;margin:10px}.fp-select .fp-fileinfo{display:inline-block;*display:inline;*zoom:1;margin-top:10px}.file-picker.fp-select .fp-fileinfo{max-width:240px}.fp-select .fp-fileinfo div{padding-bottom:5px}.file-picker.fp-select .uneditable{display:none}.file-picker.fp-select .fp-select-loading{display:none}.file-picker.fp-select.loading .fp-select-loading{display:block}.file-picker.fp-select.loading form{display:none}.fp-select .fp-dimensions.fp-unknown{display:none}.fp-select .fp-size.fp-unknown{display:none}.filemanager-loading{display:none}.jsenabled .filemanager-loading{display:block;margin-top:100px}.filemanager.fm-loading .filemanager-toolbar,.filemanager.fm-loading .fp-pathbar,.filemanager.fm-loading .filemanager-container,.filemanager.fm-loaded .filemanager-loading,.filemanager.fm-maxfiles .fp-btn-add,.filemanager.fm-maxfiles .dndupload-message,.filemanager.fm-noitems .fp-btn-download,.filemanager .fm-empty-container,.filemanager.fm-noitems .filemanager-container .fp-content{display:none}.filemanager .fp-img-downloading{display:none;padding-top:7px}.filemanager .filemanager-updating{display:none;text-align:center}.filemanager.fm-updating .filemanager-updating{display:block;margin-top:37px}.filemanager.fm-updating .fm-content-wrapper,.filemanager.fm-nomkdir .fp-btn-mkdir,.fitem.disabled .filemanager .filemanager-toolbar,.fitem.disabled .filemanager .fp-pathbar,.fitem.disabled .filemanager .fp-restrictions,.fitem.disabled .filemanager .fm-content-wrapper{display:none}.filemanager .fp-restrictions{text-align:right}.filemanager .fp-navbar{background:#F2F2F2;border:1px solid #BBBBBB;border-bottom:none}.filemanager-toolbar{padding:4px;overflow:hidden}.fp-pathbar{border-top:1px solid #BBBBBB;padding:5px 8px 1px;min-height:20px}.file-picker .fp-toolbar{padding:4px}.fp-toolbar .fp-btn-add,.fp-toolbar .fp-btn-download,.fp-toolbar .fp-btn-mkdir,.fp-toolbar .fp-tb-help,.fp-toolbar .fp-tb-manage,.fp-toolbar .fp-tb-logout,.fp-toolbar .fp-tb-refresh{border:1px solid #CCC;border-bottom:1px solid #B3B3B3;border-radius:4px;background:white;width:30px;height:30px}.fp-toolbar a:hover{background-image:radial-gradient(ellipse at center, #ffffff 60%, #dfdfdf 100%);background-color:#ebebeb}.fp-toolbar a:active{background-image:radial-gradient(ellipse at center, #ffffff 40%, #dfdfdf 100%);background-color:#dfdfdf}.fp-btn-add a,.fp-btn-download a,.fp-btn-mkdir a,.fp-tb-help a,.fp-tb-manage a,.fp-tb-logout a,.fp-tb-refresh a{display:block;width:30px;height:30px;border-radius:4px}.fp-btn-add img,.fp-btn-download img,.fp-btn-mkdir img,.fp-tb-help img,.fp-tb-manage img,.fp-tb-logout img,.fp-tb-refresh img{margin:7px}.filemanager .fp-pathbar.empty{display:none}.filepicker-filelist,.filemanager-container{background:#FFFFFF;clear:both;overflow:auto;border:1px solid #BBBBBB;min-height:140px;position:relative}.filemanager .fp-content{overflow:auto;max-height:472px;min-height:157px}.filemanager-container,.filepicker-filelist{overflow:hidden}.fitem.disabled .filepicker-filelist,.fitem.disabled .filemanager-container{background-color:#EBEBE4}.fitem.disabled .fp-btn-choose{color:#999}.fitem.disabled .filepicker-filelist .filepicker-filename{display:none}.fp-iconview .fp-reficons1{position:absolute;height:100%;width:100%;top:0;left:0}.fp-iconview .fp-reficons2{position:absolute;height:100%;width:100%;top:0;left:0}.fp-iconview .fp-file.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link]]') no-repeat;background-position:bottom right}.fp-iconview .fp-file.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias]]') no-repeat;background-position:bottom left}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img{display:none}.filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail{background:url([[pix:s/dead]]) no-repeat;background-position:center center}.filemanager .yui3-datatable table{border:0 solid #BBBBBB;width:100%}.filemanager .yui3-datatable-header{background:#FFFFFF !important;border-bottom:1px solid #CCCCCC !important;border-left:0 solid #FFFFFF !important;color:#555555 !important}.filemanager .yui3-datatable-odd .yui3-datatable-cell{background-color:#F6F6F6 !important;border-left:0 solid #F6F6F6}.filemanager .yui3-datatable-even .yui3-datatable-cell{background-color:#FFFFFF !important;border-left:0 solid #FFFFFF}.filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{background:url('[[pix:theme|fp/link_sm]]') no-repeat 0 0;height:100%;width:100%;position:absolute;top:8px;left:17px;z-index:1000}.filemanager .fp-filename-icon.fp-isreference .fp-reficons2{background:url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0;height:100%;width:100%;position:absolute;top:9px;left:-6px;z-index:1001}.filemanager .fp-contextmenu{display:none}.filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{display:block;position:absolute;right:7px;bottom:5px}.filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{display:inline;position:absolute;left:14px;margin-right:-20px;top:6px}.dir-rtl .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu{left:7px;right:inherit}.dir-rtl .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,.dir-rtl .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu{left:inherit;right:16px;margin-right:0}.filepicker-filelist .filepicker-container,.filemanager.fm-noitems .fm-empty-container{display:block;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #BBBBBB;padding-top:85px;text-align:center}.filepicker-filelist .dndupload-target,.filemanager-container .dndupload-target{background:#FFFFFF;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #fb7979;padding-top:85px;text-align:center;-webkit-box-shadow:0 0 0 10px #fff;-moz-box-shadow:0 0 0 10px #fff;box-shadow:0 0 0 10px #fff}.filepicker-filelist.dndupload-over .dndupload-target,.filemanager-container.dndupload-over .dndupload-target{background:#FFFFFF;position:absolute;top:10px;bottom:10px;left:10px;right:10px;border:2px dashed #6c8cd3;padding-top:85px;text-align:center}.dndupload-message{display:none}.dndsupported .dndupload-message{display:inline}.dnduploadnotsupported-message{display:none}.dndnotsupported .dnduploadnotsupported-message{display:inline}.dndupload-target{display:none}.dndsupported .dndupload-ready .dndupload-target{display:block}.dndupload-uploadinprogress{display:none;text-align:center}.dndupload-uploading .dndupload-uploadinprogress{display:block}.dndupload-arrow{background:url([[pix:theme|fp/dnd_arrow]]) center no-repeat;width:100%;height:80px;position:absolute;top:5px}.fitem.disabled .filepicker-container,.fitem.disabled .fm-empty-container{display:none}.dndupload-progressbars{padding:10px;display:none}.dndupload-inprogress .dndupload-progressbars{display:block}.dndupload-inprogress .fp-content{display:none}.filemanager.fm-noitems .dndupload-inprogress .fm-empty-container{display:none}.filepicker-filelist.dndupload-inprogress .filepicker-container{display:none}.filepicker-filelist.dndupload-inprogress a{display:none}.filemanager.fp-select .fp-select-loading{display:none}.filemanager.fp-select.loading .fp-select-loading{display:block}.filemanager.fp-select.loading form{display:none}.filemanager.fp-select.fp-folder .fp-license,.filemanager.fp-select.fp-folder .fp-author,.filemanager.fp-select.fp-file .fp-file-unzip,.filemanager.fp-select.fp-folder .fp-file-unzip,.filemanager.fp-select.fp-file .fp-file-zip,.filemanager.fp-select.fp-zip .fp-file-zip{display:none}.filemanager.fp-select .fp-file-setmain,.filemanager.fp-select .fp-file-setmain-help{display:none}.filemanager.fp-select.fp-cansetmain .fp-file-setmain,.filemanager.fp-select.fp-cansetmain .fp-file-setmain-help{display:inline-block;*display:inline;*zoom:1}.filemanager .fp-mainfile .fp-filename{font-weight:bold}.filemanager.fp-select.fp-folder .fp-file-download{display:none}.fm-operation{font-weight:bold}.filemanager.fp-select .fp-original.fp-unknown,.filemanager.fp-select .fp-original .fp-originloading{display:none}.filemanager.fp-select .fp-original.fp-loading .fp-originloading{display:inline}.filemanager.fp-select .fp-reflist.fp-unknown,.filemanager.fp-select .fp-reflist .fp-reflistloading{display:none}.filemanager.fp-select .fp-refcount{max-width:265px}.filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading{display:inline}.filemanager.fp-select .fp-reflist .fp-value{background:#F9F9F9;border:1px solid #BBBBBB;padding:8px 7px;margin:0;max-width:265px;max-height:75px;overflow:auto}.filemanager.fp-select .fp-reflist .fp-value li{padding-bottom:7px}.filemanager.fp-mkdir-dlg{text-align:center}.filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text{text-align:left;margin:20px}.dir-rtl .filemanager .fp-mkdir-dlg p{text-align:right}.filemanager.fp-dlg{text-align:center}.filemanager.fp-dlg .fp-dlg-text{padding:0 10px;min-width:200px;max-width:340px;max-height:300px;overflow:auto;line-height:22px;margin:40px 20px 20px;font-size:12px}.file-picker div.bd{text-align:left}.dir-rtl .filemanager .fp-restrictions{text-align:left}.dir-rtl .file-picker div.bd,.dir-rtl .file-picker .fp-pathbar,.dir-rtl .file-picker .fp-list,.dir-rtl #filemenu .yuimenuitemlabel,.dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header{text-align:right}.dir-rtl .filepicker .yui-layout-unit-left{left:500px}.dir-rtl .filepicker .yui-layout-unit-center{left:0}.dir-rtl .file-picker .fp-toolbar .fp-tb-search input{background-position:208px 7px;padding:2px 30px 1px 3px}.dir-rtl .file-picker .fp-toolbar div{float:right;margin-left:4px}.fp-formset{max-width:500px;padding:10px}.fp-formset input[type="file"]{line-height:inherit}.fp-forminset{max-width:400px;padding:0 10px}.fp-forminset .control-group.control-radio{margin-bottom:0}.fp-forminset .control-group label.control-label{width:105px}.fp-forminset .control-group label.control-radio{float:right;text-align:left;width:215px}.fp-forminset .control-group .controls{margin-left:125px}.fp-forminset .control-group .controls select{width:100%}.fp-forminset .control-group .controls.control-radio input{margin-top:3px}.fp-forminset .fp-select-buttons{float:none}.fp-forminset input[type="text"]{width:228px}.fp-fileinfo .fp-value{display:inline-block;padding-left:5px}.dir-rtl .fp-forminset{max-width:400px}.dir-rtl .fp-forminset .control-group label.control-label{float:right;text-align:left}.dir-rtl .fp-forminset .control-group label.control-radio{float:left;text-align:right;width:215px}.dir-rtl .fp-forminset .control-group .controls{margin-left:0;margin-right:125px}.dir-rtl .fp-forminset .fp-select-buttons{float:left}.dir-rtl .fp-forminset input[type="text"]{width:228px}.dir-rtl .fp-fileinfo .fp-value{display:inline-block;padding-right:5px}.dir-rtl .fp-select .fp-thumbnail{margin:10px 0 0 0}.dir-rtl .filepicker .fp-formset label{float:right;text-align:left}.dir-rtl .filepicker .fp-formset .controls{margin-left:0;text-align:right}.message-discussion-noframes h1{font-size:1em}.message-discussion-noframes #userinfo .commands,.message .noframesjslink,.message .link{font-size:11.9px}.message .heading{font-size:1em;font-weight:bold;clear:both;word-wrap:break-word}.message .author{font-weight:bold}.message .time{font-style:italic}#page-message-user .commands span{font-size:.7em}#page-message-user .name{font-weight:bold;font-size:1.1em}.message .time{color:#999}#page-message-messages{padding:10px}#page-message-send .notifysuccess{padding:1px}#page-message-send td.fixeditor{text-align:center}.message{overflow:hidden}.message .note{padding:10px}table.message .searchresults td{padding:5px}.message .contactselector{max-width:380px;margin:0 auto;width:auto}@media screen and (min-width:1000px){.message .contactselector{float:left;padding:0 8px 0 0}}.message .contactselector .singleselect{width:240px}.message .contactselector .paging{z-index:1;position:relative}.message .contactselector #message_participants{max-width:240px}.message .contactselector .message-contacts{list-style-type:none;margin:0}.message .contactselector .message-contacts li{clear:both;position:relative;min-height:23px;padding:2px}.message .contactselector .message-contacts li:nth-child(odd){background:rgba(120,120,255,0.1)}.message .contactselector .message-contacts li>div{display:block;height:100%}.message .contactselector .message-contacts li>div>*{vertical-align:middle;display:inline-block}.message .contactselector .message-contacts li>div.pix{position:relative;float:left}.message .contactselector .message-contacts li>div.link{white-space:nowrap;width:60px;position:relative;float:right;text-align:right}.message .contactselector .message-contacts li>div.contact{position:relative;word-break:break-all}.message .contactselector .message-contacts li>div.contact a{line-height:22px}.dir-ltr .message .message-contacts li{text-align:left}.dir-ltr .message .message-contacts li>div.pix{float:left}.dir-ltr .message .message-contacts li>div.link{float:right;text-align:right}.dir-ltr .message .message-contacts li>div.contact{margin:0 60px 0 24px}.dir-ltr .message .message-contacts li>div.contact.nolinks{margin:0 0 0 24px}.dir-rtl .message .message-contacts li{text-align:right}.dir-rtl .message .message-contacts li>div.pix{float:right}.dir-rtl .message .message-contacts li>div.link{float:left;text-align:left}.dir-rtl .message .message-contacts li>div.contact{margin:0 24px 0 60px}.dir-rtl .message .message-contacts li>div.contact.nolinks{margin:0 24px 0 0}@media screen and (min-width:1000px){.dir-rtl .message .contactselector{float:right}}.message .messagearea{float:none;overflow:hidden;min-height:200px;min-width:300px}@media screen and (min-width:1000px){.message .messagearea{border-left:1px solid #ddd;padding:0 8px}}@media screen and (max-width:1000px){.message .messagearea{width:100%}}#message_user_pictures{text-align:center}.dir-rtl #message_user_pictures{direction:rtl}.message .messagearea .messagehistorytype{clear:both;padding-bottom:20px}.message .messagearea .messagehistory .user{vertical-align:top;width:45%;min-width:100px;display:inline-block}.message .messagearea .messagehistory .user>div{text-align:center}.message .messagearea .messagehistory .between{display:inline-block;width:16px;margin:0 1%;padding-top:40px}@media screen and (max-width:320px){.message .messagearea{min-width:0}.message .messagearea .messagehistory .user{max-width:70px;min-width:0}.message .messagearea .messagehistory .user .userpicture{width:50px;height:auto}}@media screen and (min-width:800px){.message .messagearea .messagehistory .between{margin:0 3%}.message .messagearea .messagehistory .user{width:32%}}@media screen and (min-width:1200px){.message .messagearea .messagehistory .user{width:25%}}.message .messagearea .messagehistory .heading{width:100%;clear:both}.message .messagearea .messagehistory .left{margin-bottom:10px;width:50%;float:left;position:relative;clear:both}.dir-rtl .message .messagearea .messagehistory .left{float:right}.message .messagearea .messagehistory .right{margin-bottom:10px;width:50%;float:right;position:relative;clear:both}.dir-rtl .message .messagearea .messagehistory .right{float:left}.message .messagearea .messagehistory .notification{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;margin-bottom:0;margin-top:5px}.message .messagearea .messagehistory .notification blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.dir-ltr .message .messagearea .messagehistory .message{margin-right:20px}.dir-ltr .message .messagearea .messagehistory .right .message{margin-left:20px}.dir-rtl .message .messagearea .messagehistory .message{margin-left:20px}.dir-rtl .message .messagearea .messagehistory .right .message{margin-right:20px}.message .messagearea .messagehistory .messageactive{background-color:#f5f5f5}.message .messagearea .messagehistory .messagecontent .deleteicon{width:20px;position:absolute;top:-2px}.dir-ltr .message .messagearea .messagehistory .messagecontent .deleteicon{right:0}.dir-rtl .message .messagearea .messagehistory .messagecontent .deleteicon{left:0}.message .messagearea .messagesend{padding-top:20px;clear:both}.message .messagearea .messagesend .messagesendbox{width:100%;box-sizing:border-box}.message .messagearea .messagesend fieldset{padding:0;margin:0}.message .messagearea .messagerecent{text-align:left;width:100%}.message .messagearea .messagerecent .singlemessage{border-bottom:1px solid #ddd;padding:10px}.message .messagearea .messagerecent .singlemessage .otheruser span{padding:5px}.message .messagearea .messagerecent .singlemessage .messagedate{float:right}.message .hiddenelement{display:none}.message .visible{display:inline}.message #usergroupselector.fieldset,.message #viewing{width:100%}.messagesearchresults{margin-bottom:40px}.messagesearchresults td{padding:0 10px 0 20px}.messagesearchresults td span{white-space:nowrap}.messagesearchresults td img.userpicture{padding-right:.45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td img.userpicture{padding-left:.45em;padding-right:0}.messagesearchresults td span img{padding:0 0 0 .45em;vertical-align:text-bottom}.dir-rtl .messagesearchresults td span img{padding:0 .45em 0 0}#newmessageoverlay{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3;margin:0 1em;position:fixed;bottom:0;right:0}#newmessageoverlay blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}#newmessageoverlay #usermessage{padding:10px}#page-user-action_redir #edit-messagebody{width:auto}.core_message-messenger-sendmessage-hidden{display:none}.core_message-messenger-sendmessage .message-actions{position:relative}.core_message-messenger-sendmessage .message-area{height:240px;max-height:100%;position:relative;margin-bottom:10px}.core_message-messenger-sendmessage .message-input{width:100%;height:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.core_message-messenger-sendmessage .message-send{margin:0;float:right}.core_message-messenger-sendmessage .message-notice-area{display:table;position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%}.core_message-messenger-sendmessage .message-notice{display:table-cell;vertical-align:middle;text-align:center}.core_message-messenger-sendmessage .message-notice>div{background:#eee;padding:5px;font-size:12px}.core_message-messenger-sendmessage .message-footer{margin-top:3px;line-height:20px}.core_message-messenger-sendmessage .message-history{position:absolute;bottom:0}.dir-rtl .core_message-messenger-sendmessage .message-send{float:left}.questionbank h2{margin-top:0}.questioncategories h3{margin-top:0}#chooseqtypebox{margin-top:1em}#chooseqtype h3{margin:0 0 .3em}#chooseqtype .instruction{display:none}#chooseqtype .fakeqtypes{border-top:1px solid silver}#chooseqtype .qtypeoption{margin-bottom:.5em}#chooseqtype label{display:block}#chooseqtype .qtypename img{padding:0 .3em}#chooseqtype .qtypename{display:inline-table;width:16em}#chooseqtype .qtypesummary{display:block;margin:0 2em}#chooseqtype .submitbuttons{margin:.7em 0;text-align:center}#qtypechoicecontainer{display:none}#qtypechoicecontainer_c.yui-panel-container.shadow .underlay{background:none}#qtypechoicecontainer.yui-panel .hd{color:#333;letter-spacing:1px;text-shadow:1px 1px 1px #fff;-webkit-border-top-right-radius:10px;-moz-border-radius-topright:10px;border-top-right-radius:10px;-webkit-border-top-left-radius:10px;-moz-border-radius-topleft:10px;border-top-left-radius:10px;border:1px solid #ccc;border-bottom:1px solid #bbb;background-color:#ebebeb;background-image:-moz-linear-gradient(top, #fff, #ccc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#ccc));background-image:-webkit-linear-gradient(top, #fff, #ccc);background-image:-o-linear-gradient(top, #fff, #ccc);background-image:linear-gradient(to bottom, #fff, #ccc);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffcccccc', GradientType=0)}#qtypechoicecontainer{font-size:12px;color:#333;background:#F2F2F2;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid #ccc;border-top:0 none;-webkit-box-shadow:5px 5px 20px 0 #666;-moz-box-shadow:5px 5px 20px 0 #666;box-shadow:5px 5px 20px 0 #666}#qtypechoicecontainer #chooseqtype{width:40em}#chooseqtypehead h3{margin:0;font-weight:normal}#chooseqtype .qtypes{position:relative;border-bottom:1px solid #bbb;padding:.24em 0}#chooseqtype .alloptions{overflow-x:hidden;overflow-y:auto;max-height:400px;max-height:calc(85vh);max-height:60vh;width:60%}#chooseqtype .qtypeoption{margin-bottom:0;padding:.3em .3em .3em 1.6em}#chooseqtype .qtypeoption img{vertical-align:text-bottom;padding-left:1em;padding-right:.5em}#chooseqtype .selected{background-color:#fff;-webkit-box-shadow:0 0 10px 0 #ccc;-moz-box-shadow:0 0 10px 0 #ccc;box-shadow:0 0 10px 0 #ccc}#chooseqtype .instruction,#chooseqtype .qtypesummary{display:none;position:absolute;top:0;right:0;bottom:0;left:60%;margin:0;overflow-x:hidden;padding:1.5em 1.6em;background-color:#fff;overflow-y:auto}#chooseqtype .instruction,#chooseqtype .selected .qtypesummary{display:block}#categoryquestions{margin:0}#categoryquestions td,#categoryquestions th{padding:0 .2em}#categoryquestions th{text-align:left;font-weight:normal}#categoryquestions .checkbox{padding-left:5px}#categoryquestions .checkbox input[type="checkbox"]{margin-left:0;float:none}#categoryquestions img.iconsmall{padding:0}#categoryquestions .iconcol{padding:3px}#categoryquestions label{margin:0}#page-mod-quiz-edit div.questionbankwindow div.header{margin:0}#page-mod-quiz-edit div.questionbankwindow.block{padding:0}.dir-rtl #categoryquestions th{text-align:right}.questionbank .singleselect{margin:0}#combinedfeedbackhdr div.fhtmleditor{padding:0}#combinedfeedbackhdr div.fcheckbox{margin-bottom:1em}#multitriesheader div.fitem_feditor{margin-top:1em}#multitriesheader div.fitem_fgroup{margin-bottom:1em}#multitriesheader div.fitem_fgroup fieldset.felement label{margin-left:.3em;margin-right:.3em}body.path-question-type .fitem_fgroup .accesshide{font:inherit;left:0;position:static;padding-right:.3em}.que{clear:left;text-align:left;margin:0 auto 1.8em auto}.dir-rtl .que{text-align:right}.que .info{float:left;width:7em;padding:.5em;margin-bottom:1.8em;background-color:#eee;border:1px solid #dcdcdc;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px}.que h3.no{margin:0;font-size:.8em;line-height:1}.que span.qno{font-size:1.5em;font-weight:bold}.que .info>div{font-size:.8em;margin-top:.7em}.que .info .questionflag.editable{cursor:pointer}.que .info .editquestion img,.que .info .questionflag img,.que .info .questionflag input{vertical-align:bottom}.que .content{margin:0 0 0 8.5em}.que .formulation,.que .outcome,.que .comment{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:#8a6d3b}.que .formulation{background-color:#d9edf7;border-color:#bce8f1;color:#3a87ad;color:#333}.formulation input[type="text"],.formulation select{width:auto;vertical-align:baseline}.path-mod-quiz input[size]{width:auto}.que .comment{background-color:#dff0d8;border-color:#d6e9c6;color:#468847}.que .history{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3}.que .history blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.que .ablock{margin:.7em 0 .3em 0}.que .im-controls{margin-top:.5em;text-align:left}.dir-rtl .que .im-controls{text-align:right}.que .specificfeedback,.que .generalfeedback,.que .rightanswer,.que .im-feedback,.que .feedback,.que p{margin:0 0 .5em}.que .qtext{margin-bottom:1.5em}.que .correctness{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;vertical-align:baseline;white-space:nowrap;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#999;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.que .correctness:empty{display:none}.que .correctness-important{background-color:#b94a48}.que .correctness-important[href]{background-color:#953b39}.que .correctness-warning{background-color:#f89406}.que .correctness-warning[href]{background-color:#c67605}.que .correctness-success{background-color:#468847}.que .correctness-success[href]{background-color:#356635}.que .correctness-info{background-color:#3a87ad}.que .correctness-info[href]{background-color:#2d6987}.que .correctness-inverse{background-color:#333}.que .correctness-inverse[href]{background-color:#1a1a1a}.que .correctness.correct{background-color:#468847}.que .correctness.partiallycorrect{background-color:#f89406}.que .correctness.notanswered,.que .correctness.incorrect{background-color:#b94a48}.que .validationerror{color:#b94a48}.formulation .correct{background-color:#dff0d8}.formulation .partiallycorrect{background-color:#fcf8e3}.formulation .incorrect{background-color:#f2dede}.formulation select.correct,.formulation input.correct{color:#468847;background-color:#dff0d8;border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.correct:focus,.formulation input.correct:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.formulation select.partiallycorrect,.formulation input.partiallycorrect{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.partiallycorrect:focus,.formulation input.partiallycorrect:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.formulation select.incorrect,.formulation input.incorrect{color:#b94a48;background-color:#f2dede;border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.formulation select.incorrect:focus,.formulation input.incorrect:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.que .grading,.que .comment,.que .commentlink,.que .history{margin-top:.5em}.que .history h3{margin:0 0 .2em;font-size:1em}.que .history table{width:100%;margin:0}.que .history .current{font-weight:bold}.que .questioncorrectnessicon{vertical-align:text-bottom}.que input.questionflagimage{padding-right:3px}.dir-rtl .que input.questionflagimage{padding-left:3px;padding-right:0}.importerror{margin-top:10px;border-bottom:1px solid #555}.mform .que.comment .fitemtitle{width:20%}#page-question-preview #techinfo{margin:1em 0}.dir-rtl #chooseqtype .instruction,.dir-rtl #chooseqtype .qtypesummary{right:60%;left:0;border-left:0;border-right:1px solid grey}#page-mod-quiz-edit .box.generalbox.questionbank{padding:.5em}#page-mod-quiz-edit .questionbank .categorypagingbarcontainer,#page-mod-quiz-edit .questionbank .categoryquestionscontainer,#page-mod-quiz-edit .questionbank .choosecategory{padding:0}#page-mod-quiz-edit .questionbank .choosecategory select{width:100%}#page-mod-quiz-edit div.questionbank .categoryquestionscontainer{background:transparent}#page-mod-quiz-edit #categoryquestions>thead{background:#FFF}#page-mod-quiz-edit #categoryquestions>tbody>tr:nth-of-type(even){background:#e4e4e4}#page-mod-quiz-edit .questionbankwindow div.header{color:#444;text-shadow:none;padding:3px;-webkit-border-top-right-radius:4px;-moz-border-radius-topright:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;-moz-border-radius-topleft:4px;border-top-left-radius:4px;margin:0 -10px 0 -10px;padding:2px 10px 2px 10px;background:transparent}#page-mod-quiz-edit .questionbankwindow div.header a:link,#page-mod-quiz-edit .questionbankwindow div.header a:visited{color:#0070a8}#page-mod-quiz-edit .questionbankwindow div.header a:hover{color:#003d5c}#page-mod-quiz-edit .createnewquestion{padding:.3em 0}#page-mod-quiz-edit .createnewquestion div,#page-mod-quiz-edit .createnewquestion input{margin:0}#page-mod-quiz-edit .questionbankwindow div.header .title{color:#333}#page-mod-quiz-edit div.container div.generalbox{background-color:transparent;padding:1.5em}#page-mod-quiz-edit .categoryinfo{background-color:transparent;border-bottom:none}#page-mod-quiz-edit .createnewquestion .singlebutton input{margin-bottom:0}#page-mod-quiz-edit div.questionbank .categorysortopotionscontainer,#page-mod-quiz-edit div.questionbank .categoryselectallcontainer{padding:0 0 1.5em 0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer{background-color:transparent;margin:0;border-top:0;border-bottom:0}#page-mod-quiz-edit div.questionbank .categorypagingbarcontainer .paging{padding:0 .3em}#page-mod-quiz-edit div.question div.content div.questioncontrols{background-color:#fff}#page-mod-quiz-edit div.question div.content div.points{margin-top:-0.5em;padding-bottom:0;border:none;background-color:#fff;position:static;width:12.1em;float:right;margin-right:60px}#page-mod-quiz-edit.dir-rtl div.question div.content div.points{float:left;margin-left:60px;margin-right:0}#page-mod-quiz-edit div.question div.content div.points br{display:none}#page-mod-quiz-edit div.question div.content div.points label{display:inline-block}#page-mod-quiz-edit div.quizpage .pagecontent .pagestatus{background-color:#fff}#page-mod-quiz-edit .quizpagedelete,#page-mod-quiz-edit .quizpagedelete img{background-color:transparent}#page-mod-quiz-edit div.quizpage .pagecontent{border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;overflow:hidden}#page-mod-quiz-edit div.questionbank .categoryinfo{padding:.3em 0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer{padding:0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong{display:block}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer hr,#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer br{display:none}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong{margin-left:-0.3em}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer strong label{margin-left:.3em}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer input{margin-left:0}#page-mod-quiz-edit div.questionbank .modulespecificbuttonscontainer input+input{margin-left:5px}.questionbankwindow .module{width:auto}#page-mod-quiz-edit div.editq div.question div.content{background-color:#fff;border:1px solid #ddd;-webkit-border-radius:2px;-moz-border-radius:2px;border-radius:2px;overflow:hidden}.path-mod-quiz .statedetails{display:block;font-size:.9em}a#hidebankcmd{color:#0070a8}.que.shortanswer .answer{padding:0}.que label{display:inline}body.path-question-type .mform fieldset.hidden{padding:0;margin:.7em 0 0}.userprofile .fullprofilelink{text-align:center;margin:10px}.userprofile .page-context-header{margin-bottom:10px}.userprofile .description{margin-top:10px;margin-bottom:30px}.userprofile .profile_tree{-webkit-column-count:2;-moz-column-count:2;column-count:2;-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px}.userprofile .profile_tree section{display:inline-block;width:100%;border:1px solid #ddd;border-radius:4px;padding:0 15px;margin-bottom:20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.userprofile .profile_tree section h3{font-size:18px;line-height:20px}.userprofile dl.list{*zoom:1}.userprofile dl.list:before,.userprofile dl.list:after{display:table;content:"";line-height:0}.userprofile dl.list:after{clear:both}.userprofile dl.list dt{float:left;width:180px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userprofile dl.list dd{margin-left:200px}.user-box{margin:8px;width:115px;height:160px;text-align:center;float:left;clear:none}#page-user-profile .node_category ul,.path-user .node_category ul{margin-left:0;margin-right:0;list-style:none}#page-user-profile .node_category li,.path-user .node_category li{margin-top:5px}#page-user-profile .node_category .editprofile,.path-user .node_category .editprofile,#page-user-profile .node_category .viewmore,.path-user .node_category .viewmore{text-align:right}.dir-rtl .user-box{float:right}.dir-rtl .userprofile .node_category .editprofile,.dir-rtl .userprofile .node_category .viewmore{text-align:left}.dir-rtl .userprofile dl dd{margin-left:0;margin-right:10px}@media (max-width:480px){.userprofile .profile_tree{-webkit-column-count:1;-moz-column-count:1;column-count:1;-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px}}.userlist .action-icon img{vertical-align:middle}.userlist #showall{margin:10px 0}.userlist .buttons{text-align:center}.userlist .buttons label{padding:0 3px}.userlist table#participants{text-align:center}.userlist table#participants td,.userlist table#participants th{vertical-align:middle;text-align:left;padding:4px}.userlist table.controls{width:100%}.userlist table.controls tr{vertical-align:top}.userlist table.controls .right{text-align:right}.userlist table.controls .groupselector{margin-bottom:0;margin-top:0}.userlist table.controls .groupselector label{display:block}.userinfobox{width:100%;border:1px solid;border-collapse:separate;padding:10px}.userinfobox .left,.userinfobox .side{width:100px;vertical-align:top}.userinfobox .userpicture{width:100px;height:100px}.userinfobox .content{vertical-align:top}.userinfobox .links{width:100px;padding:5px;vertical-align:bottom}.userinfobox .links a{display:block}.userinfobox .list td{padding:3px}.userinfobox .username{padding-bottom:20px;font-weight:bold}.userinfobox td.label{text-align:right;white-space:nowrap;vertical-align:top;font-weight:bold}.groupinfobox{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);border-color:#e3e3e3}.groupinfobox blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.groupinfobox .left{padding:10px;width:100px;vertical-align:top}.course-participation #showall{text-align:center;margin:10px 0}#user-policy .noticebox{text-align:center;margin-left:auto;margin-right:auto;margin-bottom:10px;width:80%;height:250px}#user-policy #policyframe{width:100%;height:100%}.iplookup #map{margin:auto}.userselector select{width:100%}.userselector div{margin-top:.2em}.userselector div label{margin-right:.3em}.userselector .userselector-infobelow{font-size:.8em}#userselector_options{padding:.3em 0}#userselector_options .collapsibleregioncaption{font-weight:bold}#userselector_options p{margin:.2em 0;text-align:left}.dir-rtl #userselector_options p{text-align:right}#page-user-profile .messagebox{text-align:center;margin-left:auto;margin-right:auto}#page-course-view-weeks .messagebox{text-align:center;margin-left:auto;margin-right:auto}.dir-rtl .userlist table#participants td,.dir-rtl .userlist table#participants th{text-align:right}.dir-rtl .userlist table#participants{margin:0 auto}#page-my-index.dir-rtl .block h3{text-align:right}.profileeditor>.singleselect{margin:0 .5em 0 0}.profileeditor>.singlebutton{display:inline-block;margin:0 0 0 .5em}.profileeditor>.singlebutton div,.profileeditor>.singlebutton input{margin:0}.dir-rtl .profileeditor>.singleselect{margin:0 0 0 .5em}.dir-rtl .profileeditor>.singlebutton{margin:0 .5em 0 0}#groupeditform .groups,#groupeditform .members{min-width:175px;width:49%;float:left;text-align:left}#groupeditform .groups select,#groupeditform .members select{min-width:175px}.dir-rtl #groupeditform .groups,.dir-rtl #groupeditform .members{float:right;text-align:right}.preferences-group ul{list-style:none;margin-left:0;margin-right:0}.dir-rtl .preferences-group{float:right}.search-results .result{margin-left:0;margin-right:0}.dir-rtl .search-results .result{margin-right:15px;margin-left:0}.search-results .result .result-content{margin:7px 0}.search-results .result .filename{font-style:italic}.search-input-wrapper{margin:0 5px 0 2px;overflow:hidden;float:right;height:100%;width:16px;transition:width .5s ease,left .5s ease}.search-input-wrapper>div{float:left;margin:10px 0 9px 0}.dir-rtl .search-input-wrapper{margin:0 2px 0 5px;float:left}.dir-rtl .search-input-wrapper>div{float:right}.dir-rtl .search-input-wrapper>form{margin:5px 25px 5px 0}.search-input-wrapper>form{opacity:0;margin:5px 0 5px 25px;transition:opacity .5s ease-in-out}.search-input-wrapper>form>input{margin:0}.search-input-wrapper form.expanded{opacity:1}.search-input-wrapper.expanded{width:160px}.dir-rtl .navbar .search-input-wrapper>form{margin:5px 25px 5px 0}.navbar .search-input-wrapper>form{margin:5px 0 5px 25px}.search-areas-actions>div{display:inline-block}/*!
  * Bootstrap v2.3.2
  *
  * Copyright 2013 Twitter, Inc
index ef4693f..0c0b0b2 100644 (file)
@@ -29,7 +29,7 @@
 
 defined('MOODLE_INTERNAL') || die();
 
-$version  = 2016081700.01;              // YYYYMMDD      = weekly release date of this DEV branch.
+$version  = 2016082200.00;              // YYYYMMDD      = weekly release date of this DEV branch.
                                         //         RR    = release increments - 00 in DEV branches.
                                         //           .XX = incremental changes.